:root{--bg:#0c1a33;--bg-alt:#16294d;--accent:#ffc94a;--accent-ink:#241a04;--accent-glow:#ffe08a;--danger:#e63946;--text:#f5ecd8;--text-dim:#aebbdc;--border:#2d4470;--border-strong:#060c1c}*{box-sizing:border-box}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--accent-glow);outline-offset:2px}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{background:var(--bg);color:var(--text);min-height:100vh;padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right);margin:0;font-family:Verdana,Trebuchet MS,Segoe UI,sans-serif}#root{min-height:100vh}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:1000;background:var(--accent);color:var(--accent-ink);border-radius:6px;padding:10px 16px;font-weight:600;transition:top .15s;position:absolute;top:-100px;left:16px}.skip-link:focus-visible{top:16px}header{border-bottom:3px solid var(--border);background:var(--bg-alt);z-index:10;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:24px clamp(16px,4vw,48px);display:flex;position:sticky;top:0}header:before{content:"";background:repeating-linear-gradient(-45deg, var(--accent), var(--accent) 18px, var(--bg-alt) 18px, var(--bg-alt) 36px);height:6px;position:absolute;top:0;left:0;right:0}.logo{letter-spacing:1px;color:var(--accent);text-shadow:2px 2px 0 var(--bg);font-family:Bungee,Georgia,Times New Roman,serif;font-size:clamp(20px,4vw,30px);text-decoration:none}.logo span{color:var(--text)}#search{border:2px solid var(--border);background:var(--bg);max-width:420px;color:var(--text);border-radius:8px;flex:260px;padding:10px 16px;font-size:15px}#search:focus{border-color:var(--accent);outline:none}.switch-profile-link{color:var(--text-dim);white-space:nowrap;border:2px solid var(--border);border-radius:8px;padding:8px 14px;font-size:13px;text-decoration:none}.switch-profile-link:hover{color:var(--text);border-color:var(--accent)}.header-actions{align-items:center;gap:14px;display:flex}.hidden-menu,.profile-menu{position:relative}.profile-button{color:var(--text);cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;padding:0;display:flex}.profile-button-avatar,.profile-menu-avatar{color:#fff;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:inline-flex}.profile-button-avatar{border:2px solid #0000;width:40px;height:40px;font-size:18px}.profile-button:hover .profile-button-avatar,.profile-button:focus-visible .profile-button-avatar{border-color:var(--text)}.profile-button-caret{font-size:12px;transition:transform .15s}.profile-button[aria-expanded=true] .profile-button-caret{transform:rotate(180deg)}.profile-menu-avatar{border-radius:6px;width:28px;height:28px;font-size:14px}.profile-menu-current,.profile-menu-item{align-items:center;gap:10px;padding:8px 12px;font-size:14px;display:flex}.profile-menu-current{color:var(--text-dim);border-bottom:1px solid var(--border);margin:0 0 4px;padding-bottom:10px}.profile-menu-item{color:var(--text);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:6px}.profile-menu-item:hover,.profile-menu-item:focus-visible{background:var(--bg);color:var(--accent-glow)}.hidden-menu-panel a.profile-menu-manage{border-top:1px solid var(--border);border-radius:0 0 6px 6px;margin-top:4px}.layout-toggle{border:2px solid var(--border);background:var(--bg-alt);height:40px;color:var(--text-dim);font:inherit;white-space:nowrap;cursor:pointer;border-radius:10px;padding:0 14px;font-size:13px}.layout-toggle:hover,.layout-toggle:focus-visible{color:var(--text);border-color:var(--accent)}.hidden-menu-btn{border:2px solid var(--border);background:var(--bg-alt);cursor:pointer;border-radius:10px;flex-direction:column;justify-content:center;gap:5px;width:40px;height:40px;padding:0;display:flex}.hidden-menu-btn span{background:var(--text-dim);border-radius:2px;width:20px;height:2px;margin:0 auto;transition:background .15s;display:block}.hidden-menu-btn:hover,.hidden-menu-btn[aria-expanded=true]{border-color:var(--accent)}.hidden-menu-btn:hover span,.hidden-menu-btn[aria-expanded=true] span{background:var(--accent-glow)}.hidden-menu-panel{background:var(--bg-alt);border:2px solid var(--border);z-index:20;border-radius:10px;flex-direction:column;min-width:210px;padding:6px;display:flex;position:absolute;top:calc(100% + 10px);right:0;box-shadow:0 14px 32px -12px #000000b3}.hidden-menu-panel a{color:var(--text);border-radius:6px;padding:10px 12px;font-size:14px;text-decoration:none}.hidden-menu-panel a:hover,.hidden-menu-panel a:focus-visible{background:var(--bg);color:var(--accent-glow)}main{padding:24px clamp(16px,4vw,48px) 60px}.section-title{text-transform:uppercase;letter-spacing:3px;color:var(--text-dim);margin:8px 0 16px;font-size:14px}.grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:20px;display:grid}.row{margin-bottom:8px}.row-viewport{position:relative}.row-grid{margin-bottom:32px}.row-grid .grid{padding-top:12px}.row-track{scroll-snap-type:x proximity;scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:var(--border) transparent;gap:16px;padding:20px 4px 16px;display:flex;overflow-x:auto}.row-track::-webkit-scrollbar{height:6px}.row-track::-webkit-scrollbar-track{background:0 0}.row-track::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.row-track::-webkit-scrollbar-thumb:hover{background:var(--text-dim)}.row-track>.card{scroll-snap-align:start;flex:0 0 150px}.row-track{scroll-padding-inline:44px}.row-track>.card:first-child{margin-left:40px}.row-track>.card:last-child{margin-right:40px}.row-arrow{background:linear-gradient(to right, var(--bg) 20%, transparent);width:44px;color:var(--text);cursor:pointer;z-index:2;border:none;font-size:28px;position:absolute;top:0;bottom:12px}.row-arrow-right{background:linear-gradient(to left, var(--bg) 20%, transparent);right:0}.row-arrow-left{left:0}.card{color:inherit;background:var(--bg-alt);border:2px solid var(--border);border-radius:8px;text-decoration:none;transition:transform .18s,box-shadow .18s,border-color .18s;display:block;position:relative;overflow:hidden}.card:hover,.card:focus-visible{border-color:var(--accent);box-shadow:5px 5px 0 var(--border-strong), 0 12px 24px #00000080;z-index:3;transform:translateY(-6px)scale(1.03)}.card:focus-visible{outline:none}.poster{aspect-ratio:2/3;object-fit:cover;background:var(--bg);width:100%;display:block}.card-info{padding:10px 12px 12px}.card-title{margin:0;font-size:14px;line-height:1.3}.badge{background:var(--accent);color:var(--accent-ink);text-transform:uppercase;letter-spacing:.5px;border-radius:4px;padding:4px 8px;font-size:11px;font-weight:700;position:absolute;top:8px;left:8px;box-shadow:0 2px 6px #0006}.badge-processing{color:#fff;background:#141414d9;border:1px solid #ffffff40;left:auto;right:8px}.badge-queued{opacity:.85;background:#14141499;border-color:#ffffff26}.badge-watched{color:#fff;background:#0f6b5f;transform:rotate(-4deg)}.card-remove{z-index:2;width:24px;height:24px;color:var(--text);cursor:pointer;opacity:0;background:#000000a6;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:13px;line-height:1;transition:opacity .15s,background .15s;display:flex;position:absolute;top:6px;right:6px}.card:hover .card-remove,.card:focus-within .card-remove{opacity:1}.card-remove:hover{background:var(--danger);color:#fff}.card-info-btn{z-index:2;width:26px;height:26px;color:var(--text);cursor:pointer;opacity:0;background:#000000a6;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:15px;line-height:1;transition:opacity .15s,background .15s;display:flex;position:absolute;bottom:44px;right:6px}.card:hover .card-info-btn,.card:focus-within .card-info-btn{opacity:1}.card-info-btn:hover{background:var(--accent);color:var(--accent-ink)}.poster-preview{background:#000}.hls-dot{z-index:2;border-radius:50%;width:9px;height:9px;position:absolute;bottom:8px;right:8px;box-shadow:0 0 0 2px #0000008c}.hls-dot-ready{background:#2a9d8f}.hls-dot-pending{background:var(--danger)}.hls-dot-partial{background:#e8974a}.card-resume-overlay{opacity:0;pointer-events:none;background:#00000040;justify-content:center;align-items:center;transition:opacity .15s;display:flex;position:absolute;inset:0}.card:hover .card-resume-overlay,.card:focus-within .card-resume-overlay{opacity:1}.card-resume-play{border:2px solid var(--text);width:52px;height:52px;color:var(--text);background:#0009;border-radius:50%;justify-content:center;align-items:center;padding-left:3px;font-size:20px;display:flex}.quickinfo-backdrop{z-index:100;background:#050207bf;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.quickinfo-card{background:var(--bg-alt);border:2px solid var(--border);border-radius:14px;width:100%;max-width:480px;max-height:85vh;position:relative;overflow-y:auto;box-shadow:0 24px 60px #000000b3}.shortcuts-help{background:var(--bg-alt);border:2px solid var(--border);border-radius:14px;width:100%;max-width:420px;max-height:85vh;padding:24px;position:relative;overflow-y:auto;box-shadow:0 24px 60px #000000b3}.shortcuts-list{flex-direction:column;gap:10px;margin:16px 0 0;padding:0;list-style:none;display:flex}.shortcuts-list li{align-items:center;gap:12px;display:flex}.shortcut-keys{background:var(--bg);border:1px solid var(--border);text-align:center;border-radius:6px;flex:none;min-width:60px;padding:3px 10px;font-family:monospace;font-size:.85em}.quickinfo-close{z-index:2;color:#fff;cursor:pointer;background:#0009;border:none;border-radius:50%;width:32px;height:32px;font-size:15px;position:absolute;top:12px;right:12px}.quickinfo-poster{aspect-ratio:16/9;object-fit:cover;background:#000;width:100%;display:block}.quickinfo-body{padding:20px}.quickinfo-body h2{margin:0 0 10px;font-size:22px}.quickinfo-genres{flex-wrap:wrap;gap:8px;margin-bottom:12px;display:flex}.quickinfo-actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:16px;display:flex}.quickinfo-play{background:var(--accent);color:var(--accent-ink);border:2px solid var(--border-strong);cursor:pointer;border-radius:8px;align-items:center;gap:8px;padding:12px 22px;font-size:15px;font-weight:700;text-decoration:none;display:inline-flex;box-shadow:3px 3px #00000080}.quickinfo-play:hover{background:var(--accent-glow)}.quickinfo-actions button.secondary{color:var(--text-dim);border:2px solid var(--border);cursor:pointer;background:0 0;border-radius:8px;padding:12px 22px;font-size:15px;font-weight:700}.quickinfo-actions button.secondary:hover{color:var(--text);border-color:var(--accent)}.quickinfo-actions button.danger{border:2px solid var(--border-strong);cursor:pointer;border-radius:8px;padding:12px 22px;font-size:15px;font-weight:700}.quickinfo-rename{flex-wrap:wrap;gap:8px;margin:0 0 10px;display:flex}.quickinfo-rename input{border:2px solid var(--border);background:var(--bg);min-width:0;color:var(--text);border-radius:8px;flex:200px;padding:8px 10px;font-size:18px}.quickinfo-rename input:focus{border-color:var(--accent);outline:none}.quickinfo-rename button{border:2px solid var(--border-strong);cursor:pointer;background:var(--accent);color:var(--accent-ink);border-radius:8px;padding:8px 16px;font-weight:700}.quickinfo-rename button.secondary{color:var(--text-dim);border-color:var(--border);background:0 0}.poster-picker{background:var(--bg-alt);border:2px solid var(--border);border-radius:14px;width:100%;max-width:620px;max-height:85vh;padding:20px;position:relative;overflow-y:auto;box-shadow:0 24px 60px #000000b3}.poster-picker-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:14px;margin-top:14px;display:grid}.poster-picker-option{cursor:pointer;color:inherit;text-align:left;background:0 0;border:2px solid #0000;border-radius:10px;flex-direction:column;gap:8px;padding:6px;display:flex;position:relative}.poster-picker-option:hover:not(:disabled){border-color:var(--accent)}.poster-picker-option:disabled{opacity:.6;cursor:default}.poster-picker-option img{aspect-ratio:2/3;object-fit:cover;background:#000;border-radius:6px;width:100%}.poster-picker-name{font-size:13px;line-height:1.3}.poster-picker-busy{background:#0009;border-radius:6px;justify-content:center;align-items:center;font-size:13px;display:flex;position:absolute;inset:0}.progress-bar{background:#ffffff26;height:4px}.progress-bar>div{background:var(--accent);height:100%}.genre-filter{flex-wrap:wrap;gap:8px;margin-bottom:20px;display:flex}.chip{background:var(--bg-alt);color:var(--text-dim);border:2px solid var(--border);cursor:pointer;border-radius:8px;padding:6px 14px;font-size:13px}.chip:hover{border-color:var(--accent);color:var(--text)}.chip-active{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);font-weight:700}.breadcrumb{flex-wrap:wrap;align-items:center;gap:2px;margin-bottom:8px;display:flex}.crumb{color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:4px 6px;font-size:14px}.crumb:hover{color:var(--accent)}.crumb-sep{color:var(--border);margin:0 2px}.folder-grid{margin-bottom:28px}.folder-card{cursor:pointer;padding:0;font-family:inherit}.folder-icon{aspect-ratio:2/3;background:linear-gradient(160deg, var(--bg-alt), var(--bg));justify-content:center;align-items:center;font-size:48px;display:flex}.empty-state{color:var(--text-dim);text-align:center;padding:60px 20px;font-size:16px}.server-unreachable-title{color:var(--accent);margin:0 0 8px;font-size:20px;font-weight:700}.server-unreachable .retry-btn{background:var(--accent);color:var(--accent-ink);cursor:pointer;border:none;border-radius:6px;margin-top:16px;padding:10px 22px;font-size:14px;font-weight:700}.server-unreachable .retry-btn:hover{background:var(--accent-glow)}.watch-header{border-bottom:2px solid var(--border);background:var(--bg-alt);flex-wrap:wrap;align-items:center;gap:12px 16px;padding:20px clamp(16px,4vw,48px);display:flex}.back-link{color:var(--text);border:2px solid var(--border);white-space:nowrap;border-radius:8px;padding:8px 14px;font-size:14px;text-decoration:none}.back-link:hover{border-color:var(--accent);color:var(--accent)}.watch-title{flex:1;margin:0;font-size:clamp(18px,3vw,24px)}.track-select{background:var(--bg);color:var(--text);border:2px solid var(--border);text-overflow:ellipsis;border-radius:6px;min-width:0;max-width:16em;padding:6px 10px;font-size:13px}.player-wrap{justify-content:center;padding:24px clamp(16px,4vw,48px);display:flex}video{background:#000;border-radius:8px;width:100%;display:block}.player-column{flex-direction:column;align-items:center;gap:12px;width:100%;display:flex}.player-shell{cursor:default;border-radius:8px;width:100%;max-width:1100px;position:relative;overflow:hidden;box-shadow:0 20px 60px #0009}:-webkit-any(.player-shell:fullscreen,.player-shell:-webkit-full-screen){background:#000;border-radius:0;justify-content:center;align-items:center;width:100%;max-width:100%;height:100%;display:flex}:is(.player-shell:fullscreen,.player-shell:fullscreen){background:#000;border-radius:0;justify-content:center;align-items:center;width:100%;max-width:100%;height:100%;display:flex}:-webkit-any(.player-shell:fullscreen video,.player-shell:-webkit-full-screen video){width:auto;max-width:100%;height:100%}:is(.player-shell:fullscreen video,.player-shell:fullscreen video){width:auto;max-width:100%;height:100%}.player-column-fill{z-index:50;background:#000;justify-content:center;gap:0;padding:0;position:fixed;inset:0}.player-column-fill .player-shell{width:100%;max-width:100%;height:100%;box-shadow:none;border-radius:0;justify-content:center;align-items:center;display:flex}.player-column-fill .player-shell video{width:100%;max-width:100%;height:100%}.player-column-fill .stall-banner{z-index:5;position:absolute;bottom:90px;left:50%;transform:translate(-50%)}.player-topbar{opacity:1;z-index:1;background:linear-gradient(#000000d9,#0000);flex-wrap:wrap;align-items:center;gap:12px 16px;padding:16px 14px 36px;transition:opacity .25s;display:flex;position:absolute;top:0;left:0;right:0}.player-topbar-hidden{opacity:0;pointer-events:none}.topbar-actions{flex-wrap:wrap;align-items:center;gap:10px;margin-left:auto;display:flex}.video-controls{opacity:1;background:linear-gradient(#0000,#000000d9);padding:28px 14px 10px;transition:opacity .25s;position:absolute;bottom:0;left:0;right:0}.video-controls-hidden{opacity:0;pointer-events:none}.seek-bar{cursor:pointer;padding:10px 0;position:relative}.seek-track{background:#ffffff40;border-radius:8px;height:4px;position:relative}.seek-buffered{background:#ffffff59;border-radius:8px;height:100%;position:absolute;top:0;left:0}.seek-fill{background:var(--accent);border-radius:8px;height:100%;position:absolute;top:0;left:0}.seek-handle{background:var(--accent);border-radius:50%;width:13px;height:13px;position:absolute;top:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 3px #ffc94a4d}.scrub-preview{pointer-events:none;flex-direction:column;align-items:center;gap:4px;margin-bottom:10px;display:flex;position:absolute;bottom:100%;transform:translate(-50%)}.scrub-thumb{border:2px solid var(--text);background-color:var(--bg);background-repeat:no-repeat;border-radius:6px;box-shadow:0 8px 20px #0009}.scrub-time{color:var(--text);background:#000000d9;border-radius:4px;padding:2px 8px;font-size:12px}.controls-row{align-items:center;gap:10px;margin-top:4px;display:flex}.control-btn{color:var(--text);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;width:36px;height:36px;font-size:18px;display:flex}.control-btn:hover{color:var(--accent-glow)}.control-btn-active{color:var(--accent)}.subtitle-controls{align-items:center;gap:6px;display:flex;position:relative}.subtitle-settings-panel{background:var(--bg-alt);border:2px solid var(--border);z-index:5;border-radius:8px;flex-direction:column;gap:12px;width:220px;padding:14px;display:flex;position:absolute;bottom:calc(100% + 10px);right:0;box-shadow:0 14px 32px -12px #000000b3}.subtitle-settings-title{text-transform:uppercase;letter-spacing:1px;color:var(--text-dim);margin:0;font-size:12px}.subtitle-settings-panel label{color:var(--text);justify-content:space-between;align-items:center;gap:10px;font-size:13px;display:flex}.subtitle-settings-panel select{background:var(--bg);color:var(--text);border:2px solid var(--border);border-radius:6px;padding:4px 8px;font-size:13px}.subtitle-settings-panel input[type=color]{border:2px solid var(--border);background:var(--bg);cursor:pointer;border-radius:6px;width:36px;height:28px;padding:0}.subtitle-search-panel{width:260px}.tracks-panel{width:min(460px,100vw - 32px);max-height:70vh;overflow-y:auto}.tracks-close{color:var(--text-dim,var(--text));cursor:pointer;background:0 0;border:none;border-radius:6px;padding:4px 8px;font-size:16px;position:absolute;top:8px;right:8px}.tracks-columns{flex-wrap:wrap;gap:18px;display:flex}.tracks-column{flex-direction:column;flex:180px;gap:8px;min-width:0;display:flex}.tracks-list{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.tracks-option{text-align:left;width:100%;color:var(--text);cursor:pointer;background:0 0;border:2px solid #0000;border-radius:6px;align-items:baseline;gap:8px;padding:6px 8px 6px 26px;font-size:14px;display:flex;position:relative}.tracks-option:hover,.tracks-option:focus-visible,.tracks-close:hover,.tracks-close:focus-visible,.tracks-back:hover,.tracks-back:focus-visible{background:var(--bg);border-color:var(--accent);outline:none}.tracks-option-active{color:var(--accent-glow);font-weight:600}.tracks-option-active:before{content:"✓";position:absolute;left:8px}.tracks-option-source{color:var(--text-dim,var(--text));opacity:.75;font-size:11px;font-weight:400}.tracks-actions{border-top:1px solid var(--border);flex-wrap:wrap;gap:8px;padding-top:12px;display:flex}.tracks-actions button.secondary{background:var(--bg);color:var(--text);border:2px solid var(--border);cursor:pointer;border-radius:6px;padding:6px 10px;font-size:13px}.tracks-subview-header{align-items:center;gap:8px;display:flex}.tracks-back{color:var(--text);cursor:pointer;background:0 0;border:2px solid #0000;border-radius:6px;padding:2px 8px;font-size:16px}.tv-mode .tracks-option{padding:10px 12px 10px 32px;font-size:18px}.tv-mode .tracks-option-active:before{left:10px}.cast-controls{align-items:center;display:flex;position:relative}.cast-panel{width:260px}.cast-banner{background:var(--bg-alt);border:2px solid var(--accent);color:var(--text);z-index:5;border-radius:8px;align-items:center;gap:12px;padding:8px 14px;font-size:13px;display:flex;position:absolute;bottom:calc(100% + 10px);left:4px}.cast-banner button.secondary{color:var(--text-dim);border:2px solid var(--border);cursor:pointer;background:0 0;border-radius:6px;padding:4px 10px;font-size:12px}.cast-banner button.secondary:hover{color:var(--text);border-color:var(--accent)}.subtitle-search-results{flex-direction:column;gap:8px;max-height:220px;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.subtitle-search-results li{color:var(--text);justify-content:space-between;align-items:center;gap:10px;font-size:13px;display:flex}.subtitle-search-results li span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.subtitle-search-panel button.secondary{background:var(--bg);color:var(--text);border:2px solid var(--border);cursor:pointer;white-space:nowrap;border-radius:6px;padding:6px 10px;font-size:12px}.subtitle-search-panel button.secondary:hover:not(:disabled){border-color:var(--accent)}.subtitle-search-panel button.secondary:disabled{opacity:.6;cursor:default}.subtitle-search-hint{color:var(--text-dim);font-size:12px}.subtitle-search-hint-error{color:var(--danger)}.time-display{color:var(--text-dim);white-space:nowrap;font-variant-numeric:tabular-nums;font-size:13px}.volume-control{align-items:center;gap:4px;display:flex}.volume-slider{width:80px;accent-color:var(--accent)}.controls-spacer{flex:1}.stall-banner{background:var(--bg-alt);border:2px solid var(--danger);border-radius:8px;align-items:center;gap:12px;padding:10px 16px;font-size:14px;display:flex}.stall-banner button{background:var(--danger);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:6px 14px;font-size:13px;font-weight:700}.stall-banner button:hover{background:var(--accent-glow)}.stall-banner button.secondary{color:var(--text-dim);border:2px solid var(--border);background:0 0}.stall-banner button.secondary:hover{color:var(--text);border-color:var(--accent);background:0 0}.episode-nav{gap:8px;display:flex}.episode-nav button{color:var(--text);border:2px solid var(--border);cursor:pointer;background:0 0;border-radius:8px;padding:6px 14px;font-size:13px}.episode-nav button:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.episode-nav button:disabled{opacity:.35;cursor:default}.prep-box{text-align:center;max-width:360px;color:var(--text-dim);flex-direction:column;align-items:center;gap:8px;margin:60px auto;display:flex}.spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:40px;height:40px;margin-bottom:8px;animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.prep-bar{background:var(--bg-alt);border:2px solid var(--border);border-radius:8px;width:100%;height:8px;margin-top:4px;overflow:hidden}.prep-bar>div{background:var(--accent);height:100%;transition:width .3s}.prep-detail{margin:4px 0 0;font-size:13px}.prep-box button{color:var(--text);border:2px solid var(--border);cursor:pointer;background:0 0;border-radius:8px;margin-top:8px;padding:8px 18px;font-size:13px}.prep-box button:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.prep-box button:disabled{opacity:.6;cursor:default}.error-box{text-align:center;max-width:480px;color:var(--text-dim);margin:40px auto}.config-wrap{max-width:560px;margin:0 auto;padding:40px clamp(16px,4vw,48px)}.config-wrap label{text-transform:uppercase;letter-spacing:1.5px;color:var(--text-dim);margin-bottom:8px;font-size:13px;display:block}.config-wrap input[type=text],.config-wrap input[type=password]{border:2px solid var(--border);background:var(--bg-alt);width:100%;color:var(--text);border-radius:8px;margin-bottom:16px;padding:12px 14px;font-size:15px}.config-wrap label.checkbox-row{text-transform:none;letter-spacing:normal;color:var(--text);cursor:pointer;align-items:center;gap:10px;font-size:15px;display:flex}.config-wrap label.checkbox-row input{width:20px;height:20px;accent-color:var(--accent);cursor:pointer}.config-wrap input[type=text]:focus,.config-wrap input[type=password]:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #ffc94a59}.config-wrap button{background:var(--accent);color:var(--accent-ink);border:2px solid var(--border-strong);cursor:pointer;border-radius:8px;padding:12px 22px;font-size:15px;font-weight:700;box-shadow:3px 3px #00000080}.config-wrap button:hover{background:var(--accent-glow)}.config-wrap button:disabled,.config-wrap button:disabled:hover{background:var(--border);color:var(--text-dim);box-shadow:none;cursor:not-allowed;border-color:#0000}.section-title.danger{color:var(--danger)}button.danger{background:var(--danger);color:#fff;border:none}button.danger:disabled{opacity:.5;cursor:not-allowed}.config-message{margin-top:16px;font-size:14px}.config-message.ok{color:#6fcf97}.config-message.error{color:var(--danger)}.hint{color:var(--text-dim);margin:-8px 0 20px;font-size:13px}.path-row{align-items:flex-start;gap:10px;display:flex}.config-page{max-width:680px}.config-page .config-title{color:var(--text);margin:0 0 24px;font-size:26px}.config-card{background:var(--bg-alt);border:2px solid var(--border);border-radius:12px;margin-bottom:24px;padding:20px clamp(16px,3vw,28px) 24px}.config-card h2{text-transform:uppercase;letter-spacing:2.5px;color:var(--accent);margin:0 0 18px;font-size:15px}.config-card h3{color:var(--text);margin:20px 0 6px;font-size:16px}.config-card h2+h3,.config-card .config-divider+h3{margin-top:0}.config-page label{letter-spacing:1px}.config-card input[type=text],.config-card input[type=password]{background:var(--bg);margin-bottom:0}.config-page .hint{margin:8px 0 16px;font-size:14px;line-height:1.5}.config-page .path-row input[type=text],.config-page .path-row input[type=password]{min-width:0}.config-page a{color:var(--accent);text-underline-offset:2px}.config-page a:hover{color:var(--accent-glow)}.config-page .config-message{margin:12px 0 0}.config-page .config-message:not(.ok):not(.error){color:var(--text)}.config-page .status-ok{color:#6fcf97}.config-page .status-off{color:var(--text-dim)}.config-page .checkbox-row{min-height:44px;margin-bottom:0}.config-divider{border-top:2px solid var(--border);margin:24px 0 20px}.storage-list{border:2px solid var(--border);border-radius:8px;margin:0 0 12px;overflow:hidden}.storage-row{background:var(--bg);flex-wrap:wrap;justify-content:space-between;gap:4px 16px;padding:10px 14px;display:flex}.storage-row+.storage-row{border-top:2px solid var(--border)}.storage-row dt{color:var(--text)}.storage-row dd{color:var(--text);font-variant-numeric:tabular-nums;margin:0;font-weight:700}.storage-row dd.disk-low{color:#ff6b75}.storage-files{color:var(--text-dim);font-weight:400}.button-row{flex-wrap:wrap;gap:10px;display:flex}.config-progress{border-radius:4px;height:8px;margin-top:12px;overflow:hidden}.config-card.danger-zone{border-color:#e639468c}.config-card.danger-zone h2,.config-page .config-message.error{color:#ff6b75}.config-page button.danger{color:#fff;border:2px solid var(--border-strong);background:#c62b38}.config-page button.danger:hover:not(:disabled){background:#d93341}.config-page button.danger:disabled{background:var(--border);color:var(--text-dim);box-shadow:none;opacity:1;border-color:#0000}.queue-wrap{max-width:800px}.queue-summary{background:var(--bg-alt);border:2px solid var(--border);color:var(--text-dim);border-radius:8px;flex-wrap:wrap;gap:10px 24px;margin-bottom:20px;padding:14px 18px;font-size:14px;display:flex}.queue-summary strong{color:var(--text)}.queue-list{flex-direction:column;gap:6px;max-height:420px;margin-bottom:24px;display:flex;overflow-y:auto}.queue-row{background:var(--bg-alt);border:2px solid var(--border);border-radius:6px;align-items:center;gap:12px;padding:8px 12px;font-size:13px;display:flex}.queue-row-active{border-color:var(--accent)}.queue-row-failed{border-color:var(--danger);opacity:.75}.queue-row-failed-detail{opacity:1;flex-direction:column;align-items:stretch}.queue-failed-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.queue-failed-header button.secondary{color:var(--text);border:2px solid var(--border);cursor:pointer;background:0 0;border-radius:8px;flex-shrink:0;padding:6px 16px;font-size:13px;font-weight:700}.queue-failed-header button.secondary:hover:not(:disabled){border-color:var(--accent);color:var(--accent-glow)}.queue-failed-header button.secondary:disabled{opacity:.6;cursor:default}.queue-resolve-hint{color:var(--text-dim);margin:8px 0 0;font-size:13px}.queue-failed-main{align-items:center;gap:12px;display:flex}.queue-error-detail{color:var(--text-dim);white-space:pre-wrap;word-break:break-word;margin:6px 0 0;font-family:ui-monospace,monospace;font-size:12px}.queue-retry-btn{color:var(--text);border:2px solid var(--border);cursor:pointer;background:0 0;border-radius:8px;flex-shrink:0;padding:5px 14px;font-size:12px}.queue-retry-btn:hover:not(:disabled){border-color:var(--accent);color:var(--accent-glow)}.queue-retry-btn:disabled{opacity:.6;cursor:default}.queue-position{color:var(--text-dim);text-align:right;flex-shrink:0;min-width:28px}.queue-title{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.queue-meta{color:var(--text-dim);white-space:nowrap;flex-shrink:0}.path-row input[type=text]{flex:1}.config-wrap button.secondary{color:var(--text);border:2px solid var(--border);box-shadow:none;white-space:nowrap;background:0 0}.config-wrap button.secondary:hover{border-color:var(--accent);color:var(--accent);background:0 0}.browser-overlay{z-index:100;background:#0009;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.browser-modal{background:var(--bg-alt);border:2px solid var(--border);border-radius:12px;flex-direction:column;width:100%;max-width:520px;max-height:80vh;padding:24px;display:flex;box-shadow:0 24px 60px #0009}.browser-current{color:var(--text-dim);word-break:break-all;margin:0 0 12px;font-size:13px}.browser-list{border:2px solid var(--border);border-radius:8px;flex:1;min-height:200px;padding:6px;overflow-y:auto}.browser-item{text-align:left;width:100%;color:var(--text);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:10px 12px;font-size:14px;display:block}.browser-item:hover{color:var(--accent-glow);background:#ffc94a26}.browser-actions{justify-content:flex-end;gap:10px;margin-top:16px;display:flex}@media (hover:none),(pointer:coarse){.card-remove,.card-info-btn{opacity:1;touch-action:manipulation}.card-remove{width:36px;height:36px;font-size:16px}.card-info-btn{width:36px;height:36px;font-size:18px}.seek-bar{touch-action:none;padding:14px 0}.control-btn,.row-arrow{touch-action:manipulation}.control-btn{width:44px;height:44px;font-size:20px}}@media (width<=480px){header{padding:14px 16px}.controls-row{gap:6px}.volume-control{display:none}main{padding:16px 16px 40px}.grid{grid-template-columns:repeat(auto-fill,minmax(105px,1fr));gap:12px}.row-track>.card{flex-basis:105px}.row-track{gap:12px}.card-remove{opacity:1;top:34px}.chip,.crumb,.back-link,.episode-nav button,.track-select,.config-wrap button,.config-wrap button.secondary{padding:10px 16px;font-size:14px}.control-btn{width:44px;height:44px;font-size:20px}.volume-slider{display:none}.episode-nav{width:100%}.episode-nav button{flex:1}.watch-title{font-size:16px}.path-row{flex-direction:column}.browser-modal{max-height:85vh;padding:16px}}@media (width>=600px) and (width<=1024px){.grid{grid-template-columns:repeat(auto-fill,minmax(175px,1fr))}.row-track>.card{flex-basis:175px}}@media (width>=1600px){body{font-size:18px}.logo{font-size:38px}.section-title{letter-spacing:4px;font-size:17px}.grid{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:28px}.row-track>.card{flex-basis:210px}.row-track{gap:28px}.card-title{font-size:17px}video{max-width:min(1700px,88vw)}.chip,.crumb,.back-link,.episode-nav button,.track-select{padding:10px 20px;font-size:16px}.watch-title{font-size:28px}}.profiles-page{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:40px;min-height:100vh;padding:24px clamp(16px,4vw,48px) 60px;display:flex}.profiles-title{letter-spacing:1px;color:var(--accent);text-shadow:2px 2px 0 var(--bg);font-family:Bungee,Georgia,serif;font-size:clamp(20px,4.5vw,34px);font-weight:400}.profiles-grid{flex-wrap:wrap;justify-content:center;gap:28px;max-width:900px;display:flex}.profile-card-wrap{flex-direction:column;align-items:center;gap:10px;width:120px;display:flex}.profile-card{color:#fff;cursor:pointer;border:3px solid #0000;border-radius:12px;width:100px;height:100px;font-size:36px;font-weight:700;transition:border-color .15s,transform .15s}.profile-card:hover{border-color:var(--text);transform:scale(1.04)}.profile-add{background:var(--bg-alt);border:3px dashed var(--border);color:var(--text-dim)}.profile-name{color:var(--text-dim);text-overflow:ellipsis;white-space:nowrap;max-width:100%;margin:0;font-size:14px;overflow:hidden}.profile-name-input{border:2px solid var(--border);background:var(--bg-alt);width:100px;height:100px;color:var(--text);text-align:center;border-radius:12px;font-size:16px}.profile-colors{grid-template-columns:repeat(4,20px);gap:6px;margin:6px 0;display:grid}.profile-color{cursor:pointer;border:2px solid #0000;border-radius:50%;width:20px;height:20px;padding:0}.profile-color[aria-checked=true]{box-shadow:0 0 0 2px var(--accent);border-color:#fff}.profile-create-actions{flex-direction:column;gap:4px;display:flex}.profile-create-actions button{border:2px solid var(--border);background:var(--bg-alt);color:var(--text);cursor:pointer;border-radius:6px;padding:4px 8px;font-size:12px}.profile-delete{color:var(--accent);border:1px solid var(--accent);cursor:pointer;background:0 0;border-radius:6px;padding:2px 8px;font-size:12px}.profile-option{color:var(--text-dim);border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:6px;margin-bottom:6px;padding:2px 8px;font-size:12px}.profile-option[aria-pressed=true]{color:var(--accent);border-color:var(--accent)}.profiles-manage-toggle{border:2px solid var(--border);color:var(--text-dim);cursor:pointer;background:0 0;border-radius:8px;padding:10px 24px;font-size:14px}.profiles-manage-toggle:hover{color:var(--text);border-color:var(--accent)}.tv-mode button:focus-visible,.tv-mode a:focus-visible,.tv-mode input:focus-visible,.tv-mode select:focus-visible,.tv-mode [tabindex]:focus-visible{outline:4px solid var(--accent);outline-offset:3px}.tv-mode .card:focus,.tv-mode .card:focus-visible{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent), 0 14px 30px #0009;z-index:3;outline:none;transform:scale(1.08)}.tv-mode .player-shell:focus,.tv-mode .player-shell:focus-visible{outline:none}.tv-mode .card:not(:focus) .card-remove,.tv-mode .card:not(:focus) .card-info-btn{opacity:0}.tv-mode .row-arrow,.tv-mode .volume-slider,.tv-mode .skip-link{display:none}.link-frame{aspect-ratio:16/9;background:#000;border:0;border-radius:8px;width:100%}.link-open{color:var(--accent);border:2px solid var(--accent);border-radius:8px;padding:10px 18px;text-decoration:none;display:inline-block}.link-stage{background:#000}:-webkit-any(.link-stage:fullscreen .link-frame,.link-stage:-webkit-full-screen .link-frame){aspect-ratio:auto;border-radius:0;width:100%;height:100%}:is(.link-stage:fullscreen .link-frame,.link-stage:fullscreen .link-frame){aspect-ratio:auto;border-radius:0;width:100%;height:100%}.link-controls{background:#000;padding:14px 20px;position:static}:-webkit-any(.link-stage:fullscreen .link-controls,.link-stage:-webkit-full-screen .link-controls){background:linear-gradient(#0000,#000000d9);padding:36px 20px 16px;position:absolute}:is(.link-stage:fullscreen .link-controls,.link-stage:fullscreen .link-controls){background:linear-gradient(#0000,#000000d9);padding:36px 20px 16px;position:absolute}.link-controls .control-btn{border:3px solid #0000;border-radius:12px;gap:8px;width:auto;min-width:72px;height:72px;padding:0 18px;font-size:38px}.link-btn-label{font-size:24px;font-weight:700}.link-controls .control-btn:focus,.link-controls .control-btn:focus-visible{outline-offset:2px;color:var(--accent-glow);background:#ffffff2e;outline:4px solid #fff}.links-list{flex-direction:column;gap:8px;margin:16px 0 0;padding:0;list-style:none;display:flex}.links-list li{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.links-list .links-title{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:10em;overflow:hidden}.links-list .links-sandbox{white-space:nowrap;align-items:center;gap:4px;font-size:13px;display:flex}.quickinfo-link-mode,.quickinfo-link-sandbox{align-items:center;gap:8px;font-size:.9rem;display:flex}.tv-layout{flex-direction:column;align-items:center;gap:12px;padding:16px clamp(16px,4vw,48px) 24px;display:flex}.tv-main,.tv-side{flex-direction:column;align-items:center;gap:12px;width:100%;max-width:1100px;display:flex}.tv-stage{aspect-ratio:16/9;background:#000;border-radius:8px;width:100%;position:relative;overflow:hidden;box-shadow:0 20px 60px #0009}.tv-stage video{object-fit:contain;border-radius:0;width:100%;height:100%}.tv-stage:fullscreen{aspect-ratio:auto;border-radius:0}.tv-overlay{text-align:center;color:var(--text);pointer-events:none;background:#000000bf;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:24px;display:flex;position:absolute;inset:0}.tv-loading{color:var(--text-dim);background:#00000059;padding-top:120px}.tv-stage-empty{background:var(--bg-alt);box-shadow:none;border:2px dashed var(--border);justify-content:center;align-items:center;display:flex}.tv-stage-empty .hint{margin:0}.tv-error{pointer-events:auto}.tv-error p{max-width:520px;color:var(--text-dim);margin:0}.tv-error .tv-error-title{color:var(--text);font-size:1.1rem;font-weight:700}.tv-error-actions{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:8px;display:flex}.tv-osd{z-index:3;border:2px solid var(--accent);max-width:calc(100% - 32px);color:var(--text);pointer-events:none;background:#060c1cd9;border-radius:8px;padding:8px 16px;font-size:clamp(16px,2vw,24px);font-weight:700;animation:.15s ease-out tv-osd-in;position:absolute;top:16px;left:16px}@keyframes tv-osd-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}.tv-live-badge{color:#fff;vertical-align:middle;text-transform:uppercase;letter-spacing:.05em;background:#c62828;border-radius:4px;margin-left:12px;padding:2px 8px;font-size:12px}.tv-step{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 12px;width:100%;display:flex}.tv-toolbar-gap{display:none}.tv-btn{border:2px solid var(--border);background:var(--bg-alt);color:var(--text);font:inherit;cursor:pointer;white-space:nowrap;border-radius:8px;align-items:center;gap:6px;padding:8px 14px;font-size:14px;display:inline-flex}.tv-btn:hover,.tv-btn[aria-pressed=true]{border-color:var(--accent);color:var(--accent)}.tv-btn-primary{background:var(--accent);color:var(--accent-ink);border-color:var(--accent);font-weight:700}.tv-btn-primary:hover{background:var(--accent-glow);color:var(--accent-ink)}.tv-desktop-only,.tv-now{display:none}.tv-side-head{align-items:center;gap:8px;width:100%;display:flex}.tv-search{border:2px solid var(--border);background:var(--bg);width:100%;min-width:0;color:var(--text);font:inherit;border-radius:8px;flex:1;padding:8px 12px;font-size:14px}.tv-search:focus{border-color:var(--accent);outline:none}.tv-filter{border:2px solid var(--border);background:var(--bg-alt);color:var(--text);font:inherit;cursor:pointer;white-space:nowrap;border-radius:8px;flex:none;padding:8px 12px;font-size:13px}.tv-filter[aria-pressed=true]{border-color:var(--accent);color:var(--accent)}.tv-list{width:100%}.tv-group+.tv-group{margin-top:16px}.tv-group-title{text-transform:uppercase;letter-spacing:.06em;color:var(--text-dim);margin:0 0 8px;font-size:13px}.tv-empty{margin:12px 0}.tv-grid{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.tv-item{position:relative}.tv-channel{text-align:center;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:8px;width:100%;min-height:110px;padding:10px;display:flex}.tv-channel img{object-fit:contain;max-width:100%;height:48px}.tv-noLogo{font-size:2rem}.tv-item.current .tv-channel{outline:3px solid #fff}.tv-num{background:var(--accent);min-width:18px;color:var(--accent-ink);text-align:center;border-radius:4px;padding:0 4px;font-size:11px;font-weight:700;line-height:18px;position:absolute;top:6px;left:8px}.tv-fav{cursor:pointer;color:inherit;background:0 0;border:0;font-size:1.3rem;position:absolute;top:4px;right:4px}.tv-keys-hint{color:var(--text-dim);margin:0;font-size:12px}.tv-keys-hint kbd{border:1px solid var(--border);border-radius:3px;padding:0 4px;font-family:monospace}.tv-cinema .watch-header,.tv-cinema .tv-side{display:none}@media (width>=1024px){html:not(.tv-mode) .tv-page{--tv-chrome:150px;flex-direction:column;height:100dvh;display:flex;overflow:hidden}html:not(.tv-mode) .tv-page .watch-header{flex:none;padding-top:10px;padding-bottom:10px}html:not(.tv-mode) .tv-layout{flex:1;grid-template-columns:minmax(0,1fr) clamp(300px,24vw,380px);align-items:stretch;gap:20px;min-height:0;padding:16px 24px;display:grid}html:not(.tv-mode) .tv-main{justify-content:flex-start;max-width:none;min-height:0}html:not(.tv-mode) .tv-stage,html:not(.tv-mode) .tv-toolbar{width:min(100%, calc((100dvh - var(--tv-chrome)) * 16 / 9));flex:none}html:not(.tv-mode) .tv-toolbar{justify-content:flex-start}html:not(.tv-mode) .tv-toolbar-gap{flex:1;display:block}html:not(.tv-mode) .tv-desktop-only{display:inline-flex}html:not(.tv-mode) p.tv-desktop-only{display:block}html:not(.tv-mode) .tv-side{border:2px solid var(--border);background:var(--bg-alt);border-radius:12px;align-items:stretch;gap:10px;max-width:none;min-height:0;padding:12px}html:not(.tv-mode) .tv-side-head{flex-wrap:wrap}html:not(.tv-mode) .tv-search{flex-basis:100%;margin:0}html:not(.tv-mode) .tv-list{scrollbar-color:var(--border) transparent;flex:1;min-height:0;margin:0 -6px;padding:0 6px;overflow-y:auto}html:not(.tv-mode) .tv-group+.tv-group{margin-top:10px}html:not(.tv-mode) .tv-group-title{z-index:1;background:var(--bg-alt);margin:0;padding:4px 2px 6px;font-size:11px;position:sticky;top:0}html:not(.tv-mode) .tv-grid{flex-direction:column;gap:2px;display:flex}html:not(.tv-mode) .tv-channel{text-align:left;height:40px;min-height:0;color:var(--text);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;flex-direction:row;justify-content:flex-start;gap:10px;padding:4px 64px 4px 8px;font-size:14px}html:not(.tv-mode) .tv-channel:hover{background:var(--bg)}html:not(.tv-mode) .tv-channel img{flex:none;width:44px;height:26px}html:not(.tv-mode) .tv-noLogo{text-align:center;flex:none;width:44px;font-size:1.1rem}html:not(.tv-mode) .tv-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}html:not(.tv-mode) .tv-item.current .tv-channel{background:var(--accent);color:var(--accent-ink);outline:none;font-weight:700}html:not(.tv-mode) .tv-item.current .tv-fav{color:var(--accent-ink)}html:not(.tv-mode) .tv-num{top:50%;left:auto;right:38px;transform:translateY(-50%)}html:not(.tv-mode) .tv-item.current .tv-num{background:var(--accent-ink);color:var(--accent)}html:not(.tv-mode) .tv-fav{padding:4px;font-size:1.1rem;top:50%;right:6px;transform:translateY(-50%)}html:not(.tv-mode) .tv-cinema{--tv-chrome:90px}html:not(.tv-mode) .tv-cinema .tv-layout{grid-template-columns:minmax(0,1fr)}}.tv-panel-only,.tv-panel-backdrop{display:none}@media (width<=1023px){html:not(.tv-mode) .tv-panel-only{display:inline-flex}html:not(.tv-mode) .tv-panel-backdrop{z-index:6;background:#00000080;border:0;padding:0;display:block;position:fixed;inset:0}html:not(.tv-mode) .tv-page .watch-header{gap:8px 10px;padding:8px 12px}html:not(.tv-mode) .tv-page .watch-header .back-link{box-sizing:border-box;align-items:center;min-height:44px;display:inline-flex}html:not(.tv-mode) .tv-page .profile-button,html:not(.tv-mode) .tv-page .hidden-menu-btn{min-width:44px;min-height:44px}html:not(.tv-mode) .tv-layout{padding:0 0 calc(24px + env(safe-area-inset-bottom));align-items:stretch;gap:0}html:not(.tv-mode) .tv-main{max-width:none;padding-top:env(safe-area-inset-top);background:var(--bg);gap:0}html:not(.tv-mode) .tv-stage{box-shadow:none;touch-action:pan-y pinch-zoom;border-radius:0}html:not(.tv-mode) .tv-loading{padding-top:24px}html:not(.tv-mode) .tv-error{justify-content:safe center;gap:4px;padding:8px 12px;font-size:13px;overflow-y:auto}html:not(.tv-mode) .tv-error .tv-error-title{font-size:1rem}html:not(.tv-mode) .tv-osd{max-width:calc(100% - 16px);padding:6px 12px;font-size:16px;top:8px;left:8px}html:not(.tv-mode) .tv-toolbar{flex-wrap:wrap;gap:10px;padding:14px 14px 6px}html:not(.tv-mode) .tv-toolbar-gap{flex:0 0 100%;order:4;height:0;display:block}html:not(.tv-mode) .tv-btn{box-sizing:border-box;border-radius:14px;justify-content:center;min-width:44px;min-height:48px}html:not(.tv-mode) .tv-toolbar>.tv-btn[aria-label=Cadena\ anterior]{background:var(--accent);border-color:var(--accent);width:64px;min-height:64px;color:var(--accent-ink);flex:none;order:1;font-size:24px}html:not(.tv-mode) .tv-toolbar>.tv-btn[aria-label=Cadena\ siguiente]{background:var(--accent);border-color:var(--accent);width:64px;min-height:64px;color:var(--accent-ink);flex:none;order:3;font-size:24px}html:not(.tv-mode) .tv-toolbar>.tv-btn[aria-label^=Cadena] .tv-btn-text{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}html:not(.tv-mode) .tv-now{text-align:center;flex-direction:column;flex:1;order:2;justify-content:center;align-items:center;gap:4px;min-width:0;display:flex}html:not(.tv-mode) .tv-now img{object-fit:contain;max-width:100%;height:28px}html:not(.tv-mode) .tv-now-name{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:20px;font-weight:700;overflow:hidden}html:not(.tv-mode) .tv-toolbar>.tv-btn:not([aria-label^=Cadena]){flex:1 1 0;order:5;gap:8px;padding:8px 10px;font-size:15px}html:not(.tv-mode) .tv-toolbar>.tv-btn:not([aria-label^=Cadena]) .tv-btn-text{font-size:14px}html:not(.tv-mode) .tv-toolbar>.tv-desktop-only{display:none}html:not(.tv-mode) .tv-toolbar>.tv-btn:not([aria-label^=Cadena]) .tv-btn-text{clip:auto;width:auto;height:auto;position:static}html:not(.tv-mode) .tv-side{z-index:7;max-width:none;height:78dvh;padding:12px 12px calc(8px + env(safe-area-inset-bottom));box-sizing:border-box;background:var(--bg-alt);visibility:hidden;border-radius:18px 18px 0 0;flex-direction:column;align-items:stretch;gap:0;transition:transform .2s,visibility .2s;display:flex;position:fixed;bottom:0;left:0;right:0;transform:translateY(105%);box-shadow:0 -8px 24px #00000080}html:not(.tv-mode) .tv-panel-open .tv-side{visibility:visible;transform:none}html:not(.tv-mode) .tv-side-head{background:0 0;flex:none;padding:0 0 8px}html:not(.tv-mode) .tv-list{overscroll-behavior:contain;flex:1;min-height:0;overflow-y:auto}html:not(.tv-mode) .tv-search{box-sizing:border-box;min-height:44px;font-size:16px}html:not(.tv-mode) .tv-filter{min-height:44px}html:not(.tv-mode) .tv-group+.tv-group{margin-top:12px}html:not(.tv-mode) .tv-group-title{margin:8px 2px 6px;font-size:12px}html:not(.tv-mode) .tv-grid{flex-direction:column;gap:4px;display:flex}html:not(.tv-mode) .tv-channel{text-align:left;background:var(--bg-alt);min-height:56px;color:var(--text);font:inherit;cursor:pointer;border:2px solid #0000;border-radius:8px;flex-direction:row;justify-content:flex-start;gap:12px;padding:6px 96px 6px 10px;font-size:15px}html:not(.tv-mode) .tv-channel img{flex:none;width:56px;height:32px}html:not(.tv-mode) .tv-noLogo{text-align:center;flex:none;width:56px;font-size:1.4rem}html:not(.tv-mode) .tv-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}html:not(.tv-mode) .tv-item.current .tv-channel{border-color:var(--accent);background:var(--accent);color:var(--accent-ink);outline:none;font-weight:700}html:not(.tv-mode) .tv-item.current .tv-fav{color:var(--accent-ink)}html:not(.tv-mode) .tv-num{top:50%;left:auto;right:56px;transform:translateY(-50%)}html:not(.tv-mode) .tv-item.current .tv-num{background:var(--accent-ink);color:var(--accent)}html:not(.tv-mode) .tv-fav{justify-content:center;align-items:center;width:48px;height:48px;padding:0;font-size:1.4rem;display:flex;top:50%;right:4px;transform:translateY(-50%)}}@media (width<=1023px) and (height<=560px) and (orientation:landscape){html:not(.tv-mode) .tv-page{height:100dvh;overflow:hidden}html:not(.tv-mode) .tv-page .watch-header{display:none}html:not(.tv-mode) .tv-main{box-shadow:none;background:#000;padding:0;position:fixed;inset:0}html:not(.tv-mode) .tv-stage{aspect-ratio:auto;width:100%;height:100%;padding:0 env(safe-area-inset-right) 0 env(safe-area-inset-left);box-sizing:border-box}html:not(.tv-mode) .tv-osd{left:calc(8px + env(safe-area-inset-left));max-width:calc(100% - 340px)}html:not(.tv-mode) .tv-toolbar{z-index:4;top:calc(8px + env(safe-area-inset-top));right:calc(8px + env(safe-area-inset-right));width:auto;padding:0;position:absolute}html:not(.tv-mode) .tv-toolbar-gap,html:not(.tv-mode) .tv-now{display:none}html:not(.tv-mode) .tv-toolbar>.tv-btn[aria-label^=Cadena]{background:#0000008c;width:auto;min-height:44px;font-size:18px}html:not(.tv-mode) .tv-toolbar>.tv-btn:not([aria-label^=Cadena]){flex:none}html:not(.tv-mode) .tv-toolbar>.tv-btn:not([aria-label^=Cadena]) .tv-btn-text{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}html:not(.tv-mode) .tv-toolbar .tv-btn{color:#fff;background:#0000008c;border-color:#ffffff40}html:not(.tv-mode) .tv-panel-only{display:inline-flex}html:not(.tv-mode) .tv-panel-backdrop{z-index:6;background:#00000080;border:0;padding:0;display:block;position:fixed;inset:0}html:not(.tv-mode) .tv-side{z-index:7;width:min(380px,85vw);min-height:0;padding:calc(8px + env(safe-area-inset-top)) calc(12px + env(safe-area-inset-right)) calc(8px + env(safe-area-inset-bottom)) 12px;background:var(--bg-alt);visibility:hidden;flex-direction:column;transition:transform .2s,visibility .2s;display:flex;position:fixed;top:0;bottom:0;right:0;transform:translate(105%);box-shadow:-8px 0 24px #00000080}html:not(.tv-mode) .tv-panel-open .tv-side{visibility:visible;transform:none}html:not(.tv-mode) .tv-side-head{background:0 0;flex:none;position:static}html:not(.tv-mode) .tv-list{overscroll-behavior:contain;flex:1;min-height:0;overflow-y:auto}html:not(.tv-mode) .tv-channel{background:var(--bg)}}.tv-chnum,.tv-fav-mark{display:none}html.tv-mode .tv-page{--tv-safe-x:5vw;--tv-safe-y:5vh;background:#000;position:fixed;inset:0;overflow:hidden}html.tv-mode .tv-page .watch-header,html.tv-mode .tv-toolbar,html.tv-mode .tv-panel-only,html.tv-mode .tv-panel-backdrop,html.tv-mode .tv-fav,html.tv-mode .tv-num,html.tv-mode .tv-keys-hint{display:none}html.tv-mode .tv-layout{padding:0;display:block;position:absolute;inset:0}html.tv-mode .tv-main{gap:0;max-width:none;position:absolute;inset:0}html.tv-mode .tv-stage{aspect-ratio:auto;width:100%;height:100%;box-shadow:none;border-radius:0}html.tv-mode .tv-stage-empty{border:0}html.tv-mode .tv-overlay{padding:var(--tv-safe-y) var(--tv-safe-x);font-size:28px}html.tv-mode .tv-loading{padding-top:30vh}html.tv-mode .tv-error p{max-width:900px}html.tv-mode .tv-error .tv-error-title{font-size:40px}html.tv-mode .tv-error-actions{gap:24px;margin-top:24px}html.tv-mode .tv-error .tv-btn{padding:14px 32px;font-size:28px}html.tv-mode .tv-osd{top:var(--tv-safe-y);left:var(--tv-safe-x);max-width:calc(100% - 2 * var(--tv-safe-x));border-width:3px;border-radius:12px;align-items:center;gap:24px;padding:16px 32px;font-size:36px;display:flex}html.tv-mode .tv-osd-num{min-width:1.6em;color:var(--accent);font-variant-numeric:tabular-nums;text-align:center;font-size:52px}html.tv-mode .tv-osd-logo{object-fit:contain;flex:none;width:140px;height:72px}html.tv-mode .tv-osd-text{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}html.tv-mode .tv-panel-open .tv-osd{left:auto;right:var(--tv-safe-x);max-width:calc(100% - 760px - 2 * var(--tv-safe-x))}html.tv-mode .tv-side{display:none}html.tv-mode .tv-panel-open .tv-side{z-index:7;width:calc(var(--tv-safe-x) + 680px);box-sizing:border-box;max-width:none;padding:var(--tv-safe-y) 32px var(--tv-safe-y) var(--tv-safe-x);background:linear-gradient(90deg,#060c1cf7 85%,#060c1cd9);flex-direction:column;align-items:stretch;gap:16px;display:flex;position:absolute;top:0;bottom:0;left:0;box-shadow:16px 0 48px #0009}html.tv-mode .tv-side-head{flex-wrap:wrap;flex:none;gap:16px}html.tv-mode .tv-panel-title{flex:100%;margin:0;font-size:40px}html.tv-mode .tv-search,html.tv-mode .tv-filter{padding:10px 18px;font-size:24px}html.tv-mode .tv-list{scrollbar-width:none;box-sizing:border-box;flex:1;min-height:0;margin:0 -12px;padding:12px;overflow-y:auto}html.tv-mode .tv-list::-webkit-scrollbar{display:none}html.tv-mode .tv-empty{font-size:26px}html.tv-mode .tv-grid{flex-direction:column;gap:8px;display:flex}html.tv-mode .tv-channel{height:80px;min-height:0;color:var(--text);font:inherit;text-align:left;background:0 0;border:0;border-radius:10px;flex-direction:row;justify-content:flex-start;gap:20px;padding:0 20px;font-size:30px}html.tv-mode .tv-channel img{flex:none;width:100px;height:56px}html.tv-mode .tv-noLogo{text-align:center;flex:none;width:100px;font-size:40px}html.tv-mode .tv-chnum{width:2.2em;color:var(--text-dim);font-variant-numeric:tabular-nums;text-align:right;flex:none;display:block}html.tv-mode .tv-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}html.tv-mode .tv-fav-mark{color:#ffd400;flex:none;font-size:32px;display:block}html.tv-mode .tv-item.current .tv-channel{box-shadow:inset 8px 0 0 var(--accent);background:#ffffff1f;outline:none}html.tv-mode .tv-item .tv-channel:focus,html.tv-mode .tv-item .tv-channel:focus-visible{outline:4px solid var(--accent);outline-offset:3px;background:var(--accent);color:var(--accent-ink);font-weight:700}html.tv-mode .tv-item .tv-channel:focus .tv-chnum,html.tv-mode .tv-item .tv-channel:focus .tv-fav-mark{color:var(--accent-ink)}html.tv-mode .tv-remote-hint{color:var(--text-dim);flex:none;margin:0;font-size:24px;line-height:1.4}html.tv-mode .tv-remote-hint b{color:var(--text)}.tv-key-yellow{vertical-align:-.05em;background:#ffd400;border-radius:50%;width:.8em;height:.8em;display:inline-block}.tv-manage{max-height:300px;padding-left:18px;overflow:auto}.tv-card-logo{aspect-ratio:2/3;background:#1c1c24;border-radius:6px;justify-content:center;align-items:center;padding:16px;display:flex}.tv-card-logo img{object-fit:contain;max-width:100%;max-height:100%}.tv-live{background:#c62828}
