@import url("https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500;600&family=Sora:wght@400;500;600;700&display=swap");:root{--bg-deep:#0b1219;--bg-panel:#111b24;--bg-elevated:#162330;--border:#1e3340;--border-bright:#2a4a5c;--text-primary:#e8f0f4;--text-muted:#8aa4b4;--text-dim:#5c7585;--accent-teal:#14b8a6;--accent-teal-dim:#0d9488;--accent-amber:#f59e0b;--accent-amber-dim:#d97706;--status-online:#22c55e;--status-degraded:#f59e0b;--status-offline:#ef4444;--status-info:#38bdf8;--status-warning:#f59e0b;--status-critical:#ef4444;--font-sans:"Sora",system-ui,sans-serif;--font-mono:"IBM Plex Mono",ui-monospace,monospace;--radius:6px;--shadow:0 4px 24px rgba(0,0,0,0.4)}*,:after,:before{box-sizing:border-box}body,html{margin:0;padding:0;min-height:100%;background:var(--bg-deep);color:var(--text-primary);font-family:var(--font-sans);font-size:15px;line-height:1.55;-webkit-font-smoothing:antialiased}body{background-image:radial-gradient(ellipse 80% 50% at 50% -20%,rgba(20,184,166,.12),transparent),linear-gradient(180deg,var(--bg-deep) 0,#0d1520 100%)}a{color:var(--accent-teal);text-decoration:none;transition:color .15s}a:hover{color:var(--accent-amber)}h1,h2,h3,h4{margin:0 0 .5em;font-weight:600;letter-spacing:-.02em}h1{font-size:2rem}h2{font-size:1.35rem}h3{font-size:1.1rem;color:var(--text-muted);font-weight:500}p{margin:0 0 1em}.mono,code{font-family:var(--font-mono);font-size:.88em}.app-shell{display:grid;grid-template-columns:240px 1fr;min-height:100vh}.sidebar{background:var(--bg-panel);border-right:1px solid var(--border);padding:1.5rem 0;display:flex;flex-direction:column;position:-webkit-sticky;position:sticky;top:0;height:100vh}.brand{padding:0 1.25rem 1.5rem;border-bottom:1px solid var(--border);margin-bottom:1rem}.brand-logo{font-size:1.5rem;font-weight:700;letter-spacing:.12em;color:var(--text-primary)}.brand-logo span{color:var(--accent-teal)}.brand-tag{font-size:.7rem;text-transform:uppercase;letter-spacing:.15em;color:var(--text-dim);margin-top:.25rem}.nav-list{list-style:none;margin:0;padding:0 .75rem;flex:1 1}.nav-list li{margin-bottom:2px}.nav-link{display:block;padding:.55rem .75rem;border-radius:var(--radius);color:var(--text-muted);font-size:.9rem;font-weight:500;transition:background .15s,color .15s}.nav-link:hover{background:var(--bg-elevated);color:var(--text-primary)}.nav-link.active{background:rgba(20,184,166,.12);color:var(--accent-teal);border-left:2px solid var(--accent-teal);padding-left:calc(.75rem - 2px)}.main-content{padding:2rem 2.5rem;max-width:1200px}.page-header{margin-bottom:2rem}.page-header p{color:var(--text-muted);max-width:640px}.panel{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem 1.5rem;margin-bottom:1.25rem;box-shadow:var(--shadow)}.panel-title{font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;color:var(--text-dim);margin-bottom:1rem;font-weight:600}.grid-2{grid-template-columns:repeat(2,1fr);grid-gap:1.25rem}.grid-2,.grid-3{display:grid;gap:1.25rem}.grid-3{grid-template-columns:repeat(3,1fr);grid-gap:1.25rem}@media (max-width:900px){.app-shell{grid-template-columns:1fr}.sidebar{position:relative;height:auto}.grid-2,.grid-3{grid-template-columns:1fr}}.badge{display:inline-flex;align-items:center;gap:.35rem;padding:.2rem .55rem;border-radius:4px;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;font-family:var(--font-mono)}.badge:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.badge-ACTIVE,.badge-ONLINE,.badge-online{background:rgba(34,197,94,.15);color:var(--status-online)}.badge-DEGRADED,.badge-WARNING,.badge-degraded{background:rgba(245,158,11,.15);color:var(--status-degraded)}.badge-CRITICAL,.badge-OFFLINE,.badge-offline{background:rgba(239,68,68,.15);color:var(--status-offline)}.badge-DRAFT,.badge-INFO,.badge-STANDBY{background:rgba(56,189,248,.12);color:var(--status-info)}.badge-CANCELLED,.badge-COMPLETED{background:rgba(138,164,180,.15);color:var(--text-muted)}.data-table{width:100%;border-collapse:collapse;font-size:.9rem}.data-table th{text-align:left;padding:.6rem .75rem;font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-dim);font-weight:600}.data-table td,.data-table th{border-bottom:1px solid var(--border)}.data-table td{padding:.75rem;color:var(--text-primary)}.data-table tr:last-child td{border-bottom:none}.data-table tr:hover td{background:rgba(255,255,255,.02)}.traffic-bar-row{margin-bottom:1rem}.traffic-bar-label{display:flex;justify-content:space-between;font-size:.85rem;margin-bottom:.35rem}.traffic-bar-label span:last-child{font-family:var(--font-mono);color:var(--accent-amber)}.traffic-bar-track{height:8px;background:var(--bg-elevated);border-radius:4px;overflow:hidden}.traffic-bar-fill{height:100%;background:linear-gradient(90deg,var(--accent-teal-dim),var(--accent-teal));border-radius:4px;transition:width .4s ease}.timeline{position:relative;padding-left:1.5rem}.timeline:before{content:"";position:absolute;left:4px;top:0;bottom:0;width:2px;background:var(--border-bright)}.timeline-item{position:relative;padding-bottom:1.25rem}.timeline-item:before{content:"";position:absolute;left:-1.5rem;top:.35rem;width:10px;height:10px;border-radius:50%;background:var(--bg-panel);border:2px solid var(--accent-teal)}.timeline-item.warning:before{border-color:var(--status-warning)}.timeline-item.critical:before{border-color:var(--status-critical)}.timeline-time{font-family:var(--font-mono);font-size:.78rem;color:var(--text-dim)}.timeline-type{font-family:var(--font-mono);font-size:.8rem;color:var(--accent-teal);margin:.15rem 0}.timeline-message{color:var(--text-muted);font-size:.9rem}.hero{padding:3rem 0 4rem}.hero-brand{font-size:clamp(3rem,8vw,5.5rem);font-weight:700;letter-spacing:.08em;line-height:1;margin-bottom:.5rem}.hero-brand .spark{color:var(--accent-amber)}.hero-sub{font-size:1.25rem;color:var(--accent-teal);font-weight:500;margin-bottom:1.5rem}.hero-desc{font-size:1.05rem;color:var(--text-muted);max-width:560px;margin-bottom:2rem}.hero-cta{gap:1rem;flex-wrap:wrap}.btn,.hero-cta{display:inline-flex}.btn{align-items:center;padding:.65rem 1.25rem;border-radius:var(--radius);font-weight:600;font-size:.9rem;border:none;cursor:pointer;transition:transform .15s,box-shadow .15s;font-family:var(--font-sans)}.btn-primary{background:var(--accent-teal);color:var(--bg-deep)}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 4px 16px rgba(20,184,166,.35);color:var(--bg-deep)}.btn-secondary{background:transparent;color:var(--text-primary);border:1px solid var(--border-bright)}.btn-secondary:hover{border-color:var(--accent-amber);color:var(--accent-amber)}.stat-card{text-align:center;padding:1.25rem}.stat-value{font-size:1.75rem;font-weight:700;font-family:var(--font-mono);color:var(--accent-amber)}.stat-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-dim);margin-top:.25rem}.report-block{background:var(--bg-elevated);border-left:3px solid var(--accent-teal);padding:1rem 1.25rem;margin-bottom:1rem;border-radius:0 var(--radius) var(--radius) 0}.report-block h4{font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;color:var(--accent-teal);margin-bottom:.5rem}.report-block p{color:var(--text-muted);margin:0}.recommendations li{margin-bottom:.5rem;color:var(--text-muted)}.mission-card{display:block;padding:1.25rem;background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius);transition:border-color .15s,transform .15s;margin-bottom:1rem}.mission-card:hover{border-color:var(--accent-teal);transform:translateX(4px);color:inherit}.mission-card h3{color:var(--text-primary);margin-bottom:.35rem}.mission-card-meta{font-size:.85rem;color:var(--text-dim);font-family:var(--font-mono)}.empty-state{text-align:center;padding:3rem;color:var(--text-dim)}.form-stack{gap:1rem}.form-field,.form-stack{display:flex;flex-direction:column}.form-field{gap:.4rem;font-size:.85rem;color:var(--text-muted)}.form-field input,.form-field select,.form-field textarea{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-primary);padding:.65rem .75rem;font-family:var(--font-sans);font-size:.95rem}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{outline:none;border-color:var(--accent-teal);box-shadow:0 0 0 2px rgba(20,184,166,.2)}.form-error{color:var(--status-critical);font-size:.85rem;margin:0}.checkbox-row{display:flex;flex-direction:column;gap:.55rem;margin:1rem 0;color:var(--text-muted);font-size:.9rem}.checkbox-row label{display:flex;align-items:center;gap:.55rem;cursor:pointer}.checkbox-row input{accent-color:var(--accent-teal)}.plain-list{list-style:none;padding:0;margin:0}.plain-list li{padding:.75rem 0;border-bottom:1px solid var(--border)}.plain-list li:last-child{border-bottom:none}.btn:disabled{opacity:.55;cursor:not-allowed;transform:none}