@font-face{font-family:Fredoka Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/fredoka-hebrew-wght-normal-DdnsCkLr.woff2)format("woff2-variations");unicode-range:U+307-308,U+590-5FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:Fredoka Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/fredoka-latin-ext-wght-normal-CYrqKuxd.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:Fredoka Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/fredoka-latin-wght-normal-DM6njrJ3.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:Andika;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/andika-latin-400-normal-BTFTIZb-.woff2)format("woff2"),url(/assets/andika-latin-400-normal-BK42By1L.woff)format("woff")}@font-face{font-family:Andika;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/andika-latin-700-normal-Dk95f5lc.woff2)format("woff2"),url(/assets/andika-latin-700-normal-CAUSQC6x.woff)format("woff")}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ink:#26264a;--ink-soft:#55597a;--ink-muted:#6e7291;--paper:#fff;--page:#f5f6fb;--line:#e3e6ef;--grape:#8b6cf6;--grape-deep:#6a4fd8;--violet:#6c47d9;--violet-deep:#4b2fa6;--violet-wash:#f0ecff;--sun:#ffc93c;--sun-deep:#e5a800;--coral:#ff6b6b;--grass:#3dc47e;--grass-deep:#1f9d55;--ocean:#4d96ff;--danger:#c0362c;--danger-deep:#962a22;--finger-pinky:#ffe1ee;--finger-pinky-edge:#efb3cb;--finger-ring:#ffe9d2;--finger-ring-edge:#efc393;--finger-middle:#fff5c7;--finger-middle-edge:#e6d17f;--finger-left-index:#dcf6e4;--finger-left-index-edge:#a2d9b4;--finger-right-index:#dcebff;--finger-right-index-edge:#a4c3ee;--finger-thumb:#ece6ff;--finger-thumb-edge:#c6b8f2;--viz-series-1:#2a78d6;--viz-series-1-hover:#3987e5;--viz-track:#cde2fb;--viz-ord-1:#86b6ef;--viz-ord-2:#3987e5;--viz-ord-3:#1c5cab;--viz-empty:#f0efec;--viz-grid:#e1e0d9;--viz-axis:#c3c2b7;--viz-text:#0b0b0b;--viz-text-secondary:#52514e;--viz-text-muted:#898781;--status-warning:#fab219;--status-warning-track:#fdecc4;--font-display:"Fredoka Variable", "Fredoka", ui-rounded, "Arial Rounded MT Bold", system-ui, sans-serif;--font-letter:"Andika", "Fredoka Variable", system-ui, sans-serif;--font-emoji:"Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji", "Twemoji Mozilla", "EmojiOne Color", sans-serif;--font-body:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--radius-sm:12px;--radius:20px;--radius-lg:32px;--shadow-soft:0 10px 30px #26264a1f;--shadow-card:0 1px 2px #26264a0d, 0 4px 16px #26264a0f;--focus:0 0 0 3px #fff, 0 0 0 6px #2f74e0}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{background:var(--page);min-height:100dvh;color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;touch-action:manipulation;margin:0;font-size:16px;line-height:1.45}h1,h2,h3{font-family:var(--font-display);margin:0 0 .4em;font-weight:600;line-height:1.15}h1{font-size:clamp(1.7rem,3.5vw,2.2rem)}h2{font-size:1.25rem}p{margin:0 0 .8em}a{color:var(--violet)}img,svg{max-width:100%}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{box-shadow:var(--focus);outline:none}kbd{font-family:var(--font-letter)}.emoji,.avatar,.avatar-option__face,.profile-card__avatar,.game-card__emoji,.explorer__picture,.hunt__picture,.words__picture,.sticker.is-unlocked,.results__sticker-emoji,.balloon-progress li,.feature__icon{font-family:var(--font-emoji)}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.muted{color:var(--ink-soft)}.btn{--btn-bg:var(--paper);--btn-fg:var(--ink);--btn-edge:#26264a29;background:var(--btn-bg);min-height:44px;color:var(--btn-fg);font-family:var(--font-display);white-space:nowrap;cursor:pointer;box-shadow:0 4px 0 var(--btn-edge);border:0;border-radius:999px;justify-content:center;align-items:center;gap:.45em;padding:.6em 1.25em;font-size:1rem;font-weight:600;line-height:1.1;text-decoration:none;transition:transform 80ms,box-shadow 80ms,background-color .15s;display:inline-flex}.btn:hover{filter:brightness(1.04)}.btn:active:not(:disabled){box-shadow:0 1px 0 var(--btn-edge);transform:translateY(3px)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn:focus-visible{box-shadow:0 4px 0 var(--btn-edge), var(--focus)}.btn-primary{--btn-bg:var(--violet);--btn-fg:#fff;--btn-edge:var(--violet-deep)}.btn-sun{--btn-bg:var(--sun);--btn-fg:#3d2c00;--btn-edge:var(--sun-deep)}.btn-white{--btn-bg:#fff;--btn-fg:var(--ink);--btn-edge:#26264a2e}.btn-ghost{--btn-bg:transparent;--btn-fg:var(--ink);box-shadow:inset 0 0 0 2px var(--line)}.btn-ghost:active:not(:disabled){box-shadow:inset 0 0 0 2px var(--line);transform:translateY(1px)}.btn-ghost:focus-visible{box-shadow:inset 0 0 0 2px var(--line), var(--focus)}.btn-danger{--btn-bg:var(--danger);--btn-fg:#fff;--btn-edge:var(--danger-deep)}.btn-danger-text{--btn-fg:var(--danger)}.btn-sm{min-height:38px;padding:.45em .95em;font-size:.92rem}.btn-lg{min-height:60px;box-shadow:0 6px 0 var(--btn-edge);padding:.75em 1.6em;font-size:1.3rem}.btn-block{width:100%}.brand{color:var(--ink);font-family:var(--font-display);align-items:center;gap:.4em;font-size:1.35rem;font-weight:700;text-decoration:none;display:inline-flex}.brand__mark{background:var(--grape);border-radius:.55em;place-items:center;width:1.8em;height:1.8em;font-size:.8em;display:inline-grid}.brand__tag{background:var(--violet-wash);color:var(--violet-deep);border-radius:999px;padding:.15em .6em;font-size:.55em;font-weight:600}.brand--light{color:var(--ink);opacity:.85}.page-center{place-items:center;min-height:60vh;padding:24px;display:grid}.message-card{border-radius:var(--radius-lg);width:min(100%,460px);box-shadow:var(--shadow-soft);text-align:center;background:#fff;flex-direction:column;align-items:center;gap:8px;padding:28px;display:flex}.message-card__actions{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.spinner{justify-content:center;gap:8px;padding:28px;display:flex}.spinner__dot{background:var(--grape);border-radius:50%;width:14px;height:14px;animation:.9s ease-in-out infinite bounce-dot}.spinner__dot:nth-child(2){background:var(--sun);animation-delay:.15s}.spinner__dot:nth-child(3){background:var(--coral);animation-delay:.3s}.form-error{border-radius:var(--radius-sm);color:#8a1c1c;background:#fdecec;margin:0;padding:10px 14px;font-size:.95rem}.dialog{width:min(100% - 32px,440px);color:var(--ink);text-align:center;font-family:var(--font-display);border:0;border-radius:28px;padding:26px 24px 20px;box-shadow:0 24px 70px #26264a59}.dialog::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#26264a73}.dialog__text{color:var(--ink-soft);font-family:var(--font-body)}.dialog__close{margin-top:14px}.bonus-options{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.pinpad{flex-direction:column;align-items:center;gap:6px;display:flex}.pinpad__dots{gap:14px;padding:6px;display:flex}.pinpad__dots.is-error{animation:.4s ease-in-out shake}.pinpad__dot{border:3px solid var(--grape);border-radius:50%;width:18px;height:18px;transition:background-color .1s}.pinpad__dot.is-filled{background:var(--grape)}.pinpad__error{min-height:1.4em;color:var(--danger);font-family:var(--font-body);text-align:center;margin:0;font-size:.92rem}.pinpad__grid{grid-template-columns:repeat(3,72px);gap:12px;display:grid}.pinpad__key{background:var(--violet-wash);height:62px;color:var(--ink);font-family:var(--font-display);cursor:pointer;border:0;border-radius:18px;font-size:1.6rem;font-weight:600;transition:transform 80ms;box-shadow:0 4px #d8d0ff}.pinpad__key:active:not(:disabled){transform:translateY(3px);box-shadow:0 1px #d8d0ff}.pinpad__key:disabled{opacity:.5}.mascot{width:var(--mascot-size);height:var(--mascot-size);flex:none;position:relative}.mascot__svg{width:100%;height:100%;display:block;overflow:visible}.mascot__figure,.mascot__arm,.mascot__eyes{transform-box:fill-box}.mascot__figure{transform-origin:50% 100%}.mascot--idle .mascot__figure,.mascot--wave .mascot__figure{animation:3.2s ease-in-out infinite mascot-bob}.mascot--happy .mascot__figure{animation:.55s ease-out mascot-hop}.mascot--cheer .mascot__figure{animation:.8s ease-in-out infinite mascot-jump}.mascot--cheer .mascot__arm{transform-origin:50% 90%;animation:.4s ease-in-out infinite alternate mascot-arms}.mascot--oops .mascot__figure{animation:.5s ease-in-out mascot-wobble}.mascot--sleepy .mascot__figure{animation:3.6s ease-in-out infinite mascot-breathe}.mascot--wave .mascot__arm--right{transform-origin:30% 90%;animation:.55s ease-in-out infinite alternate mascot-wave}.mascot__eyes{transform-origin:50%;animation:5s infinite mascot-blink}.mascot__zzz text{animation:2.6s ease-in-out infinite zzz}.mascot__zzz text:nth-child(2){animation-delay:.4s}.mascot__zzz text:nth-child(3){animation-delay:.8s}.mascot__bubble{z-index:2;width:max-content;max-width:250px;color:var(--ink);font-family:var(--font-display);background:#fff;border-radius:20px 20px 20px 4px;padding:10px 16px;font-size:1.15rem;font-weight:600;line-height:1.25;animation:.35s cubic-bezier(.34,1.56,.64,1) bubble-in;position:absolute;top:4%;left:86%;box-shadow:0 6px 18px #26264a24}@keyframes bounce-dot{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-8px)}40%,80%{transform:translate(8px)}}@keyframes pop-in{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes bubble-in{0%{opacity:0;transform:scale(.5)translateY(10px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes mascot-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-5%)}}@keyframes mascot-hop{0%{transform:translateY(0)scale(1)}30%{transform:translateY(-14%)scale(.95,1.06)}60%{transform:translateY(0)scale(1.06,.94)}to{transform:translateY(0)scale(1)}}@keyframes mascot-jump{0%,to{transform:translateY(0)rotate(0)}25%{transform:translateY(-12%)rotate(-4deg)}50%{transform:translateY(0)rotate(0)}75%{transform:translateY(-12%)rotate(4deg)}}@keyframes mascot-arms{0%{transform:rotate(-25deg)}to{transform:rotate(25deg)}}@keyframes mascot-wobble{0%,to{transform:rotate(0)}25%{transform:rotate(-7deg)}75%{transform:rotate(7deg)}}@keyframes mascot-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.03,.97)}}@keyframes mascot-wave{0%{transform:rotate(-10deg)}to{transform:rotate(-60deg)}}@keyframes mascot-blink{0%,46%,50%,to{transform:scaleY(1)}48%{transform:scaleY(.1)}}@keyframes zzz{0%,to{opacity:.2;transform:translateY(0)}50%{opacity:1;transform:translateY(-6px)}}@keyframes wiggle{0%,to{transform:rotate(0)}20%{transform:rotate(-6deg)}40%{transform:rotate(6deg)}60%{transform:rotate(-4deg)}80%{transform:rotate(4deg)}}@media (prefers-reduced-motion:reduce){.mascot *,.mascot,.spinner__dot,.pinpad__dots{animation:none!important}}.kid-world{min-height:100dvh;color:var(--ink);font-family:var(--font-display);background:linear-gradient(#bfe6ff 0%,#e2f4ff 50%,#fff6df 100%);position:relative;overflow:clip}.kid-world>:not(.sky){z-index:1;position:relative}.sky{z-index:0;pointer-events:none;position:absolute;inset:0;overflow:clip}.sky__sun{aspect-ratio:1;background:radial-gradient(circle,#fff5bf 0 50%,#ffd95c 52% 100%);border-radius:50%;width:clamp(70px,10vw,120px);position:absolute;top:6%;right:7%;box-shadow:0 0 70px 24px #ffd95c73}.sky__cloud{opacity:.9;background:#fff;border-radius:999px;width:170px;height:52px;animation:80s linear infinite cloud-drift;position:absolute}.sky__cloud:before,.sky__cloud:after{content:"";background:#fff;border-radius:50%;position:absolute}.sky__cloud:before{width:76px;height:76px;top:-40px;left:28px}.sky__cloud:after{width:56px;height:56px;top:-26px;left:88px}.sky__cloud--1{top:12%;left:-10%}.sky__cloud--2{opacity:.75;animation-duration:110s;animation-delay:-40s;top:30%;left:30%;transform:scale(.7)}.sky__cloud--3{animation-duration:95s;animation-delay:-70s;top:6%;left:55%;transform:scale(.85)}.sky__hills{width:100%;height:22vh;position:absolute;bottom:0;left:0}@keyframes cloud-drift{0%{translate:-20vw}to{translate:120vw}}.kid-title{text-align:center;text-shadow:0 3px #ffffffd9;margin:0;font-size:clamp(2rem,5vw,3.1rem);font-weight:700}.kid-subtitle{text-align:center;max-width:34em;margin:0;font-size:clamp(1.1rem,2.4vw,1.35rem)}.kid-note{text-align:center;flex-direction:column;align-items:center;gap:14px;font-size:1.3rem;display:flex}.grownups-link{width:44px;height:44px;color:var(--ink);background:#ffffffd9;border-radius:50%;place-items:center;font-size:1.1rem;text-decoration:none;display:inline-grid;box-shadow:0 3px #26264a1f}.sound-toggle{cursor:pointer;border:0}.grownups-link--label{border-radius:999px;gap:6px;width:auto;padding:0 16px;font-size:1rem;font-weight:600;display:inline-flex}.avatar{border-radius:50%;flex:none;place-items:center;width:56px;height:56px;font-size:2rem;line-height:1;display:inline-grid;box-shadow:inset 0 -4px #0000001f}.avatar--sm{width:40px;height:40px;font-size:1.4rem}.avatar--lg{width:84px;height:84px;font-size:3rem}.picker{min-height:100dvh;padding:max(16px, env(safe-area-inset-top)) 20px 48px;flex-direction:column;align-items:center;gap:18px;display:flex}.picker__header{justify-content:space-between;align-items:center;width:100%;display:flex}.picker__hello{flex-direction:column;align-items:center;gap:4px;margin-top:2vh;display:flex}.picker__grid{flex-wrap:wrap;justify-content:center;gap:24px;margin:0;padding:0;list-style:none;display:flex}.profile-card{aspect-ratio:1/1.1;background:var(--card-color);width:clamp(160px,22vw,200px);font-family:var(--font-display);cursor:pointer;border:5px solid #fff;border-radius:34px;flex-direction:column;justify-content:center;align-items:center;gap:10px;transition:transform .12s;display:flex;position:relative;box-shadow:0 10px #00000024,0 18px 30px #26264a24}.profile-card:hover{transform:translateY(-4px)rotate(-1.5deg)}.profile-card:active{transform:translateY(5px);box-shadow:0 4px #00000024}.profile-card__avatar{filter:drop-shadow(0 5px #0000001f);font-size:clamp(4rem,8vw,5.4rem);line-height:1}.profile-card__name{color:#fff;text-overflow:ellipsis;white-space:nowrap;background:#26264a9e;border-radius:999px;max-width:90%;padding:4px 16px;font-size:1.5rem;font-weight:700;overflow:hidden}.profile-card__badge{color:var(--ink);background:#fff;border-radius:999px;padding:4px 12px;font-size:.95rem;font-weight:600;position:absolute;top:-12px;right:-12px;box-shadow:0 4px 10px #26264a26}.play{flex-direction:column;min-height:100dvh;display:flex}.playbar{z-index:5;padding:max(10px, env(safe-area-inset-top)) max(16px, env(safe-area-inset-right)) 8px max(16px, env(safe-area-inset-left));align-items:center;gap:12px;display:flex;position:relative}.playbar__who{align-items:center;gap:8px;min-width:0;font-size:1.25rem;font-weight:700;display:flex}.playbar__name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.playbar__right{align-items:center;gap:10px;margin-left:auto;display:flex}.playbar__stars{white-space:nowrap;background:#fff;border-radius:999px;padding:6px 14px;font-size:1.1rem;font-weight:700;box-shadow:0 3px #26264a1a}.play__main{flex-direction:column;flex:1;min-height:0;display:flex}.kbd-badge{background:#ffffffd9;border-radius:50%;place-items:center;width:44px;height:44px;font-size:1.3rem;text-decoration:none;display:grid;position:relative;box-shadow:0 3px #26264a1f}.kbd-badge__dot{background:#b9bccb;border:2px solid #fff;border-radius:50%;width:11px;height:11px;position:absolute;top:5px;right:5px}.kbd-badge.is-connected .kbd-badge__dot{background:#0ca30c}.timebar{background:#fff;border-radius:999px;align-items:center;gap:8px;padding:6px 14px 6px 10px;display:flex;box-shadow:0 3px #26264a1a}.timebar__icon{font-size:1.15rem}.timebar__track{background:#d8f3e3;border-radius:999px;width:clamp(56px,11vw,140px);height:12px;overflow:hidden}.timebar__fill{width:calc(var(--fill) * 100%);border-radius:inherit;background:var(--grass);height:100%;transition:width 1s linear;display:block}.timebar__text{white-space:nowrap;min-width:4.2em;font-size:.98rem;font-weight:700}.timebar--low .timebar__track{background:#fff0c2}.timebar--low .timebar__fill{background:#ffb800}.timebar--last .timebar__track{background:#ffe0e0}.timebar--last .timebar__fill{background:var(--coral)}.timebar--last{animation:1.2s ease-in-out infinite timebar-pulse}.timebar--done .timebar__track{background:#e3e6ef}.timebar.is-paused{opacity:.7}@keyframes timebar-pulse{50%{transform:scale(1.06)}}.hub{padding:4px 20px max(24px, env(safe-area-inset-bottom), 8vh);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:clamp(14px,3vh,28px);display:flex}.hub__hello{justify-content:center;width:min(100%,820px);padding-right:200px;display:flex}.hub__games{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(14px,2.5vw,22px);width:min(100%,820px);display:grid}@media (width>=1100px) and (aspect-ratio>=4/3){.hub__games{grid-template-columns:repeat(4,minmax(0,1fr));width:min(100%,1180px)}}.game-card{background:var(--card-color);min-height:clamp(150px,27vh,260px);color:var(--card-ink);text-align:center;border:5px solid #ffffffb3;border-radius:30px;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:20px 14px;text-decoration:none;transition:transform .12s;display:flex;position:relative;box-shadow:0 8px #00000029,0 16px 26px #26264a1f}.game-card:hover{transform:translateY(-4px)rotate(-1deg)}.game-card:active{transform:translateY(5px);box-shadow:0 3px #00000029}.game-card__emoji{filter:drop-shadow(0 4px #0000001f);font-size:clamp(2.8rem,8vh,4.6rem);line-height:1.1}.game-card__title{font-size:clamp(1.3rem,2.4vw,1.6rem);font-weight:700}.game-card__tagline{font-size:1.08rem;font-weight:500}.game-card__key{width:34px;height:34px;color:var(--ink);background:#ffffffeb;border-radius:10px;place-items:center;font-size:1.15rem;font-weight:700;display:grid;position:absolute;top:10px;left:10px;box-shadow:0 3px #00000026}.hub__footer{flex-wrap:wrap;justify-content:center;align-items:center;gap:14px;display:flex}.level-chip{background:#fff;border-radius:999px;align-items:center;gap:12px;min-height:48px;padding:8px 18px;font-weight:600;display:flex;box-shadow:0 4px #26264a1a}.level-chip__dots{gap:6px;display:flex}.level-chip__dots span{background:#e3e6ef;border-radius:50%;width:14px;height:14px}.level-chip__dots span.is-on{background:var(--sun);box-shadow:inset 0 -2px 0 var(--sun-deep)}.stickers{flex-direction:column;align-items:center;gap:12px;padding:8px 20px 40px;display:flex}.stickers__grid{background:#ffffffeb;border-radius:30px;grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:14px;width:min(100%,860px);margin:8px 0 0;padding:20px;list-style:none;display:grid;box-shadow:0 8px #26264a14}.sticker{aspect-ratio:1;color:#b0b4c7;border:3px dashed #cfd3e3;border-radius:50%;place-items:center;font-size:1.6rem;font-weight:700;display:grid}.sticker.is-unlocked{color:inherit;animation:pop-in .4s calc(var(--i) * 30ms) cubic-bezier(.34, 1.56, .64, 1) both;background:#fff7d6;border:4px solid #fff;font-size:clamp(2.2rem,5vw,3rem);box-shadow:0 5px #26264a1a}.times-up{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:14px;padding:20px 20px 40px;display:flex}.times-up__actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:8px;display:flex}.overlay{z-index:50;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#26264a61;place-items:center;padding:20px;animation:.2s fade-in;display:grid;position:fixed;inset:0}.overlay__card{text-align:center;background:#fff;border-radius:36px;flex-direction:column;align-items:center;gap:8px;width:min(100%,520px);padding:26px 32px 28px;animation:.35s cubic-bezier(.34,1.56,.64,1) pop-in;display:flex;box-shadow:0 24px 70px #26264a4d}.overlay__card h2{margin:0;font-size:1.9rem}.overlay__card p{margin:0;font-size:1.2rem}@media (width<=720px){.playbar{flex-wrap:wrap}.playbar__right{justify-content:space-between;width:100%}.hub__hello{padding-right:0}.hub__hello .mascot__bubble{display:none}}@media (prefers-reduced-motion:reduce){.sky__cloud,.timebar--last,.sticker.is-unlocked,.overlay,.overlay__card{animation:none!important}.game-card,.profile-card{transition:none}}.kb{--gap:clamp(4px, .7vw, 8px);gap:var(--gap);-webkit-user-select:none;user-select:none;background:#ffffffb8;border-radius:clamp(16px,2.4vw,26px);flex-direction:column;width:min(100%,860px);margin-inline:auto;padding:clamp(8px,1.4vw,14px);display:flex;box-shadow:0 6px #26264a1a,0 12px 30px #26264a1a;container-type:inline-size}.kb__row{--key:calc((100cqw - (var(--kb-units) - 1) * var(--gap)) / var(--kb-units));gap:var(--gap);padding-left:calc(var(--row-offset) * (var(--key) + var(--gap)));display:flex}.kb__row--space{--row-offset:2.5}.kb__key{--face:#fff;--edge:#cfd6e6;width:var(--key);height:min(calc(var(--key) * .9), 9.5vh);border-radius:calc(var(--key) * .2);background:var(--face);color:var(--ink);font-family:var(--font-letter);font-size:min(calc(var(--key) * .44), 4.6vh);box-shadow:0 min(4px, .6vh) 0 var(--edge);border:0;flex:none;place-items:center;padding:0;font-weight:700;line-height:1;transition:transform 80ms,box-shadow 80ms;display:grid;position:relative}.kb__key--space{width:calc(var(--key) * 5 + var(--gap) * 4);font-family:var(--font-display);font-size:min(calc(var(--key) * .3), 3vh);font-weight:600}.kb__key--l-pinky,.kb__key--r-pinky{--face:var(--finger-pinky);--edge:var(--finger-pinky-edge)}.kb__key--l-ring,.kb__key--r-ring{--face:var(--finger-ring);--edge:var(--finger-ring-edge)}.kb__key--l-middle,.kb__key--r-middle{--face:var(--finger-middle);--edge:var(--finger-middle-edge)}.kb__key--l-index{--face:var(--finger-left-index);--edge:var(--finger-left-index-edge)}.kb__key--r-index{--face:var(--finger-right-index);--edge:var(--finger-right-index-edge)}.kb__key--thumb{--face:var(--finger-thumb);--edge:var(--finger-thumb-edge)}.kb__label{z-index:1;position:relative}.kb__key.has-bump .kb__label:after{content:"";opacity:.55;background:currentColor;border-radius:1em;width:.55em;height:.09em;position:absolute;bottom:-.28em;left:50%;transform:translate(-50%)}.kb__key.is-target{--face:#fff3b0;--edge:#e5b400;z-index:2;animation:1s ease-in-out infinite key-target;transform:translateY(-3px)}.kb--tappable .kb__key{cursor:pointer}.kb--tappable .kb__key:active{box-shadow:0 1px 0 var(--edge);transform:translateY(3px)}.kb__flash{border-radius:inherit;pointer-events:none;animation:.5s ease-out forwards key-flash;position:absolute;inset:0}.kb__flash.is-hit{background:#3dc47e99}.kb__flash.is-miss{background:#ff6b6b8c}@keyframes key-target{0%,to{box-shadow:0 min(4px, .6vh) 0 var(--edge), 0 0 0 3px #ffb800}50%{box-shadow:0 min(4px, .6vh) 0 var(--edge), 0 0 0 8px #ffb80059}}@keyframes key-flash{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.25)}}.game-screen{flex-direction:column;flex:1;min-height:0;display:flex;position:relative}.game{min-height:0;padding:4px 16px max(16px, env(safe-area-inset-bottom));flex-direction:column;flex:1;align-items:center;gap:clamp(8px,1.6vh,16px);display:flex}.game__prompt{text-align:center;margin:0;font-size:clamp(1.3rem,2.8vh,1.8rem);font-weight:600}.game__prompt strong{min-width:1.4em;font-family:var(--font-letter);background:#fff;border-radius:.35em;padding:0 .3em;font-size:1.2em;display:inline-block}.progress-dots{flex-wrap:wrap;justify-content:center;gap:8px;margin:0;padding:0;list-style:none;display:flex}.progress-dots li{background:#ffffffd9;border:3px solid #26264a2e;border-radius:50%;width:16px;height:16px;transition:transform .2s}.progress-dots li.is-done{border-color:var(--sun-deep);background:var(--sun)}.progress-dots li.is-current{border-color:var(--ink);transform:scale(1.25)}.explorer__stage{flex:1;place-items:center;width:100%;min-height:0;display:grid}.explorer__card{border:6px solid var(--game-color);background:#fff;border-radius:40px;flex-direction:column;align-items:center;gap:2px;max-width:92vw;padding:clamp(10px,2vh,20px) clamp(28px,5vw,48px) clamp(12px,2vh,22px);animation:.45s cubic-bezier(.34,1.56,.64,1) bounce-in;display:flex;box-shadow:0 10px #26264a1a}.explorer__letter{font-family:var(--font-letter);font-size:clamp(80px,18vh,170px);font-weight:700;line-height:1}.explorer__letter.is-word{font-family:var(--font-display);font-size:clamp(48px,9vh,84px)}.explorer__picture{text-align:center;overflow-wrap:anywhere;max-width:80vw;font-size:clamp(40px,7vh,68px);line-height:1.15}.explorer__word{font-size:clamp(1.3rem,3vh,1.8rem);font-weight:600}.jar{align-items:center;gap:10px;width:min(440px,80%);display:flex}.jar__label{font-size:1.6rem}.jar__track{background:#ffffffb3;border:3px solid #fff;border-radius:999px;flex:1;height:20px;overflow:hidden;box-shadow:inset 0 2px 4px #26264a1a}.jar__fill{width:calc(var(--fill) * 100%);border-radius:inherit;background:linear-gradient(90deg,#ffc93c,#ff9f68);height:100%;transition:width .25s;display:block}.hunt__stage{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:clamp(14px,3vh,28px);min-height:0;display:flex}.hunt__row{justify-content:center;align-items:center;gap:clamp(12px,5vw,56px);display:flex}.hunt__target{aspect-ratio:1;border:7px solid var(--game-color);background:#fff;border-radius:38px;place-items:center;width:clamp(130px,25vh,230px);animation:.35s cubic-bezier(.34,1.56,.64,1) pop-in;display:grid;position:relative;box-shadow:0 10px #26264a1f}.hunt__target.is-wrong{animation:.45s ease-in-out wiggle}.hunt__letter{font-family:var(--font-letter);font-size:clamp(80px,16vh,150px);font-weight:700;line-height:1}.hunt__picture{aspect-ratio:1;background:#fff;border-radius:50%;place-items:center;width:clamp(54px,9vh,76px);font-size:clamp(30px,5vh,44px);display:grid;position:absolute;bottom:-16px;right:-18px;box-shadow:0 6px 14px #26264a29}.balloon-progress{gap:4px;margin:0;padding:0;list-style:none;display:flex}.balloon-progress li{opacity:.3;filter:grayscale();font-size:clamp(1.1rem,2.6vh,1.5rem)}.balloon-progress li.is-done{opacity:1;filter:none;animation:.3s pop-in}.balloons__sky{flex:1;width:min(100%,1000px);min-height:220px;position:relative;overflow:clip;container-type:size}.balloon{bottom:0;left:var(--x);width:clamp(74px,12vh,110px);animation:balloon-rise var(--duration) linear forwards;position:absolute;transform:translateY(35%)}.balloons.is-paused .balloon,.balloon.is-popped{animation-play-state:paused}.balloon__body{transform-origin:50% 100%;animation:2.6s ease-in-out infinite alternate balloon-sway;position:relative}.balloon__body svg{filter:drop-shadow(0 6px 6px #26264a26);width:100%;height:auto;display:block}.balloon.is-popped .balloon__body{animation:.3s ease-out forwards balloon-pop}.balloon__letter{aspect-ratio:1;width:58%;color:var(--ink);font-family:var(--font-letter);background:#ffffffed;border-radius:50%;place-items:center;font-size:clamp(28px,5vh,44px);font-weight:700;line-height:1;display:grid;position:absolute;top:14%;left:50%;transform:translate(-50%)}.balloons__helper{z-index:0;pointer-events:none;align-items:flex-end;gap:8px;display:flex;position:absolute;bottom:2%;left:2%}.balloons__done{place-items:center;margin:0;font-size:clamp(2rem,6vh,3.4rem);font-weight:700;animation:.4s pop-in;display:grid;position:absolute;inset:0}@keyframes balloon-rise{0%{opacity:0;transform:translateY(35%)}4%{opacity:1}to{transform:translateY(calc(-100cqh - 10px))}}@keyframes balloon-sway{0%{rotate:-4deg}to{rotate:4deg}}@keyframes balloon-pop{0%{opacity:1;transform:scale(1)}60%{opacity:.6;transform:scale(1.35)}to{opacity:0;transform:scale(1.6)}}.words__stage{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:clamp(8px,2vh,18px);width:100%;min-height:0;display:flex;position:relative}.words__picture{filter:drop-shadow(0 8px #26264a1a);font-size:clamp(72px,15vh,140px);line-height:1;animation:3s ease-in-out infinite float}.words__picture.is-celebrating{animation:.7s ease-in-out infinite celebrate}.words__tiles{gap:clamp(8px,1.5vw,14px);display:flex}.tile{aspect-ratio:1;color:#26264a66;width:clamp(58px,11vh,96px);font-family:var(--font-letter);background:#fff9;border:4px dashed #26264a38;border-radius:22px;place-items:center;font-size:clamp(40px,7.5vh,66px);font-weight:700;line-height:1;display:grid}.tile.is-done{background:var(--grass-deep);color:#fff;border:4px solid #177a42;animation:.3s pop-in;box-shadow:0 6px #177a42}.tile.is-current{color:var(--ink);background:#fff;border:4px solid #e5a800;animation:1.2s ease-in-out infinite tile-pulse;box-shadow:0 6px #e5a800}.tile.is-wrong{animation:.45s ease-in-out wiggle}.words__mascot{position:absolute;bottom:0;right:6%}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes celebrate{0%,to{transform:scale(1)rotate(0)}25%{transform:scale(1.12)rotate(-8deg)}75%{transform:scale(1.12)rotate(8deg)}}@keyframes tile-pulse{50%{transform:translateY(-4px)}}@keyframes bounce-in{0%{opacity:0;transform:scale(.4)}70%{opacity:1;transform:scale(1.06)}to{transform:scale(1)}}.results__title{margin:0;font-size:clamp(2rem,5vh,2.6rem)}.stars{gap:12px;display:flex}.stars__star{color:#e3e6ef;font-size:clamp(48px,9vh,70px);line-height:1}.stars__star.is-on{color:var(--sun);text-shadow:0 5px 0 var(--sun-deep)}.stars__star.is-on.is-animated{animation:star-pop .5s calc(var(--i) * .25s + .2s) cubic-bezier(.34, 1.56, .64, 1) both}.results__sticker,.results__level{background:#fff7d6;border-radius:999px;margin:0;padding:8px 16px;font-size:1.2rem;font-weight:600}.results__level{background:#e8f1ff}.results__sticker-emoji{font-size:1.6rem}.results__note{color:var(--danger);font-size:1rem}.results__actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:8px;display:flex}.results__hint{color:var(--ink-soft);font-size:.95rem!important}@keyframes star-pop{0%{transform:scale(0)rotate(-40deg)}to{transform:scale(1)rotate(0)}}.toast{z-index:40;white-space:nowrap;background:#fff;border-radius:999px;padding:12px 26px;font-size:1.35rem;font-weight:700;animation:2.8s forwards toast;position:fixed;top:88px;left:50%;transform:translate(-50%);box-shadow:0 10px 30px #26264a33}@keyframes toast{0%{opacity:0;transform:translate(-50%,-20px)scale(.8)}12%,80%{opacity:1;transform:translate(-50%)scale(1)}to{opacity:0;transform:translate(-50%,-10px)scale(.95)}}.confetti{z-index:60;pointer-events:none;position:fixed;inset:0;overflow:clip}.confetti__piece{top:-24px;left:var(--x);width:var(--w);height:var(--h);background:var(--color);opacity:0;animation:confetti-fall var(--duration) var(--delay) cubic-bezier(.2, .6, .4, 1) forwards;border-radius:2px;position:absolute}.confetti__piece--round{border-radius:50%}@keyframes confetti-fall{0%{opacity:1;transform:translate(0)rotate(0)}85%{opacity:1}to{opacity:0;transform:translate(var(--drift), 105vh) rotate(var(--spin))}}@media (height<=760px){.kb__key{height:min(calc(var(--key) * .8), 8.4vh)}}@media (prefers-reduced-motion:reduce){.kb__key.is-target,.explorer__card,.hunt__target,.balloon:not(.is-popped) .balloon__body,.words__picture,.tile,.stars__star,.toast{animation:none!important}.confetti{display:none}.kb__key.is-target{box-shadow:0 4px 0 var(--edge), 0 0 0 4px #ffb800}}.balloons__prompt{position:absolute;top:4%;left:0;right:0}.parent,.setup{background:var(--page);min-height:100dvh}.parent-header,.setup__header{z-index:10;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffffff0;flex-wrap:wrap;align-items:center;gap:12px 20px;padding:12px clamp(16px,4vw,40px);display:flex;position:sticky;top:0}.parent-nav{flex-wrap:wrap;gap:4px;display:flex}.parent-nav a{color:var(--ink-soft);border-radius:999px;padding:8px 14px;font-weight:600;text-decoration:none}.parent-nav a:hover{background:var(--page)}.parent-nav a.active{background:var(--violet-wash);color:var(--violet-deep)}.parent-header__actions{gap:8px;margin-left:auto;display:flex}.parent-main{max-width:1120px;margin:0 auto;padding:28px clamp(16px,4vw,40px) 72px}.page-narrow{flex-direction:column;gap:18px;max-width:720px;margin:0 auto;display:flex}.page-narrow>h1{margin:0}.page-heading{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px;margin-bottom:20px;display:flex}.page-heading h1{margin:0 0 4px}.page-heading p{margin:0}.back-link{color:var(--ink-soft);align-self:flex-start;font-weight:600;text-decoration:none}.back-link:hover{color:var(--ink)}.card{border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-card);background:#fff;padding:clamp(18px,3vw,26px)}.card>h2{margin-bottom:6px}.card--danger{border-color:#f3d3d0}.child-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));gap:18px;display:grid}.child-card{border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-card);background:#fff;flex-direction:column;gap:16px;padding:20px;display:flex}.child-card__header{align-items:center;gap:14px;display:flex}.child-card__header h2{margin:0;font-size:1.4rem}.child-card__header p{margin:0}.child-card__stats{grid-template-columns:repeat(3,1fr);gap:8px;margin:0;display:grid}.child-card__stats div{background:var(--page);border-radius:12px;padding:10px 12px}.child-card__stats dt{color:var(--ink-soft);font-size:.8rem}.child-card__stats dd{margin:2px 0 0;font-size:1.1rem;font-weight:600}.child-card__actions{flex-wrap:wrap;gap:8px;margin-top:auto;display:flex}.child-card--add{min-height:260px;box-shadow:none;color:var(--ink-soft);font-family:var(--font-display);background:0 0;border:2px dashed #cfd3e3;justify-content:center;align-items:center;gap:10px;font-size:1.2rem;font-weight:600;text-decoration:none}.child-card--add:hover{border-color:var(--grape);color:var(--violet-deep)}.child-card__plus{background:var(--violet-wash);width:56px;height:56px;color:var(--violet);border-radius:50%;place-items:center;font-size:2rem;line-height:1;display:grid}.tips-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:16px;margin-top:36px;display:grid}.tip{border-radius:var(--radius);border:1px solid var(--line);background:#fff;padding:18px 20px}.tip h2{font-size:1.05rem}.tip p{color:var(--ink-soft);font-size:.95rem}.tip a{font-weight:600}.meter{--meter-fill:var(--viz-series-1);--meter-track:var(--viz-track);flex-direction:column;gap:6px;display:flex}.meter--almost{--meter-fill:var(--status-warning);--meter-track:var(--status-warning-track)}.meter--done{--meter-fill:var(--viz-ord-3)}.meter__labels{justify-content:space-between;gap:8px;font-size:.9rem;display:flex}.meter__label{color:var(--ink-soft)}.meter__value strong{font-size:1.05rem}.meter__track{background:var(--meter-track);border-radius:999px;height:10px;overflow:hidden}.meter__fill{width:calc(var(--fill) * 100%);border-radius:inherit;background:var(--meter-fill);height:100%;display:block}.meter__status{color:var(--ink-soft);margin:0;font-size:.88rem}.child-detail{flex-direction:column;gap:20px;display:flex}.child-detail__header{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.child-detail__header h1,.child-detail__header p{margin:0}.child-detail__header .btn{margin-left:auto}.kpi-row{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;display:grid}.kpi{border:1px solid var(--line);background:#fff;border-radius:16px;flex-direction:column;justify-content:center;gap:2px;padding:16px 18px;display:flex}.kpi--wide{grid-column:span 2}.kpi__label{color:var(--ink-soft);font-size:.85rem}.kpi__value{font-family:var(--font-body);white-space:nowrap;font-size:clamp(1.25rem,2.2vw,1.6rem);font-weight:600}@media (width<=520px){.kpi--wide{grid-column:1/-1}}.viz{flex-direction:column;gap:12px;margin:0;display:flex}.viz__toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.viz__toolbar .btn{margin-left:auto}.viz__summary{margin:0;font-weight:600}.viz__plot{position:relative}.viz__svg{width:100%;height:auto;display:block;overflow:visible}.viz__grid{stroke:var(--viz-grid);stroke-width:1px}.viz__baseline{stroke:var(--viz-axis);stroke-width:1px}.viz__tick{fill:var(--viz-text-muted);font-family:var(--font-body);font-variant-numeric:tabular-nums;font-size:12px}.viz__tick.is-today{fill:var(--viz-text-secondary);font-weight:600}.viz__bar{fill:var(--viz-series-1);transition:fill .15s}.viz__bar.is-active{fill:var(--viz-series-1-hover)}.viz__value{fill:var(--viz-text);font-family:var(--font-body);font-size:12px;font-weight:600}.viz__limit{stroke:var(--viz-text-secondary);stroke-width:1.5px}.viz__limit-label{fill:var(--viz-text-secondary);font-family:var(--font-body);font-size:12px;font-weight:600}.viz__hit{fill:#0000;outline:none}.viz__hit:focus-visible{fill:#2a78d60f;stroke:var(--viz-series-1);stroke-width:2px}.viz__tooltip{z-index:3;color:var(--viz-text-secondary);font-family:var(--font-body);white-space:nowrap;pointer-events:none;background:#fff;border:1px solid #0b0b0b1a;border-radius:10px;flex-direction:column;align-items:center;gap:1px;padding:6px 10px;font-size:12px;font-weight:400;display:flex;position:absolute;transform:translate(-50%,calc(-100% - 10px));box-shadow:0 6px 18px #0b0b0b1f}.viz__tooltip strong{color:var(--viz-text);font-size:14px}.viz__caption{color:var(--ink-soft);font-size:.85rem}.viz__legend{color:var(--viz-text-secondary);flex-wrap:wrap;gap:6px 18px;margin:0;padding:0;font-size:.85rem;list-style:none;display:flex}.viz__legend li{align-items:center;gap:6px;display:flex}.viz__swatch{border-radius:4px;width:14px;height:14px}.heat--none{background:var(--viz-empty);color:var(--viz-text-secondary)}.heat--practice{background:var(--viz-ord-1);color:var(--viz-text)}.heat--growing{background:var(--viz-ord-2);color:#fff}.heat--mastered{background:var(--viz-ord-3);color:#fff}.heatmap{flex-direction:column;gap:2px;width:100%;max-width:640px;display:flex;container-type:inline-size}.heatmap__row{--hk:calc((100cqw - 9.5 * 2px) / 10.5);padding-left:calc(var(--row-offset) * (var(--hk) + 2px));gap:2px;display:flex}.heatmap__key{width:var(--hk);aspect-ratio:1;font-family:var(--font-body);border-radius:8px;outline:none;flex:none;place-items:center;font-size:clamp(11px,2.6cqw,16px);font-weight:600;display:grid;position:relative}.heatmap__key.is-active,.heatmap__key:focus-visible{z-index:2;box-shadow:0 0 0 2px #fff, 0 0 0 4px var(--viz-text)}.viz__tooltip--key{top:0;left:50%}.data-table{border-collapse:collapse;width:100%;font-size:.92rem}.data-table th,.data-table td{border-bottom:1px solid var(--line);text-align:left;padding:10px 12px}.data-table thead th{color:var(--ink-soft);letter-spacing:.04em;text-transform:uppercase;font-size:.78rem;font-weight:600}.data-table .num{text-align:right;font-variant-numeric:tabular-nums}.table-scroll{overflow-x:auto}.form{flex-direction:column;gap:18px;width:100%;display:flex}.form__note{color:var(--ink-soft);margin:0;font-size:.9rem}.form__actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.form__saved{color:#0f6b3a;font-weight:600}.field{border:0;flex-direction:column;gap:6px;min-width:0;margin:0;padding:0;display:flex}.field>label,.field>legend{padding:0;font-size:.95rem;font-weight:600}.field>legend{margin-bottom:6px}.field input:not([type=radio],[type=checkbox],[type=range]),.field select{border-radius:var(--radius-sm);background:#fff;border:2px solid #d9dcea;width:100%;min-height:48px;padding:11px 14px;font-size:16px}.field input:focus-visible,.field select:focus-visible{border-color:var(--grape);box-shadow:0 0 0 4px #8b6cf640}.field__hint{color:var(--ink-soft);margin:0;font-size:.86rem}.field__hint.is-error{color:#b42318;font-weight:600}.input-with-button{gap:8px;display:flex}.input-pin{letter-spacing:.4em;max-width:10em}.range-row{align-items:center;gap:14px;display:flex}.range-row input[type=range]{accent-color:var(--violet);flex:1}.range-row__value{min-width:4.5em;font-size:1.1rem;font-weight:700}.chip-row{flex-wrap:wrap;gap:8px;display:flex}.chip{cursor:pointer;background:#fff;border:2px solid #d9dcea;border-radius:999px;min-height:40px;padding:6px 14px;font-weight:600}.chip.is-selected{border-color:var(--grape);background:var(--violet-wash);color:var(--violet-deep)}.avatar-picker{grid-template-columns:repeat(auto-fill,minmax(58px,1fr));gap:10px;display:grid}.avatar-option{cursor:pointer;position:relative}.avatar-option input{opacity:0;pointer-events:none;position:absolute}.avatar-option__face{aspect-ratio:1;background:color-mix(in srgb, var(--avatar-color) 28%, white);border:3px solid #0000;border-radius:50%;place-items:center;font-size:1.9rem;transition:transform .1s;display:grid}.avatar-option input:checked+.avatar-option__face{border-color:var(--ink);background:var(--avatar-color);transform:scale(1.06)}.avatar-option input:focus-visible+.avatar-option__face{box-shadow:var(--focus)}.segmented{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;display:grid}.segmented__option{cursor:pointer;border:2px solid #d9dcea;border-radius:14px;flex-direction:column;gap:2px;padding:12px 14px;display:flex;position:relative}.segmented__option input{opacity:0;pointer-events:none;position:absolute}.segmented__option:has(input:checked){border-color:var(--grape);background:#f7f5ff}.segmented__option:has(input:focus-visible){box-shadow:var(--focus)}.segmented__sample{font-family:var(--font-letter);font-size:1.6rem;font-weight:700}.segmented__text{color:var(--ink-soft);font-size:.88rem}.toggle{cursor:pointer;align-items:center;gap:12px;padding:8px 0;display:flex;position:relative}.toggle input{opacity:0;pointer-events:none;position:absolute}.toggle__track{background:#cfd3e3;border-radius:999px;flex:none;width:48px;height:28px;transition:background-color .15s;position:relative}.toggle__thumb{background:#fff;border-radius:50%;width:22px;height:22px;transition:transform .15s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #00000040}.toggle input:checked+.toggle__track{background:var(--violet)}.toggle input:checked+.toggle__track .toggle__thumb{transform:translate(20px)}.toggle input:focus-visible+.toggle__track{box-shadow:var(--focus)}.toggle__text{flex-direction:column;display:flex}.toggle__text span{color:var(--ink-soft);font-size:.86rem}.auth,.gate{min-height:100dvh;padding:max(24px, env(safe-area-inset-top)) 16px 48px;background:radial-gradient(circle at 50% -10%, #e5ddff, var(--page) 60%);flex-direction:column;align-items:center;display:flex}.gate{justify-content:center}.auth__brand{margin-bottom:20px}.auth__card,.gate__card{text-align:center;background:#fff;border-radius:28px;flex-direction:column;align-items:center;gap:8px;width:min(100%,440px);padding:28px clamp(20px,5vw,32px);display:flex;box-shadow:0 20px 50px #26264a1f}.auth__card h1,.gate__card h1{margin:4px 0 0}.auth__subtitle,.gate__text{color:var(--ink-soft)}.auth__card .form{text-align:left}.auth__switch{color:var(--ink-soft);margin:14px 0 0}.gate__form{text-align:left;width:100%}.providers{flex-direction:column;gap:10px;width:100%;margin-top:8px;display:flex}.btn-provider{gap:.65em;font-weight:600}.btn-provider--google{--btn-bg:#fff;--btn-fg:#1f1f1f;--btn-edge:#1f1f1f33;box-shadow:inset 0 0 0 1px #747775, 0 4px 0 var(--btn-edge)}.btn-provider--apple{--btn-bg:#000;--btn-fg:#fff;--btn-edge:#3a3a3a}.auth__divider{width:100%;color:var(--ink-muted);align-items:center;gap:12px;margin:12px 0 4px;font-size:.9rem;display:flex}.auth__divider:before,.auth__divider:after{content:"";border-top:1px solid var(--line);flex:1}.btn-link{color:var(--violet);font:inherit;text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:0;font-weight:600;text-decoration:underline}.btn-link:focus-visible{box-shadow:var(--focus);border-radius:4px;outline:none}.gate__back{color:var(--ink-soft);margin-top:6px;font-weight:600;text-decoration:none}.landing{background:linear-gradient(#dff1ff 0%,#fff7e6 55%,#fff 100%);min-height:100vh}.landing__nav,.hero,.features,.steps,.landing__footer{max-width:1160px;margin:0 auto;padding-inline:clamp(16px,4vw,32px)}.landing__nav{justify-content:space-between;align-items:center;gap:12px;padding-block:18px;display:flex}.landing__links{gap:8px;display:flex}.hero{grid-template-columns:1.05fr 1fr;align-items:center;gap:40px;padding-block:32px 56px;display:grid}.hero__text{container-type:inline-size}.hero h1{white-space:nowrap;margin:6px 0 16px;font-size:min(4rem,8.4cqi);line-height:1.04}.eyebrow{color:var(--violet);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.85rem;font-weight:700}.lead{max-width:36em;color:var(--ink-soft);font-size:1.15rem;line-height:1.6}.hero__actions{flex-wrap:wrap;gap:12px;margin-top:24px;display:flex}.hero__art{flex-direction:column;align-items:center;gap:16px;display:flex}.hero__art .mascot{margin-right:160px}.hero__keyboard{width:100%;max-width:480px}.features{grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:18px;padding-block:8px 56px;display:grid}.feature{border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-card);background:#fff;padding:22px}.feature__icon{font-size:2rem}.feature h2{margin:10px 0 6px}.feature p{color:var(--ink-soft);margin:0;line-height:1.55}.steps{padding-block:0 64px}.steps ol{counter-reset:step;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:16px;margin:16px 0 0;padding:0;list-style:none;display:grid}.steps li{border-radius:var(--radius);border:1px solid var(--line);counter-increment:step;background:#fff;padding:20px 20px 20px 64px;line-height:1.5;position:relative}.steps li:before{content:counter(step);background:var(--sun);width:32px;height:32px;font-family:var(--font-display);border-radius:50%;place-items:center;font-weight:700;display:grid;position:absolute;top:18px;left:18px}.landing__footer{color:var(--ink-soft);text-align:center;padding-block:24px 40px}.setup__main{flex-direction:column;gap:22px;max-width:900px;margin:0 auto;padding:28px clamp(16px,4vw,24px) 64px;display:flex}.setup__main>h1,.setup__main>.lead{margin:0}.tester{border:3px solid var(--line);background:#fff;border-radius:24px;flex-direction:column;align-items:center;gap:14px;padding:clamp(16px,3vw,24px);transition:border-color .2s;display:flex}.tester.is-working{border-color:var(--grass)}.tester__status{font-family:var(--font-display);margin:0;font-size:1.2rem;font-weight:600}.tester__key{background:var(--page);width:116px;height:116px;font-family:var(--font-letter);border-radius:28px;place-items:center;font-size:68px;font-weight:700;animation:.25s pop-in;display:grid}.guides{flex-direction:column;gap:10px;display:flex}.guides h2{margin:0 0 4px}.guide{border:1px solid var(--line);background:#fff;border-radius:16px;padding:0 18px}.guide summary{cursor:pointer;padding:14px 0;font-size:1.05rem;font-weight:700}.guide__badge{color:#0f6b3a;background:#e7f8ee;border-radius:999px;margin-left:8px;padding:2px 8px;font-size:.75rem;font-weight:600}.guide ol{margin:0 0 12px;padding-left:22px;line-height:1.6}.guide__tip{background:#f7f5ff;border-radius:12px;padding:12px 14px;font-size:.92rem;line-height:1.5}.tips ul{margin:8px 0 0;padding-left:20px;line-height:1.6}@media (width<=860px){.hero{grid-template-columns:1fr}.hero__art .mascot{margin-right:120px}}@media (width<=520px){.landing__links .btn-primary{display:none}.hero__art .mascot{margin-right:0}.hero__art .mascot__bubble{display:none}}@media (width>=861px) and (height>=600px){.landing{flex-direction:column;min-height:100dvh;display:flex}.landing main{flex-direction:column;flex:1;justify-content:space-evenly;gap:2vh;display:flex}.landing__nav,.hero,.features,.steps,.landing__footer{width:100%}.landing__nav{padding-block:1.6vh}.hero{padding-block:0}.hero h1{margin:.6vh 0 1.4vh;font-size:min(6.4vh,4rem,8.4cqi)}.lead{margin:0;font-size:clamp(.95rem,2.1vh,1.15rem);line-height:1.5}.hero__actions{margin-top:2.6vh}.hero__art{gap:1vh}.hero__art .mascot{width:clamp(90px,18vh,200px);height:clamp(90px,18vh,200px)}.hero__keyboard{max-width:min(480px,56vh)}.features{grid-template-columns:repeat(4,1fr);padding-block:0}.feature{grid-template-columns:auto 1fr;align-content:start;align-items:center;column-gap:10px;padding:clamp(12px,2vh,22px);display:grid}.feature__icon{font-size:1.5rem}.feature h2{margin:0;font-size:1.05rem}.feature p{grid-column:1/-1;margin-top:.8vh;font-size:clamp(.85rem,1.9vh,1rem);line-height:1.45}.steps{padding-block:0}.steps h2{margin:0}.steps ol{margin-top:1vh}.steps li{padding:12px 16px 12px 58px;font-size:clamp(.85rem,1.9vh,1rem)}.steps li:before{top:50%;translate:0 -50%}.landing__footer{padding-block:1.2vh 1.6vh;font-size:.9rem}}@media (width<=640px){.parent-header__actions{width:100%;margin-left:0}.parent-header__actions .btn-primary{flex:1}}button.heatmap__key{cursor:pointer;border:0;padding:0}
