/* Official rankings — same cinematic charcoal and gold identity. */
.official-layout{padding-top:76px;padding-bottom:100px;min-height:85vh}
.official-topline{display:flex;justify-content:space-between;align-items:center;gap:20px}.official-back{color:#aeb9c5;font-size:12px}.official-back:hover{color:#f2cc83}
.official-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:34px;padding:36px 0 38px;border-bottom:1px solid #344151}
.official-heading h1{font-size:clamp(46px,7.1vw,105px);letter-spacing:-.075em;line-height:.92;color:#f5f3ef}.official-heading h1 em,.official-explainer h2 em{font-style:normal;color:#deb76c}
.official-heading p{color:#aeb9c6;font-size:15px;margin-top:25px;line-height:1.65}.official-count{flex:0 0 auto;text-align:right;padding-bottom:4px}.official-count strong{display:block;font-size:clamp(43px,5vw,76px);font-weight:800;line-height:1;color:#e8bc70}.official-count span,.official-stats span{display:block;color:#93a3b2;font-size:10px;font-weight:800;letter-spacing:.18em;margin-top:7px}
.official-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#364151;border:1px solid #364151;border-radius:12px;overflow:hidden;margin:35px 0 27px}.official-stats>div{padding:23px 28px;background:#151d27}.official-stats strong{display:block;color:#f2efe7;font-size:23px;margin-top:9px;letter-spacing:-.04em}
.official-tools{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:24px 0 13px}.official-search-wrap{border:1px solid #3f4a57;background:#17202b;display:flex;align-items:center;border-radius:10px;flex:1 1 360px;min-height:53px;padding-inline:14px;gap:12px}.official-search-wrap span{font-size:26px;color:#e2bc78}.official-search-wrap input{min-width:0;flex:1;background:none;border:0;outline:0;color:#fff;font-size:14px;font-family:inherit}.official-search-wrap:focus-within{border-color:#c6a365}.official-search-wrap input::placeholder{color:#8a98a7}.sort-wrap{min-height:53px;border:1px solid #3f4a57;border-radius:10px;background:#17202b;padding:0 12px;display:flex;align-items:center;gap:12px;color:#9eaeba;font-size:12px}.sort-wrap select{color:#f2eee5;background:#17202b;max-width:170px;border:0;padding:8px 6px;outline:0;font:inherit;font-size:13px}.view-toggle{display:flex;border:1px solid #3f4a57;background:#17202b;border-radius:10px;padding:4px}.view-toggle button{background:transparent;color:#aeb8c5;border:0;border-radius:7px;padding:12px 15px;cursor:pointer;font:inherit;font-size:12px;font-weight:800}.view-toggle button.on{background:#d8b46e;color:#111820}
.feed-status{color:#a6b5c3;margin:16px 0 21px;font-size:12px;line-height:1.7}.feed-status.fallback{color:#e6c17f}
.official-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:17px}.official-movie{position:relative;display:flex;flex-direction:column;text-align:left;color:#f5f3ef;cursor:pointer;overflow:hidden;background:#18222d;border:1px solid #394552;border-radius:11px;padding:0;transition:transform .2s,border-color .2s;min-width:0;min-height:315px}.official-movie:hover{transform:translateY(-4px);border-color:#d3ac66}.official-poster{height:auto;aspect-ratio:2/3;position:relative;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;padding:20px;background:radial-gradient(ellipse at 18% 10%,#455668,#1b242f 65%,#101820);border-bottom:1px solid #3d4650}.official-movie:nth-child(5n+2) .official-poster{background:radial-gradient(ellipse at 75% 10%,#5c493a,#1b242c 65%,#111820)}.official-movie:nth-child(5n+3) .official-poster{background:radial-gradient(ellipse at 45% 55%,#38484d,#1b252d 66%,#111820)}.official-movie:nth-child(5n+4) .official-poster{background:radial-gradient(ellipse at 75% 80%,#58453d,#20222d 68%,#111820)}.official-movie:nth-child(5n+5) .official-poster{background:radial-gradient(ellipse at 25% 25%,#4b3f52,#1b222d 68%,#111820)}
.official-poster:after{content:"";position:absolute;width:170px;height:170px;top:28%;left:22%;border:1px solid #dfb96f2b;border-radius:50%;box-shadow:0 0 0 35px #dfb96f0a;pointer-events:none}.official-poster-label{color:#e8c483;font-size:9px;font-weight:900;letter-spacing:.13em;z-index:1}.official-poster-name{font-size:clamp(17px,1.9vw,26px);font-weight:850;line-height:1.07;letter-spacing:-.045em;position:relative;z-index:1;word-break:break-word;overflow-wrap:anywhere}.official-poster-year{color:#b5c0ca;font-size:11px;z-index:1}.official-movie-foot{padding:13px 15px 16px;display:flex;align-items:center;justify-content:space-between;gap:6px}.official-movie-foot .rank{font-size:12px;color:#b2bcc5}.official-movie-foot .score{font-size:19px;font-weight:800;color:#e7bc71;white-space:nowrap}.official-movie-foot .score small{font-size:10px;color:#aeb7c2;font-weight:400}.official-list{display:flex;flex-direction:column;gap:8px}.official-list .official-movie{display:grid;grid-template-columns:72px minmax(0,1fr) auto;min-height:90px;align-items:center;padding:10px 16px;gap:18px}.official-list .official-poster{width:61px;aspect-ratio:2/3;height:72px;padding:7px;border-radius:3px;border:1px solid #37424e}.official-list .official-poster-name{display:none}.official-list .official-poster-label{font-size:7px}.official-list .official-poster-year{font-size:8px}.official-list .official-movie-foot{padding:0}.official-list .official-movie-foot .score{font-size:25px}.official-list .official-list-title{display:block!important;font-weight:750;font-size:17px}.official-movie .official-list-title{display:none}.official-more-wrap{display:flex;justify-content:center;align-items:center;flex-direction:column;gap:12px;padding:34px 0}.official-more{cursor:pointer;background:#deb872;color:#111820;border:0;border-radius:9px;padding:15px 35px;font-weight:800;font-family:inherit}.official-more:hover{background:#f5cd81}#showing-count{font-size:11px;color:#92a1b1}
.official-explainer{border-top:1px solid #33404b;margin-top:45px;padding-top:50px;display:grid;grid-template-columns:1.35fr 1fr;gap:65px}.official-explainer h2{font-size:clamp(32px,4.3vw,60px);letter-spacing:-.055em;line-height:1.05;margin:21px 0}.official-explainer p{font-size:13px;line-height:1.85;color:#adbbc8;max-width:530px}.official-explainer>div:last-child{border:1px solid #3b4856;background:#19232e;border-radius:12px;padding:28px;display:flex;flex-direction:column;align-items:start;justify-content:center;gap:13px}.official-explainer strong{font-size:19px;color:#f7f3e9}.official-explainer .btn{margin-top:12px}
.official-dialog{position:fixed;inset:0;margin:auto;max-width:min(560px,calc(100vw - 30px));width:100%;border:1px solid #6e634e;background:#17202a;color:#f5f2e9;border-radius:16px;padding:34px;box-shadow:0 24px 90px #000b}.official-dialog::backdrop{background:#060a10cb}.official-dialog h2{font-size:31px;letter-spacing:-.05em;margin:12px 35px 3px 0}.official-dialog .bigscore{font-size:46px;color:#e5bc74;font-weight:800}.official-dialog .detail-muted{color:#aeb8c3;font-size:13px}.official-dialog .detail-row{display:flex;justify-content:space-between;gap:15px;border-bottom:1px solid #34404a;padding:12px 0;font-size:13px}.official-dialog .detail-row strong{color:#ecc37c;font-size:15px}.official-dialog .detail-cta{margin-top:20px;display:inline-flex;padding:12px 18px;border-radius:8px;background:#dcb870;color:#121920;font-size:12px;font-weight:800}.official-dialog #dialog-close{position:absolute;right:12px;top:12px;border:0;background:#303b45;color:#fff;border-radius:50%;width:30px;height:30px;cursor:pointer}.official-dialog .detail-footnote{font-size:11px;color:#a9b5c2;margin-top:14px}
@media(max-width:1100px){.official-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:800px){.official-layout{padding-top:39px}.official-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.official-explainer{grid-template-columns:1fr;gap:18px}.official-heading h1{font-size:clamp(41px,9vw,70px)}}
@media(max-width:530px){.official-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.official-movie{min-height:270px}.official-poster{padding:13px}.official-poster-name{font-size:18px}.official-movie-foot{padding:10px}.official-heading{flex-direction:column;align-items:flex-start;gap:10px}.official-count{text-align:left}.official-count strong{font-size:44px}.official-stats>div{padding:13px}.official-stats span{font-size:8px}.official-stats strong{font-size:16px}.official-list .official-movie{grid-template-columns:55px minmax(0,1fr) auto;gap:10px;padding:8px}.official-list .official-poster{width:47px;height:65px}.official-list .official-list-title{font-size:13px}.official-list .official-movie-foot .score{font-size:20px}.official-heading p{font-size:13px}}
/* Shared original cinematic covers for the official rankings. */
.official-poster{isolation:isolate;background:#151c25!important}
.official-artwork{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;display:block}
.official-poster:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#04080d77 0%,transparent 23%,#050a1099 60%,#05080de9 100%);z-index:1;pointer-events:none}
.official-poster:after{display:none}
.official-poster-label,.official-poster-name,.official-poster-year{position:relative;z-index:2;text-shadow:0 2px 12px #0009}
.official-poster-name{font-size:clamp(18px,1.85vw,24px)}
.official-list .official-poster:before{background:linear-gradient(transparent,#05080d44)}
@media(max-width:530px){.official-poster-name{font-size:18px}}

/* Two gallery modes: poster-free editorial vs illustrative cinematic. */
.official-editorial-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
.official-editorial-card{border:1px solid #394752;border-radius:12px;background:radial-gradient(circle at 80% 15%,#31404a90,transparent 43%),linear-gradient(160deg,#111922,#080d13);color:#faf5ee;position:relative;min-width:0;min-height:238px;overflow:hidden;text-align:left;display:flex;flex-direction:column;justify-content:space-between;cursor:pointer;padding:21px 20px 16px;transition:transform .17s,border-color .17s}
.official-editorial-card:hover{transform:translateY(-3px);border-color:#e1b877}
.official-editorial-card:focus-visible{outline:3px solid #e8c07c;outline-offset:3px}
.official-editorial-card:nth-child(5n+2){background:radial-gradient(circle at 85% 12%,#5c372c80,transparent 45%),linear-gradient(130deg,#151b24,#0a0c12)}
.official-editorial-card:nth-child(5n+3){background:radial-gradient(circle at 85% 12%,#27545c55,transparent 45%),linear-gradient(130deg,#141e27,#0a0f15)}
.official-editorial-head{display:flex;justify-content:space-between;align-items:flex-start;position:relative;z-index:1}
.official-editorial-rank{font-family:Georgia,serif;font-size:40px;line-height:1;color:#e8be74}
.official-editorial-card .editorial-mark{height:75px;width:75px;color:#c59e64;opacity:.85}
.official-editorial-card .editorial-glyph{height:100%;width:100%}
.official-editorial-body{margin-top:auto;position:relative;z-index:1}
.official-editorial-body h3{font-family:Georgia,serif;font-size:clamp(19px,1.8vw,29px);font-weight:650;line-height:1.14;letter-spacing:-.4px;margin:0 0 9px;text-wrap:balance;overflow-wrap:anywhere}
.official-editorial-meta{font-size:10px;letter-spacing:1px;text-transform:uppercase;color:#a2b3c0;line-height:1.6}
.official-editorial-meta span{color:#d6af66;margin:0 4px}
.official-editorial-foot{border-top:1px solid #ffffff26;display:flex;align-items:end;justify-content:space-between;gap:6px;padding-top:13px;margin-top:16px}
.official-editorial-foot>span{color:#8293a1;font-size:8px;letter-spacing:1px}
.official-editorial-foot strong{color:#ecc578;font-size:24px;white-space:nowrap}
.official-editorial-foot small{font-size:10px;color:#c3c5c8;font-weight:450}
@media(max-width:1040px){.official-editorial-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.official-editorial-grid{grid-template-columns:1fr}.official-editorial-card{min-height:210px;padding:18px}.official-editorial-body h3{font-size:23px}.official-tools .view-toggle{flex-wrap:wrap}.official-tools .view-toggle button{padding:9px 10px;font-size:11px}}
