@font-face{font-family:Lexend Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/lexend-vietnamese-wght-normal-RvljkFvg.woff2)format("woff2-variations");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:Lexend Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/lexend-latin-ext-wght-normal-B6JQhE1e.woff2)format("woff2-variations");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:Lexend Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/lexend-latin-wght-normal-ci0D1wrL.woff2)format("woff2-variations");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:Atkinson Hyperlegible;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/atkinson-hyperlegible-latin-ext-400-normal-DRk46D-x.woff2)format("woff2"),url(/assets/atkinson-hyperlegible-latin-ext-400-normal-Bbz-b3yf.woff)format("woff");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:Atkinson Hyperlegible;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/atkinson-hyperlegible-latin-400-normal-BrHNak5F.woff2)format("woff2"),url(/assets/atkinson-hyperlegible-latin-400-normal-BbWidj28.woff)format("woff");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:Atkinson Hyperlegible;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/atkinson-hyperlegible-latin-ext-700-normal-BoVPHkS0.woff2)format("woff2"),url(/assets/atkinson-hyperlegible-latin-ext-700-normal-CKkU2Dpt.woff)format("woff");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:Atkinson Hyperlegible;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/atkinson-hyperlegible-latin-700-normal-GZI4o3u0.woff2)format("woff2"),url(/assets/atkinson-hyperlegible-latin-700-normal-BK6Glc0m.woff)format("woff");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}:root{color:#24202f;font-synthesis:none;--purple:#7044ef;--purple-dark:#5c32ce;--lavender:#eee8fc;--ink:#24202f;--cream:#faf8f2;--green:#c8ef42;--muted:#68626d;--line:#e3dfd6;--heading:"Lexend Variable", sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#faf8f2;font-family:Atkinson Hyperlegible,sans-serif;font-size:16px;line-height:1.5}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default;opacity:.5}a{color:var(--purple-dark)}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline-offset:4px;outline:3px solid #4e29b4}h1:focus{outline:none}h1,h2,h3,h4{font-family:var(--heading);letter-spacing:-.035em;text-wrap:balance;margin:0;line-height:1.18}p{text-wrap:pretty;margin:0}svg{flex-shrink:0}::selection{color:var(--ink);background:#d8cdfb}.header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:24px;max-width:1280px;margin:auto;padding:29px 48px;display:flex}.brand-button{color:#202721;background:0 0;border:0;padding:0;display:flex}.logo{font-family:var(--heading);letter-spacing:-.065em;align-items:center;gap:0;font-size:35px;font-weight:750;line-height:1;display:flex}.purple{color:#875ef6}.header-right{align-items:center;gap:22px;display:flex}.header-right>.text-button{white-space:nowrap}.header-note{color:var(--muted);font-size:14px}.beta{border:1px solid var(--line);font-family:var(--heading);letter-spacing:.12em;background:#f3f1e9;border-radius:6px;padding:6px 10px;font-size:10px;font-weight:600}main{max-width:1280px;margin:auto;padding:0 48px}.eyebrow{font-family:var(--heading);letter-spacing:.13em;text-transform:uppercase;color:var(--purple-dark);font-size:11px;font-weight:600;display:block}.hero{grid-template-columns:1.07fr 1fr;align-items:center;gap:68px;padding:66px 0 80px;display:grid}.hero-eyebrow{align-items:center;gap:8px;margin-bottom:23px;font-size:10px;display:flex}.hero-eyebrow>span{background:var(--purple);border-radius:50%;width:7px;height:7px}.hero h1{letter-spacing:-.055em;margin-bottom:28px;font-size:clamp(48px,5.2vw,70px);font-weight:650;line-height:1.13}.hero>*{min-width:0}.underlined{white-space:nowrap;position:relative}.underlined:after{content:"";background:var(--green);z-index:-1;height:11px;position:absolute;bottom:3px;left:-2px;right:-2px;transform:rotate(-2deg)}.hero-description{color:#625c67;font-size:19px;line-height:1.55}.hero-tags{align-items:center;gap:9px;margin-top:27px;display:flex}.hero-tags>span{border:1.5px solid var(--ink);font-family:var(--heading);background:#ddf598;border-radius:30px;align-items:center;gap:7px;padding:6px 14px;font-size:11px;font-weight:600;display:flex}.hero-tags .yellow{background:#f9e29a}.hero-tags .pink{background:#f2c8ed}.hero-aside{color:var(--muted);align-items:center;gap:12px;margin-top:27px;font-size:13px;line-height:1.4;display:flex}.scribble{color:var(--purple);font-size:34px;line-height:1}.machine{border:2px solid var(--ink);box-shadow:7px 7px 0 var(--ink);background:#fffcf7;border-radius:17px;margin-inline-end:13px;position:relative;transform:rotate(1.5deg)}.machine-top{border-bottom:1.5px solid var(--ink);background:var(--lavender);font-family:var(--heading);letter-spacing:.08em;border-radius:15px 15px 0 0;justify-content:space-between;align-items:center;gap:10px;padding:14px 17px;font-size:9px;font-weight:550;display:flex}.machine-dots{gap:5px;display:flex}.machine-dots i{border:1px solid var(--ink);border-radius:50%;width:7px;height:7px}.machine-dots i:first-child{background:#f2634b}.machine-dots i:nth-child(2){background:#f6d86b}.machine-dots i:nth-child(3){background:#c8ef42}.live-light{background:var(--purple);border-radius:50%;width:7px;height:7px}.machine-body{padding:27px 25px 21px}.machine-body>.eyebrow{color:var(--muted);margin-bottom:20px;font-size:9px}.machine-tokens{font-family:var(--heading);flex-wrap:wrap;gap:7px;font-size:20px;font-weight:600;display:flex}.machine-tokens>span{background:#eee8fb;border:1.5px solid #bda9f2;border-radius:8px;padding:8px 10px}.machine-tokens .false-token{color:#b83d27;background:#fff3e8;border-color:#f2634b;position:relative}.token-star{color:#e9563e;background:#fffcf7;border-radius:50%;font-size:26px;position:absolute;top:-19px;right:-12px}.machine-link{font-family:var(--heading);letter-spacing:.09em;color:var(--muted);align-items:center;gap:8px;margin:15px 0 22px;font-size:8px;display:flex}.machine-link>div{background:#c7c1d2;flex:1;height:1px}.mini-distribution{background:#f4f0fc;border:1px solid #e4dafa;border-radius:8px;max-width:275px;padding:13px 16px}.mini-distribution>div{align-items:center;gap:12px;margin-top:8px;font-size:12px;display:flex}.mini-distribution>div:first-child{color:#6c607e;justify-content:space-between;margin-top:0;margin-bottom:9px;font-size:10px}.mini-distribution b{width:39px;font-weight:400}.mini-distribution strong{font-family:var(--heading);font-size:10px;font-weight:550}.mini-bar{background:#ded4f6;border-radius:10px;flex:1;height:9px}.mini-bar>i{background:var(--purple);border-radius:10px;width:50%;height:100%;display:block}.machine-note{margin-top:22px}.sticker{font-family:var(--heading);letter-spacing:.08em;background:#f9e29a;border:1px solid #ddc260;border-radius:4px;margin-bottom:9px;padding:4px 8px;font-size:9px;font-weight:600;display:inline-block;transform:rotate(-3deg)}.machine-note p{max-width:260px;font-size:12px;line-height:1.55}.machine-foot{border-top:1.5px solid var(--ink);font-family:var(--heading);letter-spacing:.08em;justify-content:space-between;padding:11px 16px;font-size:8px;display:flex}.machine-foot>span:first-child{align-items:center;gap:5px;display:flex}.machine-foot i{background:#528540;border-radius:50%;width:6px;height:6px}.machine-mascot{width:131px;position:absolute;bottom:31px;right:-29px;transform:rotate(-9deg)}.mascot{width:100%;height:auto;display:block}.mascot.small{width:100px;margin:26px auto 0}.floating-tag{border:1.5px solid var(--ink);background:#f3cced;border-radius:5px;align-items:center;gap:7px;padding:7px 12px;font-size:12px;display:flex;position:absolute;bottom:-29px;left:39px;transform:rotate(-4deg)}.entry-section{padding:10px 0 37px}.section-heading{text-align:center;margin-bottom:27px}.section-heading h2{margin:8px 0 10px;font-size:28px;font-weight:550}.section-heading p{color:var(--muted);font-size:15px}.entry-cards{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px;max-width:920px;margin:auto;display:grid}.entry-card{background:#f0f5de;border:1px solid #d6ddbe;border-radius:16px;min-width:0;padding:30px 30px 21px;position:relative}.entry-card.join-card{background:#f0ebfb;border-color:#dcd1f1}.entry-icon{background:#d5ed9e;border-radius:12px;place-items:center;width:49px;height:49px;display:grid;position:absolute;top:29px;right:29px}.join-card .entry-icon{color:#5830c3;background:#dcd0fa}.entry-card .eyebrow{color:#465731;font-size:9px}.join-card .eyebrow{color:var(--purple-dark)}.entry-card h3{margin:10px 0 13px;font-size:27px;font-weight:550}.entry-card>p{color:#5d6653;max-width:300px;margin-bottom:22px;font-size:15px;line-height:1.5}.join-card>p{color:#655777}.button{background:var(--purple);color:#fff;font-family:var(--heading);border:1.5px solid #0000;border-radius:30px;justify-content:center;align-items:center;gap:13px;min-height:44px;padding:11px 21px;font-size:13px;font-weight:500;line-height:1.4;text-decoration:none;display:inline-flex}.button:hover:not(:disabled){background:var(--purple-dark)}.button.dark{background:var(--ink);color:#fff}.button.dark:hover:not(:disabled){background:#423353}.button.secondary{color:var(--purple-dark);background:0 0;border-color:#9b85c1}.button.secondary:hover:not(:disabled){background:#eee6fb}.text-button{color:var(--purple-dark);background:0 0;border:0;justify-content:center;align-items:center;gap:7px;min-height:40px;padding:9px 1px;font-size:13px;text-decoration:none;display:inline-flex}.text-button:hover:not(:disabled){text-underline-offset:4px;text-decoration:underline}.icon-button{min-width:40px;min-height:40px;color:inherit;background:0 0;border:0;border-radius:7px;place-items:center;display:inline-grid}.icon-button:hover{background:#e6e0ef}.entry-card>.button{border-radius:9px;justify-content:space-between;width:100%}.entry-caption{text-align:center;color:#6c7160;margin-top:11px;font-size:11px;display:block}.join-card .entry-caption{color:#6a5b7c}.session-warning{text-align:center;color:var(--muted);justify-content:center;align-items:center;gap:7px;margin-top:21px;font-size:12px;display:flex}.join-form{margin-top:-8px}.join-form label{font-size:12px}.join-input-row{gap:9px;margin:4px 0 5px;display:flex}.join-input-row input{letter-spacing:.17em;flex:1;min-width:0;font-weight:700}.join-input-row .button{border-radius:8px;flex:none;width:auto;padding:10px 16px}input,select,textarea{color:var(--ink);background:#fffcf7;border:1px solid #c7bbda;border-radius:7px;padding:11px 12px;font-size:16px}input::placeholder,textarea::placeholder{color:#827888}small{font-size:12px}.join-form small{color:var(--muted)}.connection-hint{color:var(--purple-dark);text-align:center;margin-top:10px;font-size:13px}.lesson-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);align-items:center;gap:24px;margin:0 auto 42px;padding:22px 26px;display:flex}.lesson-number{font-family:var(--heading);letter-spacing:-.05em;color:#9066ba;font-size:40px;font-weight:600}.lesson-strip .eyebrow{margin-bottom:3px;font-size:9px}.lesson-strip h2{margin-bottom:4px;font-size:22px;font-weight:550}.lesson-strip p{color:var(--muted);font-size:13px}.lesson-tag{font-family:var(--heading);letter-spacing:.05em;color:#655e69;white-space:nowrap;background:#f2eee4;border-radius:7px;margin-inline-start:auto;padding:7px 11px;font-size:10px}.lesson-tag span{margin-inline:6px}.lesson-symbol{color:var(--purple);margin-inline-start:10px}footer{border-top:1px solid var(--line);max-width:1280px;color:var(--muted);justify-content:space-between;align-items:center;gap:20px;margin:auto;padding:22px 48px 30px;font-size:11px;display:flex}.footer-note{align-items:center;gap:7px;display:flex}.footer-note svg{color:var(--purple-dark)}footer .text-button{font-size:11px}.skip{z-index:30;background:#fff;padding:12px 20px;position:fixed;top:12px;left:12px;transform:translateY(-150%)}.skip:focus{transform:none}.skip:not(:focus){clip-path:inset(50%)}.dialog{background:var(--cream);color:var(--ink);overscroll-behavior:contain;border:1px solid #d6cceb;border-radius:18px;width:calc(100% - 32px);max-width:580px;max-height:calc(100dvh - 40px);padding:28px;overflow:auto;box-shadow:0 20px 80px #21182f33}.dialog::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#24202f60}.dialog-head{justify-content:space-between;align-items:center;gap:14px;margin-bottom:20px;display:flex}.dialog-head h2{font-size:24px}.dialog p{color:#62586b;line-height:1.6}.dialog .button-row{justify-content:flex-end;margin-top:26px}.prose p+p{margin-top:15px}.prose{margin-bottom:24px}.privacy-page{max-width:680px;margin:50px auto 70px}.privacy-page h1{margin:10px 0 25px;font-size:44px}.error-banner{color:#9a352b;background:#fff0e9;border:1px solid #e2b2a4;border-radius:8px;justify-content:space-between;align-items:center;margin-top:22px;padding:9px 14px;font-size:15px;display:flex}.room-closed{background:var(--lavender);border:1px solid #d7c9ed;border-radius:12px;align-items:center;gap:14px;margin-top:30px;padding:22px;display:flex}.room-closed h2{margin-bottom:4px;font-size:18px}.room-closed p{color:var(--muted);font-size:14px}.room-closed>.text-button{margin-inline-start:auto}.connection{color:#3c7044;align-items:center;gap:6px;font-size:12px;display:flex}.connection i,.live-badge i{background:#588a44;border-radius:50%;width:6px;height:6px}.connection.offline{color:#9c5b21}.connection.offline i{background:#bc7a38}.session-label{border-inline-start:1px solid var(--line);padding-inline-start:20px;font-size:13px;font-weight:700}.workspace{padding:44px 0 50px}.workspace-title{justify-content:space-between;align-items:center;gap:20px;margin-bottom:30px;display:flex}.workspace-title h1{margin:10px 0 12px;font-size:39px;font-weight:600}.workspace-title p{color:var(--muted)}.host-badge{background:var(--lavender);color:var(--purple-dark);white-space:nowrap;border-radius:30px;align-items:center;gap:8px;padding:9px 15px;font-size:13px;display:flex}.host-top{grid-template-columns:1.05fr 1fr;gap:30px;display:grid}.room-card{background:#eff5dd;border:1px solid #d4ddb9;border-radius:15px;padding:29px 32px}.room-card>.eyebrow{color:#4c642b}.room-code{font-family:var(--heading);letter-spacing:.17em;font-variant-numeric:tabular-nums;margin:12px 0 8px;font-size:clamp(35px,4.8vw,64px);font-weight:650}.room-card>p{color:#5d6850;margin-bottom:20px;font-size:14px}.button-row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.join-link{color:#50623d;background:#e5edcd;border:0;width:100%;margin-top:16px;padding:8px 11px;font-size:12px}.copy-status{color:#4a602e;min-height:22px;margin-top:5px;font-size:12px;display:block}.host-instructions{padding:10px 10px 0}.host-instructions h2{margin:9px 0 13px;font-size:29px}.host-instructions>p{color:var(--muted);font-size:15px}.host-instructions ol{color:#5c5562;padding-inline-start:21px;font-size:14px;line-height:1.9}.teacher-tip{border-top:1px solid var(--line);color:var(--muted);gap:10px;padding-top:16px;font-size:12px;line-height:1.6;display:flex}.teacher-tip svg{color:var(--purple)}.stats{border:1px solid var(--line);background:#fffcf6;border-radius:12px;grid-template-columns:repeat(3,1fr);margin:29px 0 32px;display:grid}.stats>div{flex-direction:column;gap:5px;padding:20px 25px;display:flex}.stats>div+div{border-inline-start:1px solid var(--line)}.stats strong{font-family:var(--heading);font-variant-numeric:tabular-nums;font-size:29px;font-weight:600}.stats strong>span{color:#716576;font-size:19px}.stats div>span{color:var(--muted);font-size:13px}.progress-heading{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.progress-heading h2{font-size:21px;font-weight:550}.live-badge{color:#527039;align-items:center;gap:7px;font-size:12px;display:flex}.player-list{border:1px solid var(--line);background:#fffcf6;border-radius:11px;overflow:hidden}.player-table-header,.player-row{grid-template-columns:1.25fr 1.25fr 1fr .5fr;align-items:center;gap:20px;padding:17px 22px;display:grid}.player-table-header{font-size:11px;font-family:var(--heading);color:#6e646e;background:#f1ede4;padding-block:12px}.player-row+.player-row{border-top:1px solid var(--line)}.player-identity{align-items:center;gap:12px;display:flex}.avatar{color:var(--purple-dark);width:38px;height:38px;font-size:12px;font-family:var(--heading);background:#e9e1fa;border-radius:10px;place-items:center;display:grid}.avatar.complete{color:#416c28;background:#e2f4b5}.player-identity h3{letter-spacing:-.02em;font-size:14px;font-weight:500}.status-text{color:#5e754f;font-size:11px}.status-text.offline{color:#9b6727}.stage-name{color:#62586b;font-size:13px}.progress-track{background:#eee8f5;border-radius:10px;height:7px;overflow:hidden}.progress-track i{background:var(--purple);border-radius:10px;height:100%;display:block}.player-score{font-family:var(--heading);font-variant-numeric:tabular-nums;text-align:end;font-size:17px;font-weight:550}.player-score small{color:#716579;margin-inline-start:3px;font-size:10px}.host-empty{text-align:center;background:#f5f1fb;border:1.5px dashed #d9cdea;border-radius:13px;padding:15px 25px 42px}.host-empty .mascot{margin-top:9px;margin-bottom:18px}.host-empty h3{margin-bottom:9px;font-size:19px;font-weight:500}.host-empty p{color:var(--muted);font-size:14px}.host-bottom{justify-content:space-between;align-items:center;gap:20px;margin-top:20px;display:flex}.host-bottom p{color:var(--muted);align-items:center;gap:8px;font-size:12px;display:flex}.game-meta{justify-content:space-between;align-items:center;gap:20px;margin-bottom:25px;display:flex}.meta-dot{color:#b7a7d1;margin-inline:9px}.player-chip{background:#f2edf9;border:1px solid #dbd0ee;border-radius:7px;align-items:center;gap:9px;padding:7px 11px;font-size:12px;display:flex}.player-chip>span{color:var(--purple-dark);font-variant-numeric:tabular-nums;border-inline-start:1px solid #dacfed;padding-inline-start:9px;font-weight:700}.player-chip>svg{color:var(--purple)}.game-title{justify-content:space-between;align-items:center;gap:30px;margin-bottom:30px;display:flex}.game-title h1{margin:7px 0 12px;font-size:38px;font-weight:600}.game-title p{color:var(--muted);max-width:660px;line-height:1.6}.step-dots{flex-shrink:0;gap:5px;display:flex}.step-dots>span{background:#ded6ec;border-radius:10px;width:21px;height:6px}.step-dots>span.active{background:var(--purple)}.game-grid{grid-template-columns:1fr 1.2fr;align-items:start;gap:24px;display:grid}.read-grid{grid-template-columns:1.55fr 1fr}.panel{background:#fffdf8;border:1px solid #dfd4ed;border-radius:13px;min-width:0;padding:25px}.panel>.eyebrow{margin-bottom:19px}.story-picker{flex-wrap:wrap;gap:8px;margin-bottom:16px;display:flex}.story-option{color:#635570;background:#f5f1fb;border:1px solid #d9cfea;border-radius:8px;align-items:center;gap:7px;min-height:44px;padding:10px 12px;font-size:12px;display:flex}.story-option svg{width:19px;height:19px}.story-option.selected{color:#5524b7;background:#eae0fc;border-color:#7951cf}.story-text p{color:#29232f;overflow-wrap:anywhere;margin-block:5px;font-size:17px;line-height:1.65}.story-text mark{color:var(--purple-dark);background:0 0;font-weight:700}.hint-panel{background:#efe9fb;border:1px solid #dfd4f2;border-radius:13px;padding:25px}.hint-icon{width:52px;height:52px;color:var(--purple-dark);background:#ddd1f7;border-radius:12px;place-items:center;margin-bottom:20px;display:grid}.hint-panel h2{margin:8px 0 17px;font-size:25px;font-weight:550}.hint-panel p{color:#665775;font-size:15px;line-height:1.6}.hint-panel p+p{margin-top:16px}.mascot-caption{text-align:center;margin-top:10px!important;font-size:12px!important}.story-panel label{margin-bottom:9px;font-size:14px;display:block}.story-panel textarea{resize:vertical;width:100%;min-height:195px;line-height:1.6}.textarea-foot{color:var(--muted);justify-content:space-between;gap:16px;margin-top:8px;font-size:11px;display:flex}.textarea-foot>span:first-child{max-width:340px}.textarea-foot>span:last-child{white-space:nowrap;font-variant-numeric:tabular-nums}.field-error{color:#a43322;margin-top:8px;font-size:13px}.inline-error{align-items:start;gap:8px;display:flex}.game-bottom{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;margin-top:26px;padding-top:25px;display:flex}.game-bottom p{color:var(--muted);align-items:center;gap:7px;font-size:12px;display:flex}.game-bottom .button{flex-shrink:0}.word-pill{background:var(--purple);color:#fff;font-family:var(--heading);overflow-wrap:anywhere;border-radius:30px;align-items:center;padding:5px 11px;font-size:12px;display:inline-flex}.word-pill.pale{background:var(--lavender);color:var(--purple-dark)}.count-control{border-top:1px solid var(--line);margin-top:22px;padding-top:20px}.count-control>div:first-child{align-items:center;gap:9px;min-height:38px;margin-bottom:14px;display:flex}.count-control .button{padding-inline:14px;font-size:11px}.count-control small{color:var(--muted);margin-top:14px;font-size:11px;display:block}.count-table{max-height:490px;overflow:auto}.count-table-head{background:var(--lavender);font-size:10px;font-family:var(--heading);color:var(--purple-dark);border-radius:6px;grid-template-columns:85px 1fr;gap:10px;padding:10px 11px;display:grid}.count-table-row{border-bottom:1px solid #eee7f2;grid-template-columns:85px 1fr;align-items:center;gap:10px;padding:12px 0;display:grid}.count-table-row>.word-pill{justify-self:start;max-width:85px}.count-table-row>div{flex-wrap:wrap;gap:6px;display:flex}.count-cell{overflow-wrap:anywhere;background:#f0eafb;border-radius:6px;grid-template-columns:auto 1fr;gap:2px 7px;min-width:54px;padding:7px 9px;font-size:10px;display:grid}.count-cell>span:first-child{grid-column:1/-1}.count-cell b{font-size:17px;font-family:var(--heading);font-weight:550}.count-dots{color:var(--purple);letter-spacing:2px;align-self:center;font-size:7px;overflow:hidden}.success-text{color:#347239;align-items:center;gap:7px;font-weight:700;display:flex}.table-empty{text-align:center;color:#716080;padding:50px 15px}.table-empty svg{margin-bottom:13px}.table-empty p{font-size:13px}.panel label{margin-bottom:8px;font-size:13px;display:block}.panel select{width:100%}.after-title{margin:24px 0 20px;font-size:22px;font-weight:550}.probability-row+.probability-row{margin-top:16px}.probability-label{overflow-wrap:anywhere;justify-content:space-between;align-items:center;gap:12px;margin-bottom:7px;font-size:14px;display:flex}.probability-label b{align-items:center;gap:8px;font-weight:400;display:flex}.probability-label strong{font-family:var(--heading);font-variant-numeric:tabular-nums;font-size:16px;font-weight:550}.probability-track{background:#eae2f8;border-radius:20px;height:11px;overflow:hidden}.probability-track i{background:var(--purple);border-radius:20px;height:100%;display:block}.probability-row small{color:#71617e;margin-top:5px;font-size:11px;display:block}.legend-dot{background:#7448f4;border-radius:50%;flex-shrink:0;width:9px;height:9px;display:inline-block}.color-1{background:#88a931}.color-2{background:#c76cbe}.color-3{background:#ba922a}.color-4{background:#f2634b}.panel-footnote{color:#685571!important;margin-top:21px!important;font-size:12px!important;line-height:1.6!important}.choice-list{flex-direction:column;gap:9px;margin-top:18px;display:flex}.answer-option{text-align:start;width:100%;min-height:46px;color:var(--ink);background:#fffcf8;border:1px solid #d5c5e8;border-radius:9px;justify-content:space-between;align-items:center;gap:10px;padding:13px 14px;font-size:15px;line-height:1.5;display:flex}.answer-option:hover:not(:disabled){background:#e7dcfa;border-color:#8e70c6}.answer-option.chosen{border-color:var(--purple);color:#5127aa;background:#e1d4fa}.answer-option.correct-choice{opacity:1;color:#345e2a;background:#edf5dd;border-color:#86a467}.answer-option:disabled{opacity:.7}.feedback{background:#f0f6df;border:1px solid #c7d8a7;border-radius:9px;margin-top:18px;padding:13px 15px;line-height:1.6;color:#345a29!important;font-size:14px!important}.feedback.neutral{background:#fff3d5;border-color:#ead596;color:#775623!important}.feedback strong{font-size:14px}.feedback p{color:inherit;margin-top:7px;font-size:13px}.prediction-panel .choice-list{margin-top:18px}.generated-text{flex-wrap:wrap;align-content:start;align-items:center;gap:7px;min-height:85px;padding-bottom:15px;display:flex}.generated-token{font-family:var(--heading);background:var(--lavender);overflow-wrap:anywhere;border-radius:7px;max-width:100%;padding:8px 11px;font-size:20px;font-weight:550}.cursor{color:var(--purple);font-size:27px}.generation-status{color:#766583;min-height:46px;margin:10px 0 19px;font-size:13px}.creativity{border-top:1px solid var(--line);margin-top:27px;padding-top:22px}.creativity>div:first-child{justify-content:space-between;align-items:center;gap:16px;display:flex}.creativity label{font-family:var(--heading);margin:0;font-size:13px;font-weight:500}.creativity output{color:var(--purple-dark);font-size:12px}.creativity output span{color:#71617e}.creativity input{width:100%;accent-color:var(--purple);background:0 0;height:24px;margin:15px 0 8px;padding:0}.range-labels{color:#71617e;justify-content:space-between;font-size:11px;display:flex}.creativity p{color:#6e5e78;margin-top:12px;font-size:12px;line-height:1.6}.spinner-panel{padding:25px 30px}.spinner-area{width:175px;height:175px;margin:27px auto 24px;position:relative}.spinner-wheel{border:2px solid var(--ink);width:100%;height:100%;box-shadow:3px 3px 0 var(--ink);border-radius:50%;place-items:center;display:grid}.spinner-pointer{border-left:9px solid #0000;border-right:9px solid #0000;border-top:20px solid var(--ink);z-index:1;width:0;height:0;position:absolute;top:-12px;left:calc(50% - 9px)}.spinner-hub{background:var(--cream);border:2px solid var(--ink);border-radius:50%;place-items:center;width:50px;height:50px;display:grid}.spinner-panel .probability-row+.probability-row{margin-top:12px}.spinner-panel .probability-label{font-size:12px}.spinner-panel .probability-label strong{font-size:13px}.spinner-panel .probability-track{height:8px}.assessment-layout{grid-template-columns:1fr 1.35fr;align-items:start;gap:25px;display:grid}.reference-panel .story-text p{font-size:15px}.word-chain{flex-wrap:wrap;align-items:center;gap:6px;margin-top:24px;display:flex}.word-chain>span{background:var(--lavender);font-family:var(--heading);border:1px solid #d8c9ec;border-radius:6px;padding:8px 11px;font-size:12px}.word-chain>.false-word{color:#ac3d26;background:#fff1e7;border-color:#f2634b}.question-stack{flex-direction:column;gap:20px;display:flex}.question-card h2{margin:0 0 14px;font-size:23px;font-weight:550;line-height:1.4}.question-card>p{color:#786881;font-size:14px}.question-card>.eyebrow{margin-bottom:12px}.fact-options{gap:12px;margin-top:18px;display:flex}.option-letter{font-family:var(--heading);background:var(--lavender);color:var(--purple-dark);border-radius:6px;place-items:center;min-width:26px;height:26px;margin-inline-end:2px;font-size:12px;display:grid}.question-card .choice-list .answer-option{justify-content:start}.question-card .choice-list .answer-option>svg{margin-inline-start:auto}.completion{text-align:center;background:#f0f5df;border:1px solid #d6dfbb;border-radius:18px;max-width:760px;margin:0 auto;padding:27px 40px 40px}.completion-mascot{width:115px;margin:auto auto 20px}.completion h2{margin:10px 0 16px;font-size:33px;font-weight:600}.completion>p{color:#637053;font-size:17px;line-height:1.6}.score-medal{border-top:1px solid #d5debd;border-bottom:1px solid #d5debd;justify-content:center;align-items:center;gap:15px;max-width:360px;margin:22px auto;padding:20px;display:flex}.score-medal strong{font-family:var(--heading);letter-spacing:-.05em;color:#526f2a;font-size:48px;font-weight:650}.score-medal>span{text-align:start;color:#617443;max-width:100px;font-size:14px}.takeaways{text-align:start;flex-direction:column;gap:10px;max-width:370px;margin:20px auto 24px;font-size:15px;display:flex}.takeaways p{align-items:center;gap:11px;display:flex}.takeaways svg{color:#527d32;width:19px;height:19px}.completion .completion-note{color:#5e684f;max-width:420px;margin:0 auto 23px;font-size:13px}@media (prefers-reduced-motion:no-preference){.button{transition:background-color .15s,scale .15s}.button:active:not(:disabled){scale:.96}.spinner-wheel{transition:transform .65s cubic-bezier(.14,.65,.12,1)}.progress-track i,.probability-track i{transition:width .2s}.cursor{animation:1s step-end infinite blink}@keyframes blink{50%{opacity:0}}}@media (width>=1400px){.hero{gap:100px}.machine{max-width:475px}}@media (width<=1000px){.header,main,footer{padding-inline:30px}.hero{gap:40px;padding-block:50px 65px}.hero h1{font-size:53px}.hero-description{font-size:17px}.desktop-break{display:none}.machine-body{padding:23px 19px}.machine-tokens{gap:5px;font-size:16px}.machine-tokens>span{padding:8px}.machine-mascot{width:110px;right:-19px}.machine-note p{max-width:210px;font-size:11px}.machine-top{font-size:8px}.hero-tags>span{padding:6px 11px;font-size:10px}.entry-card{padding:26px}.game-grid,.read-grid,.generate-grid{grid-template-columns:1.2fr 1fr}.game-title h1{font-size:33px}.host-top{gap:20px}.room-card{padding:25px}.workspace-title h1{font-size:32px}.panel{padding:21px}.assessment-layout{grid-template-columns:1fr 1.3fr}.fact-options{gap:8px}.fact-options .answer-option{padding:11px;font-size:13px}.player-table-header,.player-row{gap:15px;padding-inline:17px}}@media (width<=760px){.header,main,footer{padding-inline:22px}.header{padding-block:23px}.logo{font-size:30px}.logo>svg{width:24px;height:34px}.header-note{display:none}.beta{font-size:8px}.hero{grid-template-columns:1fr;gap:44px;padding:39px 0 65px}.hero-copy{max-width:530px}.hero h1{font-size:58px}.hero-description{max-width:440px;font-size:18px}.hero-aside{margin-top:20px}.machine{justify-self:center;width:calc(100% - 20px);max-width:470px;margin:0}.machine-body{padding:24px}.machine-tokens{gap:7px;font-size:20px}.machine-tokens>span{padding:8px 10px}.machine-note p{max-width:265px;font-size:12px}.machine-mascot{width:123px;right:-23px}.machine-top{font-size:9px}.hero-tags>span{padding:6px 13px;font-size:11px}.hero-eyebrow{margin-bottom:18px}.section-heading h2{font-size:25px}.section-heading p{max-width:350px;margin:auto;font-size:14px}.entry-cards{gap:15px}.entry-card{padding:23px 20px}.entry-icon{width:37px;height:37px;top:23px;right:20px}.entry-icon svg{width:22px;height:22px}.entry-card h3{font-size:23px}.entry-card>p{min-height:84px;font-size:14px}.entry-caption{font-size:10px}.entry-card .eyebrow{max-width:130px;font-size:8px}.session-warning{align-items:start;max-width:430px;margin:21px auto 0;font-size:11px}.lesson-strip{gap:16px;padding-inline:0}.lesson-strip .lesson-symbol{display:none}.lesson-tag{font-size:8px}.lesson-strip p{font-size:12px}.lesson-strip h2{font-size:20px}.lesson-number{font-size:35px}footer{flex-wrap:wrap;gap:7px 20px}footer>span{order:3;width:100%;font-size:10px}footer .text-button{margin-inline-start:auto}.connection{font-size:10px}.header-right{gap:11px}.session-label{padding-inline-start:10px;font-size:11px}.header-right>.text-button{font-size:11px}.workspace{padding-top:30px}.workspace-title{align-items:start}.workspace-title h1{font-size:30px}.workspace-title p{font-size:14px}.host-badge{gap:5px;margin-top:4px;padding:7px 10px;font-size:10px}.host-badge svg{width:15px;height:15px}.host-top{grid-template-columns:1fr}.host-instructions{padding:5px}.room-code{font-size:53px}.host-instructions ol{font-size:15px}.stats>div{padding:17px 15px}.stats strong{font-size:25px}.stats div>span{font-size:11px}.player-table-header,.player-row{grid-template-columns:1.15fr 1fr .4fr;gap:10px}.player-table-header>span:nth-child(3){display:none}.player-row .progress-track{grid-area:2/2;margin-top:-15px}.player-identity{grid-area:1/1/3;gap:9px}.stage-name{grid-area:1/2;font-size:12px}.player-score{grid-area:1/3/3}.host-bottom{align-items:start}.host-bottom p{align-items:start;font-size:11px}.game-grid,.read-grid,.generate-grid,.assessment-layout{grid-template-columns:1fr}.game-title{align-items:start;gap:15px}.game-title h1{font-size:32px}.game-title p{font-size:14px}.step-dots{gap:3px;margin-top:13px}.step-dots>span{width:13px;height:5px}.game-meta{gap:10px}.game-meta>.eyebrow{font-size:9px}.player-chip{gap:6px;padding:6px 8px;font-size:10px}.player-chip>svg{width:14px;height:14px}.player-chip>span{padding-inline-start:6px}.hint-panel .mascot{width:80px;margin-top:20px}.hint-panel{position:relative}.hint-panel h2{font-size:23px}.story-text p{font-size:16px}.hint-panel .hint-icon{width:44px;height:44px;margin-bottom:15px}.story-option{padding:9px 11px;font-size:11px}.game-bottom{flex-direction:column-reverse;align-items:start;gap:17px}.game-bottom>.button{justify-content:space-between;align-self:stretch}.game-bottom p{font-size:11px}.count-table{max-height:400px}.count-table-row{grid-template-columns:90px 1fr}.reference-panel{order:0}.reference-panel .story-text p{font-size:14px}.word-chain{margin-top:16px}.assessment-layout .panel-footnote{margin-top:12px!important}.question-card h2{font-size:22px}.spinner-area{width:160px;height:160px}.completion{padding:25px}.completion h2{font-size:28px}.completion>p{font-size:16px}.host-bottom>.text-button{white-space:nowrap}.workspace-title .host-badge{display:none}.room-closed{flex-wrap:wrap;padding:17px}.room-closed>div{flex:1}.room-closed>.text-button{margin-inline-start:38px}.textarea-foot{font-size:10px}}@media (width<=480px){.header,main,footer{padding-inline:18px}.hero h1{font-size:49px}.hero-eyebrow{font-size:9px}.hero-tags{flex-wrap:wrap;gap:4px}.hero-tags>span{gap:5px;padding:6px 8px;font-size:10px}.hero-tags>svg{width:12px}.machine-tokens{font-size:17px}.machine-body{padding:22px 18px}.machine-mascot{width:101px;bottom:40px;right:-10px}.machine-note p{max-width:calc(100% - 78px);font-size:11px}.machine-foot{font-size:7px}.machine-top{font-size:8px}.floating-tag{font-size:11px;left:22px}.entry-cards{grid-template-columns:minmax(0,1fr);gap:16px}.entry-card{padding:25px}.entry-card>p{max-width:300px;min-height:0;margin-bottom:20px;font-size:15px}.entry-icon{width:45px;height:45px;top:25px;right:25px}.entry-card h3{font-size:26px}.entry-card .eyebrow{max-width:none;font-size:9px}.entry-caption{font-size:11px}.lesson-strip{flex-wrap:wrap;gap:12px 16px;margin-bottom:28px}.lesson-tag{margin-inline-start:54px;margin-top:-3px}.lesson-strip p{font-size:12px}.session-label{display:none}.connection{font-size:10px}.header-right>.text-button{gap:5px;font-size:10px}.header-right>.text-button svg{width:14px;height:14px}.stats>div{padding:15px 10px}.stats strong{font-size:24px}.stats strong>span{font-size:14px}.stats div>span{font-size:10px}.room-card{padding:23px}.room-code{letter-spacing:.13em;font-size:43px}.room-card .button{gap:8px;padding:10px 15px;font-size:11px}.game-meta{flex-wrap:wrap;gap:10px;margin-bottom:21px}.game-title h1{font-size:29px}.step-dots>span{width:10px}.step-dots{gap:3px}.panel{padding:20px}.game-title p{font-size:14px}.creativity>div:first-child{gap:10px}.creativity output{font-size:11px}.generated-token{font-size:17px}.question-card h2{font-size:20px}.player-table-header,.player-row{gap:10px;padding-inline:13px}.player-identity h3{font-size:12px}.avatar{width:31px;height:31px;font-size:10px}.stage-name{font-size:10px}.player-score{font-size:14px}.player-score small{margin:0;display:block}.completion h2{font-size:25px}.completion>p{font-size:15px}.takeaways{font-size:13px}.dialog{padding:23px}.dialog-head h2{font-size:21px}.dialog .button-row{gap:9px}.dialog .button{padding-inline:16px;font-size:12px}.count-control .button-row{gap:10px}.count-table-row,.count-table-head{grid-template-columns:77px 1fr}}.games-section{margin:48px 0 72px}.games-section>h2{margin-bottom:24px;font-size:30px}.game-card{background:#efe9fb;border:1px solid #d8caee;border-radius:28px;grid-template-columns:1.3fr 1fr;align-items:center;gap:40px;padding:38px 42px;display:grid}.game-card h3{margin-bottom:16px;font-size:35px}.game-card-copy>p{max-width:420px;font-size:18px;line-height:1.6}.game-card-tags{flex-wrap:wrap;gap:10px;margin-block:20px 28px;display:flex}.game-card-tags>span{background:#fffdf8;border-radius:30px;padding:6px 12px;font-size:13px}.game-card-copy>small{color:var(--muted);margin-top:15px;font-size:12px;display:block}.game-card-art{border:2px solid var(--ink);min-height:260px;box-shadow:6px 6px 0 var(--ink);background:#faf8f2;border-radius:24px;flex-direction:column;justify-content:center;align-items:center;padding:24px;display:flex;position:relative}.game-card-art>.mascot{width:150px}.adventure-number{background:var(--green);border:2px solid var(--ink);font-family:var(--heading);border-radius:10px;padding:8px 15px;font-size:25px;position:absolute;inset-block-start:-15px;inset-inline-start:20px;rotate:-7deg}.adventure-pair{align-items:center;gap:10px;margin-top:12px;display:flex}.adventure-pair>span{background:var(--lavender);color:var(--ink);font-family:var(--heading);border:1px solid #cdbbec;border-radius:8px;padding:8px 13px}.adventure-sticker{border:1px solid var(--ink);background:#f1c1ee;border-radius:6px;margin-top:18px;padding:8px 13px;font-size:12px;rotate:-3deg}.focused-game{max-width:1040px;margin-inline:auto}.focused-game .game-title{align-items:start;margin-bottom:28px}.focused-game .game-title h1{margin-top:0}.lesson-progress{flex-shrink:0;justify-items:end;gap:10px;padding-top:9px;display:grid}.lesson-progress>span{color:var(--muted);font-variant-numeric:tabular-nums;font-size:13px}.reading-focus,.training-focus{max-width:740px;margin-inline:auto}.focused-game .panel>h2{margin-bottom:18px;font-size:23px}.focused-game .story-text p{margin-block:9px;font-size:18px;line-height:1.75}.focused-game .story-option{padding:12px;font-size:14px}.lesson-details{color:var(--muted);margin-top:22px;font-size:14px;line-height:1.65}.lesson-details>summary{cursor:pointer;width:fit-content;min-height:44px;color:var(--purple-dark);text-underline-offset:4px;padding-block:11px;text-decoration:underline}.lesson-details>summary:focus-visible{outline-offset:4px;border-radius:4px;outline:3px solid #4e29b4}.lesson-details[open]>summary{margin-bottom:10px}.lesson-details>p+p,.lesson-details .count-table{margin-top:12px}.pair-lesson>p,.training-result>p{color:var(--muted);font-size:16px;line-height:1.6}.example-sentence{font-family:var(--heading);background:var(--lavender);overflow-wrap:anywhere;border-radius:14px;margin:26px 0 20px;padding:22px;font-size:23px;line-height:1.7}.example-sentence mark,.pair-evidence mark{color:var(--purple-dark);background:#e4d7fc;border-radius:4px;padding-inline:3px}.pair-options{flex-wrap:wrap;gap:12px;display:flex}.pair-options .answer-option{overflow-wrap:anywhere;width:auto;min-width:100px;max-width:100%}.pair-options .answer-option>svg{flex-shrink:0}.pair-feedback{margin-top:22px}.pair-feedback>p{max-width:58ch;font-size:16px;line-height:1.65}.pair-bridge{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:14px;display:flex}.pair-bridge .word-pill{padding:9px 17px;font-size:17px}.pair-tally{color:#53672c;font-variant-numeric:tabular-nums;background:#edf4da;border-radius:8px;padding:8px 12px;font-weight:700}.pair-evidence>p{margin-bottom:12px;font-size:16px}.pair-lesson>.button{margin-top:22px}.training-note{color:var(--muted);margin-top:15px;font-size:13px!important}.training-success{color:#53672c;align-items:start;gap:12px;margin-bottom:20px;display:flex}.training-success>svg{flex-shrink:0;margin-top:3px}.training-success h2{font-size:25px}.learned-pairs{gap:14px;margin-top:24px;display:grid}.learned-pairs>div{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.learned-pairs strong{color:var(--muted);font-variant-numeric:tabular-nums;font-size:15px}.focused-game .after-title{margin-top:0}.focused-game .generated-text{margin-top:8px}.focused-game .creativity{border-top:0;margin-top:0;padding-top:0}.focused-game .spinner-panel>h2{text-align:center;font-size:20px}.spinner-caption{text-align:center;color:var(--muted);margin-block:10px 24px;font-size:14px;line-height:1.6}.focused-assessment{grid-template-columns:1.3fr 1fr;align-items:start}.question-position{color:var(--muted);margin-bottom:16px;font-size:14px}.focused-assessment .question-card h2{overflow-wrap:anywhere;line-height:1.45}.focused-assessment .question-card .answer-option{min-height:48px;font-size:15px}.focused-assessment .reference-panel{order:initial}.focused-assessment .reference-panel .story-text p{font-size:15px;line-height:1.75}.reference-caption{color:var(--muted);margin-top:18px;font-size:12px;line-height:1.6}.focused-game .game-bottom{border:0;margin-top:20px;padding-top:10px}.focused-game .game-bottom>.button{min-height:48px}@media (width<=760px){.game-card{grid-template-columns:1fr;gap:32px;padding:28px}.game-card-art{justify-self:center;width:100%;max-width:380px}.game-card h3{font-size:30px}.games-section>h2{font-size:26px}.focused-game .game-title{gap:18px}.lesson-progress .step-dots>span{width:11px}.focused-assessment{grid-template-columns:1fr}.focused-assessment .reference-panel{order:initial}.focused-game .story-option{font-size:13px}}@media (width<=480px){.game-card{border-radius:22px;padding:25px 20px}.game-card .button-row{align-items:start;gap:16px}.game-card .button{font-size:13px}.game-card-art{min-height:230px}.game-card-copy>p{font-size:16px}.lesson-progress{padding-top:4px}.lesson-progress>span{font-size:12px}.focused-game .game-title h1{font-size:27px}.focused-game .game-title p{font-size:15px}.focused-game .panel>h2{font-size:21px}.focused-game .story-text p{font-size:16px}.example-sentence{padding:17px;font-size:20px}.pair-options .answer-option{flex:0 auto;min-width:0;padding:11px}.focused-assessment .question-card .answer-option{font-size:14px}.focused-game .game-bottom>span:empty{display:none}.focused-game .game-bottom .button{width:100%}}
