@font-face{font-family:Bebas Neue;src:url(/assets/bebas-neue-regular-9mHNbWWO.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:DM Sans;src:url(/assets/dm-sans-300-Xz1IZZA0.woff2) format("woff2");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:DM Sans;src:url(/assets/dm-sans-300-Xz1IZZA0.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:DM Sans;src:url(/assets/dm-sans-300-Xz1IZZA0.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:DM Sans;src:url(/assets/dm-sans-300-Xz1IZZA0.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #04080d;--surface: #080f18;--surface2: #0c1620;--surface3: #111e2a;--border: #1a2d3d;--red: #00b4a6;--red2: #00d4c4;--red-dim: rgba(0, 180, 166, .12);--red-glow: 0 0 30px rgba(0, 180, 166, .28);--amber: #f5a623;--amber2: #ffc14d;--amber-dim: rgba(245, 166, 35, .12);--amber-glow: 0 0 28px rgba(245, 166, 35, .3);--grad-dual: linear-gradient(135deg, #00b4a6 0%, #f5a623 100%);--grad-dual-subtle: linear-gradient(135deg, rgba(0,180,166,.15) 0%, rgba(245,166,35,.15) 100%);--bg-mesh: radial-gradient(ellipse 80% 60% at 20% 10%, rgba(0,180,166,.07) 0%, transparent 60%), radial-gradient(ellipse 60% 50% at 80% 90%, rgba(245,166,35,.05) 0%, transparent 55%), radial-gradient(ellipse 100% 80% at 50% 50%, rgba(0,40,60,.4) 0%, transparent 100%), linear-gradient(180deg, #04080d 0%, #060c14 40%, #050a10 100%);--gold: #f5a623;--text: #e8f2f6;--text2: #8ab0be;--text3: #4a7080;--sidebar: 54px;--mobile-topbar: 52px;--mobile-nav: 62px;--radius: 8px;--font-display: "Bebas Neue", sans-serif;--font-body: "DM Sans", sans-serif;--titlebar-height: 38px}html,body,#root{height:100%;background:var(--bg);color:var(--text);font-family:var(--font-body);overflow:hidden}body{background:var(--bg-mesh);background-attachment:fixed}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}::-webkit-scrollbar-thumb:hover{background:var(--red)}.electron-titlebar{position:fixed;top:0;left:0;right:0;height:var(--titlebar-height);z-index:9000;background:linear-gradient(135deg,#040a12f5,#080f18f0,#050c14f5);border-bottom:1px solid rgba(0,180,166,.12);display:flex;align-items:center;padding:0 12px;gap:8px;-webkit-app-region:drag;app-region:drag;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:0 1px #00b4a614,0 4px 16px #0006;-webkit-user-select:none;user-select:none}.electron-titlebar:after{content:"";position:absolute;bottom:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent 0%,rgba(0,180,166,.4) 20%,rgba(0,180,166,.6) 50%,rgba(245,166,35,.3) 80%,transparent 100%)}.electron-titlebar button,.electron-titlebar a,.electron-titlebar input,.electron-titlebar .no-drag{-webkit-app-region:no-drag;app-region:no-drag}.electron-titlebar-title{font-family:var(--font-display);font-size:15px;letter-spacing:2px;color:var(--text);opacity:.75;margin-left:4px;pointer-events:none}.electron-titlebar-controls{margin-left:auto;display:flex;align-items:center;gap:2px;-webkit-app-region:no-drag;app-region:no-drag}.electron-titlebar-btn{width:34px;height:28px;display:flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--text2);cursor:pointer;border-radius:4px;font-size:12px;transition:background .15s,color .15s;font-family:monospace}.electron-titlebar-btn:hover{background:#ffffff14;color:var(--text)}.electron-titlebar-btn.close:hover{background:#e50914bf;color:#fff}html[data-electron] .sidebar{top:var(--titlebar-height)}html[data-electron] .main{padding-top:var(--titlebar-height)}.sidebar{position:fixed;left:0;top:0;bottom:0;width:var(--sidebar);background:linear-gradient(180deg,#080f18fa,#050a12fa,#04080efa);border-right:1px solid var(--border);display:flex;flex-direction:column;align-items:center;padding:16px 0;gap:6px;z-index:100;will-change:transform;transform:translateZ(0);box-shadow:inset -1px 0 #00b4a614,4px 0 24px #00000080}.sidebar-logo{width:42px;height:42px;margin-bottom:12px;cursor:pointer;transition:filter .2s;flex-shrink:0;overflow:visible}.sidebar-logo img{width:100%;height:100%;display:block;filter:drop-shadow(0 0 8px rgba(0,180,166,.55));transition:filter .2s}.sidebar-logo:hover img{filter:drop-shadow(0 0 18px rgba(0,180,166,.85)) drop-shadow(0 0 40px rgba(245,166,35,.3))}.sidebar-sep{width:32px;height:1px;background:var(--border);margin:6px 0;flex-shrink:0}.sidebar-btn{width:40px;height:42px;border-radius:var(--radius);display:flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--text3);cursor:pointer;transition:all .2s;position:relative;flex-shrink:0}.sidebar-btn svg{width:25px;height:18px}.sidebar-btn:hover,.sidebar-btn.active{color:var(--red);background:var(--red-dim);box-shadow:0 0 0 1px #00b4a659}.sidebar-btn .tooltip{position:absolute;left:calc(100% + 10px);top:50%;transform:translateY(-50%);background:var(--surface3);color:var(--text);font-size:12px;font-weight:500;padding:5px 10px;border-radius:5px;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .15s;border:1px solid var(--border);z-index:200}.sidebar-btn:hover .tooltip{opacity:1}.sidebar-saved{flex:1;overflow-y:auto;overflow-x:hidden;width:100%;display:flex;flex-direction:column;align-items:center;gap:6px;padding:4px 0;min-height:0}.saved-thumb{width:44px;height:64px;border-radius:5px;overflow:visible;cursor:pointer;transition:all .2s;flex-shrink:0;position:relative;border:1px solid var(--border)}.saved-thumb img{border-radius:5px;overflow:hidden;width:100%;height:100%;object-fit:cover}.saved-thumb>.no-img{border-radius:5px;overflow:hidden;width:100%;height:100%}.saved-thumb:hover{border-color:var(--red);transform:scale(1.05);box-shadow:var(--red-glow)}.saved-thumb-tooltip{position:fixed;left:70px;transform:translateY(-50%);background:var(--surface3);color:var(--text);font-size:12px;font-weight:500;padding:5px 10px;border-radius:5px;white-space:normal;max-width:180px;pointer-events:none;border:1px solid var(--border);z-index:9999;line-height:1.3;text-align:left}.saved-thumb .no-img{width:100%;height:100%;background:var(--surface3);display:flex;align-items:center;justify-content:center;color:var(--text3);font-size:10px}.sidebar-bottom{margin-top:auto;flex-shrink:0}.main{margin-left:var(--sidebar);height:100vh;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior:none;background:transparent}.hero{position:relative;height:85vh;min-height:600px;max-height:1000px;overflow:hidden;background:transparent;contain:layout style}.hero-bg{position:absolute;inset:0;background-size:cover;background-position:center top;transform:scale(1.06);transition:transform 12s ease;filter:brightness(.42) contrast(1.12) saturate(.82);will-change:transform}.hero:hover .hero-bg{transform:scale(1)}.hero-bg:after{content:"";position:absolute;inset:0;background:none}.hero-gradient{position:absolute;inset:0;background:none}.hero-content{position:absolute;bottom:0;left:0;padding:0 5% 90px;max-width:800px}.hero-type{font-size:11px;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:var(--amber);margin-bottom:12px}.hero-title{font-family:var(--font-display);font-size:80px;line-height:.95;color:var(--text);margin-bottom:20px;letter-spacing:1px;text-shadow:2px 2px 20px rgba(0,0,0,.9),0 0 60px rgba(0,0,0,.5)}.hero-meta{display:flex;align-items:center;gap:16px;font-size:13px;color:var(--text2);margin-bottom:20px}.hero-rating{color:var(--amber);display:flex;align-items:center;gap:4px}.hero-rating svg{width:14px;height:14px}.hero-overview{font-size:17px;color:var(--text2);line-height:1.55;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:24px;max-width:520px;text-shadow:1px 1px 8px rgba(0,0,0,.8)}.hero-actions{display:flex;gap:14px;margin-top:28px}.hero-dots{position:absolute;bottom:24px;right:48px;display:flex;gap:6px;align-items:center;z-index:10}.hero-dot{width:6px;height:6px;border-radius:50%;border:none;cursor:pointer;padding:0;background:#ffffff4d;transition:all .25s}.hero-dot.active{background:var(--amber);width:22px;border-radius:3px;box-shadow:0 0 8px #f5a62399}@keyframes heroFadeIn{0%{opacity:0}to{opacity:1}}.hero-bg-transition{animation:heroFadeIn .8s ease}.btn{display:flex;align-items:center;gap:8px;padding:10px 24px;border-radius:var(--radius);font-family:var(--font-body);font-size:14px;font-weight:600;cursor:pointer;border:none;transition:all .2s;letter-spacing:.5px}.btn svg{width:16px;height:16px}.btn-primary{background:var(--red);color:#fff;padding:14px 32px;font-size:16px;gap:10px}.btn-primary svg{width:20px;height:20px}.btn-primary:hover{background:var(--red2);box-shadow:var(--red-glow);transform:translateY(-1px)}.btn-secondary{background:#ffffff14;color:var(--text);border:1px solid rgba(255,255,255,.14);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:14px 28px;font-size:16px}.btn-secondary:hover{background:#ffffff26;border-color:#ffffff40}.btn-ghost{background:transparent;color:var(--text2);border:1px solid var(--border)}.btn-ghost:hover{color:var(--text);border-color:var(--text3)}.btn-icon{padding:8px;border-radius:var(--radius)}.section{padding:15px 48px}.section-title{font-family:var(--font-display);font-size:28px;letter-spacing:1px;color:var(--text);margin-bottom:14px;display:flex;align-items:center;gap:12px}.section-title:after{content:"";flex:1;height:1px;background:linear-gradient(to right,var(--border),transparent)}.cards-grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));isolation:isolate}body.compact-mode .cards-grid{grid-template-columns:repeat(auto-fill,minmax(108px,1fr));gap:10px}body.compact-mode .card-info{padding:6px 8px}body.compact-mode .card-title{font-size:11px}body.compact-mode .card-year{font-size:10px}body.compact-mode .scroll-row .card{width:108px}body.no-anim *,body.no-anim *:before,body.no-anim *:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}.card{cursor:pointer;border-radius:var(--radius);overflow:hidden;background:linear-gradient(145deg,#0c1620e6,#081018f2);border:1px solid var(--border);transition:box-shadow .2s ease,border-color .2s ease;position:relative;contain:layout style;isolation:isolate}.card:hover{border-color:var(--red);box-shadow:0 4px 20px #0009,0 0 14px #00b4a62e}.card-poster{aspect-ratio:2/3;overflow:hidden;position:relative}.card-poster img{width:100%;height:100%;object-fit:cover;display:block}.card-poster .no-poster{width:100%;height:100%;background:var(--surface3);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:var(--text3)}.card-poster .no-poster svg{width:32px;height:32px}.card-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.9) 0%,transparent 55%);opacity:0;transition:opacity .25s;display:flex;align-items:center;justify-content:center}.card:hover .card-overlay{opacity:1}.card-play{width:44px;height:44px;border-radius:50%;background:var(--red);display:flex;align-items:center;justify-content:center;box-shadow:0 0 20px #00b4a68c}.card-play svg{width:18px;height:18px;color:#fff;margin-left:2px}.card-info{padding:10px 12px}.card-title{font-size:13px;font-weight:500;margin-bottom:4px;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card-year{font-size:11px;color:var(--text3)}.card-badge{position:absolute;top:8px;right:8px;background:var(--amber);color:#050c0f;font-size:10px;font-weight:700;padding:2px 6px;border-radius:3px;letter-spacing:.5px}.card-progress{position:absolute;bottom:0;left:0;right:0;height:3px;background:#ffffff1a}.card-progress-fill{height:100%;background:var(--red);transition:width .3s}.scroll-row{display:flex;gap:14px;overflow-x:auto;overflow-y:visible;padding-bottom:16px}.scroll-row .card{flex-shrink:0;width:150px}.modal-overlay{position:fixed;inset:0;z-index:200;background:#000000d9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);display:flex;flex-direction:column;align-items:center;padding-top:80px}.search-box{width:680px;max-width:95vw;background:linear-gradient(145deg,#08121cfa,#060e16fa);border:1px solid var(--border);border-radius:12px;overflow:hidden;box-shadow:0 24px 80px #000000e6,0 0 40px #00b4a60f}.search-input-wrap{display:flex;align-items:center;gap:12px;padding:16px 20px;border-bottom:1px solid var(--border)}.search-input-wrap svg{width:20px;height:20px;color:var(--text3);flex-shrink:0}.search-input{flex:1;background:transparent;border:none;outline:none;font-family:var(--font-body);font-size:18px;color:var(--text)}.search-input::placeholder{color:var(--text3)}.search-results{max-height:480px;overflow-y:auto;padding:8px}.search-result{display:flex;align-items:center;gap:14px;padding:10px 12px;border-radius:var(--radius);cursor:pointer;transition:background .15s}.search-result:hover{background:var(--surface2)}.search-result img{width:40px;height:58px;object-fit:cover;border-radius:5px;flex-shrink:0;background:var(--surface3)}.search-result-info{flex:1;min-width:0}.search-result-title{font-size:15px;font-weight:500;margin-bottom:3px}.search-result-meta{font-size:12px;color:var(--text3)}.search-result-type{font-size:10px;font-weight:700;letter-spacing:1px;text-transform:uppercase;padding:2px 8px;border-radius:3px;flex-shrink:0}.type-movie{background:var(--red-dim);color:var(--red);border:1px solid rgba(0,180,166,.4)}.type-tv{background:var(--amber-dim);color:var(--amber);border:1px solid rgba(245,166,35,.4)}.search-empty{padding:48px;text-align:center;color:var(--text3)}.search-hint{padding:20px;color:var(--text3);font-size:13px;text-align:center}.search-history{padding:8px 4px 4px}.search-history-header{display:flex;align-items:center;justify-content:space-between;padding:4px 12px 8px}.search-history-label{font-size:11px;font-weight:600;letter-spacing:.5px;text-transform:uppercase;color:var(--text3)}.search-history-clear{background:none;border:none;cursor:pointer;font-size:12px;color:var(--text3);padding:2px 4px;border-radius:4px;transition:color .15s}.search-history-clear:hover{color:var(--red)}.search-history-item{display:flex;align-items:center;gap:12px;padding:9px 12px;border-radius:var(--radius);cursor:pointer;transition:background .15s}.search-history-item:hover{background:var(--surface2)}.search-history-icon{display:flex;align-items:center;color:var(--text3);flex-shrink:0}.search-history-icon svg{width:14px;height:14px}.search-history-term{flex:1;font-size:14px;color:var(--text2);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.search-history-remove{background:none;border:none;cursor:pointer;color:var(--text3);display:flex;align-items:center;padding:3px;border-radius:4px;opacity:0;transition:opacity .15s,color .15s;flex-shrink:0}.search-history-remove svg{width:13px;height:13px}.search-history-item:hover .search-history-remove{opacity:1}.search-history-remove:hover{color:var(--red)}.detail-hero{position:relative;min-height:85vh;max-height:900px;background:var(--surface)}.detail-bg{position:absolute;inset:0;background-size:cover;background-position:center 20%}.detail-bg:after{content:"";position:absolute;inset:0;background:#040a108c}.detail-gradient{position:absolute;inset:0;background:linear-gradient(to top,var(--bg) 0%,var(--bg) 8%,color-mix(in srgb,var(--bg) 80%,transparent) 25%,color-mix(in srgb,var(--bg) 50%,transparent) 45%,color-mix(in srgb,var(--bg) 20%,transparent) 65%,transparent 85%)!important}.detail-content{position:relative;display:flex;gap:40px;padding:0 5% 60px;align-items:flex-end}.detail-poster{width:200px;flex-shrink:0;border-radius:var(--radius);overflow:hidden;box-shadow:0 8px 40px #000000b3;border:1px solid var(--border);background:var(--surface3);aspect-ratio:2/3}.detail-poster img{width:100%;height:100%;object-fit:cover;display:block}.detail-info{flex:1;min-width:0}.detail-type{font-size:11px;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:var(--amber);margin-bottom:10px}.detail-title{font-family:var(--font-display);font-size:72px;line-height:.95;margin-bottom:16px;letter-spacing:1px;text-shadow:2px 2px 20px rgba(0,0,0,.9)}.detail-meta{display:flex;flex-wrap:wrap;gap:16px;align-items:center;font-size:13px;color:var(--text2);margin-bottom:20px}.detail-rating{color:var(--amber);display:flex;align-items:center;gap:4px;font-weight:600}.detail-rating svg{width:14px;height:14px}.detail-overview{font-size:16px;color:var(--text2);line-height:1.6;margin-bottom:24px;max-width:540px}.detail-actions{display:flex;gap:12px;flex-wrap:wrap}.detail-actions .btn-primary{padding:14px 32px;font-size:16px}.detail-actions .btn-secondary{padding:14px 28px;font-size:16px;background:#ffffff14;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.genres{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px}.genre-tag{font-size:11px;font-weight:500;padding:3px 10px;border-radius:20px;background:var(--surface3);border:1px solid var(--border);color:var(--text2)}.player-wrap{position:relative;background:#000;overflow:hidden;border-radius:var(--radius);border:1px solid var(--border)}.player-wrap--fullscreen{position:fixed!important;inset:0!important;z-index:9999;border-radius:0!important;border:none!important}.player-wrap--fullscreen .player-overlay-group,.player-wrap--fullscreen .player-overlay-btn,[data-player-fullscreen] .window-titlebar{display:none!important}.player-wrap:before{content:"";display:block;padding-top:56.25%}.player-wrap iframe{position:absolute;inset:0;width:100%;height:100%;border:none}.progress-bar-row{margin-top:12px;display:flex;align-items:center;gap:10px}.progress-bar-outer{flex:1;height:4px;background:var(--border);border-radius:2px}.progress-bar-fill{height:100%;background:var(--red);border-radius:2px}.progress-mark-row{margin-top:10px;display:flex;gap:8px;flex-wrap:wrap}.season-selector{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}.season-btn{padding:7px 18px;border-radius:20px;font-size:13px;font-weight:500;cursor:pointer;border:1px solid var(--border);background:var(--surface2);color:var(--text2);transition:all .2s}.season-btn:hover{border-color:var(--text3);color:var(--text)}.season-btn.active{background:var(--red);border-color:var(--red);color:#050c0f}.season-btn.season-watched{border-color:#48c77499;color:#48c774}.season-btn.season-watched.active{background:#48c774d9;border-color:#48c774d9;color:#fff}.season-btn.season-watched:hover{border-color:#48c774e6;color:#48c774;box-shadow:0 0 0 3px #48c77426}.season-btn.season-partial{border-color:#f5a62373;color:var(--amber)}.season-btn.season-partial.active{background:var(--red);border-color:var(--red);color:#050c0f}.season-btn.season-partial:hover{border-color:var(--amber);color:var(--amber);box-shadow:0 0 0 3px #f5a62326}.season-watched-icon{margin-right:4px;font-size:11px;opacity:.9}.episodes-grid{display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.episode-card{display:flex;gap:12px;padding:12px;border-radius:var(--radius);background:var(--surface2);border:1px solid var(--border);cursor:pointer;transition:all .2s;align-items:flex-start}.episode-card:hover{border-color:var(--red);background:var(--surface3)}.episode-card.playing{border-color:var(--red);background:var(--red-dim)}.episode-playing-badge{position:absolute;inset:0;background:#0000008c;display:flex;align-items:center;justify-content:center;gap:6px;font-size:11px;font-weight:700;color:#fff;letter-spacing:.06em;text-transform:uppercase;border-radius:5px}.episode-playing-dot{width:7px;height:7px;border-radius:50%;background:var(--red);display:inline-block;animation:playing-pulse 1.1s ease-in-out infinite;flex-shrink:0}@keyframes playing-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.45;transform:scale(.75)}}.episode-thumb{width:110px;flex-shrink:0;aspect-ratio:16/9;border-radius:5px;overflow:hidden;background:var(--surface3);position:relative}.episode-thumb img{width:100%;height:100%;object-fit:cover}.episode-thumb-play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#00000080;opacity:0;transition:opacity .2s}.episode-card:hover .episode-thumb-play{opacity:1}.episode-thumb-play svg{width:24px;height:24px;color:#fff}.episode-info{flex:1;min-width:0}.episode-num{font-size:10px;color:var(--amber);font-weight:700;letter-spacing:1px;text-transform:uppercase;margin-bottom:3px}.episode-name{font-size:13px;font-weight:500;line-height:1.3;margin-bottom:4px}.episode-desc{font-size:11px;color:var(--text3);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.episode-desc-wrap{display:flex;flex-direction:column;gap:3px}.episode-desc-toggle{background:none;border:none;padding:0;font-size:10px;font-weight:600;color:var(--red);cursor:pointer;text-transform:uppercase;letter-spacing:.5px;align-self:flex-start;opacity:.8;transition:opacity .15s}.episode-desc-toggle:hover{opacity:1}.ep-desc-overlay{position:fixed;inset:0;background:#000000a6;z-index:1200;display:flex;align-items:center;justify-content:center}.ep-desc-popup{background:var(--surface2);border:1px solid var(--border);border-radius:var(--radius);padding:24px 28px;max-width:480px;width:90%;display:flex;flex-direction:column;gap:14px;box-shadow:0 16px 48px #0009}.ep-desc-popup-title{font-size:15px;font-weight:600;line-height:1.3;color:var(--text)}.ep-desc-popup-text{font-size:14px;color:var(--text2);line-height:1.6;margin:0}.ep-desc-popup-close{align-self:flex-end;background:var(--surface3);border:1px solid var(--border);border-radius:6px;padding:7px 18px;font-size:12px;font-weight:500;color:var(--text2);cursor:pointer;transition:background .15s}.ep-desc-popup-close:hover{background:var(--red);color:#050c0f;border-color:var(--red)}.episode-progress-bar{margin-top:6px;height:2px;background:var(--border);border-radius:1px}.episode-progress-fill{height:100%;background:var(--red);border-radius:1px}.library-header{padding:48px 48px 0}.library-title{font-family:var(--font-display);font-size:48px;letter-spacing:1px;margin-bottom:8px}.library-sub{color:var(--text3);font-size:14px}.library-section{padding:32px 48px}.library-section-title{font-size:13px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--text3);margin-bottom:16px}.history-row{display:flex;align-items:center;gap:14px;padding:10px 14px;border-radius:var(--radius);background:var(--surface2);border:1px solid var(--border);cursor:pointer;transition:border-color .2s}.history-row:hover{border-color:var(--red)}.history-thumb{width:32px;height:46px;border-radius:4px;overflow:hidden;background:var(--surface3);flex-shrink:0}.history-thumb img{width:100%;height:100%;object-fit:cover}.history-rows{display:flex;flex-direction:column;gap:8px}.apikey-modal{position:fixed;inset:0;z-index:300;background:#000000f7;display:flex;align-items:center;justify-content:center}.apikey-box{background:linear-gradient(145deg,#08121cfc,#060e16fc);border:1px solid var(--border);border-radius:12px;padding:48px;max-width:480px;width:100%;text-align:center;box-shadow:0 32px 80px #000000e6,0 0 40px #00b4a60d}.apikey-logo{width:80px;height:80px;margin:0 auto 20px;filter:drop-shadow(0 0 20px rgba(0,180,166,.65))}.apikey-title{font-family:var(--font-display);font-size:48px;margin-bottom:6px;color:var(--text)}.apikey-sub{font-size:14px;color:var(--text2);margin-bottom:28px;line-height:1.7}.apikey-input{width:100%;padding:13px 16px;border-radius:var(--radius);background:var(--surface2);border:1px solid var(--border);color:var(--text);font-family:var(--font-body);font-size:14px;outline:none;margin-bottom:16px;transition:border-color .2s}.apikey-input:focus{border-color:var(--red)}.apikey-input-error{border-color:#f44336!important;margin-bottom:10px}.apikey-error-box{background:#f4433614;border:1px solid rgba(244,67,54,.4);border-radius:8px;padding:12px 16px;margin-bottom:14px;text-align:left}.apikey-error-title{font-size:13px;font-weight:700;color:#f44336;margin-bottom:4px}.apikey-error-body{font-size:12px;color:var(--text2);line-height:1.5}.apikey-spinner{display:inline-block;width:14px;height:14px;border-radius:50%;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;animation:spin .65s linear infinite;flex-shrink:0}.api-status-banner{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:11px 24px;font-size:13px;font-weight:500;border-bottom:1px solid transparent;position:sticky;top:0;z-index:50;animation:slideDown .25s ease}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.api-status-error{background:#f443361f;border-color:#f443364d;color:#f77}.api-status-warn{background:#f5a6231a;border-color:#f5a6234d;color:var(--amber2)}.api-status-btn{flex-shrink:0;padding:5px 14px;border-radius:6px;border:1px solid currentColor;background:transparent;color:inherit;font-size:12px;font-weight:600;cursor:pointer;opacity:.85;transition:opacity .15s}.api-status-btn:hover{opacity:1}.apikey-link{color:var(--red);font-size:13px}.spinner{width:36px;height:36px;border-radius:50%;border:3px solid var(--border);border-top-color:var(--red);animation:spin .7s linear infinite}.spinner--dual{border-color:#00b4a633;border-top-color:var(--red);border-right-color:var(--amber)}@keyframes spin{to{transform:rotate(360deg)}}.loader{display:flex;align-items:center;justify-content:center;padding:80px}.toast{position:fixed;bottom:24px;left:calc(var(--sidebar) + 24px);z-index:500;background:linear-gradient(135deg,#08121cf7,#060e16f7);border:1px solid var(--border);color:var(--text);padding:12px 20px;border-radius:var(--radius);font-size:14px;box-shadow:0 8px 24px #0009;animation:slideUp .3s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:80px 48px;text-align:center;color:var(--text3)}.empty-state svg{width:48px;height:48px;opacity:.3}.empty-state h3{font-family:var(--font-display);font-size:28px;color:var(--text2)}.empty-state p{font-size:14px;max-width:300px;line-height:1.6}.tag{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:600;letter-spacing:1px;text-transform:uppercase;padding:3px 8px;border-radius:3px}.tag-red{background:var(--red-dim);color:var(--red);border:1px solid rgba(0,180,166,.3)}a{color:inherit;text-decoration:none}input,button{font-family:var(--font-body)}kbd{background:var(--surface3);padding:2px 6px;border-radius:3px;font-size:11px}.player-wrap webview{position:absolute;inset:0;width:100%;height:100%;border:none}.player-overlay-btn{position:absolute;top:12px;right:12px;z-index:10;background:#000000c7;border:1px solid rgba(255,255,255,.15);color:#fff;border-radius:8px;padding:7px 12px;cursor:pointer;display:flex;align-items:center;gap:6px;font-size:12px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:background .2s}.player-overlay-btn:hover{background:#00b4a6d9;border-color:var(--red)}.player-overlay-btn svg{width:16px;height:16px}.player-overlay-dot{width:7px;height:7px;border-radius:50%;background:#4caf50;box-shadow:0 0 6px #4caf50;flex-shrink:0}.player-downloaded-icon{font-size:15px;font-weight:700;color:#4caf50;line-height:1}.player-overlay-btn:has(.player-downloaded-icon){border-color:#48c77480;color:#4caf50}.player-overlay-btn:has(.player-downloaded-icon):hover{background:#48c77433;border-color:#48c774cc}.ep-downloaded-badge{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:50%;background:#48c7742e;border:1px solid rgba(72,199,116,.5);color:#4caf50;font-size:10px;font-weight:700;cursor:pointer;transition:background .15s;flex-shrink:0}.ep-downloaded-badge:hover{background:#48c77459}.modal-backdrop{position:fixed;inset:0;z-index:99999;background:#000000d1;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:24px}.download-modal{background:linear-gradient(145deg,#08121cfc,#060e16fc);border:1px solid var(--border);border-radius:14px;width:560px;max-width:100%;box-shadow:0 32px 80px #000000e6;overflow:hidden;display:flex;flex-direction:column}.download-modal-header{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;border-bottom:1px solid var(--border);font-size:15px;font-weight:600}.download-modal-header svg{width:18px;height:18px;color:var(--red)}.icon-btn{background:none;border:none;color:var(--text3);cursor:pointer;padding:4px;border-radius:6px;display:flex;transition:color .15s}.icon-btn:hover{color:var(--text)}.icon-btn svg{width:18px;height:18px}.download-waiting{display:flex;align-items:center;gap:12px;padding:40px 24px;color:var(--text3);font-size:14px;justify-content:center}.download-url-block{padding:18px 22px;border-bottom:1px solid var(--border)}.download-url-label{font-size:11px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--amber);margin-bottom:8px}.download-url-code{display:block;font-size:11px;color:var(--text2);background:var(--surface2);border:1px solid var(--border);border-radius:6px;padding:8px 12px;word-break:break-all;line-height:1.5}.download-instructions{padding:22px}.download-instructions-title{font-size:14px;font-weight:600;margin-bottom:14px}.download-steps{padding-left:20px;font-size:13px;color:var(--text2);line-height:1.8;margin-bottom:18px}.download-steps li{margin-bottom:4px}.download-link{color:var(--red);text-decoration:underline;cursor:pointer}.download-folder-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.download-folder-path{font-size:12px;color:var(--text3);word-break:break-all;flex:1}.download-checking{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text3);margin-top:12px}.download-error{font-size:12px;color:#f44336;margin-top:8px;line-height:1.5}.download-ready{padding:22px}.download-found-badge{font-size:13px;color:#4caf50;margin-bottom:14px;display:flex;align-items:center;gap:6px}.download-success{font-size:13px;color:#4caf50;margin-top:10px}.settings-section{margin-bottom:36px}.settings-section-title{font-size:12px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--text3);margin-bottom:14px}.settings-sep{border:none;border-top:1px solid var(--border);margin:0 0 36px}.dl-card{background:var(--surface2);border:1px solid var(--border);border-radius:var(--radius);padding:14px 16px;transition:border-color .2s,box-shadow .2s,background .2s}.dl-card-highlighted{border-color:#48c774cc!important;background:#48c7740f!important;box-shadow:0 0 0 2px #48c7744d,0 0 20px #48c77426;animation:dl-highlight-fade 3s ease forwards}@keyframes dl-highlight-fade{0%{border-color:#48c774e6;box-shadow:0 0 0 3px #48c77466,0 0 24px #48c77433}60%{border-color:#48c774cc;box-shadow:0 0 0 2px #48c77440}to{border-color:var(--border);box-shadow:none;background:var(--surface2)}}.dl-card-active{border-color:#00b4a64d;background:#00b4a60a}.card-watched-badge{position:absolute;top:8px;right:8px;z-index:4;line-height:0;border-radius:50%;background:#0000008c;padding:3px;box-shadow:0 0 8px #48c77480;animation:watchedPop .35s cubic-bezier(.34,1.56,.64,1) both}.detail-watched-badge{position:absolute;bottom:10px;right:10px;z-index:4;line-height:0;border-radius:50%;background:#0009;padding:5px;box-shadow:0 0 12px #48c77499;animation:watchedPop .35s cubic-bezier(.34,1.56,.64,1) both}@keyframes watchedPop{0%{transform:scale(.4);opacity:0}to{transform:scale(1);opacity:1}}.watched-label{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:600;color:#48c774;background:#48c7741f;border:1px solid rgba(72,199,116,.35);border-radius:20px;padding:2px 10px 2px 6px;letter-spacing:.3px}.watched-btn{color:#48c774!important;border-color:#48c77466!important;display:inline-flex;align-items:center;gap:6px}.watched-btn:hover{background:#48c7741a!important}.episode-card.ep-watched{border-color:#48c77473;background:#48c7740a;box-shadow:0 0 0 1px #48c77426}.card.ep-watched{border-color:#48c7748c;box-shadow:0 0 0 1px #48c77433,inset 0 0 20px #48c7740d}.card.ep-watched:hover{border-color:#48c774cc;box-shadow:0 0 12px #48c77459}.context-menu{position:fixed;z-index:9999;background:linear-gradient(145deg,#0a141efa,#081018fa);border:1px solid var(--border);border-radius:8px;padding:4px;min-width:180px;box-shadow:0 8px 32px #000000b3;animation:ctxFadeIn .1s ease both}@keyframes ctxFadeIn{0%{opacity:0;transform:scale(.95) translateY(-4px)}to{opacity:1;transform:scale(1) translateY(0)}}.context-menu-item{width:100%;background:none;border:none;color:var(--text);text-align:left;padding:9px 14px;font-size:13px;border-radius:5px;cursor:pointer;transition:background .12s;display:flex;align-items:center;gap:8px}.context-menu-item:hover{background:#ffffff14}.saved-thumb.drag-over{outline:2px solid var(--red);outline-offset:2px;border-radius:4px}.saved-thumb[draggable=true]:active{cursor:grabbing}.trailer-overlay{position:fixed;inset:0;z-index:9999;background:#000000e6;display:flex;align-items:center;justify-content:center;animation:fadeIn .2s ease;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.trailer-modal{width:90vw;max-width:960px;background:linear-gradient(145deg,#08121cfc,#060e16fc);border-radius:12px;border:1px solid var(--border);overflow:hidden;box-shadow:0 24px 80px #000000e6;animation:slideUp .25s ease}.trailer-modal-header{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid var(--border);background:var(--surface2)}.trailer-modal-title{font-size:14px;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.trailer-close-btn{background:none;border:none;cursor:pointer;color:var(--text2);display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:6px;flex-shrink:0;transition:background .15s,color .15s}.trailer-close-btn svg{width:18px;height:18px}.trailer-close-btn:hover{background:#ffffff1a;color:var(--text)}.trailer-embed-wrap{position:relative;width:100%;padding-bottom:56.25%;background:#000}.close-confirm-overlay{position:fixed;inset:0;z-index:99999;background:#000000d1;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:fadeIn .15s ease}.close-confirm-modal{width:420px;background:linear-gradient(145deg,#08121cfc,#060e16fc);border:1px solid rgba(0,180,166,.4);border-radius:16px;padding:36px 32px 28px;display:flex;flex-direction:column;align-items:center;gap:16px;box-shadow:0 0 0 1px #00b4a626,0 32px 80px #000000e6,0 0 60px #00b4a614;animation:slideUp .2s ease}.close-confirm-icon-wrap{margin-bottom:4px}.close-confirm-icon-ring{width:64px;height:64px;border-radius:50%;background:#00b4a61f;border:1.5px solid rgba(0,180,166,.5);display:flex;align-items:center;justify-content:center;color:var(--red);box-shadow:0 0 24px #00b4a640}.close-confirm-icon-ring svg{width:28px;height:28px}.close-confirm-title{font-size:20px;font-weight:700;color:var(--text);text-align:center;letter-spacing:-.3px}.close-confirm-body{font-size:14px;color:var(--text2);text-align:center;line-height:1.6;max-width:300px}.close-confirm-count{color:var(--amber);font-weight:600}.close-confirm-actions{display:flex;flex-direction:column;gap:10px;width:100%;margin-top:8px}.close-confirm-btn-confirm{background:var(--red)!important;color:#050c0f!important;border:none!important;padding:12px!important;font-size:14px!important;font-weight:700!important;border-radius:8px!important;width:100%;transition:background .15s,transform .1s!important}.close-confirm-btn-confirm:hover{background:var(--red2)!important;transform:translateY(-1px)}.close-confirm-btn-cancel{background:var(--surface2)!important;color:var(--text)!important;border:1px solid var(--border)!important;padding:12px!important;font-size:14px!important;font-weight:500!important;border-radius:8px!important;width:100%;transition:background .15s!important}.close-confirm-btn-cancel:hover{background:var(--surface3)!important}.age-rating-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:4px;font-size:11px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;background:#ffffff1f;border:1px solid rgba(255,255,255,.2);color:var(--text)}.age-rating-badge--restricted{background:#00b4a626;border-color:#00b4a666;color:var(--red2)}.btn-restricted{opacity:.45!important;cursor:not-allowed!important;filter:grayscale(.6);pointer-events:none}.btn-restricted:hover{transform:none!important}.episode-card--restricted{cursor:default!important;opacity:.5;filter:grayscale(.4)}.episode-card--restricted:hover{background:var(--surface)!important;transform:none!important;box-shadow:none!important}.episode-restricted-overlay{position:absolute;inset:0;background:#000000a6;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;font-size:18px;border-radius:inherit}.episode-restricted-overlay span{font-size:10px;font-weight:600;color:#ffffffbf;text-align:center;letter-spacing:.3px;padding:0 6px}.card-age-badge{position:absolute;top:7px;left:7px;background:#000000c7;border:1px solid rgba(255,255,255,.18);color:#fff;font-size:9px;font-weight:700;letter-spacing:.5px;padding:3px 7px;border-radius:4px;text-transform:uppercase;line-height:1;z-index:2;display:inline-flex;align-items:center;gap:5px}.card-age-badge--restricted{background:#00b4a6d1;border-color:#00b4a699;color:#050c0f}.age-rating-pill{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;border-radius:20px;background:#ffffff14;border:1px solid rgba(255,255,255,.18);margin-bottom:16px;font-size:13px;font-weight:600;color:var(--text);width:fit-content}.age-rating-pill--restricted{background:#00b4a61f;border-color:#00b4a673;color:var(--red2)}.age-rating-pill-cert{font-size:13px;font-weight:800;letter-spacing:.5px;text-transform:uppercase}.age-rating-pill-label{font-size:11px;font-weight:500;color:#00d4c4d9;letter-spacing:.2px}.card--unreleased .card-poster{opacity:.55;filter:grayscale(40%)}.card-unreleased-overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#0000008c;gap:6px}.card-unreleased-label{font-size:12px;font-weight:700;color:var(--amber);letter-spacing:.5px;text-transform:uppercase;background:#0009;padding:4px 10px;border-radius:6px}.card-badge--unreleased{background:#f5a6232e;color:var(--amber);border:1px solid rgba(245,166,35,.4)}.card-badge--anime{background:#6d28d9;color:#ddd6fe;border:1px solid rgba(167,139,250,.4)}.episode-card--unreleased{cursor:default!important}.episode-card--unreleased .episode-thumb{opacity:.6;filter:grayscale(40%)}.episode-card--unreleased .episode-num,.episode-card--unreleased .episode-name,.episode-card--unreleased .episode-desc-wrap,.episode-card--unreleased .episode-progress-bar{opacity:.6}.dl-progress-pill{display:inline-flex;align-items:center;gap:4px;background:var(--surface3);border-radius:5px;padding:1px 7px;font-size:11px;font-variant-numeric:tabular-nums;font-family:ui-monospace,Cascadia Mono,monospace}.dl-progress-pill--active{color:var(--text)}.dl-progress-pill--empty{color:var(--text3)}.dl-progress-pill__label{cursor:text}.dl-progress-pill__edit-icon{cursor:text;opacity:.5}.dl-progress-pill__input{background:transparent;border:none;outline:none;color:var(--text);font-size:11px;width:72px;font-variant-numeric:tabular-nums;font-family:inherit}.dl-page{padding:48px 48px 80px}.dl-page__title{font-family:var(--font-display);font-size:48px;letter-spacing:1px;margin-bottom:6px}.dl-page__subtitle{color:var(--text3);font-size:14px;margin-bottom:16px}.dl-search-bar{display:flex;align-items:center;gap:8px;background:var(--surface2);border:1px solid var(--red);border-radius:8px;padding:6px 10px 6px 12px;box-shadow:0 0 0 3px #00b4a61a;margin-bottom:12px;max-width:520px}.dl-search-bar__input{flex:1;background:transparent;border:none;outline:none;font-size:14px;color:var(--text);font-family:var(--font-body);min-width:0}.dl-search-bar__count{font-size:12px;color:var(--text3);white-space:nowrap;padding:0 8px;border-left:1px solid var(--border);margin-left:4px;font-variant-numeric:tabular-nums}.dl-search-bar__close{background:none;border:none;color:var(--text3);cursor:pointer;font-size:12px;padding:2px 4px;border-radius:4px;line-height:1;transition:color .15s,background .15s;flex-shrink:0}.dl-search-bar__close:hover{color:var(--text);background:#ffffff14}.dl-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;margin-bottom:20px;padding:5px 10px;background:var(--surface);border:1px solid var(--border);border-radius:8px}.dl-toolbar__group{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.dl-toolbar__label{font-size:11px;color:var(--text3);font-weight:600;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.dl-toolbar__sort-btns{display:flex;gap:2px}.dl-toolbar__sort-btn{background:none;border:1px solid transparent;color:var(--text3);font-size:12px;font-weight:500;padding:3px 8px;border-radius:5px;cursor:pointer;transition:background .15s,border-color .15s,color .15s;font-family:var(--font-body)}.dl-toolbar__sort-btn:hover{background:#ffffff0f;color:var(--text2)}.dl-toolbar__sort-btn--active{background:color-mix(in srgb,var(--red) 15%,var(--surface2));border-color:var(--red);color:var(--text)}.dl-toolbar__dir-btn{background:none;border:1px solid var(--border);color:var(--text2);font-size:14px;width:26px;height:24px;border-radius:5px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s,border-color .15s,color .15s;line-height:1;flex-shrink:0}.dl-toolbar__dir-btn:hover{background:#ffffff0f;color:var(--text);border-color:var(--text3)}.dl-toolbar__toggle{background:none;border:1px solid transparent;color:var(--text3);font-size:12px;font-weight:500;padding:3px 8px;border-radius:5px;cursor:pointer;transition:all .15s;font-family:var(--font-body)}.dl-toolbar__toggle:hover{background:#ffffff0d;color:var(--text2)}.dl-toolbar__toggle--on{background:#ffffff0d;border-color:var(--border);color:var(--text2)}.dl-toolbar__search-hint{display:flex;align-items:center;gap:4px;background:none;border:1px solid var(--border);color:var(--text3);font-size:12px;padding:3px 8px;border-radius:5px;cursor:pointer;transition:all .15s;font-family:var(--font-body)}.dl-toolbar__search-hint:hover{color:var(--text2);background:#ffffff0d}.dl-toolbar__search-hint-key{font-size:10px;color:var(--text3);background:var(--surface2);border:1px solid var(--border);border-radius:3px;padding:1px 3px;font-family:monospace}.dl-page__section{margin-bottom:48px}.dl-section-title{margin-bottom:16px}.dl-section-title--inline{margin-bottom:0}.dl-page__list{display:flex;flex-direction:column;gap:16px}.dl-page__local-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;flex-wrap:wrap;gap:10px}.dl-page__scan-controls{display:flex;gap:8px;align-items:center}.dl-page__scan-input{background:var(--surface2);border:1px solid var(--border);border-radius:6px;padding:5px 10px;font-size:12px;color:var(--text);width:220px}.dl-page__local-list{display:flex;flex-direction:column;gap:10px}.dl-page__empty-text{color:var(--text3);font-size:14px;padding:16px 0}.dl-poster{object-fit:cover;border-radius:6px;flex-shrink:0;display:block;background:var(--surface3)}.dl-poster--fallback{border-radius:6px;background:var(--surface3);display:flex;align-items:center;justify-content:center;color:var(--text3);flex-shrink:0}.dl-card__header{display:flex;align-items:flex-start;gap:12px;margin-bottom:10px}.dl-card__info{flex:1;min-width:0}.dl-card__name{font-weight:600;font-size:15px;margin-bottom:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dl-card__meta{display:flex;gap:12px;font-size:12px;color:var(--text3);align-items:center;flex-wrap:wrap}.dl-card-active .dl-card__meta{gap:14px}.dl-card__right{display:flex;align-items:center;gap:12px;flex-shrink:0}.dl-card__pct{font-family:var(--font-display);font-size:28px;color:var(--red);min-width:56px;text-align:right}.dl-card__bar-wrap{height:6px;background:var(--surface3);border-radius:3px;overflow:hidden}.dl-card__bar-fill{height:100%;background:var(--surface3);border-radius:3px;transition:width .4s ease}.dl-card__bar-fill--active{background:var(--red);box-shadow:0 0 8px #00b4a699}.dl-card__log{margin-top:8px;font-size:11px;color:var(--text3);font-family:monospace;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dl-card__row{display:flex;align-items:center;gap:14px}.dl-card__poster-wrap{flex-shrink:0;border-radius:6px;transition:opacity .15s;cursor:default}.dl-card__poster-wrap--clickable{cursor:pointer}.dl-card__body{flex:1;min-width:0}.dl-card__title-row{display:flex;align-items:center;gap:7px;margin-bottom:3px;min-width:0}.dl-card__title{font-weight:600;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:default;color:var(--text);transition:color .15s}.dl-card__title--clickable{cursor:pointer}.dl-card__watched-icon{color:#4caf50;flex-shrink:0;display:flex;align-items:center}.dl-card__actions{display:flex;gap:6px;flex-shrink:0;align-items:center}.dl-status{font-weight:600}.dl-status--downloading{color:var(--red)}.dl-status--completed{color:#4caf50}.dl-status--error{color:#f44336}.dl-status--interrupted{color:var(--amber)}.dl-status--local{color:#4caf50}.dl-status--missing{color:#f44336}.btn--sm{font-size:12px;padding:5px 12px}.dl-btn--sm{padding:5px 10px;font-size:12px;gap:4px}.dl-btn--sm-primary{padding:6px 14px;font-size:12px;gap:5px}.dl-btn--sm-icon{padding:6px 10px;font-size:12px}.source-dropdown{position:absolute;top:calc(100% + 8px);left:0;background:linear-gradient(145deg,#0a141efa,#081018fa);border:1px solid var(--border);border-radius:10px;padding:6px;min-width:180px;box-shadow:0 12px 40px #000c;display:flex;flex-direction:column;gap:2px;animation:ctxFadeIn .12s ease both}.source-dropdown__item{display:flex;align-items:center;gap:8px;width:100%;background:none;border:none;color:var(--text2);text-align:left;padding:9px 12px;font-size:13px;border-radius:6px;cursor:pointer;transition:background .12s,color .12s}.source-dropdown__item:hover{background:#ffffff12;color:var(--text)}.source-dropdown__item--active{color:var(--text);background:var(--red-dim)}.source-dropdown__item--active:before{content:"✓";color:var(--red);font-weight:700;font-size:11px;flex-shrink:0}.source-dropdown__tag{margin-left:auto;font-size:9px;font-weight:700;letter-spacing:1px;padding:2px 6px;border-radius:3px;background:#8b5cf633;color:#a78bfa;border:1px solid rgba(139,92,246,.35);flex-shrink:0}.source-dropdown__note{font-size:10px;color:var(--text3);margin-left:auto;flex-shrink:0}.player-outer{position:relative}.player-source-wrap{position:relative;display:inline-block;margin-bottom:8px}.player-overlay-btn--static{position:static;-webkit-backdrop-filter:none;backdrop-filter:none}.source-dropdown--fixed{position:fixed;top:0;left:0;z-index:9999}.player-no-progress-hint{position:absolute;bottom:10px;left:12px;font-size:10px;color:#ffffff73;pointer-events:none;letter-spacing:.3px}.anime-override-row{display:flex;align-items:center;gap:8px;margin-top:10px;padding:8px 12px;background:#8b5cf614;border:1px solid rgba(139,92,246,.25);border-radius:8px;font-size:12px;color:var(--text2)}.anime-override-label{flex-shrink:0;color:#a78bfa;font-weight:500}.anime-override-field{display:flex;align-items:center;gap:4px;font-weight:600;color:var(--text)}.anime-override-input{width:52px;background:var(--surface2);border:1px solid var(--border);border-radius:5px;color:var(--text);font-size:12px;padding:3px 6px;text-align:center}.anime-override-input:focus{outline:none;border-color:#8b5cf699}.anime-override-reset{margin-left:auto;font-size:14px;padding:2px 8px;opacity:.6}.anime-override-reset:hover{opacity:1}.carousel-section{padding:14px 48px}.carousel-wrapper{position:relative;display:flex;align-items:center;justify-content:center;height:312px;overflow:hidden;-webkit-user-select:none;user-select:none;contain:layout style}.carousel-track{position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:center}@keyframes carouselSlideInFwd{0%{transform:translate(calc(var(--carousel-tx, 0px) + 55px)) scale(.9);opacity:.3}to{transform:translate(var(--carousel-tx, 0px)) scale(1);opacity:1}}@keyframes carouselSlideInBwd{0%{transform:translate(calc(var(--carousel-tx, 0px) - 55px)) scale(.9);opacity:.3}to{transform:translate(var(--carousel-tx, 0px)) scale(1);opacity:1}}.carousel-item{position:absolute;display:flex;flex-direction:column;align-items:center;gap:8px;transition:transform .42s cubic-bezier(.25,.46,.45,.94),opacity .42s ease;will-change:transform,opacity}.carousel-track--dir-fwd .carousel-item--active.carousel-item--animating{animation:carouselSlideInFwd .42s cubic-bezier(.25,.46,.45,.94) both}.carousel-track--dir-bwd .carousel-item--active.carousel-item--animating{animation:carouselSlideInBwd .42s cubic-bezier(.25,.46,.45,.94) both}.carousel-item--active{filter:drop-shadow(0 8px 36px rgba(0,0,0,.85))}.carousel-item--active .carousel-poster-wrap{box-shadow:0 0 0 2px #00b4a640,0 12px 40px #0009}.carousel-poster-wrap{position:relative;display:block;border-radius:8px;overflow:hidden;line-height:0}.carousel-poster{width:170px;height:255px;object-fit:cover;border-radius:10px;display:block;background:var(--surface2)}.carousel-poster--placeholder{width:170px;height:255px;background:var(--surface2);border-radius:10px;display:flex;align-items:center;justify-content:center;padding:12px;text-align:center;font-size:13px;color:var(--text2);line-height:1.3}.carousel-unreleased-overlay{position:absolute;inset:0;background:#000000b3;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;border-radius:10px;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);padding:8px;overflow:hidden}.carousel-unreleased-label{font-size:11px;font-weight:700;color:#fff;letter-spacing:.4px;text-align:center;line-height:1.3;white-space:nowrap}.carousel-unreleased-date{font-size:10px;color:#fff9;letter-spacing:.2px;text-align:center;line-height:1.3;white-space:nowrap}.carousel-score{position:absolute;top:6px;right:6px;display:flex;align-items:center;gap:3px;background:#000000bf;color:var(--amber);font-size:11px;font-weight:600;padding:2px 6px;border-radius:4px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);line-height:1.5;pointer-events:none}.carousel-badge-wrap{position:absolute;bottom:6px;left:6px;pointer-events:none}.carousel-anime-badge{position:absolute;top:6px;left:6px;pointer-events:none;font-size:10px;font-weight:700;letter-spacing:.4px;padding:1px 5px;border-radius:3px;border:1.5px solid rgba(167,139,250,.7);background:#6d28d98c;color:#ddd6fe;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);line-height:1.5}.carousel-rating-badge{display:inline-block;font-size:10px;font-weight:700;letter-spacing:.4px;padding:1px 5px;border-radius:3px;border:1.5px solid rgba(255,255,255,.55);background:#000000a6;color:#ffffffe6;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);line-height:1.5}.carousel-rating-badge--restricted{border-color:var(--red);color:var(--red);background:#00b4a626}.carousel-info{text-align:center;max-width:190px}.carousel-info__title{font-family:var(--font-display);font-size:15px;letter-spacing:.4px;color:var(--text);margin-bottom:3px;line-height:1.2;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.carousel-info__meta{display:flex;gap:6px;justify-content:center;font-size:12px;color:var(--text2);align-items:center}.carousel-info__type{background:var(--surface2);border-radius:3px;padding:1px 5px;font-size:10px;font-weight:600;letter-spacing:.3px;color:var(--text3);text-transform:uppercase}.carousel-btn{position:absolute;top:40%;transform:translateY(-50%);z-index:20;background:#0a1418d9;border:1px solid var(--border);color:var(--text);width:34px;height:48px;border-radius:7px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .18s,border-color .18s,color .18s;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:0}.carousel-btn:hover{background:#00b4a6d9;border-color:var(--red);color:#050c0f}.carousel-btn--left{left:0}.carousel-btn--right{right:0}.carousel-dots{display:flex;align-items:center;justify-content:center;gap:5px;margin-top:10px;flex-wrap:wrap}.carousel-dot{width:6px;height:6px;border-radius:50%;background:var(--border);border:none;cursor:pointer;padding:0;transition:background .2s,transform .2s}.carousel-dot--active{background:var(--amber);transform:scale(1.5);box-shadow:0 0 6px #f5a62399}.carousel-dot:hover:not(.carousel-dot--active){background:var(--text2)}.carousel-dots__more{font-size:11px;color:var(--text3);margin-left:4px}.sidebar-context-menu{background:var(--surface3);border:1px solid var(--border);border-radius:6px;padding:4px 0;min-width:180px;box-shadow:0 4px 16px #0006;-webkit-user-select:none;user-select:none}.sidebar-context-menu-item{padding:8px 14px;font-size:13px;color:var(--text);cursor:pointer;transition:background .15s}.sidebar-context-menu-item:hover{background:var(--surface2);color:var(--red)}.player-overlay-group{position:absolute;top:12px;left:12px;display:flex;align-items:center;gap:6px;z-index:10}.player-overlay-group .player-overlay-btn{position:relative;top:auto;left:auto;right:auto}.player-wrap .player-overlay-btn,.player-wrap .player-overlay-group{opacity:0;transition:opacity .25s ease}.player-wrap:hover .player-overlay-btn,.player-wrap:hover .player-overlay-group{opacity:1}.player-blocked-badge{display:inline-flex;align-items:center;justify-content:center;min-width:17px;height:17px;padding:0 4px;border-radius:8px;background:#3dba6f;color:#fff;font-size:10px;font-weight:700;line-height:1;margin-left:1px;flex-shrink:0}.blocked-modal-overlay{position:fixed;inset:0;z-index:9000;background:#000000d1;display:flex;align-items:center;justify-content:center}.blocked-modal{background:var(--surface2);border:1px solid var(--border);border-radius:14px;width:360px;max-height:520px;display:flex;flex-direction:column;box-shadow:0 24px 70px #000000e6;overflow:hidden;animation:modal-pop .18s cubic-bezier(.34,1.56,.64,1)}@keyframes modal-pop{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}.blocked-modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 18px 12px;border-bottom:1px solid var(--border);flex-shrink:0;background:var(--surface3)}.blocked-modal-title{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:var(--text)}.blocked-modal-title svg{color:#3dba6f;flex-shrink:0}.blocked-modal-close{background:none;border:none;color:var(--text3);cursor:pointer;padding:4px;border-radius:6px;display:flex;align-items:center;transition:color .15s,background .15s}.blocked-modal-close:hover{color:var(--text);background:#ffffff14}.blocked-modal-close svg{width:16px;height:16px}.blocked-modal-subtitle{padding:10px 18px 8px;font-size:12px;color:var(--text3);flex-shrink:0}.blocked-modal-list{flex:1;overflow-y:auto;padding:4px 0;min-height:0}.blocked-modal-list::-webkit-scrollbar{width:4px}.blocked-modal-list::-webkit-scrollbar-track{background:transparent}.blocked-modal-list::-webkit-scrollbar-thumb{background:#ffffff1f;border-radius:2px}.blocked-modal-empty{padding:28px 18px;text-align:center;font-size:13px;color:var(--text3)}.blocked-modal-row{display:flex;align-items:center;justify-content:space-between;padding:7px 18px;gap:12px;transition:background .1s}.blocked-modal-row:hover{background:#ffffff0a}.blocked-modal-domain{font-size:12px;color:var(--text2);font-family:monospace;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.blocked-modal-count{font-size:11px;font-weight:600;color:#3dba6f;background:#3dba6f1a;border:1px solid rgba(61,186,111,.22);border-radius:10px;padding:2px 8px;flex-shrink:0}.blocked-modal-footer{display:flex;align-items:center;gap:6px;padding:11px 18px;border-top:1px solid var(--border);font-size:12px;color:var(--text3);flex-shrink:0;background:var(--surface3)}.blocked-modal-footer svg{color:var(--text3);flex-shrink:0}.blocked-modal-footer strong{color:var(--text2)}html[data-win-titlebar] .sidebar{top:32px}html[data-win-titlebar] .main{margin-top:32px;height:calc(100vh - 32px)}html[data-win-titlebar][data-maximized] body{padding:8px}html[data-win-titlebar][data-maximized] .sidebar{top:40px;left:8px;bottom:8px;height:auto}html[data-win-titlebar][data-maximized] .main{margin-top:40px;margin-right:8px;margin-bottom:8px;height:calc(100vh - 64px)}::highlight(settings-search){background-color:#f5a62359;color:inherit}::highlight(settings-search-active){background-color:#f5a623d9;color:#050c0f}.episode-check-item:hover{color:var(--text)!important}.sk{background:linear-gradient(90deg,#ffffff08 25%,#ffffff12,#ffffff08 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:4px}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.auto-source-badge{position:fixed;top:16px;right:16px;z-index:1000;display:flex;align-items:center;gap:8px;padding:8px 16px;border-radius:20px;font-size:12px;font-weight:600;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);transition:all .3s ease;pointer-events:none}.auto-source-badge.testing{background:#f5a62326;border:1px solid rgba(245,166,35,.3);color:var(--amber2)}.auto-source-badge.found{background:#48c77426;border:1px solid rgba(72,199,116,.3);color:#48c774}.auto-source-badge.failed{background:#f4433626;border:1px solid rgba(244,67,54,.3);color:#f44336}.auto-source-badge .dot{width:6px;height:6px;border-radius:50%;background:currentColor;animation:pulse-dot 1.5s ease infinite}.auto-source-badge.found .dot,.auto-source-badge.failed .dot{animation:none}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.8)}}.ns-row-section{padding:14px 0 20px 48px}.ns-row-title{font-family:var(--font-display);font-size:24px;letter-spacing:1px;color:var(--text);margin-bottom:14px;display:flex;align-items:center;gap:10px}.ns-row{display:flex;gap:12px;overflow-x:auto;overflow-y:visible;padding:8px 4px 24px;cursor:grab;-webkit-overflow-scrolling:touch;scrollbar-width:none;scroll-padding-inline:4px}.ns-row::-webkit-scrollbar{display:none}.ns-row:active{cursor:grabbing}.ns-row-card{flex-shrink:0;width:150px;cursor:pointer;border-radius:var(--radius);background:linear-gradient(145deg,#0c1620eb,#081018f2);border:1px solid var(--border);transition:box-shadow .2s ease,border-color .2s ease;position:relative;z-index:1;contain:layout style;isolation:isolate}.ns-row-card:hover{z-index:20;border-color:var(--red);box-shadow:0 4px 20px #00000080,0 0 14px #00b4a62e}.ns-row-card-poster{position:relative;aspect-ratio:2/3;overflow:hidden;border-radius:var(--radius) var(--radius) 0 0;background:var(--surface3)}.ns-row-card-poster img{width:100%;height:100%;object-fit:cover;display:block;-webkit-user-select:none;user-select:none;pointer-events:none}.ns-row-card-noposter{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--text3)}.ns-row-card-noposter svg{width:28px;height:28px}.ns-row-card-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.9) 0%,transparent 55%);opacity:0;transition:opacity .25s;display:flex;align-items:center;justify-content:center}.ns-row-card:hover .ns-row-card-overlay{opacity:1}.ns-row-card-play{width:42px;height:42px;border-radius:50%;background:var(--red);display:flex;align-items:center;justify-content:center;box-shadow:0 0 20px #00b4a68c;transition:transform .2s}.ns-row-card:hover .ns-row-card-play{transform:none}.ns-row-card-play svg{width:16px;height:16px;color:#fff;margin-left:2px}.ns-row-card-score{position:absolute;top:6px;right:6px;display:flex;align-items:center;gap:3px;background:#000000c2;color:var(--amber);font-size:10px;font-weight:600;padding:2px 6px;border-radius:4px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);line-height:1.5;pointer-events:none}.ns-row-card-badge{position:absolute;top:6px;left:6px;font-size:9px;font-weight:700;padding:2px 5px;border-radius:3px;letter-spacing:.3px;line-height:1.5;pointer-events:none}.ns-badge-anime{background:#6d28d9a6;border:1.5px solid rgba(167,139,250,.55);color:#ddd6fe;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.ns-badge-rating{background:#000000b8;border:1.5px solid rgba(255,255,255,.22);color:#ffffffeb;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.ns-badge-restricted{background:#00b4a6d1;border-color:#00b4a68c;color:#050c0f}.ns-row-card-restricted{position:absolute;inset:0;background:#0000009e;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:22px;gap:5px;pointer-events:none}.ns-row-card-restricted span{font-size:10px;font-weight:600;color:#ffffffb3;letter-spacing:.3px}.ns-row-card-info{padding:8px 10px 10px;border-radius:0 0 var(--radius) var(--radius);overflow:hidden}.ns-row-card-title{font-size:12px;font-weight:500;color:var(--text);margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3}.ns-row-card-meta{display:flex;align-items:center;gap:5px;font-size:11px;color:var(--text3);flex-wrap:nowrap}.ns-row-card-type{font-size:9px;font-weight:700;letter-spacing:.4px;padding:1px 5px;border-radius:3px;background:var(--surface3);color:var(--text3);text-transform:uppercase;flex-shrink:0}.watch-page{min-height:100vh;background:transparent;padding-bottom:80px}.watch-topbar{display:flex;align-items:center;gap:16px;padding:1px 20px;background:linear-gradient(135deg,#03080ef7,#050b13f2,#040910f5 60%,#060d16f0);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);position:sticky;top:0;z-index:50;border-bottom:1px solid rgba(0,180,166,.1);will-change:transform;transform:translateZ(0);box-shadow:0 1px #00b4a61f,0 4px 20px #0009,inset 0 1px #ffffff0a}.watch-topbar:after{content:"";position:absolute;bottom:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent 0%,rgba(0,180,166,.35) 20%,rgba(0,180,166,.55) 50%,rgba(245,166,35,.25) 80%,transparent 100%);pointer-events:none}.watch-topbar-title{font-family:var(--font-display);font-size:20px;letter-spacing:.5px;color:var(--text);flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.watch-topbar-ep{font-size:14px;color:var(--text3);font-family:var(--font-body);font-weight:400}.watch-player-wrap{position:relative;width:100%;background:#000;aspect-ratio:16 / 9;max-height:85vh;overflow:hidden;isolation:isolate}.watch-player-loading{position:absolute;inset:0;z-index:10;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#000000eb;gap:16px;font-size:14px;color:var(--text2)}.watch-source-bar{position:absolute;top:12px;left:12px;z-index:20;display:flex;gap:8px;opacity:0;transition:opacity .25s}.watch-player-wrap:hover .watch-source-bar{opacity:1}.watch-meta{display:flex;gap:32px;align-items:flex-start;padding:28px 48px 16px;border-bottom:1px solid var(--border);background:linear-gradient(180deg,rgba(3,8,14,.6) 0%,transparent 100%)}.watch-meta-left{flex:1;min-width:0}.watch-meta-title{font-family:var(--font-display);font-size:42px;line-height:1;margin-bottom:14px;letter-spacing:1px}.watch-meta-info{display:flex;flex-wrap:wrap;gap:14px;align-items:center;font-size:13px;color:var(--text2);margin-bottom:16px}.watch-meta-overview{font-size:14px;color:var(--text2);line-height:1.7;max-width:720px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.watch-meta-actions{display:flex;gap:10px;flex-shrink:0;flex-wrap:wrap;align-items:flex-start;padding-top:8px}.watch-episode-section{padding-top:8px}.watch-season-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}.watch-season-tab{padding:6px 16px;border-radius:20px;border:1px solid var(--border);background:var(--surface);color:var(--text2);font-size:13px;font-weight:500;cursor:pointer;transition:all .18s ease}.watch-season-tab:hover{border-color:var(--red);color:var(--red)}.watch-season-tab--active{background:var(--red);border-color:var(--red);color:#fff}.watch-episode-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px}.watch-episode-btn{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:3px;padding:10px 12px 12px;border-radius:10px;border:1px solid var(--border);background:var(--surface);color:var(--text2);font-size:12px;cursor:pointer;text-align:left;transition:all .18s ease;overflow:hidden}.watch-episode-btn:hover{border-color:var(--red);color:var(--text);background:#00b4a60f}.watch-episode-btn--active{border-color:var(--red);background:#00b4a61f;color:var(--red)}.watch-episode-btn--watched{opacity:.6}.watch-episode-num{font-weight:700;font-size:13px;color:inherit}.watch-episode-name{font-size:11px;color:var(--text3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%}.watch-episode-progress{position:absolute;bottom:0;left:0;right:0;height:3px;background:#ffffff14}.watch-episode-progress-fill{height:100%;background:var(--red);border-radius:0 2px 2px 0;transition:width .3s ease}.watch-episode-check{position:absolute;top:6px;right:8px;font-size:11px;color:#4caf50}.player-overlay-btn--active{background:#00b4a633;border-color:var(--red);color:var(--red)}.movie-detail-page{min-height:100vh}.movie-preview-hero{position:relative;width:100%;height:clamp(220px,42vw,480px);overflow:hidden;border-radius:16px;margin-bottom:0;cursor:pointer}.movie-preview-backdrop{position:absolute;inset:0;background-size:cover;background-position:center 20%;background-color:var(--surface);transition:transform .4s ease}.movie-preview-hero:hover .movie-preview-backdrop{transform:scale(1.02)}.movie-preview-gradient-bottom{position:absolute;inset:0;background:linear-gradient(to bottom,transparent 30%,rgba(0,0,0,.5) 70%,rgba(0,0,0,.92) 100%)}.movie-preview-gradient-left{position:absolute;inset:0;background:linear-gradient(to right,rgba(0,0,0,.55) 0%,transparent 60%)}.movie-preview-play-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .25s ease;pointer-events:none}.movie-preview-play-overlay--visible{opacity:1;pointer-events:auto}.movie-preview-play-btn{width:72px;height:72px;border-radius:50%;background:#000000b3;border:3px solid rgba(255,255,255,.85);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .18s ease,background .18s ease;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.movie-preview-play-btn:hover{transform:scale(1.1);background:var(--red);border-color:var(--red)}.movie-preview-play-icon{font-size:28px;color:#fff;margin-left:4px;line-height:1}.movie-preview-badges{position:absolute;bottom:16px;left:20px;display:flex;gap:8px;flex-wrap:wrap}.movie-preview-badge{padding:4px 10px;border-radius:6px;font-size:12px;font-weight:600;background:#000000a6;color:#fff;border:1px solid rgba(255,255,255,.15);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.movie-preview-badge--rating{color:#fbbf24;border-color:#fbbf244d}.movie-preview-badge--watched{color:#4caf50;border-color:#4caf504d}.movie-preview-progress{position:absolute;bottom:0;left:0;right:0;height:4px;background:#ffffff1a}.movie-preview-progress-fill{height:100%;background:var(--red);transition:width .3s ease}.movie-detail-card{display:flex;gap:28px;padding:24px 0 8px;align-items:flex-start}.movie-detail-poster{position:relative;width:clamp(120px,22vw,200px);flex-shrink:0;border-radius:12px;overflow:visible}.movie-detail-poster img{width:100%;border-radius:12px;display:block;box-shadow:0 8px 32px #00000080}.movie-detail-poster-placeholder{width:100%;aspect-ratio:2/3;border-radius:12px;background:var(--surface);display:flex;align-items:center;justify-content:center;color:var(--text3);font-size:36px}.movie-detail-poster-actions{display:flex;flex-direction:column;gap:8px;margin-top:12px}.movie-detail-info{flex:1;min-width:0}.movie-detail-type-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:6px}.movie-detail-title{font-size:clamp(20px,4vw,32px);font-weight:700;color:var(--text);line-height:1.2;margin:0 0 10px}.movie-detail-meta{display:flex;gap:12px;flex-wrap:wrap;align-items:center;font-size:13px;color:var(--text2);margin-bottom:10px}.movie-detail-cta{display:flex;gap:10px;flex-wrap:wrap;margin:16px 0}.movie-detail-crew{display:flex;gap:20px;flex-wrap:wrap;margin-top:4px}.movie-detail-crew-item{display:flex;flex-direction:column;gap:2px}.movie-detail-crew-label{font-size:11px;color:var(--text3);text-transform:uppercase;letter-spacing:.06em}.movie-detail-crew-name{font-size:13px;color:var(--text);font-weight:500}.movie-detail-tabs{display:flex;gap:4px;border-bottom:1px solid var(--border);margin-bottom:20px}.movie-detail-tab{padding:10px 18px;font-size:14px;font-weight:500;color:var(--text2);background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:all .18s ease;margin-bottom:-1px}.movie-detail-tab:hover{color:var(--text)}.movie-detail-tab--active{color:var(--red);border-bottom-color:var(--red)}.movie-detail-tab-content{padding-bottom:32px}.movie-detail-about{display:flex;flex-direction:column;gap:20px}.movie-detail-section{display:flex;flex-direction:column;gap:8px}.movie-detail-section-label{font-size:11px;font-weight:600;color:var(--text3);text-transform:uppercase;letter-spacing:.07em}.movie-detail-stats{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px}.movie-detail-stat{padding:12px 16px;background:var(--surface);border:1px solid var(--border);border-radius:10px;display:flex;flex-direction:column;gap:4px}.movie-detail-stat-label{font-size:11px;color:var(--text3);text-transform:uppercase;letter-spacing:.06em}.movie-detail-stat-val{font-size:15px;font-weight:600;color:var(--text)}.movie-detail-keywords{display:flex;flex-wrap:wrap;gap:6px}.genre-tag--sm{font-size:11px;padding:3px 10px}.movie-detail-download-row{display:flex;align-items:center;gap:14px;padding:16px 20px;background:var(--surface);border:1px solid var(--border);border-radius:12px}.movie-detail-download-icon{width:40px;height:40px;border-radius:10px;background:#00b4a614;display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0}.movie-detail-download-title{font-size:14px;font-weight:600;color:var(--text)}.movie-detail-download-sub{font-size:12px;color:var(--text3);margin-top:2px}.movie-cast-strip{display:flex;gap:16px;flex-wrap:wrap}.movie-cast-item{display:flex;flex-direction:column;align-items:center;gap:6px;width:80px;text-align:center}.movie-cast-avatar{width:60px;height:60px;border-radius:50%;overflow:hidden;background:var(--surface);border:2px solid var(--border);display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:700;color:var(--red);flex-shrink:0}.movie-cast-avatar img{width:100%;height:100%;object-fit:cover}.movie-cast-name{font-size:11px;font-weight:600;color:var(--text);line-height:1.3;word-break:break-word}.movie-cast-role{font-size:10px;color:var(--text3);line-height:1.3;word-break:break-word}@media(min-width:769px)and (max-width:1024px){:root{--sidebar: 50px}.section{padding:12px 32px}.carousel-section{padding:12px 32px 16px}.ns-row-section{padding:12px 0 16px 32px}.watch-meta{padding:20px 32px 14px}.dl-page{padding:32px 32px 60px}.library-header{padding:32px 32px 0}.library-section{padding:24px 32px}.detail-title{font-size:60px}.hero-title{font-size:68px}.watch-meta-title{font-size:36px}.cards-grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr))}.scroll-row .card,.ns-row-card{width:130px}}@media(max-width:768px){:root{--sidebar: 0px}.sidebar{display:none!important}.main{margin-left:0;padding-top:var(--mobile-topbar);padding-bottom:calc(var(--mobile-nav) + env(safe-area-inset-bottom,0px));height:100vh}.hero{height:clamp(240px,60vw,480px);min-height:240px;max-height:480px;margin-top:0}.hero-title{font-size:clamp(28px,8vw,44px)}.hero-content{padding:0 16px 56px}.hero-overview{font-size:13px;-webkit-line-clamp:2}.hero-actions{gap:10px;margin-top:16px}.hero-actions .btn-primary,.hero-actions .btn-secondary{padding:10px 18px;font-size:14px}.hero-dots{right:16px;bottom:16px}.section{padding:10px 14px}.section-title{font-size:20px}.carousel-section{padding:10px 14px 14px}.ns-row-section{padding:10px 0 14px 14px}.ns-row-title{font-size:18px}.cards-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:10px}.card:hover{border-color:var(--red)}.scroll-row .card,.ns-row-card{width:110px}.detail-content{flex-direction:column;padding:0 16px 40px;gap:20px}.detail-poster{width:140px;align-self:center}.detail-title{font-size:clamp(32px,9vw,48px)}.detail-overview{font-size:14px}.detail-actions .btn-primary,.detail-actions .btn-secondary{padding:12px 20px;font-size:14px}.watch-meta{flex-direction:column;padding:16px 14px 10px;gap:14px}.watch-meta-title{font-size:clamp(20px,6vw,32px)}.watch-topbar{padding:8px 14px}.watch-topbar-title{font-size:15px}.watch-player-wrap{max-height:56vw}.library-header{padding:24px 14px 0}.library-title{font-size:clamp(28px,8vw,40px)}.library-section{padding:20px 14px}.dl-page{padding:20px 14px 80px}.dl-page__title{font-size:clamp(28px,8vw,40px)}.episodes-grid{grid-template-columns:1fr}.episode-thumb{width:90px}.search-box{border-radius:0 0 12px 12px}.modal-overlay{padding-top:calc(var(--mobile-topbar) + 8px)}.close-confirm-modal{width:92vw}.download-modal{border-radius:14px 14px 0 0;max-height:85vh;overflow-y:auto}.modal-backdrop{align-items:flex-end;padding:0}.carousel-wrapper{height:250px}.carousel-poster,.carousel-poster--placeholder{width:130px;height:196px}.movie-detail-card{flex-direction:column;gap:16px}.movie-preview-hero{height:clamp(160px,50vw,280px);border-radius:10px}.movie-preview-play-btn{width:56px;height:56px}.movie-preview-play-icon{font-size:20px}.btn{font-size:13px}.toast{bottom:calc(var(--mobile-nav) + 12px);left:14px}}@media(max-width:420px){.hero-title{font-size:clamp(22px,7vw,32px)}.hero-content{padding:0 12px 52px}.cards-grid{grid-template-columns:repeat(auto-fill,minmax(88px,1fr));gap:8px}.scroll-row .card,.ns-row-card{width:95px}.detail-title{font-size:clamp(28px,8vw,38px)}.watch-meta-title{font-size:clamp(18px,5.5vw,26px)}.section-title{font-size:17px}.ns-row-title{font-size:15px}.dl-page__title,.library-title{font-size:clamp(24px,7vw,32px)}.carousel-wrapper{height:220px}.carousel-poster,.carousel-poster--placeholder{width:110px;height:165px}.watch-episode-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:6px}.movie-detail-tabs{gap:0}.movie-detail-tab{padding:8px 12px;font-size:13px}.movie-cast-item{width:68px}.movie-cast-avatar{width:50px;height:50px}.movie-detail-stats{grid-template-columns:1fr 1fr}.movie-detail-cta{flex-direction:column}.movie-detail-cta .btn{width:100%;justify-content:center}}@media(min-width:769px){.mobile-nav{display:none!important}}
