:root{--ink-950:#09070f;--ink-900:#110d1b;--violet-800:#261638;--cream-100:#fff3d5;--cream-300:#e7d5ac;--amber-300:#ffd166;--amber-500:#e5a82f;--red-400:#ee6a63;--line:rgba(255,243,213,.18);--shadow:0 18px 45px rgba(0,0,0,.34);--radius-card:12px;--radius-panel:18px;--font-display:"Arial Narrow","Roboto Condensed",Impact,sans-serif;--font-mono:"SFMono-Regular",Consolas,"Liberation Mono",monospace;color-scheme:dark;font-family:var(--font-mono);background:var(--ink-950);color:var(--cream-100)}*{box-sizing:border-box}body{margin:0;min-width:320px;background:var(--ink-950)}button,input{font:inherit}button{cursor:pointer}.wall{min-height:100vh;overflow-x:hidden;position:relative;padding:clamp(16px,3vw,42px);background:radial-gradient(circle at 75% 0%,#352050 0,transparent 38%),linear-gradient(135deg,var(--ink-950),#160d24 70%,#0a0810)}.wall:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:.11;background-image:linear-gradient(90deg,transparent 49%,#fff3d5 50%,transparent 51%),linear-gradient(#fff3d5 1px,transparent 1px);background-size:64px 64px;-webkit-mask-image:linear-gradient(135deg,#000,transparent 65%);mask-image:linear-gradient(135deg,#000,transparent 65%)}.masthead{max-width:1400px;margin:auto;display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding-bottom:28px}.eyebrow,.meta{font:700 11px/1.3 var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--cream-300)}h1,h2,h3{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.025em;margin:0}h1{font-size:clamp(42px,7vw,92px);line-height:.82;max-width:760px}h2{font-size:clamp(28px,4vw,48px)}h3{font-size:22px}.lede{max-width:48ch;color:var(--cream-300);line-height:1.55}.wall__content{max-width:1400px;margin:auto}.cue-card{background:var(--cream-100);color:var(--ink-950);border:1px solid rgba(255,243,213,.6);border-radius:var(--radius-panel);box-shadow:var(--shadow);padding:clamp(18px,2.5vw,32px)}.cue-card .meta,.cue-card .eyebrow{color:#685a42}.signal{color:var(--amber-500);font-weight:800}.status-strip{display:flex;align-items:center;gap:18px;flex-wrap:wrap;padding:12px 16px;border:1px solid var(--line);background:#110d1be0;border-radius:10px;margin-bottom:16px}.status-strip__item{display:flex;align-items:center;gap:8px}.status-strip__item strong{font-size:18px;color:var(--cream-100)}.lamp{width:9px;height:9px;background:var(--amber-300);border-radius:50%;box-shadow:0 0 14px var(--amber-300)}.control{min-height:44px;min-width:44px;border:1px solid var(--amber-500);border-radius:8px;padding:10px 16px;background:var(--violet-800);color:var(--cream-100);font-weight:800;text-transform:uppercase;letter-spacing:.04em;transition:transform .18s,background .18s,color .18s}.control:not(:disabled):hover{background:var(--amber-300);color:var(--ink-950);transform:translateY(-2px)}.control:disabled{opacity:.5;cursor:not-allowed;transform:none}.control--primary{background:var(--amber-300);color:var(--ink-950);border-color:var(--amber-300)}.control--quiet{border-color:var(--amber-500);background:var(--violet-800)}.control--danger{border-color:var(--red-400);background:#ee6a6324;color:var(--red-400)}.cue-card .control--danger{border-color:#8f3035;background:#8f3035;color:var(--cream-100)}:focus-visible{outline:3px solid var(--amber-300);outline-offset:3px}.screen-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:24px;align-items:start}.game-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,.5fr);gap:24px}.board-shell{min-width:0;position:relative}.board-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:12px}.memory-board{display:grid;grid-template-columns:repeat(var(--columns),minmax(0,1fr));gap:clamp(7px,1vw,14px);width:100%;touch-action:manipulation}.memory-card{aspect-ratio:1;border:0;border-radius:var(--radius-card);position:relative;min-width:0;padding:0;background:transparent;perspective:700px}.memory-card__face{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;display:grid;place-items:center;overflow:hidden;backface-visibility:hidden;transition:transform .18s ease,box-shadow .18s ease}.memory-card__back{background:repeating-linear-gradient(135deg,#21142f 0,#21142f 8px,#2b1c3d 8px,#2b1c3d 10px);border:2px solid #6b4b82;color:var(--amber-300);font:800 clamp(19px,4vw,38px) var(--font-display)}.memory-card__back:after{content:"B";border:2px solid var(--amber-500);border-radius:50%;padding:6px 10px}.memory-card__front{transform:rotateY(180deg);background:var(--cream-100);border:2px solid var(--amber-500);color:var(--ink-950);padding:8px;display:flex;flex-direction:column;justify-content:space-between}.memory-card__front img{width:76%;height:76%;object-fit:contain}.memory-card__label{font:700 clamp(8px,1.1vw,12px) var(--font-mono);text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.memory-card[data-card-state=front] .memory-card__back,.memory-card[data-card-state=matched] .memory-card__back,.memory-card[data-card-state=matched-hidden] .memory-card__back{transform:rotateY(-180deg)}.memory-card[data-card-state=front] .memory-card__front,.memory-card[data-card-state=matched] .memory-card__front{transform:rotateY(0)}.memory-card[data-card-state=matched-hidden] .memory-card__front{transform:rotateY(180deg);opacity:.38}.memory-card[data-card-state=matched] .memory-card__front{box-shadow:inset 0 0 0 4px var(--amber-300),0 0 22px #ffd1664d}.memory-card[data-card-state=matched]:after{content:"MATCH";position:absolute;inset:auto 6px 6px;padding:4px;background:var(--amber-300);color:var(--ink-950);font:800 9px var(--font-mono);letter-spacing:.1em}.memory-card[data-feedback=miss]{animation:miss .26s ease-in-out}.memory-card[data-feedback=effect]{animation:effect .4s ease}.memory-card[aria-disabled=true]{cursor:default}.memory-card[aria-disabled=true] .memory-card__front{filter:saturate(.65)}.info-stack{display:grid;gap:16px}.stat-row{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid rgba(17,13,27,.15);padding:10px 0}.stat-row:last-child{border-bottom:0}.drawer{border:1px solid var(--line);border-radius:var(--radius-panel);padding:20px;background:#110d1bd6}.drawer h3{color:var(--cream-100);margin-bottom:12px}.drawer p{color:var(--cream-300);line-height:1.55;margin:0}.lower-third{position:absolute;left:18px;bottom:18px;max-width:min(340px,80%);padding:12px 16px;background:var(--amber-300);color:var(--ink-950);font-weight:800;box-shadow:var(--shadow);animation:rise .62s both}.warning{border-left:5px solid var(--red-400);color:var(--red-400)}.mode-grid,.button-row,.tile-grid{display:grid;gap:14px}.mode-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin:24px 0}.mode-tile{text-align:left;min-height:130px;padding:20px;border:1px solid rgba(17,13,27,.2);border-radius:12px;background:#f6e4bd;color:var(--ink-950);transition:transform .18s,box-shadow .18s}.mode-tile:hover,.mode-tile[aria-selected=true]{transform:translateY(-4px);box-shadow:0 8px 0 var(--amber-500)}.mode-tile[aria-selected=true]{outline:3px solid var(--amber-500)}.mode-tile p{font-size:13px;line-height:1.45}.button-row{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-top:24px}.button-row .control{width:100%}.dialog-card{max-width:620px;margin:10vh auto}.range-row{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;padding:18px 0;border-bottom:1px solid rgba(17,13,27,.15)}input[type=range]{accent-color:var(--amber-500);width:100%;min-height:44px}.check-row{display:flex;align-items:center;gap:12px;min-height:44px}.check-row input{width:22px;height:22px;accent-color:var(--amber-500)}.big-score{font:800 clamp(52px,9vw,100px)/.9 var(--font-display);color:var(--amber-500)}@keyframes miss{0%,to{transform:translate(0)}35%{transform:translate(-5px)}70%{transform:translate(5px)}}@keyframes effect{50%{box-shadow:0 0 0 5px var(--amber-300)}}@keyframes rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@media(max-width:899px){.wall{padding:16px}.masthead{align-items:flex-start;flex-direction:column;padding-bottom:20px}.screen-grid,.game-layout{display:flex;flex-direction:column}.game-layout .board-shell{order:-1;width:100%}.info-stack{width:100%}.status-strip{margin-bottom:10px}.mode-grid{grid-template-columns:1fr 1fr}.memory-card__front{padding:4px}}@media(max-width:480px){h1{font-size:44px}.mode-grid{grid-template-columns:1fr}.board-head{align-items:flex-start;flex-direction:column}.status-strip{gap:10px}.status-strip__item strong{font-size:15px}.cue-card{padding:18px}.memory-card__label{font-size:7px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important}.memory-card[data-feedback=miss],.memory-card[data-feedback=effect]{animation:none}.memory-card[data-feedback=match]{box-shadow:inset 0 0 0 4px var(--amber-300)}}.memory-card[data-feedback=match]{animation:rise .62s both}@media(prefers-reduced-motion:reduce){.memory-card[data-feedback=match]{animation:none}}html,body{overflow-x:hidden}.memory-board{grid-template-columns:repeat(var(--columns),minmax(44px,1fr));gap:10px}@media(max-width:380px){.memory-board{gap:4px}}.memory-board{max-width:626px;justify-content:start}.memory-board[style*="--columns: 4"]{max-width:414px}.memory-board[style*="--columns: 5"]{max-width:530px}.memory-board[style*="--columns: 6"]{max-width:626px}.screen-grid--single{grid-template-columns:minmax(0,1fr)}.memory-board,.memory-card{touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.memory-card img{pointer-events:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.status-strip__item--lock strong{color:var(--amber-300)}.status-strip__item--lock[data-lock-state=none] strong{color:var(--cream-100)}.panic-reveal{padding:10px 14px;border:1px solid var(--amber-500);border-radius:10px;background:#e5a82f1f;color:var(--amber-300);font-weight:800;letter-spacing:.04em;text-transform:uppercase}.control[data-peek-state=used],.control[data-peek-state=unavailable]{opacity:.58;cursor:not-allowed}.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.memory-card__back{background-color:#21142f;background-image:url(/assets/card-back-C2tMxKpu.png);background-position:center;background-size:cover;background-repeat:no-repeat}.memory-card__back:after{content:none}@media(min-width:900px){.game-layout{grid-template-columns:minmax(0,1fr) minmax(220px,260px);gap:18px}.game-layout>.cue-card{padding:16px}.game-layout .info-stack{gap:10px}.game-layout .status-strip{gap:10px;padding:8px 10px;margin-bottom:10px}.game-layout .status-strip__item{gap:5px}.game-layout .status-strip__item strong{font-size:16px}.game-layout .info-stack .cue-card .lede{max-width:30ch;font-size:14px;line-height:1.35}.game-layout .panic-reveal{padding:8px 10px;font-size:12px}}.wall[data-screen=playing] .board-head h2{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.control--icon{width:44px;height:44px;padding:10px;display:inline-grid;place-items:center}.control--icon svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.control--icon svg path:first-child{fill:currentColor;stroke:none}.sound-icon__mute,.control--icon[data-sound-state=off] .sound-icon__wave{display:none}.control--icon[data-sound-state=off] .sound-icon__mute{display:block}@media(max-width:899px){.game-layout .status-strip{gap:6px;padding:8px 10px;margin-bottom:10px}.game-layout .status-strip__item{gap:5px}.game-layout .status-strip__item strong{font-size:14px}.game-layout .status-strip .meta{font-size:9px;letter-spacing:.08em}.game-layout .status-strip__item--action,.game-layout .status-strip__item--action .control{width:100%}}.memory-card__front{padding:4px;gap:2px;justify-content:flex-start}.memory-card__front img{width:100%;height:auto;max-height:70%;flex:1 1 0;min-height:0;object-fit:contain}.memory-card__label{flex:0 0 auto;width:100%;font-size:clamp(6px,1.1vw,12px);line-height:1.05;text-align:center;white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere;word-break:normal}@media(max-width:480px){.memory-card__label{font-size:6px;line-height:1.05}}.status-strip__item--lock{width:32px;min-width:32px;height:24px;justify-content:center;gap:0}.lock-badge{display:grid;place-items:center;width:22px;height:22px;border:1px solid var(--amber-500);border-radius:50%;background:var(--amber-300);color:var(--ink-950);font:900 16px/1 var(--font-display)}.status-strip__item--lock[data-lock-state=none] .lock-badge{background:transparent;color:var(--amber-300)}.board-head__actions{display:flex;align-items:center;gap:8px;flex:0 0 auto}.control--quit{min-width:44px}
