.ml-page{background:#10110f;color:#f5f2e8}.ml-main{max-width:1240px;margin:auto;padding:24px}.ml-hero{position:relative;display:grid;grid-template-columns:1.1fr 1fr;min-height:590px;border:1px solid #515044;border-radius:18px;background:radial-gradient(ellipse at 75% 65%,#30372a,transparent 65%),#171a15;overflow:hidden}.ml-hero-copy{padding:60px 0 50px 48px;position:relative;z-index:1}.ml-eyebrow{font-size:11px;font-weight:800;letter-spacing:2px;color:#d7bb75}.ml-hero h1{font-size:clamp(40px,4.8vw,68px);letter-spacing:-3px;line-height:1.04;margin:28px 0}.ml-hero h1 em{color:#ffda58;font-style:normal}.ml-lead{font-size:17px;color:#cccfc3;line-height:1.65}.ml-button{display:flex;align-items:center;justify-content:space-between;gap:22px;min-height:52px;padding:14px 22px;border:0;border-radius:7px;background:#ffda58;color:#111;font-family:inherit;font-size:15px;font-weight:800;text-decoration:none;cursor:pointer;max-width:330px;box-shadow:0 4px 0 #766330}.ml-button:hover{background:#ffe78d}.ml-button:disabled{opacity:.6;cursor:wait}.ml-button:focus-visible,.ml-fair summary:focus-visible{outline:3px solid #fff;outline-offset:5px}.ml-small{font-size:12px;color:#a4a89a;line-height:1.6}.ml-hero .ml-button{margin-top:25px}.ml-portrait{position:relative;align-self:end;padding-top:100px}.ml-portrait img{width:100%;max-width:none;margin-left:0;display:block;filter:drop-shadow(0 18px 28px #0007)}.ml-scan{position:absolute;top:30px;right:25px;border-left:2px solid #d46956;padding:10px 16px;font:11px/1.7 monospace;color:#b1bba4;letter-spacing:1px;transform:rotate(3deg)}.ml-scan b{color:#e6e9df}.ml-art-caption{position:absolute;bottom:16px;left:0;right:0;text-align:center;font:9px monospace;letter-spacing:1px;color:#bbc4ac}.ml-stats{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid #373a30;padding:30px 0;gap:20px}.ml-stats div{text-align:center}.ml-stats strong{font-size:27px;color:#e1c678;display:block}.ml-stats span{font-size:12px;color:#b8baaf}.ml-section{padding:54px 0 0;scroll-margin-top:85px}.ml-section h2{font-size:clamp(28px,3vw,40px);letter-spacing:-1.3px;line-height:1.15;margin:12px 0 28px}.ml-modes,.ml-boards{display:grid;grid-template-columns:1fr 1fr;gap:20px}.ml-mode,.ml-board{border:1px solid #44473b;background:#191c16;border-radius:12px;padding:28px}.ml-hard{border-color:#9f8945;background:linear-gradient(130deg,#292b1c,#191c16)}.ml-pill{display:inline-block;font-size:10px;letter-spacing:1.4px;color:#e3c972;border:1px solid #6b6541;border-radius:30px;padding:7px 12px}.ml-mode h3{font-size:30px;margin:22px 0 12px}.ml-mode p,.ml-rules p,.ml-rules li,.ml-fair p{color:#b8bcb0;line-height:1.65;font-size:15px}.ml-memory{display:flex;gap:10px;align-items:start;margin:24px 0;color:#dddccb;font-size:14px;line-height:1.7;min-height:52px}.ml-memory small{color:#919987}.ml-memory i{width:7px;height:7px;border-radius:50%;background:#b1c97c;margin-top:8px;box-shadow:0 0 12px #b1c97c}.ml-mode .ml-button{max-width:none;width:100%}.ml-secondary{background:#2c3125;color:#efeddf;border:1px solid #727953;box-shadow:none}.ml-secondary:hover{background:#3c4431}.ml-rules{display:grid;grid-template-columns:1fr 1fr;gap:70px}.ml-rules ol{padding-left:24px}.ml-rules li{padding:0 0 20px 10px}.ml-rules b{color:#e9e7dd}.ml-board h3{font-size:22px;margin:0 0 20px}.ml-board table{width:100%;border-collapse:collapse;font-size:14px}.ml-board th{text-align:left;color:#9b9f90;font-weight:400;font-size:11px;padding:0 0 14px}.ml-board td{padding:14px 0;border-top:1px solid #363b2e}.ml-board small{display:block;color:#c5b36d;font-size:9px;letter-spacing:1px;margin-top:6px}.ml-board td:not(:first-child),.ml-board th:not(:first-child){text-align:right}.ml-empty{height:115px;color:#bbbeb1;text-align:center!important}.ml-fair{margin-top:36px;border-top:1px solid #373a30;padding:24px 0}.ml-fair summary{cursor:pointer;color:#d2bd7d}.ml-notice,#ml-error{color:#e4c76d;font-size:14px}.ml-table-hud{position:fixed;top:0;left:50%;transform:translateX(-50%);z-index:9999;background:#212719;color:#f3d67d;border:1px solid #706437;border-radius:0 0 8px 8px;padding:6px 14px;font:700 10px/1.2 sans-serif;letter-spacing:.6px;pointer-events:none;white-space:nowrap}.ml-finish{background:#191d15;color:#f4f2e6;border:1px solid #af9953;border-radius:18px;padding:38px;max-width:480px;width:calc(100% - 32px);box-sizing:border-box}.ml-finish::backdrop{background:#000c}.ml-finish h2{font-size:36px;line-height:1.05;letter-spacing:-1px}.ml-final-score{font-size:24px;color:#f4d469}.ml-final-copy{color:#b8bda9;line-height:1.6}.ml-finish .ml-button{margin-top:26px;max-width:none}
@media(max-width:700px){.ml-main{padding:14px}.ml-hero{grid-template-columns:1fr;min-height:0}.ml-hero-copy{padding:30px 24px 0}.ml-hero h1{font-size:43px;letter-spacing:-2px;margin:22px 0}.ml-lead{font-size:15px}.ml-portrait{max-width:390px;margin:auto;padding-top:25px}.ml-portrait img{width:100%;margin:0}.ml-scan{top:12px;right:10px;font-size:8px}.ml-art-caption{font-size:7px}.ml-stats{gap:10px;padding:22px 0}.ml-stats strong{font-size:21px}.ml-stats span{font-size:10px}.ml-modes,.ml-boards,.ml-rules{grid-template-columns:1fr;gap:16px}.ml-section{padding-top:36px}.ml-mode,.ml-board{padding:22px}.ml-rules{gap:0}.ml-table-hud{display:none}.ml-finish{padding:26px}}
@media(min-width:701px) and (max-width:1150px){.ml-page .gto-head .gh-wide{display:none}}
/* Keep the portrait from deciding the height of a widescreen hero. */
.ml-main,.ml-main *{box-sizing:border-box}
@media(min-width:701px){
 .ml-hero{height:clamp(510px,70vh,620px);min-height:0;grid-template-columns:55% 45%}
 .ml-hero-copy{padding:32px 20px 32px 44px;align-self:center}
 .ml-hero h1{font-size:clamp(44px,4.5vw,64px);margin:20px 0;line-height:1.02}
 .ml-lead{font-size:16px;line-height:1.6;max-width:490px}
 .ml-hero .ml-button{margin-top:24px;width:100%;min-height:54px}
 .ml-portrait{position:absolute;right:8px;top:0;bottom:0;width:46%;height:100%;align-self:stretch;padding:0}
 .ml-portrait img{position:absolute;bottom:24px;right:0;width:100%;height:calc(100% - 90px);object-fit:contain;object-position:center bottom;margin:0}
 .ml-scan{top:18px;right:20px;font-size:10px;z-index:1}
 .ml-art-caption{bottom:12px;font-size:8px}
}
@media(min-width:701px) and (max-width:900px){.ml-hero-copy{padding-left:26px}.ml-lead{font-size:14px}.ml-eyebrow{font-size:9px}.ml-art-caption{font-size:6px}}
.ml-ramp{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.ml-ramp>div{padding:20px 14px;border-top:3px solid #7c8654;background:#1d2118;border-radius:4px}.ml-ramp>div:nth-child(2){border-color:#a5a15c}.ml-ramp>div:nth-child(3){border-color:#c9ad59}.ml-ramp>div:nth-child(4){border-color:#d79251}.ml-ramp>div:nth-child(5){border-color:#db6351;background:#2a1e19}.ml-ramp small{display:block;font-size:10px;letter-spacing:1px;color:#b9bfaa}.ml-ramp b{display:block;margin:12px 0 8px;font-size:16px}.ml-ramp span{font-size:12px;color:#aeb5a0;line-height:1.4}@media(max-width:700px){.ml-ramp{grid-template-columns:1fr}.ml-ramp>div{border-top:0;border-left:3px solid #7c8654;padding:14px 18px}.ml-ramp b{margin:6px 0}}

/* A distinct cinematic entrance for the challenge page. */
.ml-hero-cinematic{isolation:isolate;background:#101714}
.ml-hero-scene{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center;z-index:-2}
.ml-hero-cinematic:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#101714f2 0%,#101714b3 30%,#10171420 56%,transparent 75%)}
.ml-hero-cinematic .ml-portrait{pointer-events:none}
@media(max-width:700px){.ml-hero-cinematic{display:block;min-height:790px}.ml-hero-cinematic .ml-hero-copy{padding:30px 24px 0}.ml-hero-cinematic .ml-hero-scene{top:auto;bottom:0;height:370px;object-position:right center}.ml-hero-cinematic:after{background:linear-gradient(#101714 0%,#101714 49%,transparent 69%)}.ml-hero-cinematic .ml-portrait{position:absolute;inset:auto 0 0;width:100%;height:28px;max-width:none;padding:0}.ml-hero-cinematic .ml-scan{display:none}.ml-hero-cinematic .ml-art-caption{bottom:10px}}

.ml-personal{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:22px;margin:32px 0;padding:24px;background:#192018;border:1px solid #45513b;border-radius:14px}.ml-personal h2{font-size:28px;margin:12px 0}.ml-personal p,.ml-personal span{color:#b8c0ac;font-size:13px;line-height:1.6}.ml-personal article{padding:18px;border-left:1px solid #4b553e}.ml-personal article>*{display:block}.ml-personal article b{font-size:26px;color:#ffda50;margin:10px 0}.ml-personal a,.ml-board a{color:inherit}.ml-personal article a{margin-top:14px;font-size:13px}.ml-scorecard{position:relative;overflow:hidden;border:1px solid #515c44;border-radius:18px;min-height:490px;margin:28px 0;background:#0d1711}.ml-scorecard>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.ml-scorecard::after{position:absolute;inset:0;content:'';background:linear-gradient(90deg,#09130ffa,#09130fb0 48%,transparent)}.ml-scorecard>div{position:relative;z-index:1;max-width:600px;padding:44px}.ml-scorecard h1{font-size:clamp(34px,5vw,62px);letter-spacing:-.05em;line-height:1.05}.ml-scorecard strong{font-size:90px;display:block;color:#ffda50}.ml-scorecard strong small{font-size:23px;margin-left:10px}.ml-table-hud{background-image:linear-gradient(90deg,#d8b34e40 var(--ml-progress,0%),transparent var(--ml-progress,0%))}.ml-finish .ml-button{display:flex;margin-top:12px}@media(max-width:700px){.ml-personal{grid-template-columns:1fr 1fr;padding:18px;gap:12px}.ml-personal>div{grid-column:1/-1}.ml-personal article{padding:12px;border-top:1px solid #4b553e;border-left:0}.ml-personal article b{font-size:22px}.ml-scorecard>div{padding:26px}.ml-scorecard>img{object-position:65%}.ml-scorecard::after{background:#07120fb0}.ml-scorecard strong{font-size:72px}}

/* Larry result reveal and score-specific sharing. */
dialog.ml-finish{position:fixed;inset:0;margin:auto;padding:0;width:min(940px,calc(100vw - 24px));max-width:940px;max-height:calc(100dvh - 24px);overflow:auto;background:#101411;border:1px solid #756741;border-radius:18px;color:#f4f2e6;box-shadow:0 24px 90px #0009;font-family:Inter,sans-serif;animation:ml-result-in .35s ease-out}
.ml-finish::backdrop{background:#000c;backdrop-filter:blur(6px)}
.ml-end-card{position:relative;isolation:isolate;overflow:hidden;min-height:405px;display:flex;align-items:center}
.ml-end-card>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.ml-end-card::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#09130ff5,#09130fd6 38%,#09130f00 78%);z-index:-1}
.ml-end-copy{width:58%;padding:34px;box-sizing:border-box}
.ml-outcome-label{font-size:12px;font-weight:800;letter-spacing:2px;color:#ffda58;margin:0 0 20px}
[data-outcome=beat] .ml-outcome-label{color:#a7e8a0}[data-outcome=busted] .ml-outcome-label{color:#ff9d84}
.ml-finish .ml-end-copy h2{font-size:clamp(32px,4.2vw,54px);line-height:1.02;letter-spacing:-2px;margin:0 0 18px;text-wrap:balance}
.ml-end-joke{font-size:15px;line-height:1.5;color:#d3d8cb;max-width:340px;margin:0 0 28px}
.ml-result-stats{display:flex;gap:30px}.ml-result-stats strong{display:block;font-size:40px;line-height:1.1;letter-spacing:-1.5px;color:#ffda58;font-variant-numeric:tabular-nums}.ml-result-stats span{display:block;margin-top:8px;font-size:9px;font-weight:800;letter-spacing:1.4px;color:#c0c8b9}
.ml-hand-track{display:grid;grid-template-columns:repeat(50,1fr);gap:3px;margin-top:24px;max-width:360px}.ml-hand-track i{height:8px;background:#ffffff20;border-radius:2px}.ml-hand-track i.played{background:var(--pip)}
.ml-end-controls{padding:22px 28px;border-top:1px solid #ffffff15}.ml-end-actions{display:grid;grid-template-columns:1.25fr 1fr;gap:12px}.ml-finish .ml-end-actions .ml-button{margin:0;width:100%;max-width:none;justify-content:center;box-sizing:border-box;min-height:50px;box-shadow:none}
.ml-end-lobby{display:flex;align-items:center;justify-content:center;border:1px solid #ffffff30;border-radius:7px;color:#e3e5dc;font-size:14px;font-weight:700;text-decoration:none;min-height:50px}.ml-end-lobby:hover{background:#ffffff0b}
.ml-end-card[hidden],.ml-end-actions[hidden],.ml-share-panel[hidden],.ml-end-status[hidden]{display:none}.ml-finish .ml-share-panel{padding-top:0;margin-top:0;border-top:0}.ml-share-panel{padding-top:24px;margin-top:24px;border-top:1px solid #ffffff20}.ml-share-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.ml-share-heading h3{margin:0;font-size:18px;letter-spacing:-.4px}.ml-share-close{background:none;border:0;color:#ccc;font-size:28px;cursor:pointer;width:44px;height:44px}.ml-share-preview{display:block;width:100%;aspect-ratio:1200/630;object-fit:cover;border-radius:8px;border:1px solid #ffffff20}.ml-share-message{font-size:14px;line-height:1.6;color:#d3d8cb;margin:18px 0}.ml-share-destinations{display:grid;grid-template-columns:1fr 1fr;gap:12px}.ml-share-destinations a{display:flex;gap:12px;align-items:center;justify-content:center;background:#f3f0e6;color:#111;font-size:14px;font-weight:800;text-decoration:none;min-height:50px;border-radius:7px}.ml-share-destinations a:hover{background:#ffda58}.ml-share-destinations b{font-size:22px}.ml-share-note{font-size:12px;color:#949d8e;text-align:center;margin:14px 0 0}.ml-end-status{color:#ffda58;font-size:13px;line-height:1.5}
.ml-finish :is(a,button):focus-visible{outline:3px solid #ffda58;outline-offset:4px}
@keyframes ml-result-in{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){dialog.ml-finish{animation:none}}
@media(max-width:600px){.ml-end-card{min-height:470px;align-items:flex-end}.ml-end-card>img{object-position:72% center}.ml-end-card::after{background:linear-gradient(0deg,#09130f 0%,#09130fe6 38%,#09130f00 95%)}.ml-end-copy{width:100%;padding:24px}.ml-outcome-label{margin-bottom:12px}.ml-finish .ml-end-copy h2{font-size:38px;max-width:300px;margin-bottom:12px}.ml-end-joke{font-size:14px;margin-bottom:20px;max-width:290px}.ml-result-stats strong{font-size:34px}.ml-end-controls{padding:16px}.ml-end-actions{grid-template-columns:1fr}.ml-end-lobby{min-height:44px}.ml-share-heading h3{font-size:16px}.ml-hand-track{margin-top:20px;gap:2px}.ml-share-message{font-size:13px}.ml-share-destinations{gap:8px}}

/* Leaderboard pages (mega-larry.js) */
.ml-pager{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;padding-top:14px;border-top:1px solid #2c3227}
.ml-pager[hidden]{display:none}
.ml-pager button{min-height:36px;padding:0 14px;border:1px solid #45513b;border-radius:8px;background:#1d221b;color:#f5f2e8;font:700 13px var(--muck-font,Inter,system-ui,sans-serif);cursor:pointer}
.ml-pager button:hover:not(:disabled){background:#262c23;border-color:#ffda50;color:#ffda50}
.ml-pager button:disabled{opacity:.35;cursor:default}
.ml-pager-at{font-size:12px;color:#a8ad9e;font-variant-numeric:tabular-nums}
/* one mode (2026-10-06): the single challenge card and board span the row */
.ml-modes.ml-modes-one,.ml-boards.ml-boards-one{grid-template-columns:minmax(0,1fr)}
/* No Larry hand/phase strip on the phone table: it covered the cards (Shaun, 2026-10-14: "kill the header label in game when u play the larry challenge on mobile") */
body.mobile-game-active .ml-table-hud{display:none}

/* The approved loss art is a portrait: preserve Larry counting the notes. */
[data-outcome=busted] .ml-end-card>img,.ml-scorecard[data-outcome=busted]>img{left:auto;right:0;width:62%;object-position:center 30%}
@media(max-width:600px){[data-outcome=busted] .ml-end-card>img,.ml-scorecard[data-outcome=busted]>img{width:100%;object-position:center 25%}}

/* One end screen: score image, direct sharing, and an exit. */
.ml-result-single .ml-single-heading{display:block;margin:0 0 18px}
.ml-result-single .ml-outcome-label{margin:0 0 8px}
.ml-result-single .ml-single-heading h2{margin:0;font-size:clamp(24px,3vw,34px);line-height:1.1;letter-spacing:-1px}
.ml-result-single .ml-share-destinations a{background:#ffda58}
.ml-result-single .ml-share-destinations a:hover{background:#ffe78d}
.ml-result-single>.ml-end-lobby{margin-top:12px;min-height:44px}
.ml-result-single .ml-share-message{margin:14px 0;font-size:13px}

.ml-result-single .ml-share-destinations{margin-top:16px}


/* Phones: nothing under 12px, reading text 13px (Shaun, 2026-10-30, mobile text audit) */
@media (max-width: 720px) {
  .ml-board small { font-size: 12px; }
  .ml-pager-at { font-size: 13px; }
}
