:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0b0d12;--bg-elevated:#12151d;--bg-card:#171b26;--bg-card-hover:#1e2433;--border:#ffffff14;--text:#f3f5f9;--text-muted:#9aa3b5;--accent:#e11d48;--accent-soft:#e11d4826;--live:#22c55e;--radius:14px;--shadow:0 12px 40px #00000059;--font:"Segoe UI", system-ui, -apple-system, sans-serif;--max:1280px}*,:before,:after{box-sizing:border-box}html,body,#root{min-height:100%}body{font-family:var(--font);background:radial-gradient(1200px 600px at 10% -10%, #e11d481f, transparent 50%), radial-gradient(900px 500px at 100% 0%, #3b82f61a, transparent 45%), var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;line-height:1.5}a{color:inherit;text-decoration:none}button,input{font:inherit}.page{flex-direction:column;min-height:100vh;display:flex}.site-header{z-index:50;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--border);background:#0b0d12d1;position:sticky;top:0}.header-inner{max-width:var(--max);grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem;margin:0 auto;padding:.85rem 1.25rem;display:grid}.brand{justify-self:start;align-items:center;gap:.75rem;display:flex}.brand-mark{color:#fff;background:linear-gradient(135deg,#e11d48,#f97316);border-radius:12px;place-items:center;width:40px;height:40px;font-size:.9rem;display:grid;box-shadow:0 8px 24px #e11d4859}.brand-name{letter-spacing:-.02em;font-weight:700;line-height:1.1;display:block}.brand-sub{color:var(--text-muted);font-size:.75rem;display:block}.search-wrap{width:min(360px,100%)}.search-input{border:1px solid var(--border);background:var(--bg-elevated);width:100%;color:var(--text);border-radius:999px;outline:none;padding:.65rem 1rem;transition:border-color .15s,box-shadow .15s}.search-input:focus{box-shadow:0 0 0 3px var(--accent-soft);border-color:#e11d4880}.header-right{justify-self:end;font-size:1.4rem}.main{max-width:var(--max);flex:1;width:100%;margin:0 auto;padding:1.5rem 1.25rem 3rem}.hero{border-radius:calc(var(--radius) + 4px);background:linear-gradient(135deg, #e11d482e, #0f172a66), var(--bg-elevated);border:1px solid var(--border);box-shadow:var(--shadow);flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1rem;margin-bottom:1.5rem;padding:1.5rem;display:flex}.hero h1{letter-spacing:-.03em;margin:0 0 .35rem;font-size:clamp(1.5rem,3vw,2rem)}.hero p{max-width:46ch;color:var(--text-muted);margin:0}.btn-primary{appearance:none;cursor:pointer;color:#fff;background:linear-gradient(135deg,#e11d48,#fb7185);border:none;border-radius:999px;padding:.75rem 1.25rem;font-weight:600;transition:transform .12s,filter .12s;box-shadow:0 8px 24px #e11d484d}.btn-primary:hover{filter:brightness(1.08);transform:translateY(-1px)}.tabs{flex-wrap:wrap;gap:.5rem;margin-bottom:1rem;display:flex}.tab{appearance:none;border:1px solid var(--border);background:var(--bg-elevated);color:var(--text-muted);cursor:pointer;border-radius:999px;align-items:center;gap:.4rem;padding:.45rem .9rem;transition:background .15s,color .15s,border-color .15s;display:inline-flex}.tab:hover{color:var(--text);background:var(--bg-card)}.tab.active{color:#fff;background:var(--accent);border-color:#0000}.tab-count{background:#fff3;border-radius:999px;padding:0 .4rem;font-size:.75rem}.result-count{color:var(--text-muted);margin:0 0 1rem;font-size:.9rem}.channel-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.9rem;display:grid}.channel-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);transition:transform .15s,background .15s,border-color .15s;position:relative;overflow:hidden}.channel-card:hover{background:var(--bg-card-hover);border-color:#e11d4859;transform:translateY(-3px)}.channel-card-link{padding:.9rem .9rem 1rem;display:block}.channel-logo-wrap{aspect-ratio:1;background:#0f1219;border-radius:12px;place-items:center;margin-bottom:.75rem;display:grid;position:relative;overflow:hidden}.channel-logo{object-fit:contain;max-width:72%;max-height:72%}.channel-logo-fallback{color:var(--text-muted);font-size:1.4rem;font-weight:700}.live-badge{letter-spacing:.04em;background:var(--accent);color:#fff;border-radius:4px;padding:.15rem .4rem;font-size:.65rem;font-weight:700;position:absolute;top:8px;left:8px}.channel-name{margin:0;font-size:.95rem;font-weight:600;line-height:1.25}.channel-cat{color:var(--text-muted);font-size:.75rem}.fav-btn{border:1px solid var(--border);color:#fbbf24;cursor:pointer;z-index:2;background:#00000073;border-radius:999px;place-items:center;width:32px;height:32px;font-size:1rem;display:grid;position:absolute;top:.55rem;right:.55rem}.fav-btn.active,.fav-btn.large.active{background:#fbbf242e;border-color:#fbbf2466}.fav-btn.large{width:auto;height:auto;color:var(--text);border-radius:999px;padding:.5rem .9rem;font-size:.9rem;position:static}.watch-layout{max-width:var(--max);flex:1;grid-template-columns:minmax(0,1fr) 300px;gap:1.25rem;width:100%;margin:0 auto;padding:1.25rem;display:grid}.watch-main{min-width:0}.player-shell{aspect-ratio:16/9;border-radius:var(--radius);border:1px solid var(--border);width:100%;box-shadow:var(--shadow);background:#000;position:relative;overflow:hidden}.player-shell.is-fs{aspect-ratio:auto;background:#000;border:none;border-radius:0;flex-direction:column;width:100%;height:100%;max-height:100%;display:flex}.player-shell.is-fs .player-frame{object-fit:contain;z-index:1;width:100%;height:100%;position:absolute;inset:0}.player-frame{object-fit:contain;background:#000;border:0;width:100%;height:100%;display:block}.player-shell-yt .player-frame{z-index:1;width:100%;height:100%;position:absolute;inset:0}.fs-hint{z-index:13;color:#ffffffbf;pointer-events:none;background:#00000073;border-radius:6px;margin:0;padding:.25rem .5rem;font-size:.72rem;position:absolute;bottom:2.8rem;left:10px}.player-shell.is-fs .fs-hint{display:none}.player-overlay{color:var(--text-muted);text-align:center;background:#0000008c;flex-direction:column;justify-content:center;align-items:center;gap:.75rem;padding:1rem;display:flex;position:absolute;inset:0}.player-error{color:#fecaca;background:#000000c7}.unmute-btn{z-index:5;appearance:none;color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000000b3;border:1px solid #fff3;border-radius:999px;padding:.55rem .9rem;font-weight:600;position:absolute;bottom:56px;right:12px}.unmute-btn:hover{background:#e11d48d9}.buffer-badge{z-index:5;color:var(--text-muted);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000000a6;border-radius:999px;align-items:center;gap:.45rem;padding:.4rem .75rem;font-size:.8rem;display:inline-flex;position:absolute;top:12px;left:12px}.spinner.small{border-width:2px;width:16px;height:16px}.subtitle-marquee{z-index:20;pointer-events:none;background:linear-gradient(#0000 0%,#0000009e 25%,#000000e0 100%);align-items:center;height:2.75rem;display:flex;position:absolute;bottom:0;left:0;right:0;overflow:hidden}.player-shell.is-fs .subtitle-marquee{z-index:30;height:3.4rem}.subtitle-marquee-track{white-space:nowrap;will-change:transform;flex-wrap:nowrap;width:max-content;animation-name:subtitle-scroll-rtl;animation-timing-function:linear;animation-iteration-count:infinite;display:flex}.subtitle-marquee-text{color:#fff;letter-spacing:.02em;text-shadow:0 2px 6px #000000f2;white-space:nowrap;padding:0 3rem;font-size:clamp(1rem,2.2vw,1.4rem);font-weight:700;display:inline-block}.player-shell.is-fs .subtitle-marquee-text{font-size:clamp(1.15rem,2.5vw,1.75rem)}@keyframes subtitle-scroll-rtl{0%{transform:translate(0)}to{transform:translate(-50%)}}.player-chrome{z-index:25;gap:.4rem;display:flex;position:absolute;top:10px;right:10px}.player-shell.is-fs .player-chrome{z-index:35}.chrome-btn{appearance:none;color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0000009e;border:1px solid #ffffff38;border-radius:8px;padding:.4rem .7rem;font-size:.8rem;font-weight:700}.chrome-btn.on{color:#86efac;border-color:#22c55e8c}.chrome-btn:hover{color:#fff;background:#e11d48d9}.field textarea{border:1px solid var(--border);background:var(--bg);width:100%;color:var(--text);resize:vertical;min-height:96px;font:inherit;border-radius:10px;outline:none;padding:.65rem .85rem;line-height:1.45}.field textarea:focus{box-shadow:0 0 0 3px var(--accent-soft);border-color:#e11d4880}.hint{color:var(--text-muted);font-size:.9rem}.spinner{border:3px solid #ffffff26;border-top-color:var(--accent);border-radius:50%;width:36px;height:36px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.watch-info{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);margin-top:1rem;padding:1rem 1.1rem}.watch-title-row{flex-wrap:wrap;align-items:center;gap:.9rem;display:flex}.watch-title-row>div{flex:1;min-width:160px}.watch-logo{object-fit:contain;background:#0f1219;border-radius:10px;width:52px;height:52px;padding:6px}.watch-logo-fallback{color:var(--text-muted);object-fit:unset;place-items:center;font-weight:700;display:grid}code{background:#ffffff0f;border-radius:4px;padding:.1em .35em;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.85em}.watch-info h1{letter-spacing:-.02em;margin:0;font-size:1.35rem}.watch-meta{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:.35rem;margin:.2rem 0 0;font-size:.9rem;display:flex}.live-dot{background:var(--live);border-radius:50%;width:8px;height:8px;display:inline-block;box-shadow:0 0 0 4px #22c55e33}.disclaimer{color:var(--text-muted);margin:.85rem 0 0;font-size:.85rem}.watch-side h2{color:var(--text-muted);margin:0 0 .75rem;font-size:1rem;font-weight:600}.side-list{flex-direction:column;gap:.65rem;max-height:calc(100vh - 140px);padding-right:.25rem;display:flex;overflow:auto}.side-list .channel-card-link{grid-template-columns:64px 1fr;align-items:center;gap:.75rem;padding:.65rem;display:grid}.side-list .channel-logo-wrap{aspect-ratio:1;border-radius:8px;margin:0}.side-list .live-badge{display:none}.side-list .channel-name{font-size:.88rem}.empty,.empty-page{text-align:center;color:var(--text-muted);padding:3rem 1rem}.empty-page{flex-direction:column;align-items:center;gap:1rem;display:flex}.site-footer{border-top:1px solid var(--border);text-align:center;color:var(--text-muted);padding:1.25rem;font-size:.85rem}.site-footer p{margin:.25rem 0}.footer-domain{opacity:.7}@media (width<=900px){.header-inner{grid-template-columns:1fr auto;grid-template-areas:"brand right""search search"}.brand{grid-area:brand}.header-right{grid-area:right}.search-wrap{grid-area:search;width:100%}.watch-layout{grid-template-columns:1fr}.side-list{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));max-height:none;display:grid}.side-list .channel-card-link{padding:.9rem;display:block}.side-list .channel-logo-wrap{margin-bottom:.75rem}.side-list .live-badge{display:inline-block}}.staff-page{max-width:960px;min-height:100vh;margin:0 auto;padding:1.25rem}.staff-top{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.25rem;display:flex}.staff-top h1{letter-spacing:-.02em;margin:0;font-size:1.5rem}.staff-top-actions{gap:.5rem;display:flex}.staff-card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:1rem;padding:1.25rem}.staff-card.center{text-align:center;flex-direction:column;align-items:center;gap:.75rem;margin-top:15vh;display:flex}.staff-card.login-card{max-width:400px;margin:12vh auto 0}.staff-card h2{margin:0 0 1rem;font-size:1.1rem}.staff-divider{border:none;border-top:1px solid var(--border);margin:.5rem 0 .25rem}.staff-section-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.staff-section-head h2{margin:0}.btn-danger{appearance:none;color:#fecaca;cursor:pointer;font-weight:600;font:inherit;background:#7f1d1d73;border:1px solid #f8717173;border-radius:999px;padding:.5rem .95rem}.btn-danger:hover:not(:disabled){color:#fff;background:#b91c1cbf}.btn-danger:disabled{opacity:.5;cursor:not-allowed}.staff-form{flex-direction:column;gap:.85rem;display:flex}.field{flex-direction:column;gap:.35rem;display:flex}.field span{color:var(--text-muted);font-size:.85rem}.field input,.field select,.login-card input{border:1px solid var(--border);background:var(--bg);width:100%;color:var(--text);border-radius:10px;outline:none;padding:.65rem .85rem}.field input:focus,.field select:focus,.login-card input:focus{box-shadow:0 0 0 3px var(--accent-soft);border-color:#e11d4880}.field-row{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.check-field{color:var(--text-muted);align-items:center;gap:.5rem;font-size:.9rem;display:flex}.form-actions{flex-wrap:wrap;gap:.5rem;display:flex}.import-preview{background:var(--bg);border:1px solid var(--border);border-radius:10px;padding:.85rem 1rem;font-size:.9rem}.import-preview ul{color:var(--text-muted);max-height:180px;margin:.5rem 0 0;padding-left:1.1rem;overflow:auto}.import-preview li{margin:.2rem 0}.field input[type=file]{color:var(--text-muted);background:0 0;border:none;padding:.5rem 0}.yt-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.85rem;margin-top:1rem;display:grid}.yt-card{background:var(--bg);border:1px solid var(--border);border-radius:12px;flex-direction:column;display:flex;overflow:hidden}.yt-thumb-wrap{aspect-ratio:16/9;background:#0a0a0a;position:relative}.yt-thumb-wrap img{object-fit:cover;width:100%;height:100%;display:block}.yt-live-badge{color:#fff;letter-spacing:.04em;background:#e11d48;border-radius:4px;padding:.15rem .4rem;font-size:.65rem;font-weight:800;position:absolute;top:8px;left:8px}.yt-meta{flex-direction:column;flex:1;gap:.35rem;padding:.65rem .75rem .8rem;display:flex}.yt-title{-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:.88rem;font-weight:600;line-height:1.3;display:-webkit-box;overflow:hidden}.yt-channel{color:var(--text-muted);margin:0;font-size:.75rem}.yt-actions{justify-content:space-between;align-items:center;gap:.5rem;margin-top:auto;padding-top:.35rem;display:flex}.yt-add-btn{padding:.4rem .75rem!important;font-size:.85rem!important}.page-candidates{flex-direction:column;gap:.65rem;margin-top:1rem;display:flex}.page-candidate{background:var(--bg);border:1px solid var(--border);border-radius:12px;grid-template-columns:96px 1fr auto;align-items:center;gap:.75rem;padding:.65rem;display:grid}.page-cand-thumb{object-fit:cover;background:#0a0a0a;border-radius:8px;width:96px;height:54px}.page-cand-thumb.placeholder{color:var(--text-muted);text-transform:uppercase;place-items:center;font-size:.7rem;display:grid}.page-cand-meta{flex-direction:column;gap:.15rem;min-width:0;display:flex}.page-cand-meta strong{white-space:nowrap;text-overflow:ellipsis;font-size:.9rem;overflow:hidden}.page-cand-url{white-space:nowrap;text-overflow:ellipsis;font-size:.7rem;overflow:hidden}@media (width<=600px){.page-candidate{grid-template-columns:72px 1fr}.page-candidate .yt-add-btn{grid-column:1/-1}}.form-error{color:#fecaca;margin:0}.form-ok{color:#86efac;margin:0}.btn-ghost{appearance:none;border:1px solid var(--border);color:var(--text);cursor:pointer;background:0 0;border-radius:999px;align-items:center;padding:.55rem .95rem;text-decoration:none;display:inline-flex}.btn-ghost:hover{background:var(--bg-card)}.staff-back{text-align:center;color:var(--text-muted);margin-top:1rem;font-size:.9rem;display:block}.staff-table-wrap{overflow-x:auto}.staff-table{border-collapse:collapse;width:100%;font-size:.9rem}.staff-table th,.staff-table td{text-align:left;border-bottom:1px solid var(--border);vertical-align:top;padding:.65rem .5rem}.staff-table th{color:var(--text-muted);font-size:.8rem;font-weight:600}.url-cell{text-overflow:ellipsis;white-space:nowrap;max-width:220px;color:var(--text-muted);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.75rem;overflow:hidden}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.75rem}.muted{color:var(--text-muted)}.actions-cell{white-space:nowrap;flex-direction:column;align-items:flex-start;gap:.25rem;display:flex}.link-btn{appearance:none;color:#93c5fd;cursor:pointer;background:0 0;border:none;padding:0;font-size:.85rem;text-decoration:none}.link-btn.danger{color:#fca5a5}@media (width<=700px){.field-row{grid-template-columns:1fr}.url-cell{max-width:120px}}
