@import"https://fonts.googleapis.com/css2?family=Outfit:wght@400;500;600;700;800&family=JetBrains+Mono:wght@400;500;600&display=swap";:root{--font-sans: "Outfit", system-ui, -apple-system, sans-serif;--font-mono: "JetBrains Mono", "Fira Code", monospace;--fs-xs: .8125rem;--fs-sm: .9375rem;--fs-md: 1rem;--fs-lg: 1.125rem;--fs-xl: 1.25rem;--fs-2xl: 1.5rem;--fs-3xl: 1.875rem;--fs-display: 2.375rem;--color-base: #000000;--color-surface: #0a0a0a;--color-elevated: #141414;--color-card: #1a1a1a;--color-card-hover: #222222;--color-border: #333333;--color-border-subtle: #242424;--color-text: #e8e8e8;--color-text-muted: #a8a8a8;--color-text-dim: #8d8d8d;--color-text-faint: #666666;--color-text-bright: #ffffff;--color-healthy: #4ade80;--color-healthy-dim: #14532d;--color-healthy-glow: rgba(74, 222, 128, .1);--color-warning: #facc15;--color-warning-dim: #713f12;--color-warning-glow: rgba(250, 204, 21, .1);--color-error: #f87171;--color-error-dim: #7f1d1d;--color-error-glow: rgba(248, 113, 113, .1);--color-unknown: #9a9a9a;--color-unknown-dim: rgba(154, 154, 154, .1);--color-accent: #7dd3fc;--color-focus: #7dd3fc;--sidebar-width: 280px;--sidebar-logo-height: 24px;--sidebar-link-fs: var(--fs-lg);--sidebar-label-fs: var(--fs-sm);--sidebar-link-py: 8px;--topbar-height: 56px;--radius-sm: 4px;--radius-md: 8px;--radius-pill: 999px;--tap-target: 44px;--tap-target-sm: 32px;--transition: .15s ease}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{color-scheme:dark;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-wrap:break-word}body{font-family:var(--font-sans);font-size:var(--fs-md);background:var(--color-base);color:var(--color-text);line-height:1.55;overflow:hidden;min-height:100dvh}#root{height:100dvh}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}svg.icon{flex-shrink:0;vertical-align:-.125em}:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px;border-radius:var(--radius-sm)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.skip-link{position:absolute;top:0;left:0;z-index:100;padding:10px 16px;background:var(--color-accent);color:var(--color-base);font-weight:600;border-bottom-right-radius:var(--radius-sm);transform:translateY(-120%);transition:transform var(--transition)}.skip-link:focus-visible{transform:translateY(0)}.font-mono{font-family:var(--font-mono)}.text-muted{color:var(--color-text-muted)}.text-dim{color:var(--color-text-dim)}.text-bright{color:var(--color-text-bright)}.inline-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border-radius:var(--radius-sm);border:1px solid transparent;font-family:var(--font-sans);font-weight:500;cursor:pointer;white-space:nowrap;text-align:center;transition:background var(--transition),color var(--transition),border-color var(--transition)}.btn--md{min-height:var(--tap-target);padding:0 16px;font-size:var(--fs-sm)}.btn--sm{min-height:var(--tap-target-sm);padding:0 12px;font-size:var(--fs-xs)}.btn:disabled,.btn[aria-disabled=true]{opacity:.5;cursor:not-allowed}.btn--primary{background:var(--color-text-bright);border-color:var(--color-text-bright);color:var(--color-base);font-weight:600}.btn--primary:hover:not(:disabled){background:var(--color-text)}.btn--secondary{background:var(--color-elevated);border-color:var(--color-border);color:var(--color-text)}.btn--secondary:hover:not(:disabled){background:var(--color-card-hover);border-color:var(--color-text-dim);color:var(--color-text-bright)}.btn--ghost{background:transparent;border-color:var(--color-border-subtle);color:var(--color-text-muted)}.btn--ghost:hover:not(:disabled){border-color:var(--color-text-dim);color:var(--color-text-bright)}.btn--danger{background:transparent;border-color:var(--color-error);color:var(--color-error);font-weight:600}.btn--danger:hover:not(:disabled){background:var(--color-error);color:var(--color-base)}.btn[aria-pressed=true]{border-color:var(--color-healthy-dim);background:var(--color-healthy-glow);color:var(--color-healthy)}.layout{display:flex;height:100dvh;overflow:hidden}.sidebar{width:var(--sidebar-width);min-width:var(--sidebar-width);height:100dvh;display:flex;flex-direction:column;background:var(--color-surface);border-right:1px solid var(--color-border);overflow:hidden;z-index:40}.sidebar-header{display:flex;align-items:center;gap:8px;padding:20px 12px 16px 20px}.sidebar-logo{display:flex;align-items:center;gap:10px;min-height:var(--tap-target-sm)}.sidebar-logo-img{height:var(--sidebar-logo-height);width:auto;display:block}.sidebar .sidebar-close{display:none;margin-left:auto}.sidebar-body{flex:1;overflow-y:auto;padding:0 8px 8px;scrollbar-width:thin;scrollbar-color:var(--color-border) transparent}.sidebar-group-label{padding:16px 12px 6px;font-size:var(--sidebar-label-fs);font-weight:600;letter-spacing:1px;text-transform:uppercase;color:var(--color-text-dim)}.sidebar-list{list-style:none;display:flex;flex-direction:column;gap:1px}.sidebar-link{display:flex;align-items:center;gap:10px;padding:var(--sidebar-link-py) 12px;border-radius:var(--radius-sm);border:1px solid transparent;min-height:var(--tap-target);font-size:var(--sidebar-link-fs);font-weight:500;color:var(--color-text-muted);transition:background var(--transition),color var(--transition)}.sidebar-link:hover{background:var(--color-elevated);color:var(--color-text-bright)}.sidebar-link[aria-current=page]{background:var(--color-elevated);border-color:var(--color-border);color:var(--color-text-bright)}.sidebar-link-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-link-count{margin-left:auto;font-family:var(--font-mono);font-size:var(--sidebar-label-fs);color:var(--color-text-dim)}.sidebar-footer{padding:12px 20px;padding-bottom:max(12px,env(safe-area-inset-bottom));border-top:1px solid var(--color-border);display:flex;align-items:center;gap:10px}.sidebar-user-avatar{width:28px;height:28px;border-radius:50%;background:var(--color-elevated);border:1px solid var(--color-border);display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:var(--fs-xs);font-weight:600;color:var(--color-text-muted);flex-shrink:0}.sidebar-user-name{font-size:var(--sidebar-link-fs);color:var(--color-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-user{display:flex;align-items:center;gap:10px;min-width:0;color:inherit;text-decoration:none;border-radius:var(--radius-sm);transition:color var(--transition)}.sidebar-user:hover .sidebar-user-name,.sidebar-user[aria-current=page] .sidebar-user-name{color:var(--color-text-bright)}.sidebar-overlay{display:none}@media(min-width:1600px){:root{--sidebar-width: 320px;--sidebar-logo-height: 28px;--sidebar-link-py: 10px}}.topbar{display:none;align-items:center;gap:12px;height:var(--topbar-height);padding:0 12px;padding-top:env(safe-area-inset-top);background:var(--color-surface);border-bottom:1px solid var(--color-border);position:sticky;top:0;z-index:30}.topbar-title{font-size:var(--fs-lg);font-weight:600;color:var(--color-text-bright);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:var(--tap-target);height:var(--tap-target);flex-shrink:0;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-elevated);color:var(--color-text);font-size:var(--fs-xl);cursor:pointer}.icon-btn:hover{color:var(--color-text-bright);border-color:var(--color-text-dim)}.icon-btn--bare{border-color:transparent;background:transparent;color:var(--color-text-muted)}.main-content{flex:1;height:100dvh;overflow-y:auto;overflow-x:hidden;background:var(--color-base);display:flex;flex-direction:column;scrollbar-width:thin;scrollbar-color:var(--color-border) transparent}main{flex:1;min-width:0}.page{padding:40px 48px;padding-bottom:max(40px,env(safe-area-inset-bottom));max-width:1400px;width:100%;margin-inline:auto}@media(min-width:1800px){.page{max-width:1760px;padding:48px 64px}}@media(min-width:2400px){.page{max-width:2040px}}@media(min-width:3000px){.page{max-width:2560px;padding:56px 72px}}.page-header{margin-bottom:28px}.breadcrumb{margin-bottom:10px}.breadcrumb-list{display:flex;align-items:center;flex-wrap:wrap;gap:6px;list-style:none;font-size:var(--fs-sm);color:var(--color-text-muted)}.breadcrumb a{color:var(--color-text-muted);text-decoration:underline;text-decoration-color:var(--color-border);text-underline-offset:3px;transition:color var(--transition)}.breadcrumb a:hover{color:var(--color-text-bright);text-decoration-color:currentColor}.breadcrumb-sep{color:var(--color-text-faint);-webkit-user-select:none;user-select:none}.page-title{font-size:var(--fs-3xl);font-weight:700;color:var(--color-text-bright);letter-spacing:-.5px;line-height:1.2}.page-subtitle{font-size:var(--fs-md);color:var(--color-text-muted);margin-top:4px}.page-header-row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}.page-header-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.section{margin-top:32px}.section-header{display:flex;align-items:center;gap:10px;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid var(--color-border-subtle)}.section-title{font-size:var(--fs-sm);font-weight:600;letter-spacing:.6px;text-transform:uppercase;color:var(--color-text-muted)}.section-actions{margin-left:auto}.count-chip{font-family:var(--font-mono);font-size:var(--fs-xs);font-weight:600;padding:1px 8px;border-radius:var(--radius-pill);background:var(--color-elevated);color:var(--color-text-muted)}.count-chip--error{background:var(--color-error-glow);color:var(--color-error)}.panel{margin-top:32px}.panel-header{display:flex;align-items:center;gap:10px;flex-wrap:wrap;row-gap:8px;margin-bottom:6px;padding-bottom:8px;border-bottom:1px solid var(--color-border-subtle)}.panel-title{font-size:var(--fs-xl);font-weight:600;color:var(--color-text-bright)}.panel-actions{display:flex;align-items:center;gap:10px;margin-left:auto;flex-shrink:0}.panel-description{font-size:var(--fs-sm);color:var(--color-text-muted);margin-bottom:14px;max-width:72ch}.code-block{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--color-text);background:var(--color-elevated);border:1px solid var(--color-border-subtle);border-radius:var(--radius-sm);padding:10px 12px;margin:0 0 14px;overflow-x:auto;white-space:pre;-webkit-user-select:all;user-select:all}.card-grid{list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}.card{display:flex;flex-direction:column;gap:16px;height:100%;background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:20px;transition:background var(--transition),border-color var(--transition)}.card-link{display:block;height:100%}.card-link:hover .card{background:var(--color-card-hover);border-color:var(--color-text-faint)}.card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.card-title{font-size:var(--fs-xl);font-weight:600;color:var(--color-text-bright)}.card-metric{display:flex;align-items:baseline;gap:8px}.card-metric-value{font-size:var(--fs-display);font-weight:800;color:var(--color-text-bright);line-height:1;letter-spacing:-1px}.card-metric-label{font-size:var(--fs-md);color:var(--color-text-muted)}.tag-list{display:flex;flex-wrap:wrap;gap:6px;list-style:none;margin-top:auto}.tag{font-family:var(--font-mono);font-size:var(--fs-xs);padding:3px 8px;border-radius:var(--radius-sm);background:var(--color-elevated);border:1px solid var(--color-border-subtle);color:var(--color-text-muted)}.status-badge{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-mono);font-size:var(--fs-xs);font-weight:500;padding:3px 10px 3px 8px;border-radius:var(--radius-pill);white-space:nowrap;border:1px solid transparent}.status-badge-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.status-badge--healthy{color:var(--color-healthy);background:var(--color-healthy-glow);border-color:var(--color-healthy-dim)}.status-badge--healthy .status-badge-dot{background:var(--color-healthy)}.status-badge--degraded{color:var(--color-warning);background:var(--color-warning-glow);border-color:var(--color-warning-dim)}.status-badge--degraded .status-badge-dot{background:var(--color-warning)}.status-badge--error{color:var(--color-error);background:var(--color-error-glow);border-color:var(--color-error-dim)}.status-badge--error .status-badge-dot{background:var(--color-error)}.status-badge--unknown{color:var(--color-unknown);background:var(--color-unknown-dim);border-color:var(--color-border)}.status-badge--unknown .status-badge-dot{background:var(--color-unknown)}.offline-banner{display:flex;align-items:center;gap:8px;padding:10px 20px;background:var(--color-warning-glow);border-bottom:1px solid var(--color-warning-dim);font-size:var(--fs-sm);color:var(--color-warning)}.offline-banner-dot{width:6px;height:6px;border-radius:50%;background:var(--color-warning);flex-shrink:0;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:var(--color-border) transparent;border-radius:var(--radius-sm)}.data-table{width:100%;border-collapse:separate;border-spacing:0;font-size:var(--fs-sm)}.data-table thead th{font-size:var(--fs-xs);font-weight:600;letter-spacing:.6px;text-transform:uppercase;color:var(--color-text-muted);padding:10px 14px;text-align:left;border-bottom:1px solid var(--color-border);background:var(--color-surface);position:sticky;top:0;z-index:1;white-space:nowrap}.data-table tbody tr{transition:background .1s ease}.data-table tbody tr:hover{background:var(--color-card)}.data-table tbody td{padding:10px 14px;border-bottom:1px solid var(--color-border-subtle);color:var(--color-text);vertical-align:middle}.data-table tbody th{padding:10px 14px;border-bottom:1px solid var(--color-border-subtle);text-align:left;font-weight:600;color:var(--color-text-bright);vertical-align:middle}.data-table .col-mono{font-family:var(--font-mono);font-size:var(--fs-xs)}.data-table .col-muted{color:var(--color-text-muted)}.data-table .col-right{text-align:right}.col-optional{display:table-cell}.expandable-row{cursor:pointer}.expand-toggle{display:inline-flex;align-items:center;justify-content:center;width:var(--tap-target-sm);height:var(--tap-target-sm);margin:-6px 2px -6px -6px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-muted);cursor:pointer;flex-shrink:0}.expand-toggle:hover{color:var(--color-text-bright);background:var(--color-elevated)}.row-details{background:var(--color-surface)}.row-details>td{padding:16px 14px}.cell-with-toggle{display:flex;align-items:center;gap:4px}.raw-payload{margin:0;padding:14px;background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:var(--fs-xs);line-height:1.5;color:var(--color-text);white-space:pre-wrap;word-break:break-word;max-height:400px;overflow:auto}.state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:64px 20px;gap:12px}.state--inline{padding:20px;flex-direction:row}.spinner{width:20px;height:20px;border:2px solid var(--color-border);border-top-color:var(--color-text-bright);border-radius:50%;animation:spin .7s linear infinite;flex-shrink:0}@keyframes spin{to{transform:rotate(360deg)}}.state-icon{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:var(--fs-xl)}.state-icon--error{background:var(--color-error-glow);color:var(--color-error)}.state-icon--healthy{background:var(--color-healthy-glow);color:var(--color-healthy)}.state-title{font-size:var(--fs-lg);font-weight:600;color:var(--color-text)}.state-text{font-size:var(--fs-sm);color:var(--color-text-muted)}.state-message{font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--color-error);max-width:60ch}.state-hint{font-size:var(--fs-sm);color:var(--color-text-muted);max-width:60ch}.form-row{display:flex;gap:12px;align-items:flex-start;flex-wrap:wrap}.form-row>.btn{margin-top:calc(var(--fs-xs) * 1.55 + 4px)}.form-stack{display:flex;flex-direction:column;gap:12px}.field{display:flex;flex-direction:column;gap:4px;min-width:0}.field--auto{min-width:min(220px,100%)}.field--full{width:100%}.field--narrow{width:8rem}.field-label{font-size:var(--fs-xs);font-weight:600;letter-spacing:.4px;text-transform:uppercase;color:var(--color-text-muted)}.field-hint{font-size:var(--fs-xs);color:var(--color-text-muted)}.input{min-height:var(--tap-target);width:100%;padding:8px 12px;font-size:var(--fs-sm);font-family:var(--font-mono);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-elevated);color:var(--color-text)}.input::placeholder{color:var(--color-text-dim)}.input:disabled{opacity:.5;cursor:not-allowed}.form-message{font-size:var(--fs-sm);margin-top:12px}.form-message--error{color:var(--color-error)}.form-message--success{color:var(--color-healthy)}.secret-reveal{margin-top:14px;padding:14px;border:1px solid var(--color-healthy-dim);border-radius:var(--radius-sm);background:var(--color-healthy-glow);display:flex;flex-direction:column;gap:10px}.secret-reveal-label{font-size:var(--fs-sm);font-weight:600;color:var(--color-healthy)}.secret-reveal-value{font-family:var(--font-mono);font-size:var(--fs-xs);word-break:break-all;color:var(--color-text-bright);background:var(--color-base);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:10px}.dialog{margin:auto;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);padding:0;max-width:min(440px,calc(100vw - 32px));width:100%}.dialog::backdrop{background:#000000b3;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.dialog-body{padding:24px;display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center}.dialog-icon{width:40px;height:40px;border-radius:50%;background:var(--color-warning-glow);color:var(--color-warning);font-size:var(--fs-xl);display:flex;align-items:center;justify-content:center}.dialog-title{font-size:var(--fs-xl);font-weight:600;color:var(--color-text-bright)}.dialog-message{font-size:var(--fs-md);color:var(--color-text);line-height:1.5}.dialog-message code{font-family:var(--font-mono);font-size:var(--fs-xs);background:var(--color-elevated);border:1px solid var(--color-border-subtle);padding:1px 6px;border-radius:var(--radius-sm);word-break:break-all}.dialog-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:8px;width:100%}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}.stat-grid--boxed{padding:20px;background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-md);gap:20px}.stat{display:flex;flex-direction:column;gap:4px;min-width:0}.stat--card{padding:14px;background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-sm)}.stat-label{font-size:var(--fs-xs);font-weight:600;letter-spacing:.5px;text-transform:uppercase;color:var(--color-text-muted)}.stat-value{font-size:var(--fs-xl);font-weight:700;color:var(--color-text-bright);word-break:break-word}.stat-value--mono{font-family:var(--font-mono);font-weight:600}.stat-value--small{font-size:var(--fs-md);font-weight:500}.group-stack{display:flex;flex-direction:column;gap:20px}.group{border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);padding:14px;background:var(--color-surface)}.group-header{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid var(--color-border-subtle)}.group-title{font-family:var(--font-mono);font-size:var(--fs-md);font-weight:500;color:var(--color-text-bright);word-break:break-all}.group-meta{font-size:var(--fs-xs);color:var(--color-text-muted);margin-left:auto}.only-narrow{display:none}.spec-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px 16px;margin-bottom:16px;font-size:var(--fs-sm)}.spec-list dt{font-size:var(--fs-xs);font-weight:600;letter-spacing:.4px;text-transform:uppercase;color:var(--color-text-muted)}.spec-list dd{font-family:var(--font-mono);color:var(--color-text);word-break:break-word}.health-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}.health-service{padding:12px;background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-sm)}.health-service-header{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:10px}.health-service-name{font-size:var(--fs-sm);font-weight:600;text-transform:capitalize;color:var(--color-text-bright)}.health-instances{display:flex;flex-direction:column;gap:6px;list-style:none}.health-instance{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:var(--fs-xs)}.health-instance-id{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--color-text-muted)}.channel-preview{display:flex;flex-direction:column;gap:8px;max-width:640px}.channel-preview-video{position:relative;aspect-ratio:16 / 9;background:var(--color-base);border:1px solid var(--color-border);border-radius:var(--radius-sm);overflow:hidden}.channel-preview-video video{width:100%;height:100%;display:block;object-fit:contain}.channel-preview-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;background:#000000c7;text-align:center;padding:12px}.channel-preview-error{color:var(--color-error);font-size:var(--fs-xs);font-family:var(--font-mono);max-width:90%;word-break:break-word}.channel-preview-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--color-text-muted)}.channel-preview-key{color:var(--color-text-bright)}.channel-preview-tag{padding:1px 6px;border:1px solid var(--color-border);border-radius:var(--radius-sm)}.channel-preview-level{color:var(--color-healthy)}.channel-preview-fallback{color:var(--color-warning)}.channel-preview-link{display:inline-flex;align-items:center;gap:4px;color:var(--color-text-muted);text-decoration:underline;text-underline-offset:3px}.channel-preview-link:hover{color:var(--color-text-bright)}.result-list{display:flex;flex-direction:column;gap:10px;margin-top:16px}.result{border:1px solid var(--color-border-subtle);border-radius:var(--radius-sm);padding:12px;background:var(--color-card)}.result-header{display:flex;align-items:center;gap:10px;margin-bottom:8px;flex-wrap:wrap}.result-name{font-size:var(--fs-md);font-weight:600;color:var(--color-text-bright)}.result-meta{font-size:var(--fs-xs);font-family:var(--font-mono);color:var(--color-text-muted)}.result-action{margin-left:auto}.result-url{display:block;font-size:var(--fs-xs);font-family:var(--font-mono);color:var(--color-text);word-break:break-all;line-height:1.5}.note-list{margin-top:12px;list-style:none;display:flex;flex-direction:column;gap:4px;font-size:var(--fs-sm);color:var(--color-text-muted)}.auth-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100dvh;padding:24px;text-align:center;background:var(--color-base);gap:14px}.auth-screen h1{font-size:var(--fs-2xl);font-weight:700;color:var(--color-text-bright)}.auth-screen p{font-size:var(--fs-md);color:var(--color-text-muted);max-width:50ch}@media(max-width:1024px){.page{padding:32px}}@media(max-width:900px){.topbar{display:flex}.sidebar{position:fixed;width:min(var(--sidebar-width),85vw);min-width:0;top:0;left:0;height:100dvh;padding-top:env(safe-area-inset-top);transform:translate(-100%);transition:transform .25s ease;box-shadow:none}.sidebar.is-open{transform:translate(0);box-shadow:0 0 40px #0009}.sidebar .sidebar-close{display:inline-flex;margin-left:auto}.sidebar-overlay{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;z-index:35;border:none;opacity:0;pointer-events:none;transition:opacity .25s ease}.sidebar-overlay.is-visible{opacity:1;pointer-events:auto}.page{padding:24px 20px 32px}.page-title{font-size:var(--fs-2xl)}.page-header-row{flex-direction:column;align-items:stretch}.page-header-actions .btn{flex:1 1 auto}.card-grid{grid-template-columns:1fr}.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.col-optional{display:none}.only-narrow{display:grid}.dialog-actions .btn{flex:1 1 40%}.form-row>.field--auto,.form-row>.field--full{width:100%}}@media(max-width:480px){.page{padding:20px 16px 28px}.stat-grid,.health-grid{grid-template-columns:1fr}.stat-grid--boxed{padding:16px;gap:14px}.card-metric-value{font-size:var(--fs-3xl)}.data-table thead th,.data-table tbody td{padding:10px}.result-action{margin-left:0}}@media(forced-colors:active){.status-badge,.card,.input,.btn{border:1px solid CanvasText}.spinner{border-color:CanvasText;border-top-color:Highlight}}.checkbox-label{display:flex;align-items:center;gap:.5rem;min-height:var(--tap-target);font-size:var(--fs-md);color:var(--color-text);cursor:pointer}.checkbox{width:1.125rem;height:1.125rem;accent-color:var(--color-accent);cursor:pointer}.input--mono{font-family:var(--font-mono);font-size:var(--fs-sm);resize:vertical}.fieldset{border:1px solid var(--color-border-subtle);border-radius:var(--radius-sm);padding:.75rem;margin:0}.editor{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-elevated);padding:1rem;margin-bottom:1rem}.form-row--wrap{flex-wrap:wrap}.weight-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.weight-row{display:flex;align-items:flex-end;gap:.5rem}.weight-bar{flex:1;min-width:60px;height:8px;border-radius:999px;background:var(--color-card);overflow:hidden}.weight-bar-fill{display:block;height:100%;background:var(--color-accent)}.weight-percent{font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--color-text-muted);min-width:3.5ch;text-align:right}.weight-footer{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-top:.75rem;flex-wrap:wrap}.weight-total{font-size:var(--fs-sm);color:var(--color-text-muted)}.weight-total--off{color:var(--color-warning)}.row--inactive th[scope=row],.row--inactive td{opacity:.65}.row--winner{background:var(--color-healthy-glow)}.tag--winner{margin-left:.5rem;background:var(--color-healthy-dim);color:var(--color-healthy)}.tag--danger{margin-left:.5rem;background:var(--color-error-dim);color:var(--color-error)}.dryrun-outcome{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-elevated);padding:.75rem 1rem;margin:1rem 0}.dryrun-verdict{margin:0 0 .5rem;font-size:var(--fs-md);color:var(--color-text)}.dryrun-split{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.375rem}.dryrun-split li{display:flex;align-items:center;gap:.5rem}.dryrun-split-alias{min-width:10ch;font-size:var(--fs-sm);color:var(--color-text-muted)}.diff-warning{margin:0 0 .75rem;padding:.5rem .75rem;border-radius:var(--radius-sm);background:var(--color-error-glow);color:var(--color-text);font-size:var(--fs-sm);text-align:left}.dialog:has(.diff-table){max-width:min(680px,calc(100vw - 32px))}.diff-table{width:100%;border-collapse:collapse;font-size:var(--fs-sm);text-align:left}.diff-table th,.diff-table td{padding:.375rem .5rem;border-bottom:1px solid var(--color-border-subtle);vertical-align:top}.diff-table th{white-space:nowrap}.diff-table td{overflow-wrap:anywhere}.diff-table thead th{color:var(--color-text-dim);font-weight:500}.diff-row--changed{background:var(--color-warning-glow);box-shadow:inset 2px 0 0 var(--color-warning)}@media(max-width:900px){.weight-row{flex-wrap:wrap}}.form-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:.75rem 1rem;align-items:start}.form-grid .field,.form-grid .field--auto,.form-grid .field--narrow{width:100%;min-width:0}.form-grid .input{width:100%}.form-grid .field-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dryrun-grid{margin-bottom:.75rem}.dryrun-flags{display:flex;flex-wrap:wrap;gap:.25rem 1.5rem;padding:.5rem .75rem;border:1px solid var(--color-border-subtle);border-radius:var(--radius-sm);background:var(--color-surface);margin-bottom:.75rem}.asn-selector{display:flex;flex-direction:column;gap:.625rem}.asn-empty{margin:0;font-size:var(--fs-sm)}.asn-chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.375rem}.asn-chip{display:inline-flex;align-items:center;gap:.5rem;padding:.25rem .25rem .25rem .5rem;border:1px solid var(--color-border);border-radius:999px;background:var(--color-card);font-size:var(--fs-sm)}.asn-chip-number{font-family:var(--font-mono);font-weight:600;color:var(--color-text-bright)}.asn-chip-name{color:var(--color-text-muted)}.asn-chip-remove{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border:0;border-radius:50%;background:transparent;color:var(--color-text-dim);font-size:var(--fs-lg);line-height:1;cursor:pointer}.asn-chip-remove:hover:not(:disabled){background:var(--color-error-dim);color:var(--color-text-bright)}.asn-chip-remove:focus-visible{outline:2px solid var(--color-focus);outline-offset:1px}.asn-add{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.5rem}.asn-error{color:var(--color-error)}.expression-editor{display:flex;flex-direction:column;gap:.75rem}.expression-preview{display:flex;align-items:center;gap:.625rem;flex-wrap:wrap;padding:.5rem .75rem;border:1px solid var(--color-border-subtle);border-radius:var(--radius-sm);background:var(--color-base)}.expression-preview .field-label{margin:0;white-space:nowrap}.expression-preview-value{flex:1;min-width:200px;font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--color-accent);overflow-wrap:anywhere}.rule-raw--secondary{margin-top:.25rem;padding-top:.25rem;border-top:1px solid var(--color-border-subtle)}@media(max-width:900px){.form-grid{grid-template-columns:1fr 1fr}}@media(max-width:480px){.form-grid{grid-template-columns:1fr}}.inline-row--nowrap{flex-wrap:nowrap;white-space:nowrap}.cell-actions{width:1%;white-space:nowrap}.panel-actions-row{display:flex;align-items:center;gap:1rem;flex-wrap:nowrap}@media(max-width:560px){.panel-actions-row{flex-wrap:wrap;gap:.5rem}}.panel-actions-row .field{width:auto;min-width:0}.panel-actions-row .checkbox-label{min-height:0;white-space:nowrap}.rule-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.rule-card{display:grid;grid-template-columns:4.5rem 1fr auto;gap:1rem;align-items:start;padding:.875rem 1rem;border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);background:var(--color-card)}.rule-card--inactive{background:var(--color-surface);border-style:dashed}.rule-card--inactive .rule-name,.rule-card--inactive .rule-route{color:var(--color-text-muted)}.rule-card-priority{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:.25rem 0;border-right:1px solid var(--color-border-subtle);min-height:2.75rem}.rule-priority-value{font-family:var(--font-mono);font-size:var(--fs-xl);font-weight:600;color:var(--color-text-bright);line-height:1.1}.rule-priority-label{font-size:var(--fs-xs);color:var(--color-text-dim);text-transform:uppercase;letter-spacing:.04em}.rule-card-body{display:flex;flex-direction:column;gap:.375rem;min-width:0}.rule-card-head{display:flex;align-items:center;gap:.625rem;flex-wrap:wrap}.rule-name{margin:0;font-size:var(--fs-lg);font-weight:600;color:var(--color-text-bright)}.rule-route{display:flex;align-items:baseline;gap:.4375rem;flex-wrap:wrap;margin:0;font-size:var(--fs-sm);color:var(--color-text)}.rule-route-arrow{color:var(--color-text-dim)}.rule-route-split{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--color-text-muted);padding:.0625rem .375rem;border-radius:var(--radius-sm);background:var(--color-elevated)}.rule-route-missing{color:var(--color-error)}.rule-chips{display:flex;flex-wrap:wrap;gap:.3125rem}.chip{display:inline-flex;align-items:baseline;gap:.3125rem;padding:.125rem .4375rem;border-radius:var(--radius-sm);background:var(--color-elevated);border:1px solid var(--color-border-subtle);font-size:var(--fs-xs);color:var(--color-text-muted)}.chip-key{font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--color-text)}.chip-value{color:var(--color-text-dim)}.chip--prid strong{color:var(--color-text-bright);font-weight:600}.chip--protocol{border-color:var(--color-accent);color:var(--color-accent)}.chip--any{font-style:italic}.rule-raw{display:block;font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--color-text-dim);overflow-wrap:anywhere}.rule-raw--revealed{margin-top:.125rem;padding:.375rem .5rem;border-radius:var(--radius-sm);background:var(--color-base);color:var(--color-text-muted)}.rule-card-actions{display:flex;align-items:center;gap:.375rem}.editor-actions{display:flex;gap:.5rem;margin-top:.25rem}@media(max-width:700px){.rule-card{grid-template-columns:1fr;gap:.625rem}.rule-card-priority{flex-direction:row;justify-content:flex-start;gap:.375rem;border-right:0;border-bottom:1px solid var(--color-border-subtle);padding-bottom:.375rem;min-height:0}.rule-priority-value{font-size:var(--fs-lg)}.rule-card-actions{justify-content:flex-start}}.panel-pair{display:grid;gap:.75rem}@media(min-width:1500px){.panel-pair{grid-template-columns:1fr 1fr;align-items:start;column-gap:0}.panel-pair>.panel{margin-bottom:0;padding-right:2rem}.panel-pair>.panel+.panel{padding-right:0;padding-left:2rem;border-left:1px solid var(--color-border-subtle)}}.portal-layout{height:100dvh;overflow-y:auto;display:flex;flex-direction:column;background:var(--color-base)}.portal-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 24px;border-bottom:1px solid var(--color-border-subtle)}.portal-brand{display:flex;align-items:center;gap:16px}.portal-brand-logo{height:28px;width:auto}.portal-brand-divider{width:1px;height:24px;background:var(--color-border)}.portal-brand-client{max-height:28px;max-width:140px;width:auto}.portal-user{display:flex;align-items:center;gap:12px;font-size:var(--fs-sm)}.portal-user-name{color:var(--color-text-muted)}.portal-signout{background:none;border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);cursor:pointer;font:inherit;padding:6px 12px}.portal-signout:hover{background:var(--color-card-hover)}.portal-main{flex:1 0 auto;width:100%;max-width:960px;margin:0 auto;padding:32px 24px 64px}.portal-page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;flex-wrap:wrap;margin-bottom:24px}.portal-page-header h1{font-size:var(--fs-3xl);margin:0 0 4px}.portal-subtitle{color:var(--color-text-muted);margin:0}.portal-banner{background:var(--color-warning-glow);border:1px solid var(--color-warning-dim);border-left:3px solid var(--color-warning);border-radius:var(--radius-md);color:var(--color-text);margin:0 0 24px;padding:12px 16px}.portal-env-switcher{display:inline-flex;border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}.portal-env-option{background:none;border:none;color:var(--color-text-muted);cursor:pointer;font:inherit;font-size:var(--fs-sm);padding:8px 16px}.portal-env-option:hover{background:var(--color-card-hover);color:var(--color-text)}.portal-env-option.is-current{background:var(--color-card);color:var(--color-text-bright)}.portal-cards{display:flex;flex-direction:column;gap:20px}.portal-status{align-items:center;display:flex;font-size:var(--fs-xl);gap:10px;margin:0 0 4px}.portal-status--healthy{color:var(--color-healthy)}.portal-status--degraded{color:var(--color-warning)}.portal-status--error{color:var(--color-error)}.portal-table{margin-top:16px}.portal-stats{display:flex;gap:32px;margin:0}.portal-stat{display:flex;flex-direction:column;gap:4px}.portal-stat .stat-value{font-size:var(--fs-2xl);margin:0}.portal-stat--healthy .stat-value{color:var(--color-healthy)}.portal-stat--degraded .stat-value{color:var(--color-warning)}.portal-stat--error .stat-value{color:var(--color-error)}.portal-empty,.portal-stale{color:var(--color-text-muted);margin:16px 0 0}.portal-table-actions{text-align:right;white-space:nowrap;width:1%}.portal-action-result{border-left:3px solid var(--color-border-subtle);border-radius:var(--radius-sm, 4px);font-size:var(--fs-sm);margin:16px 0 0;padding:10px 14px}.portal-action-result--healthy{border-left-color:var(--color-healthy)}.portal-action-result--degraded{border-left-color:var(--color-warning)}.portal-action-result--error{border-left-color:var(--color-error);color:var(--color-error)}.portal-streams-row>td{background:var(--color-elevated)}.portal-streams{display:flex;flex-direction:column;gap:16px;padding:8px 0}.portal-streams-heading{font-size:var(--fs-sm);margin:0 0 8px}.portal-streams-list{display:flex;flex-direction:column;gap:6px;list-style:none;margin:0;padding:0}.portal-streams-item{align-items:center;display:flex;gap:10px}.portal-streams-url{flex:1;font-size:var(--fs-sm);min-width:0;overflow-wrap:anywhere}.portal-streams-actions{display:flex;flex-shrink:0;gap:6px}.portal-player{max-width:720px}.portal-player-quality{align-items:center;display:inline-flex;font-size:var(--fs-sm);gap:6px}.portal-subtitle a{color:var(--color-accent)}.live-root{--live-gap: 1vw;--live-radius: 1vw;--live-surface: #1a191c;--live-panel: #2b2c32;--live-panel-hover: #343641;--live-ink: #f2f2f5;--live-header: max(10vh, 100px);--live-footer: 10vh;background:var(--live-surface);color:var(--live-ink);height:100dvh;overflow-y:auto;position:relative}.live-glass{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#2b2c328c;box-shadow:inset 0 1px #ffffff14,0 2px 10px #0000004d}@supports not (backdrop-filter: blur(10px)){.live-glass{background:#2b2c32eb}}.live-icon{fill:currentColor;height:100%;width:auto}.live-pill{background:var(--live-panel);border:0;border-radius:var(--live-radius);color:var(--live-ink);cursor:pointer;font-weight:800;font-size:max(.9rem,.9vw);line-height:1;font-family:inherit;padding:.9em 1.4em;text-decoration:none;transition:transform .2s ease,background-color .2s ease}.live-pill:hover{background:var(--live-panel-hover);transform:scale(1.05)}.live-pill.is-active{background:var(--live-accent)}.live-pill--large{font-size:max(1.1rem,1.6vw);padding:1.2em 1.6em}.live-header{left:0;position:fixed;right:0;top:0;z-index:1000}.live-header-tab{align-items:center;border-radius:0 0 var(--live-radius) var(--live-radius);cursor:pointer;display:flex;height:calc(var(--live-header) * .6);justify-content:center;margin:0 auto;transition:opacity .2s ease;width:20%}.live-brand-logo{height:60%}.live-brand-text{font-size:max(1.2rem,1.6vw);font-weight:800;letter-spacing:.02em}.live-header-panel{align-items:center;background:var(--live-surface);box-shadow:0 6px 24px #0009;display:flex;flex-wrap:wrap;gap:calc(var(--live-gap) * 2) calc(var(--live-gap) * 3);justify-content:center;left:0;opacity:0;padding:calc(var(--live-gap) * 1.5) var(--live-gap) calc(var(--live-gap) * 3.5);pointer-events:none;position:absolute;right:0;top:0;transform:translateY(-100%);transition:transform .3s cubic-bezier(.33,1,.68,1),opacity .3s ease}.live-header:hover .live-header-panel,.live-header:focus-within .live-header-panel{opacity:1;pointer-events:auto;transform:none}.live-header:hover .live-header-tab,.live-header:focus-within .live-header-tab{opacity:0}.live-group{align-items:center;display:flex;flex-direction:column;gap:.6em}.live-group-buttons{display:flex;flex-wrap:wrap;gap:calc(var(--live-gap) / 2);justify-content:center}.live-group-label{color:#bdbdbd;font-size:max(.8rem,.8vw);font-weight:700;text-transform:uppercase;letter-spacing:.06em}.live-back{align-self:flex-start}.live-banner{background:var(--color-warning-dim);border-radius:var(--live-radius);margin:var(--live-gap);padding:.6em 1em;text-align:center}.live-grid{display:grid;gap:var(--live-gap);grid-auto-flow:dense;margin:var(--live-gap);margin-bottom:calc(var(--live-footer) + var(--live-gap))}.live-empty{align-items:center;color:#bdbdbd;display:flex;font-size:max(1rem,1.2vw);height:70vh;justify-content:center;text-align:center}.live-tile{aspect-ratio:16 / 9;background:#000;border-radius:var(--live-radius);cursor:pointer;outline:2px solid var(--live-surface);overflow:hidden;position:relative;transition:opacity .2s ease}.live-tile.is-expanded{grid-column:span var(--live-span, 2);grid-row:span var(--live-span, 2)}.live-tile.is-audible{outline:3px solid var(--live-accent)}.live-tile.is-dimmed{opacity:.4}.live-tile-player,.live-tile-player>*,.live-tile-video{height:100%;top:0;right:0;bottom:0;left:0;position:absolute;width:100%}.live-tile-video{object-fit:contain}.live-skeleton,.live-tile-error{align-items:center;background:var(--live-panel);display:flex;flex-direction:column;gap:.6em;top:0;right:0;bottom:0;left:0;justify-content:center;position:absolute;text-align:center;z-index:2}.live-tile-error{color:#bdbdbd;font-size:max(.8rem,.8vw);padding:var(--live-gap)}.live-skeleton-shine{animation:live-shine 1s infinite linear;background:linear-gradient(to right,transparent 0%,rgba(242,242,245,.18) 50%,transparent 100%);top:0;right:0;bottom:0;left:0;position:absolute}@keyframes live-shine{0%{transform:translate(-100%)}to{transform:translate(100%)}}@media(prefers-reduced-motion:reduce){.live-skeleton-shine{animation:none}}.live-skeleton-mark{max-height:40%;max-width:26%}.live-mark-text{color:var(--live-ink);font-weight:800;max-width:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.live-skeleton-mark.live-mark-text{font-size:max(1rem,1.3vw)}.live-chip{background:var(--live-panel-hover);border:0;border-radius:999px;color:var(--live-ink);cursor:pointer;font:inherit;font-weight:700;padding:.4em 1em}.live-health{background:var(--color-error-dim);border-radius:0 var(--live-radius) 0 var(--live-radius);font-size:max(.7rem,.7vw);font-weight:800;padding:.3em .8em;position:absolute;right:0;text-transform:uppercase;top:0;z-index:3}.live-health--degraded{background:var(--color-warning-dim)}.live-health--unknown{background:var(--live-panel-hover)}.live-corner-logo{align-items:center;border-radius:var(--live-radius) 0 var(--live-radius) 0;display:flex;left:0;max-width:45%;padding:calc(var(--live-gap) / 2);position:absolute;top:0;transition:opacity .2s ease;width:15%;z-index:3}.live-tile.is-expanded .live-corner-logo{width:10%}.live-corner-mark{height:100%;object-fit:contain;width:100%}.live-corner-mark.live-mark-text{font-size:max(.75rem,.75vw);width:auto}.live-corner-logo:has(.live-mark-text){width:auto}.live-center-logo{align-items:center;background:radial-gradient(rgba(0,0,0,.7),transparent);display:flex;top:0;right:0;bottom:0;left:0;justify-content:center;opacity:0;pointer-events:none;position:absolute;transition:opacity .2s ease;z-index:3}.live-center-mark{width:26%}.live-center-mark.live-mark-text{font-size:max(1rem,1.6vw);width:auto}.live-tile:hover .live-center-logo,.live-tile:focus-within .live-center-logo{opacity:1}.live-tile:hover .live-hide-on-hover{opacity:0}.live-stat{align-items:center;border:0;border-radius:0 var(--live-radius) 0 var(--live-radius);bottom:0;color:var(--live-ink);display:flex;font-weight:800;font-size:max(.8rem,1vw);line-height:1;font-family:inherit;gap:.6em;height:15%;left:0;padding:0 calc(var(--live-gap) / 2);position:absolute;z-index:4}.live-stat .live-icon{height:60%}.live-stat--button{cursor:pointer}.live-stat--button.is-active{background:var(--live-accent)}.live-audible{border:0;border-radius:var(--live-radius) 0 var(--live-radius) 0;bottom:0;color:var(--live-ink);cursor:pointer;height:15%;padding:.4em;position:absolute;right:0;z-index:4}.live-sidebar{align-items:center;border-radius:0 var(--live-radius) var(--live-radius) 0;bottom:0;display:flex;flex-direction:column;gap:var(--live-gap);justify-content:center;padding:8px;position:absolute;right:0;top:0;width:12%;z-index:4}.live-side-button{align-items:center;aspect-ratio:1;background:#2b2c3266;border:0;border-radius:var(--live-radius);color:var(--live-ink);cursor:pointer;display:flex;justify-content:center;padding:18%;position:relative;width:60%}.live-side-button:hover,.live-side-button[aria-pressed=true]{background:#2b2c32d9}.live-side-button[aria-pressed=true]{color:var(--live-accent)}.live-side-button:after{background:#f2f2f5e6;border-radius:var(--live-radius);color:#1a191c;content:attr(data-tip);font-weight:800;font-size:.9rem;line-height:1;font-family:inherit;opacity:0;padding:8px;pointer-events:none;position:absolute;right:calc(100% + 16px);top:50%;transform:translateY(-50%);transition:opacity .2s ease;white-space:nowrap}.live-side-button:hover:after,.live-side-button:focus-visible:after{opacity:1}.live-chart-layer{background:#1a191cd1;cursor:default;top:0;right:0;bottom:0;left:0;padding:12% 14% 17% 4%;position:absolute;z-index:3}.viewer-chart{height:100%;margin:0;position:relative}.viewer-chart figcaption{color:#bdbdbd;font-size:max(.75rem,.75vw);font-weight:700;margin-bottom:4px}.viewer-chart svg{display:block;height:calc(100% - 1.5em);width:100%}.viewer-chart-grid{stroke:#333;stroke-dasharray:3 3}.viewer-chart-label{fill:#a0a0a0;font-size:11px}.viewer-chart-line{fill:none;stroke:var(--live-accent);stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.viewer-chart-crosshair{stroke:#828282;stroke-width:1}.viewer-chart-marker{fill:var(--live-accent);stroke:var(--live-surface);stroke-width:2}.viewer-chart-tooltip{background:#1a191cf2;border:1px solid #484a54;border-radius:6px;font-size:12px;padding:4px 8px;pointer-events:none;position:absolute;top:1.5em;transform:translate(-50%);white-space:nowrap}.viewer-chart--empty{align-items:center;color:#bdbdbd;display:flex;justify-content:center}.live-footer{bottom:0;left:var(--live-gap);position:fixed;right:var(--live-gap);z-index:999}.live-footer-bar{display:grid;grid-auto-columns:1fr;grid-auto-flow:column;height:calc(var(--live-footer) - 2vh)}.live-tab-button{border:0;border-radius:var(--live-radius) var(--live-radius) 0 0;color:var(--live-ink);cursor:pointer;font-weight:600;font-size:max(.9rem,1vw);line-height:1.2;font-family:inherit;height:100%;margin:0 auto;padding:0 1.2rem;transition:background-color .2s ease;width:70%}.live-tab-button:hover{background:#42444dbf}.live-tab-button.is-active{box-shadow:inset 0 -3px 0 var(--live-accent)}.live-selector{border-radius:var(--live-radius);margin-bottom:var(--live-gap);max-height:50vh;overflow-y:auto;padding:1vh}.live-selector-limit{color:var(--color-error);font-weight:700;margin:0 0 1vh}.live-selector-grid{display:grid;gap:1vh;grid-template-columns:repeat(auto-fill,minmax(max(8vw,96px),1fr))}.live-selector-item{align-items:center;aspect-ratio:16 / 9;background:var(--live-panel);border:0;border-radius:var(--live-radius);color:var(--live-ink);cursor:pointer;display:flex;font-weight:700;font-size:max(.7rem,.7vw);line-height:1.2;font-family:inherit;justify-content:center;padding:6%}.live-selector-item img{height:80%;object-fit:contain;width:80%}.live-selector-item:hover{outline:4px solid var(--color-healthy)}.live-selector-item.is-off img{filter:grayscale(1);opacity:.6}.live-selector-item.is-off span{color:#828282}.live-selector-item.is-off:hover{outline-color:var(--color-error)}.live-onboarding{align-items:center;display:flex;flex-direction:column;gap:2vw;justify-content:center;padding-top:4vh}.live-onboarding-brand{height:8vh;display:flex;align-items:center}.live-onboarding-title{font-size:max(1.6rem,2.4vw);font-weight:800;margin:0;text-align:center}.live-onboarding-buttons,.live-onboarding-filters{display:flex;flex-wrap:wrap;gap:2vw;justify-content:center;padding:0 4vw}.live-proceed{background:var(--live-panel);border:0;color:var(--live-ink);cursor:pointer;font-weight:800;font-size:max(1.4rem,2vw);line-height:1;font-family:inherit;margin-top:auto;padding:2vw;transition:background-color .2s ease;width:100%}.live-proceed:hover{background:var(--live-accent)}.live-info{background:var(--live-surface);border:1px solid #484a54;border-radius:12px;color:var(--live-ink);margin:auto;max-height:85vh;max-width:min(960px,92vw);padding:0;width:100%}.live-info::backdrop{background:#000000b3}.live-info-header{align-items:center;border-bottom:1px solid #343641;display:flex;gap:12px;padding:12px 16px}.live-info-header span{color:#bdbdbd;flex:1;font-size:.85rem}.live-info pre{font-size:12px;margin:0;max-height:70vh;overflow:auto;padding:16px}.portal-footer{border-top:1px solid var(--color-border-subtle);color:var(--color-text-dim);font-size:var(--fs-sm);padding:20px 24px;text-align:center}@media(max-width:640px){.portal-page-header{flex-direction:column}.portal-stats{gap:20px}}.portal-staff-notice{background:var(--color-elevated);border-bottom:1px solid var(--color-border);color:var(--color-text-muted);font-size:var(--fs-sm);margin:0;padding:8px 24px;text-align:center}.portal-host{color:var(--color-text-dim);font-family:var(--font-mono);font-size:var(--fs-xs);margin-left:8px}.transcoder-error{margin-top:.25rem;font-family:var(--font-mono);font-size:.75rem;color:var(--color-text-muted);overflow-wrap:anywhere}
