.hidden{display:none!important}:root{--surface-base:oklch(8% .008 250);--surface-raised:oklch(14% .006 250);--text-primary:oklch(93% .008 250);--text-secondary:oklch(66% .008 250);--text-tertiary:oklch(50% .006 250);--accent:oklch(93% .008 250);--track:oklch(22% .005 250);--ease-out-expo:cubic-bezier(.16, 1, .3, 1);--ease-out-quart:cubic-bezier(.25, 1, .5, 1);--bar-h:3px;--bar-h-active:6px;--scrubber:16px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--fs-meta:.8125rem;--fs-body:.9375rem;--fs-heading:1.125rem;--fs-page:1.5rem;--fs-display:2.5rem;--radius-s:6px;--radius-m:12px;--radius-full:999px;--surface-tile:oklch(17% .006 250);--surface-menu:#000000c2;--surface-menu-solid:oklch(15% 0 0);--menu-blur:blur(18px) saturate(1.2);--menu-hairline:oklch(100% 0 0/.12);--hairline:oklch(100% 0 0/.1);--scrim:oklch(0% 0 0/.6);--gutter:clamp(24px, 3.2vw, 40px);--row-gap:clamp(12px, 1.6vw, 20px);--card-still:clamp(184px, 24vw, 264px);--card-poster:clamp(120px, 15.6vw, 172px);--episode-min:clamp(184px, 22vw, 260px);--episodes-header-h:68px;--dock-clearance:max(15vh, env(safe-area-inset-bottom,0px));--touch:48px;--player-icon:22px;--player-row:calc(var(--touch) + var(--space-2))}*{box-sizing:border-box;margin:0;padding:0}html,body{background:var(--surface-base);width:100%;height:100%;color:var(--text-primary);-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;-webkit-font-smoothing:antialiased;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,system-ui,sans-serif;overflow:hidden}#app{cursor:none;width:100%;height:100%;position:relative}#app.controls-visible{cursor:default}:where(button,[role=button],[role=slider]):focus-visible{outline-offset:3px;outline:2px solid oklch(93% .008 250)}#connection-status{z-index:100;min-height:var(--touch);color:var(--text-primary);letter-spacing:.02em;background:oklch(14% .01 250/.96);border:1px solid oklch(100% 0 0/.12);border-radius:999px;align-items:center;gap:10px;padding:0 18px;font-size:.875rem;display:flex;position:fixed;top:18px;right:22px;box-shadow:0 8px 24px oklch(0% 0 0/.28)}.connection-status-dot{background:oklch(72% .15 65);border-radius:50%;width:8px;height:8px}#player-container{width:100%;height:100%;position:absolute;inset:0}#player-container canvas,#player-container video,#player-container audio{object-fit:contain;position:absolute;inset:0;width:100%!important;height:100%!important}#player-container canvas[data-engine=mediabunny]{z-index:1}#player-container .playback-transition-frame{z-index:2;pointer-events:none;transition:opacity .18s var(--ease-out-quart)}#player-container .playback-transition-frame.leaving{opacity:0}#subtitle-overlay{top:auto;bottom:max(var(--subtitle-picture-inset,1rem), env(safe-area-inset-bottom));width:calc(var(--subtitle-picture-width,100vw) * .92);z-index:12;pointer-events:none;font-size:clamp(1rem, calc(var(--subtitle-picture-width,100vw) * .023), 1.5rem);flex-direction:column-reverse;align-items:center;gap:.25rem;display:flex;position:absolute;left:50%;transform:translate(-50%)}#app.controls-visible #subtitle-overlay{bottom:max(var(--subtitle-picture-inset,1rem), calc(var(--dock-clearance) + 6rem))}#subtitle-overlay:empty{display:none!important}.subtitle-track{color:#fff;width:fit-content;max-width:100%;font-family:Noto Sans,Noto Sans SC,sans-serif;font-size:inherit;font-synthesis:none;text-align:center;text-wrap:balance;overflow-wrap:anywhere;word-break:normal;line-break:strict;background:#000000a6;border-radius:.15em;padding:.15em .5em;font-weight:400;line-height:1.3;display:block}.subtitle-track:lang(zh),.subtitle-line:lang(zh){font-family:Noto Sans SC,PingFang SC,Microsoft YaHei,sans-serif}.subtitle-track:lang(ja),.subtitle-line:lang(ja){font-family:Noto Sans JP,Hiragino Kaku Gothic ProN,sans-serif}.subtitle-track:lang(ko),.subtitle-line:lang(ko){font-family:Noto Sans KR,Malgun Gothic,sans-serif}.subtitle-line:lang(en){font-family:Noto Sans,sans-serif}.subtitle-line{display:block}#btn-center-play{z-index:22;cursor:pointer;opacity:0;pointer-events:none;width:56px;height:56px;transition:opacity .25s var(--ease-out-quart), background-color .15s;-webkit-tap-highlight-color:transparent;background:#00000080;border:none;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}#app.controls-visible #btn-center-play,#btn-center-play:focus-visible,#btn-center-play.buffering{opacity:1;pointer-events:auto}#btn-center-play:active{background:#ffffff26}#btn-center-play svg{width:28px;height:28px}#btn-center-play #center-play{display:none}#btn-center-play #center-pause,#btn-center-play.paused #center-play{display:block}#btn-center-play.paused #center-pause,#btn-center-play.buffering #center-play,#btn-center-play.buffering #center-pause{display:none}#btn-center-play.buffering #center-spinner{display:block}#playback-notice{inset:auto var(--gutter) calc(var(--dock-clearance) + var(--space-7) + var(--player-row) + var(--space-4));z-index:24;width:fit-content;max-width:min(680px, calc(100% - 2 * var(--gutter)));padding:var(--space-2) var(--space-4);border-radius:var(--radius-m);color:oklch(93% .04 75);font-size:var(--fs-meta);text-align:center;overflow-wrap:anywhere;pointer-events:none;background:oklch(15% .02 70/.94);border:1px solid oklch(78% .13 75/.5);margin-inline:auto;line-height:1.4;position:absolute;box-shadow:0 10px 30px oklch(0% 0 0/.35)}#seek-indicator-left,#seek-indicator-right{z-index:15;opacity:0;pointer-events:none;font-size:var(--fs-heading);color:#fff;padding:var(--space-2) var(--space-4);border-radius:var(--radius-m);white-space:nowrap;background:#0000008c;font-weight:600;position:absolute;top:50%}#seek-indicator-left{left:20%;transform:translate(-50%,-50%)}#seek-indicator-right{right:20%;transform:translate(50%,-50%)}#seek-indicator-left.flash{animation:seek-flash-left 2s var(--ease-out-expo) forwards}#seek-indicator-right.flash{animation:seek-flash-right 2s var(--ease-out-expo) forwards}@keyframes seek-flash-left{0%{opacity:0;transform:translate(-50%,-50%)scale(1.3)}10%{opacity:.95;transform:translate(-50%,-50%)scale(1)}to{opacity:0;transform:translate(-50%,-50%)scale(.9)}}@keyframes seek-flash-right{0%{opacity:0;transform:translate(50%,-50%)scale(1.3)}10%{opacity:.95;transform:translate(50%,-50%)scale(1)}to{opacity:0;transform:translate(50%,-50%)scale(.9)}}#controls{z-index:20;opacity:0;pointer-events:none;transition:opacity .25s var(--ease-out-quart);flex-direction:column;justify-content:space-between;display:flex;position:absolute;inset:0}#app.controls-visible #controls,#controls:focus-within{opacity:1;pointer-events:auto}#controls-top{padding:var(--space-2) var(--gutter) var(--space-5) calc(var(--gutter) - (var(--touch) - var(--player-icon)) / 2);align-items:center;gap:var(--space-1);background:linear-gradient(oklch(0% 0 0/.6) 0%,oklch(0% 0 0/.25) 60%,#0000 100%);display:flex}#btn-back{appearance:none;color:var(--text-primary);cursor:pointer;border-radius:var(--radius-full);width:var(--touch);height:var(--touch);-webkit-tap-highlight-color:transparent;background:0 0;border:none;flex:none;justify-content:center;align-items:center;padding:0;transition:background-color .15s;display:flex}#btn-back svg{width:var(--player-icon);height:var(--player-icon)}#btn-back:hover{background:oklch(100% 0 0/.08)}#btn-back:active{background:oklch(100% 0 0/.14)}#media-title{font-size:var(--fs-body);letter-spacing:.02em;color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;max-width:60%;font-weight:500;overflow:hidden}#controls-bottom{padding:var(--space-6) var(--gutter) calc(var(--dock-clearance) + var(--space-2));background:linear-gradient(to top, oklch(0% 0 0/.72) 0%, oklch(0% 0 0/.5) calc(var(--dock-clearance) + var(--space-6)), transparent 100%)}#progress-wrap{cursor:pointer;touch-action:none;align-items:center;height:32px;display:flex;position:relative}#progress-bar{width:100%;height:var(--bar-h);background:var(--track);transition:height .15s var(--ease-out-quart);position:relative;overflow:hidden}#progress-wrap:hover #progress-bar,#progress-wrap.dragging #progress-bar{height:var(--bar-h-active)}#progress-played{background:var(--accent);width:0%;position:absolute;inset:0}#progress-scrubber{width:var(--scrubber);height:var(--scrubber);background:var(--text-primary);transition:transform .12s var(--ease-out-quart);pointer-events:none;border-radius:50%;position:absolute;top:50%;left:0%;transform:translate(-50%,-50%)scale(.7)}#progress-wrap:hover #progress-scrubber,#progress-wrap.dragging #progress-scrubber,#progress-wrap.seeking #progress-scrubber{transform:translate(-50%,-50%)scale(1)}#progress-wrap.seeking #progress-played{transition:width .18s var(--ease-out-quart)}#progress-wrap.seeking #progress-scrubber{transition:left .18s var(--ease-out-quart), transform .12s var(--ease-out-quart)}#progress-wrap.seeking #progress-scrubber:after{content:"";animation:seek-pending-pulse .9s var(--ease-out-quart) infinite;border:2px solid oklch(93% .008 250/.55);border-radius:50%;position:absolute;inset:-6px}@keyframes seek-pending-pulse{0%{opacity:.8;transform:scale(.72)}to{opacity:0;transform:scale(1.35)}}#controls-row{align-items:center;gap:var(--space-1);margin:var(--space-2) calc((var(--touch) - var(--player-icon)) / -2) 0;display:flex}#controls-row button{appearance:none;color:var(--text-primary);cursor:pointer;border-radius:var(--radius-full);width:var(--touch);height:var(--touch);background:0 0;border:none;flex:none;justify-content:center;align-items:center;padding:0;transition:background-color .15s;display:flex}#controls-row button:hover{background:oklch(100% 0 0/.08)}#controls-row button:active{background:oklch(100% 0 0/.14)}#controls-row button svg{width:var(--player-icon);height:var(--player-icon);display:block}#btn-volume #icon-vol-off,#btn-volume.muted #icon-vol-on{display:none}#btn-volume.muted #icon-vol-off{display:block}#time-display{font-size:var(--fs-meta);font-variant-numeric:tabular-nums;letter-spacing:.03em;padding:0 calc((var(--touch) - var(--player-icon)) / 2);height:var(--touch);white-space:nowrap;align-items:center;font-weight:500;display:inline-flex}#time-current{color:var(--text-primary)}#time-sep{color:var(--text-primary);margin:0 2px}#time-duration{color:var(--text-primary)}#controls-row #btn-live-edge{color:#ff3b30;letter-spacing:.08em;width:auto;height:32px;margin-left:8px;padding:0 4px;font-size:.75rem;font-weight:800}#btn-live-edge:before{content:"";background:currentColor;border-radius:50%;width:7px;height:7px;margin-right:6px;display:inline-block}#btn-live-edge:disabled{opacity:1}#controls-spacer{flex:1}#btn-subs.active{color:var(--accent)}#subs-panel,#audio-panel{right:var(--gutter);bottom:calc(var(--dock-clearance) + var(--space-2) + var(--player-row) + 32px + var(--space-2));z-index:25;max-height:min(360px, calc(100vh - var(--dock-clearance) - var(--player-row) - 32px - 96px));min-width:200px;max-width:calc(100vw - 2 * var(--gutter));padding:var(--space-1);border:1px solid var(--menu-hairline);border-radius:var(--radius-m);background:var(--surface-menu);-webkit-backdrop-filter:var(--menu-blur);backdrop-filter:var(--menu-blur);scrollbar-width:none;-ms-overflow-style:none;position:absolute;overflow:hidden auto;box-shadow:0 12px 32px oklch(0% 0 0/.45)}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){#subs-panel,#audio-panel{background:var(--surface-menu-solid)}}#subs-panel::-webkit-scrollbar{width:0;height:0;display:none}#audio-panel::-webkit-scrollbar{width:0;height:0;display:none}#subs-list button,#audio-list button{column-gap:var(--space-3);width:100%;min-height:var(--touch);padding:var(--space-1) var(--space-4) var(--space-1) var(--space-3);appearance:none;border-radius:var(--radius-s);color:var(--text-secondary);font-family:inherit;font-size:var(--fs-body);text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;grid-template-columns:16px 1fr;align-content:center;align-items:center;line-height:1.3;transition:background-color .1s;display:grid}#subs-list button:before,#audio-list button:before{content:"";grid-row:1/span 2;width:16px;height:16px}#subs-list button:hover,#audio-list button:hover{background:oklch(100% 0 0/.06)}#subs-list button:active,#audio-list button:active{background:oklch(100% 0 0/.12)}#subs-list button.active,#audio-list button.active{color:var(--text-primary)}#subs-list button.active:before,#audio-list button.active:before{background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z'/%3E%3C/svg%3E") 50%/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z'/%3E%3C/svg%3E") 50%/contain no-repeat}#subs-list button span,#audio-list button span,#audio-list button small{grid-column:2}#audio-list button small{font-size:var(--fs-meta);color:var(--text-tertiary)}#center-spinner{border:2.5px solid #ffffff26;border-top-color:#fffc;border-radius:50%;width:28px;height:28px;animation:.8s linear infinite spin;display:none}@keyframes spin{to{transform:rotate(360deg)}}#overlay{padding:var(--space-5) var(--gutter) calc(var(--space-5) + var(--dock-clearance));background:var(--surface-base);cursor:default;transition:opacity .35s var(--ease-out-quart);z-index:30;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}#overlay.hidden{opacity:0;pointer-events:none}#status-screen{text-align:center;max-width:560px}#status-text{font-size:var(--fs-heading);color:var(--text-secondary);overflow-wrap:anywhere;line-height:1.4}#status-actions{margin-top:var(--space-5);justify-content:center;align-items:center;gap:var(--space-3);display:flex}#status-actions button,.browse-button{appearance:none;min-width:148px;min-height:52px;padding:0 var(--space-5);border:1px solid var(--hairline);border-radius:var(--radius-full);color:var(--text-primary);font-family:inherit;font-size:var(--fs-body);cursor:pointer;transition:transform .1s var(--ease-out-quart), background-color .12s;-webkit-tap-highlight-color:transparent;background:oklch(100% 0 0/.08);font-weight:600;line-height:1}#status-actions #btn-take-over{background:var(--text-primary);color:var(--surface-base);border-color:#0000}#status-actions button:active,.browse-button:active{transform:scale(.97)}#pair-screen{z-index:6;padding:var(--space-5) var(--gutter) calc(var(--space-5) + var(--dock-clearance));background:var(--surface-base);justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.pair-body{align-items:center;gap:clamp(24px,5vw,56px);max-width:880px;display:flex}#pair-qr{aspect-ratio:1;width:min(42vh,280px);padding:var(--space-3);border-radius:var(--radius-m);background:#fff;flex:none}#pair-qr svg{width:100%;height:100%;display:block}.pair-text{gap:var(--space-3);flex-direction:column;max-width:400px;display:flex}#pair-title{margin-bottom:var(--space-1);font-size:var(--fs-page);font-weight:600;line-height:1.2}.pair-step{color:var(--text-secondary);font-size:1rem;line-height:1.5}.pair-step strong,#pair-url{color:var(--text-primary);font-weight:600}.pair-code{margin-block:var(--space-1);font-size:var(--fs-display);letter-spacing:.08em;font-variant-numeric:tabular-nums;color:var(--text-primary);font-weight:600;line-height:1.1}#pair-status{font-size:var(--fs-meta);color:var(--text-tertiary);line-height:1.4}@media (width<=640px){.pair-body{gap:var(--space-5);text-align:center;flex-direction:column}.pair-text{align-items:center}}#browse-screen{padding:var(--space-5) 0 var(--dock-clearance);overscroll-behavior:contain;scrollbar-width:none;position:absolute;inset:0;overflow-y:auto}#browse-screen::-webkit-scrollbar{display:none}#browse-screen.hidden{display:none}#browse-screen.episodes-open{padding-top:0}#browse-screen.episodes-open>.browse-section:not(#episodes-section){display:none}.browse-section{margin-bottom:var(--space-6)}.browse-section:last-child{margin-bottom:0}.browse-section.hidden{display:none}.browse-header{align-items:center;gap:var(--space-2);margin-bottom:var(--space-3);padding:0 var(--gutter);display:flex}.browse-header h1,.browse-header h2{min-width:0;color:var(--text-primary);margin-right:auto;font-weight:600;line-height:1.3}.browse-header h2{font-size:var(--fs-heading)}.browse-header button{appearance:none;min-width:var(--touch);min-height:var(--touch);margin-block:calc((24px - var(--touch)) / 2);border-radius:var(--radius-full);color:var(--text-secondary);cursor:pointer;transition:transform .1s var(--ease-out-quart), background-color .12s;-webkit-tap-highlight-color:transparent;background:0 0;border:0;flex:none;justify-content:center;align-items:center;padding:0;font-family:inherit;display:inline-flex}.browse-header button:active{background:oklch(100% 0 0/.1);transform:scale(.94)}.browse-header .section-done,.browse-header .queue-clear{display:none}.edit-mode .browse-header .section-done,.edit-mode .browse-header .queue-clear{display:inline-flex}.browse-header .section-done{padding:0 var(--space-4);color:var(--text-primary);font-size:var(--fs-body);background:oklch(100% 0 0/.1);font-weight:600}.episodes-header{z-index:3;height:var(--episodes-header-h);background:var(--surface-base);margin-bottom:0;position:sticky;top:0}.episodes-header h1{font-size:var(--fs-page);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}#eps-back{color:var(--text-primary);margin-left:-10px}#browse-screen.episodes-open #display-section{display:none}.display-scale{gap:var(--space-2);padding:0 var(--gutter);flex-wrap:wrap;display:flex}.display-scale button{appearance:none;min-width:64px;min-height:var(--touch);padding:0 var(--space-4);border:1px solid var(--hairline);border-radius:var(--radius-full);color:var(--text-secondary);font-family:inherit;font-size:var(--fs-body);font-variant-numeric:tabular-nums;cursor:pointer;-webkit-tap-highlight-color:transparent;background:oklch(100% 0 0/.06);transition:background-color .12s,color .12s}.display-scale button.active{background:var(--text-primary);color:var(--surface-base);border-color:#0000;font-weight:600}.display-scale button:active{transform:scale(.97)}.browse-row-wrap{position:relative}.browse-row{gap:var(--row-gap);padding:0 var(--gutter);scroll-padding-inline:var(--gutter);scroll-snap-type:x proximity;scroll-behavior:smooth;scrollbar-width:none;display:flex;overflow-x:auto}.browse-row::-webkit-scrollbar{display:none}.browse-arrow{display:none}@media (hover:hover) and (pointer:fine){.browse-arrow{z-index:2;width:56px;color:var(--text-primary);cursor:pointer;opacity:0;pointer-events:none;background:0 0;border:0;justify-content:center;align-items:center;padding:0;transition:opacity .15s;display:flex;position:absolute;top:0;bottom:3.5rem}.browse-arrow.left{left:0}.browse-arrow.right{right:0}.browse-arrow svg{width:40px;height:40px;padding:var(--space-2);background:var(--scrim);border-radius:50%}.browse-row-wrap:hover .browse-arrow{opacity:1;pointer-events:auto}.browse-arrow:active svg{transform:scale(.92)}}.browse-card{scroll-snap-align:start;-webkit-tap-highlight-color:transparent;flex:none;position:relative}.browse-card.still{width:var(--card-still)}.browse-card.poster{width:var(--card-poster)}.browse-card-thumb{z-index:2;pointer-events:none;aspect-ratio:16/9;margin-bottom:var(--space-2);border-radius:var(--radius-s);background:var(--surface-tile);transition:transform .14s var(--ease-out-quart), filter .14s var(--ease-out-quart);position:relative;overflow:hidden}.browse-card.poster .browse-card-thumb{aspect-ratio:2/3}.browse-card-thumb:after{content:"";border-radius:inherit;pointer-events:none;position:absolute;inset:0;box-shadow:inset 0 0 0 1px oklch(100% 0 0/.06)}.browse-card-thumb img{object-fit:cover;width:100%;height:100%;display:block}.browse-card-thumb-empty,.playlist-card-art{width:100%;height:100%;color:var(--text-tertiary);justify-content:center;align-items:center;display:flex}.browse-card-thumb-empty svg{opacity:.6}.playlist-card-art svg{width:32px;height:32px}.browse-card-title{-webkit-line-clamp:2;font-size:var(--fs-body);color:var(--text-primary);overflow-wrap:anywhere;-webkit-box-orient:vertical;line-height:1.3;display:-webkit-box;overflow:hidden}.browse-card-meta{font-size:var(--fs-meta);color:var(--text-tertiary);margin-top:2px;line-height:1.35}.browse-card-primary{z-index:1;appearance:none;border-radius:var(--radius-s);color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;padding:0;position:absolute;inset:0}.browse-card-primary:focus-visible{outline:2px solid var(--text-primary);outline-offset:4px}.browse-card:has(.browse-card-primary:active) .browse-card-thumb{filter:brightness(.8);transform:scale(.97)}.watched-badge{background:var(--scrim);border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;display:flex;position:absolute;top:6px;right:6px}.watched-badge svg{width:14px;height:14px;fill:var(--text-primary)}.card-progress{right:var(--space-2);bottom:var(--space-2);left:var(--space-2);border-radius:var(--radius-full);background:oklch(0% 0 0/.5);height:4px;position:absolute;overflow:hidden}.card-progress-fill{border-radius:inherit;background:var(--text-primary);height:100%}.card-action{z-index:4;pointer-events:auto;width:var(--touch);height:var(--touch);color:var(--text-primary);cursor:pointer;transition:transform .1s var(--ease-out-quart);-webkit-tap-highlight-color:transparent;background:oklch(0% 0 0/.72);border:0;border-radius:50%;justify-content:center;align-items:center;padding:0;display:none;position:absolute}.card-action svg{width:22px;height:22px}.card-action:active{transform:scale(.9)}.card-action-remove{top:6px;left:6px}.card-action-queue{bottom:6px;right:6px}:is(.edit-mode .card-action,.browse-card:has(:focus-visible) .card-action){display:flex}.edit-mode .browse-card-thumb img{filter:brightness(.7)}.browse-card.deleted .browse-card-thumb>:not(.browse-card-undo),.browse-card.deleted .browse-card-title,.browse-card.deleted .browse-card-meta{opacity:.3}.browse-card.deleted .card-action{display:none}.browse-card-undo{z-index:6;pointer-events:auto;appearance:none;color:var(--text-primary);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;padding:0;display:none;position:absolute;inset:0}.browse-card.deleted .browse-card-undo{display:flex}.browse-card-undo svg{width:28px;height:28px}.episodes-grid{padding:0 var(--gutter)}.season-header{top:var(--episodes-header-h);z-index:2;padding:var(--space-4) 0 var(--space-3);background:var(--surface-base);color:var(--text-secondary);font-size:var(--fs-body);font-weight:600;line-height:1.3;position:sticky}.season-header:first-child{padding-top:0}.season-grid{grid-template-columns:repeat(auto-fill, minmax(var(--episode-min), 1fr));gap:var(--space-5) var(--row-gap);display:grid}.season-grid .browse-card{width:auto}.browse-message{align-items:flex-start;gap:var(--space-4);padding:var(--space-5) 0;color:var(--text-secondary);font-size:var(--fs-body);flex-direction:column;line-height:1.4;display:flex}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}@media (width<=520px){#status-actions{flex-direction:column;width:min(280px,100vw - 40px);margin-inline:auto}#status-actions button{width:100%}}@media (height<=520px) and (orientation:landscape){#media-title{max-width:52%}#controls-bottom{padding-top:var(--space-4)}#subs-panel,#audio-panel{max-height:calc(100vh - var(--dock-clearance) - var(--player-row) - 32px - 48px)}}@media (prefers-reduced-transparency:reduce){#connection-status,#playback-notice,#subs-panel,#audio-panel,#controls-top,#controls-bottom{-webkit-backdrop-filter:none;backdrop-filter:none}#connection-status,#playback-notice{background:var(--surface-raised)}#subs-panel,#audio-panel{background:var(--surface-menu-solid)}}@media (prefers-contrast:more){:root{--text-primary:oklch(98% .004 250);--text-secondary:oklch(82% .006 250);--text-tertiary:oklch(68% .006 250);--track:oklch(40% .005 250)}:where(button,[role=button],[role=slider]):focus-visible{outline-width:3px}}#btn-tap-sound{top:max(var(--space-4), env(safe-area-inset-top));left:var(--gutter);z-index:25;min-height:40px;padding:0 var(--space-4) 0 var(--space-3);align-items:center;gap:var(--space-2);border:1px solid var(--menu-hairline);border-radius:var(--radius-full);background:var(--surface-menu);-webkit-backdrop-filter:var(--menu-blur);backdrop-filter:var(--menu-blur);color:var(--text-primary);font:500 var(--fs-meta)/1 system-ui, sans-serif;letter-spacing:.01em;cursor:pointer;transition:top .25s var(--ease-out-quart);animation:tap-sound-in .32s var(--ease-out-quart) both;-webkit-tap-highlight-color:transparent;display:flex;position:absolute;box-shadow:0 6px 18px oklch(0% 0 0/.3)}#btn-tap-sound svg{width:18px;height:18px}#app.controls-visible #btn-tap-sound{top:calc(var(--space-2) + var(--touch) + var(--space-3))}#btn-tap-sound:active{transform:scale(.97)}@keyframes tap-sound-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}#center-buffer{color:oklch(100% 0 0/.72);font-variant-numeric:tabular-nums;pointer-events:none;justify-content:center;align-items:center;font:500 .625rem/1 system-ui,sans-serif;display:none;position:absolute;inset:0}#btn-center-play.buffering #center-buffer:not(:empty){display:flex}#playback-error{top:calc(50% - var(--dock-clearance) / 2);z-index:32;width:min(380px, calc(100% - 2 * var(--gutter)));padding:var(--space-5) var(--space-5) var(--space-4);border:1px solid var(--menu-hairline);border-radius:var(--radius-m);background:var(--surface-menu);-webkit-backdrop-filter:var(--menu-blur);backdrop-filter:var(--menu-blur);text-align:center;position:absolute;left:50%;transform:translate(-50%,-50%);box-shadow:0 16px 40px oklch(0% 0 0/.45)}#playback-error-text{color:var(--text-primary);font-size:var(--fs-body);font-weight:500;line-height:1.45}.playback-error-actions{margin-top:var(--space-4);justify-content:center;gap:var(--space-3);display:flex}.playback-error-actions button{appearance:none;min-width:112px;min-height:var(--touch);padding:0 var(--space-5);border:1px solid var(--menu-hairline);border-radius:var(--radius-full);color:var(--text-primary);font:600 var(--fs-body)/1 system-ui, sans-serif;cursor:pointer;-webkit-tap-highlight-color:transparent;background:oklch(100% 0 0/.08)}#btn-playback-retry{background:var(--text-primary);color:var(--surface-base);border-color:#0000}.playback-error-actions button:active{transform:scale(.97)}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){#btn-tap-sound,#playback-error{background:var(--surface-menu-solid)}}@media (prefers-reduced-transparency:reduce){#btn-tap-sound,#playback-error{background:var(--surface-menu-solid);-webkit-backdrop-filter:none;backdrop-filter:none}}
