:root{--ink:#29483e;--cream:#fff7e4;--teal:#237b67;--gold:#ffd568;--coral:#ff8b71;--grape:#c5a5ed;--mint:#a9dfbe}*{box-sizing:border-box}body{margin:0;color:var(--ink);font:500 18px/1.45 Fredoka,system-ui,sans-serif;background:linear-gradient(#c9edf5,#eef6d9 65%,#d9ebc9);min-height:100vh}button,a{-webkit-tap-highlight-color:transparent;touch-action:manipulation}button{font:600 18px Fredoka,system-ui,sans-serif;cursor:pointer;border:3px solid #426753;border-radius:17px;padding:12px 20px;min-height:50px;background:#fffdf4;color:var(--ink);box-shadow:0 4px 0 #37583c30}button:hover:not(:disabled),.game-card:hover{filter:brightness(1.04);transform:translateY(-2px)}button:active:not(:disabled){transform:translateY(2px);box-shadow:none}button:disabled{cursor:default;opacity:.6}a{color:inherit}a:focus-visible,button:focus-visible,summary:focus-visible{outline:4px solid #9134b6;outline-offset:4px}[hidden]{display:none!important}.topbar{max-width:1120px;display:flex;justify-content:space-between;gap:10px;align-items:center;margin:auto;padding:12px 24px}.topbar a,.treasure{border:3px solid white;border-radius:22px;padding:9px 16px;min-height:46px;background:#fff9e4;text-decoration:none;font-size:16px;box-shadow:0 4px 0 #49604920}.treasure{background:var(--gold)}.treasure b{font-size:23px;padding-left:8px}main{max-width:1060px;margin:auto;padding:0 24px 45px}.masthead{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 8px 18px}.masthead .mini-art{object-fit:contain;filter:drop-shadow(0 7px 0 #45634520)}.eyebrow{text-transform:uppercase;letter-spacing:.1em;font-size:12px;font-weight:700;margin:0}h1,h2,strong{font-family:'Baloo 2',Fredoka,system-ui,sans-serif}h1{font-size:clamp(32px,5.5vw,55px);line-height:1.05;margin:4px 0}h2{font-size:30px;line-height:1.15;margin:16px 0 6px}.masthead p:last-child{margin:7px 0 0}.scene-wrap{position:relative;border:5px solid #fff;border-radius:30px;overflow:hidden;box-shadow:0 8px 0 #6a926330;background:#a4dfee}#world{display:block;width:100%;aspect-ratio:640/240}.mini-art{display:block;flex:none}.masthead .mini-art{width:100px;height:100px}.finish .mini-art{margin:auto}.scene-wrap{max-width:640px;margin:12px auto 18px;background:#fffbee;border:2px solid #decfa7;box-shadow:none;border-radius:18px}.scene-badge{position:absolute;top:12px;left:14px;border:2px solid white;background:#fff9e8e8;padding:5px 13px;border-radius:30px;font-size:14px;font-weight:700}.game-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:24px}.game-card{display:flex;align-items:center;gap:14px;padding:18px;border:4px solid white;border-radius:25px;box-shadow:0 7px 0 #29483e25;text-decoration:none;transition:transform .15s}.game-card .mini-art{width:70px;height:70px;object-fit:contain;flex:none}.game-card span{flex:1}.game-card small{display:block;font-size:12px;font-weight:700}.game-card strong{display:block;font-size:27px;line-height:1.12}.game-card em{display:block;font-size:15px;font-style:normal;margin-top:5px}.game-card>b{background:var(--ink);color:white;border-radius:30px;padding:10px 15px;font-size:16px}.coral{background:#ffccb8}.gold{background:#ffe8a5}.mint{background:#c6ebce}.grape{background:#e2d3f6}.packet{margin-top:28px;border:2px solid #739a78;border-radius:20px;padding:15px 20px;background:#fffbee;font-size:16px}.packet summary{cursor:pointer;min-height:44px;display:flex;align-items:center;font-weight:700}.packet li{margin-bottom:9px}.game-panel{background:var(--cream);border:5px solid white;border-radius:26px;margin-top:20px;padding:20px 26px;box-shadow:0 8px 0 #49644225;text-align:center}.game-head{display:flex;justify-content:space-between;align-items:center;gap:8px}.quiet{font-size:15px;padding:10px 14px;background:#fffdf5}.game-head>span{font-weight:700;font-size:15px}.prompt{font-size:21px;margin:8px auto 15px;max-width:760px}.answers{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}.answer{font-size:26px;min-width:112px;min-height:65px;background:#fff3b9;border-color:#a7803f}.answer:nth-child(2n){background:#d4eee0;border-color:#5e927c}.answer:nth-child(3n){background:#e9d9fa;border-color:#9680b2}.answer.correct{background:#87d7a4;border-color:#278458;opacity:1}.answer.wrong{background:#ffe2cf;opacity:.6;outline:2px dashed #b77042}.letter{min-width:52px;padding:10px;font-size:27px}.slots{display:flex;flex-wrap:wrap;justify-content:center;gap:7px;margin:15px 0}.slot{display:grid;place-items:center;width:43px;height:50px;background:white;border:2px solid #7ba08d;border-bottom:5px solid #7ba08d;border-radius:10px;font-size:27px}.slot.filled{background:#d9efd4}.game-tools{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}.primary{background:#287c61;color:white;border-color:#1e5e49}#feedback{min-height:32px;margin:15px 0;font-weight:600;font-size:18px;color:#3d654b}.finish{text-align:center;border:5px solid white;border-radius:28px;background:#fff1c5;padding:25px;margin-top:20px}.finish .mini-art{width:120px;height:120px;object-fit:contain}.finish button{margin:7px}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:650px){main{padding:0 12px 30px}.topbar{padding:10px 12px}.topbar a,.treasure{font-size:13px;padding:8px 10px}.masthead{padding:7px 3px 12px}.masthead .mini-art{width:72px;height:80px}.masthead p:last-child{font-size:15px}.eyebrow{font-size:10px}.game-grid{grid-template-columns:1fr;gap:13px;margin-top:18px}.game-card{padding:14px;gap:12px}.game-card .mini-art{width:58px;height:58px}.game-card strong{font-size:25px}.scene-wrap{border-radius:22px;border-width:4px}#world{aspect-ratio:640/300}.scene-badge{top:7px;left:8px;font-size:11px;padding:3px 8px}.game-panel{padding:14px 12px;margin-top:14px;border-width:4px}.game-head .quiet{font-size:13px;padding:9px 10px}.game-head>span{font-size:12px}h2{font-size:25px;margin-top:12px}.prompt{font-size:18px}.answers{gap:9px}.answer{min-width:80px;min-height:57px;font-size:23px;padding:10px 13px}.answer.letter{min-width:47px;font-size:24px;padding:9px}.game-card>b{padding:10px 12px}.slot{width:32px;height:43px;font-size:23px}.slots{gap:5px}#feedback{font-size:16px;min-height:42px}.packet{font-size:15px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
#game-title:focus,#finish-title:focus{outline:none}
.answer.correct{outline:none;opacity:1}
