@import url('https://fonts.googleapis.com/css2?family=Baloo+2:wght@500;600;700;800&family=Nunito:wght@600;700;800&display=swap');
.region-worksheet{max-width:1040px;margin:10px auto;background:#fff;border-radius:27px;padding:clamp(20px,4vw,38px);box-shadow:0 15px 40px #4c32701a}.worksheet-intro{text-align:center}.worksheet-intro h2{font:800 34px 'Baloo 2';margin:8px 0;color:#31265a}.worksheet-intro p{margin:0 auto 22px;color:#70698a;font-weight:700}.numbered-map{background:#f3f6ff;border-radius:23px;padding:12px;max-width:760px;margin:0 auto 28px}.numbered-map svg{width:100%;height:auto;display:block}.numbered-map .map-number{fill:#31265a;font:900 16px Nunito;paint-order:stroke;stroke:#fffdfb;stroke-width:4px;stroke-linejoin:round;pointer-events:none}.worksheet-form{max-width:900px;margin:auto}.worksheet-head,.worksheet-row{display:grid;grid-template-columns:44px 1.25fr 1.25fr .75fr;gap:10px;align-items:center}.worksheet-head{padding:0 4px 8px;color:#70698a;font-size:12px;font-weight:900;letter-spacing:.5px;text-transform:uppercase}.worksheet-row{padding:8px 4px;border-top:1px dashed #ded8ee}.worksheet-row b{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:color-mix(in srgb,var(--accent),white 70%);color:#31265a}.worksheet-row input{width:100%;min-width:0;border:2px solid #e6e0fb;background:#fbfaff;border-radius:12px;padding:12px;font:700 16px Nunito;color:#302653}.worksheet-row input:focus{outline:none;border-color:var(--accent);background:#fff}.worksheet-row input.worksheet-correct{border-color:#35b979;background:#d8f8e7}.worksheet-row input.worksheet-wrong{border-color:#ef7366;background:#ffe0dc}.worksheet-submit{max-width:360px;display:block;margin:25px auto 10px}.worksheet-feedback{text-align:center;font-weight:900;min-height:24px}.worksheet-feedback.good{color:#138953}.worksheet-feedback.try{color:#bf4e43}
@media(max-width:650px){.region-worksheet{padding:18px 12px}.worksheet-head{display:none}.worksheet-row{grid-template-columns:34px 1fr 1fr}.worksheet-row input:last-child{grid-column:2/4}.worksheet-row input{font-size:15px;padding:10px}.worksheet-intro h2{font-size:29px}}
:root{font-family:Nunito,system-ui,sans-serif;color:#29214b;background:#f4f2ff}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at 8% 0,#ffe6ad 0 9%,transparent 27%),linear-gradient(135deg,#f8f5ff,#eaf7ff)}button{font:inherit;border:0;cursor:pointer}header{height:78px;padding:14px clamp(20px,4vw,60px);display:flex;align-items:center;justify-content:space-between;background:#fffdfb;border-bottom:1px solid #e9e5f5;position:sticky;top:0;z-index:10}.logo{background:none;color:#31265a;font:800 25px 'Baloo 2';display:flex;gap:10px;align-items:center}.score{background:#fff1c6;padding:10px 16px;border-radius:16px;color:#7c5910;font-weight:800}.score b{margin-left:12px}.review{background:#ece8fb;color:#4f3a9b;padding:11px 15px;border-radius:14px;font-weight:800}.home{max-width:1360px;margin:auto;padding:clamp(26px,5vw,64px);display:grid;grid-template-columns:.78fr 1.22fr;gap:42px;align-items:center}.eyebrow,.mini{font-size:12px;font-weight:900;letter-spacing:1.7px;color:#7450d1;margin:0}.intro h1,.region h1,.review-panel h1{font:800 clamp(42px,5vw,68px)/.98 'Baloo 2';margin:12px 0;color:#31265a}.intro h1 em{color:#ff7d58;font-style:normal}.lead{font-size:18px;line-height:1.6;max-width:430px}.mission{margin-top:28px;display:flex;align-items:center;gap:13px;background:#fff;padding:14px 17px;border-radius:18px;box-shadow:0 10px 24px #4a327314}.mission span{font-size:28px}.mascot{font-size:100px;position:absolute;margin:0 0 0 390px;transform:rotate(8deg)}.mascot small{display:block;font:800 14px Nunito;text-align:center;margin-top:-20px}.map-card{background:#fff;border:10px solid #fff;border-radius:30px;padding:18px;box-shadow:0 24px 60px #3b23722b;min-width:0}.map-card svg,#region-map svg{width:100%;height:auto;max-height:535px}.state{stroke:#fff;stroke-width:1.8px;transition:.18s;cursor:pointer}.state:hover,.state:focus{filter:brightness(1.1);stroke:#29214b;stroke-width:3px;outline:none}.map-tip{text-align:center;font-weight:800;color:#6d638f}.region{max-width:1240px;margin:auto;padding:28px 34px}.back{background:none;color:#5c479e;font-weight:900;font-size:15px;padding:8px 0}.region-head{display:flex;align-items:center;gap:18px}.badge{font-size:48px;background:color-mix(in srgb,var(--accent),white 75%);width:86px;height:86px;border-radius:25px;display:grid;place-items:center}.region-head h1{font-size:48px;margin:0}.region-head p{margin:4px 0;color:#70698a}.ring{margin-left:auto;border:8px solid color-mix(in srgb,var(--accent),white 70%);border-top-color:var(--accent);width:74px;height:74px;border-radius:50%;display:grid;place-items:center;font-weight:900;color:#483a77}.modes{display:flex;gap:10px;overflow:auto;padding:26px 0}.modes button{white-space:nowrap;padding:12px 18px;border-radius:15px;background:#fff;color:#625c7b;font-weight:900;box-shadow:0 3px 0 #e7e3f3}.modes .active{background:var(--accent);color:white;box-shadow:0 4px 0 color-mix(in srgb,var(--accent),black 18%)}.explore{display:grid;grid-template-columns:250px 1fr 215px;gap:20px}.fact-card,.quiz,.review-panel{background:#fff;border-radius:27px;padding:26px;box-shadow:0 15px 40px #4c32701a}.fact-card h2{font:800 30px 'Baloo 2';margin:9px 0 18px}.fact{padding:13px 0;border-top:1px dashed #ded8ee;display:flex;flex-direction:column;color:#71698a}.fact strong{font-size:19px;color:#302653}.primary{margin-top:18px;background:#ffcc4c;color:#62470d;padding:13px;border-radius:14px;font-weight:900;width:100%}.explore-map{position:relative;background:#f3f6ff;border-radius:25px;padding:12px;min-width:0}.pin{position:absolute;left:53%;top:42%;font-size:28px;filter:drop-shadow(0 4px 3px #0003)}.pin span{display:block;background:#332858;color:#fff;font:800 12px Nunito;border-radius:12px;padding:5px 8px;white-space:nowrap;margin-left:12px}.state-list{display:flex;flex-direction:column;gap:7px;max-height:450px;overflow:auto}.state-list button{background:#fff;border:1px solid #e5e0f1;border-radius:12px;text-align:left;padding:10px 12px;font-weight:800;color:#453b69}.state-list small{display:block;color:#8a82a0}.state-list .known{border-color:#77d4ac;background:#edfff6}.quiz{max-width:750px;margin:10px auto}.quiz-top{display:flex;justify-content:space-between;font-weight:900;color:#766d93}.question{text-align:center;padding:34px 12px}.question h2{font:800 32px 'Baloo 2';margin:12px 0 28px}.answers{display:grid;grid-template-columns:1fr 1fr;gap:13px}.answers button{padding:18px;background:#f4f2ff;border:2px solid #e6e0fb;border-radius:17px;color:#3e3563;font-weight:900;font-size:17px}.answers button:hover{border-color:var(--accent);transform:translateY(-2px)}.answers .correct{background:#d8f8e7;border-color:#35b979}.answers .wrong{background:#ffe0dc;border-color:#ef7366}.hint{text-align:center;color:#72698c;font-weight:700}.review-panel{max-width:850px;margin:65px auto}.big-stars{font:800 38px 'Baloo 2';color:#6b4fc2;background:#fff3c8;display:inline-block;padding:12px 25px;border-radius:18px}.review-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:28px 0}.review-grid div{padding:18px;border-radius:16px;background:#f4f2ff;display:flex;justify-content:space-between}.review-grid span{color:#70688b;font-weight:800}#confetti{position:fixed;inset:0;pointer-events:none;z-index:20;overflow:hidden}#confetti i{position:absolute;top:-15px;width:10px;height:18px;border-radius:2px;animation:fall 1s ease-in forwards}@keyframes fall{to{transform:translateY(110vh) rotate(500deg);opacity:0}}@media(max-width:850px){header{height:68px}.logo{font-size:19px}.score{padding:8px 10px}.score b{display:none}.review{padding:9px}.home{grid-template-columns:1fr;padding:25px}.mascot{right:32px;margin:0;font-size:75px}.intro h1{font-size:46px}.map-card{order:2}.region{padding:18px}.explore{grid-template-columns:1fr}.state-list{display:grid;grid-template-columns:1fr 1fr;max-height:250px}.answers{grid-template-columns:1fr}.region-head h1{font-size:37px}}@media(max-width:500px){.logo span{display:none}.review{font-size:13px}.home{padding:18px}.map-card{padding:8px;border-width:5px}.region-head .badge{width:64px;height:64px;font-size:34px}.region-head h1{font-size:31px}.review-grid{grid-template-columns:1fr}.state-list{grid-template-columns:1fr}}
