:root{color-scheme:dark;--bg:#000000;--bg-soft:#050506;--panel:rgb(16 18 22/0.72);--panel-strong:rgb(26 30 38/0.82);--panel-hover:rgb(36 42 52/0.9);--text:#f3f5fb;--muted:#9aa3b6;--line:rgb(255 255 255/0.09);--line-strong:rgb(255 255 255/0.16);--accent:#ffb43b;--accent-strong:#ffd166;--accent-2:#ff5d8f;--accent-3:#7c5cff;--danger:#ff6f5e;--ok:#57e3a0;--shadow:0 30px 80px -20px rgb(0 0 0/0.7);--glow:0 0 0 1px color-mix(in srgb,var(--accent) 28%,transparent),0 20px 60px -16px color-mix(in srgb,var(--accent) 42%,transparent);--radius:20px;--radius-sm:13px}*{box-sizing:border-box}@property --accent{syntax:"<color>";inherits:true;initial-value:#ffb43b}@property --accent-strong{syntax:"<color>";inherits:true;initial-value:#ffd166}@property --accent-2{syntax:"<color>";inherits:true;initial-value:#ff5d8f}.immersive,.roulette-shell{transition:--accent .36s ease,--accent-strong .36s ease,--accent-2 .36s ease}html{background:var(--bg)}body,html{margin:0;min-height:100%;color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;-webkit-font-smoothing:antialiased}body{position:relative;background:transparent}body:after,body:before{content:"";position:fixed;z-index:-1;pointer-events:none;filter:blur(90px);opacity:.5}body:before{inset:-24vh -16vw auto -16vw;height:60vh;background:radial-gradient(30% 42% at 8% 12%,rgb(124 92 255/.5),transparent 60%),radial-gradient(32% 40% at 94% 6%,rgb(255 93 143/.42),transparent 60%);animation:drift 26s ease-in-out infinite alternate}body:after{inset:auto -16vw -28vh -16vw;height:50vh;background:radial-gradient(30% 42% at 92% 96%,rgb(124 92 255/.38),transparent 60%),radial-gradient(28% 40% at 6% 98%,rgb(255 180 59/.3),transparent 62%);animation:drift 30s ease-in-out infinite alternate-reverse}@keyframes drift{0%{transform:translate3d(-4%,-2%,0) scale(1)}to{transform:translate3d(5%,3%,0) scale(1.12)}}button,input,select{font:inherit}a{color:var(--accent-strong);text-underline-offset:3px}a,button,select{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--accent-strong);outline-offset:3px}.app-shell{min-height:100vh;padding:24px;display:grid;place-items:center}.brand-bar{grid-column:1/-1;display:flex;align-items:center;gap:13px;padding:2px 4px 0}.brand-logo{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:linear-gradient(135deg,var(--accent-strong),var(--accent-2));color:#1a1206;box-shadow:var(--glow);flex:0 0 auto}.brand-text{display:flex;flex-direction:column;line-height:1.05}.brand-text strong{font-size:1.04rem;font-weight:800;letter-spacing:-.01em}.brand-text span{color:var(--muted);font-size:.76rem;font-weight:600}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.source-bar{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:4px;animation:rise .6s cubic-bezier(.22,1,.36,1) both;animation-delay:20ms}.app-name{margin-right:4px;font-size:1.02rem;font-weight:850;letter-spacing:-.01em;background:linear-gradient(135deg,var(--accent-strong),var(--accent-2));-webkit-background-clip:text;background-clip:text;color:transparent;white-space:nowrap}.media-toggle{display:inline-flex;gap:4px;padding:4px;border:1px solid var(--line-strong);border-radius:999px;background:rgb(255 255 255/.03)}.media-tab{display:inline-flex;align-items:center;gap:7px;min-height:36px;padding:0 15px;border:0;border-radius:999px;background:transparent;color:var(--muted);cursor:pointer;font-size:.88rem;font-weight:750;transition:background .16s ease,color .16s ease}.media-tab:hover:not(:disabled){color:var(--text)}.media-tab.active{background:linear-gradient(135deg,var(--accent-strong),var(--accent));color:#1a1206}.media-tab:disabled{cursor:not-allowed}.source-chips{display:flex;flex-wrap:wrap;gap:8px}.source-bar-end{margin-left:auto;display:flex;align-items:center}.autoplay-toggle{display:inline-flex;align-items:center;gap:9px;min-height:38px;padding:0 6px 0 4px;border:0;background:transparent;color:var(--muted);cursor:pointer;font-size:.84rem;font-weight:750;transition:color .16s ease}.autoplay-toggle.on{color:var(--text)}.autoplay-label{white-space:nowrap}.autoplay-switch{position:relative;flex:0 0 auto;width:42px;height:22px;border-radius:999px;background:rgb(255 255 255/.16);transition:background .2s ease}.autoplay-toggle.on .autoplay-switch{background:linear-gradient(135deg,var(--accent-strong),var(--accent))}.autoplay-knob{position:absolute;top:2px;left:2px;display:grid;place-items:center;width:18px;height:18px;border-radius:50%;background:#fff;color:#1a1206;transition:transform .22s cubic-bezier(.22,1,.36,1)}.autoplay-toggle.on .autoplay-knob{transform:translateX(20px)}.autoplay-toggle:focus-visible{outline:2px solid var(--accent-strong);outline-offset:3px;border-radius:999px}.source-chip{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;min-width:50px;padding:0 16px;border:1px solid var(--line);border-radius:999px;background:rgb(255 255 255/.03);color:var(--muted);cursor:pointer;font-size:.86rem;font-weight:700;transition:transform .16s cubic-bezier(.22,1,.36,1),background .16s ease,border-color .16s ease,color .16s ease}.source-chip:hover:not(:disabled){transform:translateY(-1px);color:var(--text);border-color:var(--line-strong)}.source-plex{--brand:#e5a00d;--on-brand:#1a1206}.source-netflix{--brand:#e50914;--on-brand:#ffffff}.source-disney{--brand:#0063e5;--on-brand:#ffffff}.source-prime{--brand:#00a8e1;--on-brand:#04222b}.source-appletv{--brand:#d2d4da;--on-brand:#15171c}.source-stream{--brand:#9aa3b6;--on-brand:#0c0e12}.source-dot{flex:0 0 auto;width:9px;height:9px;border-radius:50%;background:var(--brand,var(--muted));box-shadow:0 0 8px -1px var(--brand,transparent)}.source-logo{flex:0 0 auto;display:block}.source-chip .source-logo{color:color-mix(in srgb,var(--brand,var(--muted)) 78%,var(--muted));transition:color .16s ease,filter .16s ease}.source-chip:hover:not(:disabled) .source-logo{color:var(--brand,var(--text))}.source-chip.active{border-color:var(--brand,var(--accent));background:color-mix(in srgb,var(--brand,var(--accent)) 20%,transparent);color:color-mix(in srgb,var(--brand,var(--accent)) 72%,white)}.source-chip.active .source-logo{color:color-mix(in srgb,var(--brand,var(--accent)) 78%,white);filter:drop-shadow(0 0 6px color-mix(in srgb,var(--brand) 45%,transparent))}.source-chip.current{border-color:var(--brand,var(--accent));background:var(--brand,var(--accent));box-shadow:0 0 0 1px var(--brand,var(--accent)),0 8px 22px -8px color-mix(in srgb,var(--brand) 70%,transparent)}.source-chip.current .source-logo{color:var(--on-brand,#fff);filter:none}.source-chip.current:hover:not(:disabled) .source-logo{color:var(--on-brand,#fff)}.source-chip:disabled{cursor:not-allowed;opacity:.4}.source-chip.current:disabled{opacity:1}.source-badge{display:inline-flex;align-items:center;justify-content:center;margin-left:9px;padding:3px 9px;border-radius:999px;border:1px solid color-mix(in srgb,var(--brand,var(--line-strong)) 50%,var(--line-strong));background:color-mix(in srgb,var(--brand,transparent) 14%,rgb(255 255 255/.04));color:color-mix(in srgb,var(--brand,var(--text)) 82%,white)}.control-deck{grid-column:1/-1;position:relative;z-index:50;display:flex;flex-direction:column;gap:0;--filter-surface:#16191f;animation:rise .6s cubic-bezier(.22,1,.36,1) both;animation-delay:20ms}.deck-row{display:flex;align-items:center;gap:12px;min-width:0}.deck-top{margin-bottom:12px}.deck-top-end{margin-left:auto;display:flex;align-items:center}.deck-sources{position:relative;z-index:3;gap:10px;margin-bottom:12px}.deck-sources .source-chips{flex:1 1 auto;min-width:0;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none;padding-bottom:2px;scroll-snap-type:x proximity}.deck-sources .source-chips::-webkit-scrollbar{display:none}.deck-sources .source-chip{flex:0 0 auto;scroll-snap-align:start}.deck-sources .filter-toggle{flex:0 0 auto}.filter-toggle{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:6px;width:58px;min-height:40px;padding:0;border:1px solid transparent;border-radius:12px;background:linear-gradient(rgb(28 31 38),rgb(20 22 28)) padding-box,linear-gradient(160deg,rgb(255 255 255/.16),rgb(255 255 255/.04)) border-box;color:var(--text);cursor:pointer;box-shadow:0 6px 18px -10px rgb(0 0 0/.8),inset 0 1px 0 rgb(255 255 255/.06);transition:transform .16s cubic-bezier(.22,1,.36,1),background .2s ease,box-shadow .2s ease}.filter-toggle:hover{transform:translateY(-1px)}.filter-toggle.open{border:0;border-bottom-left-radius:0;border-bottom-right-radius:0;background:var(--filter-surface);box-shadow:none}.filter-toggle.open:after{content:"";position:absolute;left:0;right:0;top:calc(100% - 5px);height:24px;background:var(--filter-surface);transform-origin:top center;animation:foot-grow .36s cubic-bezier(.4,.9,.3,1) both}@keyframes foot-grow{0%{transform:scaleY(0)}to{transform:scaleY(1)}}.filter-toggle.open:hover{transform:none}.filter-toggle.open.has-active{box-shadow:none}.filter-toggle-icon{display:inline-grid;place-items:center;color:var(--accent)}.filter-toggle-caret{color:var(--muted);transition:transform .32s cubic-bezier(.22,1,.36,1)}.filter-toggle-caret.up{transform:rotate(180deg);color:var(--accent)}.filter-count{position:absolute;top:-7px;right:-7px;display:inline-grid;place-items:center;min-width:19px;height:19px;padding:0 5px;border-radius:999px;background:linear-gradient(135deg,var(--accent-strong),var(--accent));color:#160d02;font-size:.72rem;font-weight:900;border:2px solid var(--bg);box-shadow:0 0 12px -2px color-mix(in srgb,var(--accent) 70%,transparent)}.filter-toggle.has-active{box-shadow:0 6px 18px -10px rgb(0 0 0/.8),inset 0 1px 0 rgb(255 255 255/.06),0 0 0 1px color-mix(in srgb,var(--accent) 30%,transparent)}.filter-toggle.has-active .filter-toggle-icon{filter:drop-shadow(0 0 6px color-mix(in srgb,var(--accent) 55%,transparent))}.filter-collapsible{position:relative;z-index:1;display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .42s cubic-bezier(.32,.9,.3,1),opacity .24s ease}.control-deck.open .filter-collapsible{grid-template-rows:1fr;opacity:1}.filter-collapsible-inner{min-height:0;overflow:hidden}.control-deck.open .filter-collapsible-inner{overflow:visible;transition:overflow 0s .42s}.control-deck:not(.hydrated) .filter-collapsible{transition:none}.filter-bar{position:relative;z-index:2;display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:16px 16px 14px;border:0;border-radius:18px 0 18px 18px;background:var(--filter-surface);box-shadow:0 24px 60px -30px rgb(0 0 0/.85)}.filter-bar:before{content:"";position:absolute;top:-12px;right:58px;width:12px;height:12px;background:radial-gradient(circle at top left,transparent 11.3px,var(--filter-surface) 12px);pointer-events:none}.search-box{position:relative;display:flex;align-items:center;gap:8px;flex:1 1 220px;max-width:360px;min-height:42px;padding:0 12px;border:1px solid var(--line-strong);border-radius:999px;background:var(--panel);backdrop-filter:blur(20px) saturate(140%);-webkit-backdrop-filter:blur(20px) saturate(140%)}.search-box .search-icon{flex:0 0 auto;color:var(--muted)}.search-box input{flex:1 1 auto;min-width:0;min-height:0;padding:0;border:0;background:transparent;color:var(--text);font-size:.9rem;font-weight:650}.search-box input::placeholder{color:color-mix(in srgb,var(--muted) 75%,transparent)}.search-box input:focus{outline:none;box-shadow:none}.search-box input::-webkit-search-cancel-button{display:none}.search-clear{display:inline-grid;place-items:center;flex:0 0 auto;width:24px;height:24px;border:0;border-radius:50%;background:rgb(255 255 255/.08);color:var(--muted);cursor:pointer}.search-clear:hover{color:var(--text)}.search-menu{position:absolute;z-index:40;top:calc(100% + 8px);left:0;right:0;max-height:420px;overflow-y:auto;margin:0;padding:6px;list-style:none;border:1px solid var(--line-strong);border-radius:16px;background:rgb(10 12 16/.94);backdrop-filter:blur(24px) saturate(150%);-webkit-backdrop-filter:blur(24px) saturate(150%);box-shadow:var(--shadow);animation:rise .16s ease both}.search-status{padding:14px 12px;color:var(--muted);font-size:.88rem;text-align:center}.search-result{display:flex;align-items:center;gap:11px;width:100%;padding:7px 8px;border:0;border-radius:11px;background:transparent;color:var(--text);cursor:pointer;text-align:left;transition:background .12s ease}.search-result:hover,.search-thumb{background:rgb(255 255 255/.06)}.search-thumb{flex:0 0 auto;width:38px;height:57px;border-radius:6px;object-fit:cover}.search-thumb.placeholder{display:block}.search-meta{display:flex;min-width:0;flex-direction:column;gap:2px}.search-title{overflow:hidden;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.search-sub{color:var(--muted);font-size:.8rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.filter-chip{display:inline-flex;align-items:center;gap:8px;min-height:42px;padding:0 16px;border:1px solid var(--line-strong);border-radius:999px;background:var(--panel);backdrop-filter:blur(20px) saturate(140%);-webkit-backdrop-filter:blur(20px) saturate(140%);color:var(--muted);cursor:pointer;font-size:.9rem;font-weight:700;transition:transform .16s cubic-bezier(.22,1,.36,1),background .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease}.filter-chip svg{flex:0 0 auto}.filter-chip:hover:not(:disabled){transform:translateY(-2px);color:var(--text);border-color:color-mix(in srgb,var(--accent) 45%,var(--line-strong))}.filter-chip.active{border-color:transparent;background:linear-gradient(135deg,var(--accent-strong),var(--accent));color:#1a1206;box-shadow:var(--glow)}.filter-chip:disabled{cursor:not-allowed;opacity:.5}.score-select{position:relative}.score-trigger{display:inline-flex;align-items:center;gap:7px;min-height:42px;padding:0 14px;border:1px solid var(--line-strong);border-radius:999px;background:var(--panel);backdrop-filter:blur(20px) saturate(140%);-webkit-backdrop-filter:blur(20px) saturate(140%);color:var(--muted);cursor:pointer;font-size:.88rem;font-weight:700;transition:border-color .16s ease,color .16s ease}.score-trigger>svg:first-child{color:var(--accent)}.score-trigger:hover:not(:disabled){color:var(--text);border-color:color-mix(in srgb,var(--accent) 45%,var(--line-strong))}.score-trigger:disabled{cursor:not-allowed;opacity:.5}.score-trigger.has-value{border-color:color-mix(in srgb,var(--accent) 55%,var(--line-strong));color:var(--accent-strong)}.score-menu{position:absolute;z-index:30;top:calc(100% + 8px);left:0;width:248px;padding:16px;border:1px solid var(--line-strong);border-radius:16px;background:rgb(10 12 16/.92);backdrop-filter:blur(24px) saturate(150%);-webkit-backdrop-filter:blur(24px) saturate(150%);box-shadow:var(--shadow);animation:rise .16s ease both}.score-readout{display:flex;align-items:baseline;gap:7px;margin-bottom:12px;color:var(--muted);font-size:.86rem}.score-readout svg{align-self:center;color:var(--accent)}.score-readout strong{color:var(--accent-strong);font-size:1.4rem;font-weight:850;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.score-slider{width:100%;min-height:0;height:26px;padding:0;border:0;background:transparent;accent-color:var(--accent);cursor:pointer}.score-slider:focus{outline:none;box-shadow:none}.score-presets{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}.score-presets button{flex:1 1 auto;min-height:34px;padding:0 10px;border:1px solid var(--line-strong);border-radius:9px;background:rgb(255 255 255/.04);color:var(--muted);cursor:pointer;font-size:.82rem;font-weight:750;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;transition:background .14s ease,color .14s ease,border-color .14s ease}.score-presets button:hover{color:var(--text)}.score-presets button.active{border-color:transparent;background:linear-gradient(135deg,var(--accent-strong),var(--accent));color:#1a1206}.filter-genre{margin-left:auto}.genre-select{position:relative}.genre-trigger{display:inline-flex;align-items:center;gap:9px;min-height:42px;min-width:190px;padding:0 14px;border:1px solid var(--line-strong);border-radius:999px;background:var(--panel);backdrop-filter:blur(20px) saturate(140%);-webkit-backdrop-filter:blur(20px) saturate(140%);color:var(--text);cursor:pointer;font-size:.9rem;font-weight:700;transition:border-color .16s ease,background .16s ease}.genre-trigger:hover:not(:disabled){border-color:color-mix(in srgb,var(--accent) 45%,var(--line-strong))}.genre-trigger:disabled{cursor:not-allowed;opacity:.5}.genre-trigger .genre-value{flex:1 1 auto;text-align:left;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.genre-trigger>svg:first-child{flex:0 0 auto;color:var(--accent)}.genre-caret{flex:0 0 auto;color:var(--muted);transition:transform .2s ease}.genre-caret.up{transform:rotate(180deg)}.genre-menu{position:absolute;z-index:30;top:calc(100% + 8px);right:0;left:0;max-height:340px;overflow-y:auto;margin:0;padding:6px;list-style:none;border:1px solid var(--line-strong);border-radius:16px;background:rgb(10 12 16/.9);backdrop-filter:blur(24px) saturate(150%);-webkit-backdrop-filter:blur(24px) saturate(150%);box-shadow:var(--shadow);animation:rise .16s ease both}.genre-option{display:flex;align-items:center;justify-content:flex-start;gap:11px;width:100%;min-height:40px;padding:0 12px;border:0;border-radius:10px;background:transparent;color:var(--text);cursor:pointer;font-size:.9rem;font-weight:600;text-align:left;transition:background .12s ease,color .12s ease}.genre-check{display:inline-grid;place-items:center;flex:0 0 auto;width:19px;height:19px;border:1.5px solid var(--line-strong);border-radius:6px;color:#1a1206}.genre-check[data-checked=true]{border-color:transparent;background:linear-gradient(135deg,var(--accent-strong),var(--accent))}.genre-trigger.has-value{border-color:color-mix(in srgb,var(--accent) 55%,var(--line-strong))}.genre-trigger.has-value .genre-value{color:var(--accent-strong)}.genre-option:hover{background:rgb(255 255 255/.06)}.genre-option.active{color:var(--accent-strong);font-weight:800}.genre-option svg{flex:0 0 auto;color:var(--accent)}.country-flag{flex:0 0 auto;width:1.35em;margin-left:-2px;font-size:1.05rem;line-height:1;text-align:center}.client-control-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.icon-button{display:inline-grid;place-items:center;width:32px;height:32px;border:1px solid var(--line-strong);border-radius:9px;background:rgb(255 255 255/.04);color:var(--muted);cursor:pointer;transition:transform .2s ease,color .16s ease,border-color .16s ease}.icon-button:hover:not(:disabled){color:var(--text);border-color:color-mix(in srgb,var(--accent) 45%,var(--line-strong))}.icon-button:hover:not(:disabled) svg{transform:rotate(90deg);transition:transform .3s cubic-bezier(.22,1,.36,1)}.icon-button:disabled{cursor:not-allowed;opacity:.5}.field-hint{margin:8px 0 0;color:var(--muted);font-size:.8rem;line-height:1.45}.delete-link{display:inline-flex;align-self:flex-start;align-items:center;gap:7px;padding:6px 4px;border:0;background:transparent;color:var(--muted);cursor:pointer;font-size:.82rem;font-weight:650;transition:color .16s ease}.delete-link:hover:not(:disabled){color:var(--danger)}.delete-link:disabled{cursor:not-allowed;opacity:.5}.watchlist-tabs{display:inline-flex;gap:4px;padding:4px;border:1px solid var(--line);border-radius:999px;background:rgb(255 255 255/.03)}.watchlist-tab{display:inline-flex;align-items:center;gap:8px;min-height:34px;padding:0 14px;border:0;border-radius:999px;background:transparent;color:var(--muted);cursor:pointer;font-size:.86rem;font-weight:700;transition:background .16s ease,color .16s ease}.watchlist-tab:hover{color:var(--text)}.watchlist-tab.active{background:linear-gradient(135deg,var(--accent-strong),var(--accent));color:#1a1206}.tab-count{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:rgb(0 0 0/.18);font-size:.74rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.watchlist-tab:not(.active) .tab-count{background:rgb(255 255 255/.08)}@media (max-width:560px){.filter-genre{margin-left:0;width:100%}.genre-select,.genre-trigger{width:100%}}.roulette-shell{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,420px);grid-template-rows:auto auto minmax(0,1fr) auto;grid-gap:18px;gap:18px;width:100%;max-width:100%;overflow-x:clip;min-height:100vh;padding:22px;align-content:stretch}.movie-panel,.player-area,.setup-card,.watchlist-panel{position:relative;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);backdrop-filter:blur(20px) saturate(140%);-webkit-backdrop-filter:blur(20px) saturate(140%);box-shadow:var(--shadow);animation:rise .6s cubic-bezier(.22,1,.36,1) both}.movie-panel{animation-delay:80ms}.watchlist-panel{animation-delay:.16s}@keyframes rise{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.player-area{display:flex;flex-direction:column;overflow:hidden;min-height:440px;background:#050607;box-shadow:var(--shadow),inset 0 0 0 1px rgb(255 255 255/.04)}.fullscreen-toggle{position:absolute;z-index:5;top:14px;right:14px;display:inline-grid;place-items:center;width:38px;height:38px;border:1px solid var(--line-strong);border-radius:11px;background:rgb(8 9 12/.6);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:var(--text);cursor:pointer;opacity:0;transition:opacity .2s ease,background .16s ease,transform .16s ease}.fullscreen-toggle:focus-visible,.player-area:hover .fullscreen-toggle{opacity:1}.fullscreen-toggle:hover:not(:disabled){background:rgb(20 22 28/.8);transform:translateY(-1px)}.fullscreen-toggle:disabled{cursor:not-allowed}.immersive{position:fixed;top:0;left:0;width:100vw;height:100vh;height:100dvh;z-index:100;background:#000;overflow:hidden;cursor:default}.immersive.controls-visible{cursor:auto}.immersive-player{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}.immersive-catcher{position:absolute;inset:0;z-index:1;cursor:auto}.immersive-player .trailer-empty,.immersive-player .trailer-frame,.immersive-player .trailer-frame iframe{position:absolute;inset:0;width:100%;height:100%;min-height:0}@media (pointer:coarse) and (orientation:landscape) and (max-height:600px){.immersive-player .trailer-frame{inset:auto;top:50%;left:50%;transform:translate(-50%,-50%);width:max(100vw,calc(100vh * 16 / 9));height:max(100vh,calc(100vw * 9 / 16));width:max(100vw,calc(100dvh * 16 / 9));height:max(100dvh,calc(100vw * 9 / 16))}}.immersive-actions,.immersive-top{position:absolute;z-index:2;opacity:0;transform:translateY(-8px);transition:opacity .26s ease,transform .26s ease;pointer-events:none}.immersive-actions{transform:translateY(8px)}.immersive.controls-visible .immersive-actions,.immersive.controls-visible .immersive-top{opacity:1;transform:translateY(0);pointer-events:none}.immersive.controls-visible .immersive-actions button,.immersive.controls-visible .immersive-exit{pointer-events:auto}.immersive-top{top:0;left:0;right:0;display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:22px 24px;background:linear-gradient(180deg,rgb(0 0 0/.72),transparent)}.immersive-title{display:flex;align-items:center;flex-wrap:wrap;gap:11px;min-width:0}.immersive-title strong{font-size:1.3rem;font-weight:800;letter-spacing:-.01em}.immersive-year{color:var(--muted);font-weight:700}.immersive-source{justify-content:center;padding:4px 11px;border-radius:999px;border:1px solid color-mix(in srgb,var(--brand,var(--line-strong)) 50%,var(--line-strong));background:color-mix(in srgb,var(--brand,transparent) 16%,rgb(255 255 255/.05));color:color-mix(in srgb,var(--brand,var(--accent-strong)) 82%,white)}.immersive-source,.search-source{display:inline-flex;align-items:center}.search-source{vertical-align:-2px;color:color-mix(in srgb,var(--brand,var(--muted)) 82%,white)}.immersive-exit{display:inline-grid;place-items:center;flex:0 0 auto;width:44px;height:44px;border:1px solid var(--line-strong);border-radius:13px;background:rgb(8 9 12/.6);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:var(--text);cursor:pointer;transition:background .16s ease}.immersive-exit:hover{background:rgb(24 26 32/.85)}.immersive-actions{bottom:0;left:0;right:0;display:flex;flex-wrap:wrap;justify-content:center;gap:12px;padding:26px 24px 32px;background:linear-gradient(0deg,rgb(0 0 0/.78),transparent)}.immersive-actions button{display:inline-flex;align-items:center;gap:9px;min-height:50px;padding:0 22px;border:1px solid var(--line-strong);border-radius:999px;background:rgb(18 20 26/.82);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);color:var(--text);cursor:pointer;font-size:.96rem;font-weight:750;transition:transform .16s cubic-bezier(.22,1,.36,1),background .16s ease}.immersive-actions button:hover:not(:disabled){transform:translateY(-2px);background:rgb(30 33 41/.9)}.immersive-actions .cta{border-color:transparent;background:linear-gradient(135deg,var(--accent-strong),var(--accent) 55%,var(--accent-2));color:#1a1206;box-shadow:var(--glow)}.immersive-actions button:disabled{cursor:not-allowed;opacity:.5}.player-area:after{content:"";position:absolute;inset:0;border-radius:var(--radius);pointer-events:none;box-shadow:inset 0 1px 0 0 rgb(255 255 255/.08)}.trailer-empty,.trailer-frame{display:flex;flex:1 1 auto;width:100%;min-height:440px}.trailer-frame{position:relative}.trailer-frame iframe{display:block;flex:1 1 auto;width:100%;height:100%;min-height:440px;border:0;background:#050605}.trailer-facade{position:absolute;inset:0;z-index:3;display:grid;place-items:center;width:100%;height:100%;padding:0;border:0;background:#050605;cursor:pointer;overflow:hidden}.facade-poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.facade-play{position:relative;z-index:1;display:grid;place-items:center;width:78px;height:78px;padding-left:4px;border-radius:50%;color:#0c0e12;background:rgb(255 255 255/.92);box-shadow:0 12px 40px -8px rgb(0 0 0/.6);transition:transform .2s cubic-bezier(.22,1,.36,1),background .2s ease}.trailer-facade:after{content:"";position:absolute;inset:0;background:radial-gradient(60% 60% at 50% 50%,transparent 40%,rgb(0 0 0/.28));pointer-events:none}.trailer-facade:hover .facade-play{transform:scale(1.07);background:#fff}.trailer-empty{display:grid;place-items:center;grid-gap:18px;gap:18px;padding:28px;color:var(--muted);text-align:center;background:radial-gradient(60% 60% at 50% 40%,rgb(124 92 255/.12),transparent 70%),#070809}.trailer-empty p{margin:0;font-size:1.02rem}.reel{width:64px;height:64px;border-radius:50%;border-left:3px solid rgb(255 255 255/.1);border-bottom:3px solid rgb(255 255 255/.1);border-top:3px solid rgb(255 255 255/.1);border-top-color:var(--accent);border-right:3px solid rgb(255 255 255/.1);border-right-color:var(--accent-2);animation:spin 1.4s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.trailer-noresult{gap:16px;padding:40px 28px}.noresult-icon{display:grid;place-items:center;width:64px;height:64px;border-radius:50%;color:var(--accent);background:color-mix(in srgb,var(--accent) 14%,transparent);border:1px solid color-mix(in srgb,var(--accent) 32%,transparent)}.noresult-copy{display:grid;grid-gap:6px;gap:6px;max-width:30rem}.noresult-copy h3{margin:0;font-size:1.18rem;font-weight:800;color:var(--text);letter-spacing:-.01em}.noresult-copy p{margin:0;font-size:.94rem;line-height:1.5;color:var(--muted)}.noresult-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:4px}.noresult-reset,.noresult-retry{display:inline-flex;align-items:center;gap:8px;min-height:42px;padding:0 18px;border-radius:999px;font-size:.9rem;font-weight:700;cursor:pointer;transition:transform .16s cubic-bezier(.22,1,.36,1),background .16s ease,border-color .16s ease}.noresult-reset{border:0;color:#1a1206;background:linear-gradient(135deg,var(--accent-strong),var(--accent));box-shadow:0 10px 30px -12px color-mix(in srgb,var(--accent) 70%,transparent)}.noresult-retry{border:1px solid var(--line-strong);background:rgb(255 255 255/.04);color:var(--text)}.noresult-reset:hover,.noresult-retry:hover{transform:translateY(-1px)}.noresult-retry:hover{border-color:color-mix(in srgb,var(--accent) 45%,var(--line-strong))}.movie-panel{display:flex;min-width:0;flex-direction:column;justify-content:space-between;gap:20px;padding:26px}.movie-copy{min-width:0}.movie-panel h1,.setup-card h1{overflow-wrap:break-word;margin:0;font-size:clamp(2rem,4.4vw,3.4rem);font-weight:850;line-height:.98;letter-spacing:-.02em;background:linear-gradient(180deg,#ffffff 30%,#c8cede);-webkit-background-clip:text;background-clip:text;color:transparent}.eyebrow{display:inline-flex;align-items:center;gap:7px;margin:0 0 12px;color:var(--accent);font-size:.72rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.eyebrow:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--accent);box-shadow:0 0 10px 1px var(--accent);animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.35}}.inline-status,.movie-summary,.movie-year,.muted,.setup-card p{color:var(--muted)}.movie-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:14px 0 0}.movie-runtime,.movie-year{display:inline-block;padding:4px 11px;border:1px solid var(--line-strong);border-radius:999px;color:var(--text);font-size:.82rem;font-weight:700;background:rgb(255 255 255/.04)}.movie-runtime{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.movie-rating{display:inline-flex;align-items:center;gap:4px;padding:4px 11px;border:1px solid color-mix(in srgb,var(--accent) 40%,var(--line-strong));border-radius:999px;color:var(--accent-strong);font-size:.82rem;font-weight:800;background:color-mix(in srgb,var(--accent) 12%,transparent);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.movie-genres{margin:12px 0 0}.immersive-genres,.movie-genres{color:var(--muted);font-size:.86rem;font-weight:650}.movie-summary{display:-webkit-box;overflow:hidden;margin:18px 0 0;line-height:1.6;-webkit-box-orient:vertical;-webkit-line-clamp:7}.field-label{display:block;margin:0 0 8px;color:var(--muted);font-size:.8rem;font-weight:700;letter-spacing:.02em}input,select{width:100%;min-height:46px;border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:rgb(10 12 16/.65);color:var(--text);padding:11px 13px;transition:border-color .16s ease,box-shadow .16s ease}input:focus,select:focus{border-color:color-mix(in srgb,var(--accent) 60%,transparent);box-shadow:0 0 0 3px rgb(255 180 59/.15);outline:none}select:disabled{cursor:not-allowed;opacity:.6}input::placeholder{color:color-mix(in srgb,var(--muted) 65%,transparent)}.actions{display:grid;grid-template-columns:1fr 1fr;grid-gap:11px;gap:11px}.actions button{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:50px;min-width:0;border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:rgb(255 255 255/.05);color:var(--text);cursor:pointer;font-size:.96rem;font-weight:750;line-height:1.1;transition:transform .16s cubic-bezier(.22,1,.36,1),background .16s ease,border-color .16s ease,box-shadow .16s ease,opacity .16s ease}.actions button span{min-width:0;overflow-wrap:anywhere}.actions button svg{flex:0 0 auto;transition:transform .3s cubic-bezier(.22,1,.36,1)}.actions button:hover:not(:disabled){border-color:var(--line-strong);background:var(--panel-hover);transform:translateY(-2px)}.actions button:active:not(:disabled){transform:translateY(0) scale(.98)}.actions button:first-child:hover:not(:disabled) svg{transform:rotate(180deg)}.actions .cta{grid-column:1/-1;border-color:transparent;background:linear-gradient(135deg,var(--accent-strong),var(--accent) 55%,var(--accent-2));color:#1a1206;box-shadow:var(--glow)}.actions .cta:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 0 0 1px rgb(255 180 59/.25),0 26px 70px -16px rgb(255 180 59/.5)}.actions .cta:hover:not(:disabled) svg{transform:scale(1.15)}.actions button.watched{border-color:color-mix(in srgb,var(--ok) 45%,var(--line-strong));background:color-mix(in srgb,var(--ok) 16%,transparent);color:var(--ok);opacity:1}.actions button.watched:disabled{opacity:1}.actions button:disabled{cursor:not-allowed;opacity:.45}.status{border:1px solid var(--line);border-radius:var(--radius-sm);padding:13px 14px;line-height:1.45;font-size:.92rem}.status p{margin:0 0 8px}.status p:last-child{margin-bottom:0}.status.ok{border-color:color-mix(in srgb,var(--ok) 40%,transparent);background:color-mix(in srgb,var(--ok) 14%,transparent)}.status.warn{border-color:color-mix(in srgb,var(--danger) 40%,transparent);background:color-mix(in srgb,var(--danger) 14%,transparent)}.watchlist-panel{grid-column:1/-1;padding:22px 24px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.section-heading h2{margin:0;font-size:1.3rem;font-weight:800;letter-spacing:-.01em}.watchlist-panel .eyebrow{margin-bottom:0}.watchlist-panel ul{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(230px,100%),1fr));grid-gap:10px;gap:10px;margin:18px 0 0;padding:0;list-style:none}.watchlist-panel li{position:relative;display:flex;min-width:0;align-items:center;gap:12px;border:1px solid var(--line);border-left:3px solid color-mix(in srgb,var(--brand,var(--accent)) 70%,transparent);border-radius:var(--radius-sm);background:linear-gradient(90deg,color-mix(in srgb,var(--brand,var(--accent)) 12%,transparent),rgb(255 255 255/.04) 38%);padding:9px;transition:transform .16s cubic-bezier(.22,1,.36,1),border-color .16s ease,background .16s ease}.watchlist-panel li:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--brand,var(--accent)) 45%,var(--line));border-left-color:var(--brand,var(--accent));background:linear-gradient(90deg,color-mix(in srgb,var(--brand,var(--accent)) 22%,transparent),rgb(255 255 255/.07) 42%)}.watchlist-open{display:flex;flex:1 1 auto;min-width:0;align-items:center;gap:12px;padding:0;border:0;background:transparent;color:inherit;cursor:pointer;text-align:left}.watchlist-open:disabled{cursor:not-allowed}.watchlist-open:hover:not(:disabled) .watchlist-title{color:color-mix(in srgb,var(--brand,var(--accent)) 80%,#ffffff)}.watchlist-thumb{flex:0 0 auto;width:46px;height:69px;border-radius:8px;object-fit:cover;background:rgb(255 255 255/.06)}.watchlist-thumb.placeholder{display:block;background:radial-gradient(60% 60% at 50% 40%,rgb(124 92 255/.2),transparent 70%),rgb(255 255 255/.05)}.watchlist-meta{display:flex;min-width:0;flex:1 1 auto;flex-direction:column;gap:3px}.watchlist-remove{display:inline-grid;place-items:center;flex:0 0 auto;width:30px;height:30px;border:1px solid var(--line);border-radius:9px;background:transparent;color:var(--muted);cursor:pointer;transition:color .16s ease,border-color .16s ease,background .16s ease}.watchlist-remove:hover:not(:disabled){color:var(--danger);border-color:color-mix(in srgb,var(--danger) 50%,var(--line));background:color-mix(in srgb,var(--danger) 12%,transparent)}.watchlist-remove:disabled{cursor:not-allowed;opacity:.5}.watchlist-title{min-width:0;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow-wrap:anywhere;font-weight:650;line-height:1.25}.watchlist-panel small{flex:0 0 auto;color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.inline-status{position:absolute;left:18px;bottom:18px;display:inline-flex;align-items:center;gap:9px;width:-moz-fit-content;width:fit-content;max-width:calc(100% - 36px);margin:0;border:1px solid var(--line-strong);border-radius:999px;background:rgb(8 9 12/.78);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);padding:9px 15px 9px 13px;color:var(--text);font-size:.88rem;font-weight:600;overflow-wrap:anywhere;animation:rise .3s ease both}.inline-status:before{content:"";flex:0 0 auto;width:9px;height:9px;border-radius:50%;background:var(--accent);box-shadow:0 0 10px 1px var(--accent);animation:pulse 1.2s ease-in-out infinite}.setup-card{width:min(640px,calc(100vw - 48px));max-width:100%;padding:30px}.setup-card p{margin:14px 0 0;line-height:1.6}.setup-card ul{margin:12px 0 0;padding-left:20px}.setup-card li{margin:6px 0;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:.92rem;overflow-wrap:normal;white-space:nowrap}.setup-wizard{width:min(860px,calc(100vw - 48px))}.setup-steps{display:grid;grid-gap:14px;gap:14px;margin-top:22px}.setup-step{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,300px);grid-gap:16px;gap:16px;align-items:start;border:1px solid var(--line);border-radius:var(--radius-sm);background:rgb(255 255 255/.04);padding:18px;transition:border-color .16s ease,background .16s ease}.setup-step:hover{border-color:var(--line-strong);background:rgb(255 255 255/.06)}.setup-step h2{margin:0;font-size:1.05rem;font-weight:750}.setup-step p{margin:6px 0 0}.setup-step strong{margin-top:10px}.setup-step a,.setup-step strong{display:inline-block;color:var(--accent-strong)}.setup-step a{margin-left:12px;font-weight:800}.setup-control{display:grid;grid-gap:10px;gap:10px}.setup-step button{min-height:46px;border:1px solid transparent;border-radius:var(--radius-sm);background:linear-gradient(135deg,var(--accent-strong),var(--accent));color:#1a1206;cursor:pointer;font-weight:800;transition:transform .16s ease,box-shadow .16s ease,opacity .16s ease}.setup-step button:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--glow)}.setup-step button:disabled{cursor:not-allowed;opacity:.5}.setup-status{margin-top:18px;border:1px solid var(--line);border-radius:var(--radius-sm);background:rgb(0 0 0/.25);padding:16px}.setup-status p{margin:0}@media (max-width:900px){.roulette-shell{grid-template-columns:1fr;grid-template-rows:auto;width:100%}.player-area,.trailer-empty,.trailer-frame,.trailer-frame iframe{min-height:280px}.movie-panel{justify-content:flex-start}}@media (max-width:520px){.app-shell,.roulette-shell{padding:14px}.roulette-shell{gap:14px}.player-area,.trailer-empty,.trailer-frame,.trailer-frame iframe{min-height:220px}.movie-panel,.setup-card,.watchlist-panel{padding:18px}.movie-panel h1,.setup-card h1{font-size:clamp(1.85rem,11vw,2.6rem)}.actions{grid-template-columns:1fr}.actions .cta{grid-column:auto}.section-heading{display:block}.setup-wizard{width:calc(100vw - 24px)}.setup-step{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition-duration:.01ms!important;animation:none!important}}