:root{color-scheme:dark;--bg:#0b151c;--surface:#121f29;--surface-raised:#192a35;--surface-hover:#203641;--ink:#eff9f8;--muted:#93aab4;--dim:#637e8a;--line:#253a46;--accent:#51dec9;--accent-2:#39bdcf;--accent-ink:#062e33;--danger:#ff9a96;--radius:14px;--shadow:0 18px 60px #0005;font-family:Inter,"PingFang SC","Microsoft YaHei",system-ui,sans-serif;font-synthesis:none}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:20px}body{margin:0;background:var(--bg);color:var(--ink);font-size:15px;line-height:1.5;-webkit-tap-highlight-color:transparent}body.overlay-open{overflow:hidden}button,input,select{font:inherit}button,a,select{-webkit-touch-callout:none}button{cursor:pointer}button:disabled{cursor:default;opacity:.4}a{color:inherit;text-decoration:none}svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}img{display:block;max-width:100%}button{color:inherit}button,input,select,a{outline-offset:4px}button:focus,a:focus,select:focus,input:focus{outline:3px solid var(--accent)}button:focus:not(:focus-visible),a:focus:not(:focus-visible),select:focus:not(:focus-visible){outline:none}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible{outline:3px solid var(--accent)}button.is-remote-focus,a.is-remote-focus,select.is-remote-focus{outline:3px solid var(--accent)!important;outline-offset:4px}.skip-link{position:fixed;left:20px;top:-80px;z-index:100;background:var(--accent);color:var(--accent-ink);padding:12px 20px;border-radius:9px}.skip-link:focus{top:12px}.app-shell{max-width:1512px;margin:0 auto;padding:0 48px}.site-header{padding-top:30px;border-bottom:1px solid var(--line)}.header-main{display:flex;align-items:center;gap:30px;min-height:58px}.brand{display:flex;align-items:center;gap:12px;flex-shrink:0;border-radius:10px}.brand img{width:54px;height:54px;object-fit:contain;border-radius:15px}.brand-text{display:flex;flex-direction:column;gap:1px;white-space:nowrap}.brand strong{font-size:25px;font-weight:800;letter-spacing:.5px;line-height:1.2}.brand strong span{font-size:23px;font-weight:600;color:var(--accent)}.brand small{color:var(--muted);font-size:10px;letter-spacing:2px}.search-form{height:48px;display:flex;align-items:center;flex:1;max-width:640px;min-width:150px;border:1px solid #304853;border-radius:12px;overflow:hidden;background:var(--surface)}.search-form:focus-within{border-color:var(--accent);box-shadow:0 0 0 2px #51dec922}.search-icon{display:flex;padding-left:16px;color:var(--dim)}.search-icon svg{width:20px;height:20px}.search-form input{width:100%;min-width:0;height:100%;background:none;border:0;color:var(--ink);padding:0 12px;outline:none!important;box-shadow:none}.search-form input::placeholder{color:var(--dim)}.search-submit{height:100%;padding:0 25px;border:0;background:var(--accent);color:var(--accent-ink);font-weight:700;border-radius:0 10px 10px 0}.search-submit:hover{background:#79edda}.search-submit:focus-visible{outline-offset:-5px;outline-color:var(--accent-ink)}.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:46px;padding:10px 19px;border:1px solid var(--line);border-radius:11px;background:var(--surface);font-weight:600;transition:background .15s,border-color .15s,transform .15s}.button:hover{background:var(--surface-hover);border-color:#46606c}.button.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.button.primary:hover{background:#7be9d7}.button.subtle{background:transparent;font-weight:500}.header-nav{display:flex;align-items:center;justify-content:space-between;margin-top:20px;gap:20px}.primary-nav{display:flex;align-items:center;gap:30px;min-width:0}.nav-link{position:relative;min-height:57px;white-space:nowrap;padding:14px 0 19px;border:0;background:none;color:var(--muted);font-size:15px;font-weight:500;border-radius:3px}.nav-link:hover{color:var(--ink)}.nav-link.is-active{color:var(--accent);font-weight:700}.nav-link.is-active:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:3px;border-radius:3px 3px 0 0;background:var(--accent)}.nav-count{display:inline-block;min-width:19px;margin-left:6px;padding:0 5px;border-radius:6px;color:var(--accent);background:#51dec918;font-size:11px;text-align:center}.nav-count[hidden]{display:none}.header-tools{display:flex;align-items:center;gap:20px;flex-shrink:0}.network-state{display:flex;align-items:center;gap:6px;color:var(--dim);font-size:11px;white-space:nowrap}.network-state i{width:5px;height:5px;background:var(--accent);border-radius:50%}.network-state.offline i{background:#ecb366}.text-button{border:0;background:none;color:var(--accent);padding:8px 4px;font-size:13px;line-height:1.5;border-radius:5px}.text-button:hover{color:#8df2e3}.text-button svg{width:17px;height:17px;vertical-align:middle}#main{min-height:58vh;padding:30px 0 54px;outline:none}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 22px}.heading-copy h1{font-size:25px;line-height:1.3;letter-spacing:.3px;margin:0;font-weight:750}.heading-copy p{margin:7px 0 0;color:var(--muted);font-size:13px}.heading-eyebrow{color:var(--accent);font-size:10px;letter-spacing:1.8px;text-transform:uppercase;margin-bottom:6px}.source-controls{display:flex;align-items:center;gap:12px;flex-shrink:0}.select-wrap{position:relative;display:inline-flex;align-items:center}.select-wrap:after{content:"";width:6px;height:6px;border-right:1.5px solid var(--muted);border-bottom:1.5px solid var(--muted);transform:rotate(45deg);position:absolute;right:15px;top:18px;pointer-events:none}select{min-height:42px;max-width:220px;padding:9px 38px 9px 14px;color:var(--ink);border:1px solid var(--line);border-radius:10px;background:var(--surface);appearance:none;-webkit-appearance:none}select option{background:var(--surface);color:var(--ink)}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--muted)}.icon-button:hover{color:var(--accent);background:var(--surface-hover)}.icon-button svg{width:19px;height:19px}.filters-row{display:flex;align-items:flex-start;gap:10px;margin-bottom:24px}.category-list{display:flex;align-items:center;flex-wrap:wrap;gap:9px}.filter-chip{min-height:38px;padding:8px 15px;border:1px solid transparent;border-radius:9px;background:var(--surface);color:#afc3cb;font-size:13px;white-space:nowrap}.filter-chip:hover{border-color:#385763;background:var(--surface-hover);color:var(--ink)}.filter-chip.active{background:var(--accent);color:var(--accent-ink);font-weight:700}.category-list.collapsed .filter-chip:nth-child(n+9){display:none}.filter-more{white-space:nowrap;min-height:38px;flex-shrink:0;font-size:12px}.library-status{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:0 0 17px;color:var(--dim);font-size:12px}.library-status strong{color:var(--muted);font-weight:500}.result-badges{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:20px}.result-badge{display:flex;align-items:center;gap:6px;padding:5px 10px;border-radius:7px;background:var(--surface);font-size:12px;color:var(--muted)}.result-badge.failed{color:#edb58b}.result-badge i{width:5px;height:5px;background:var(--accent);border-radius:50%}.result-badge.failed i{background:#edb58b}.notice{display:flex;align-items:center;justify-content:space-between;gap:15px;border:1px solid #46675866;border-radius:11px;padding:12px 16px;background:#17372b33;color:#bed6ca;font-size:13px;margin-bottom:20px}.notice.warning{border-color:#8f674b66;background:#75502a18;color:#e1c3a3}.notice svg{width:19px;height:19px;margin-right:6px;vertical-align:middle}.notice .text-button{flex-shrink:0}.video-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));column-gap:20px;row-gap:28px;align-items:start}.video-card{min-width:0;position:relative;border-radius:12px;transition:transform .18s}.card-link{display:block;min-width:0;background:none;border:0;padding:0;width:100%;text-align:left;border-radius:12px;color:inherit}.card-poster{display:block;position:relative;width:100%;padding-top:142%;border-radius:12px;background:linear-gradient(145deg,#213a44,#122831);overflow:hidden;isolation:isolate}.card-poster:before{content:"";position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#040e19b8);z-index:1;pointer-events:none}.card-poster img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;color:var(--dim);font-size:12px;transition:transform .25s}.card-poster.missing:after{content:"暂无海报";position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:var(--dim);font-size:13px}.poster-remark{position:absolute;bottom:10px;left:10px;right:10px;z-index:2;color:white;text-shadow:0 1px 4px #000;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.4}.poster-label{position:absolute;top:9px;left:9px;background:#071923cd;border:1px solid #ffffff25;color:#d6f6f0;z-index:2;padding:3px 7px;border-radius:5px;font-size:10px;max-width:calc(100% - 18px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;backdrop-filter:blur(8px)}.card-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-40%);opacity:0;display:flex;align-items:center;justify-content:center;width:47px;height:47px;border-radius:50%;background:var(--accent);color:var(--accent-ink);transition:opacity .18s,transform .18s;z-index:3;box-shadow:0 4px 18px #0006}.card-play svg{width:22px;height:22px;fill:currentColor;stroke-width:0;margin-left:3px}.card-link:hover .card-play,.card-link:focus .card-play{opacity:1;transform:translate(-50%,-50%)}.card-link:hover img{transform:scale(1.035)}.card-link:focus .card-poster{box-shadow:0 0 0 3px var(--accent)}.card-link h2{font-size:14px;line-height:1.5;font-weight:600;margin:10px 0 4px;min-height:42px;height:42px;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow-wrap:anywhere}.card-meta{font-size:11px;line-height:18px;height:18px;color:var(--dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card-progress{position:absolute;bottom:0;left:0;right:0;height:3px;z-index:3;background:#ffffff26}.card-progress span{display:block;height:100%;background:var(--accent);max-width:100%}.card-remove{position:absolute;top:7px;right:7px;z-index:4;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border:1px solid #ffffff26;border-radius:50%;background:#081c26db;color:#c2d7de}.card-remove svg{width:14px;height:14px}.card-remove:hover{background:#2f4c55;color:white}.pagination{display:flex;align-items:center;justify-content:center;gap:20px;margin-top:38px}.pagination .button{min-width:108px;min-height:40px;font-size:13px}.page-info{color:var(--dim);font-size:13px}.page-info strong{color:var(--ink);font-weight:500}.empty-state{min-height:330px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:14px;padding:38px 22px;border:1px dashed var(--line);border-radius:18px;background:#13252c40}.empty-icon{display:flex;align-items:center;justify-content:center;width:62px;height:62px;border:1px solid #2c4d55;background:#17363a66;border-radius:19px;color:var(--accent);margin-bottom:3px}.empty-icon svg{width:30px;height:30px}.empty-state h2{margin:0;font-size:20px}.empty-state p{color:var(--muted);font-size:14px;line-height:1.8;max-width:520px;margin:0 0 5px}.empty-actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}.skeleton-card{min-width:0}.skeleton-poster{width:100%;padding-top:142%;border-radius:12px;background:#162a33}.skeleton-line{height:13px;background:#1a303a;border-radius:5px;margin-top:14px;width:80%}.skeleton-line.short{width:55%;height:9px;margin-top:9px}.skeleton-card{animation:breathe 1.6s ease-in-out infinite}.skeleton-card:nth-child(3n){animation-delay:.2s}@keyframes breathe{50%{opacity:.5}}.spinner{width:24px;height:24px;border:2px solid #51dec930;border-top-color:var(--accent);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.loading-inline{display:flex;align-items:center;gap:12px;color:var(--muted);padding:24px 0}.content-panel{padding:27px;border:1px solid var(--line);border-radius:16px;background:#111f28}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.settings-card h2{margin:0 0 9px;font-size:18px}.settings-card p{margin:0 0 16px;color:var(--muted);font-size:13px;line-height:1.9}.settings-card.full{grid-column:1/-1}.source-list{display:flex;flex-wrap:wrap;gap:8px}.source-tag{padding:7px 10px;border-radius:7px;background:#1c323d;color:#b6d0d8;font-size:12px}.source-tag small{color:var(--dim);margin-left:8px}.keyboard-list{display:grid;grid-template-columns:110px 1fr;gap:10px 15px;color:var(--muted);font-size:13px}.keyboard-list kbd{width:max-content}.danger-button{color:var(--danger);border-color:#704950!important}.field{min-height:48px;width:100%;border:1px solid #304853;border-radius:11px;background:var(--bg);color:var(--ink);padding:12px 15px;min-width:0}.field::placeholder{color:var(--dim)}.field-label{display:block;color:var(--muted);font-size:13px;margin-bottom:8px}.site-footer{display:flex;align-items:center;gap:18px;padding:20px 0 30px;border-top:1px solid var(--line);font-size:11px;color:var(--dim)}.site-footer>span:first-child{font-weight:700;font-size:13px;color:var(--muted)}.site-footer p{margin:0}.remote-hint{margin-left:auto}kbd{display:inline-block;background:var(--surface);border:1px solid var(--line);border-radius:4px;line-height:1.4;padding:2px 5px;color:var(--muted);font-family:inherit;font-size:10px}.toast{position:fixed;left:50%;bottom:max(30px,env(safe-area-inset-bottom));transform:translateX(-50%);background:#24414def;border:1px solid #517d86;border-radius:12px;padding:13px 20px;box-shadow:var(--shadow);z-index:1000;color:#ecfffb;font-size:14px;max-width:calc(100% - 40px);text-align:center;backdrop-filter:blur(10px)}.toast[hidden]{display:none}.modal-backdrop{position:fixed;inset:0;z-index:100;background:#020b13ce;display:flex;align-items:center;justify-content:center;padding:30px;backdrop-filter:blur(9px);overflow:auto}.modal{position:relative;max-width:960px;width:100%;max-height:calc(100dvh - 60px);max-height:calc(100vh - 60px);overflow:auto;background:#111f29;border:1px solid #2f4a56;border-radius:22px;box-shadow:0 24px 100px #0009;overscroll-behavior:contain}.modal-close{position:absolute;right:18px;top:18px;z-index:5;background:#0b1a25dd;color:var(--ink)}.detail-hero{display:flex;gap:29px;padding:35px 35px 28px;align-items:flex-start}.detail-poster{flex-shrink:0;width:185px;border-radius:13px;overflow:hidden;background:var(--surface-raised);position:relative}.detail-poster:before{content:"";display:block;padding-top:142%}.detail-poster img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.detail-copy{flex:1;min-width:0;padding:2px 35px 0 0}.detail-type{display:flex;gap:8px;align-items:center;color:var(--accent);font-size:12px;margin-bottom:13px}.detail-type span{padding:3px 8px;border-radius:5px;background:#51dec916}.detail-copy h1{margin:0 0 13px;font-size:29px;line-height:1.35}.detail-meta{color:var(--muted);font-size:13px;line-height:1.7}.detail-description{color:#b1c4cb;font-size:13px;line-height:1.9;margin:15px 0 20px;max-height:100px;overflow:auto;padding-right:4px;white-space:pre-line;word-break:break-word}.detail-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}.detail-actions .button{font-size:14px;min-height:43px}.detail-body{padding:0 35px 33px}.episodes-heading{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-top:23px;gap:15px;margin-bottom:17px}.episodes-heading h2{font-size:17px;margin:0}.episodes-heading small{font-weight:400;color:var(--dim);font-size:12px;margin-left:8px}.line-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:17px}.episode-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px}.episode-button{min-height:42px;border:1px solid var(--line);border-radius:8px;background:var(--surface-raised);color:var(--muted);padding:10px 8px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;font-size:12px}.episode-button:hover{border-color:var(--accent);color:var(--accent)}.episode-button.active{background:#51dec920;border-color:#51dec95c;color:var(--accent)}.episode-range{margin-bottom:17px;display:flex;align-items:center;gap:10px;color:var(--dim);font-size:12px}.detail-footnote{color:var(--dim);font-size:11px;margin:20px 0 0;line-height:1.8}.dialog-small{max-width:510px;padding:32px}.dialog-small h2{margin:0 38px 12px 0;font-size:22px}.dialog-small p{color:var(--muted);font-size:14px;line-height:1.9;margin:0 0 18px}.dialog-small .button{width:100%;margin-top:9px}.install-steps{color:#b4cbd1;font-size:14px;padding-left:21px;line-height:2}.player-backdrop{padding:20px;background:#02080ef5;backdrop-filter:none}.player-modal{background:#07121a;border-radius:16px;max-width:1320px;max-height:calc(100dvh - 40px);max-height:calc(100vh - 40px);overflow:auto}.player-header{display:flex;align-items:center;gap:14px;padding:14px 18px;border-bottom:1px solid #1b2d36}.player-header .icon-button{flex-shrink:0;background:none}.player-heading{min-width:0;flex:1}.player-heading h2{font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:0}.player-heading p{color:var(--dim);font-size:11px;margin:3px 0 0}.video-stage{position:relative;width:100%;background:black}.video-stage:before{content:"";display:block;padding-top:56.25%}.video-stage video{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:black}.player-status{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:15px;background:#02080dda;color:var(--muted);font-size:14px;padding:25px;text-align:center}.player-status[hidden]{display:none}.player-status p{margin:0;max-width:540px;line-height:1.8}.player-status .button{font-size:13px;min-height:40px}.player-status .button-row{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}.player-footer{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:14px 18px}.player-footer .button{min-height:39px;padding:7px 14px;font-size:12px}.player-control-group{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.player-hint{color:var(--dim);font-size:11px}.source-open{color:var(--accent);font-size:12px;border-radius:5px;padding:8px}.player-extra{border-top:1px solid var(--line);padding:19px 22px}.player-extra .episode-grid{grid-template-columns:repeat(8,minmax(0,1fr))}.inline-error{margin-top:12px;color:var(--danger);font-size:13px;line-height:1.7}.noscript{padding:30px;text-align:center;color:var(--danger)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(min-width:1600px){.app-shell{max-width:1680px;padding:0 66px}.video-grid{column-gap:24px;row-gap:33px}.heading-copy h1{font-size:28px}.card-link h2{font-size:16px;height:48px;min-height:48px}.card-meta{font-size:12px}.nav-link,.search-form,.button{font-size:16px}}
@media(max-width:1100px){.app-shell{padding:0 30px}.header-main{gap:23px}.brand strong{font-size:22px}.brand strong span{font-size:20px}.brand img{width:47px;height:47px}.brand small{font-size:9px;letter-spacing:1px}.search-submit{padding:0 21px}.header-tools{gap:12px}.primary-nav{gap:25px}.video-grid{column-gap:16px}.episode-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(max-width:950px){.video-grid{grid-template-columns:repeat(4,minmax(0,1fr));column-gap:18px}.header-main{gap:20px}.brand small{display:none}.brand strong{font-size:23px}.brand img{width:46px;height:46px}.network-state{display:none}.detail-hero{padding:30px 28px 25px;gap:23px}.detail-body{padding:0 28px 28px}.detail-poster{width:155px}.detail-copy h1{font-size:25px}.player-extra .episode-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.remote-hint{display:none}.settings-grid{gap:15px}.content-panel{padding:23px}}
@media(max-width:640px){body{font-size:14px}.app-shell{padding:0 20px}.site-header{padding-top:max(20px,env(safe-area-inset-top))}.header-main{display:grid;grid-template-columns:1fr 42px;gap:17px 12px}.brand{gap:9px}.brand img{width:43px;height:43px;border-radius:12px}.brand strong{font-size:23px;letter-spacing:.2px}.brand strong span{font-size:20px}.brand small{display:block;font-size:9px;letter-spacing:1.5px}.search-form{grid-column:1/-1;grid-row:2;max-width:none;height:45px}.search-icon{padding-left:13px}.search-form input{font-size:13px;padding:0 9px}.search-submit{padding:0 23px;font-size:13px}.header-nav{margin-top:9px;gap:10px}.primary-nav{gap:23px;flex:1;overflow-x:auto;scrollbar-width:none}.primary-nav::-webkit-scrollbar{display:none}.nav-link{font-size:13px;min-height:52px;padding:13px 0 17px}.header-tools{display:none}#main{padding:24px 0 35px}.section-heading{align-items:flex-start;gap:12px;margin-bottom:20px}.heading-copy h1{font-size:22px}.heading-copy p{font-size:12px;max-width:210px;line-height:1.7}.heading-eyebrow{font-size:9px;letter-spacing:1.4px;margin-bottom:5px}.source-controls{gap:7px;margin-top:1px}.source-controls select{min-height:37px;max-width:125px;padding:7px 28px 7px 10px;font-size:12px;border-radius:9px}.source-controls .select-wrap:after{right:11px;top:15px;width:5px;height:5px}.source-controls .icon-button{width:36px;height:37px;border-radius:9px}.source-controls .icon-button svg{width:16px;height:16px}.filters-row{gap:8px;margin-bottom:18px}.category-list{gap:7px}.category-list.collapsed .filter-chip:nth-child(n+6){display:none}.filter-chip{min-height:34px;padding:7px 12px;font-size:12px;border-radius:8px}.filter-more{font-size:11px;min-height:34px;padding:7px 0}.library-status{font-size:10px;margin-bottom:15px;gap:9px}.library-status>span:last-child{text-align:right}.video-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:23px 15px}.card-poster{border-radius:11px;padding-top:139%}.card-link h2{font-size:13px;line-height:1.55;height:40px;min-height:40px;margin:9px 0 3px}.card-meta{font-size:10px;line-height:16px;height:16px}.poster-remark{left:9px;right:9px;bottom:9px;font-size:10px}.poster-label{font-size:9px;top:8px;left:8px;max-width:calc(100% - 16px)}.card-play{width:41px;height:41px}.card-play svg{width:19px;height:19px}.pagination{gap:17px;margin-top:29px}.pagination .button{min-width:95px;font-size:12px}.page-info{font-size:12px}.site-footer{padding:18px 0 27px;gap:12px;font-size:10px;justify-content:space-between}.site-footer>span:first-child{font-size:12px}.settings-grid{grid-template-columns:1fr}.content-panel{padding:20px}.settings-card h2{font-size:17px}.settings-card p{font-size:12px}.keyboard-list{font-size:12px;grid-template-columns:90px 1fr}.notice{font-size:12px;padding:11px 12px;align-items:flex-start;gap:10px}.notice .text-button{font-size:11px}.result-badge{font-size:11px}.empty-state{min-height:300px;padding:30px 18px;gap:12px}.empty-state h2{font-size:18px}.empty-state p{font-size:13px}.modal-backdrop{padding:12px}.modal{max-height:calc(100vh - 24px);max-height:calc(100dvh - 24px);border-radius:17px}.modal-close{top:12px;right:12px;width:35px;height:35px}.detail-hero{padding:24px 20px 22px;gap:17px}.detail-poster{width:100px;border-radius:10px}.detail-copy{padding:0 22px 0 0}.detail-copy h1{font-size:20px;margin-bottom:8px}.detail-type{margin-bottom:7px;font-size:10px;gap:5px}.detail-type span{padding:2px 5px}.detail-meta{font-size:11px}.detail-description{display:none}.detail-actions{gap:8px;margin-top:13px}.detail-actions .button{font-size:11px;min-height:36px;padding:8px 11px;gap:6px;border-radius:8px}.detail-actions .button svg{width:15px;height:15px}.detail-body{padding:0 20px 25px}.episodes-heading{padding-top:20px;margin-bottom:14px}.episodes-heading h2{font-size:15px}.episodes-heading small{font-size:11px;margin-left:5px}.episodes-heading select{font-size:11px;min-height:35px;padding:7px 30px 7px 10px;max-width:150px}.episodes-heading .select-wrap:after{top:13px}.episode-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.episode-button{min-height:39px;font-size:11px;padding:9px 7px}.line-tabs{gap:7px;margin-bottom:14px}.line-tabs .filter-chip{font-size:11px}.episode-range{font-size:11px}.dialog-small{padding:27px 23px}.dialog-small h2{font-size:20px}.dialog-small p{font-size:13px}.player-backdrop{padding:0}.player-modal{width:100%;height:100%;max-height:none;max-width:none;border-radius:0;border:0;display:flex;flex-direction:column}.player-header{padding:max(11px,env(safe-area-inset-top)) 12px 11px;gap:10px}.player-header .icon-button{width:35px;height:35px}.player-heading h2{font-size:13px}.player-heading p{font-size:10px}.player-header>.icon-button:last-child{display:none}.video-stage{margin:auto 0;flex-shrink:0}.player-footer{padding:12px;gap:10px;flex-wrap:wrap}.player-footer .button{font-size:11px;min-height:35px;padding:7px 11px}.player-hint{display:none}.source-open{font-size:11px}.player-extra{padding:14px 15px;max-height:30vh;overflow:auto}.player-extra .episode-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.player-status{font-size:12px;gap:11px;padding:15px}.player-status .spinner{width:20px;height:20px}.player-status .button{font-size:11px;min-height:34px;padding:6px 12px}.player-status .button-row{gap:8px}.toast{font-size:12px;padding:11px 15px;bottom:max(22px,env(safe-area-inset-bottom));width:max-content;max-width:calc(100% - 32px)}}
@media(max-width:359px){.app-shell{padding:0 15px}.primary-nav{gap:19px}.brand strong{font-size:21px}.heading-copy h1{font-size:20px}.heading-copy p{font-size:11px}.source-controls select{max-width:111px}.video-grid{gap:20px 12px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* Physical edges keep poster and player sizing stable on older television WebViews. */
.card-poster:before{top:50%;right:0;bottom:0;left:0}.card-poster img,.detail-poster img,.video-stage video,.player-status{top:0;right:0;bottom:0;left:0}.card-poster.missing:after,.modal-backdrop{top:0;right:0;bottom:0;left:0}
@supports(height:100dvh){.modal{max-height:calc(100dvh - 60px)}.player-modal{max-height:calc(100dvh - 40px)}@media(max-width:640px){.modal{max-height:calc(100dvh - 24px)}.player-modal{max-height:none}}}
.search-form input{flex:1 1 0%;min-width:0;width:0}.search-submit{flex:0 0 auto;white-space:nowrap}.search-icon{flex-shrink:0}
.player-modal:fullscreen{max-width:none;max-height:none;width:100%;height:100%;border:0;border-radius:0;display:flex;flex-direction:column}.player-modal:fullscreen .video-stage{flex:1;min-height:0;margin:0}.player-modal:fullscreen .video-stage:before{display:none}.player-modal:fullscreen .player-header,.player-modal:fullscreen .player-footer{flex-shrink:0}.player-modal:fullscreen .player-extra{max-height:25vh;overflow:auto}
.player-modal:-webkit-full-screen{max-width:none;max-height:none;width:100%;height:100%;border:0;border-radius:0;display:flex;flex-direction:column}.player-modal:-webkit-full-screen .video-stage{flex:1;min-height:0;margin:0}.player-modal:-webkit-full-screen .video-stage:before{display:none}
@media(max-height:500px){.player-modal{height:calc(100vh - 24px);display:flex;flex-direction:column}.player-modal .video-stage{flex:1;min-height:80px;margin:0}.player-modal .video-stage:before{display:none}.player-modal .player-header,.player-modal .player-footer{flex-shrink:0}.player-modal .player-extra{max-height:30vh;overflow:auto}.player-header{padding-top:8px;padding-bottom:8px}.player-footer{padding-top:8px;padding-bottom:8px}}
.search-form{max-width:850px;margin-left:auto}.source-section{margin-top:28px}.source-section-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px}.source-section-title h2{margin:0;font-size:18px}.source-section-title>span{color:var(--dim);font-size:12px}.source-manager-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.source-manager-card{padding:21px;border:1px solid var(--line);background:var(--surface);border-radius:14px;min-width:0}.source-card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.source-card-heading h3{font-size:16px;margin:0 0 6px;overflow-wrap:anywhere}.source-kind{font-size:11px;color:var(--dim)}.source-toggle{border:1px solid #39525c;border-radius:7px;background:none;color:var(--muted);font-size:11px;white-space:nowrap;padding:6px 8px;display:flex;align-items:center;gap:6px}.source-toggle i{width:6px;height:6px;background:var(--dim);border-radius:50%}.source-toggle.enabled{border-color:#367264;color:var(--accent);background:#3bbca311}.source-toggle.enabled i{background:var(--accent)}.source-endpoint{font-size:11px;color:var(--dim);margin:16px 0 11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.7}.source-health-line{min-height:39px;display:flex;align-items:flex-start}.source-health{color:var(--muted);font-size:11px;line-height:1.7;overflow-wrap:anywhere}.source-health.passed,.source-form-result.passed{color:var(--accent)}.source-health.failed,.source-form-result.failed,.danger-text{color:var(--danger)}.source-card-actions{display:flex;gap:10px;align-items:center;border-top:1px solid var(--line);padding-top:15px;margin-top:10px}.source-card-actions .button{min-height:35px;padding:7px 12px;font-size:11px;border-radius:8px}.source-card-actions .button svg{width:15px;height:15px}.source-card-actions .danger-text{margin-left:auto;font-size:11px}.source-manager-note{color:var(--dim);font-size:12px;line-height:1.9;margin:27px 0 0;max-width:900px}.source-form-modal{max-width:600px;padding:32px}.source-form-modal h2{margin:0 40px 9px 0;font-size:23px}.source-form-intro{color:var(--muted);font-size:13px;margin:0 0 26px}.source-form-modal .field{margin-bottom:21px}.source-form-modal #source-endpoint{font-family:ui-monospace,Consolas,monospace;font-size:13px;margin-bottom:9px}.field-help{font-size:11px;color:var(--dim);line-height:1.8;margin:5px 0}.source-checkbox{display:flex;align-items:center;gap:9px;margin:21px 0;font-size:13px;color:var(--muted);cursor:pointer}.source-checkbox input{width:17px;height:17px;accent-color:var(--accent)}.source-form-actions{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:24px;padding-top:21px;border-top:1px solid var(--line)}.source-form-actions .button{font-size:13px}.source-form-result{font-size:12px;line-height:1.8;background:#07192366;border-radius:8px;padding:11px 13px;margin:0}.source-form-modal .field:focus{outline-offset:2px}
@media(max-width:1100px){.source-manager-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.header-main{grid-template-columns:1fr}.search-form{margin-left:0;width:100%}.primary-nav{gap:20px}.source-manager-grid{grid-template-columns:1fr;gap:13px}.source-manager-card{padding:18px}.source-section{margin-top:24px}.source-section-title h2{font-size:16px}.source-form-modal{padding:26px 21px}.source-form-modal h2{font-size:21px}.source-form-modal .field{font-size:13px}.source-form-actions{gap:10px}.source-form-actions .button{font-size:12px;padding:10px 13px}.source-manager-note{font-size:11px}.source-section .empty-state{min-height:265px}.source-section+.source-section{margin-top:28px}}
.auto-source-label{display:flex;align-items:center;gap:7px;color:var(--dim);font-size:12px;max-width:330px;line-height:1.6}.auto-source-label strong{color:var(--muted);font-weight:500;max-width:200px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.auto-source-pulse{display:inline-block;width:6px;height:6px;flex-shrink:0;border-radius:50%;background:var(--accent);animation:breathe 1.3s ease-in-out infinite}.unified-category-list{flex-wrap:wrap}.unified-category-list .filter-chip{min-width:65px}.library-status>span:first-child{min-width:0}.library-status>span:last-child{flex-shrink:0}
@media(max-width:640px){.auto-source-label{font-size:10px;max-width:160px;gap:4px;flex-wrap:wrap;justify-content:flex-end;line-height:1.4}.auto-source-label strong{max-width:100px}.unified-category-list{gap:7px}.unified-category-list .filter-chip{min-width:0;padding:8px 13px}.source-controls{align-items:center}.library-status{align-items:flex-start;line-height:1.8}.library-status>span:last-child{max-width:105px}.library-status>span:first-child{max-width:65%}}
.result-badge.pending{opacity:.72}.result-badge.pending i{animation:breathe 1.3s ease-in-out infinite}
:root{--bottom-bar-height:84px;--nav-bg:#10212bed}.app-shell{padding-bottom:calc(var(--bottom-bar-height) + env(safe-area-inset-bottom) + 18px)}html{scroll-padding-bottom:calc(var(--bottom-bar-height) + env(safe-area-inset-bottom) + 24px)}.site-header{padding-bottom:25px}.bottom-nav{position:fixed;left:0;right:0;bottom:0;z-index:40;background:var(--nav-bg);border-top:1px solid var(--line);backdrop-filter:blur(20px);padding:8px 24px calc(9px + env(safe-area-inset-bottom))}.bottom-nav-inner{max-width:720px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin:0 auto}.bottom-nav .nav-link{min-height:65px;padding:8px 12px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:4px;border-radius:13px;font-size:12px;line-height:1.4;color:var(--muted)}.bottom-nav .nav-link svg{width:23px;height:23px}.bottom-nav .nav-link:after{display:none}.bottom-nav .nav-link:hover{background:var(--surface-hover)}.bottom-nav .nav-link.is-active{background:#51dec91a;color:var(--accent);font-weight:700}.bottom-nav .nav-count{position:absolute;top:6px;right:calc(50% - 35px);font-size:9px;min-width:17px;background:var(--accent);color:var(--accent-ink);margin:0}.bottom-nav .nav-link:focus-visible{outline-offset:-3px}.bottom-nav .nav-link.is-remote-focus{outline-offset:-3px}.preference-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.preference-field{display:flex;flex-direction:column;gap:9px;align-items:flex-start}.preference-field>label{font-weight:600;font-size:14px}.preference-field .select-wrap,.preference-field select{width:100%;max-width:240px}.preference-field p{font-size:12px;margin:0;color:var(--dim);line-height:1.8}.content-panel{background:var(--surface)}.modal{background:var(--surface)}.detail-description{color:var(--muted)}.source-form-result{background:var(--surface-raised)}.source-tag{background:var(--surface-raised);color:var(--muted)}
:root[data-theme="light"]{color-scheme:light;--bg:#eef5f4;--surface:#ffffff;--surface-raised:#e2eeed;--surface-hover:#d7e8e6;--ink:#15343b;--muted:#45656c;--dim:#648087;--line:#c5dad8;--accent:#087f7c;--accent-2:#147c94;--accent-ink:#ffffff;--danger:#b3323d;--shadow:0 18px 60px #173d4724;--nav-bg:#f9fdfded}.brand strong{color:var(--ink)}:root[data-theme="light"] .empty-state{background:#e6f0ef}:root[data-theme="light"] .empty-icon{border-color:#a7d1c7;background:#d9eee8}:root[data-theme="light"] .notice{background:#e1f1e8;color:#285948;border-color:#b0d4bd}:root[data-theme="light"] .notice.warning{background:#fff4df;color:#785525;border-color:#e2c58d}:root[data-theme="light"] .result-badge.failed{color:#8b5f2b}:root[data-theme="light"] .source-toggle.enabled{background:#d7eee7;border-color:#8fbeb4}:root[data-theme="light"] .detail-type span{background:#dceee8}:root[data-theme="light"] .episode-button.active{background:#d6eee7;border-color:#7eb8a9}:root[data-theme="light"] .card-poster{background:linear-gradient(145deg,#d3e4e0,#bfd4d1)}:root[data-theme="light"] .skeleton-poster{background:#d6e5e1}:root[data-theme="light"] .skeleton-line{background:#c8ddd8}:root[data-theme="light"] .modal-close{background:var(--surface-raised)}:root[data-theme="light"] .dialog-small p,:root[data-theme="light"] .install-steps{color:var(--muted)}:root[data-theme="light"] .player-modal,:root[data-theme="light"] .player-footer{background:var(--surface)}.player-status{color:#d1e4e8}.player-status .button:not(.primary){background:#17313d;color:#e1f1f3;border-color:#426572}.player-status .button.primary{background:#51dec9;border-color:#51dec9;color:#062e33}:root[data-theme="light"] .bottom-nav .nav-link.is-active{background:#d6eee7}:root[data-theme="light"] .search-submit:hover,:root[data-theme="light"] .button.primary:hover{background:#096f6e}
@media(max-width:640px){:root{--bottom-bar-height:76px}.site-header{padding-bottom:19px}.bottom-nav{padding:5px 11px calc(7px + env(safe-area-inset-bottom))}.bottom-nav-inner{gap:5px}.bottom-nav .nav-link{min-height:63px;font-size:11px;padding:6px 4px;gap:4px}.bottom-nav .nav-link svg{width:22px;height:22px}.bottom-nav .nav-count{right:calc(50% - 29px);top:5px}.preference-grid{grid-template-columns:1fr;gap:23px}.preference-field .select-wrap,.preference-field select{max-width:none}.site-footer .network-state{display:none}.toast{bottom:calc(var(--bottom-bar-height) + env(safe-area-inset-bottom) + 16px)}}
@media(min-width:1600px){:root{--bottom-bar-height:98px}.bottom-nav-inner{max-width:880px;gap:18px}.bottom-nav .nav-link{min-height:78px;font-size:15px}.bottom-nav .nav-link svg{width:27px;height:27px}}
.shuffle-button{min-height:40px;padding:8px 13px;font-size:12px;gap:7px}.shuffle-button svg{width:18px;height:18px}.all-categories-button{min-height:38px;padding:8px 7px;font-size:12px}.all-categories-button.active{color:var(--accent);font-weight:700}.category-modal{max-width:860px;padding:30px}.category-modal h2{margin:0 45px 8px 0;font-size:23px}.category-modal-intro{margin:0 0 24px;color:var(--dim);font-size:13px;line-height:1.8}.fine-category-group+.fine-category-group{border-top:1px solid var(--line);margin-top:25px;padding-top:22px}.fine-category-group h3{font-size:15px;margin:0 0 14px;color:var(--muted)}.fine-category-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.fine-category-grid .filter-chip{white-space:normal;min-height:43px}.category-modal .filter-chip{color:var(--muted)}.category-modal .filter-chip.active{color:var(--accent-ink)}:root[data-theme="light"] .filter-chip{color:var(--muted)}:root[data-theme="light"] .filter-chip.active{color:var(--accent-ink)}:root[data-theme="light"] .player-header{border-color:var(--line)}
@media(max-width:640px){.shuffle-button{min-height:35px;font-size:11px;padding:7px 10px}.shuffle-button svg{width:15px;height:15px}.all-categories-button{font-size:11px;min-height:34px}.category-modal{padding:25px 20px}.category-modal h2{font-size:21px}.fine-category-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.fine-category-grid .filter-chip{font-size:12px;min-height:40px}.category-modal-intro{font-size:12px}}
.bottom-nav .nav-link{white-space:normal;text-align:center}.bottom-nav .nav-link>span:not(.nav-count){max-width:100%}
.secondary-filters{display:flex;flex-wrap:wrap;gap:8px;padding:13px 15px;margin:-10px 0 23px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.secondary-chip{border:1px solid transparent;border-radius:7px;background:transparent;color:var(--muted);font-size:12px;min-height:34px;padding:7px 12px}.secondary-chip:hover{background:var(--surface-hover);color:var(--ink)}.secondary-chip.active{border-color:var(--accent);color:var(--accent);background:var(--surface-raised);font-weight:600}@media(max-width:640px){.secondary-filters{padding:10px;gap:5px;margin:-7px 0 18px}.secondary-chip{font-size:11px;min-height:33px;padding:7px 9px}}
.settings-source-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.settings-source-actions .button{font-size:13px}
.settings-page{width:100%;max-width:680px;margin:0 auto}.settings-page .section-heading{margin-bottom:26px}.settings-group{margin-bottom:25px}.settings-group>h2{color:var(--dim);font-size:12px;font-weight:600;margin:0 0 9px 13px;letter-spacing:.3px}.settings-list{overflow:hidden;border:1px solid var(--line);border-radius:15px;background:var(--surface)}.setting-row{display:flex;align-items:center;gap:13px;width:100%;min-height:68px;padding:13px 16px;color:var(--ink);border:0;background:transparent;text-align:left;line-height:1.5}.setting-row+.setting-row{border-top:1px solid var(--line)}.setting-action:hover{background:var(--surface-hover)}.setting-action:focus-visible{outline-offset:-4px}.setting-icon{width:35px;height:35px;border-radius:10px;display:flex;align-items:center;justify-content:center;background:var(--surface-raised);color:var(--accent);flex-shrink:0}.setting-icon svg{width:19px;height:19px}.setting-copy{display:flex;flex-direction:column;gap:3px;flex:1;min-width:0}.setting-copy strong{font-size:14px;font-weight:550}.setting-copy small{color:var(--dim);font-size:11px;font-weight:400}.setting-select{flex-shrink:0;max-width:170px}.setting-select select{border:0;background:transparent;width:auto;max-width:170px;min-height:43px;padding-left:8px;font-size:13px;color:var(--muted)}.setting-value{color:var(--dim);font-size:12px;white-space:nowrap}.setting-chevron{font-size:24px;line-height:1;color:var(--dim);font-weight:300;margin-left:3px}.settings-footnote{text-align:center;font-size:11px;color:var(--dim);letter-spacing:.5px;margin-top:28px}.disclaimer-modal{max-width:720px;display:flex;flex-direction:column;overflow:hidden}.disclaimer-header{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:23px 26px 19px;border-bottom:1px solid var(--line);flex-shrink:0}.disclaimer-header h2{margin:0;font-size:22px}.disclaimer-content{padding:21px 26px 26px;overflow:auto;min-height:0;line-height:1.9;font-size:13px;color:var(--muted)}.disclaimer-content:focus{outline-offset:-4px}.disclaimer-content>p{margin:0 0 20px}.disclaimer-content .disclaimer-meta{font-size:11px;color:var(--dim);margin-bottom:14px}.disclaimer-content section+section{margin-top:23px}.disclaimer-content h3{font-size:15px;color:var(--ink);margin:0 0 9px}.disclaimer-content section p{margin:0}.disclaimer-footer{padding:16px 26px;border-top:1px solid var(--line);background:var(--surface);flex-shrink:0}.disclaimer-footer .button{width:100%}
@media(max-width:640px){body.settings-view .search-form{display:none}body.settings-view .header-main{gap:0}body.settings-view .site-header{padding-bottom:17px}.settings-page .heading-copy h1{font-size:24px}.settings-group{margin-bottom:22px}.setting-row{min-height:65px;padding:12px 13px;gap:11px}.setting-copy strong{font-size:13px}.setting-copy small{font-size:10px}.setting-icon{width:33px;height:33px;border-radius:9px}.setting-select,.setting-select select{max-width:143px}.setting-select select{font-size:12px}.settings-list{border-radius:13px}.disclaimer-header{padding:18px 20px 15px}.disclaimer-header h2{font-size:20px}.disclaimer-content{padding:17px 20px 23px;font-size:12px}.disclaimer-content h3{font-size:14px}.disclaimer-footer{padding:13px 20px calc(13px + env(safe-area-inset-bottom))}}
html{overflow-y:scroll;scrollbar-gutter:stable}.bottom-nav{height:calc(84px + env(safe-area-inset-bottom));padding:8px 20px calc(8px + env(safe-area-inset-bottom))}.bottom-nav-inner{height:68px;grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;gap:8px}.bottom-nav .nav-link{height:68px;min-height:68px;max-height:68px;font-weight:600;line-height:16px;font-size:12px;gap:5px;padding:9px 4px;transform:none!important;transition:background-color .15s,color .15s,opacity .15s}.bottom-nav .nav-link.is-active{font-weight:600}.bottom-nav .nav-link svg{display:block;width:24px;height:24px;min-height:24px;max-height:24px;stroke-width:1.8}.bottom-nav .nav-link>span:not(.nav-count){display:block;height:16px;line-height:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bottom-nav .nav-link:active{opacity:.65}.bottom-nav .nav-link.is-active{color:#ef8578;background:#e7796915}:root[data-theme="light"] .bottom-nav .nav-link.is-active{color:#ae493f;background:#e7796916}
@media(max-width:640px){.bottom-nav{height:calc(76px + env(safe-area-inset-bottom));padding:4px 10px calc(4px + env(safe-area-inset-bottom))}.bottom-nav-inner{height:68px;gap:4px}.bottom-nav .nav-link{height:68px;min-height:68px;max-height:68px;font-size:10px;line-height:15px;gap:4px;padding:10px 2px}.bottom-nav .nav-link>span:not(.nav-count){height:15px;line-height:15px}.bottom-nav .nav-link svg{width:24px;height:24px}}
@media(min-width:1600px){.bottom-nav{height:calc(98px + env(safe-area-inset-bottom));padding-top:10px;padding-bottom:calc(10px + env(safe-area-inset-bottom))}.bottom-nav-inner,.bottom-nav .nav-link{height:78px;min-height:78px;max-height:78px}.bottom-nav .nav-link{font-size:14px;gap:8px;padding-top:12px}.bottom-nav .nav-link>span:not(.nav-count){height:18px;line-height:18px}}
.bottom-nav .nav-link:before{content:"";position:absolute;width:18px;height:3px;top:3px;left:50%;margin-left:-9px;border-radius:3px;background:currentColor;opacity:0}.bottom-nav .nav-link.is-active:before{opacity:1}
.watch-player{max-width:980px;display:block;overflow:auto;background:var(--surface)}.watch-player .video-stage{flex:none;margin:0;min-height:0}.watch-player .video-stage:before{display:block;padding-top:56.25%}.watch-player .player-header{padding:13px 18px;background:var(--surface)}.watch-player .player-header>.icon-button:last-child{display:flex}.watch-controls{padding:15px 25px 19px;max-width:740px;margin:0 auto}.watch-timeline{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:11px;font-variant-numeric:tabular-nums}.watch-timeline output{min-width:42px;text-align:center}.watch-timeline input{width:100%;min-width:0;height:44px;margin:0;appearance:none;-webkit-appearance:none;cursor:pointer;background:transparent}.watch-timeline input::-webkit-slider-runnable-track{height:4px;border-radius:4px;background:linear-gradient(to right,var(--accent) 0 var(--seek-progress,0%),var(--line) var(--seek-progress,0%) 100%)}.watch-timeline input::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:17px;height:17px;border-radius:50%;margin-top:-6.5px;background:var(--accent)}.watch-timeline input::-moz-range-track{height:4px;border-radius:4px;background:var(--line)}.watch-timeline input::-moz-range-progress{height:4px;background:var(--accent)}.watch-timeline input::-moz-range-thumb{width:17px;height:17px;border:0;border-radius:50%;background:var(--accent)}.watch-timeline input:disabled{opacity:.35}.watch-transport{display:grid;grid-template-columns:44px 58px 44px minmax(60px,1fr) 44px;align-items:center;gap:10px;max-width:350px;margin:3px auto 17px}.watch-play{width:58px;height:58px;border:0;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--accent);color:var(--accent-ink)}.watch-play svg{width:28px;height:28px;stroke-width:3}.watch-play:disabled{opacity:.4}.watch-skip{width:44px;height:44px;position:relative;border:0;border-radius:50%;background:transparent;color:var(--ink)}.watch-skip>span{position:absolute;inset:0;font-size:43px;line-height:43px;font-family:Arial,sans-serif}.watch-skip>small{position:relative;font-size:10px;font-weight:650;top:1px}.watch-rate{min-width:0;justify-content:center}.watch-rate select{width:100%;max-width:95px;height:44px;min-height:44px;background:transparent;border:0;padding:9px 22px 9px 8px;color:var(--ink);font-size:13px}.watch-rate:after{right:8px;top:17px}.watch-transport .icon-button{width:44px;height:44px;background:none;border:0}.watch-episode-controls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.watch-episode-controls .button{min-height:44px;padding:9px 7px;font-size:12px}.watch-find{display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;width:100%;margin:15px 0 0;border:1px solid var(--line);border-radius:10px;color:var(--accent);background:transparent;font-size:12px}.watch-find svg{width:17px;height:17px}.watch-note{font-size:10px;text-align:center;color:var(--dim);margin:10px 0 0}.watch-player .player-extra,.player-alternatives{padding:20px 25px;border-top:1px solid var(--line);background:var(--surface);max-height:none;overflow:visible}.watch-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:15px}.watch-section-heading h3{font-size:16px;margin:0}.watch-section-heading select{max-width:200px;font-size:12px}.alternative-context{font-size:12px;line-height:1.8;color:var(--dim);margin:0 0 14px}.alternative-list{border:1px solid var(--line);border-radius:12px;overflow:hidden}.alternative-item{display:flex;align-items:center;justify-content:space-between;gap:13px;width:100%;min-height:68px;padding:13px 15px;border:0;background:transparent;text-align:left}.alternative-item+.alternative-item{border-top:1px solid var(--line)}.alternative-item:hover{background:var(--surface-hover)}.alternative-item>span:first-child{min-width:0}.alternative-item strong{display:block;color:var(--ink);font-size:13px;font-weight:600;line-height:1.6}.alternative-item small{display:block;color:var(--dim);font-size:11px;line-height:1.6;margin-top:3px}.alternative-match{color:var(--accent);font-size:10px;max-width:125px;line-height:1.7;text-align:right;flex-shrink:0}.alternative-selected{margin:10px 0 13px}.alternative-selected strong{display:block;font-size:16px}.alternative-selected span{display:block;color:var(--dim);font-size:11px;margin-top:5px}.alternative-confirm,.alternative-empty{font-size:13px;line-height:1.9;color:var(--muted);margin:0 0 16px}.watch-player .player-status{overflow:auto;padding:15px;gap:10px}.watch-player .player-status>svg{width:25px;height:25px}.watch-player .player-status p{font-size:13px;line-height:1.7}.watch-player .player-status .button{min-height:44px;font-size:11px;padding:8px 12px}
.watch-player:fullscreen{display:flex;flex-direction:column}.watch-player:fullscreen .video-stage{flex:1;min-height:80px}.watch-player:fullscreen .video-stage:before{display:none}.watch-player:fullscreen .watch-controls{flex-shrink:0;width:100%;padding-top:5px;padding-bottom:8px}.watch-player:fullscreen .watch-note{display:none}.watch-player:fullscreen .player-extra,.watch-player:fullscreen .player-alternatives{max-height:35vh;overflow:auto}
@media(max-width:640px){.watch-player{display:block;height:100%;max-height:none}.watch-player .player-header{padding:11px 12px}.watch-player .player-header .icon-button{width:44px;height:44px}.watch-player .player-heading h2{font-size:14px}.watch-player .player-heading p{font-size:11px}.watch-controls{padding:10px 18px 17px}.watch-timeline{gap:8px;font-size:10px}.watch-transport{gap:8px;grid-template-columns:44px 56px 44px minmax(60px,1fr) 44px;margin-bottom:15px}.watch-play{width:56px;height:56px}.watch-episode-controls{gap:8px}.watch-player .player-extra,.player-alternatives{padding:19px 18px}.watch-player .player-extra .episode-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.watch-player .player-status .button{min-height:44px;padding:7px 10px;font-size:10px}.watch-player .player-status p{font-size:12px}.alternative-item{padding:12px}.alternative-match{max-width:95px;font-size:10px}.watch-section-heading h3{font-size:15px}.filter-chip,.secondary-chip,.all-categories-button,.episode-button,.icon-button,.source-card-actions .button,.card-remove{min-height:44px}.icon-button,.card-remove{min-width:44px}.modal-close{width:44px;height:44px}.source-card-actions .button{padding-top:10px;padding-bottom:10px}}
.watch-section-heading .text-button{min-height:44px}@media(max-width:640px){.source-toggle{min-height:44px}.watch-section-heading select{min-height:44px}.watch-player .player-status .button-row{gap:7px}}

/* A compact theatre surface: playback controls stay together, episode actions stay secondary. */
.watch-player{--surface:#111d24;--surface-raised:#1a2a33;--surface-hover:#223640;--ink:#f2f8f8;--muted:#a2b6bf;--dim:#7c969f;--line:#29404a;--accent:#55dcc7;--accent-ink:#07362f;color:var(--ink);background:#101a21;border-color:#ffffff13;border-radius:22px;box-shadow:0 24px 100px #0008}
.watch-player .player-header{min-height:66px;padding:12px 18px;background:#101a21;border-bottom:1px solid #ffffff09;gap:14px}
.watch-player .player-header .icon-button{width:40px;height:40px;min-width:40px;border:0;border-radius:50%;background:#ffffff07;color:#d9e7e9}
.watch-player .player-header .icon-button:hover{background:#ffffff14}
.watch-player .player-heading h2{font-size:15px;font-weight:600;line-height:1.5;letter-spacing:.1px}
.watch-player .player-heading p{font-size:11px;color:var(--dim);margin-top:3px}
.watch-player .video-stage{background:#05090c;isolation:isolate}
.watch-player .video-stage .embedded-player{position:absolute;inset:0;width:100%;height:100%;border:0;background:#05090c;z-index:1}
.watch-player .video-stage #video-player[hidden]{display:none}
.watch-player .player-status{z-index:2;background:radial-gradient(ellipse at center,#18313b77,transparent 75%);gap:14px;padding:24px}
.watch-player .player-status>svg{width:28px;height:28px;color:#a0b5bd;stroke-width:1.6}
.watch-player .player-status p{max-width:430px;margin:0;font-size:13px;line-height:1.8;color:#a8bdc5}
.watch-player .player-status .button-row{display:flex;flex-wrap:wrap;justify-content:center;gap:9px;margin-top:2px}
.watch-player .player-status .button{min-height:42px;border-radius:24px;padding:10px 17px;font-size:12px;font-weight:600;border-color:#34505a;background:#ffffff07;color:#d5e8e9}
.watch-player .player-status .button.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}
.watch-player .watch-controls{max-width:none;margin:0;padding:8px 22px 20px;background:linear-gradient(#101b22,#111d24);border-top:1px solid #ffffff08}
.watch-player .watch-timeline{gap:10px;font-size:10px;letter-spacing:.3px;color:#9ab0ba}
.watch-player .watch-timeline output{min-width:35px}
.watch-player .watch-timeline input{height:32px}
.watch-player .watch-timeline input::-webkit-slider-runnable-track{height:3px;background:linear-gradient(to right,var(--accent) 0 var(--seek-progress,0%),#344a53 var(--seek-progress,0%) 100%)}
.watch-player .watch-timeline input::-webkit-slider-thumb{width:12px;height:12px;margin-top:-4.5px}
.watch-player .watch-transport{grid-template-columns:44px 48px 44px minmax(64px,1fr) 44px;gap:16px;max-width:350px;margin:3px auto 18px}
.watch-player .watch-play{width:48px;height:48px;background:#e8f5f4;color:#102c2b;box-shadow:0 3px 12px #0003}
.watch-player .watch-play svg{width:22px;height:22px;stroke-width:2}
.watch-player .watch-skip{color:#d4e3e7}
.watch-player .watch-skip>span{font-size:34px;line-height:42px}
.watch-player .watch-skip>small{font-size:9px;top:0}
.watch-player .watch-skip>svg{position:absolute;left:8px;top:8px;width:28px;height:28px;stroke-width:1.7}
.watch-player .watch-skip>small{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding-top:2px}
.watch-player .watch-rate select{color:#d4e3e7;font-size:12px;padding-left:8px}
.watch-player .watch-transport .icon-button{color:#c3d8de}
.watch-player .watch-episode-controls{max-width:580px;margin:0 auto;padding:4px;gap:4px;background:#1b2b34;border:1px solid #ffffff08;border-radius:17px}
.watch-player .watch-episode-controls .button{min-height:42px;border:0;background:transparent;border-radius:12px;color:#a9bfc7;font-size:12px;font-weight:500}
.watch-player .watch-episode-controls .button[data-action="player-episodes"]{background:#30484e;color:#a0f2e2;font-weight:600}
.watch-player .watch-episode-controls .button:disabled{opacity:.3}
.watch-player .watch-find{width:auto;max-width:100%;margin:10px auto 0;padding:8px 14px;min-height:42px;border:0;background:transparent;color:#8bb9bc;font-size:12px;gap:7px;border-radius:12px}
.watch-player .watch-find:hover{background:#ffffff05;color:var(--accent)}
.watch-player .watch-find svg{width:15px;height:15px}
.watch-player .watch-note{font-size:10px;color:#6e939b;line-height:1.6;margin:1px 0 0}
.watch-player.is-loading .watch-timeline,.watch-player.is-loading .watch-transport,.watch-player.is-error .watch-timeline,.watch-player.is-error .watch-transport,.watch-player.is-embedded .watch-timeline,.watch-player.is-embedded .watch-transport{display:none}
.watch-player.is-loading .watch-controls,.watch-player.is-error .watch-controls,.watch-player.is-embedded .watch-controls{padding-top:17px}
.watch-player .player-extra,.watch-player .player-alternatives{padding:20px 22px;background:#101a21;border-top:1px solid #ffffff0c}
.watch-player .episode-button{border-color:#2d414a;background:#1a2a32;color:#a8bec7;border-radius:10px}
.watch-player .episode-button.active{color:#062f29;background:var(--accent);border-color:var(--accent)}
.watch-player .alternative-list{border-color:#29404a}
.watch-player .alternative-item:hover{background:#1b3039}
.watch-player .watch-section-heading select{background:#1a2a32;color:#c0d4dc}
.watch-player.is-buffering .player-status{inset:auto 14px 14px;display:flex;flex-direction:row;align-items:center;width:max-content;max-width:calc(100% - 28px);padding:8px 12px;gap:9px;border:1px solid #ffffff12;border-radius:20px;background:#10212ee8;pointer-events:none;backdrop-filter:blur(10px)}
.watch-player.is-buffering .player-status .spinner{width:14px;height:14px;border-width:2px}
.watch-player.is-buffering .player-status p{font-size:11px;line-height:1.5;margin:0}
.watch-player .watch-media-controls{position:absolute;inset:auto 0 0;z-index:3;padding:28px 16px 10px;background:linear-gradient(transparent,#030b13d9 38%,#030b13f2);color:#f2f8f8}
.watch-player .watch-media-controls .watch-timeline{color:#d2e2e7}
.watch-player .watch-media-controls .watch-transport{grid-template-columns:44px 44px 44px minmax(48px,1fr) 44px 44px;gap:6px;max-width:430px;margin:0 auto;align-items:center}
.watch-player .watch-media-controls .watch-play{width:44px;height:44px;background:#edf8f7;box-shadow:none}
.watch-player .watch-media-controls .speed-trigger{width:100%;min-width:0;color:#eef6f8;font-size:12px;padding:0 4px}
.watch-player .watch-media-controls .watch-skip,.watch-player .watch-media-controls .icon-button{color:#edf6f8}
.watch-player.is-loading .watch-media-controls,.watch-player.is-error .watch-media-controls,.watch-player.is-embedded .watch-media-controls{display:none}
.watch-player.is-buffering .player-status{bottom:106px}
.watch-player .watch-options,.watch-player .watch-secondary-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;margin-top:9px}
.watch-player .watch-options .watch-find,.watch-player .watch-secondary-actions .watch-find{margin:0;padding:8px 9px;font-size:11px;min-height:44px}
.watch-mode{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;padding:8px 11px;border:1px solid #36525b;border-radius:12px;background:#1a3038;color:#bfdfdf;font-size:11px;white-space:nowrap}
.watch-mode svg{width:17px;height:17px;stroke-width:1.7}
.watch-mode[aria-pressed="true"]{color:#9ff6dc;border-color:#51dec966;background:#51dec913}
.watch-mode:disabled{opacity:.45}
.mode-note{flex-basis:100%;margin:0;text-align:center;color:#7997a0;font-size:10px;line-height:1.6}
.player-recommendations{padding:20px 22px 24px;border-top:1px solid #ffffff0a;background:#101a21}
.player-recommendations h2,.player-recommendations h3{font-size:16px;font-weight:600;margin:0 0 15px;line-height:1.4;letter-spacing:.2px}
.player-recommendation-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:16px 12px;overflow:visible;padding:4px 2px 14px}
.player-recommendation-grid>*{min-width:0;scroll-snap-align:start}
.player-recommendation{display:block;width:100%;padding:0;border:0;background:transparent;color:#d8e8eb;text-align:left;border-radius:12px}
.player-recommendation-poster{display:block;aspect-ratio:2/3;overflow:hidden;border-radius:11px;background:#1b3038}
.player-recommendation-poster img{display:block;width:100%;height:100%;object-fit:cover}
.player-recommendation>strong{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;font-size:12px;line-height:1.5;height:36px;font-weight:500;margin-top:9px}
.player-recommendation:hover{color:#b1f9e6}
.player-recommendation:focus-visible{outline:2px solid #80ead2;outline-offset:3px}
.player-recommendations .card-link h2{font-size:12px;line-height:1.5;height:36px;min-height:36px;margin:9px 0 4px;font-weight:500;letter-spacing:0}
.player-recommendations .card-meta{font-size:10px;line-height:16px;height:16px}
.player-recommendations .card-poster{border-radius:11px}
.player-recommendations .poster-remark{font-size:9px;left:8px;right:8px;bottom:8px}
.player-recommendations .loading-inline{color:var(--dim);font-size:12px;min-height:100px}
.watch-player:fullscreen .watch-controls{display:none}
.watch-player:fullscreen .player-recommendations{display:none}
.watch-player:fullscreen .watch-media-controls{padding-bottom:max(10px,env(safe-area-inset-bottom))}
.watch-player .speed-trigger{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:74px;height:44px;padding:0 8px;border:0;border-radius:12px;background:transparent;color:#d4e3e7;font-size:12px;white-space:nowrap}
.watch-player .speed-trigger:hover,.watch-player .speed-trigger[aria-expanded="true"]{background:#ffffff0b;color:var(--accent)}
.watch-player .speed-trigger-chevron{width:14px;height:14px;stroke-width:1.7}
.speed-sheet-backdrop{position:fixed;inset:0;z-index:180;display:flex;align-items:flex-end;justify-content:center;background:#030b1299;padding:20px;backdrop-filter:blur(5px)}
.speed-sheet{width:100%;max-width:430px;padding:22px 22px 24px;border:1px solid #ffffff16;border-radius:24px;background:#15252f;color:#edf7f6;box-shadow:0 20px 80px #0008;animation:speed-sheet-in .18s ease-out}
.speed-sheet-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}
.speed-sheet-header h2,.speed-sheet-header h3{margin:0;font-size:19px;font-weight:650;letter-spacing:.1px}
.speed-sheet-header .icon-button{width:38px;height:38px;min-width:38px;border:0;border-radius:50%;background:#ffffff0a;color:#b6cdd3}
.speed-sheet-header .icon-button svg{width:18px;height:18px}
.speed-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.speed-option{position:relative;display:flex;align-items:center;justify-content:center;gap:5px;min-height:62px;padding:12px 8px;border:1px solid #ffffff12;border-radius:14px;background:#ffffff04;color:#dcebee;font-size:17px;font-weight:500;font-variant-numeric:tabular-nums}
.speed-option:hover{background:#ffffff0b;border-color:#7dddc666}
.speed-option.is-selected{background:#51dec917;border-color:#59dfc7;color:#8df2d9;font-weight:650;box-shadow:inset 0 0 0 1px #59dfc733}
.speed-option-check{position:absolute;right:7px;top:7px;display:flex;align-items:center;justify-content:center;color:#7be8ce}
.speed-option-check svg{width:13px;height:13px;stroke-width:2.2}
.speed-option:focus-visible{outline:2px solid #a5f6e5;outline-offset:3px}
@keyframes speed-sheet-in{from{opacity:.5;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:640px){.speed-sheet-backdrop{padding:0;align-items:flex-end}.speed-sheet{max-width:none;border-radius:24px 24px 0 0;padding:22px 20px calc(24px + env(safe-area-inset-bottom))}.speed-sheet-header{margin-bottom:18px}.speed-option{min-height:64px}.speed-sheet-header .icon-button{width:44px;height:44px;min-width:44px}}
@media(max-width:640px){.watch-player .watch-media-controls{padding:22px 10px 5px}.watch-player .watch-media-controls .watch-timeline{gap:6px;font-size:9px}.watch-player .watch-media-controls .watch-timeline output{min-width:33px}.watch-player .watch-media-controls .watch-transport{gap:3px;grid-template-columns:44px 44px 44px minmax(42px,1fr) 44px 44px}.watch-player .watch-options,.watch-player .watch-secondary-actions{gap:4px}.watch-player .watch-mode{padding:7px 9px;font-size:10px}.watch-player .watch-controls{padding:12px 13px 17px}.watch-player.is-buffering .player-status{bottom:98px}}
@media(max-width:640px){.player-recommendations{padding:20px 16px 20px}.player-recommendations h2,.player-recommendations h3{font-size:15px;margin-bottom:12px}.player-recommendation-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px 11px;margin:0;padding:4px 2px 14px}.player-recommendations .card-link h2{font-size:11px;height:33px;min-height:33px}.player-recommendations .card-meta{display:none}}
@media(prefers-reduced-motion:reduce){.speed-sheet{animation:none}}

/* The video is the tap target; its chrome floats over the picture without moving layout. */
.watch-player .watch-media-controls{display:grid;grid-template-columns:1fr 1fr;grid-template-areas:"timeline timeline" "playback tuning";align-items:center;column-gap:12px;row-gap:0;transition:opacity .18s ease,visibility .18s ease}
.watch-player .watch-media-controls .watch-timeline{grid-area:timeline;min-width:0}
.watch-player .watch-media-controls .watch-transport{display:contents}
.watch-player .playback-actions,.watch-player .watch-playback-actions{grid-area:playback;display:flex;align-items:center;gap:4px;justify-content:flex-start}
.watch-player .tuning-actions,.watch-player .watch-tuning-actions{grid-area:tuning;display:flex;align-items:center;gap:4px;justify-content:flex-end}
.watch-player .watch-media-controls .speed-trigger{width:44px;flex:0 0 44px;padding:0}
.watch-player .watch-media-controls .speed-trigger>svg{width:21px;height:21px}
.watch-player .video-play-toggle{display:none;position:absolute;left:50%;top:50%;z-index:3;transform:translate(-50%,-50%);width:64px;height:64px;padding:0;align-items:center;justify-content:center;border:0;border-radius:50%;background:#50ddc6ed;color:#063a35;box-shadow:0 6px 26px #0003;cursor:pointer}
.watch-player .video-play-toggle svg{width:29px;height:29px;fill:currentColor;stroke-width:0;margin-left:3px}
.watch-player.is-paused.has-media:not(.is-error):not(.is-embedded) .video-play-toggle{display:flex}
.watch-player.is-chrome-hidden .watch-media-controls{opacity:0;visibility:hidden;pointer-events:none}
.watch-player.is-loading .watch-media-controls,.watch-player.is-error .watch-media-controls,.watch-player.is-embedded .watch-media-controls{display:none}
@media(min-width:640px) and (orientation:landscape){.watch-player .watch-media-controls{grid-template-columns:auto minmax(110px,1fr) auto;grid-template-areas:"playback timeline tuning";column-gap:16px;padding:28px 18px 12px}.watch-player .watch-media-controls .watch-timeline{gap:8px}.watch-player .watch-media-controls .watch-timeline output{min-width:39px}}
@media(prefers-reduced-motion:reduce){.watch-player .watch-media-controls{transition:none}}
@media(hover:none),(pointer:coarse),(max-width:640px){.card-link .card-play,.card-link:hover .card-play,.card-link:focus .card-play{display:none}.card-link:hover img{transform:none}}
.watch-player.is-chrome-hidden.is-buffering .player-status{bottom:14px}
html:has(body.overlay-open){overflow:hidden;scrollbar-gutter:auto}
.player-backdrop{overflow:hidden}
/* Keep transport in the picture and time jumps below it, including on phones. */
.watch-player .watch-media-controls{grid-template-columns:auto minmax(24px,1fr) auto;grid-template-areas:"playback timeline tuning";column-gap:10px;row-gap:0;padding:30px 15px 12px;background:linear-gradient(transparent,#03090eb8 52%,#03090ee8)}
.watch-player .watch-media-controls .watch-timeline{gap:8px;margin:0;font-size:11px;font-variant-numeric:tabular-nums}
.watch-player .watch-timeline input{order:0;min-width:24px;flex:1;height:40px}
.watch-player .watch-timeline #watch-elapsed{order:1;min-width:36px;text-align:right;color:#f4f8f8}
.watch-player .watch-timeline #watch-duration{display:none}
.watch-player .playback-actions,.watch-player .tuning-actions{gap:2px}
.watch-player .watch-media-controls .watch-play{width:42px;height:42px;border-radius:7px;background:#d9fff4e8;color:#063e39;box-shadow:none}
.watch-player .watch-media-controls .watch-play svg{width:23px;height:23px}
.watch-player .watch-media-controls .icon-button,.watch-player .watch-media-controls .speed-trigger{width:38px;height:42px;min-width:38px;flex:0 0 38px;border:0;border-radius:7px;background:transparent;padding:0;color:#f3f8f7}
.watch-player .watch-media-controls .icon-button svg,.watch-player .watch-media-controls .speed-trigger>svg{width:23px;height:23px}
.watch-player .watch-media-controls .icon-button:hover,.watch-player .watch-media-controls .speed-trigger:hover{background:#ffffff14}
.watch-player #watch-rate-label{display:none}
.watch-player .video-play-toggle{width:68px;height:68px;border:1px solid #ffffff70;background:#f4fffc29;color:#fff;backdrop-filter:blur(16px) saturate(135%);-webkit-backdrop-filter:blur(16px) saturate(135%);box-shadow:0 6px 24px #0002,inset 0 1px 1px #ffffff33}
.watch-player .video-play-toggle svg{width:29px;height:29px;filter:drop-shadow(0 1px 2px #0002)}
.watch-seek-steps{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 48px;gap:12px;margin:0 0 17px;align-items:stretch}
.seek-step-group{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid #c7d9de99;border-radius:10px;overflow:hidden}
.seek-step-group button{display:flex;align-items:center;justify-content:center;gap:4px;min-width:0;min-height:45px;padding:7px 5px;border:0;border-right:1px solid #c7d9de80;background:transparent;color:#e2efef;font-size:12px;font-weight:600;white-space:nowrap;font-variant-numeric:tabular-nums}
.seek-step-group button:last-child{border-right:0}
.seek-step-group button:hover{background:#ffffff0b}
.seek-step-group button:active{background:#51dec924}
.seek-step-group button:disabled{opacity:.32}
.watch-seek-steps .watch-mode{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;width:48px;min-height:45px;padding:3px 1px;border-color:#9ebfc388;border-radius:9px;background:#ffffff07;color:#dbecee;font-size:9px;line-height:1.1}
.watch-seek-steps .watch-mode svg{width:19px;height:19px}
.watch-seek-steps .watch-mode[aria-pressed="false"]{border-color:#51dec9;background:#51dec925;color:#83f1dc}
.watch-seek-steps .watch-mode[aria-pressed="true"]{border-color:#ffb464;background:#ff9d3526;color:#ffc58a}
.watch-player.is-buffering .player-status{bottom:70px}
@media(max-width:640px){.watch-player .watch-media-controls{column-gap:6px;padding:28px 10px 9px}.watch-player .watch-media-controls .watch-timeline{font-size:10px;gap:6px}.watch-player .watch-media-controls .watch-play{width:38px;height:40px}.watch-player .watch-media-controls .icon-button,.watch-player .watch-media-controls .speed-trigger{width:34px;height:40px;min-width:34px;flex-basis:34px}.watch-player .watch-media-controls .icon-button svg,.watch-player .watch-media-controls .speed-trigger>svg{width:21px;height:21px}.watch-player .watch-timeline #watch-elapsed{min-width:33px}.watch-seek-steps{gap:9px;margin-bottom:14px}.seek-step-group button{font-size:10px;min-height:44px;padding:7px 2px}.watch-player.is-buffering .player-status{bottom:65px}}
@media(max-width:340px){.watch-seek-steps{gap:6px}.watch-player .watch-media-controls{column-gap:4px;padding-left:7px;padding-right:7px}}
@media(orientation:landscape) and (max-height:500px){.player-backdrop{padding:0}.watch-player{width:100%;max-width:none;height:100dvh;max-height:100dvh;border:0;border-radius:0}.watch-player .player-header{height:52px;min-height:52px;padding:6px 12px}.watch-player .player-header .icon-button{width:38px;height:38px;min-width:38px}.watch-player .video-stage{height:calc(100dvh - 52px);min-height:0}.watch-player .video-stage:before{display:none}.watch-player .player-heading h2{font-size:13px}.watch-player .player-heading p{font-size:10px}}
.anime-secondary-filters{display:flex;flex-wrap:nowrap;gap:5px;align-items:center}
.anime-secondary-filters .secondary-chip{min-width:0;padding:9px 11px;white-space:nowrap}
@media(max-width:640px){.anime-secondary-filters{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:3px;padding:8px}.anime-secondary-filters .secondary-chip{width:100%;min-width:0;min-height:44px;padding:7px 2px;font-size:12px;text-align:center}}

@media(max-width:640px){.watch-player{border-radius:0;background:#101a21}.watch-player .player-header{min-height:64px;padding:10px 12px;gap:10px}.watch-player .player-header .icon-button{width:40px;height:40px;min-width:40px}.watch-player .player-heading h2{font-size:13px}.watch-player .player-heading p{font-size:10px}.watch-player .watch-controls{padding:8px 16px 18px}.watch-player .watch-transport{gap:10px;max-width:320px;margin-bottom:16px}.watch-player .player-status{padding:17px;gap:11px}.watch-player .player-status p{font-size:12px;line-height:1.75}.watch-player .player-status .button{font-size:11px;padding:9px 14px;min-height:40px}.watch-player .watch-episode-controls{border-radius:16px}.watch-player .watch-episode-controls .button{font-size:12px}.watch-player .player-extra,.watch-player .player-alternatives{padding:18px 16px}.watch-player .watch-note{font-size:9px}}
/* Mobile preferences: visible choices, stable geometry and shared icon rhythm. */
:root{--dim:#849ba5;--preference-selected:#51dec914;--preference-track:#0b171f;--preference-shadow:none;--brand-coral:#ef9385;--icon-sm:16px;--icon-md:20px;--icon-lg:24px}
:root[data-theme="light"]{--dim:#5c777e;--preference-selected:#e8f5f1;--preference-track:#edf3f2;--preference-shadow:0 1px 3px #173d4720;--brand-coral:#a8463d}
.app-icon,.bottom-nav .nav-link svg{stroke-width:1.75}
.settings-page{max-width:620px}
.settings-page .section-heading{margin-bottom:28px}
.settings-page .heading-copy p{font-size:13px;color:var(--muted);line-height:1.7}
.settings-group{margin-bottom:26px}
.settings-group>h2{margin:0 0 10px 3px;font-size:12px;line-height:1.5;font-weight:600;letter-spacing:.3px;color:var(--muted)}
.settings-list{border-radius:18px;background:var(--surface)}
.preference-setting{padding:18px}
.preference-setting+.preference-setting{border-top:1px solid var(--line)}
.preference-heading{display:flex;align-items:center;gap:10px;margin-bottom:14px}
.preference-heading h3{margin:0;font-size:15px;line-height:1.4;font-weight:600}
.setting-icon{width:36px;height:36px;border-radius:11px;background:var(--preference-selected);color:var(--accent)}
.setting-icon .app-icon{width:20px;height:20px}
.preference-heading .setting-icon{width:30px;height:30px;border-radius:9px}
.preference-heading .app-icon{width:18px;height:18px}
.language-options,.theme-options{display:grid;min-width:0;gap:8px}
.language-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;padding:4px;border-radius:14px;background:var(--preference-track)}
.theme-options{grid-template-columns:repeat(3,minmax(0,1fr))}
.preference-option{position:relative;display:flex;align-items:center;justify-content:center;min-width:0;min-height:48px;padding:11px 30px 11px 12px;border:1px solid transparent;border-radius:11px;background:transparent;color:var(--muted);font-size:14px;font-weight:500;line-height:1.4;transition:background-color .16s,border-color .16s,color .16s,box-shadow .16s;touch-action:manipulation}
.preference-label{min-width:0;overflow-wrap:anywhere}
.preference-option[aria-pressed="true"]{border-color:var(--accent);background:var(--surface);color:var(--ink);font-weight:600;box-shadow:var(--preference-shadow)}
.preference-check{position:absolute;right:10px;top:50%;display:flex;align-items:center;justify-content:center;width:17px;height:17px;border-radius:50%;background:var(--accent);color:var(--accent-ink);opacity:0;transform:translateY(-50%);pointer-events:none}
.preference-check .app-icon{width:11px;height:11px;stroke-width:2.2}
.preference-option[aria-pressed="true"] .preference-check{opacity:1}
.theme-option{flex-direction:column;gap:7px;min-height:88px;padding:12px 5px 10px;border-color:var(--line);border-radius:13px;color:var(--muted);font-size:13px}
.theme-option .preference-check{right:7px;top:7px;transform:none}
.theme-option[aria-pressed="true"]{background:var(--preference-selected);color:var(--ink);box-shadow:inset 0 0 0 1px var(--accent)}
.theme-swatch{display:flex;align-items:center;justify-content:center;width:36px;height:30px;border-radius:9px}
.theme-swatch .app-icon{width:22px;height:22px}
.theme-swatch--system{background:linear-gradient(90deg,#eaf0ef 50%,#243843 50%);color:var(--accent);border:1px solid #7b989d66}
.theme-swatch--light{background:#fff2d9;color:#96600f;border:1px solid #c8a06155}
.theme-swatch--dark{background:#20313d;color:#d8e8ee;border:1px solid #86a3b866}
.preference-help{margin:11px 0 0;color:var(--dim);font-size:12px;line-height:1.7}
.preference-option:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.preference-option:active{background:var(--preference-selected);box-shadow:inset 0 0 0 1px var(--accent)}
.setting-row{gap:12px;min-height:76px;padding:15px 17px}
.setting-copy{gap:4px}
.setting-copy strong{font-size:14px;font-weight:550;line-height:1.5;overflow-wrap:anywhere}
.setting-copy small{font-size:12px;line-height:1.6;color:var(--dim);overflow-wrap:anywhere}
.setting-value{font-size:12px;color:var(--dim)}
.setting-chevron{display:flex;align-items:center;justify-content:center;margin:0;color:var(--dim)}
.setting-chevron .app-icon{width:var(--icon-sm);height:var(--icon-sm)}
.setting-action--danger .setting-icon{background:#ff9a9610;color:var(--danger)}
.setting-action--danger:active{background:#ff9a9610}
.settings-footnote{margin:26px 0 0;color:var(--dim);font-size:12px}
.site-footer>span:first-child{white-space:nowrap;flex-shrink:0}
.bottom-nav .nav-link.is-active{color:var(--brand-coral)}
.bottom-nav .nav-link>span:not(.nav-count){font-size:11px}
.source-card-actions .button{min-height:44px;font-size:12px}
.source-card-actions .button .app-icon{width:18px;height:18px}
.source-card-actions .text-button{min-height:44px;padding:10px 4px;font-size:12px}
.source-card-heading>div{min-width:0}
.source-toggle{min-height:44px;padding:9px 11px;font-size:12px}
.source-form-modal .field-help{font-size:12px}
.source-form-modal .modal-close,.disclaimer-header .icon-button{width:44px;height:44px;min-width:44px}
@media(hover:hover) and (pointer:fine){.preference-option:not([aria-pressed="true"]):hover{background:var(--surface-hover);color:var(--ink);border-color:var(--line)}}
@media(max-width:640px){.settings-page .section-heading{margin-bottom:25px}.settings-page .heading-copy h1{font-size:26px;letter-spacing:-.4px}.settings-list{border-radius:17px}.preference-setting{padding:16px}.setting-row{min-height:76px;padding:15px 14px;gap:11px}.setting-copy strong{font-size:14px}.setting-copy small{font-size:12px}.setting-icon{width:35px;height:35px;border-radius:11px}.settings-group{margin-bottom:25px}.search-form input,.source-form-modal .field,.source-form-modal #source-endpoint{font-size:16px}}
@media(max-width:340px){.preference-setting{padding:14px}.theme-options{gap:6px}.theme-option{font-size:12px}.preference-option{padding-right:27px}.theme-option{padding:12px 4px 10px}.setting-row{padding:14px 12px;gap:9px}.setting-value{font-size:11px}.setting-copy strong{font-size:13px}.setting-copy small{font-size:11px}.preference-help{font-size:12px}}
@media(prefers-reduced-motion:reduce){.preference-option{transition:none}}
@media(forced-colors:active){.preference-option{border-color:CanvasText}.preference-option[aria-pressed="true"]{outline:2px solid Highlight;outline-offset:-3px}.preference-option[aria-pressed="true"] .preference-check{background:Highlight;color:HighlightText}}

/* Player polish: one picture toolbar, separate seeking and an unchanged episode flow. */
.watch-player{--player-panel:#101b22;--player-soft:#1a2c35;--player-line:#37515d;--player-ink:#eaf5f5;--player-muted:#a8bec6}
.watch-player .player-header{background:var(--player-panel);border-color:#28404c;color:var(--player-ink)}
.watch-player .player-header .icon-button{width:44px;height:44px;min-width:44px;border-color:#38515c;background:#ffffff07;color:var(--player-ink);border-radius:12px}
.watch-player .player-header .app-icon{width:20px;height:20px}
.watch-player .player-heading p{color:var(--player-muted)}
.watch-player .watch-controls{background:var(--player-panel);color:var(--player-ink)}
.watch-player .watch-media-controls .watch-play{width:44px;height:44px;min-width:44px;border:1px solid #ffffff20;border-radius:11px;background:#e4f4ef;color:#143a38}
.watch-player .watch-media-controls .watch-play .app-icon-play{fill:currentColor;stroke-width:0;width:24px;height:24px}
.watch-player .watch-media-controls .watch-play .app-icon-pause{width:21px;height:21px;stroke-width:2.4}
.watch-player .watch-media-controls .icon-button,.watch-player .watch-media-controls .speed-trigger{position:relative;width:44px;height:44px;min-width:44px;flex:0 0 44px;border-radius:10px;color:#edf6f6;touch-action:manipulation}
.watch-player .watch-media-controls .icon-button .app-icon,.watch-player .watch-media-controls .speed-trigger>.app-icon{width:22px;height:22px}
.watch-player .watch-media-controls .tuning-actions{gap:2px}
.watch-player .watch-media-controls .watch-timeline{color:#e0eeee;letter-spacing:0}
.watch-player .watch-media-controls .watch-timeline input{height:44px;touch-action:pan-y}
.watch-player .watch-media-controls .watch-mute[aria-pressed="true"],.watch-player .watch-media-controls .speed-trigger[aria-expanded="true"]{background:#51dec91d;color:#8beedb}
.watch-player #watch-rate-label{position:absolute;top:0;right:-1px;display:block;min-width:22px;padding:1px 3px;border-radius:5px;background:#e4f4ef;color:#143a38;font-size:9px;line-height:12px;font-weight:650;pointer-events:none}
.watch-player #watch-rate[data-rate="1"] #watch-rate-label{display:none}
.watch-player .video-play-toggle{background:#1b2d3b66;border:1px solid #ffffff70;color:#fff;box-shadow:0 8px 28px #00000024;backdrop-filter:blur(18px) saturate(130%);-webkit-backdrop-filter:blur(18px) saturate(130%)}
.watch-player .video-play-toggle .app-icon{filter:drop-shadow(0 1px 2px #0006)}
.watch-player .video-play-toggle:active{background:#ffffff40}
.watch-player .watch-media-controls button,.watch-player .player-header button,.seek-step-group button,.watch-mode,.watch-episode-controls .button{transition:background-color .14s,color .14s,border-color .14s;touch-action:manipulation}
.watch-player .watch-media-controls button:active{background:#ffffff25;color:#fff}
.watch-player .watch-media-controls .watch-play:active{background:#c5e9df;color:#143a38}
.seek-step-group{border-color:#809ba4;border-radius:11px;overflow:hidden;background:#ffffff03}
.seek-step-group button{min-height:46px;color:#e3eeee;font-size:12px;font-weight:550;border-color:#809ba46b}
.seek-step-group button:active{background:#51dec92b;color:#a1f6e5}
.seek-step-group button:focus-visible,.seek-step-group button.is-remote-focus{outline-offset:-4px!important}
.watch-seek-steps .watch-mode{min-height:46px;border-radius:11px;font-size:10px}
.watch-player .watch-episode-controls{background:var(--player-soft);border:1px solid #29434d;gap:4px;padding:4px;border-radius:15px}
.watch-player .watch-episode-controls .button{min-height:44px;border-radius:10px;color:#c9dce0}
.watch-player .watch-episode-controls [data-action="player-episodes"]{background:#36565e;color:#f1fbfa}
.watch-player .watch-episode-controls .button:disabled{opacity:.38}
.watch-player .watch-episode-controls .button:active{background:#4b7177}
.watch-player .watch-note{color:var(--player-muted);font-size:11px}
.watch-player .speed-option{min-height:48px;border-radius:12px}
.watch-player .speed-option[aria-pressed="true"]{box-shadow:inset 0 0 0 1px #51dec9}
:root[data-theme="light"] .watch-player .episode-button.active{background:#51dec9;border-color:#51dec9;color:#062e33}
.setting-action:active{background:var(--surface-hover)}
@media(hover:hover) and (pointer:fine){.seek-step-group button:not(:disabled):hover{background:#ffffff0e}.watch-player .player-header button:hover{background:#ffffff14}}
@media(max-width:640px){.watch-player .watch-media-controls{column-gap:5px;padding-left:8px;padding-right:8px}.watch-player .watch-media-controls .watch-timeline{font-size:10px;gap:5px}.watch-player .watch-media-controls .watch-timeline #watch-elapsed{min-width:32px}.watch-player .watch-media-controls .tuning-actions{gap:0}.seek-step-group button{font-size:11px}.watch-player .watch-controls{padding-top:10px}.watch-player .player-extra,.watch-player .player-alternatives{background:var(--player-panel);color:var(--player-ink)}}
@media(prefers-reduced-motion:reduce){.watch-player .watch-media-controls button,.watch-player .player-header button,.seek-step-group button,.watch-mode,.watch-episode-controls .button{transition:none}}
@media(hover:none){.setting-action:hover{background:transparent}.setting-action:active{background:var(--surface-hover)}.watch-player .watch-media-controls .icon-button:not([aria-pressed="true"]):hover,.watch-player .watch-media-controls .speed-trigger:not([aria-expanded="true"]):hover{background:transparent}.watch-player .watch-media-controls button:active{background:#ffffff25}.seek-step-group button:hover{background:transparent}.seek-step-group button:active{background:#51dec92b}}
@media(orientation:landscape) and (max-height:500px){.watch-player .player-header{height:56px;min-height:56px;padding:5px 12px}.watch-player .video-stage{height:calc(100dvh - 56px)}}
