:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#070b12;--panel:#0d1420;--line:#1d2a3b;--text:#f5f8fc;--muted:#8c9aae;--cyan:#2ee6b8}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif}.login-shell{grid-template-columns:1.05fr .95fr;min-height:100vh;display:grid}.brand-panel{border-right:1px solid var(--line);background:radial-gradient(circle at 30% 25%,#2ee6b81f,#0000 34%),linear-gradient(145deg,#0b1420,#070b12 70%);flex-direction:column;justify-content:space-between;padding:56px 72px;display:flex;position:relative;overflow:hidden}.brand-panel:after{content:"";pointer-events:none;background-image:linear-gradient(#ffffff06 1px,#0000 1px),linear-gradient(90deg,#ffffff06 1px,#0000 1px);background-size:40px 40px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000,#0000);mask-image:linear-gradient(#000,#0000)}.brand-mark{z-index:1;background:#2ee6b814;border:1px solid #2ee6b859;border-radius:15px;place-items:center;width:52px;height:52px;display:grid;position:relative}.brand-mark span,.eyebrow{color:var(--cyan);font-weight:800}.eyebrow{letter-spacing:.18em;margin:0 0 18px;font-size:11px}.brand-panel h1{letter-spacing:-.055em;z-index:1;margin:0;font-size:clamp(42px,5vw,72px);line-height:1.02;position:relative}.brand-copy{color:var(--muted);z-index:1;max-width:600px;font-size:17px;line-height:1.7;position:relative}.signal-card{border:1px solid var(--line);z-index:1;background:#0d1420c7;border-radius:14px;align-items:center;gap:14px;max-width:390px;padding:16px 18px;display:flex}.signal-card strong,.signal-card small{display:block}.signal-card small{color:var(--muted);margin-top:4px}.signal-dot{background:var(--cyan);width:10px;height:10px;box-shadow:0 0 16px var(--cyan);border-radius:50%}.form-panel{background:linear-gradient(160deg,#0b111a,#070b12);flex-direction:column;justify-content:center;align-items:center;padding:48px;display:flex}.login-card{width:min(100%,460px)}.login-card h2{letter-spacing:-.04em;margin:0 0 8px;font-size:38px}.muted{color:var(--muted)}form{margin-top:34px}label{margin:0 0 9px;font-size:13px;font-weight:650;display:block}input{width:100%;height:52px;color:var(--text);background:#0b111a;border:1px solid #263447;border-radius:11px;outline:none;margin-bottom:22px;padding:0 15px;font-size:15px}input:focus{border-color:var(--cyan);box-shadow:0 0 0 3px #2ee6b81a}.password-row{justify-content:space-between;display:flex}.password-row span{color:#637188;font-size:12px}button{background:linear-gradient(90deg,var(--cyan),#56a8ff);color:#041019;cursor:pointer;border:0;border-radius:11px;justify-content:center;align-items:center;gap:14px;width:100%;height:52px;font-size:14px;font-weight:800;display:flex}.form-error{color:#ff718d;background:#ff456914;border:1px solid #ff456933;border-radius:9px;padding:11px}.security-note,.legal{color:#657389;text-align:center;margin-top:24px;font-size:12px}.legal{max-width:520px;position:absolute;bottom:24px}.dashboard-shell{min-height:100vh}.dashboard-shell header{border-bottom:1px solid var(--line);align-items:center;gap:12px;height:76px;padding:0 36px;display:flex}.brand-mark.small{border-radius:11px;width:40px;height:40px}.dashboard-shell header div:nth-child(2){flex-direction:column;display:flex}.dashboard-shell header small{color:var(--muted)}.dashboard-shell header form{margin:0 0 0 auto}.ghost-button{border:1px solid var(--line);width:auto;height:38px;color:var(--text);background:0 0;padding:0 18px}.dashboard-content{max-width:1180px;margin:auto;padding:70px 32px}.dashboard-content h1{letter-spacing:-.045em;margin:0 0 10px;font-size:46px}.metric-grid{grid-template-columns:repeat(3,1fr);gap:18px;margin-top:48px;display:grid}.metric-grid article,.welcome-box{border:1px solid var(--line);background:#0d1420bf;border-radius:16px;padding:24px}.metric-grid span{letter-spacing:.14em;color:var(--muted);font-size:11px}.metric-grid strong{margin:18px 0 5px;font-size:28px;display:block}.metric-grid article:first-child strong{color:var(--cyan)}.metric-grid small{color:var(--muted)}.welcome-box{justify-content:space-between;align-items:center;margin-top:18px;display:flex}.welcome-box h3{margin:0 0 8px}.welcome-box p{color:var(--muted);margin:0}.status-pill{color:var(--cyan);background:#2ee6b81a;border-radius:999px;padding:8px 12px;font-size:12px;font-weight:700}@media (max-width:900px){.login-shell{grid-template-columns:1fr}.brand-panel{display:none}.form-panel{min-height:100vh;padding:32px 24px}.legal{margin-top:48px;position:static}.metric-grid{grid-template-columns:1fr}}
.dashboard-shell header nav{gap:22px;margin-left:40px;display:flex}.dashboard-shell a{color:var(--muted);text-decoration:none}.dashboard-shell header nav a.active,.dashboard-shell header nav a:hover{color:var(--text)}.page-heading{justify-content:space-between;align-items:flex-start;display:flex}.compact-button{width:auto;height:42px;padding:0 18px}.node-form{border:1px solid var(--line);background:var(--panel);border-radius:16px;grid-template-columns:1fr 1fr;gap:0 18px;margin:28px 0;padding:24px;display:grid}.node-form button,.node-form .form-error{grid-column:1/-1}.nodes-table{border:1px solid var(--line);border-radius:16px;margin-top:34px;overflow:hidden}.table-head,.table-row{grid-template-columns:2fr 1fr 1fr 1fr .7fr .7fr;align-items:center;gap:16px;padding:17px 20px;display:grid}.table-head{color:var(--muted);letter-spacing:.1em;background:#0d1521;font-size:11px}.table-row{border-top:1px solid var(--line);font-size:14px}.table-row strong,.table-row small{display:block}.table-row small{color:var(--muted);margin-top:4px}.node-dot{background:#64748b;border-radius:50%;width:8px;height:8px;margin-right:8px;display:inline-block}.node-dot.online{background:var(--cyan);box-shadow:0 0 10px var(--cyan)}.node-dot.disabled{background:#ef476f}.empty-state{text-align:center;color:var(--muted);padding:44px}.key-banner{background:#2ee6b80f;border:1px solid #2ee6b84d;border-radius:14px;margin:28px 0;padding:20px}.key-banner p{color:var(--muted)}.key-banner code{color:var(--cyan);background:#05080e;border-radius:8px;padding:14px;display:block;overflow:auto}.key-banner button{width:auto;height:36px;margin-top:12px;padding:0 14px}@media (max-width:900px){.dashboard-shell header nav,.table-head{display:none}.table-row{grid-template-columns:1fr 1fr}.node-form{grid-template-columns:1fr}.page-heading{gap:20px}.dashboard-content{padding:42px 20px}}
.key-banner textarea{width:100%;color:var(--cyan);border:1px solid var(--line);resize:vertical;background:#05080e;border-radius:8px;padding:14px;font-family:monospace;font-size:12px;line-height:1.6}.table-row .ghost-button{margin-top:10px;font-size:12px}.table-row>span{overflow-wrap:anywhere;min-width:0}.key-banner button:disabled,button:disabled{opacity:.5;cursor:wait}
select{width:100%;height:52px;color:var(--text);background:#0b111a;border:1px solid #263447;border-radius:11px;margin-bottom:22px;padding:0 12px}.full-width{grid-column:1/-1}.check-label{align-items:center;gap:10px;display:flex}.check-label input{width:18px;height:18px;margin:0}.stream-toolbar{flex-wrap:wrap;align-items:center;gap:22px;margin:28px 0;display:flex}.export-link{border:1px solid #2ee6b8;border-radius:9px;margin-left:auto;padding:12px 16px;color:#2ee6b8!important}.stream-notice{color:#8cf3c8;background:#102820;border:1px solid #245044;border-radius:10px;padding:14px}.stream-list{gap:18px;margin-top:25px;display:grid}.stream-card{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:22px}.stream-card-heading{justify-content:space-between;align-items:center;display:flex}.stream-status{background:#253044;border-radius:999px;padding:6px 10px;font-size:12px}.state-running{color:#2ee6b8;background:#12372c}.state-error{color:#ff859d}.stream-actions{flex-wrap:wrap;gap:8px;display:flex}.stream-card details{color:var(--muted);margin-top:18px;font-size:13px}.stream-card code{overflow-wrap:anywhere;margin-top:10px;display:block}.danger-button{color:#ff859d}.remove-dialog{z-index:10;background:#142031;border:1px solid #ff859d;border-radius:15px;width:min(90vw,480px);padding:28px;position:fixed;top:25%;left:50%;transform:translate(-50%);box-shadow:0 0 0 100vmax #000b}.remove-dialog button{margin-top:12px}.workspace-navigation{border-bottom:1px solid var(--line);background:#0d1420;justify-content:center;gap:24px;padding:12px 20px;font-size:13px;display:flex}.workspace-navigation a{color:#c2d0e4;text-decoration:none}.live-streams-page .stream-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px}.live-streams-page .dashboard-content{padding-top:32px}.live-streams-page .page-heading{margin-bottom:18px}.live-streams-page .stream-toolbar{gap:16px;margin:16px 0;font-size:13px}.live-streams-page .stream-filters{gap:16px;margin:14px 0;padding:14px}.live-streams-page .stream-card{border-radius:12px;min-width:0;padding:14px}.live-streams-page .stream-card.is-editing{grid-column:1/-1}.live-streams-page .stream-card-heading{gap:10px;font-size:14px}.live-streams-page .stream-card-heading .check-label{min-width:0}.live-streams-page .stream-status{padding:4px 8px;font-size:11px}.live-streams-page .stream-meta{color:var(--muted);margin:9px 0 5px;font-size:12px}.live-streams-page .stream-quality{color:#8cf3c8;margin:5px 0 9px;font-size:13px}.stream-quality span{color:var(--muted)}.live-streams-page .stream-source{background:#0b111a;border-radius:7px;min-width:0;margin-bottom:10px;padding:8px 10px;font-size:12px}.live-streams-page .stream-source span{color:var(--muted)}.live-streams-page .stream-source code{white-space:nowrap;text-overflow:ellipsis;margin-top:4px;font-size:11px;overflow:hidden}.live-streams-page .stream-actions button,.live-streams-page .stream-actions a{border-radius:7px;min-height:30px;margin-left:0;padding:6px 9px;font-size:12px}.live-streams-page .stream-actions{gap:6px}.live-streams-page .source-details{margin:6px 0 10px;font-size:12px}.live-streams-page .source-details p{margin:8px 0}.source-details code{font-size:11px}.live-streams-page .stream-edit-form{border-top:1px solid var(--line);margin-top:16px;padding-top:18px}.live-streams-page .stream-edit-form input,.live-streams-page .stream-edit-form select,.live-streams-page .stream-filters input,.live-streams-page .stream-filters select{height:40px;margin-bottom:10px;font-size:13px}.live-streams-page .stream-edit-form input[type=checkbox]{height:18px;margin:0}.source-editor{border:1px solid var(--line);border-radius:9px;min-width:0;padding:12px}.source-editor legend{padding:0 6px;font-size:13px}.source-editor .muted{font-size:12px}.source-editor-row{border-bottom:1px solid var(--line);margin-bottom:12px;padding-bottom:10px}.source-order{gap:6px;display:flex}.live-streams-page .source-order button{padding:5px 9px;font-size:12px}@media (max-width:1000px){.live-streams-page .stream-list{grid-template-columns:1fr}}
.category-row{flex-wrap:wrap;align-items:center;gap:12px;padding:12px 0;display:flex}.category-row strong{flex:1;min-width:140px}.category-row span{color:var(--muted);font-size:13px}.category-child{border-top:1px solid var(--line);padding-left:22px}.category-group{margin-top:18px}.playlist-input{width:100%;color:var(--text);resize:vertical;background:#070b12;border:1px solid #263447;border-radius:10px;padding:15px;font:13px/1.6 monospace}.import-entry{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:16px;padding:16px;display:flex}.import-entry label{flex:1;min-width:220px;margin:0}.import-entry small{color:var(--muted)}.import-entry span{font-size:12px}.import-error{color:#ff859d}.import-preview{border:1px solid var(--line);border-radius:14px;margin-top:35px;padding:22px}.workspace-navigation{flex-wrap:wrap}
.line-scope{border:1px solid var(--line);border-radius:10px;margin-bottom:20px;padding:20px}.line-scope label{margin:12px 0}.line-scope legend{color:var(--muted)}.key-banner h2{overflow-wrap:anywhere}.line-scope .muted{font-size:13px}
