/* MOEx road trip games: shared styles. Built for one tablet in a moving car: big targets, little reading, nothing fussy. */
.rt .gbtn{min-height:50px;font-size:1.02rem}
/* game pages: get the game above the fold on a phone */
.ahero.compact .wrap{padding-block:18px 20px;gap:8px}
.ahero.compact h1{font-size:clamp(1.6rem,5vw,2.4rem)}
.ahero.compact .lede{font-size:1rem}
@media (max-width:600px){.ahero.compact .meta{display:none}.ahero.compact .lede{font-size:.95rem}}
.rt.article{padding-top:16px}
.seg{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.seg .lab{font-family:var(--display);font-weight:600;color:var(--ink-soft);font-size:.95rem;margin-right:2px}
.seg .gbtn{min-width:50px;padding-inline:14px}
.before{background:var(--sun-tint);border:var(--line);border-radius:18px;padding:16px 20px;display:grid;gap:6px}
.before h2{font-size:1.15rem}
.offline-state{font-weight:800;color:var(--teal);min-height:1.4em}
.faqs{display:grid;gap:10px}
.gmsg.big{font-size:1.5rem}
.gmsg.done{color:var(--teal)}
.score{font-family:var(--display);font-weight:600;font-size:1.1rem;white-space:pre;color:var(--ink-soft)}
.confirm{background:var(--paper);border:var(--line);border-radius:16px;padding:14px 18px;display:grid;gap:10px}
.confirm p{font-weight:800}

/* bingo */
.bingo{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;max-width:620px;margin:0 auto;width:100%;user-select:none}
.bsq{aspect-ratio:1;border:2.5px solid var(--ink);border-radius:14px;background:var(--paper);cursor:pointer;padding:4px 2px;display:grid;align-content:center;justify-items:center;gap:2px;font:inherit;color:var(--ink);transition:transform .08s,background .12s;min-width:0}
.bsq .e{font-size:clamp(1.3rem,6vw,2.2rem);line-height:1}
.bsq .l{font-size:clamp(.62rem,2.1vw,.85rem);font-weight:800;line-height:1.1;text-align:center;overflow-wrap:anywhere}
.bsq:active{transform:scale(.94)}
.bsq.on{background:var(--sun);box-shadow:inset 0 0 0 3px var(--paper)}
.bsq.free{background:var(--sun-tint);border-style:dashed;cursor:default}
.bsq.win{background:var(--teal);color:#fff;border-color:var(--teal)}
.bsq:disabled{opacity:1}
@media (max-width:420px){.bingo{gap:5px}.bsq{border-radius:10px;border-width:2px}}

/* license plates */
.region{display:grid;gap:8px;margin-bottom:18px}
.region h2{font-size:1.05rem;color:var(--ink-soft)}
.states{display:grid;grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:8px}
.st{border:2.5px solid var(--ink);border-radius:12px;background:var(--paper);cursor:pointer;padding:8px 8px;display:grid;gap:1px;text-align:left;font:inherit;color:var(--ink);min-height:58px;transition:transform .08s}
.st b{font-family:var(--display);font-weight:700;font-size:1.25rem;line-height:1.1}
.st span{font-size:.78rem;font-weight:700;color:var(--ink-soft);line-height:1.15}
.st:active{transform:scale(.96)}
.st.on{background:var(--teal);border-color:var(--teal);color:#fff}
.st.on span{color:#fff;opacity:.9}
.st.on b::after{content:" ✓"}

/* would you rather */
.wyr{background:var(--paper);border:var(--line);border-radius:22px;padding:22px 20px;display:grid;gap:16px;box-shadow:var(--lift)}
.wq{font-family:var(--display);font-weight:600;font-size:1.3rem;color:var(--ink-soft)}
.wopts{display:grid;grid-template-columns:1fr auto 1fr;gap:12px;align-items:stretch}
.wopt{border:2.5px solid var(--ink);border-radius:18px;background:var(--sun-tint);cursor:pointer;padding:22px 14px;display:grid;gap:8px;align-content:center;justify-items:center;font:inherit;color:var(--ink);min-height:150px;transition:transform .1s,background .12s;text-align:center}
.wopt.b{background:var(--dusk-tint)}
.wopt .wt{font-family:var(--display);font-weight:600;font-size:clamp(1.15rem,3.4vw,1.5rem);line-height:1.25;text-wrap:balance}
.wopt .wc{font-size:.9rem;font-weight:800;color:var(--teal);min-height:1.2em}
.wopt.hit{transform:scale(.96);background:var(--sun)}
.wopt.b.hit{background:var(--dusk);color:#fff}
.wor{font-family:var(--display);font-weight:700;align-self:center;color:var(--ink-soft)}
@media (max-width:520px){.wopts{grid-template-columns:1fr}.wor{justify-self:center}.wopt{min-height:110px;padding:18px 14px}}

/* tic-tac-toe */
.ttt{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;max-width:420px;margin:0 auto;width:100%;background:var(--ink);padding:8px;border-radius:18px}
.sq{aspect-ratio:1;border:0;border-radius:12px;background:var(--paper);cursor:pointer;padding:14%;display:grid;place-items:center}
.sq svg{width:100%;height:100%}
.sq:disabled{cursor:default}
.sq.win{background:var(--sun-tint);box-shadow:inset 0 0 0 4px var(--sun)}

/* low battery */
html.low .bsq,html.low .st,html.low .wopt,html.low .sq{transition:none}
html.low .wyr{box-shadow:none}
html.low .wopts{grid-template-columns:1fr}
html.low .states{grid-template-columns:repeat(2,minmax(0,1fr))}
