:root{--terminal-bg:#0a0a0a;--terminal-fg:#00ff00;--terminal-accent:#00ff41;--terminal-secondary:#ff6600;--terminal-muted:#666;--terminal-border:#333;--terminal-card:#111}.terminal-theme{font-family:Courier New,Monaco,Menlo,monospace;background:var(--terminal-bg);color:var(--terminal-fg)}.terminal-card{background:var(--terminal-card);border:1px solid var(--terminal-border);color:var(--terminal-fg);transition:all .3s ease}.terminal-card:hover{border-color:var(--terminal-accent);box-shadow:0 0 10px rgba(0,255,65,.3)}.terminal-button{background:transparent;border:1px solid var(--terminal-border);color:var(--terminal-fg);font-family:inherit;text-transform:uppercase;font-size:12px;font-weight:700;letter-spacing:1px;transition:all .3s ease}.terminal-button:hover{background:var(--terminal-accent);color:var(--terminal-bg);border-color:var(--terminal-accent)}@keyframes terminal-blink{0%,50%{opacity:1}51%,to{opacity:0}}.terminal-blink{animation:terminal-blink 1s infinite}@keyframes terminal-scan{0%{transform:translateY(-100vh)}to{transform:translateY(100vh)}}.terminal-scan-line{position:fixed;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--terminal-accent),transparent);animation:terminal-scan 3s linear infinite;z-index:1000;pointer-events:none}.terminal-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem}.terminal-grid-item{position:relative;background:var(--terminal-card);border:1px solid var(--terminal-border);overflow:hidden;transition:all .3s ease}.terminal-grid-item:hover{border-color:var(--terminal-accent);transform:translateY(-2px)}.terminal-grid-item:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--terminal-accent),transparent);opacity:0;transition:opacity .3s ease}.terminal-grid-item:hover:before{opacity:1}.terminal-status{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .5rem;font-size:10px;font-weight:700;letter-spacing:1px;text-transform:uppercase;border:1px solid}.terminal-status.planned{color:var(--terminal-muted);border-color:var(--terminal-muted)}.terminal-status.progress{color:var(--terminal-secondary);border-color:var(--terminal-secondary)}.terminal-status.completed{color:var(--terminal-accent);border-color:var(--terminal-accent)}.terminal-header{background:rgba(0,0,0,.95);border-bottom:1px solid var(--terminal-border);backdrop-filter:blur(10px)}.terminal-logo{color:var(--terminal-accent);font-weight:700;letter-spacing:2px;text-transform:uppercase}.terminal-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:2rem}.terminal-stat{background:var(--terminal-card);border:1px solid var(--terminal-border);padding:1rem;position:relative;overflow:hidden}.terminal-stat:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--terminal-accent);transform:scaleX(0);transition:transform .3s ease}.terminal-stat:hover:after{transform:scaleX(1)}.terminal-input{background:transparent;border:1px solid var(--terminal-border);color:var(--terminal-fg);font-family:inherit;padding:.5rem}.terminal-input:focus{outline:none;border-color:var(--terminal-accent);box-shadow:0 0 5px rgba(0,255,65,.3)}.terminal-modal{background:rgba(0,0,0,.95);border:2px solid var(--terminal-accent);color:var(--terminal-fg)}.terminal-modal-header{border-bottom:1px solid var(--terminal-border);padding:1rem;background:rgba(0,255,65,.1)}.terminal-progress{width:100%;height:4px;background:var(--terminal-border);overflow:hidden}.terminal-progress-bar{height:100%;background:var(--terminal-accent);transition:width .3s ease;position:relative}.terminal-progress-bar:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);animation:terminal-scan 2s linear infinite}@media (max-width:640px){.terminal-grid{gap:.75rem}.terminal-grid,.terminal-stats{grid-template-columns:repeat(2,1fr)}.terminal-stats{gap:.5rem}.terminal-header,.terminal-stat{padding:.75rem}.terminal-logo{font-size:1rem;letter-spacing:1px}.terminal-button{padding:.5rem .75rem;font-size:10px}.terminal-modal{margin:1rem}}@media (max-width:768px){.terminal-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.75rem}.terminal-stats{grid-template-columns:repeat(2,1fr);gap:.5rem}}