@import "https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&family=JetBrains+Mono:wght@400;500;600&display=swap";:root{--font-sans:"Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono:"JetBrains Mono", monospace;--bg-primary:#f4f6fb;--bg-secondary:#fff;--bg-card:#ffffffeb;--bg-card-hover:#fff;--bg-input:#f8fafc;--bg-pill:#eef2f6;--border-subtle:#e2e8f0;--border-card:#e2e8f0;--border-focus:#0284c7;--text-primary:#0f172a;--text-secondary:#475569;--text-muted:#64748b;--text-inverse:#fff;--accent-cyan:#0284c7;--accent-blue:#2563eb;--accent-indigo:#4f46e5;--accent-purple:#7c3aed;--status-healthy:#059669;--status-healthy-glow:#10b98133;--status-warning:#d97706;--status-warning-glow:#f59e0b33;--status-error:#e11d48;--status-error-glow:#e11d4833;--card-radius:16px;--shadow-card:0 4px 20px -2px #0f172a0f, 0 2px 6px -1px #0f172a0a;--shadow-glow:0 0 25px -5px #0284c740;--backdrop-blur:blur(16px)}[data-theme=dark]{--bg-primary:#0a0d14;--bg-secondary:#101622;--bg-card:#121826bf;--bg-card-hover:#182032d9;--bg-input:#0d131fd9;--bg-pill:#ffffff0f;--border-subtle:#ffffff14;--border-card:#ffffff1f;--border-focus:#0ea5e9;--text-primary:#f8fafc;--text-secondary:#94a3b8;--text-muted:#64748b;--text-inverse:#0f172a;--accent-cyan:#06b6d4;--accent-blue:#3b82f6;--accent-indigo:#6366f1;--accent-purple:#8b5cf6;--status-healthy:#10b981;--status-healthy-glow:#10b98140;--status-warning:#f59e0b;--status-warning-glow:#f59e0b40;--status-error:#f43f5e;--status-error-glow:#f43f5e40;--shadow-card:0 10px 30px -10px #00000080, 0 0 1px 1px #ffffff0d;--shadow-glow:0 0 25px -5px #0ea5e959}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}body{font-family:var(--font-sans);background-color:var(--bg-primary);color:var(--text-primary);background-image:radial-gradient(at 0 0,#0284c70f 0,#0000 50%),radial-gradient(at 100% 100%,#4f46e50d 0,#0000 50%);background-attachment:fixed;min-height:100vh;line-height:1.5;transition:background-color .3s,color .3s;overflow-x:hidden}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:#64748b40;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#64748b66}.glass-panel{background:var(--bg-card);-webkit-backdrop-filter:var(--backdrop-blur);border:1px solid var(--border-card);border-radius:var(--card-radius);box-shadow:var(--shadow-card);transition:all .25s cubic-bezier(.16,1,.3,1)}.glass-panel:hover{border-color:#0284c759;box-shadow:0 8px 30px -4px #0f172a14}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.animate-spin{animation:.85s linear infinite spin}.animate-fade-in-up{animation:.4s ease-out forwards fadeInUp}.shimmer{background:linear-gradient(90deg,#0000000a 25%,#00000014 50%,#0000000a 75%) 0 0/200% 100%;animation:1.5s infinite shimmer}[data-theme=dark] .shimmer{background:linear-gradient(90deg,#ffffff08 25%,#ffffff14 50%,#ffffff08 75%) 0 0/200% 100%}.app-container{flex-direction:column;max-width:1360px;min-height:100vh;margin:0 auto;padding:.85rem 1rem;display:flex}.dashboard-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:.85rem;display:grid}@media (width<=1080px){.dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}}.accordion-header-row:hover{background-color:var(--bg-card-hover)!important}.show-mobile-only{display:none}@media (width<=720px){.dashboard-grid{grid-template-columns:1fr;gap:.75rem}.app-container{padding:.5rem}.hide-mobile{display:none!important}.show-mobile-only{display:block!important}}.mono{font-family:var(--font-mono)}.badge{letter-spacing:.02em;border-radius:9999px;align-items:center;gap:.35rem;padding:.22rem .6rem;font-size:.75rem;font-weight:600;display:inline-flex}.badge-healthy{color:#047857;background:#10b9811f;border:1px solid #10b9814d}[data-theme=dark] .badge-healthy{color:#34d399}.badge-warning{color:#b45309;background:#f59e0b1f;border:1px solid #f59e0b4d}[data-theme=dark] .badge-warning{color:#fbbf24}.badge-error{color:#be123c;background:#f43f5e1f;border:1px solid #f43f5e4d}[data-theme=dark] .badge-error{color:#fb7185}.badge-info{color:#0369a1;background:#0ea5e91f;border:1px solid #0ea5e94d}[data-theme=dark] .badge-info{color:#38bdf8}.badge-neutral{background:var(--bg-pill);color:var(--text-secondary);border:1px solid var(--border-subtle)}.btn{font-family:var(--font-sans);cursor:pointer;-webkit-user-select:none;user-select:none;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:.5rem;padding:.6rem 1.1rem;font-size:.875rem;font-weight:600;transition:all .2s cubic-bezier(.16,1,.3,1);display:inline-flex}.btn-primary{color:#fff;background:linear-gradient(135deg,#0284c7 0%,#2563eb 100%);box-shadow:0 4px 14px #0284c759}.btn-primary:hover:not(:disabled){filter:brightness(1.05);transform:translateY(-1px);box-shadow:0 6px 20px #0284c780}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-primary:disabled{opacity:.6;cursor:not-allowed;box-shadow:none}.btn-secondary{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-subtle);box-shadow:0 1px 3px #0000000d}.btn-secondary:hover:not(:disabled){background:var(--bg-pill);border-color:#0284c766}.btn-ghost{color:var(--text-secondary);background:0 0}.btn-ghost:hover{background:var(--bg-pill);color:var(--text-primary)}.btn-icon{border-radius:8px;padding:.5rem}.btn-sm{border-radius:8px;padding:.35rem .65rem;font-size:.78rem}.card-header{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;margin-bottom:.65rem;padding-bottom:.5rem;display:flex}.card-title-group{align-items:center;gap:.5rem;display:flex}.card-icon-box{color:#0284c7;background:#0284c71a;border:1px solid #0284c733;border-radius:7px;justify-content:center;align-items:center;width:28px;height:28px;display:flex}[data-theme=dark] .card-icon-box{color:#38bdf8;background:#0ea5e91f;border-color:#0ea5e940}.card-body{flex-direction:column;flex:1;gap:.55rem;display:flex}.info-row{justify-content:space-between;align-items:center;padding:.15rem 0;font-size:.78rem;display:flex}.info-label{color:var(--text-secondary);align-items:center;gap:.35rem;font-weight:500;display:flex}.info-value{color:var(--text-primary);text-align:right;font-weight:600}.url-box{background:var(--bg-input);border:1px solid var(--border-subtle);border-radius:7px;justify-content:space-between;align-items:center;gap:.45rem;padding:.35rem .55rem;font-size:.74rem;transition:border-color .2s;display:flex}.url-box:hover{border-color:#0284c766}.url-text{font-family:var(--font-mono);text-overflow:ellipsis;white-space:nowrap;color:var(--text-secondary);flex:1;overflow:hidden}.tag-chip{background:var(--bg-pill);border:1px solid var(--border-subtle);font-size:.74rem;font-family:var(--font-mono);color:var(--text-primary);border-radius:6px;align-items:center;gap:.35rem;padding:.25rem .5rem;transition:all .2s;display:inline-flex}.tag-chip:hover{background:#e2e8f0;border-color:#0284c766}[data-theme=dark] .tag-chip:hover{background:#ffffff14}.signal-meter{align-items:flex-end;gap:2px;height:14px;display:inline-flex}.signal-bar{background:#cbd5e1;border-radius:1px;width:3px;transition:background .3s}[data-theme=dark] .signal-bar{background:var(--border-subtle)}.signal-bar.active{background:#059669}.signal-bar:first-child{height:25%}.signal-bar:nth-child(2){height:50%}.signal-bar:nth-child(3){height:75%}.signal-bar:nth-child(4){height:100%}.card-error-view{text-align:center;background:#f43f5e0a;border:1px dashed #f43f5e59;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;margin-top:.5rem;padding:1.5rem 1rem;display:flex}.card-error-icon{color:#e11d48;background:#f43f5e1f;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;margin-bottom:.75rem;display:flex}.sim-subsystem-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;display:grid}@media (width<=768px){.sim-subsystem-grid{grid-template-columns:1fr}}
