@font-face{font-family:Fredoka;font-style:normal;font-weight:300 700;font-stretch:100%;font-display:swap;src:url(../media/b6df7c92285ebcd2-s.0ajnkyhx5vkqi.woff2)format("woff2");unicode-range:U+307-308,U+590-5FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:Fredoka;font-style:normal;font-weight:300 700;font-stretch:100%;font-display:swap;src:url(../media/eeba9b1ad34c1404-s.0am7roo413ye~.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fredoka;font-style:normal;font-weight:300 700;font-stretch:100%;font-display:swap;src:url(../media/5d52bd6c4cb3f315-s.p.04niyqph9_pxk.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fredoka Fallback;src:local(Arial);ascent-override:95.64%;descent-override:23.17%;line-gap-override:0.0%;size-adjust:101.84%}.fredoka_2f39f95a-module__db4JcW__className{font-family:Fredoka,Fredoka Fallback;font-style:normal}.fredoka_2f39f95a-module__db4JcW__variable{--font-display:"Fredoka", "Fredoka Fallback"}
@font-face{font-family:Nunito;font-style:normal;font-weight:200 1000;font-display:swap;src:url(../media/224e262ef877bfa4-s.0mo8vqgr8yagc.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito;font-style:normal;font-weight:200 1000;font-display:swap;src:url(../media/7f11d98043fdedc9-s.0r4w1y.tjq0ay.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito;font-style:normal;font-weight:200 1000;font-display:swap;src:url(../media/e6d00ff86ef9e699-s.0lcb62h0-.jh3.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito;font-style:normal;font-weight:200 1000;font-display:swap;src:url(../media/d8cb5ab3660140cd-s.0ri_id_kcagyz.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito;font-style:normal;font-weight:200 1000;font-display:swap;src:url(../media/07454f8ad8aaac57-s.p.0tqkxa-w3pk~c.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito Fallback;src:local(Arial);ascent-override:99.71%;descent-override:34.82%;line-gap-override:0.0%;size-adjust:101.39%}.nunito_75a1b360-module__XR_rJG__className{font-family:Nunito,Nunito Fallback;font-style:normal}.nunito_75a1b360-module__XR_rJG__variable{--font-body:"Nunito", "Nunito Fallback"}
:root{--paper:#fff9e8;--ink:#18323d;--tomato:#f54d3d;--tomato-dark:#c9362b;--sun:#ffc93c;--aqua:#19b7b0;--aqua-dark:#087d7a;--leaf:#64a83b;--cream:#fffdf5}*{box-sizing:border-box}html{background:var(--paper);min-width:320px}body{min-height:100vh;color:var(--ink);font-family:var(--font-body), "Trebuchet MS", sans-serif;background:radial-gradient(circle at 12% 8%, #ffc93c59, transparent 18rem), radial-gradient(circle at 90% 30%, #19b7b033, transparent 22rem), linear-gradient(#18323d09 1px, transparent 1px), linear-gradient(90deg, #18323d09 1px, transparent 1px), var(--paper);background-size:auto,auto,24px 24px,24px 24px,auto;margin:0}button,input{font:inherit}button{color:inherit}button:focus-visible,input:focus-visible{outline-offset:3px;outline:4px solid #19b7b047}.app-shell{width:min(1180px,100% - 32px);margin:0 auto;padding:22px 0 48px}.topbar{justify-content:space-between;align-items:center;gap:18px;margin-bottom:28px;display:flex}.brand{align-items:center;gap:12px;display:flex}.brand-button{text-align:left;cursor:pointer;background:0 0;border:0;padding:0}.brand-mark{border:3px solid var(--ink);background:var(--sun);width:52px;height:52px;box-shadow:4px 4px 0 var(--ink);font-family:var(--font-display), sans-serif;border-radius:16px 18px 14px 20px;place-items:center;font-size:24px;font-weight:700;display:grid;transform:rotate(-5deg)}.brand-name{font-family:var(--font-display), sans-serif;letter-spacing:-.04em;margin:0;font-size:clamp(22px,3vw,34px);font-weight:700;line-height:.95}.brand-name span{color:var(--tomato);display:block}.view-switcher{border:2px solid var(--ink);box-shadow:3px 3px 0 var(--ink);background:#fffdf5c7;border-radius:999px;gap:6px;padding:5px;display:flex}.view-button{cursor:pointer;background:0 0;border:0;border-radius:999px;padding:9px 14px;font-weight:900}.view-button[aria-pressed=true]{background:var(--ink);color:#fff}.welcome-grid{grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);align-items:stretch;gap:24px;display:grid}.welcome-card,.monster-poster,.signup-card,.signup-steps{border:3px solid var(--ink);box-shadow:7px 7px 0 var(--ink)}.welcome-card{background:#fffdf5f0;border-radius:34px 26px 40px 28px;min-height:580px;padding:clamp(30px,6vw,70px);position:relative;overflow:hidden}.welcome-card:after{content:"";border:34px solid #19b7b029;border-radius:42% 58% 52% 48%;width:220px;height:220px;position:absolute;bottom:-70px;right:-55px;transform:rotate(18deg)}.welcome-card h1{max-width:760px;font-family:var(--font-display), sans-serif;letter-spacing:-.06em;margin:12px 0 22px;font-size:clamp(45px,7vw,82px);line-height:.94}.welcome-copy{color:#18323dbd;max-width:670px;margin:0;font-size:clamp(17px,2.2vw,21px);font-weight:750;line-height:1.55}.welcome-actions{z-index:1;flex-wrap:wrap;gap:12px;margin-top:32px;display:flex;position:relative}.primary-action,.secondary-action,.exit-button{border:3px solid var(--ink);cursor:pointer;box-shadow:4px 4px 0 var(--ink);border-radius:16px;padding:13px 20px;font-weight:1000}.primary-action{background:var(--tomato);color:#fff}.secondary-action{background:var(--sun)}.primary-action:active,.secondary-action:active,.exit-button:active{box-shadow:1px 1px 0 var(--ink);transform:translate(3px,3px)}.privacy-strip{z-index:1;border-left:7px solid var(--aqua);gap:3px;max-width:620px;margin-top:42px;padding:8px 0 8px 16px;display:grid;position:relative}.privacy-strip strong{font-family:var(--font-display), sans-serif;font-size:18px}.privacy-strip span{color:#18323db3;font-size:13px;font-weight:850;line-height:1.45}.monster-poster{background:radial-gradient(circle at 20% 18%, #ffffff5c, transparent 130px), var(--aqua);text-align:center;border-radius:28px 38px 24px 34px;grid-template-rows:1fr auto auto;place-items:center;gap:6px;min-height:580px;padding:35px;display:grid;position:relative;overflow:hidden;transform:rotate(1deg)}.poster-sticker{border-block:2px solid var(--ink);background:var(--sun);letter-spacing:.1em;text-transform:uppercase;width:180px;padding:9px;font-size:12px;font-weight:1000;position:absolute;top:28px;right:-35px;transform:rotate(12deg)}.monster-face{border:4px solid var(--ink);background:var(--tomato);width:230px;height:250px;box-shadow:9px 9px 0 var(--ink);border-radius:46% 54% 40% 60%/40% 45% 55% 60%;grid-template-columns:1fr 1fr;align-content:start;place-items:center;display:grid;position:relative;transform:rotate(-4deg)}.monster-face strong{color:#fff;font-family:var(--font-display), sans-serif;font-size:150px;line-height:1;position:absolute;inset:42px 0 0}.monster-eye{z-index:1;background:var(--ink);border:7px solid #fff;border-radius:50%;width:23px;height:23px;margin-top:34px}.poster-problem{font-family:var(--font-display), sans-serif;margin:0;font-size:44px;font-weight:700}.poster-caption{text-transform:uppercase;margin:0 0 24px;font-size:14px;font-weight:1000}.hero-grid{grid-template-columns:minmax(0,1.45fr) minmax(280px,.55fr);gap:22px;display:grid}.game-card,.side-card,.parent-card{border:3px solid var(--ink);box-shadow:7px 7px 0 var(--ink);background:#fffdf5eb}.game-card{border-radius:34px 28px 38px 26px;min-height:610px;position:relative;overflow:hidden}.game-card:before{content:"";background:repeating-linear-gradient(90deg, var(--tomato) 0 48px, var(--sun) 48px 96px, var(--aqua) 96px 144px);height:12px;position:absolute;inset:0 0 auto}.game-toolbar{justify-content:space-between;align-items:center;gap:14px;padding:30px 30px 18px;display:flex}.toolbar-actions{align-items:center;gap:10px;display:flex}.exit-button{background:var(--cream);box-shadow:3px 3px 0 var(--ink);padding:8px 12px}.eyebrow{color:var(--aqua-dark);letter-spacing:.14em;text-transform:uppercase;margin:0 0 4px;font-size:12px;font-weight:1000}.session-title{font-family:var(--font-display), sans-serif;letter-spacing:-.03em;margin:0;font-size:clamp(25px,4vw,38px)}.streak-pill{border:2px solid var(--ink);background:var(--sun);box-shadow:3px 3px 0 var(--ink);border-radius:999px;flex:none;align-items:center;gap:7px;padding:9px 13px;font-weight:1000;display:flex}.operation-row{scrollbar-width:none;gap:8px;padding:0 30px;display:flex;overflow-x:auto}.operation-button{border:2px solid var(--ink);background:var(--cream);min-width:48px;font-family:var(--font-display), sans-serif;cursor:pointer;box-shadow:2px 2px 0 var(--ink);border-radius:13px;padding:8px 13px;font-weight:700}.operation-button[aria-pressed=true]{background:var(--aqua);color:#fff;box-shadow:none;transform:translate(2px,2px)}.problem-stage{text-align:center;place-items:center;min-height:350px;padding:34px 24px 20px;display:grid}.problem-label{color:#18323d9e;margin:0 0 10px;font-weight:900}.problem{font-family:var(--font-display), sans-serif;font-variant-numeric:tabular-nums;letter-spacing:-.055em;margin:0 0 24px;font-size:clamp(68px,12vw,120px);font-weight:700;line-height:.95}.answer-form{justify-content:center;align-items:stretch;gap:10px;width:min(100%,460px);display:flex}.answer-input{border:3px solid var(--ink);width:100%;min-width:0;color:var(--ink);font-family:var(--font-display), sans-serif;text-align:center;background:#fff;border-radius:18px;padding:14px 18px;font-size:34px;font-weight:700;box-shadow:inset 0 -4px #18323d14}.answer-input::placeholder{color:#18323d38}.submit-button{border:3px solid var(--ink);background:var(--tomato);color:#fff;cursor:pointer;box-shadow:4px 4px 0 var(--ink);border-radius:18px;padding:0 23px;font-weight:1000}.submit-button:active{box-shadow:1px 1px 0 var(--ink);transform:translate(3px,3px)}.submit-button:disabled,.answer-input:disabled{cursor:default;opacity:.62}.feedback{min-height:32px;margin:16px 0 0;font-weight:1000}.feedback[data-tone=correct]{color:var(--leaf)}.feedback[data-tone=incorrect]{color:var(--tomato-dark)}.feedback-dot{background:currentColor;border-radius:50%;width:10px;height:10px;margin-right:8px;animation:.32s ease-out tiny-pop;display:inline-block}.session-footer{background:#ffc93c21;border-top:2px dashed #18323d40;grid-template-columns:repeat(3,1fr);display:grid}.metric{text-align:center;padding:16px 20px}.metric+.metric{border-left:2px dashed #18323d33}.metric strong,.metric span{display:block}.metric strong{font-family:var(--font-display), sans-serif;font-size:24px}.metric span{color:#18323d9e;text-transform:uppercase;font-size:12px;font-weight:900}.side-stack{align-content:start;gap:18px;display:grid}.side-card{border-radius:24px 30px 22px 28px;padding:22px}.side-card:nth-child(2){transform:rotate(1deg)}.side-title{font-family:var(--font-display), sans-serif;margin:0 0 16px;font-size:22px}.side-card p:not(.eyebrow){color:#18323db8;margin:0;font-weight:750;line-height:1.5}.session-note{background:#ffc93c4d}.locked-card{background:#fffdf5eb}.compact-action{margin-top:20px;padding:10px 14px;font-size:13px}.mastery-row{grid-template-columns:42px 1fr auto;align-items:center;gap:10px;margin-top:12px;display:grid}.fact-chip{border:2px solid var(--ink);background:var(--sun);border-radius:12px;place-items:center;width:42px;height:42px;font-weight:1000;display:grid}.progress-track{border:2px solid var(--ink);background:#fff;border-radius:999px;height:10px;overflow:hidden}.progress-fill{border-radius:inherit;background:var(--aqua);height:100%}.mastery-label{text-transform:uppercase;font-size:11px;font-weight:1000}.mode-ticket{border:2px solid var(--ink);background:var(--tomato);color:#fff;box-shadow:3px 3px 0 var(--ink);border-radius:18px;padding:18px;position:relative;overflow:hidden}.mode-ticket:after{content:"";border:14px solid #ffffff30;border-radius:50%;width:90px;height:90px;position:absolute;top:-24px;right:-18px}.mode-ticket strong,.mode-ticket span{z-index:1;display:block;position:relative}.mode-ticket strong{font-family:var(--font-display), sans-serif;font-size:22px}.mode-ticket span{margin-top:4px;font-size:13px;font-weight:800}.parent-view{grid-template-columns:1.15fr .85fr;gap:22px;display:grid}.parent-card{border-radius:28px;padding:28px}.parent-card h1,.parent-card h2{font-family:var(--font-display), sans-serif;margin-top:0}.parent-card h1{letter-spacing:-.05em;max-width:650px;font-size:clamp(34px,6vw,62px);line-height:.96}.parent-card h1 span{color:var(--tomato)}.parent-copy{color:#18323db8;max-width:650px;font-size:17px;font-weight:700;line-height:1.55}.setting-list{gap:10px;margin-top:22px;display:grid}.setting-row{border-bottom:2px dashed #18323d29;justify-content:space-between;align-items:center;gap:20px;padding:11px 0;font-weight:900;display:flex}.setting-value{border:2px solid var(--ink);background:var(--sun);border-radius:999px;padding:5px 10px;font-size:12px}.preview-note{border-left:5px solid var(--aqua);color:#18323dad;margin:18px 0 0;padding-left:14px;font-size:13px;font-weight:800}.signup-grid{grid-template-columns:minmax(0,1.25fr) minmax(300px,.55fr);align-items:start;gap:24px;display:grid}.signup-card{background:#fffdf5f5;border-radius:34px 26px 38px 30px;padding:clamp(25px,5vw,50px)}.signup-card h1{font-family:var(--font-display), sans-serif;letter-spacing:-.05em;margin:8px 0 12px;font-size:clamp(36px,6vw,62px);line-height:.98}.signup-intro{color:#18323db3;max-width:650px;margin:0;font-weight:750;line-height:1.5}.signup-form{gap:18px;margin-top:30px;display:grid}.signup-form label{gap:7px;font-weight:950;display:grid}.signup-form label>span{justify-content:space-between;gap:15px;display:flex}.signup-form em{color:#18323d8c;letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-style:normal}.signup-form input:not([type=checkbox]){border:2px solid var(--ink);background:#fff;border-radius:13px;width:100%;padding:12px 14px;font-weight:750;box-shadow:inset 0 -3px #18323d0f}.signup-form input[aria-invalid=true]{border-color:var(--tomato-dark);background:#fff4f0}.signup-form small,.form-error{color:var(--tomato-dark);font-size:12px;font-weight:850}.name-row{grid-template-columns:1fr 1fr;gap:14px;display:grid}.consent-notice{border:2px solid var(--ink);background:#19b7b01c;border-radius:18px;padding:18px}.consent-notice strong{font-family:var(--font-display), sans-serif;font-size:18px}.consent-notice p{color:#18323dc2;margin:9px 0 0;font-size:13px;font-weight:750;line-height:1.55}.consent-check{grid-template-columns:24px 1fr;align-items:start}.consent-check input{width:20px;height:20px;accent-color:var(--aqua-dark);margin-top:2px}.consent-check span{font-size:14px;line-height:1.5}.signup-form .primary-action{justify-self:start}.form-footnote{color:#18323d99;margin:-5px 0 0;font-size:12px;font-weight:750}.ready-message{border:2px solid var(--ink);background:var(--sun);box-shadow:3px 3px 0 var(--ink);border-radius:16px;gap:3px;margin-top:24px;padding:16px;display:grid}.ready-message span{font-size:13px;font-weight:800}.signup-steps{background:var(--ink);color:#fff;border-radius:24px 34px 28px 22px;padding:28px;transform:rotate(.5deg)}.signup-steps .eyebrow{color:var(--sun)}.signup-steps ol{gap:18px;margin:24px 0 0;padding:0;list-style:none;display:grid}.signup-steps li{grid-template-columns:40px 1fr;align-items:center;gap:12px;display:grid}.signup-steps li strong{background:var(--tomato);width:40px;height:40px;font-family:var(--font-display), sans-serif;border:2px solid #fff;border-radius:50%;place-items:center;display:grid}.signup-steps li span{font-size:14px;font-weight:800;line-height:1.45}.safe-note{color:var(--sun);border:2px dashed #ffffff73;border-radius:15px;margin-top:26px;padding:14px;font-size:13px;font-weight:900;line-height:1.45}.parent-action{margin-top:26px}@keyframes tiny-pop{0%{transform:scale(.2)}70%{transform:scale(1.35)}to{transform:scale(1)}}@media (max-width:820px){.hero-grid,.parent-view,.welcome-grid,.signup-grid{grid-template-columns:1fr}.side-stack{grid-template-columns:repeat(2,minmax(0,1fr))}.monster-poster{min-height:520px}}@media (max-width:560px){.app-shell{width:min(100% - 20px,1180px);padding-top:12px}.brand-mark{width:44px;height:44px;font-size:20px}.brand-name{font-size:20px}.view-button{padding:8px 10px;font-size:13px}.welcome-card{min-height:auto;padding:32px 23px}.welcome-card h1{font-size:45px}.welcome-actions{display:grid}.monster-poster{min-height:480px;padding:25px}.monster-face{width:190px;height:210px}.monster-face strong{font-size:125px}.game-card{min-height:570px;box-shadow:4px 4px 0 var(--ink);border-radius:25px}.game-toolbar{align-items:flex-start;padding:27px 18px 15px}.toolbar-actions{flex-direction:column-reverse;align-items:flex-end}.operation-row{padding:0 18px 4px}.problem-stage{min-height:340px;padding-inline:15px}.answer-form{gap:7px}.answer-input{font-size:29px}.submit-button{padding:0 15px}.metric{padding:14px 8px}.metric strong{font-size:20px}.side-stack{grid-template-columns:1fr}.parent-card{padding:21px}.signup-card{padding:25px 19px}.name-row{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
