:root{color-scheme:dark;--bg:#0b0d13;--panel:#171a24;--panel2:#202431;--text:#f5f6f9;--muted:#a0a6b6;--muted2:#737c8f;--accent:#ed4653;--accent2:#b82535;--line:rgba(255,255,255,.09);--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI",Arial,sans-serif;-webkit-font-smoothing:antialiased}
*,*:before,*:after{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--bg);color:var(--text)}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{overflow-x:hidden;overscroll-behavior-y:none}button,input,select{font:inherit}button{touch-action:manipulation}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid #ef5966;outline-offset:3px}button{cursor:pointer}a{color:inherit}img{max-width:100%}.app-shell{min-height:100vh;min-height:100dvh;position:relative}.app-header{height:calc(60px + var(--safe-top));padding:calc(9px + var(--safe-top)) 19px 9px;position:sticky;top:0;z-index:22;display:flex;align-items:center;justify-content:space-between;background:rgba(11,13,19,.86);border-bottom:1px solid rgba(255,255,255,.04);-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px)}.wordmark{background:none;color:inherit;border:0;display:flex;align-items:baseline;padding:3px 0;letter-spacing:-1.4px;font-size:26px;font-weight:800}.wordmark-hd{color:var(--accent);margin-right:1px}.wordmark-name{color:#f8f8fa}.wordmark-dot{color:var(--accent)}.header-actions{display:flex;align-items:center;gap:16px}.online-indicator{display:block;width:7px;height:7px;border-radius:50%;background:#50c889;box-shadow:0 0 10px rgba(80,200,137,.45)}.online-indicator.offline{background:#e6a45e;box-shadow:0 0 10px rgba(230,164,94,.45)}.icon-button{width:36px;height:36px;border:0;background:transparent;color:var(--text);display:grid;place-items:center;border-radius:13px}.icon-button svg{width:23px;height:23px}.app-main{padding-bottom:calc(95px + var(--safe-bottom));min-height:calc(100vh - 60px);overflow:hidden}.bottom-nav{position:fixed;left:0;right:0;bottom:0;z-index:40;padding:8px 12px max(8px,var(--safe-bottom));height:calc(68px + var(--safe-bottom));display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:center;gap:2px;background:rgba(17,19,28,.95);border-top:1px solid var(--line);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px)}.nav-item{border:0;color:#8991a1;display:flex;flex-direction:column;align-items:center;gap:4px;background:none;min-height:48px;justify-content:center;font-size:10px;font-weight:600;letter-spacing:.1px;border-radius:12px}.nav-item svg{height:22px;width:22px}.nav-item.active{color:var(--accent)}.nav-item.active svg{stroke-width:2.25}.section-pad{padding:0 19px}.home-top{padding:22px 19px 10px;display:flex;align-items:center;justify-content:space-between}.eyebrow{color:var(--accent);font-weight:750;font-size:11px;letter-spacing:1.7px;text-transform:uppercase}.home-greet{margin:7px 0 0;font-size:29px;font-weight:760;letter-spacing:-1.3px;line-height:1.1}.caption{color:var(--muted);font-size:13px;line-height:1.5}.hero{min-height:355px;margin:8px 18px 26px;border-radius:22px;overflow:hidden;position:relative;background:linear-gradient(140deg,#3a303c,#151925);display:flex;align-items:flex-end;box-shadow:0 18px 35px rgba(0,0,0,.2)}.hero-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 36%;filter:brightness(.67);transform:scale(1.025)}.hero:after{position:absolute;inset:0;content:"";background:linear-gradient(0deg,rgba(10,11,17,.99) 0%,rgba(10,11,17,.6) 38%,rgba(10,11,17,.04) 80%)}.hero-content{position:relative;z-index:1;padding:21px 22px 22px;width:100%}.hero-chip{display:inline-flex;align-items:center;border:1px solid rgba(255,255,255,.24);border-radius:30px;padding:6px 10px;background:rgba(255,255,255,.11);font-size:10px;font-weight:750;text-transform:uppercase;letter-spacing:1.25px}.hero-title{font-size:31px;line-height:1.08;font-weight:790;letter-spacing:-1px;max-width:310px;margin:13px 0 8px;text-shadow:0 1px 12px #0005}.hero-sub{font-size:12px;color:#c3c6cd;margin-bottom:16px;display:flex;align-items:center;gap:8px}.primary-button,.outline-button{border:0;border-radius:12px;min-height:42px;padding:0 17px;font-size:13px;font-weight:750;display:inline-flex;align-items:center;justify-content:center;gap:8px}.primary-button{background:var(--accent);color:white}.primary-button:active{background:#d43946}.outline-button{background:#fff1;color:white;border:1px solid var(--line)}.primary-button svg,.outline-button svg{width:17px;height:17px}.button-row{display:flex;align-items:center;flex-wrap:wrap;gap:9px}.section{margin:25px 0 31px}.section-heading{padding:0 19px;display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:14px}.section-title{font-size:20px;font-weight:760;letter-spacing:-.5px;margin:0}.subtle-action{font-size:12px;font-weight:650;color:#bdc1cc;border:0;background:none;padding:6px 0}.poster-rail{display:flex;gap:11px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;padding:0 19px 6px;scrollbar-width:none}.poster-rail::-webkit-scrollbar{display:none}.poster-card{flex:0 0 137px;min-width:0;text-align:left;border:0;background:none;color:inherit;padding:0;scroll-snap-align:start}.poster-card .poster-wrap{position:relative;aspect-ratio:2/3;border-radius:13px;overflow:hidden;background:var(--panel2);box-shadow:0 3px 12px rgba(0,0,0,.24)}.poster-card img,.grid-card img{width:100%;height:100%;object-fit:cover;display:block}.poster-wrap img{transition:transform .25s ease}.poster-card:active .poster-wrap img,.grid-card:active img{transform:scale(1.035)}.poster-card .poster-title,.grid-card .poster-title{font-size:12px;line-height:1.35;font-weight:650;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-top:9px;min-height:32px}.poster-card .poster-meta,.grid-card .poster-meta{font-size:11px;color:var(--muted2);margin-top:3px}.poster-tag{position:absolute;top:8px;left:8px;background:rgba(10,11,16,.8);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:6px;padding:4px 6px;color:#f5d27e;font-size:10px;font-weight:700}.section-blurb{padding:0 19px;color:var(--muted);font-size:12px}.empty-state{padding:45px 24px;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;max-width:420px;margin:auto}.empty-state .empty-icon{height:60px;width:60px;border-radius:20px;background:#282232;display:grid;place-items:center;font-size:29px}.empty-state h3{font-size:20px;margin:0;letter-spacing:-.5px}.empty-state p{color:var(--muted);line-height:1.5;margin:0;font-size:13px}.loading-line{height:204px;margin:0 19px;border-radius:15px;background:linear-gradient(95deg,#222633 25%,#313645 45%,#222633 70%);background-size:400% 100%;animation:shimmer 1.5s infinite}.skeleton-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 19px}.skeleton-cards i{height:186px;border-radius:14px;background:linear-gradient(95deg,#222633 25%,#313645 45%,#222633 70%);background-size:400% 100%;animation:shimmer 1.5s infinite}@keyframes shimmer{to{background-position-x:-400%}}.screen-head{padding:26px 19px 15px}.screen-title{font-size:30px;font-weight:780;letter-spacing:-1px;line-height:1.12;margin:0 0 8px}.screen-caption{color:var(--muted);font-size:13px;line-height:1.55;margin:0}.search-box{margin:6px 19px 16px;height:50px;border-radius:14px;border:1px solid #353a49;background:#1a1e29;display:flex;align-items:center;padding:0 14px;gap:11px}.search-box:focus-within{border-color:#dc5664}.search-box svg{height:21px;width:21px;stroke:var(--muted)}.search-box input{border:0;outline:0;background:none;color:white;width:100%;height:100%;min-width:0;font-size:16px;border-radius:0}.search-box input::placeholder{color:#6d7587}.clear-search{width:25px;height:25px;background:#414759;border:0;color:white;border-radius:50%;font-size:19px;line-height:1;display:grid;place-items:center}.filters{padding:0 19px 19px;display:flex;gap:8px;overflow:auto}.filter{border:1px solid #343a49;background:#181c25;padding:9px 15px;color:#a9afbd;border-radius:100px;font-size:12px;font-weight:680;white-space:nowrap}.filter.selected{background:#e64450;border-color:#e64450;color:#fff}.grid-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 12px;padding:0 19px 23px}.grid-card{background:none;border:0;padding:0;text-align:left;color:inherit;min-width:0}.grid-card .poster-wrap{position:relative;aspect-ratio:2/3;border-radius:14px;overflow:hidden;background:#242836}.results-caption{font-size:12px;color:var(--muted);padding:0 19px 17px}.inline-error{margin:15px 19px;padding:15px 16px;border-radius:12px;background:rgba(216,77,86,.08);border:1px solid rgba(216,77,86,.24);color:#efb4b8;font-size:12px;line-height:1.5}.settings-card{margin:0 19px 17px;padding:17px;border:1px solid var(--line);border-radius:17px;background:var(--panel)}.settings-label{display:block;font-size:14px;font-weight:720;margin-bottom:8px}.settings-help{font-size:12px;line-height:1.55;color:var(--muted);margin:0 0 12px}.text-field{background:#0f131c;border:1px solid #373c4a;border-radius:10px;min-height:45px;padding:0 12px;width:100%;color:white;font-size:14px;outline:0}.text-field:focus{border-color:var(--accent)}.settings-buttons{display:flex;flex-wrap:wrap;gap:9px}.settings-card a{color:#f2a4ab;text-decoration:none}.settings-card a:active{text-decoration:underline}.settings-foot{padding:5px 23px 20px;text-align:center;font-size:11px;color:var(--muted2);line-height:1.6}.sheet-host,.player-host{position:fixed;inset:0;z-index:55}.sheet-host[hidden],.player-host[hidden]{display:none!important}.scrim{position:absolute;inset:0;background:rgba(3,5,10,.73);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.sheet{position:absolute;bottom:0;left:0;right:0;max-width:720px;margin:0 auto;max-height:calc(94dvh - var(--safe-top));background:#171a24;border-radius:23px 23px 0 0;overflow:auto;overscroll-behavior:contain;padding:0 0 calc(23px + var(--safe-bottom));box-shadow:0 -20px 80px #0008}.sheet-handle{height:5px;width:42px;background:#505767;border-radius:5px;margin:10px auto 13px}.sheet-hero{display:grid;grid-template-columns:118px 1fr;gap:16px;padding:0 20px;align-items:start}.sheet-poster{width:118px;aspect-ratio:2/3;border-radius:12px;object-fit:cover;background:#2c3040}.sheet-title{font-size:21px;line-height:1.18;font-weight:790;margin:3px 0 8px;letter-spacing:-.6px}.sheet-meta{font-size:12px;color:var(--muted);line-height:1.7}.sheet-rating{color:#f0cb74}.sheet-body{padding:16px 20px 2px}.sheet-description{font-size:13px;line-height:1.6;color:#c5cad4;margin:0 0 17px}.sheet-buttons{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-bottom:17px}.sheet-buttons .primary-button,.sheet-buttons .outline-button{min-height:47px;padding:0 9px;font-size:12px}.info-label{font-size:12px;color:var(--muted);font-weight:680;display:block;margin-bottom:8px}.detail-box{background:#11141d;border-radius:13px;padding:14px;margin:14px 0;border:1px solid rgba(255,255,255,.06)}.detail-box p{color:var(--muted);font-size:12px;line-height:1.5;margin:7px 0 0}.detail-box .input-stack{display:flex;gap:8px}.detail-box .input-stack input{flex:1;min-width:0}.detail-box .input-stack button{border:0;background:#313848;border-radius:10px;color:white;font-size:12px;font-weight:700;padding:0 13px}.detail-box .text-field{font-size:13px}.detail-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--muted2);font-size:11px;padding:4px 2px}.sheet-close{position:absolute;right:14px;top:17px;border:0;border-radius:50%;background:#353947;color:#fff;width:32px;height:32px;display:grid;place-items:center;font-size:25px;line-height:1;z-index:1}.player-host{z-index:70;background:#090a0e;display:flex;align-items:center;justify-content:center}.player-view{width:100%;max-width:980px;display:flex;flex-direction:column;justify-content:center;min-height:80dvh;padding:calc(12px + var(--safe-top)) 14px calc(14px + var(--safe-bottom));gap:15px}.player-header{display:flex;align-items:center;gap:10px}.player-back{width:42px;height:42px;color:white;border:0;border-radius:13px;background:#242631;font-size:28px}.player-label{font-size:13px;color:var(--muted)}.player-name{font-size:18px;font-weight:720;line-height:1.3}.player-video{width:100%;max-height:72dvh;aspect-ratio:16/9;background:#000;border-radius:12px;object-fit:contain}.player-note{font-size:12px;color:#9ca5b7;line-height:1.5}.player-note.error{color:#f2a5ad}.toast{position:fixed;z-index:100;left:50%;transform:translateX(-50%) translateY(18px);bottom:calc(80px + var(--safe-bottom));opacity:0;pointer-events:none;max-width:calc(100vw - 38px);width:max-content;background:#323746;color:#fff;border:1px solid rgba(255,255,255,.1);padding:11px 15px;font-weight:640;font-size:12px;border-radius:12px;transition:opacity .18s ease,transform .18s ease;box-shadow:0 10px 20px #0005}.toast.visible{opacity:1;transform:translateX(-50%) translateY(0)}body.dialog-open{overflow:hidden}.credit{margin:5px 19px 12px;padding:12px 14px;border-radius:12px;border:1px solid rgba(255,255,255,.06);background:#151821;font-size:11px;color:#929caf;line-height:1.5}.credit a{color:#bfc8db}.file-picker{display:none}.icon-sm{display:inline-block;font-size:14px}.install-note{padding:14px 18px;margin:10px 19px;border:1px solid rgba(236,75,88,.22);border-radius:14px;background:rgba(236,75,88,.07)}.install-note b{font-size:13px}.install-note p{font-size:12px;line-height:1.55;color:var(--muted);margin:7px 0 0}.pill-info{display:inline-block;border:1px solid rgba(255,255,255,.1);padding:5px 8px;border-radius:8px;font-size:10px;color:#d0d3de}
@media(min-width:720px){.app-header{padding-left:max(20px,calc((100vw - 940px)/2));padding-right:max(20px,calc((100vw - 940px)/2))}.app-main{max-width:940px;margin:auto}.bottom-nav{max-width:520px;left:50%;transform:translateX(-50%);border-radius:19px 19px 0 0}.hero{min-height:400px}.hero-content{padding:30px}.hero-title{font-size:45px;max-width:440px}.poster-card{flex-basis:164px}.grid-cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:23px 17px}.home-greet{font-size:34px}.screen-title{font-size:37px}}
@media(max-width:360px){.poster-card{flex-basis:120px}.sheet-hero{grid-template-columns:100px 1fr}.sheet-poster{width:100px}.sheet-title{font-size:19px}.sheet-buttons{grid-template-columns:1fr}.hero{min-height:325px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.001ms!important;transition-duration:.001ms!important}}
