:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:#173047;--blue:#1d6ee8;--green:#2abf7f;--orange:#ffb547;--paper:#ffffffe0;--line:#2e4e6929;background:#eef7ff;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:radial-gradient(circle at 0 0,#fff9dc,#0000 34%),linear-gradient(135deg,#e8f7ff 0%,#f6f0ff 100%);min-width:1080px;margin:0}button{font:inherit}.appShell{width:min(1240px,100vw - 40px);margin:0 auto;padding:24px 0 42px}.landingShell{flex-direction:column;justify-content:center;min-height:100vh;display:flex}.topBar{justify-content:space-between;align-items:center;gap:24px;margin-bottom:18px;display:flex}.heroHeader{text-align:center;max-width:760px;margin:0 auto 34px}.heroHeader h1{font-size:58px}.heroHeader p:not(.eyebrow){color:#55738b;margin:12px 0 0;font-size:20px;line-height:1.55}.compactHero h1{font-size:50px}.eyebrow{color:#40729a;letter-spacing:.08em;text-transform:uppercase;margin:0 0 4px;font-size:12px;font-weight:800}h1{letter-spacing:-.04em;color:#142f43;margin:0;font-size:42px}.topActions,.boardButtons,.gradeButtons,.levelMeta{flex-wrap:wrap;align-items:center;gap:10px;display:flex}button{color:#24465f;cursor:pointer;background:#fff;border:0;border-radius:14px;padding:10px 14px;font-weight:800;transition:transform .16s,box-shadow .16s,opacity .16s;box-shadow:0 8px 18px #21496d1a}button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 14px 26px #21496d24}button:disabled{opacity:.45;cursor:not-allowed}.primary{background:linear-gradient(135deg, var(--blue), #7357ff);color:#fff;align-items:center;gap:8px;display:inline-flex}.ghost{border:1px solid var(--line);background:#ffffffb8;align-items:center;gap:8px;display:inline-flex}.gameCards{grid-template-columns:repeat(2,minmax(280px,1fr));gap:18px;display:grid}.gameCard{text-align:left;background:#ffffffdb;border:1px solid #fffc;border-radius:32px;flex-direction:column;justify-content:space-between;align-items:flex-start;min-height:300px;padding:30px;display:flex;position:relative;overflow:hidden;box-shadow:0 24px 60px #375c8029}.gameCard:after{content:"";background:radial-gradient(circle,#1d6ee82e,#0000 68%);border-radius:50%;width:170px;height:170px;position:absolute;top:-40px;right:-40px}.gameCard h2{color:#173047;margin:18px 0 8px;font-size:32px}.gameCard p{color:#55738b;margin:0;font-weight:700;line-height:1.55}.gameCard strong{color:var(--blue);font-size:18px}.disabledCard{opacity:.62;cursor:default;box-shadow:inset 0 0 0 1px #ffffffb3}.cardBadge{color:#fff;background:#12314a;border-radius:999px;padding:8px 12px;font-size:12px;font-weight:900;position:absolute;top:18px;right:18px}.tagRow{flex-wrap:wrap;gap:8px;margin:18px 0;display:flex}.tagRow span{color:#1d5f98;background:#eef7ff;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:900}.difficultyGrid{grid-template-columns:repeat(3,minmax(220px,1fr));gap:16px;display:grid}.difficultyCard{text-align:left;background:#ffffffdb;border:1px solid #ffffffc7;border-radius:28px;flex-direction:column;justify-content:space-between;align-items:flex-start;min-height:170px;padding:24px;display:flex}.difficultyCard span{color:#142f43;font-size:30px;font-weight:950}.difficultyCard strong{color:#31546d;font-size:16px}.difficultyCard small{color:#1d6ee8;font-weight:900}.answerBoard,.controlsCard,.settingsPanel,.missionCard{background:var(--paper);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid #ffffffb3;border-radius:26px;box-shadow:0 20px 50px #375c8021}.answerBoard{margin-bottom:14px;padding:16px 18px}.answerHeader{justify-content:space-between;align-items:center;gap:16px;display:flex}.smallLabel{color:#5a7892;margin-bottom:2px;font-size:13px;font-weight:800;display:block}.answerSlots{grid-template-columns:repeat(5,minmax(110px,1fr));gap:12px;margin-top:14px;display:grid}.slot{color:#7a91a5;background:#ffffff8a;border:2px dashed #1d6ee847;border-radius:18px;place-items:center;min-height:62px;font-size:20px;font-weight:900;display:grid}.slot.filled{color:#0f6b49;background:#effff7;border-style:solid;border-color:#2abf7f8c;animation:.22s ease-out pop}@keyframes pop{0%{transform:scale(.94)}to{transform:scale(1)}}.controlsCard{justify-content:space-between;align-items:center;gap:18px;margin-bottom:14px;padding:14px 16px;display:flex}.levelMeta span{color:#345a74;background:#ffffffad;border-radius:999px;padding:8px 12px;font-size:13px;font-weight:900}.pill.easy{color:#098957}.pill.normal{color:#a46200}.pill.hard{color:#b62963}.gradeButtons button{background:#ffffff9e;padding:9px 12px}.gradeButtons button.active{color:#fff;background:#12314a}.settingsPanel{grid-template-columns:260px 1fr auto;align-items:stretch;gap:16px;margin-bottom:14px;padding:18px;display:grid}.settingsPanel h2,.missionCard h2{margin:0 0 8px}.settingsPanel p,.missionCard p{color:#55738b;margin:0;line-height:1.55}textarea{border:1px solid var(--line);resize:vertical;color:#173047;border-radius:18px;width:100%;min-height:150px;padding:14px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.gameLayout{grid-template-columns:280px 1fr;gap:16px;display:grid}.missionCard{align-self:stretch;padding:22px}.missionIcon{color:var(--blue);margin-bottom:10px}.status{color:#31546d;border:1px solid var(--line);background:#f4f9ff;border-radius:18px;margin:18px 0;padding:14px;font-weight:800}.status.happy{color:#08774c;background:#ebfff4}.status.oops{color:#a8204a;background:#fff0f4}.status.walking{color:#835303;background:#fff8e8}details{color:#526d82;margin-top:18px}summary{cursor:pointer;font-weight:900}.mapWrap{background:linear-gradient(160deg,#bdeecb,#dff7b7 52%,#ace0f9);border-radius:30px;height:540px;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffffb3,0 24px 60px #375c8029}.mapGrid{opacity:.18;background-image:linear-gradient(#3f8b71 1px,#0000 1px),linear-gradient(90deg,#3f8b71 1px,#0000 1px);background-size:48px 48px;position:absolute;inset:0}.path{background:#edcc8fd9;border-radius:50%;width:1050px;height:125px;position:absolute;top:330px;left:-70px;transform:rotate(-7deg);box-shadow:inset 0 0 30px #9667301f}.pond{background:radial-gradient(circle at 35% 30%,#e3ffff,#55b8ef);border-radius:48% 52% 42% 58%;width:190px;height:112px;position:absolute;top:42px;right:42px;box-shadow:inset 0 0 22px #fff9}.tree{background:#45b46b;border-radius:50%;width:86px;height:86px;position:absolute;box-shadow:inset -15px -18px #1463412e}.tree:after{content:"";z-index:-1;background:#8d5a2b;border-radius:8px;width:18px;height:46px;position:absolute;top:58px;left:34px}.treeA{top:80px;left:58px}.treeB{top:178px;left:760px;transform:scale(.8)}.fragment{color:#5e3d00;background:linear-gradient(#fffef5,#fff1bc);border:2px solid #ba801a2e;border-radius:20px;min-width:118px;min-height:62px;padding:8px 13px;position:absolute;transform:translate(-50%,-50%);box-shadow:0 16px 24px #674a192e}.fragment span{white-space:nowrap;font-size:20px;font-weight:950;display:block}.fragment small{color:#9a6a10;margin-top:2px;font-weight:800;display:block}.fragment.collected{opacity:.22;filter:grayscale(.7);transform:translate(-50%,-50%)scale(.86)}.hero{z-index:5;width:58px;height:58px;transition:left .72s cubic-bezier(.2,.8,.2,1),top .72s cubic-bezier(.2,.8,.2,1);position:absolute;transform:translate(-50%,-50%)}.heroFace{background:#fff;border:3px solid #3674e8;border-radius:22px 22px 18px 18px;place-items:center;width:58px;height:58px;font-size:34px;display:grid;box-shadow:0 15px 25px #163f763b}.hero.walking .heroFace{animation:.3s infinite alternate bob}.hero.happy .heroFace{border-color:var(--green);animation:.55s infinite alternate celebrate}.hero.oops .heroFace{border-color:#e84a75}@keyframes bob{to{transform:translateY(-7px)rotate(3deg)}}@keyframes celebrate{to{transform:translateY(-10px)rotate(-7deg)scale(1.04)}}@media (width<=900px){body{min-width:0}.appShell{width:calc(100vw - 24px)}.topBar,.controlsCard,.gameLayout,.settingsPanel,.gameCards,.difficultyGrid{flex-direction:column;grid-template-columns:1fr;align-items:stretch}.heroHeader h1{font-size:42px}.answerSlots{grid-template-columns:1fr 1fr}.mapWrap{overflow:auto}}
