.game-layout{grid-template-columns:minmax(0,1fr) 320px}.scene{height:610px;background:radial-gradient(#292722,#111110)}.stage-wrap{overflow:hidden}.stage-top{background:#181715}.pieces{grid-template-columns:repeat(3,1fr)}.pieces button{font:13px system-ui;letter-spacing:1px;border-radius:4px}.pieces button[aria-pressed=true]{box-shadow:inset 0 0 15px #d9c39b20;border-color:#e0c99e}.stats{display:flex;gap:16px;border-block:1px solid var(--line);padding:12px 0;margin:16px 0;font-size:11px;color:var(--muted)}.stats b{display:block;font:24px Georgia;color:var(--ivory)}.game-controls button{min-height:44px}.game-controls>button{font-size:13px}.game-controls details{border-top:1px solid var(--line);padding-top:16px;margin-top:20px}.game-controls summary{cursor:pointer;font-size:13px}.game-controls details button{width:100%;margin-bottom:8px;font-size:12px;padding:10px}.game-controls input[type=range]{min-height:24px}.game-controls .target{margin:12px 0}.game-controls h2{font-size:25px}#referenceImage{width:100%;display:block;margin-top:12px}#swap[aria-pressed=true],#overlay[aria-pressed=true]{background:#d9c39b;color:#171716}.game-result{background:linear-gradient(110deg,#302a20,#1c1b18);border:1px solid #d9c39b55;border-left:3px solid #d9c39b}.game-result.won{box-shadow:0 0 35px #d9c39b12}#sceneOverlay{position:absolute;pointer-events:none;top:46px;left:0;width:100%;height:610px;display:flex;align-items:center;justify-content:center;opacity:.45;mix-blend-mode:multiply}#sceneOverlay img{height:100%;max-width:100%;object-fit:contain}#restartDialog{position:fixed;inset:0;background:#000b;z-index:100;display:grid;place-items:center;padding:24px}#restartDialog>div{background:#24221e;border:1px solid #d9c39b70;padding:30px;max-width:460px}#restartDialog button{margin:5px}#scene canvas{cursor:default}.game-controls #selection{color:var(--accent)}@media(min-width:851px){.stage-wrap{position:sticky;top:18px}}@media(max-width:850px){.game-layout{grid-template-columns:1fr}.scene{height:470px}#sceneOverlay{height:470px}.game-controls{display:block}.pieces{max-width:360px}.target{max-width:220px}.game-intro{padding-bottom:0}}@media(max-width:400px){.scene{height:350px}#sceneOverlay{height:350px}.game-controls{padding:20px}.stats{gap:25px}}
