:root{--accent:#e53935;--bg:#0a0a0a;--surface:#141414;--surface-2:#1e1e1e;--border:#282828;--text:#efefef;--text-muted:#737373;--text-dim:#3d3d3d;--header-h:54px;--nav-h:62px;--radius:10px;--radius-sm:6px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:15px;line-height:1.5;overflow-x:hidden}button{cursor:pointer;font-family:inherit;font-size:inherit}input{font-family:inherit;font-size:inherit}.app-header{height:var(--header-h);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--border);z-index:100;background:#0a0a0aeb;justify-content:space-between;align-items:center;padding:0 1rem;display:flex;position:fixed;top:0;left:0;right:0}.brand-btn{color:var(--accent);letter-spacing:-.3px;background:0 0;border:none;font-size:1.05rem;font-weight:700}.user-select{background:var(--surface-2);color:var(--text);border:1px solid var(--border);border-radius:var(--radius-sm);outline:none;padding:.3rem .6rem;font-size:.8rem}.bottom-nav{height:var(--nav-h);-webkit-backdrop-filter:blur(16px);border-top:1px solid var(--border);z-index:100;padding-bottom:env(safe-area-inset-bottom);background:#0c0c0cf7;display:flex;position:fixed;bottom:0;left:0;right:0}.nav-btn{color:var(--text-muted);letter-spacing:.4px;text-transform:uppercase;background:0 0;border:none;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:3px;font-size:.62rem;font-weight:500;transition:color .15s;display:flex}.nav-btn.active{color:var(--accent)}.nav-btn:hover:not(.active){color:#aaa}.page-content{padding-top:var(--header-h);padding-bottom:calc(var(--nav-h) + env(safe-area-inset-bottom,0px));min-height:100dvh}.page-content.no-nav{padding-bottom:0}.page{max-width:1000px;margin:0 auto;padding:1.25rem 1rem}.dash-section{margin-bottom:2rem}.section-title{text-transform:uppercase;letter-spacing:1.4px;color:var(--text-muted);margin-bottom:.875rem;font-size:.7rem;font-weight:600}.up-next-row{scrollbar-width:none;gap:.75rem;padding-bottom:.5rem;display:flex;overflow-x:auto}.up-next-row::-webkit-scrollbar{display:none}.up-next-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;flex-shrink:0;align-items:flex-start;gap:.7rem;min-width:200px;max-width:240px;padding:.75rem;transition:border-color .15s;display:flex}.up-next-card:hover{border-color:#404040}.up-next-card img{aspect-ratio:2/3;object-fit:cover;border-radius:5px;flex-shrink:0;width:48px}.up-next-body{flex-direction:column;gap:3px;min-width:0;display:flex}.up-next-show{white-space:nowrap;text-overflow:ellipsis;font-size:.875rem;font-weight:600;overflow:hidden}.up-next-ep{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.73rem;overflow:hidden}.btn-watch{background:var(--accent);color:#fff;border-radius:var(--radius-sm);border:none;align-items:center;gap:.3rem;margin-top:.4rem;padding:.3rem .6rem;font-size:.72rem;font-weight:600;transition:opacity .15s;display:inline-flex}.btn-watch:hover{opacity:.85}.history-list{flex-direction:column;display:flex}.history-row{border-bottom:1px solid var(--border);align-items:center;gap:.875rem;padding:.75rem 0;transition:opacity .15s;display:flex}.history-row.clickable{cursor:pointer}.history-row.clickable:hover{opacity:.75}.history-thumb{object-fit:cover;border-radius:4px;flex-shrink:0;width:38px;height:57px}.history-thumb.placeholder{background:var(--surface-2);border-radius:4px}.history-info{flex-direction:column;gap:2px;min-width:0;display:flex}.history-title{text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;font-weight:500;overflow:hidden}.history-sub{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;overflow:hidden}.history-time{color:var(--text-dim);font-size:.7rem}.search-bar{top:var(--header-h);background:var(--bg);z-index:50;border-bottom:1px solid var(--border);align-items:center;gap:.625rem;margin-bottom:1rem;padding:.75rem 0;display:flex;position:sticky}.search-icon{color:var(--text-muted);flex-shrink:0}.search-bar input{background:var(--surface);border:1px solid var(--border);color:var(--text);border-radius:var(--radius);outline:none;flex:1;padding:.6rem .75rem;font-size:.95rem;transition:border-color .15s}.search-bar input:focus{border-color:#484848}.search-bar input::placeholder{color:var(--text-muted)}.media-grid{grid-template-columns:repeat(auto-fill,minmax(128px,1fr));gap:.75rem;display:grid}@media (width>=480px){.media-grid{grid-template-columns:repeat(auto-fill,minmax(145px,1fr))}}@media (width>=768px){.media-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}}.media-card{background:var(--surface);border-radius:var(--radius);cursor:pointer;border:1px solid #0000;transition:border-color .15s,transform .15s;position:relative;overflow:hidden}.media-card:hover{border-color:var(--border);transform:translateY(-2px)}.media-card img{aspect-ratio:2/3;object-fit:cover;width:100%;display:block}.no-poster{aspect-ratio:2/3;background:var(--surface-2);justify-content:center;align-items:center;padding:.75rem;display:flex}.no-poster span{color:var(--text-muted);text-align:center;-webkit-line-clamp:4;-webkit-box-orient:vertical;font-size:.72rem;line-height:1.3;display:-webkit-box;overflow:hidden}.card-actions{flex-direction:column;gap:.3rem;display:flex;position:absolute;top:.4rem;right:.4rem}.card-action-btn{border-radius:var(--radius-sm)!important;color:#ccc!important;background:#000000b8!important;border:1px solid #ffffff1a!important;width:30px!important;height:30px!important}.card-action-btn:hover{color:#fff!important}.card-action-btn.active{background:var(--accent)!important;border-color:var(--accent)!important;color:#fff!important}.card-badge{color:var(--text-muted);background:#000c;border:1px solid #ffffff1f;border-radius:4px;padding:.1rem .35rem;font-size:.67rem;position:absolute;bottom:2.6rem;left:.4rem}.card-label{white-space:nowrap;text-overflow:ellipsis;color:var(--text-muted);padding:.45rem .5rem;font-size:.75rem;font-weight:500;overflow:hidden}.icon-btn{color:var(--text-muted);border-radius:var(--radius-sm);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;padding:.35rem;transition:color .15s,background .15s;display:inline-flex}.icon-btn:hover{color:var(--text);background:var(--surface-2)}.icon-btn.danger{color:#6b3030}.icon-btn.danger:hover{color:#ef5350;background:#ef535014}.icon-btn.watched-btn{color:var(--accent)}.details-page{min-height:100vh}.details-hero{background:var(--surface);height:290px;position:relative;overflow:hidden}.hero-img{object-fit:cover;opacity:.38;width:100%;height:100%}.hero-scrim{background:linear-gradient(160deg, #00000040 0%, var(--bg) 90%);position:absolute;inset:0}.hero-content{flex-direction:column;justify-content:space-between;padding:.875rem;display:flex;position:absolute;inset:0}.back-btn{align-self:flex-start;color:var(--text)!important;background:#0000008c!important;border:1px solid #ffffff1f!important;border-radius:50%!important;width:38px!important;height:38px!important}.back-btn:hover{background:#000000bf!important}.hero-meta{flex-direction:column;gap:.4rem;display:flex}.hero-title{text-shadow:0 1px 8px #0009;font-size:1.55rem;font-weight:700;line-height:1.2}.hero-year{color:var(--text-muted);font-size:1rem;font-weight:400}.ratings{flex-wrap:wrap;gap:.4rem;display:flex}.badge{border-radius:4px;padding:.2rem .5rem;font-size:.7rem;font-weight:700}.badge-tmdb{color:#01d277;background:#01d2771f;border:1px solid #01d27733}.badge-imdb{color:#f5c518;background:#f5c5181f;border:1px solid #f5c51833}.badge-rt{color:#fa3c00;background:#fa3c001f;border:1px solid #fa3c0038}.badge-rt-aud{color:#ff7043;background:#fa3c0014;border:1px solid #fa3c0026}.badge-mc{color:#64dd17;background:#64dd171a;border:1px solid #64dd1733}.badge-lb{color:#00a3d9;background:#00a3d91a;border:1px solid #00a3d933}.badge:before{content:attr(data-label);opacity:.7;margin-right:.2em;font-size:.85em;font-weight:400}.hero-meta-row{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.cert-badge{color:#ffffffb3;text-transform:uppercase;letter-spacing:.5px;border:1px solid #ffffff4d;border-radius:3px;padding:.15rem .4rem;font-size:.65rem;font-weight:700}.meta-pill{color:var(--text-muted);font-size:.72rem}.hero-actions{flex-wrap:wrap;gap:.4rem;margin-top:.1rem;display:flex}.pill-btn{color:var(--text);background:#ffffff12;border:1px solid #ffffff24;border-radius:20px;align-items:center;gap:.3rem;padding:.35rem .7rem;font-size:.78rem;font-weight:500;transition:background .15s,border-color .15s;display:inline-flex}.pill-btn:hover{background:#ffffff1f}.pill-btn.active{background:var(--accent);border-color:var(--accent)}.media-extra{flex-direction:column;gap:.6rem;margin-bottom:1.25rem;display:flex}.providers-row{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.providers-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.6px;margin-right:.1rem;font-size:.72rem;font-weight:600}.provider-chip{background:var(--surface-2);border:1px solid var(--border);color:var(--text-muted);border-radius:4px;padding:.15rem .5rem;font-size:.72rem}.trailer-link{color:var(--accent);align-items:center;gap:.35rem;font-size:.8rem;font-weight:500;text-decoration:none;display:inline-flex}.trailer-link:hover{opacity:.8}.details-body{max-width:900px;margin:0 auto;padding:1.25rem 1rem}.overview{color:var(--text-muted);margin-bottom:1.5rem;font-size:.88rem;line-height:1.65}.hist-section{background:var(--surface);border-radius:var(--radius);border:1px solid var(--border);margin-bottom:1.5rem;overflow:hidden}.collapsible{width:100%;color:var(--text);background:0 0;border:none;justify-content:space-between;align-items:center;padding:.875rem 1rem;font-size:.84rem;font-weight:600;transition:background .15s;display:flex}.collapsible:hover{background:var(--surface-2)}.hist-list{border-top:1px solid var(--border);list-style:none}.hist-item{border-bottom:1px solid var(--border);align-items:center;gap:.5rem;padding:.5rem 1rem;display:flex}.hist-item:last-child{border-bottom:none}.hist-icon{color:var(--text-dim);flex-shrink:0}.hist-date{color:var(--text-muted);flex:1;font-size:.82rem}.hist-actions{gap:.2rem;display:flex}.season-section{margin-bottom:1.5rem}.season-heading{text-transform:uppercase;letter-spacing:1.4px;color:var(--accent);border-bottom:1px solid var(--border);margin-bottom:0;padding-bottom:.5rem;font-size:.68rem;font-weight:700}.ep-row{border-bottom:1px solid var(--border);align-items:center;gap:.25rem;display:flex}.ep-row:last-child{border-bottom:none}.ep-main{color:var(--text);text-align:left;background:0 0;border:none;flex:1;align-items:flex-start;gap:.75rem;padding:.75rem .25rem;transition:opacity .15s;display:flex}.ep-main:hover{opacity:.75}.ep-num{color:var(--text-dim);text-align:right;flex-shrink:0;min-width:1.8rem;padding-top:.15rem;font-size:.78rem}.ep-text{flex-direction:column;gap:2px;display:flex}.ep-title-text{font-size:.875rem}.ep-watched-on{color:var(--accent);opacity:.75;font-size:.7rem}.ep-row.watched .ep-title-text{color:var(--text-muted);text-decoration:line-through}.modal-backdrop{-webkit-backdrop-filter:blur(5px);z-index:200;background:#000000c7;justify-content:center;align-items:center;padding:1.5rem;display:flex;position:fixed;inset:0}.modal{background:var(--surface);border:1px solid var(--border);border-radius:14px;width:100%;max-width:420px;box-shadow:0 16px 48px #0009}.modal-header{justify-content:space-between;align-items:center;padding:1rem .75rem 0 1rem;display:flex}.modal-header h3{font-size:.95rem;font-weight:600}.modal-meta{color:var(--text-muted);padding:.5rem 1rem 0;font-size:.78rem}.modal-body{color:var(--text-muted);padding:.75rem 1rem 1rem;font-size:.875rem;line-height:1.55}.modal-field{padding:.5rem 1rem 0}.modal-footer{justify-content:flex-end;gap:.5rem;padding:.5rem 1rem 1rem;display:flex}.btn-primary{background:var(--accent);color:#fff;border-radius:var(--radius-sm);border:none;padding:.5rem 1.1rem;font-size:.85rem;font-weight:600;transition:opacity .15s}.btn-primary:hover{opacity:.88}.btn-ghost{color:var(--text-muted);border:1px solid var(--border);border-radius:var(--radius-sm);background:0 0;padding:.5rem 1.1rem;font-size:.85rem;transition:border-color .15s,color .15s}.btn-ghost:hover{color:var(--text);border-color:#484848}.btn-danger{color:#fff;border-radius:var(--radius-sm);background:#b71c1c;border:none;padding:.5rem 1.1rem;font-size:.85rem;font-weight:600;transition:opacity .15s}.btn-danger:hover{opacity:.88}.input-field{background:var(--surface-2);border:1px solid var(--border);width:100%;color:var(--text);border-radius:var(--radius-sm);outline:none;padding:.6rem .75rem;font-size:.875rem;transition:border-color .15s}.input-field:focus{border-color:#484848}.toast{bottom:calc(var(--nav-h) + .75rem);color:var(--text);border:1px solid var(--border);white-space:nowrap;z-index:300;pointer-events:none;background:#1e1e1e;border-radius:24px;padding:.6rem 1.2rem;font-size:.85rem;animation:.2s ease-out toast-in;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 4px 20px #0000008c}.toast-success{border-left:3px solid var(--accent)}.toast-error{border-left:3px solid #ef5350}@keyframes toast-in{0%{opacity:0;transform:translate(-50%)translateY(6px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.spinner{border:2px solid #ffffff14;border-left-color:var(--accent);border-radius:50%;flex-shrink:0;width:17px;height:17px;animation:.75s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.loading-state,.empty-state{text-align:center;color:var(--text-muted);padding:3rem 1rem;font-size:.875rem}.list-tabs{scrollbar-width:none;top:var(--header-h);background:var(--bg);z-index:50;gap:.35rem;margin-bottom:.25rem;padding:.875rem 0;display:flex;position:sticky;overflow-x:auto}.list-tabs::-webkit-scrollbar{display:none}.list-tab{background:var(--surface);border:1px solid var(--border);color:var(--text-muted);white-space:nowrap;border-radius:20px;flex-shrink:0;align-items:center;gap:.35rem;padding:.4rem .85rem;font-size:.8rem;font-weight:500;transition:color .15s,border-color .15s,background .15s;display:inline-flex}.list-tab:hover{color:var(--text);border-color:#404040}.list-tab.active{background:var(--accent);border-color:var(--accent);color:#fff}.list-tab-count{color:inherit;background:#ffffff1f;border-radius:10px;padding:0 .35rem;font-size:.7rem;font-weight:600}.list-tab.active .list-tab-count{background:#fff3}.list-tab-new{color:var(--text-dim);border-style:dashed;gap:.3rem}.list-tab-new:hover{color:var(--text-muted);border-color:#484848}.list-toolbar{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;margin-bottom:1rem;padding:.5rem 0 .875rem;display:flex}.list-toolbar-name{color:var(--text);font-size:.9rem;font-weight:600}.list-toolbar-actions{gap:.2rem;display:flex}.my-lists-section{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:1.5rem;padding:.875rem 1rem}.my-lists-header{color:var(--text-muted);text-transform:uppercase;letter-spacing:.8px;align-items:center;gap:.4rem;margin-bottom:.75rem;font-size:.75rem;font-weight:600;display:flex}.my-lists-chips{flex-wrap:wrap;gap:.45rem;display:flex}.list-chip{background:var(--surface-2);border:1px solid var(--border);color:var(--text-muted);border-radius:16px;align-items:center;gap:.3rem;padding:.3rem .65rem;font-size:.78rem;font-weight:500;transition:color .15s,border-color .15s,background .15s;display:inline-flex}.list-chip:hover{color:var(--text);border-color:#404040}.list-chip.active{color:var(--accent);background:#e539351a;border-color:#e5393559}.list-chip.new-list{color:var(--text-dim);border-style:dashed}.list-chip.new-list:hover{color:var(--text-muted);border-color:#484848}.stat-grid{grid-template-columns:repeat(4,1fr);gap:.5rem;margin-bottom:1rem;display:grid}.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;align-items:center;gap:.2rem;padding:.875rem .5rem;display:flex}.stat-value{color:var(--text);font-size:1.4rem;font-weight:700;line-height:1}.stat-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.6px;font-size:.65rem;font-weight:600}.stat-row-2{grid-template-columns:1fr 1fr;gap:.5rem;margin-bottom:1rem;display:grid}.stat-section{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:1rem;padding:1rem}.stat-section-title{text-transform:uppercase;letter-spacing:1px;color:var(--text-muted);margin-bottom:.75rem;font-size:.7rem;font-weight:700}.stat-inline-grid{gap:1.5rem;display:flex}.stat-inline-grid>div{flex-direction:column;gap:.15rem;display:flex}.stat-value-sm{color:var(--accent);font-size:1.6rem;font-weight:700;line-height:1}.stat-label-sm{color:var(--text-muted);font-size:.7rem}.bar-chart{align-items:flex-end;gap:4px;height:80px;display:flex}.bar-chart-sm{height:60px}.bar-col{flex-direction:column;flex:1;align-items:center;gap:4px;height:100%;display:flex}.bar-wrap{flex:1;align-items:flex-end;width:100%;display:flex}.bar{background:var(--accent);opacity:.75;border-radius:2px 2px 0 0;width:100%;min-height:2px;transition:opacity .15s}.bar-col:hover .bar{opacity:1}.bar-label{color:var(--text-dim);text-align:center;font-size:.6rem}.top-shows-list{flex-direction:column;gap:.4rem;display:flex}.top-show-row{border-radius:var(--radius-sm);cursor:pointer;align-items:center;gap:.75rem;padding:.4rem .25rem;transition:background .15s;display:flex}.top-show-row:hover{background:var(--surface-2)}.top-show-rank{color:var(--text-dim);text-align:right;min-width:1.5rem;font-size:.72rem}.top-show-poster{object-fit:cover;border-radius:3px;flex-shrink:0;width:32px;height:48px}.top-show-no-poster{background:var(--surface-2);border:1px solid var(--border)}.top-show-title{text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:.875rem;font-weight:500;overflow:hidden}.top-show-count{color:var(--text-muted);flex-shrink:0;font-size:.75rem}.stat-computed{text-align:center;color:var(--text-dim);padding:.5rem 0 1rem;font-size:.7rem}.discover-sections{flex-direction:column;gap:1.5rem;display:flex}.discover-row{grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:.6rem;display:grid}@media (width>=480px){.discover-row{grid-template-columns:repeat(auto-fill,minmax(130px,1fr))}}.page-header{align-items:center;gap:.75rem;margin-bottom:1.5rem;display:flex}.page-header-back{border:1px solid var(--border);background:var(--surface);width:36px;height:36px;color:var(--text);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition:background .15s;display:flex}.page-header-back:hover{background:var(--surface-2)}.page-header-title{flex:1;font-size:1.1rem;font-weight:700}.page-header-right{flex-shrink:0}.settings-heading{margin-bottom:1.5rem;font-size:1.1rem;font-weight:700}.settings-section{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:1.25rem;padding:1.25rem}.settings-section-title{margin-bottom:.4rem;font-size:.85rem;font-weight:700}.settings-section-desc{color:var(--text-muted);margin-bottom:1rem;font-size:.8rem;line-height:1.55}.settings-field{margin-bottom:.75rem}.settings-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.6px;margin-bottom:.4rem;font-size:.75rem;font-weight:600;display:block}.settings-input-row{align-items:center;gap:.5rem;display:flex}.settings-input-row .input-field{flex:1}.settings-sync-row{align-items:center;gap:.875rem;margin-top:.5rem;display:flex}.settings-last-sync{color:var(--text-muted);font-size:.75rem}.btn-primary:disabled{opacity:.4;cursor:not-allowed}.filter-panel{margin:.5rem 0 .75rem}.filter-toggle-row{align-items:center;gap:.75rem;display:flex}.filter-toggle-btn{background:var(--surface-2,#ffffff14);cursor:pointer;color:inherit;border:1px solid #0000;border-radius:6px;align-items:center;gap:.4rem;padding:.4rem .75rem;font-size:.85rem;display:flex}.filter-toggle-btn:hover{border-color:var(--accent)}.filter-badge{background:var(--accent);color:#fff;border-radius:10px;padding:0 .4rem;font-size:.75rem;font-weight:600}.filter-clear-btn{cursor:pointer;color:var(--text-muted);background:0 0;border:none;align-items:center;gap:.25rem;font-size:.8rem;display:flex}.filter-body{background:var(--surface-2,#ffffff0a);border:1px solid var(--border);border-radius:10px;margin-top:.75rem;padding:1.25rem 1rem}.filter-section{margin-bottom:1.5rem}.filter-section:last-child{margin-bottom:0}.filter-section-title{text-transform:uppercase;letter-spacing:.08em;opacity:.4;margin:0 0 .85rem;font-size:.68rem;font-weight:700}.filter-sliders-grid{grid-template-columns:1fr 1fr;gap:1.1rem 2.5rem;display:grid}@media (width<=480px){.filter-sliders-grid{grid-template-columns:1fr}}.cert-chips{flex-wrap:wrap;gap:.4rem;margin-top:.25rem;display:flex}.cert-chip{background:var(--surface-2,#ffffff14);border:1px solid var(--border);cursor:pointer;color:inherit;border-radius:4px;padding:.2rem .6rem;font-size:.8rem}.cert-chip.active{border-color:var(--accent);background:#e5091426}.filter-source-label{color:var(--text-muted);margin-bottom:.5rem;font-size:.8rem}.genre-search-input{border:1px solid var(--border);width:100%;color:inherit;box-sizing:border-box;background:#ffffff12;border-radius:6px;outline:none;margin:0 0 .5rem;padding:.35rem .6rem;font-size:.82rem}.genre-search-input:focus{border-color:#ffffff4d}.genre-selected-chips{flex-wrap:wrap;gap:.3rem;margin-bottom:.5rem;display:flex}.genre-chip{align-items:center;gap:.3rem;display:flex}.range-slider{margin-bottom:0}.range-slider-header{justify-content:space-between;align-items:baseline;margin-bottom:.5rem;font-size:.8rem;display:flex}.range-slider-label{opacity:.6;text-transform:uppercase;letter-spacing:.04em;font-size:.7rem;font-weight:600}.range-slider-value{color:var(--accent);font-variant-numeric:tabular-nums;font-size:.82rem;font-weight:600}.radix-slider-root{-webkit-user-select:none;user-select:none;touch-action:none;box-sizing:border-box;align-items:center;width:100%;height:24px;position:relative;display:flex!important}.radix-slider-track{background:#ffffff24;border-radius:9999px;flex-grow:1;height:4px;position:relative;display:block!important}.radix-slider-range{background:var(--accent);border-radius:9999px;height:100%;position:absolute;display:block!important}.radix-slider-thumb{background:var(--accent);cursor:grab;border:2px solid #fff3;border-radius:50%;outline:none;flex-shrink:0;width:18px;height:18px;transition:box-shadow .15s,transform .1s;display:block!important}.radix-slider-thumb:hover{transform:scale(1.15);box-shadow:0 0 0 5px #e5091433}.radix-slider-thumb:focus{box-shadow:0 0 0 5px #e5091459}.radix-slider-thumb:active{cursor:grabbing}.watch-date-options{flex-direction:column;gap:.5rem;margin-bottom:.75rem;display:flex}.watch-date-option{border:1px solid var(--border);cursor:pointer;color:inherit;text-align:left;background:#ffffff0d;border-radius:8px;flex-direction:column;align-items:flex-start;gap:.15rem;padding:.65rem .9rem;transition:border-color .15s,background .15s;display:flex}.watch-date-option:hover{background:#ffffff14;border-color:#fff3}.watch-date-option.selected{border-color:var(--accent);background:#e509141a}.watch-date-label{font-size:.9rem;font-weight:600}.watch-date-sub{opacity:.5;font-size:.78rem}.watch-date-picker{box-sizing:border-box;width:100%;margin-top:.25rem}.season-heading-row{justify-content:space-between;align-items:center;margin-bottom:.5rem;display:flex}.season-watch-all-btn{border:1px solid var(--border);cursor:pointer;color:inherit;opacity:.75;background:#ffffff12;border-radius:5px;align-items:center;gap:.3rem;padding:.25rem .6rem;font-size:.75rem;display:flex}.season-watch-all-btn:hover{opacity:1;border-color:#ffffff40}.card-rating-tags{flex-wrap:wrap;justify-content:center;gap:3px;padding:3px 6px 5px;display:flex}.card-rating-tag{color:#ffffffbf;letter-spacing:.02em;white-space:nowrap;background:#ffffff1a;border:1px solid #ffffff26;border-radius:3px;padding:1px 5px;font-size:.65rem;font-weight:600}.filter-row-right{align-items:center;gap:6px;margin-left:auto;display:flex}.filter-save-btn,.filter-preset-btn{border:1px solid var(--border);color:inherit;cursor:pointer;opacity:.75;background:0 0;border-radius:5px;align-items:center;gap:4px;padding:3px 8px;font-size:.75rem;transition:opacity .15s;display:flex}.filter-save-btn:hover,.filter-preset-btn:hover{opacity:1}.preset-picker-wrap{position:relative}.preset-dropdown{z-index:50;border:1px solid var(--border);background:#1e1e2e;border-radius:7px;min-width:160px;position:absolute;top:calc(100% + 4px);right:0;overflow:hidden;box-shadow:0 4px 16px #0006}.preset-row{cursor:pointer;justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;font-size:.8rem;transition:background .1s;display:flex}.preset-row:hover{background:#ffffff0f}.preset-name{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.preset-delete-btn{cursor:pointer;color:#ffffff59;background:0 0;border:none;align-items:center;padding:2px;transition:color .15s;display:flex}.preset-delete-btn:hover{color:#e06c75}.preset-save-row{align-items:center;gap:4px;display:flex}.preset-name-input{border:1px solid var(--border);color:inherit;background:#ffffff12;border-radius:5px;outline:none;width:120px;padding:3px 8px;font-size:.75rem}.preset-name-input:focus{border-color:#ffffff4d}.preset-confirm-btn{border:1px solid var(--border);color:inherit;cursor:pointer;background:#ffffff1a;border-radius:5px;padding:3px 8px;font-size:.75rem}.preset-confirm-btn:disabled{opacity:.35;cursor:default}.preset-confirm-btn:not(:disabled):hover{background:#ffffff2e}.list-role-badge{letter-spacing:.05em;vertical-align:middle;color:#fff9;background:#ffffff1f;border-radius:3px;margin-left:4px;padding:1px 4px;font-size:.6rem;font-weight:700}.list-owner-label{opacity:.5;margin-left:8px;font-size:.75rem;font-weight:400}.perm-modal-body{flex-direction:column;gap:16px;display:flex}.perm-uuid-row{border:1px solid var(--border);background:#ffffff0d;border-radius:6px;align-items:center;gap:10px;padding:8px 10px;display:flex}.perm-uuid-label{opacity:.5;white-space:nowrap;font-size:.72rem}.perm-uuid{opacity:.7;word-break:break-all;font-size:.72rem}.perm-list{flex-direction:column;gap:2px;display:flex}.perm-row{border-radius:6px;justify-content:space-between;align-items:center;gap:12px;padding:7px 10px;transition:background .1s;display:flex}.perm-row:hover{background:#ffffff0a}.perm-user{flex-direction:column;gap:1px;min-width:0;display:flex}.perm-username{font-size:.85rem;font-weight:500}.perm-email{opacity:.45;font-size:.72rem}.perm-actions{align-items:center;gap:6px;display:flex}.perm-role-select{border:1px solid var(--border);color:inherit;cursor:pointer;appearance:none;background:#ffffff12;border-radius:5px;outline:none;padding:3px 8px;font-size:.75rem}.perm-role-select:focus{border-color:#ffffff4d}.perm-add-row{align-items:center;gap:8px;margin-top:4px;display:flex}.perm-add-input{flex:1;min-width:0}.perm-role-wrap{align-items:center;display:flex;position:relative}.perm-role-chevron{pointer-events:none;opacity:.5;position:absolute;right:6px}.apikey-list{flex-direction:column;gap:8px;margin-top:12px;display:flex}.apikey-row{background:var(--card-bg);border:1px solid var(--border);border-radius:8px;align-items:center;gap:12px;padding:10px 12px;display:flex}.apikey-info{flex-direction:column;flex:1;gap:2px;display:flex}.apikey-name{color:var(--text-primary);font-size:14px;font-weight:500}.apikey-meta{color:var(--text-secondary);font-size:12px}.apikey-reveal-row{background:var(--input-bg);border:1px solid var(--border);border-radius:8px;align-items:center;gap:10px;margin:12px 0;padding:12px;display:flex}.apikey-reveal{word-break:break-all;color:var(--text-primary);flex:1;font-size:13px}.settings-section-subtitle{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin:20px 0 6px;font-size:13px;font-weight:600}.auth-page{background:var(--bg,#0f0f0f);justify-content:center;align-items:center;min-height:100vh;display:flex}.auth-card{background:var(--surface,#1a1a1a);border:1px solid var(--border,#2a2a2a);border-radius:12px;width:100%;max-width:420px;padding:2.5rem}.auth-card--wide{max-width:560px}.auth-title{text-align:center;margin:0 0 1.5rem;font-size:1.75rem;font-weight:700}.auth-subtitle{text-align:center;color:var(--muted,#888);margin-bottom:1.5rem}.auth-form{flex-direction:column;gap:.75rem;display:flex}.auth-form label{color:var(--muted,#888);font-size:.875rem}.auth-form input,.auth-form select{background:var(--input-bg,#111);border:1px solid var(--border,#2a2a2a);color:inherit;border-radius:6px;padding:.6rem .75rem;font-size:1rem}.auth-form button[type=submit]{background:var(--accent,#e50914);color:#fff;cursor:pointer;border:none;border-radius:6px;margin-top:.5rem;padding:.65rem;font-size:1rem;font-weight:600}.auth-form button[type=submit]:disabled{opacity:.5;cursor:not-allowed}.auth-error{color:#e53e3e;font-size:.875rem}.auth-success{color:#38a169;font-size:.875rem}.auth-hint{color:var(--muted,#888);font-size:.875rem}.auth-link{color:var(--accent,#e50914);text-align:center;font-size:.875rem}.auth-link-btn{color:var(--muted,#888);cursor:pointer;background:0 0;border:none;font-size:.875rem}.auth-username-display{text-align:center;margin-bottom:.5rem}.auth-loading{justify-content:center;align-items:center;min-height:100vh;display:flex}.auth-form-row{gap:.5rem;display:flex}.auth-form-row button{flex:1}.pw-strength{border-radius:4px;padding:.2rem .5rem;font-size:.75rem}.pw-strength--weak{color:#fca5a5;background:#7f1d1d}.pw-strength--ok{color:#fcd34d;background:#78350f}.pw-strength--strong{color:#86efac;background:#14532d}.setup-steps{justify-content:center;gap:1rem;margin-bottom:1.5rem;display:flex}.setup-step{background:var(--border,#2a2a2a);border-radius:50%;justify-content:center;align-items:center;width:2rem;height:2rem;font-weight:700;display:flex}.setup-step.active{background:var(--accent,#e50914);color:#fff}.setup-step.done{color:#86efac;background:#14532d}.security-question-row{flex-direction:column;gap:.4rem;margin-bottom:.5rem;display:flex}.security-question-label{color:var(--muted,#888);margin:0;font-size:.8rem}.admin-page{max-width:1100px;margin:0 auto;padding:1.25rem 1rem}.admin-tabs{gap:.5rem;margin-bottom:1.5rem;display:flex}.admin-tabs button{border:1px solid var(--border,#2a2a2a);color:inherit;cursor:pointer;background:0 0;border-radius:6px;padding:.5rem 1.25rem}.admin-tabs button.active{background:var(--accent,#e50914);border-color:var(--accent,#e50914);color:#fff}.admin-table-wrap{-webkit-overflow-scrolling:touch;overflow-x:auto}.admin-table{border-collapse:collapse;width:100%;min-width:520px}.admin-table th,.admin-table td{text-align:left;border-bottom:1px solid var(--border,#2a2a2a);padding:.6rem .75rem}.admin-actions{flex-wrap:wrap;gap:.4rem;display:flex}.admin-actions button{border:1px solid var(--border,#2a2a2a);color:inherit;cursor:pointer;background:0 0;border-radius:4px;padding:.3rem .6rem;font-size:.8rem}.btn--danger{color:#e53e3e!important;border-color:#e53e3e!important}.admin-btn{margin-top:.75rem;padding:.4rem .9rem;font-size:.875rem}.admin-settings-actions{align-items:center;gap:.5rem;margin-top:.25rem;display:flex}.admin-settings-actions button{margin-top:0}.admin-create-user{margin-top:1.5rem}.admin-create-form{flex-wrap:wrap;gap:.5rem;display:flex}.admin-create-form input{border:1px solid var(--border,#2a2a2a);background:var(--input-bg,#111);color:inherit;border-radius:6px;padding:.5rem .75rem}.settings-form{flex-direction:column;gap:.75rem;max-width:480px;display:flex}.settings-form label{color:var(--muted,#888);font-size:.875rem}.settings-form input,.settings-form select{background:var(--input-bg,#111);border:1px solid var(--border,#2a2a2a);color:inherit;border-radius:6px;padding:.5rem .75rem}.settings-form button[type=submit]{background:var(--accent,#e50914);color:#fff;cursor:pointer;border:none;border-radius:6px;align-self:flex-start;padding:.6rem 1.25rem;font-weight:600}.badge--admin{color:#93c5fd;background:#1e3a5f}.badge--ok{color:#86efac;background:#14532d}.badge--pending{color:#fcd34d;background:#78350f}.badge--locked{color:#fca5a5;background:#7f1d1d}.ep-detail-show-name{color:var(--muted,#aaa);text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px;font-size:.85rem}.star-rating{align-items:center;gap:1px;display:flex}.star-btn{cursor:pointer;color:var(--border,#2a2a2a);background:0 0;border:none;padding:0 1px;font-size:1.4rem;line-height:1;transition:color .1s,transform .1s}.star-btn--filled{color:#f5c518}.star-btn:hover:not(:disabled){transform:scale(1.15)}.star-btn:disabled{cursor:default}.star-rating--readonly .star-btn{font-size:1.1rem}.star-rating-value{color:var(--muted,#888);margin-left:6px;font-size:.8rem}.user-rating-row{margin-top:8px}
