
:root{color-scheme:dark;--bg:#111211;--panel:#1b1d1a;--line:#30332d;--text:#f1f1e9;--muted:#969b91;--lime:#d9f77b;--font:Inter,"Segoe UI",Arial,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:14px/1.5 var(--font)}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:5px}button{cursor:pointer}button:disabled{opacity:.45;cursor:wait}a{color:inherit}button{color:inherit}h1,h2,h3,p{margin-top:0}button,input,select,textarea{border-radius:8px}input,select,textarea{background:#1b1d1a;border:1px solid var(--line);color:var(--text);padding:12px;min-width:0}textarea{resize:vertical}button{border:0}.topbar{height:91px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:50px;padding:0 5vw}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-size:25px;font-weight:760;letter-spacing:-1px}.brandmark{display:block;background:var(--lime);color:#1b2416;width:35px;height:35px;border-radius:10px;font-size:34px;line-height:35px;text-align:center;font-weight:900;position:relative}.brandmark>span{font-size:8px;position:absolute;right:5px;bottom:1px}.version{font-size:11px;color:var(--muted);font-weight:500;letter-spacing:1px;margin-left:3px}nav{display:flex;gap:27px;align-self:stretch}.navbutton{background:none;color:var(--muted);border-radius:0;font-size:13px;padding:0 2px;position:relative}.navbutton.active{color:var(--text)}.navbutton.active:after{content:"";position:absolute;bottom:0;left:0;right:0;background:var(--lime);height:2px}.navbutton span,.chip span{background:#2d3128;padding:2px 6px;border-radius:4px;font-size:11px;margin-left:6px}.settings-button{margin-left:auto;background:none;color:var(--muted);font-size:18px}.settings-button span{font-size:12px;margin-left:7px}main{max-width:1600px;margin:auto;padding:0 5vw}.hero{min-height:370px;display:grid;grid-template-columns:1.2fr 1fr;align-items:center;border-bottom:1px solid var(--line);overflow:hidden;position:relative}.hero-copy{padding:38px 0;z-index:1}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:650;display:flex;align-items:center;gap:8px;color:var(--lime)}.live-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--lime);flex:none}h1{font-size:clamp(30px,3.2vw,48px);line-height:1.16;letter-spacing:-1.8px;margin:17px 0}h1>span{color:#a7ac9e}.hero p{font-size:13px;line-height:1.8;color:var(--muted);margin-bottom:24px}.primary{background:var(--lime);color:#1d2811;font-weight:700;padding:13px 21px;box-shadow:0 4px 25px #d9f77b08}.primary:hover{background:#e6ff9b;transform:translateY(-1px)}.random{display:flex;align-items:center;gap:14px}.random>:last-child{margin-left:15px}.dice{font-size:24px;line-height:20px}.random-hint{font-size:10px;color:#7e8376;margin-top:10px}.hero-art{height:100%;position:relative;isolation:isolate;min-height:340px;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at 55% 50%,#444d2525,transparent 65%)}.orbit{border:1px solid #7d8b5230;border-radius:50%;width:330px;height:330px;position:absolute;transform:rotate(-25deg) scaleX(1.35)}.orbit-two{width:250px;height:250px}.art-label{position:absolute;left:7%;top:65px;color:#747c5c;font-size:10px;letter-spacing:3px;line-height:1.8;transform:rotate(-8deg)}.spotlight{position:absolute;width:80px;height:400px;background:linear-gradient(transparent,#d3ec8320,transparent);transform:rotate(35deg);filter:blur(18px);z-index:-1}.ticket{width:223px;background:#d6e99d;color:#253014;transform:rotate(10deg);padding:24px 23px 15px;box-shadow:20px 30px 60px #0008;border-radius:5px;position:relative}.ticket:after,.ticket:before{content:"";width:20px;height:20px;background:#161914;position:absolute;border-radius:50%;bottom:47px}.ticket:before{left:-10px}.ticket:after{right:-10px}.ticket>span{font-size:10px;letter-spacing:4px}.ticket b{display:block;font-size:34px;line-height:1.12;letter-spacing:-1px;margin:27px 0 18px}.ticket small{font-size:8px;letter-spacing:1px}.ticket-bottom{border-top:1px dashed #61713d;padding-top:15px;margin-top:24px;font-size:9px;letter-spacing:2px}.ticket-bottom span{float:right;letter-spacing:0}.art-caption{position:absolute;bottom:28px;right:10%;font-size:8px;letter-spacing:2px;color:#69715b}.library{padding:34px 0}.section-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.muted{color:var(--muted)}h2{font-size:26px;letter-spacing:-.8px;margin:5px 0 0}h2>span{font-size:12px;vertical-align:middle;color:var(--muted);font-weight:400;border:1px solid var(--line);border-radius:5px;padding:3px 7px;margin-left:9px;letter-spacing:0}.offline-status{font-size:10px;color:var(--muted);display:flex;align-items:center;gap:7px}.filterbar{display:flex;gap:9px}.filterbar>label{display:flex}.filterbar select{font-size:12px;padding:12px 30px 12px 12px;width:100%}.search{flex:1;align-items:center;border:1px solid var(--line);background:var(--panel);border-radius:8px;min-width:200px;gap:8px;padding:0 12px}.search>span{color:var(--muted);font-size:25px}.search input{border:0;padding:12px 0;background:none;width:100%;font-size:12px}.search kbd{border:1px solid #3b3d35;border-radius:3px;padding:0 5px;color:#777d70;font-size:11px}.subfilters{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:17px 0}.chips{display:flex;gap:7px;flex-wrap:wrap}.chip{background:transparent;color:var(--muted);padding:7px 11px;border:1px solid var(--line);border-radius:6px;font-size:11px}.chip.active{background:#d9f77b14;border-color:#728147;color:var(--lime)}.chip:hover{border-color:#849264}.sort-label{font-size:10px;color:var(--muted);white-space:nowrap}.sort-label select{font-size:11px;background:none;border:0;padding:5px}.resultline{display:flex;justify-content:space-between;align-items:center;margin:25px 0 15px;font-size:10px;color:var(--muted)}.text-button{background:none;color:var(--lime);padding:4px 0;font-size:11px}.grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:25px 19px}.card{position:relative;min-width:0}.card-open{display:block;text-align:left;width:100%;padding:0;background:none;border-radius:9px}.poster{aspect-ratio:2/3;position:relative;overflow:hidden;border-radius:8px;background:#293126;isolation:isolate;border:1px solid #ffffff0b;transition:transform .2s,box-shadow .2s}.card-open:hover .poster{transform:translateY(-4px);box-shadow:0 10px 25px #0007;border-color:#d9f77b66}.poster img{height:100%;width:100%;object-fit:cover;position:absolute;inset:0;z-index:2}.poster-art{position:absolute;inset:0;background:radial-gradient(ellipse at 80% 10%,hsla(var(--hue),48%,54%,.35),transparent 55%),linear-gradient(155deg,hsl(var(--hue),24%,20%),#0c1316)}.poster-art:before{content:"";position:absolute;width:180%;height:60%;border:1px solid #ffffff22;transform:rotate(-40deg);top:14%;left:-40%;box-shadow:0 22px 0 #ffffff07,0 44px 0 #ffffff05}.poster-art:after{content:"";position:absolute;width:80%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 35% 30%,hsla(var(--hue),45%,70%,.5),hsla(var(--hue),40%,30%,.1) 65%);right:-20%;top:18%;box-shadow:0 0 55px #0002}.poster-text{position:absolute;left:15px;right:15px;bottom:28px;z-index:1}.poster-text small{display:block;font-size:7px;letter-spacing:2px;color:#ffffff99;margin-bottom:10px}.poster-text strong{font-size:clamp(17px,1.6vw,27px);font-weight:800;letter-spacing:-.7px;line-height:1.05;display:block;text-transform:uppercase;overflow-wrap:anywhere}.poster-text em{display:block;font-size:9px;letter-spacing:3px;margin-top:12px;font-style:normal;color:#ffffff99}.poster-top{position:absolute;z-index:3;top:10px;left:10px;right:10px;display:flex;justify-content:space-between;gap:5px}.badge{font-size:8px;border:1px solid #ffffff1a;padding:3px 5px;border-radius:3px;background:#121612b8;backdrop-filter:blur(5px);color:#eee}.badge.review{color:#f2d698}.poster-bottom{position:absolute;bottom:8px;left:10px;font-size:7px;letter-spacing:1px;color:#ffffff60;z-index:3}.card h3{margin:11px 0 3px;font-size:12px;font-weight:600;line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-right:18px}.card-meta{font-size:10px;color:var(--muted);display:flex;align-items:center;gap:7px}.card-meta .score{margin-left:auto;color:#d3ddaf}.favorite{position:absolute;right:-3px;bottom:20px;background:none;font-size:18px;color:#b4b8a8;padding:0 3px}.favorite.selected{color:var(--lime)}.info-banner{margin-top:38px;border:1px solid var(--line);border-radius:10px;padding:19px 22px;display:flex;gap:17px;align-items:center;background:#1b1e1744}.info-banner>span{color:var(--lime);font-size:25px}.info-banner b{font-size:12px;font-weight:500}.info-banner p{font-size:11px;color:var(--muted);margin:3px 0 0}.info-banner button{margin-left:auto;white-space:nowrap}.empty{text-align:center;padding:50px 15px;background:#1b1d1944;border-radius:10px}.empty>span{font-size:35px;color:var(--lime)}.empty p{max-width:450px;margin:0 auto 20px;color:var(--muted)}footer{border-top:1px solid var(--line);margin:15px 5vw 0;padding:25px 0;display:flex;align-items:center;justify-content:space-between;gap:25px;color:var(--muted);font-size:10px}.footer-brand{font-size:17px}.footer-brand .version{font-size:8px}footer details{max-width:300px;font-size:9px}summary{cursor:pointer}dialog{color:var(--text);background:#181b17;border:1px solid #3a4032;border-radius:16px;padding:0;width:min(950px,94vw);max-height:90vh;box-shadow:0 30px 100px #000a}dialog::backdrop{background:#070a08db;backdrop-filter:blur(7px)}.close{position:absolute;right:12px;top:10px;background:#1d231ddd;border:1px solid #ffffff30;border-radius:50%;width:32px;height:32px;font-size:23px;z-index:10}.detail-layout{display:grid;grid-template-columns:240px 1fr;gap:30px;padding:35px}.detail-poster .poster-text strong{font-size:29px}.detail-poster .poster{position:sticky;top:0}.detail-body{min-width:0}.detail-body h2{font-size:30px;padding-right:15px;line-height:1.12;margin:8px 0}.detail-body .overview{color:#b4baac;font-size:13px;margin:18px 0}.pills{display:flex;flex-wrap:wrap;gap:7px;margin:13px 0}.pills span{border:1px solid var(--line);border-radius:5px;padding:3px 8px;font-size:10px;color:#c6d0b7}.detail-body dl{font-size:12px;display:grid;grid-template-columns:85px 1fr;gap:7px;margin:20px 0}.detail-body dt{color:var(--muted)}.detail-body dd{margin:0;overflow-wrap:anywhere}.review-note{font-size:11px;background:#d6b86a10;color:#dbca9c;border-left:2px solid #b9a267;padding:10px}.help{font-size:11px;color:var(--muted)}.secondary{background:#2c3324;color:#dde7cd;border:1px solid #424e34;padding:10px 14px;font-size:12px}.secondary:hover{background:#39442d}form label{display:flex;flex-direction:column;gap:6px;color:#b9c1ad;font-size:11px;margin:12px 0}form input,form textarea{width:100%;font-size:13px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.check-row{display:flex;gap:16px;flex-wrap:wrap}.check-row label{flex-direction:row;align-items:center}.check-row input{width:auto;accent-color:var(--lime)}.details-edit{border-top:1px solid var(--line);margin-top:20px;padding-top:15px}.details-edit summary{font-size:12px;color:var(--lime)}.metadata-tools{border-top:1px solid var(--line);padding-top:16px;margin-top:22px}.lookup-row{display:grid;grid-template-columns:1fr 90px auto;gap:7px}.lookup-row input{width:100%;font-size:12px}.candidate{border:1px solid var(--line);border-radius:8px;padding:12px;margin-top:9px}.candidate p{font-size:11px;color:var(--muted);margin:6px 0 10px}.candidate b{font-size:13px}.settings-content{padding:35px;max-width:700px}.settings-content>p{font-size:13px}.settings-content h2{margin-bottom:20px}.settings-content h3{font-size:17px}.settings-content code{font-size:12px;color:var(--lime)}hr{border:0;border-top:1px solid var(--line);margin:25px 0}#settings{max-width:700px}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:#d9f77b;color:#1e2815;padding:13px 23px;border-radius:9px;z-index:100;max-width:90vw;box-shadow:0 5px 30px #0009;font-size:13px}#toast.error{background:#f4c1ac}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}[hidden]{display:none!important}@media(min-width:1600px){.grid{grid-template-columns:repeat(7,minmax(0,1fr))}}@media(max-width:1100px){.grid{grid-template-columns:repeat(5,minmax(0,1fr))}.filterbar{flex-wrap:wrap}.search{flex-basis:100%}.filterbar>label:not(.search){flex:1}.hero{grid-template-columns:1.3fr 1fr}.ticket{width:195px}.hero-art .art-label{display:none}.topbar{gap:30px}.settings-button span{display:none}}@media(max-width:800px){.grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:22px 13px}.hero-art{opacity:.8}.hero{grid-template-columns:1.6fr 1fr}.hero-art .ticket{transform:rotate(13deg) scale(.8)}.hero-copy h1{font-size:34px}.art-caption{display:none}.offline-status{display:none}.topbar{height:75px}.brand{font-size:21px}.version{display:none}nav{gap:15px}.navbutton{font-size:11px}.subfilters{align-items:flex-start;flex-direction:column}.detail-layout{grid-template-columns:170px 1fr;gap:20px;padding:25px}.lookup-row{grid-template-columns:1fr 80px}.lookup-row button{grid-column:1/-1}footer{flex-wrap:wrap}.poster-text strong{font-size:20px}}@media(max-width:560px){.topbar{padding:0 5vw;gap:18px}.brandmark{display:none}.brand{font-size:20px}.navbutton{font-size:10px}.settings-button{font-size:20px}.hero{display:block;min-height:0}.hero-copy{padding:30px 0}.hero-art{display:none}.hero-copy h1{font-size:34px}.hero p{font-size:12px}.desktop{display:none}.section-head{margin-bottom:18px}.library{padding-top:27px}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 15px}.filterbar{gap:7px}.filterbar>label:not(.search){flex-basis:45%}.filterbar select{font-size:11px}.poster-text strong{font-size:25px}.card h3{font-size:12px}.info-banner{padding:15px;flex-wrap:wrap;gap:9px}.info-banner>span{display:none}.info-banner button{margin-left:0}.detail-layout{display:block;padding:24px}.detail-poster{width:130px;float:left;margin:0 18px 16px 0}.detail-poster .poster-text strong{font-size:18px}.detail-body h2{font-size:24px;min-height:50px}.detail-body .overview{clear:both;padding-top:8px}.settings-content{padding:28px 22px}.eyebrow{font-size:8px}.hero .eyebrow{font-size:9px}.chips{gap:6px}.chip{font-size:10px;padding:7px 8px}footer{font-size:9px}.footer-brand{font-size:16px}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}


/* IMDb remains the primary displayed score, independent of filter source. */
.imdb-rating{display:flex;align-items:center;gap:8px;margin-top:10px;min-height:34px;padding:6px 9px;border:1px solid #f5c51855;border-radius:6px;background:#f5c5180c;color:#f5c518;flex-wrap:wrap}
.imdb-label{background:#f5c518;color:#16160d;font-size:11px;font-weight:800;letter-spacing:-.3px;padding:1px 5px;border-radius:3px}
.imdb-rating strong{font-size:17px;line-height:1.2;font-variant-numeric:tabular-nums}.imdb-scale{font-size:10px;color:var(--muted)}
.imdb-rating.missing{border-color:var(--line);background:#ffffff03}.imdb-rating.missing .imdb-label{background:#79745b;color:#10120d}.imdb-pending{font-size:10px;color:var(--muted)}
.card .favorite{bottom:64px}.detail-body>.imdb-rating{display:inline-flex;margin-top:17px;padding:10px 14px;gap:10px}.detail-body>.imdb-rating strong{font-size:27px}.detail-body>.imdb-rating .imdb-label{font-size:14px}
@media(max-width:380px){.card .imdb-rating{gap:5px;padding:6px}.imdb-pending{font-size:9px}}

.logout-form{margin:0}.logout-form button{padding:8px;font-size:11px}.auth-page{min-height:100vh;display:grid;place-items:center;padding:24px}.auth-card{width:min(460px,100%);background:var(--panel);padding:32px;border:1px solid var(--line);border-radius:16px}.auth-card h1{font-size:32px}.auth-card .brand{margin-bottom:30px}.auth-card .primary{width:100%;margin-top:10px}.auth-error{padding:12px;border-radius:7px;background:#713b2733;color:#ffccb6}.auth-card p{color:var(--muted);font-size:13px}@media(max-width:560px){.topbar{gap:8px}.logout-form button{font-size:9px;padding:4px}.auth-card{padding:24px}.settings-button{margin-left:auto}}
