
:root{--ink:#29413e;--green:#17845e;--yellow:#ffca3a;--blue:#8fddff;--paper:rgba(255,255,255,.92);--shadow:0 14px 36px rgba(41,65,62,.15)}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:var(--ink)}
body{background:radial-gradient(circle at 8% 9%,rgba(255,255,255,.82) 0 75px,transparent 76px),radial-gradient(circle at 92% 7%,rgba(255,255,255,.72) 0 95px,transparent 96px),linear-gradient(155deg,#fff3c8,#dff8ff 58%,#f8e7ff)}
a,button{font:inherit}.page{width:min(1080px,100%);margin:auto;padding:14px}
.topbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 13px;border-radius:21px;background:rgba(255,255,255,.9);border:2px solid rgba(255,255,255,.96);box-shadow:var(--shadow)}
.home{text-decoration:none;padding:10px 14px;border-radius:15px;background:#fff1aa;color:#695000;font-weight:950;box-shadow:0 5px 0 #d9b33a}.stats{display:flex;gap:9px;flex-wrap:wrap}.pill{padding:8px 12px;border-radius:999px;background:#eafff2;color:#176d50;font-weight:950}
.hero,.game{margin-top:14px;padding:clamp(17px,3vw,28px);border-radius:28px;background:var(--paper);border:3px solid rgba(255,255,255,.96);box-shadow:var(--shadow)}.hero{text-align:center}.hero h1,.title{margin:0;color:var(--green);font-size:clamp(28px,5vw,48px);text-align:center}.hero p,.subtitle{margin:8px auto 0;max-width:780px;font-size:18px;line-height:1.55;font-weight:700;color:#526a65;text-align:center}
.chapter-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-top:20px}.chapter{border:0;border-radius:23px;padding:20px 14px;background:#fff;box-shadow:0 8px 0 #d8eaee,0 14px 25px rgba(41,65,62,.09);text-decoration:none;color:var(--ink);text-align:center;min-height:230px;transition:transform .16s ease}.chapter:hover{transform:translateY(-4px)}.chapter.locked{opacity:.58;filter:grayscale(.35);pointer-events:none}.chapter-icon{font-size:72px}.chapter h2{margin:9px 0 5px;color:#216b55;font-size:21px}.chapter p{margin:0;font-size:14px;font-weight:700;color:#657874;line-height:1.45}.stars{margin-top:12px;font-size:18px}
.progress{height:14px;background:#e5f0f1;border:2px solid #d1e5e7;border-radius:999px;overflow:hidden;margin:13px auto 0;max-width:570px}.progress>div{height:100%;width:0;background:linear-gradient(90deg,#62d68c,#ffca3a);transition:.25s width}
.question-card{margin:20px auto 15px;max-width:860px;padding:20px;border-radius:24px;background:#f9fcfd;border:2px solid #e0eef0;text-align:center}
.scene-wrap{display:grid;grid-template-columns:180px 1fr;gap:18px;align-items:center}.scene-panel{min-height:180px;border-radius:24px;background:linear-gradient(145deg,#fff7db,#e7f8ff);border:3px dashed #d9ecf2;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;box-shadow:inset 0 0 0 6px rgba(255,255,255,.55)}.scene-panel:before,.scene-panel:after{content:"";position:absolute;border-radius:50%;background:rgba(255,255,255,.55)}.scene-panel:before{width:76px;height:76px;left:-14px;top:-10px}.scene-panel:after{width:92px;height:92px;right:-18px;bottom:-24px}.scene{font-size:clamp(72px,11vw,116px);line-height:1.1;position:relative;z-index:1}.question{font-size:clamp(22px,3.2vw,31px);font-weight:950;line-height:1.35;color:#315b54;text-align:left}.mini-caption{margin-top:8px;font-size:14px;font-weight:800;color:#6a7a76;text-align:left}
.choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;max-width:820px;margin:18px auto}.choice{border:3px solid #d9edf1;background:#fff;border-radius:21px;padding:14px;cursor:pointer;box-shadow:0 6px 0 #d7e8eb;display:flex;gap:14px;align-items:center;text-align:left;transition:transform .14s ease,border-color .14s ease,background .14s ease}.choice:hover{transform:translateY(-3px)}.choice-media{width:82px;min-width:82px;height:82px;border-radius:22px;background:linear-gradient(145deg,#fff8d8,#e8f8ff);display:flex;align-items:center;justify-content:center;font-size:40px;box-shadow:inset 0 0 0 5px rgba(255,255,255,.7)}.choice-text{display:flex;flex-direction:column;gap:5px}.choice-title{font-weight:950;font-size:19px;color:#224d46}.choice-sub{font-weight:750;font-size:13px;color:#67807b}.choice.correct{background:#e8fff1;border-color:#5bd890}.choice.wrong{background:#fff0f0;border-color:#ff7777;animation:shake .34s ease}.choice:disabled{cursor:default}
.message{min-height:44px;text-align:center;font-weight:950;color:var(--green);font-size:clamp(18px,2.6vw,25px)}.explanation{display:none;max-width:820px;margin:12px auto;padding:15px 17px;border-radius:18px;background:#eef9ff;border-left:6px solid #66bee1;line-height:1.6;font-weight:750;color:#405c57}.explanation.show{display:block}.tip{max-width:820px;margin:12px auto;padding:14px 16px;border-radius:18px;background:#fff5ce;border-left:6px solid #efbd38;line-height:1.55;font-weight:750;color:#625323}
.actions{display:flex;justify-content:center;gap:11px;flex-wrap:wrap;margin-top:12px}.btn{border:0;border-radius:17px;padding:12px 18px;background:var(--yellow);color:#604300;box-shadow:0 6px 0 #d49b00;font-weight:950;cursor:pointer;text-decoration:none}.btn.secondary{background:var(--blue);box-shadow:0 6px 0 #4faec9;color:#164957}.btn.green{background:#78df9b;box-shadow:0 6px 0 #3ca964;color:#155b38}
.sequence{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-width:820px;margin:20px auto}.step{border:3px solid #d9edf1;background:#fff;border-radius:20px;padding:15px;font-weight:900;cursor:pointer;box-shadow:0 6px 0 #d7e8eb;text-align:left;display:flex;align-items:center;gap:12px;min-height:96px;transition:transform .14s ease}.step:hover{transform:translateY(-3px)}.step .ico{font-size:44px;width:72px;height:72px;border-radius:18px;background:linear-gradient(145deg,#fff8d8,#e8f8ff);display:flex;align-items:center;justify-content:center;box-shadow:inset 0 0 0 5px rgba(255,255,255,.7)}.step .step-title{font-size:18px;color:#224d46}.step .step-sub{font-size:13px;color:#67807b;font-weight:750}.step.selected{background:#eafff2;border-color:#61d798}.step.wrong{background:#fff0f0;border-color:#ff7777;animation:shake .34s ease}.order{max-width:820px;margin:10px auto;padding:12px;border-radius:16px;background:#f2f8f9;font-weight:850;color:#526a65;text-align:center;min-height:48px}
.overlay{position:fixed;inset:0;z-index:30;display:none;place-items:center;padding:18px;background:rgba(31,55,54,.48);backdrop-filter:blur(7px)}.overlay.show{display:grid}.modal{width:min(530px,100%);padding:27px;border-radius:29px;background:#fff;border:5px solid #fff1aa;text-align:center;box-shadow:0 30px 80px rgba(0,0,0,.26);animation:pop .35s ease}.modal .icon{font-size:86px}.modal h2{margin:8px 0;color:var(--green);font-size:32px}.big-stars{font-size:40px;letter-spacing:4px}.footer{margin:18px 0 5px;padding:15px;text-align:center;border-radius:19px;background:rgba(255,255,255,.78);font-size:14px;font-weight:750;color:#586e69}.footer a{margin:0 7px;color:#176d55}
@keyframes shake{0%,100%{transform:translateX(0)}25%{transform:translateX(-8px)}50%{transform:translateX(8px)}75%{transform:translateX(-5px)}}@keyframes pop{0%{transform:scale(.76)}70%{transform:scale(1.07)}100%{transform:scale(1)}}
@media(max-width:780px){.chapter-grid,.choices,.sequence{grid-template-columns:1fr}.scene-wrap{grid-template-columns:1fr}.question,.mini-caption{text-align:center}}
@media(max-width:560px){.page{padding:9px}.topbar{align-items:flex-start;flex-direction:column}.choice-media{width:68px;min-width:68px;height:68px;font-size:34px}.step .ico{width:60px;height:60px;font-size:36px}}
