:root{color-scheme:dark;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace;--bg: #0a0c10;--bg-sidebar: #0b0d12;--surface: #12151b;--surface-2: #171b22;--inset: #07080b;--border: #1d222b;--border-strong: #2a303b;--text: #e7eaef;--text-2: #99a2b1;--text-3: #5c6472;--accent: #2dd4ee;--accent-2: #0ea5c4;--accent-soft: rgba(45, 212, 238, .12);--accent-border: rgba(45, 212, 238, .35);--success: #35d399;--success-soft: rgba(53, 211, 153, .12);--warning: #f2b84b;--warning-soft: rgba(242, 184, 75, .12);--danger: #f2685f;--danger-soft: rgba(242, 104, 95, .12);--radius-sm: 6px;--radius: 9px;--radius-lg: 13px}*{box-sizing:border-box}html,body{height:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-sans);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased}::selection{background:var(--accent-soft);color:var(--text)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:8px;border:2px solid var(--bg)}code,.mono{font-family:var(--font-mono);font-feature-settings:"liga" 0}button{font-family:inherit;font-size:13px;font-weight:500;cursor:pointer;border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--surface-2);color:var(--text);padding:.5rem .85rem;transition:border-color .12s ease,background .12s ease,color .12s ease;display:inline-flex;align-items:center;gap:.4rem;white-space:nowrap}button:hover:not(:disabled){border-color:var(--text-3)}button:disabled{opacity:.45;cursor:not-allowed}button.primary{background:var(--accent);border-color:var(--accent);color:#04252b;font-weight:600}button.primary:hover:not(:disabled){background:#4fdcf3;border-color:#4fdcf3}button.danger{background:transparent;border-color:var(--border);color:var(--danger)}button.danger:hover:not(:disabled){border-color:var(--danger);background:var(--danger-soft)}button.ghost{background:transparent;border-color:transparent;color:var(--text-2);padding:.4rem .6rem}button.ghost:hover:not(:disabled){color:var(--text);background:var(--surface-2)}button.icon-btn{padding:.4rem;border-radius:var(--radius-sm)}input,select{background:var(--inset);border:1px solid var(--border-strong);color:var(--text);padding:.55rem .7rem;border-radius:var(--radius-sm);font-size:13px;font-family:inherit;width:100%}input::placeholder{color:var(--text-3)}input:focus,select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--text-3) 50%),linear-gradient(135deg,var(--text-3) 50%,transparent 50%);background-position:calc(100% - 16px) center,calc(100% - 11px) center;background-size:5px 5px,5px 5px;background-repeat:no-repeat;padding-right:2rem}select option:disabled{color:var(--text-3)}label.field{display:flex;flex-direction:column;gap:.3rem;font-size:12px;color:var(--text-2)}.login-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:1.5rem;background:radial-gradient(circle at 20% 20%,rgba(45,212,238,.06),transparent 45%),radial-gradient(circle at 80% 75%,rgba(45,212,238,.05),transparent 40%),var(--bg)}.login-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:2.25rem 2rem;width:100%;max-width:360px;display:flex;flex-direction:column;gap:1rem}.login-mark{width:38px;height:38px;border-radius:10px;background:linear-gradient(135deg,var(--accent),var(--accent-2));display:flex;align-items:center;justify-content:center;color:#04252b;margin-bottom:.25rem}.login-card h1{margin:0;font-size:1.15rem;letter-spacing:-.01em}.login-card .subtitle{color:var(--text-2);margin:-.5rem 0 .25rem;font-size:13px}.login-card button{justify-content:center;padding:.65rem}.shell{display:flex;min-height:100vh}.sidebar{width:232px;flex-shrink:0;background:var(--bg-sidebar);border-right:1px solid var(--border);display:flex;flex-direction:column;padding:1.1rem .9rem}.brand{display:flex;align-items:center;gap:.6rem;padding:.3rem .4rem 1.4rem}.brand-mark{width:26px;height:26px;border-radius:7px;background:linear-gradient(135deg,var(--accent),var(--accent-2));flex-shrink:0}.brand-name{font-weight:600;font-size:14.5px;letter-spacing:-.01em}.brand-name small{display:block;font-weight:400;font-size:10.5px;color:var(--text-3);letter-spacing:.04em;text-transform:uppercase;margin-top:1px}.nav{display:flex;flex-direction:column;gap:2px}.nav-item{display:flex;align-items:center;gap:.65rem;padding:.55rem .7rem;border-radius:var(--radius-sm);color:var(--text-2);background:transparent;border:none;font-size:13px;font-weight:500;cursor:pointer;text-align:left;width:100%}.nav-item svg{flex-shrink:0;opacity:.85}.nav-item:hover{background:var(--surface);color:var(--text)}.nav-item.active{background:var(--accent-soft);color:var(--accent)}.nav-item.active svg{opacity:1}.nav-count{margin-left:auto;font-size:11px;color:var(--text-3);font-family:var(--font-mono)}.nav-item.active .nav-count{color:var(--accent)}.sidebar-footer{margin-top:auto;padding-top:.9rem;border-top:1px solid var(--border)}.sidebar-footer button{width:100%;justify-content:flex-start;background:transparent;border-color:transparent;color:var(--text-2)}.sidebar-footer button:hover{background:var(--surface);color:var(--text)}.shell-main{flex:1;min-width:0;display:flex;flex-direction:column}.topbar{display:flex;align-items:center;justify-content:space-between;padding:.9rem 1.75rem;border-bottom:1px solid var(--border);flex-wrap:wrap;gap:.6rem}.topbar-title{font-size:15px;font-weight:600;letter-spacing:-.01em}.topbar-sub{color:var(--text-3);font-size:12.5px;margin-top:1px}.status-pulse{display:inline-flex;align-items:center;gap:.4rem;font-size:12.5px;color:var(--text-2);padding:.3rem .65rem;border:1px solid var(--border);border-radius:999px;background:var(--surface)}.status-dot{width:7px;height:7px;border-radius:50%;background:var(--text-3);flex-shrink:0}.status-dot.live{background:var(--success);box-shadow:0 0 0 3px var(--success-soft)}.content{flex:1;padding:1.75rem;max-width:1180px;width:100%}.banner{padding:.7rem 1rem;border-radius:var(--radius-sm);margin-bottom:1.1rem;font-size:13px;border:1px solid var(--danger);background:var(--danger-soft);color:var(--danger)}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:.9rem;margin-bottom:1.75rem}.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.1rem 1.2rem}.stat-card .stat-label{display:flex;align-items:center;gap:.45rem;color:var(--text-2);font-size:12.5px;margin-bottom:.65rem}.stat-card .stat-value{font-size:1.7rem;font-weight:600;letter-spacing:-.02em;font-family:var(--font-mono)}.stat-card .stat-value.accent{color:var(--accent)}.stat-card .stat-hint{font-size:12px;color:var(--text-3);margin-top:.3rem}.section-heading{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:.75rem}.section-heading h2{font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-2);margin:0}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);margin-bottom:1.5rem}.panel-header{padding:1.1rem 1.3rem;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:1rem}.panel-header h2{margin:0;font-size:14.5px;font-weight:600}.panel-header p{margin:2px 0 0;font-size:12.5px;color:var(--text-3)}.panel-body{padding:1.3rem}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.7rem;align-items:end}.form-actions{display:flex;align-items:center;gap:.6rem;margin-top:.85rem}.tabs{display:inline-flex;padding:3px;background:var(--inset);border:1px solid var(--border-strong);border-radius:var(--radius-sm);gap:2px}.tab{background:transparent;border:none;padding:.4rem .75rem;color:var(--text-2);border-radius:5px}.tab.active{background:var(--surface-2);color:var(--text)}.rows{display:flex;flex-direction:column}.row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.85rem 1.3rem;border-top:1px solid var(--border);flex-wrap:wrap}.row:first-child{border-top:none}.row-main{display:flex;flex-direction:column;gap:.3rem;min-width:0;flex:1}.row-title{display:flex;align-items:center;gap:.55rem;font-size:13.5px;font-weight:500}.row-meta{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;color:var(--text-2);font-size:12px}.row-meta .mono{color:var(--text-3)}.row-actions{display:flex;align-items:center;gap:.35rem;flex-shrink:0}.empty-state{padding:2.5rem 1.3rem;display:flex;flex-direction:column;align-items:center;gap:.5rem;color:var(--text-3);font-size:13px}.pill{display:inline-flex;align-items:center;gap:.4rem;padding:.22rem .6rem .22rem .5rem;border-radius:999px;font-size:11px;font-weight:600;letter-spacing:.02em;text-transform:uppercase;border:1px solid transparent}.pill .dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.pill-live{background:var(--success-soft);color:var(--success)}.pill-live .dot{background:var(--success);box-shadow:0 0 0 2.5px #35d39938}.pill-idle{background:var(--surface-2);color:var(--text-2)}.pill-idle .dot{background:var(--text-3)}.pill-warn{background:var(--warning-soft);color:var(--warning)}.pill-warn .dot{background:var(--warning)}.pill-error{background:var(--danger-soft);color:var(--danger)}.pill-error .dot{background:var(--danger)}.tag{font-size:11px;color:var(--text-2);background:var(--surface-2);border:1px solid var(--border-strong);padding:.1rem .45rem;border-radius:5px;font-family:var(--font-mono)}.tag.warn{color:var(--warning);border-color:#f2b84b4d}.error-text{color:var(--danger);font-size:12px}.hint-text{color:var(--text-3);font-size:12px}.detail-block{margin:0 1.3rem .85rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--inset);padding:.75rem .9rem}.log-viewer{background:var(--inset);border:1px solid var(--border);border-radius:var(--radius-sm);padding:.85rem;font-family:var(--font-mono);font-size:11.5px;color:var(--text-2);max-height:240px;overflow-y:auto;white-space:pre-wrap;word-break:break-all;margin:0 1.3rem .9rem}.switch-video-form{display:flex;align-items:center;flex-wrap:wrap;gap:.6rem;margin:0 1.3rem .9rem;padding:.75rem .9rem;background:var(--inset);border:1px solid var(--border);border-radius:var(--radius-sm)}.switch-video-form select{width:auto;min-width:200px}.key-reveal{display:inline-flex;align-items:center;gap:.4rem}.key-reveal .mono{color:var(--text-2)}
