/* Data Lab v1 — the main app's charcoal/gold language */
.data-lab{display:grid;gap:36px;margin:-4px 0 12px}.lab-entrance{position:relative;isolation:isolate;overflow:hidden;border:1px solid #374049;border-radius:18px;min-height:470px;background:radial-gradient(ellipse at 85% 52%,#252d33 0%,#111820 52%,#0b1016 100%);padding:clamp(32px,5vw,66px) clamp(22px,6vw,65px);display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:22px;box-shadow:0 20px 60px #03060948}.lab-entrance:after{content:'';position:absolute;z-index:-1;right:-7%;top:-15%;width:48%;aspect-ratio:1;border-radius:50%;border:1px solid #bb996022;box-shadow:0 0 0 38px #bb996008,0 0 0 100px #bb996008}.lab-entrance-label{font-size:10px;font-weight:850;letter-spacing:.22em;color:#f0c779;display:flex;align-items:center;gap:12px}.lab-rule{height:2px;width:30px;background:#f0c779}.lab-entrance h1{font-size:clamp(40px,6.4vw,84px);font-weight:900;line-height:.98;letter-spacing:-.069em;margin:0;max-width:840px}.lab-entrance h1 span,.lab-entrance h1 em{display:block;font-style:normal}.lab-entrance h1 em{color:#f3c86b}.lab-entrance>p{max-width:525px;font-size:clamp(14px,1.65vw,18px);color:#c3cbd5;line-height:1.55}.lab-entrance-joke{font-size:13px;color:#9eabb9;max-width:480px}.lab-scroll{display:flex;align-items:center;gap:14px;color:#f3c86b;font-size:11px;letter-spacing:.14em;font-weight:850;text-decoration:none;padding-top:8px}.lab-scroll span{font-size:24px;line-height:1}.lab-controls{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}.lab-controls h2{font-size:clamp(26px,4vw,36px);margin:6px 0}.lab-controls .field{min-width:min(100%,270px)}.lab-section{display:grid;gap:17px;scroll-margin-top:22px}.lab-section-top{display:flex;align-items:flex-start;gap:17px;padding-bottom:14px;border-bottom:1px solid #33414d}.lab-count{font-size:12px;color:#f1c978;border:1px solid #806944;background:#332c24;padding:10px 9px;border-radius:8px;min-width:43px;text-align:center;font-weight:900}.lab-section-top h2{font-size:clamp(23px,3.6vw,30px);letter-spacing:-.045em}.lab-section-top p{color:#9babb9;font-size:13px;margin-top:6px}.lab-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}.lab-metric{display:flex;flex-direction:column;min-width:0;gap:12px;border:1px solid #334352;background:#17212c;padding:17px;border-radius:12px}.lab-metric-head{display:flex;align-items:center;gap:8px;justify-content:space-between;color:#afbdcd;font-size:12px;font-weight:700}.lab-metric-head>span{min-width:0}.lab-metric-val{font-size:clamp(21px,2.8vw,34px);letter-spacing:-.045em;color:#f3c86b;line-height:1.1;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.lab-metric small{color:#9eafbe;font-size:11px}.lab-metric-action{color:#f3c86b;border:0;background:none;font-size:11px;font-weight:800;align-self:start;padding:0;margin-top:auto}.lab-metric-action:hover{text-decoration:underline}.lab-help{position:relative;flex-shrink:0}.lab-help>summary{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;border:1px solid #697886;color:#b0c4d3;font-weight:850;font-family:Georgia,serif;font-style:italic;font-size:12px;cursor:pointer;list-style:none}.lab-help>summary::-webkit-details-marker{display:none}.lab-help[open]>summary{background:#f3c86b;color:#1d2630}.lab-help>div{position:absolute;right:0;top:27px;z-index:9;width:min(265px,72vw);padding:13px;border-radius:10px;box-shadow:0 15px 30px #000b;border:1px solid #685a40;background:#29313b;color:#f0ebe4;font-size:12px;font-weight:400;line-height:1.5}.lab-formula{color:#f1c978;border-top:1px solid #59606b;margin-top:9px;padding-top:8px;font-size:11px}.lab-box{background:#17212c;border:1px solid #334352;border-radius:14px;padding:21px;display:grid;gap:16px}.lab-subhead{display:flex;align-items:center;justify-content:space-between;gap:10px}.lab-subhead h3{font-size:16px}.lab-chart{height:190px;display:grid;grid-template-columns:repeat(10,1fr);gap:9px;border-bottom:1px solid #3f4d5b}.lab-bin{border:0;background:none;color:#afbac7;display:flex;flex-direction:column;align-items:center;gap:4px;padding:0;min-width:0}.lab-bin-value{font-size:11px;font-variant-numeric:tabular-nums}.lab-bin-track{flex:1;width:100%;display:flex;align-items:end;justify-content:center}.lab-bin-track span{display:block;width:100%;max-width:55px;background:linear-gradient(0deg,#ad7837,#f4c879);border-radius:4px 4px 0 0;min-height:2px}.lab-bin:hover .lab-bin-track span{background:#ffe1a3}.lab-bin-label{font-size:11px;padding:7px}.lab-chart-foot{font-size:11px;color:#93a3b4}.lab-sparkline{width:100%;height:auto;max-height:210px;background:linear-gradient(180deg,#1f2c37,#141e29);border-radius:9px}.lab-chron-empty{border:1px dashed #806944;border-radius:14px;padding:25px;background:#221f20;display:grid;gap:10px}.lab-chron-empty h3{font-size:18px}.lab-chron-empty p{color:#c7bdb1;line-height:1.55}.lab-chron-icon{font-size:30px;color:#f3c86b}.lab-order-import{background:#17212c;border:1px solid #344657;border-radius:13px;padding:16px}.lab-order-import>summary{cursor:pointer;font-weight:800;color:#f3c86b}.lab-order-import>div{margin-top:16px}.lab-order-import textarea{font-size:13px}.lab-order-preview{border:1px solid #5a765b;background:#25372e;border-radius:10px;padding:10px;color:#cee4d2;font-size:12px}.lab-order-errors{padding-top:10px;color:#f5b39e;max-height:165px;overflow:auto}.lab-order-errors>div{padding:3px}.lab-category-bars{display:grid;gap:12px}.lab-category-row{display:grid;grid-template-columns:minmax(105px,1fr) minmax(80px,2fr) 52px;align-items:center;gap:10px;font-size:12px;color:#d6dee4}.lab-category-rail{height:12px;border-radius:8px;background:#293949;overflow:hidden}.lab-category-rail span{display:block;height:100%;background:linear-gradient(90deg,#b58b43,#f3c86b);border-radius:8px}.lab-drill{display:grid;gap:15px;scroll-margin-top:14px;border-color:#b9955d}.lab-drill .row{align-items:start}.lab-drill-list{max-height:450px;overflow:auto}.lab-drill-row{display:grid;grid-template-columns:30px minmax(0,1fr) auto 16px;gap:12px;align-items:center;width:100%;border:0;border-bottom:1px solid #2d3e4f;background:none;color:#eff3f6;padding:12px 8px;text-align:left}.lab-drill-row:hover{background:#263440}.lab-drill-title{font-weight:700}.lab-drill-rank{color:#8ba0b2;font-size:12px}.lab-end{padding:44px 18px;text-align:center;background:linear-gradient(160deg,#1e2a33,#111820);border:1px solid #344455;border-radius:17px;display:grid;justify-items:center;gap:12px}.lab-end>span{color:#f3c86b;font-size:34px}.lab-end h2{font-size:24px}.lab-end p{color:#a9b6c3}.lab-end .btn{margin-top:6px}
@media(max-width:780px){.lab-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.lab-entrance{min-height:420px}.lab-entrance h1{font-size:clamp(40px,8vw,63px)}}
@media(max-width:460px){.data-lab{gap:27px}.lab-entrance{min-height:420px;padding:31px 19px}.lab-entrance h1{font-size:clamp(36px,10.7vw,49px)}.lab-entrance-label{font-size:9px;letter-spacing:.12em}.lab-entrance>p{font-size:13px}.lab-entrance-joke{font-size:12px}.lab-metric{padding:13px;gap:10px}.lab-metric-val{font-size:clamp(22px,6vw,28px)}.lab-chart{height:135px;gap:4px}.lab-bin-value,.lab-bin-label{font-size:9px}.lab-box{padding:14px}.lab-category-row{grid-template-columns:minmax(83px,1fr) minmax(48px,2fr) 40px}.lab-section-top{gap:10px}.lab-section-top h2{font-size:23px}.lab-controls .field{width:100%}}

/* Data Lab v2: explain each number AND show the exact movies behind it */
.lab-metric{position:relative}
.lab-metric:has(.lab-help[open]),.lab-box:has(.lab-help[open]){z-index:25;position:relative}
.lab-help-body{width:min(335px,82vw)!important;max-height:min(460px,75vh);overflow:auto;overscroll-behavior:contain}
.lab-help-explain{color:#e2e7ed;line-height:1.5}
.lab-formula{display:grid;gap:5px}
.lab-formula>span{font-size:9px;font-weight:850;letter-spacing:.12em;color:#94a5b5}
.lab-help-movies{border-top:1px solid #59606b;margin-top:10px;padding-top:10px;display:grid;gap:5px}
.lab-help-subheading{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#c5cfd9;font-size:10px;font-weight:850;letter-spacing:.05em}
.lab-help-subheading span{color:#f3c86b;letter-spacing:0}
.lab-help-movie{display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:left;width:100%;background:#202c37;color:#f0f3f6;border:1px solid #3c4853;border-radius:6px;padding:8px;font-size:11px;cursor:pointer}
.lab-help-movie:hover{border-color:#f3c86b}
.lab-help-movie>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lab-help-movie>b{color:#f3c86b;font-variant-numeric:tabular-nums}
.lab-help-all{width:100%;padding:9px 10px;margin-top:5px;border:1px solid #aa8445;border-radius:7px;background:#3b3021;color:#f5c873;font-size:12px;font-weight:800;text-align:center;cursor:pointer}
.lab-help-all:hover{background:#594327}
.lab-drill-search{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.lab-drill-search label{font-size:12px;font-weight:750;color:#c2cfda}
.lab-drill-search .input{flex:1;min-width:170px;max-width:420px}
.lab-drill-row[hidden],.lab-drill-no-matches[hidden]{display:none!important}
.lab-drill-score{display:flex;flex-direction:column;align-items:end;gap:3px;min-width:74px}
.lab-drill-score small{font-size:10px;color:#a6b6c6}
.lab-category-title{display:flex;align-items:center;gap:6px;min-width:0}
.lab-category-score{border:0;background:transparent;cursor:pointer;color:#f3c86b;font-weight:750;text-align:right;font-size:12px;white-space:nowrap}
.lab-category-score:hover{text-decoration:underline}
.lab-category-row{grid-template-columns:minmax(105px,1fr) minmax(80px,2fr) 68px}
.lab-category-row:has(.lab-help[open]){z-index:30;position:relative}
@media(max-width:620px){
 .lab-help[open]:before{content:'';position:fixed;inset:0;background:#0009;z-index:999}
 .lab-help[open]>.lab-help-body{position:fixed!important;top:50%!important;left:50%!important;right:auto!important;transform:translate(-50%,-50%);z-index:1000!important;width:min(380px,calc(100vw - 24px))!important;max-height:76vh}
 .lab-help[open]>summary{position:relative;z-index:1000}
 .lab-drill-search{align-items:stretch;flex-direction:column}
 .lab-drill-search .input{max-width:none;width:100%}
 .lab-category-row{grid-template-columns:minmax(83px,1fr) minmax(48px,2fr) 64px}
 .lab-category-title{font-size:11px}
}


/* Data Lab v3 — Four approved improvements (2026-10-25) */
.lab-entrance{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);align-items:stretch;gap:0;padding:0;min-height:510px;position:relative;background:#0c1219}
.lab-entrance:after{display:none}
.lab-entrance-copy{position:relative;z-index:2;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:20px;padding:clamp(30px,4.4vw,64px) clamp(24px,4vw,58px);min-width:0}
.lab-entrance h1{font-size:clamp(40px,5.0vw,72px);line-height:1;max-width:660px}
.lab-entrance-copy>p{max-width:490px;font-size:clamp(14px,1.45vw,18px);color:#c3cbd5;line-height:1.55}
.lab-inferno-art{min-height:510px;background-image:linear-gradient(90deg,#0c1219 0%,rgba(12,18,25,.20) 20%,rgba(12,18,25,0) 55%),linear-gradient(0deg,rgba(12,18,25,.22),transparent 32%),url('assets/data-lab-inferno.webp');background-repeat:no-repeat;background-size:cover;background-position:52% center;filter:saturate(.85)}
/* Keep the new '10' bar distinct and readable. */
.lab-chart{grid-template-columns:repeat(11,minmax(0,1fr));gap:8px}
.lab-bin-perfect .lab-bin-track span{background:linear-gradient(0deg,#cc903a,#ffe49c)}
.lab-bin-perfect .lab-bin-label{color:#ffe0a0;font-weight:900}
.lab-bin:focus-visible,.lab-help-close:focus-visible,.lab-drill-close:focus-visible{outline:3px solid #ffe19b;outline-offset:3px}
/* Make both informational and movie-list close buttons unmistakable. */
.lab-help-topline{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:-3px 0 10px;color:#f3c86b;font-size:10px;letter-spacing:.11em}
.lab-help-close{display:grid;place-items:center;min-width:36px;min-height:36px;background:#f3c86b;border:2px solid #ffe3a1;border-radius:50%;color:#111820;font-weight:950;font-size:18px;line-height:1;cursor:pointer;box-shadow:0 2px 9px #0008}
.lab-help-close:hover{background:#ffe0a0;transform:scale(1.06)}
.lab-drill-close{display:inline-flex;align-items:center;gap:9px;justify-content:center;background:transparent;border:0;color:#f4d398;font-weight:850;cursor:pointer;padding:3px;flex-shrink:0}
.lab-drill-close-icon{display:grid;place-items:center;border:2px solid #ffe1a1;background:#f3c86b;color:#141a20;border-radius:50%;width:44px;height:44px;font-size:19px;box-shadow:0 3px 15px #0008}
.lab-drill-close:hover .lab-drill-close-icon{background:#ffe1a1;transform:scale(1.04)}
.lab-drill-close-label{font-size:12px}
@media(max-width:960px){
 .lab-entrance{grid-template-columns:minmax(0,1fr) minmax(0,.75fr);min-height:450px}
 .lab-entrance-copy{padding:36px 25px}
 .lab-entrance h1{font-size:clamp(35px,5.3vw,54px)}
 .lab-inferno-art{min-height:450px}
}
@media(max-width:660px){
 .lab-entrance{grid-template-columns:minmax(0,1fr);min-height:0}
 .lab-entrance-copy{padding:32px 22px 22px;gap:15px}
 .lab-entrance h1{font-size:clamp(36px,9.7vw,57px)}
 .lab-inferno-art{min-height:235px;background-image:linear-gradient(180deg,#0c1219 0%,rgba(12,18,25,0) 20%),linear-gradient(0deg,#0c1219,transparent 22%),url('assets/data-lab-inferno.webp');background-position:center 37%;background-size:cover}
 .lab-entrance-copy>p{font-size:13px}
 .lab-drill-close-label{display:none}
 .lab-bin-label,.lab-bin-value{font-size:10px}
 .lab-chart{gap:3px}
}
