.shell{display:flex;background:var(--c-bg);min-height:100dvh}.sidebar{display:none}.shell__main{display:flex;flex-direction:column;flex:1;min-width:0;min-height:100dvh}.shell__main>.screen{width:100%;padding:16px}@media (min-width:900px){.sidebar{position:sticky;display:flex;flex:0 0 var(--shell-sidebar);width:var(--shell-sidebar);background:var(--c-sidebar);flex-direction:column;gap:4px;height:100dvh;padding:24px 14px;top:0}.shell__main>.screen{padding:28px var(--shell-gutter)36px;max-width:1200px;margin-inline-start:auto;margin-inline-end:auto}}.sidebar__brand{display:flex;align-items: center;gap:9px;padding:0 6px 14px}.sidebar__logo{display:grid;background:var(--c-primary);color:#fff;font-family:var(--font-display);border-radius:11px;place-items: center;width:34px;height:34px;font-size:20px;font-weight:700;line-height:1}.sidebar__wordmark{font-family:var(--font-display);color:var(--c-ink);font-size:21px;font-weight:700}.sidebar__group{color:var(--c-muted);letter-spacing:.08em;text-transform:uppercase;margin:0;padding:12px 12px 4px;font-size:9px;font-weight:800}.sidebar__nav{display:flex;color:var(--c-muted);font-family:var(--font-sans);text-align:start;cursor:pointer;transition:background var(--motion-fast)var(--motion-out);background:0 0;border:0;border-radius:14px;align-items: center;gap:10px;min-height:44px;padding-inline-start:12px;padding-inline-end:12px;font-size:12.5px;font-weight:800}.sidebar__nav:hover{background:#fff3e6}.sidebar__nav--active,.sidebar__nav--active:hover{background:var(--c-coral-soft);color:#d9481f}.sidebar__nav-label{flex:1;min-width:0}.sidebar__divider{background:var(--c-line);height:1px;margin:8px}.sidebar__spacer{flex:1}.sidebar__online{display:flex;color:#147f73;align-items: center;gap:6px;margin:0;padding:8px 12px;font-size:10px;font-weight:700}.sidebar__online--off{color:var(--c-muted)}.sidebar__dot{background:#2bb673;border-radius:50%;flex:0 0 7px;width:7px;height:7px}.sidebar__online--off .sidebar__dot{background:var(--c-label)}.sidebar__child{display:flex;background:var(--c-surface);font-family:var(--font-sans);text-align:start;cursor:pointer;border:0;border-radius:16px;align-items: center;gap:9px;width:100%;padding:10px}.sidebar__child-avatar{display:grid;background:var(--c-mango-soft);border-radius:50%;flex:0 0 34px;place-items: center;width:34px;height:34px;font-size:18px;line-height:1}.sidebar__child-copy{display:flex;flex-direction:column;flex:1;gap:1px;min-width:0}.sidebar__child-name{overflow:hidden;color:var(--c-ink);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:800}.sidebar__child-meta{color:var(--c-muted);font-size:9.5px;font-weight:600}.sidebar__chevron{color:var(--c-label);flex:none}:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)) .sidebar__chevron{transform:scaleX(-1)}:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)) .sidebar__chevron{transform:scaleX(-1)}:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)) .sidebar__chevron{transform:scaleX(-1)}.sidebar__switch{color:var(--c-muted);font-family:var(--font-sans);text-align:center;cursor:pointer;background:0 0;border:0;padding:6px 0 0;font-size:10px;font-weight:800}.btn{display:inline-flex;justify-content:center;align-items: center;gap:var(--space-2);min-height:var(--touch-min);padding:0 var(--space-4);border-radius:var(--radius-pill);font-size:1.15rem;font-weight:800;font-family:var(--font-display);letter-spacing:.01em;cursor:pointer;box-shadow:var(--shadow-soft);transition:transform var(--motion-fast)var(--motion-out),box-shadow var(--motion-fast)var(--motion-out),filter var(--motion-fast)var(--motion-out);user-select:none;touch-action:manipulation;border:none}.btn:active:not(:disabled){box-shadow:none;transform:translateY(3px)scale(.95)}.btn:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}.btn--lg{padding:0 var(--space-5);min-height:80px;font-size:1.4rem}.btn--sm{padding:0 var(--space-3);min-height:56px;font-size:.95rem}.btn--primary{background:var(--c-primary);color:#fff}.btn--primary:hover:not(:disabled){filter:brightness(1.05)}.btn--secondary{background:var(--c-surface);color:var(--c-ink);border:3px solid var(--c-accent)}.btn--ghost{color:var(--c-muted);box-shadow:none;background:0 0}.btn--block{width:100%}.btn__icon{display:inline-flex;font-size:1.5em;line-height:1}.btn__label{white-space:nowrap}.pressable{transition:transform var(--motion-fast)var(--motion-out),box-shadow var(--motion-fast)var(--motion-out),filter var(--motion-fast)var(--motion-out);will-change:transform}.pressable:active:not(:disabled){transform:translateY(4px)scale(.96)}@keyframes motion-enter{0%{opacity:0;transform:translateY(14px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.motion-enter{animation:motion-enter var(--motion-slow)var(--motion-out)backwards}@keyframes motion-fade{0%{opacity:0}to{opacity:1}}.motion-fade{animation:motion-fade var(--motion-base)var(--motion-out)backwards}@keyframes motion-pop{0%{opacity:0;transform:scale(.5)}60%{opacity:1;transform:scale(1.12)}to{opacity:1;transform:scale(1)}}.motion-pop{animation:motion-pop var(--motion-slow)var(--motion-spring)both}.motion-pop--stagger-1{animation-delay:90ms}.motion-pop--stagger-2{animation-delay:.18s}.motion-pop--stagger-3{animation-delay:.27s}@keyframes motion-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.motion-bounce{animation:motion-bounce 1.8s var(--motion-out)infinite}@keyframes motion-glow{0%,to{filter:brightness(1)}50%{filter:brightness(1.08)}}.motion-glow{animation:2.2s ease-in-out infinite motion-glow}@keyframes motion-ring{0%{opacity:.85;transform:scale(.35)}to{opacity:0;transform:scale(1.6)}}.motion-ring{position:absolute;border:6px solid var(--c-accent);pointer-events:none;animation:motion-ring .9s var(--motion-out)forwards;border-radius:50%;inset:-18%}@keyframes motion-confetti{0%{opacity:1;transform:translateY(-12vh)rotate(0)}to{opacity:0;transform:translateY(78vh)rotate(540deg)}}.motion-confetti{position:fixed;pointer-events:none;user-select:none;animation:motion-confetti var(--motion-slow)linear forwards;font-size:1.6rem;line-height:1;top:0}.motion-stagger>*{animation:motion-enter var(--motion-base)var(--motion-out)backwards}.motion-stagger>:first-child{animation-delay:0s}.motion-stagger>:nth-child(2){animation-delay:45ms}.motion-stagger>:nth-child(3){animation-delay:90ms}.motion-stagger>:nth-child(4){animation-delay:.135s}.motion-stagger>:nth-child(5){animation-delay:.18s}.motion-stagger>:nth-child(6){animation-delay:.225s}.motion-stagger>:nth-child(7){animation-delay:.27s}.motion-stagger>:nth-child(8){animation-delay:.315s}.motion-stagger>:nth-child(n+9){animation-delay:.36s}.screen{display:flex;gap:var(--space-4);flex-direction:column;flex:1}.screen__header{display:flex;align-items: center;gap:var(--space-3)}.screen__title{font-family:var(--font-display);flex:1;font-size:clamp(1.8rem,4.5vw,2.6rem);font-weight:800}.screen__actions{display:flex;gap:var(--space-2);align-items: center}.screen__content{display:flex;gap:var(--space-4);flex-direction:column;flex:1}.screen__content--center{text-align:center;justify-content:center;align-items: center}.tile-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--space-4);width:100%}.tile{display:flex;justify-content:center;align-items: center;gap:var(--space-2);padding:var(--space-4);border-radius:var(--radius-lg);background:var(--c-surface);box-shadow:var(--shadow-soft);cursor:pointer;transition:transform var(--motion-fast)var(--motion-out),box-shadow var(--motion-fast)var(--motion-out);touch-action:manipulation;border:none;flex-direction:column;min-height:180px}.tile:active:not(:disabled){box-shadow:none;transform:translateY(4px)scale(.96)}.tile:disabled{opacity:.5;cursor:not-allowed}.tile__icon{font-size:3.5rem;line-height:1;font-family:var(--font-display)}.tile__label{font-family:var(--font-display);font-size:1.3rem;font-weight:800}.tile__hint{opacity:.75;font-size:.85rem;font-weight:700}.tile--primary{background:var(--c-primary);color:#fff}.tile--secondary{background:var(--c-secondary);color:#fff}.tile--accent{background:var(--c-accent);color:var(--c-ink)}.tile--success{background:var(--c-success);color:#fff}.switch{display:flex;justify-content:space-between;align-items: center;gap:var(--space-3);min-height:var(--touch-min);padding:var(--space-2)var(--space-3);background:var(--c-surface);border-radius:var(--radius-md);box-shadow:var(--shadow-soft)}.switch__label{font-size:1.05rem;font-weight:700}.switch__input{accent-color:var(--c-primary);cursor:pointer;width:44px;height:44px}.field{display:flex;gap:var(--space-1);flex-direction:column}.field__label{color:var(--c-muted);font-weight:700}.field__input,.field__select{min-height:var(--touch-min);padding:0 var(--space-3);border-radius:var(--radius-md);border:3px solid var(--c-bg-2);background:var(--c-surface)}.field__input:focus,.field__select:focus{border-color:var(--c-primary);outline:none}.panel{background:var(--c-surface);border-radius:var(--radius-lg);padding:var(--space-4);box-shadow:var(--shadow-soft);display:flex;gap:var(--space-3);flex-direction:column}.panel__title{font-size:1.2rem;font-weight:800}.panel__hint{color:var(--c-muted)}.crash{text-align:center;align-items: center;gap:var(--space-4);padding:var(--space-5);animation:motion-pop var(--motion-slow)var(--motion-spring)both;max-width:420px}.crash__emoji{animation:motion-bounce 2.4s var(--motion-out)infinite;font-size:4.5rem;line-height:1}.crash__text{font-family:var(--font-display);font-size:1.3rem;font-weight:800}.home{display:flex;padding:calc(12px + env(safe-area-inset-top,0px))20px calc(24px + env(safe-area-inset-bottom,0px));flex-direction:column;gap:18px}.home__header{display:flex;align-items: center;gap:8px}.home__greeting{display:flex;flex:1;align-items: center;gap:10px;min-width:0}.home__greeting-avatar{display:grid;background:var(--c-mango-soft);border-radius:50%;flex:0 0 48px;place-items: center;width:48px;height:48px;font-size:24px;line-height:1}.home__title-col{min-width:0}.home__title{font-family:var(--font-display);letter-spacing:-.01em;font-size:25px;font-weight:700;line-height:1.1}.home__subtitle{color:var(--c-muted);margin-block-start:2px;font-size:11.5px;font-weight:600}.home__header-right{display:none}.home__parent{display:inline-flex;border-radius:var(--radius-pill);background:var(--c-surface);color:var(--c-ink);font-family:var(--font-sans);cursor:pointer;border:0;flex:none;align-items: center;gap:6px;height:32px;padding-inline-start:12px;padding-inline-end:12px;font-size:10.5px;font-weight:800}.home__parent-icon{color:var(--c-primary)}.hero{display:none}.home__stats{display:flex;color:var(--c-muted);align-items: center;gap:7px;margin:0;font-size:11.5px;font-weight:600}.home__stats-strong{color:var(--c-ink);font-weight:800}.home__stats-icon{color:var(--c-accent)}.home__dot{background:#d8c9b6;border-radius:50%;width:4px;height:4px}.home__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.home-tile{display:flex;color:var(--c-ink);font-family:var(--font-sans);text-align:start;cursor:pointer;touch-action:manipulation;transition:transform var(--motion-fast)var(--motion-out),filter var(--motion-fast)var(--motion-out);border:0;border-radius:28px;flex-direction:column;justify-content:space-between;min-height:172px;padding:16px}.home-tile:active{filter:brightness(.97);transform:translateY(3px)scale(.985)}.home-tile__top{display:flex;justify-content:space-between;align-items: flex-start;width:100%}.home-tile__badge{display:grid;border-radius:15px;place-items: center;width:44px;height:44px}.home-tile__arrow{color:#2b1e3a66;margin-block-start:15px}.home-tile__copy{display:flex;flex-direction:column;gap:2px;width:100%}.home-tile__title{font-family:var(--font-display);font-size:22px;font-weight:700;line-height:1.1}.home-tile__hint{color:var(--c-ink);opacity:.9;font-size:10.5px;font-weight:700}.home-tile--coral{background:var(--c-coral)}.home-tile--coral .home-tile__badge{background:var(--c-coral-soft);color:var(--c-primary-dark)}.home-tile--sky{background:var(--c-sky)}.home-tile--sky .home-tile__badge{background:var(--c-sky-soft);color:var(--c-sky-ink)}.home-tile--mango{background:var(--c-mango)}.home-tile--mango .home-tile__badge{background:var(--c-mango-soft);color:var(--c-mango-ink)}.home-tile--leaf{background:var(--c-leaf)}.home-tile--leaf .home-tile__badge{background:var(--c-leaf-soft);color:var(--c-leaf-ink)}.home__bottom{display:flex;flex-direction:column;gap:14px}.progress-card,.next-reward{display:none}.reward-teaser{display:flex;background:var(--c-surface);border-radius:20px;align-items: center;gap:10px;min-height:58px;padding:12px 14px}.reward-teaser__icon{display:grid;background:var(--c-grape-soft);color:#6c5ce0;border-radius:12px;flex:0 0 34px;place-items: center;width:34px;height:34px}.reward-teaser__text{color:var(--c-ink);flex:1;min-width:0;font-size:11px;font-weight:700;line-height:1.3}.reward-teaser__count{color:#6c5ce0;font-size:11px;font-weight:800}.home__switch{display:flex;color:var(--c-muted);font-family:var(--font-sans);cursor:pointer;background:0 0;border:0;justify-content:center;align-items: center;gap:6px;padding:2px 0;font-size:11.5px;font-weight:800}.portrait{display:block;background:var(--c-surface);overflow:hidden;border-radius:50%;width:100%;height:100%}.portrait--fallback,.portrait__fallback{display:grid;place-items: center;width:100%;height:100%;font-size:96px;line-height:1}@media (min-width:900px){.home{padding:28px var(--shell-gutter)36px;gap:20px}.home__header{align-items: flex-start}.home__greeting-avatar{display:none}.home__title{font-size:31px}.home__subtitle{margin-block-start:2px;font-size:12.5px}.home__header-right{display:flex;align-items: center;gap:10px}.home__pill{display:inline-flex;border-radius:var(--radius-pill);background:var(--c-surface);align-items: center;gap:6px;height:32px;padding-inline-start:13px;padding-inline-end:13px;font-size:11.5px;font-weight:800}.home__pill-icon{color:var(--c-primary)}.home__pill-icon--star{color:#e0a008}.home__avatar{display:grid;background:var(--c-mango-soft);border-radius:50%;place-items: center;width:44px;height:44px;font-size:22px;line-height:1}.home__parent{display:none}.hero{position:relative;display:block;overflow:hidden;background:linear-gradient(135deg,#f97150 0%,#ff9c5a 100%);border-radius:30px;height:236px}.hero__copy{position:relative;z-index:2;display:flex;flex-direction:column;align-items: flex-start;gap:8px;width:540px;max-width:60%;padding-block-start:36px;padding-inline-start:40px}.hero__eyebrow{color:#ffffffeb;letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:10px;font-weight:800}.hero__title{font-family:var(--font-display);color:#fff;font-size:32px;font-weight:700;line-height:1.1}.hero__sub{color:#ffffffeb;margin:0;font-size:12.5px;font-weight:600}.hero__track{border-radius:var(--radius-pill);overflow:hidden;background:#fff3;width:240px;height:8px}.hero__fill{display:block;border-radius:inherit;background:#fff;height:100%}.hero__cta{display:inline-flex;border-radius:var(--radius-pill);color:var(--c-primary-dark);font-family:var(--font-sans);cursor:pointer;background:#fff;border:0;align-items: center;gap:6px;height:37px;margin-block-start:4px;padding-inline-start:16px;padding-inline-end:16px;font-size:12.5px;font-weight:800}.hero__mascot{position:absolute;z-index:2;background:var(--c-surface);overflow:hidden;border:4px solid #fff;border-radius:50%;width:220px;height:220px;top:8px}.hero__mascot:not(:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){right:60px}.hero__mascot:not(:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){right:60px}.hero__mascot:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){right:60px}.hero__mascot:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){left:60px}.hero__mascot:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){left:60px}.hero__mascot:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){left:60px}.hero__glow{position:absolute;background:#ffffff14;border-radius:50%}.hero__glow--a{width:320px;height:320px;top:-90px}.hero__glow--a:not(:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){right:100px}.hero__glow--a:not(:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){right:100px}.hero__glow--a:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){right:100px}.hero__glow--a:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){left:100px}.hero__glow--a:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){left:100px}.hero__glow--a:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){left:100px}.hero__glow--b{background:#ffffff0f;width:280px;height:280px;bottom:-160px}.hero__glow--b:not(:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:60px}.hero__glow--b:not(:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:60px}.hero__glow--b:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:60px}.hero__glow--b:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:60px}.hero__glow--b:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:60px}.hero__glow--b:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:60px}.hero__spark{position:absolute;z-index:1;color:#fff3d6}.hero__spark--1{color:#fff3d6;top:180px}.hero__spark--1:not(:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:40px}.hero__spark--1:not(:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:40px}.hero__spark--1:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:40px}.hero__spark--1:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:40px}.hero__spark--1:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:40px}.hero__spark--1:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:40px}.hero__spark--2{color:#fff;top:30px}.hero__spark--2:not(:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:560px}.hero__spark--2:not(:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:560px}.hero__spark--2:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:560px}.hero__spark--2:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:560px}.hero__spark--2:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:560px}.hero__spark--2:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:560px}.hero__spark--3{top:196px}.hero__spark--3:not(:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:600px}.hero__spark--3:not(:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:600px}.hero__spark--3:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:600px}.hero__spark--3:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:600px}.hero__spark--3:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:600px}.hero__spark--3:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:600px}.hero__spark--4{color:#fff;top:180px}.hero__spark--4:not(:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:800px}.hero__spark--4:not(:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:800px}.hero__spark--4:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:800px}.hero__spark--4:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:800px}.hero__spark--4:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:800px}.hero__spark--4:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:800px}.home__stats{display:none}.home__grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.home-tile{border-radius:26px;min-height:196px;padding:20px}.home-tile__badge{border-radius:16px;width:48px;height:48px}.home-tile__copy{gap:2px}.home-tile__title{font-size:23px}.home-tile__hint{font-size:11px}.home__bottom{flex-direction:row;gap:18px}.progress-card,.next-reward{display:flex;border-radius:24px;flex-direction:column;flex:1;gap:10px;min-height:150px;padding:20px}.progress-card{background:var(--c-surface)}.progress-card__title,.next-reward__title{font-family:var(--font-display);font-size:16px;font-weight:700}.progress-card__sub,.next-reward__sub{color:var(--c-muted);margin:0;font-size:11.5px;font-weight:600}.progress-card__track{border-radius:var(--radius-pill);overflow:hidden;background:#f1e5d5;height:9px}.progress-card__fill{display:block;border-radius:inherit;background:var(--c-primary);height:100%}.progress-card__legend{display:flex;list-style:none;color:var(--c-muted);flex-wrap:wrap;gap:18px;margin:0;padding:0;font-size:10.5px;font-weight:700}.progress-card__legend li{display:flex;align-items: center;gap:6px}.legend-dot{border-radius:50%;width:7px;height:7px}.legend-dot--coral{background:var(--c-primary)}.legend-dot--teal{background:var(--c-teal)}.legend-dot--mango{background:var(--c-accent)}.next-reward{background:var(--c-grape-soft)}.next-reward__head{display:flex;justify-content:space-between;align-items: center;gap:8px}.next-reward__left{display:flex;align-items: center;gap:8px}.next-reward__icon{color:#6c5ce0}.next-reward__count{color:#6c5ce0;font-size:11.5px;font-weight:800}.next-reward__sub{color:var(--c-grape-ink);font-size:11px;font-weight:700}.next-reward__track{border-radius:var(--radius-pill);overflow:hidden;background:#fff9;height:7px;margin-block-start:auto}.next-reward__fill{display:block;border-radius:inherit;background:var(--c-grape);height:100%}.reward-teaser,.home__switch{display:none}}@media (min-width:720px) and (max-width:899px){.home__grid{grid-template-columns:repeat(4,minmax(0,1fr))}.home-tile{min-height:196px}}@media (min-width:900px) and (max-width:1199px){.home__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero__copy{max-width:55%;padding-block-start:28px;padding-inline-start:28px}.hero__title{font-size:26px}.hero__mascot{width:168px;height:168px;top:34px}.hero__mascot:not(:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){right:32px}.hero__mascot:not(:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){right:32px}.hero__mascot:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){right:32px}.hero__mascot:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){left:32px}.hero__mascot:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){left:32px}.hero__mascot:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){left:32px}.hero__spark--2,.hero__spark--3,.hero__spark--4{display:none}.home__bottom{flex-direction:column}}:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)) .hero__cta svg{transform:scaleX(-1)}:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)) .hero__cta svg{transform:scaleX(-1)}:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)) .hero__cta svg{transform:scaleX(-1)}.tracing-canvas{position:relative;aspect-ratio:1;background:var(--c-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-pop);overflow:hidden;touch-action:none;width:100%;max-width:min(86vw,540px);margin:0 auto}.tracing-canvas canvas{display:block;width:100%;height:100%}.tracing-canvas--error{display:flex;padding:var(--space-4,16px);justify-content:center;align-items: center}.tracing-canvas__error{color:var(--c-muted);text-align:center;margin:0;font-size:.95rem}.writing{display:flex;padding:calc(10px + env(safe-area-inset-top,0px))20px calc(24px + env(safe-area-inset-bottom,0px));flex-direction:column;gap:14px}.writing__top{display:grid;grid-template-columns:auto minmax(0,1fr)auto;align-items: center;gap:8px;min-height:36px}.writing__back,.trace__back{display:inline-flex;border-radius:var(--radius-pill);background:var(--c-surface);color:var(--c-ink);font-family:var(--font-sans);cursor:pointer;border:0;align-items: center;gap:6px;height:30px;padding-inline-start:10px;padding-inline-end:13px;font-size:10.5px;font-weight:800}.writing__titles{text-align:center;min-width:0}.writing__title{font-family:var(--font-display);letter-spacing:-.01em;font-size:21px;font-weight:700;line-height:1.1}.writing__sub,.writing__meta{display:none}.writing__filter{display:flex;flex-direction:column;gap:12px}.play__tabs{display:flex;overflow-x:auto;scrollbar-width:none;gap:7px;padding-bottom:2px}.play__tabs::-webkit-scrollbar{display:none}.play__tab{border-radius:var(--radius-pill);background:var(--c-surface);color:var(--c-muted);font-family:var(--font-sans);white-space:nowrap;cursor:pointer;touch-action:manipulation;transition:background var(--motion-fast)var(--motion-out),color var(--motion-fast)var(--motion-out);border:0;flex:1 1 0;min-width:0;height:34px;padding-inline-start:8px;padding-inline-end:8px;font-size:10px;font-weight:800}.play__tab--active{background:var(--c-coral);color:#fff}.writing__progress{display:flex;align-items: center;gap:10px}.writing__track{display:none}.writing__progress-label{color:var(--c-muted);flex:1;min-width:0;font-size:11px;font-weight:700}.writing__progress-note{color:var(--c-label);font-size:10.5px;font-weight:700}.writing__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.writing__grid>:nth-child(-n+4){--tint:#ffe4db}.writing__grid>:nth-child(n+5):nth-child(-n+8){--tint:#ddf6f1}.writing__grid>:nth-child(n+9):nth-child(-n+12){--tint:#fff0d0}.writing__grid>:nth-child(n+13):nth-child(-n+16){--tint:#ede9ff}.writing__grid>:nth-child(n+17):nth-child(-n+20){--tint:#ffe4e9}.writing__grid>:nth-child(n+21):nth-child(-n+24){--tint:#e3f2fd}.writing__grid>:nth-child(n+25){--tint:#ffefda}.glyph-card{display:flex;aspect-ratio:82/78;background:var(--tint,#ffe4db);cursor:pointer;touch-action:manipulation;transition:transform var(--motion-fast)var(--motion-out),box-shadow var(--motion-fast)var(--motion-out);border:0;border-radius:18px;flex-direction:column;justify-content:center;align-items: center;gap:2px;padding:8px 4px}.glyph-card:active{transform:translateY(2px)scale(.96)}.glyph-card__glyph{color:var(--c-ink);font-family:var(--font-display);font-size:27px;font-weight:700;line-height:1}.glyph-card__status{display:flex;align-items: center;gap:4px}.glyph-card__dot{background:var(--dot,var(--c-label));border-radius:50%;flex:0 0 4px;width:4px;height:4px}.glyph-card__level{color:#8e8073;font-size:8.5px;font-weight:700}.glyph-card--learning{--dot:var(--c-mango)}.glyph-card--familiar{--dot:var(--c-sky)}.glyph-card--mastered{--dot:var(--c-leaf)}.glyph-card--mastered .glyph-card__level{color:#157a50}.writing__recs{display:none}.writing__hint{display:flex;color:var(--c-label);justify-content:center;align-items: center;gap:6px;font-size:10.5px;font-weight:700}.trace{--accent:var(--c-coral);--canvas-h:280px;display:flex;padding:calc(10px + env(safe-area-inset-top,0px))20px calc(20px + env(safe-area-inset-bottom,0px));flex-direction:column;gap:14px}.trace--grape{--accent:var(--c-grape)}.trace--mango{--accent:var(--c-mango);--canvas-h:250px}.trace__top{display:grid;grid-template-columns:minmax(0,1fr)auto minmax(0,1fr);align-items: center;gap:6px;min-height:45px}.trace__back{justify-self:start;height:36px;padding-inline-start:10px;padding-inline-end:14px}.trace__heading{text-align:center;min-width:0}.trace__title{font-family:var(--font-display);font-size:19px;font-weight:700;line-height:1.05}.trace__sub{color:var(--c-muted);font-size:10.5px;font-weight:700}.trace__aside{justify-self:end}.trace__chip{display:inline-flex;border-radius:var(--radius-pill);background:var(--c-surface);color:var(--c-muted);align-items: center;gap:4px;height:30px;padding-inline-start:12px;padding-inline-end:12px;font-size:11.5px;font-weight:800}.trace__chip-icon{color:var(--c-mango)}.trace__listen{display:inline-flex;border-radius:var(--radius-pill);background:var(--c-surface);color:var(--c-ink);font-family:var(--font-sans);cursor:pointer;border:0;align-items: center;gap:6px;height:30px;padding-inline-start:11px;padding-inline-end:13px;font-size:10.5px;font-weight:800}.trace__listen-icon{color:var(--c-coral)}.trace__body{display:grid;grid-template-areas:"strip" "word" "stage" "shapes" "strokes" "tip" "progress" "controls";grid-template-columns:minmax(0,1fr);gap:14px}.trace__strip{display:flex;grid-area:strip;overflow-x:auto;scrollbar-width:none;gap:7px;padding-bottom:2px}.trace__strip::-webkit-scrollbar{display:none}.trace__strip-item{display:grid;background:var(--c-surface);color:var(--c-ink);font-family:var(--font-display);cursor:pointer;touch-action:manipulation;border:0;border-radius:16px;flex:0 0 47px;place-items: center;height:47px;font-size:19px;font-weight:700}.trace__strip-item.is-active{background:var(--c-teal);color:#fff}.trace-word{display:flex;grid-area:word;justify-content:center;align-items: center;gap:8px;min-height:34px}.trace-word__badge{display:grid;background:var(--c-coral-soft);border-radius:50%;flex:0 0 30px;place-items: center;width:30px;height:30px;font-size:16px;line-height:1}.trace-word__text{color:var(--c-primary-dark);font-family:var(--font-display);font-size:17px;font-weight:700}.trace-word__listen{display:none}.trace__stage{grid-area:stage}.trace-card{position:relative;display:flex;background:var(--c-surface);box-shadow:var(--shadow-soft);border-radius:30px;flex-direction:column;padding:16px 18px 12px}.trace-card__label{color:#b9a996;letter-spacing:.05em;text-transform:uppercase;font-size:9.5px;font-weight:800}.trace-card__canvas{position:relative;height:var(--canvas-h);flex:none;margin-block-start:8px}.trace-card__canvas .tracing-canvas{aspect-ratio:auto;box-shadow:none;background:0 0;border-radius:20px;width:100%;max-width:none;height:100%}.trace-card__spark{position:absolute;pointer-events:none}.trace-card__spark--1{color:var(--c-mango);top:74px}.trace-card__spark--1:not(:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:24px}.trace-card__spark--1:not(:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:24px}.trace-card__spark--1:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:24px}.trace-card__spark--1:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:24px}.trace-card__spark--1:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:24px}.trace-card__spark--1:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:24px}.trace-card__spark--2{color:var(--c-pink);top:80px}.trace-card__spark--2:not(:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){right:22px}.trace-card__spark--2:not(:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){right:22px}.trace-card__spark--2:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){right:22px}.trace-card__spark--2:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){left:22px}.trace-card__spark--2:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){left:22px}.trace-card__spark--2:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){left:22px}.trace-card__spark--3{color:var(--c-grape);bottom:70px}.trace-card__spark--3:not(:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){right:26px}.trace-card__spark--3:not(:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){right:26px}.trace-card__spark--3:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){right:26px}.trace-card__spark--3:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){left:26px}.trace-card__spark--3:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){left:26px}.trace-card__spark--3:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){left:26px}.trace-card__foot{display:none}.trace__shape-pick{display:flex;grid-area:shapes;flex-direction:column;gap:8px}.trace__pick{font-family:var(--font-display);font-size:16px;font-weight:700}.trace__shapes{display:flex;overflow-x:auto;scrollbar-width:none;gap:8px;padding-bottom:4px}.trace__shapes::-webkit-scrollbar{display:none}.shape-chip{display:flex;background:var(--c-surface);cursor:pointer;touch-action:manipulation;border:2px solid #0000;border-radius:20px;flex-direction:column;flex:0 0 82px;justify-content:center;align-items: center;gap:5px;height:88px}.shape-chip.is-active{border-color:var(--c-accent);background:var(--c-mango-soft)}.shape-chip__glyph{color:var(--c-ink);font-size:26px;line-height:1}.shape-chip__name{color:var(--c-muted);font-size:9.5px;font-weight:800}.shape-chip.is-active .shape-chip__name{color:var(--c-mango-ink)}.trace-strokes{display:flex;grid-area:strokes;flex-direction:column;align-items: center;gap:7px}.trace-strokes__bars{display:flex;gap:6px}.trace-strokes__bar{border-radius:var(--radius-pill);background:#f6e3d0;width:20px;height:7px}.trace-strokes__bar.is-done{background:var(--accent)}.trace-strokes__label{color:var(--c-muted);font-size:11.5px;font-weight:800}.trace-tip{display:flex;grid-area:tip;align-items: center;gap:9px;min-height:42px}.trace-tip__icon{display:grid;background:var(--c-mango-soft);color:#c48a0e;border-radius:50%;flex:0 0 42px;place-items: center;width:42px;height:42px;font-size:21px;line-height:1}.trace-tip__text{color:var(--c-ink);font-size:11.5px;font-weight:600}.trace-tip--warn .trace-tip__text{color:var(--c-danger);font-weight:800}.trace-progress{display:none;grid-area:progress}.trace__controls{display:flex;grid-area:controls;align-items: center;gap:10px}.trace__reset{display:grid;background:var(--c-surface);color:var(--c-ink);box-shadow:var(--shadow-soft);cursor:pointer;border:0;border-radius:20px;flex:0 0 58px;place-items: center;width:58px;height:58px}.trace__done{display:inline-flex;background:var(--c-coral);color:#fff;font-family:var(--font-sans);cursor:pointer;touch-action:manipulation;border:0;border-radius:20px;flex:1;justify-content:center;align-items: center;gap:8px;height:58px;padding-inline-start:16px;padding-inline-end:16px;font-size:14px;font-weight:800}.trace__done--grape{background:var(--c-grape)}.trace__done--mango{background:var(--c-mango);color:var(--c-ink)}.trace-done{position:fixed;z-index:20;display:flex;background:var(--c-bg);overflow:hidden auto;animation:motion-fade var(--motion-base)var(--motion-out)both;flex-direction:column;justify-content:center;align-items: center;gap:14px;padding:24px;inset:0}.trace-done>*{position:relative;z-index:1;width:100%;max-width:340px}.trace-done__confetti{position:absolute;z-index:0;pointer-events:none;inset:0}.trace-done__piece{position:absolute;opacity:.9;animation:motion-pop var(--motion-slow)var(--motion-spring)both;border-radius:3px;width:9px;height:9px}.trace-done__piece--0{background:var(--c-coral)}.trace-done__piece--1{background:var(--c-mango)}.trace-done__piece--2{background:var(--c-teal)}.trace-done__piece--3{background:var(--c-grape)}.trace-done__piece--4{background:var(--c-sky)}.trace-done__piece:first-child{top:9%}.trace-done__piece:first-child:not(:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:12%}.trace-done__piece:first-child:not(:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:12%}.trace-done__piece:first-child:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:12%}.trace-done__piece:first-child:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:12%}.trace-done__piece:first-child:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:12%}.trace-done__piece:first-child:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:12%}.trace-done__piece:nth-child(2){border-radius:50%;top:14%}.trace-done__piece:nth-child(2):not(:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:78%}.trace-done__piece:nth-child(2):not(:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:78%}.trace-done__piece:nth-child(2):not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:78%}.trace-done__piece:nth-child(2):-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:78%}.trace-done__piece:nth-child(2):-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:78%}.trace-done__piece:nth-child(2):is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:78%}.trace-done__piece:nth-child(3){width:7px;height:7px;top:7%}.trace-done__piece:nth-child(3):not(:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:46%}.trace-done__piece:nth-child(3):not(:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:46%}.trace-done__piece:nth-child(3):not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:46%}.trace-done__piece:nth-child(3):-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:46%}.trace-done__piece:nth-child(3):-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:46%}.trace-done__piece:nth-child(3):is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:46%}.trace-done__piece:nth-child(4){top:22%}.trace-done__piece:nth-child(4):not(:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:6%}.trace-done__piece:nth-child(4):not(:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:6%}.trace-done__piece:nth-child(4):not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:6%}.trace-done__piece:nth-child(4):-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:6%}.trace-done__piece:nth-child(4):-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:6%}.trace-done__piece:nth-child(4):is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:6%}.trace-done__piece:nth-child(5){top:19%}.trace-done__piece:nth-child(5):not(:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:88%}.trace-done__piece:nth-child(5):not(:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:88%}.trace-done__piece:nth-child(5):not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:88%}.trace-done__piece:nth-child(5):-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:88%}.trace-done__piece:nth-child(5):-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:88%}.trace-done__piece:nth-child(5):is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:88%}.trace-done__piece:nth-child(6){border-radius:50%;width:7px;height:7px;top:33%}.trace-done__piece:nth-child(6):not(:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:16%}.trace-done__piece:nth-child(6):not(:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:16%}.trace-done__piece:nth-child(6):not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:16%}.trace-done__piece:nth-child(6):-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:16%}.trace-done__piece:nth-child(6):-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:16%}.trace-done__piece:nth-child(6):is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:16%}.trace-done__piece:nth-child(7){top:30%}.trace-done__piece:nth-child(7):not(:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:82%}.trace-done__piece:nth-child(7):not(:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:82%}.trace-done__piece:nth-child(7):not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:82%}.trace-done__piece:nth-child(7):-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:82%}.trace-done__piece:nth-child(7):-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:82%}.trace-done__piece:nth-child(7):is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:82%}.trace-done__piece:nth-child(8){bottom:12%}.trace-done__piece:nth-child(8):not(:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:10%}.trace-done__piece:nth-child(8):not(:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:10%}.trace-done__piece:nth-child(8):not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:10%}.trace-done__piece:nth-child(8):-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:10%}.trace-done__piece:nth-child(8):-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:10%}.trace-done__piece:nth-child(8):is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:10%}.trace-done__piece:nth-child(9){width:7px;height:7px;bottom:16%}.trace-done__piece:nth-child(9):not(:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:86%}.trace-done__piece:nth-child(9):not(:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:86%}.trace-done__piece:nth-child(9):not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:86%}.trace-done__piece:nth-child(9):-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:86%}.trace-done__piece:nth-child(9):-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:86%}.trace-done__piece:nth-child(9):is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:86%}.trace-done__piece:nth-child(10){border-radius:50%;bottom:26%}.trace-done__piece:nth-child(10):not(:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:50%}.trace-done__piece:nth-child(10):not(:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:50%}.trace-done__piece:nth-child(10):not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:50%}.trace-done__piece:nth-child(10):-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:50%}.trace-done__piece:nth-child(10):-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:50%}.trace-done__piece:nth-child(10):is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:50%}.trace-done__avatar{display:grid;background:var(--c-mango-soft);animation:motion-pop var(--motion-slow)var(--motion-spring)both;border-radius:50%;place-items: center;width:128px;height:128px;margin-inline-start:auto;margin-inline-end:auto;font-size:62px;line-height:1}.trace-done__title{font-family:var(--font-display);text-align:center;animation:motion-pop var(--motion-slow)var(--motion-spring)both;animation-delay:80ms;font-size:29px;font-weight:700}.trace-done__sub{color:var(--c-muted);text-align:center;font-size:12.5px;font-weight:600}.trace-done__chips{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}.trace-done__chip{display:inline-flex;border-radius:var(--radius-pill);background:var(--c-mango-soft);color:var(--c-mango-ink);align-items: center;gap:5px;height:30px;padding-inline-start:12px;padding-inline-end:12px;font-size:11px;font-weight:800}.trace-done__chip--grape{background:var(--c-grape-soft);color:var(--c-grape-ink)}.trace-done__chip-icon{color:currentColor}.trace-done__primary{display:inline-flex;background:var(--c-coral);color:#fff;font-family:var(--font-sans);cursor:pointer;touch-action:manipulation;border:0;border-radius:20px;justify-content:center;align-items: center;gap:8px;height:56px;font-size:14px;font-weight:800;box-shadow:0 10px 24px #f9715052}.trace-done__ghost{display:inline-flex;color:var(--c-muted);font-family:var(--font-sans);cursor:pointer;background:0 0;border:0;justify-content:center;align-self: center;align-items: center;gap:6px;padding:6px;font-size:12px;font-weight:800}.play__stars{display:flex;justify-content:center;gap:.15em;font-size:clamp(2.2rem,11vw,3.2rem);line-height:1}.play__star{display:inline-block;transform-origin:center}@media (min-width:900px){.writing{padding:28px var(--shell-gutter)36px;gap:18px}.writing__top{display:flex;justify-content:space-between;align-items: flex-start;gap:24px}.writing__back{display:none}.writing__titles{text-align:start}.writing__title{font-size:31px}.writing__sub{display:block;color:var(--c-muted);margin-block-start:4px;font-size:12.5px;font-weight:600}.writing__meta{display:flex;flex:none;align-items: center;gap:10px}.writing__pill{display:inline-flex;border-radius:var(--radius-pill);background:var(--c-surface);align-items: center;gap:6px;height:32px;padding-inline-start:13px;padding-inline-end:13px;font-size:11.5px;font-weight:800}.writing__pill-icon{color:var(--c-primary)}.writing__pill-icon--star{color:#e0a008}.writing__avatar{display:grid;background:var(--c-mango-soft);border-radius:50%;place-items: center;width:44px;height:44px;font-size:22px;line-height:1}.writing__filter{flex-direction:row;justify-content:space-between;align-items: center;gap:24px}.play__tab{flex:none;height:35px;padding-inline-start:16px;padding-inline-end:16px;font-size:11px}.writing__progress{flex:none;gap:10px}.writing__track{display:block;border-radius:var(--radius-pill);overflow:hidden;background:#f1e5d5;order:2;width:140px;height:8px}.writing__fill{display:block;border-radius:var(--radius-pill);background:var(--c-leaf);transition:width var(--motion-base)var(--motion-out);height:100%}.writing__progress-label{flex:none;order:1;font-size:11.5px}.writing__progress-note{display:none}.writing__grid{grid-template-columns:repeat(9,minmax(0,1fr));gap:10px}.writing__grid>:nth-child(n+1):nth-child(-n+9){--tint:#ffe4db}.writing__grid>:nth-child(n+10):nth-child(-n+18){--tint:#ddf6f1}.writing__grid>:nth-child(n+19):nth-child(-n+27){--tint:#fff0d0}.glyph-card{aspect-ratio:117/116;border-radius:20px;gap:3px}.glyph-card__glyph{font-size:34px}.glyph-card__level{font-size:10px}.writing__hint{display:none}.writing__recs{display:block;margin-block-start:4px}.writing__recs-title{font-family:var(--font-display);font-size:17px;font-weight:700}.writing__recs-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-block-start:12px}.rec-card{display:flex;background:var(--c-surface);text-align:start;cursor:pointer;border:0;border-radius:20px;align-items: center;gap:12px;padding:20px 16px}.rec-card__tile{display:grid;color:var(--c-ink);font-family:var(--font-display);background:#ffe4db;border-radius:16px;flex:0 0 52px;place-items: center;width:52px;height:52px;font-size:24px;font-weight:700;line-height:1}.rec-card__tile--learning{background:var(--c-mango-soft)}.rec-card__tile--familiar{background:var(--c-sky-soft)}.rec-card__copy{display:flex;flex-direction:column;flex:1;gap:1px;min-width:0}.rec-card__title{overflow:hidden;font-family:var(--font-display);text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:700}.rec-card__sub{color:var(--c-muted);font-size:11px;font-weight:600}.rec-card__chevron{color:#c9bbaa;flex:none}.trace{padding:28px var(--shell-gutter)36px;gap:16px}.trace__top{display:flex;justify-content:space-between;align-items: flex-start;gap:24px;min-height:44px}.trace__back{display:none}.trace__heading{text-align:start}.trace__title{font-size:31px;line-height:1.1}.trace__sub{margin-block-start:4px;font-size:12.5px;font-weight:600}.trace__listen{gap:7px;height:36px;padding-inline-start:14px;padding-inline-end:16px;font-size:11.5px}.trace__chip{height:36px;padding-inline-start:14px;padding-inline-end:14px;font-size:12.5px}.trace__body{grid-template-columns:minmax(0,1fr)332px;grid-template-rows:auto auto auto auto auto 1fr auto;grid-template-areas:"strip strip" "stage word" "stage strokes" "stage shapes" "stage tip" "stage progress" "stage controls";align-items: start;gap:16px}.trace__strip-item{flex-basis:52px;height:52px;font-size:21px}.trace-word{background:var(--c-surface);border-radius:22px;justify-content:flex-start;gap:12px;min-height:0;padding:18px}.trace-word__badge{flex-basis:44px;width:44px;height:44px;font-size:22px}.trace-word__text{flex:1;min-width:0;font-size:16px}.trace-word__listen{display:inline-flex;border-radius:var(--radius-pill);background:var(--c-coral-soft);color:var(--c-primary-dark);font-family:var(--font-sans);cursor:pointer;border:0;align-items: center;gap:6px;height:34px;padding-inline-start:12px;padding-inline-end:14px;font-size:11px;font-weight:800}.trace__stage{align-self:stretch;height:100%}.trace-card{height:100%;min-height:560px;padding:24px 26px 18px}.trace-card__label{font-size:10px}.trace-card__canvas{flex:auto;height:auto;min-height:420px;margin-block-start:12px}.trace-card__canvas .tracing-canvas{max-width:560px;margin-inline-start:auto;margin-inline-end:auto}.trace-card__spark--1{top:110px}.trace-card__spark--1:not(:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:70px}.trace-card__spark--1:not(:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:70px}.trace-card__spark--1:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:70px}.trace-card__spark--1:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:70px}.trace-card__spark--1:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:70px}.trace-card__spark--1:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:70px}.trace-card__spark--2{top:120px}.trace-card__spark--2:not(:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){right:80px}.trace-card__spark--2:not(:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){right:80px}.trace-card__spark--2:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){right:80px}.trace-card__spark--2:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){left:80px}.trace-card__spark--2:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){left:80px}.trace-card__spark--2:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){left:80px}.trace-card__spark--3{bottom:90px}.trace-card__spark--3:not(:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){right:70px}.trace-card__spark--3:not(:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){right:70px}.trace-card__spark--3:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){right:70px}.trace-card__spark--3:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){left:70px}.trace-card__spark--3:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){left:70px}.trace-card__spark--3:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){left:70px}.trace-card__foot{display:block;color:var(--c-label);margin-block-start:12px;font-size:10.5px;font-weight:700}.trace__pick{font-size:16px}.trace-strokes{background:var(--c-surface);border-radius:22px;flex-direction:column-reverse;align-items:stretch;gap:10px;padding:18px}.trace-strokes__bar{flex:1;height:7px}.trace-strokes__label{font-size:12px}.trace-tip{background:var(--c-mango-soft);border-radius:22px;align-items: flex-start;gap:10px;padding:18px}.trace-tip__icon{background:var(--c-surface);flex-basis:34px;width:34px;height:34px;font-size:17px}.trace-tip__text{color:#8a6208;font-size:12px;font-weight:700}.trace-tip--warn{background:#ffe4e9}.trace-tip--warn .trace-tip__text{color:var(--c-danger)}.trace-progress{display:block;background:var(--c-surface);border-radius:22px;padding:16px 18px}.trace-progress__head{display:flex;color:var(--c-muted);justify-content:space-between;align-items: center;margin-block-end:8px;font-size:11px;font-weight:800}.trace-progress__value{color:var(--c-ink)}.trace-progress__track{border-radius:var(--radius-pill);overflow:hidden;background:#f1e5d5;height:8px}.trace-progress__fill{display:block;border-radius:var(--radius-pill);background:var(--accent);transition:width .15s var(--motion-out);height:100%}.trace-done{gap:16px}.trace-done__avatar{width:152px;height:152px;font-size:74px}.trace-done__title{font-size:34px}.trace-done__primary{height:58px;font-size:15px}}.play__overlay{position:fixed;z-index:10;display:flex;justify-content:center;align-items: center;gap:var(--space-4);padding:var(--space-4);animation:motion-fade var(--motion-base)var(--motion-out)both;background:#fff7ecf0;flex-direction:column;inset:0}.play__overlay-title{font-family:var(--font-display);animation:motion-pop var(--motion-slow)var(--motion-spring)both;animation-delay:.12s;font-size:clamp(1.8rem,6vw,2.8rem)}.play__overlay-actions{display:flex;gap:var(--space-3);flex-wrap:wrap;justify-content:center}:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)) .writing__back svg{transform:scaleX(-1)}:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)) .writing__back svg{transform:scaleX(-1)}:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)) .writing__back svg{transform:scaleX(-1)}:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)) .trace__back svg{transform:scaleX(-1)}:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)) .trace__back svg{transform:scaleX(-1)}:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)) .trace__back svg{transform:scaleX(-1)}:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)) .rec-card__chevron{transform:scaleX(-1)}:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)) .rec-card__chevron{transform:scaleX(-1)}:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)) .rec-card__chevron{transform:scaleX(-1)}.games__hub{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--space-4);width:100%}.games__modes{display:flex;gap:var(--space-2);flex-wrap:wrap}.games__prompt{display:flex;align-items: center;gap:var(--space-2);padding:var(--space-4);background:var(--c-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-pop);flex-direction:column;width:100%;max-width:540px;margin:0 auto}.games__prompt-label{font-size:clamp(3rem,14vw,5rem);font-weight:800;line-height:1}.games__prompt-text{color:var(--c-muted);text-align:center;font-weight:800}.games__options{display:grid;grid-template-columns:repeat(auto-fit,minmax(96px,1fr));gap:var(--space-3);width:100%;max-width:620px;margin:0 auto}.option-card{display:flex;aspect-ratio:1;border:4px solid var(--c-bg-2);border-radius:var(--radius-lg);background:var(--c-surface);box-shadow:var(--shadow-soft);font-family:var(--font-display);cursor:pointer;transition:transform var(--motion-fast)var(--motion-out),border-color var(--motion-fast)var(--motion-out),background var(--motion-fast)var(--motion-out);touch-action:manipulation;justify-content:center;align-items: center;font-size:clamp(1.8rem,6vw,2.8rem);font-weight:800}.option-card:active{box-shadow:none;transform:translateY(3px)scale(.95)}.option-card--correct{border-color:var(--c-success);background:#e8fbf1}.option-card--wrong{border-color:var(--c-danger);animation:.4s shake}.option-card--hint{animation:1s infinite pulse}.balloon-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:var(--space-4);width:100%;max-width:640px;margin:0 auto}.balloon{position:relative;display:flex;aspect-ratio:3/4;color:#fff;cursor:pointer;box-shadow:var(--shadow-soft);animation:3s ease-in-out infinite float;touch-action:manipulation;border:none;border-radius:50% 50% 45% 45%;justify-content:center;align-items: center;font-size:clamp(1.8rem,6vw,2.6rem);font-weight:800}.balloon--0{background:#ff7a45}.balloon--1{background:#4cc9f0}.balloon--2{background:#9b5de5}.balloon--3{background:#57cc99}.balloon--pop{animation:.35s forwards pop}.balloon--shake{animation:.4s shake}.balloon--hint{animation:1s infinite pulse}.balloon__label{pointer-events:none}.balloon__string{position:absolute;background:var(--c-muted);width:2px;height:22px;bottom:-18px;left:50%;transform:translate(-50%)}.coloring__stage{position:relative;aspect-ratio:1;background:var(--c-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-pop);touch-action:none;width:100%;max-width:420px;margin:0 auto}.coloring__svg{width:100%;height:100%}.coloring__stroke{cursor:pointer}.coloring__stroke-line{fill:none;stroke-linecap:round;stroke-linejoin:round}.coloring__sticker{user-select:none;font-size:10px}.coloring__palette{display:flex;gap:var(--space-2);flex-wrap:wrap;justify-content:center}.swatch{cursor:pointer;box-shadow:var(--shadow-soft);touch-action:manipulation;transition:transform var(--motion-fast)var(--motion-out),border-color var(--motion-fast)var(--motion-out);border:4px solid #0000;border-radius:50%;width:64px;height:64px}.swatch:active{transform:scale(.92)}.swatch--active{border-color:var(--c-ink);transform:scale(1.08)}.swatch--sticker{display:flex;background:var(--c-bg-2);justify-content:center;align-items: center;font-size:1.6rem}.games__actions{display:flex;gap:var(--space-3);flex-wrap:wrap;justify-content:center}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-14px)}}@keyframes pop{0%{transform:scale(1);opacity:1}60%{transform:scale(1.25);opacity:.9}to{transform:scale(.2);opacity:0}}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-8px)}75%{transform:translate(8px)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.06)}}.balloon:active{transform:translateY(4px)scale(.94)}.balloon--pop{animation:pop .35s var(--motion-out)forwards}.games{display:flex;padding:calc(10px + env(safe-area-inset-top,0px))20px calc(24px + env(safe-area-inset-bottom,0px));flex-direction:column;gap:14px}.games__top,.match__top,.balloon-game__top,.coloring-game__top{display:grid;grid-template-columns:auto minmax(0,1fr)auto;align-items: center;gap:8px;min-height:36px}.games__back,.match__back,.balloon-game__back,.coloring-game__back{display:inline-flex;border-radius:var(--radius-pill);background:var(--c-surface);color:var(--c-ink);cursor:pointer;border:0;align-items: center;gap:6px;height:30px;padding-inline-start:10px;padding-inline-end:13px;font-size:10.5px;font-weight:800}.games__titles,.match__titles,.balloon-game__titles,.coloring-game__titles{text-align:center;min-width:0}.games__title,.match__title,.balloon-game__title,.coloring-game__title{font-family:var(--font-display);font-size:21px;font-weight:700;line-height:1.1}.games__sub,.match__sub,.balloon-game__sub,.coloring-game__sub,.games__meta,.match__meta,.balloon-game__meta,.coloring-game__meta{display:none}.games__hub{display:flex;flex-direction:column;gap:12px}.game-card{display:flex;text-align:start;cursor:pointer;touch-action:manipulation;transition:transform var(--motion-fast)var(--motion-out);border:0;border-radius:30px;align-items: center;gap:14px;min-height:150px;padding:16px}.game-card:active{transform:translateY(2px)scale(.98)}.game-card--coral{background:var(--c-coral);color:#fff}.game-card--sky{background:var(--c-sky);color:#fff}.game-card--mango{background:var(--c-mango);color:var(--c-ink)}.game-card__icon{display:grid;background:#ffffff47;border-radius:22px;flex:0 0 62px;place-items: center;width:62px;height:62px;font-size:30px;line-height:1}.game-card--mango .game-card__icon{background:#ffffff73}.game-card__copy{display:flex;flex-direction:column;flex:1;gap:2px;min-width:0}.game-card__title{font-family:var(--font-display);font-size:22px;font-weight:700;line-height:1.1}.game-card__sub{opacity:.92;font-size:11.5px;font-weight:600}.game-card__play{display:inline-flex;border-radius:var(--radius-pill);color:var(--c-ink);background:#ffffffeb;flex:none;align-items: center;gap:6px;height:38px;padding-inline-start:14px;padding-inline-end:14px;font-size:11.5px;font-weight:800}.games__footer{display:flex;color:var(--c-label);justify-content:center;align-items: center;gap:6px;font-size:10.5px;font-weight:700}.games__footer-icon{color:var(--c-mango)}.games__bottom{display:none}.match{display:flex;padding:calc(10px + env(safe-area-inset-top,0px))20px calc(24px + env(safe-area-inset-bottom,0px));flex-direction:column;gap:14px}.match__modes{display:flex;gap:8px}.match__mode{border-radius:var(--radius-pill);background:var(--c-surface);color:var(--c-muted);cursor:pointer;border:0;flex:1;height:34px;font-size:11px;font-weight:800}.match__mode.is-active{background:var(--c-coral);color:#fff}.match__prompt{display:flex;background:var(--c-surface);box-shadow:var(--shadow-pop);border-radius:28px;flex-direction:column;align-items: center;gap:6px;padding:20px}.match__prompt-label{font-family:var(--font-display);color:var(--c-ink);font-size:clamp(3rem,14vw,5rem);font-weight:800;line-height:1}.match__prompt-text{color:var(--c-muted);text-align:center;font-size:12px;font-weight:800}.match__options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.match__meta{display:none}.match__chip{display:inline-flex;border-radius:var(--radius-pill);background:var(--c-surface);color:var(--c-muted);align-items: center;height:30px;padding-inline-start:12px;padding-inline-end:12px;font-size:11.5px;font-weight:800}.match__feedback{display:flex;border-radius:18px;justify-content:center;align-items: center;gap:6px;padding:10px 14px;font-size:12px;font-weight:800}.match__feedback--ok{color:#0a7f74;background:#e8fbf1}.match__feedback--bad{color:var(--c-danger);background:#ffe4e9}.balloon-game{display:flex;padding:calc(10px + env(safe-area-inset-top,0px))20px calc(24px + env(safe-area-inset-bottom,0px));flex-direction:column;gap:14px}.balloon-game__prompt{display:flex;background:var(--c-surface);box-shadow:var(--shadow-soft);border-radius:22px;flex-direction:column;align-items: center;gap:8px;padding:16px}.balloon-game__listen{display:inline-flex;border-radius:var(--radius-pill);background:var(--c-sky-soft);color:var(--c-sky-ink);cursor:pointer;border:0;align-items: center;gap:6px;height:34px;padding-inline-start:12px;padding-inline-end:14px;font-size:11.5px;font-weight:800}.balloon-game__prompt-text{color:var(--c-muted);text-align:center;font-size:12px;font-weight:800}.balloon-game__meta,.balloon-game__chip{display:none}.balloon-game__score{display:flex;color:var(--c-muted);justify-content:center;align-items: center;gap:6px;font-size:11.5px;font-weight:700}.balloon-game__score-icon{color:var(--c-accent)}.coloring-game{display:flex;padding:calc(10px + env(safe-area-inset-top,0px))20px calc(24px + env(safe-area-inset-bottom,0px));flex-direction:column;gap:12px}.coloring-game__hint{color:var(--c-muted);text-align:center;font-size:11.5px;font-weight:700}.coloring-game__meta,.coloring-game__chip{display:none}.coloring__actions{display:flex;gap:var(--space-3);flex-wrap:wrap;justify-content:center}@media (min-width:900px){.games{padding:28px var(--shell-gutter)36px;gap:18px}.games__top{display:flex;justify-content:space-between;align-items: flex-start;gap:24px}.games__back{display:none}.games__titles{text-align:start}.games__title{font-size:31px}.games__sub{display:block;color:var(--c-muted);margin-block-start:4px;font-size:12.5px;font-weight:600}.games__meta{display:flex;flex:none;align-items: center;gap:10px}.games__pill{display:inline-flex;border-radius:var(--radius-pill);background:var(--c-surface);align-items: center;gap:6px;height:32px;padding-inline-start:13px;padding-inline-end:13px;font-size:11.5px;font-weight:800}.games__pill-icon{color:var(--c-primary)}.games__pill-icon--star{color:#e0a008}.games__avatar{display:grid;background:var(--c-mango-soft);border-radius:50%;place-items: center;width:44px;height:44px;font-size:22px;line-height:1}.games__hub{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.game-card{border-radius:30px;flex-direction:column;justify-content:space-between;align-items: flex-start;min-height:400px;padding:24px}.game-card__icon{border-radius:22px;width:60px;height:60px;font-size:28px}.game-card__title{font-size:24px}.game-card__sub{font-size:12.5px}.game-card__play{height:38px;font-size:12px}.games__footer{display:none}.games__bottom{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.games__score-card,.games__reward-card{display:flex;background:var(--c-surface);border-radius:24px;flex-direction:column;gap:12px;padding:20px}.games__score-title,.games__reward-title{font-family:var(--font-display);font-size:16px;font-weight:700}.games__score-stats{display:flex;gap:12px}.games__score-stat{display:inline-flex;align-items: center;gap:6px;font-size:13px;font-weight:800}.games__score-stat-icon{color:var(--c-mango)}.games__score-sub{color:var(--c-muted);font-size:10.5px;font-weight:700}.games__reward-card{background:var(--c-grape-soft)}.games__reward-head{display:flex;align-items: center;gap:8px}.games__reward-icon{color:var(--c-grape)}.games__reward-title{color:var(--c-grape-ink)}.games__reward-sub{color:var(--c-grape-ink);font-size:10.5px;font-weight:700}.games__reward-track{border-radius:var(--radius-pill);overflow:hidden;background:#fff9;height:7px}.games__reward-fill{display:block;border-radius:var(--radius-pill);background:var(--c-grape);height:100%}.match{padding:28px var(--shell-gutter)36px;gap:16px}.match__top{display:flex;justify-content:space-between;align-items: flex-start;gap:24px}.match__back{display:none}.match__titles{text-align:start}.match__title{font-size:31px}.match__sub{display:block;color:var(--c-muted);margin-block-start:4px;font-size:12.5px;font-weight:600}.match__meta{display:flex;flex:none;align-items: center;gap:10px}.match__chip{height:32px;padding-inline-start:13px;padding-inline-end:13px;font-size:11.5px}.match__prompt{max-width:540px;margin-inline-start:auto;margin-inline-end:auto}.balloon-game{padding:28px var(--shell-gutter)36px;gap:16px}.balloon-game__top{display:flex;justify-content:space-between;align-items: flex-start;gap:24px}.balloon-game__back{display:none}.balloon-game__titles{text-align:start}.balloon-game__title{font-size:31px}.balloon-game__sub{display:block;color:var(--c-muted);margin-block-start:4px;font-size:12.5px;font-weight:600}.balloon-game__meta{display:flex;flex:none;align-items: center;gap:10px}.coloring-game{padding:28px var(--shell-gutter)36px;gap:16px}.coloring-game__top{display:flex;justify-content:space-between;align-items: flex-start;gap:24px}.coloring-game__back{display:none}.coloring-game__titles{text-align:start}.coloring-game__title{font-size:31px}.coloring-game__sub{display:block;color:var(--c-muted);margin-block-start:4px;font-size:12.5px;font-weight:600}.coloring-game__meta{display:flex;flex:none;align-items: center;gap:10px}.coloring-game__chip{display:inline-flex;border-radius:var(--radius-pill);background:var(--c-surface);color:var(--c-muted);align-items: center;height:32px;padding-inline-start:13px;padding-inline-end:13px;font-size:11.5px;font-weight:800}}:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)) .games__back svg{transform:scaleX(-1)}:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)) .games__back svg{transform:scaleX(-1)}:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)) .games__back svg{transform:scaleX(-1)}:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)) .match__back svg{transform:scaleX(-1)}:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)) .match__back svg{transform:scaleX(-1)}:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)) .match__back svg{transform:scaleX(-1)}:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)) .balloon-game__back svg{transform:scaleX(-1)}:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)) .balloon-game__back svg{transform:scaleX(-1)}:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)) .balloon-game__back svg{transform:scaleX(-1)}:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)) .coloring-game__back svg{transform:scaleX(-1)}:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)) .coloring-game__back svg{transform:scaleX(-1)}:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)) .coloring-game__back svg{transform:scaleX(-1)}.avatar__body{display:flex;flex-direction:column;gap:14px}.avatar__sections{display:flex;flex-direction:column;gap:12px}.avatar__stage{aspect-ratio:1;border-radius:var(--radius-lg);box-shadow:var(--shadow-pop);overflow:hidden;touch-action:none;background:linear-gradient(#eaf7ff,#fff7e6);width:100%;max-width:260px;margin:0 auto}.avatar__fallback{display:flex;justify-content:center;align-items: center;width:100%;height:100%;font-size:6rem}.avatar__options{display:flex;gap:var(--space-2);overflow-x:auto;scrollbar-width:none;flex-wrap:nowrap;padding-bottom:4px}.avatar__options::-webkit-scrollbar{display:none}.avatar__option{display:flex;border:3px solid var(--c-bg-2);border-radius:var(--radius-md);background:var(--c-surface);cursor:pointer;touch-action:manipulation;flex-direction:column;align-items: center;gap:4px;min-width:72px;padding:6px}.avatar__option--active{border-color:var(--c-primary);background:#fff2ea}.avatar__option--locked{opacity:.55;cursor:not-allowed}.avatar__swatch{display:flex;background:var(--c-bg-2);border-radius:50%;justify-content:center;align-items: center;width:44px;height:44px;font-size:1.4rem}.avatar__option-name{text-align:center;font-size:.78rem;font-weight:800}.avatar{display:flex;padding:calc(8px + env(safe-area-inset-top,0px))20px calc(16px + env(safe-area-inset-bottom,0px));flex-direction:column;gap:12px}.avatar__top{display:grid;grid-template-columns:auto minmax(0,1fr)auto;align-items: center;gap:8px;min-height:36px}.avatar__back{display:inline-flex;border-radius:var(--radius-pill);background:var(--c-surface);color:var(--c-ink);cursor:pointer;border:0;align-items: center;gap:6px;height:30px;padding-inline-start:10px;padding-inline-end:13px;font-size:10.5px;font-weight:800}.avatar__titles{text-align:center;min-width:0}.avatar__title{font-family:var(--font-display);font-size:21px;font-weight:700;line-height:1.1}.avatar__sub,.avatar__meta{display:none}.avatar__section{display:flex;flex-direction:column;gap:8px}.avatar__section-title{font-family:var(--font-display);font-size:16px;font-weight:700}.avatar__footer{display:flex;color:var(--c-label);justify-content:center;align-items: center;gap:6px;font-size:10.5px;font-weight:700}@media (min-width:900px){.avatar{padding:28px var(--shell-gutter)36px;gap:18px}.avatar__top{display:flex;justify-content:space-between;align-items: flex-start;gap:24px}.avatar__back{display:none}.avatar__titles{text-align:start}.avatar__title{font-size:31px}.avatar__sub{display:block;color:var(--c-muted);margin-block-start:4px;font-size:12.5px;font-weight:600}.avatar__meta{display:flex;flex:none;align-items: center;gap:10px}.avatar__stage{max-width:420px}.avatar__body{flex-direction:row;align-items: flex-start;gap:24px}.avatar__stage{flex:0 0 420px;max-width:420px}.avatar__sections{flex:1}}.rewards__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(104px,1fr));gap:var(--space-3)}.reward-card{display:flex;padding:var(--space-2);border:3px dashed var(--c-bg-2);border-radius:var(--radius-md);background:var(--c-bg);text-align:center;flex-direction:column;align-items: center;gap:2px;margin:0}.reward-card--unlocked{border:3px solid var(--c-success);background:var(--c-surface);box-shadow:var(--shadow-soft);position:relative;overflow:visible}.reward-card__emoji{filter:grayscale(1);opacity:.55;font-size:2.2rem;line-height:1.1}.reward-card--unlocked .reward-card__emoji{filter:none;opacity:1}.reward-card__name{font-size:.85rem;font-weight:800}.reward-card__progress{color:var(--c-muted);font-size:.75rem;font-weight:700}.reward-card__requirement{color:var(--c-muted);font-size:.7rem}.rewards__celebration{display:flex;gap:var(--space-3);flex-wrap:wrap;justify-content:center;max-width:520px}.rewards__burst{font-size:clamp(3rem,14vw,5rem);line-height:1}.rewards__celebrate{position:fixed;overflow:hidden}.rewards__confetti{position:absolute;pointer-events:none;z-index:0;inset:0}.rewards__celebrate>:not(.rewards__confetti){position:relative;z-index:1}.collection{display:flex;padding:calc(10px + env(safe-area-inset-top,0px))20px calc(24px + env(safe-area-inset-bottom,0px));flex-direction:column;gap:14px}.collection__top{display:grid;grid-template-columns:auto minmax(0,1fr)auto;align-items: center;gap:8px;min-height:36px}.collection__back{display:inline-flex;border-radius:var(--radius-pill);background:var(--c-surface);color:var(--c-ink);cursor:pointer;border:0;align-items: center;gap:6px;height:30px;padding-inline-start:10px;padding-inline-end:13px;font-size:10.5px;font-weight:800}.collection__titles{text-align:center;min-width:0}.collection__title{font-family:var(--font-display);font-size:21px;font-weight:700;line-height:1.1}.collection__sub,.collection__meta{display:none}.collection__summary{display:flex;background:var(--c-surface);box-shadow:var(--shadow-soft);border-radius:18px;align-items: center;gap:8px;padding:12px 14px;font-size:12px;font-weight:800}.collection__summary-icon{color:var(--c-mango)}.collection__summary-text{color:var(--c-ink)}.collection__tabs{display:flex;gap:7px}.collection__tab{display:grid;border-radius:var(--radius-pill);background:var(--c-surface);color:var(--c-muted);cursor:pointer;border:0;flex:1;place-items: center;height:32px;font-size:10.5px;font-weight:800}.collection__tab--active{background:var(--c-coral);color:#fff}.collection__section{display:flex;flex-direction:column;gap:8px}.collection__section-title{font-family:var(--font-display);font-size:16px;font-weight:700}.collection__footer{display:flex;color:var(--c-label);justify-content:center;align-items: center;gap:6px;font-size:10.5px;font-weight:700}@media (min-width:900px){.collection{padding:28px var(--shell-gutter)36px;gap:18px}.collection__top{display:flex;justify-content:space-between;align-items: flex-start;gap:24px}.collection__back{display:none}.collection__titles{text-align:start}.collection__title{font-size:31px}.collection__sub{display:block;color:var(--c-muted);margin-block-start:4px;font-size:12.5px;font-weight:600}.collection__meta{display:flex;flex:none;align-items: center;gap:10px}.collection__pill{display:inline-flex;border-radius:var(--radius-pill);background:var(--c-surface);align-items: center;gap:6px;height:32px;padding-inline-start:13px;padding-inline-end:13px;font-size:11.5px;font-weight:800}.collection__pill-icon{color:#e0a008}}.parent__gate{width:100%;max-width:520px}.parent__question{text-align:center;font-size:1.6rem;font-weight:800}.parent__error{color:var(--c-danger);text-align:center;font-weight:700}.parent__actions{display:flex;gap:var(--space-3)}.parent__actions .btn{flex:1}.parent__input{text-align:center;font-size:1.5rem;font-weight:800}.parent__stats{font-size:1.05rem;font-weight:700}.report__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:var(--space-3)}.report__stat{display:grid;gap:var(--space-1);padding:var(--space-3);border-radius:var(--radius-md);background:var(--c-bg-2);text-align:center}.report__value{font-size:1.5rem;font-weight:800}.report__label{color:var(--c-muted);font-size:.85rem;font-weight:700}.report__levels{list-style:none;display:grid;gap:var(--space-2);margin:0;padding:0}.report__level{display:flex;align-items: center;gap:var(--space-2)}.report__level-name{flex:1;font-weight:700}.report__level-count{font-weight:800}.report__dot{border-radius:var(--radius-pill);background:var(--c-muted);flex:none;width:14px;height:14px}.report__dot--mastered{background:var(--c-success)}.report__dot--familiar{background:var(--c-secondary)}.report__dot--learning{background:var(--c-primary)}.report__dot--new{background:var(--c-muted)}.report__bar{display:flex;align-items: center;gap:var(--space-2)}.report__bar-name{flex:0 0 8.5rem;font-size:.95rem;font-weight:700}.report__bar-track{border-radius:var(--radius-pill);background:var(--c-bg-2);overflow:hidden;flex:1;height:14px}.report__bar-fill{display:block;border-radius:var(--radius-pill);background:var(--c-success);height:100%}.report__bar-count{text-align:end;flex:0 0 3.5rem;font-size:.9rem;font-weight:800}.report__items{list-style:none;display:grid;gap:var(--space-2);margin:0;padding:0}.report__item{display:flex;align-items: center;gap:var(--space-3);padding:var(--space-2);border-radius:var(--radius-md);background:var(--c-bg-2)}.report__glyph{text-align:center;min-width:2.5rem;font-size:1.8rem;font-weight:800}.report__item-meta{display:grid;flex:1;gap:2px}.report__item-name{font-size:.9rem;font-weight:700}.report__item-sub{color:var(--c-muted);font-size:.85rem}.report__stars{color:var(--c-accent);letter-spacing:2px;flex:none;font-size:1.1rem}.child-list{list-style:none;display:grid;gap:var(--space-3);margin:0;padding:0}.child-row{display:flex;align-items: center;gap:var(--space-3);flex-wrap:wrap}.child-row__avatar{flex:none;font-size:2rem}.child-row__name{display:flex;align-items: center;gap:var(--space-2);flex:1;min-width:8rem;font-size:1.1rem;font-weight:800}.child-row__badge{border-radius:var(--radius-pill);background:var(--c-success);color:#fff;padding:2px 10px;font-size:.75rem;font-weight:700}.child-row__actions{display:flex;gap:var(--space-2);flex-wrap:wrap}.child-row__locale{flex:0 0 10rem}.child-row__locale .field__select{width:100%;min-height:48px}.parent{display:flex;padding:calc(10px + env(safe-area-inset-top,0px))20px calc(24px + env(safe-area-inset-bottom,0px));flex-direction:column;gap:14px}.parent__top{display:grid;grid-template-columns:auto minmax(0,1fr)auto;align-items: center;gap:8px;min-height:36px}.parent__back{display:inline-flex;border-radius:var(--radius-pill);background:var(--c-surface);color:var(--c-ink);cursor:pointer;border:0;align-items: center;gap:6px;height:30px;padding-inline-start:10px;padding-inline-end:13px;font-size:10.5px;font-weight:800}.parent__titles{text-align:center;min-width:0}.parent__title{font-family:var(--font-display);font-size:21px;font-weight:700;line-height:1.1}.parent__sub,.parent__meta{display:none}.parent__stats{color:var(--c-muted);font-size:12px;font-weight:700}.parent-gate{display:flex;justify-content:center;align-items: center;min-height:60vh}@media (min-width:900px){.parent{padding:28px var(--shell-gutter)36px;gap:18px}.parent__top{display:flex;justify-content:space-between;align-items: flex-start;gap:24px}.parent__back{display:none}.parent__titles{text-align:start}.parent__title{font-size:31px}.parent__sub{display:block;color:var(--c-muted);margin-block-start:4px;font-size:12.5px;font-weight:600}.parent__meta{display:flex;flex:none;align-items: center;gap:10px}}.profiles__subtitle{color:var(--c-muted);font-size:1.1rem}.profiles__list{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--space-3);width:100%;margin:0;padding:0}.profile-card{display:flex;align-items: center;gap:var(--space-1);padding:var(--space-3);border-radius:var(--radius-lg);background:var(--c-surface);box-shadow:var(--shadow-soft);cursor:pointer;touch-action:manipulation;border:none;flex-direction:column;width:100%;min-height:140px;transition:transform .12s,box-shadow .12s}.profile-card:active{box-shadow:none;transform:translateY(3px)}.profile-card__avatar{font-size:3rem;line-height:1}.profile-card__name{font-size:1.2rem;font-weight:800}.profiles__form{width:100%;max-width:520px}.profiles__error{color:var(--c-danger);font-weight:700}.preview__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(96px,1fr));gap:var(--space-2)}.preview__cell{display:flex;padding:var(--space-1);background:var(--c-bg);border-radius:var(--radius-md);flex-direction:column;align-items: center;gap:4px;margin:0}.preview__svg{aspect-ratio:1;width:100%}.preview__caption{color:var(--c-muted);text-align:center;font-size:.75rem;font-weight:700}.preview{display:flex;padding:calc(10px + env(safe-area-inset-top,0px))20px calc(24px + env(safe-area-inset-bottom,0px));flex-direction:column;gap:14px}.preview__top{display:grid;grid-template-columns:auto minmax(0,1fr)auto;align-items: center;gap:8px;min-height:36px}.preview__back{display:inline-flex;border-radius:var(--radius-pill);background:var(--c-surface);color:var(--c-ink);cursor:pointer;border:0;align-items: center;gap:6px;height:30px;padding-inline-start:10px;padding-inline-end:13px;font-size:10.5px;font-weight:800}.preview__titles{text-align:center;min-width:0}.preview__title{font-family:var(--font-display);font-size:21px;font-weight:700;line-height:1.1}.preview__sub,.preview__meta{display:none}.preview__section{display:flex;flex-direction:column;gap:8px}.preview__section-title{font-family:var(--font-display);font-size:16px;font-weight:700}@media (min-width:900px){.preview{padding:28px var(--shell-gutter)36px;gap:18px}.preview__top{display:flex;justify-content:space-between;align-items: flex-start;gap:24px}.preview__back{display:none}.preview__titles{text-align:start}.preview__title{font-size:31px}.preview__sub{display:block;color:var(--c-muted);margin-block-start:4px;font-size:12.5px;font-weight:600}.preview__meta{display:flex;flex:none;align-items: center;gap:10px}}.session-lock{position:fixed;z-index:40;display:grid;padding:var(--space-4);overflow-y:auto;background:#3d2b1f99;place-items: center;inset:0}.session-lock__card{text-align:center;display:grid;gap:var(--space-3);justify-items:center;width:100%;max-width:560px}.session-lock__emoji{font-size:4rem;line-height:1}.session-lock__title{margin:0;font-size:1.8rem;font-weight:800}.session-lock .parent__gate{width:100%}.session-break{position:sticky;z-index:30;display:flex;align-items: center;gap:var(--space-3);padding:var(--space-2)var(--space-4);background:var(--c-accent);color:var(--c-ink);border-radius:var(--radius-md);flex-wrap:wrap;justify-content:center;font-weight:700;top:0}.session-break__text{text-align:center;flex:1;min-width:200px}.session-loading{display:grid;padding:var(--space-4);place-items: center;min-height:60vh}.session-loading__text{color:var(--c-muted);font-weight:700}:root{--c-bg:#fff7ec;--c-bg-2:#ffeedb;--c-surface:#fff;--c-ink:#2b1e3a;--c-muted:#7b6d8c;--c-line:#f2e5d3;--c-primary:#ff7455;--c-primary-dark:#c9482d;--c-accent:#ffc24b;--c-secondary:#4cb8e8;--c-success:#4cc38a;--c-danger:#ef476f;--c-coral:#f97150;--c-coral-soft:#ffe9e2;--c-mango:#f7ce5b;--c-mango-soft:#fff3d6;--c-mango-ink:#96660a;--c-sky:#4cb8e8;--c-sky-soft:#dff3fd;--c-sky-ink:#1b7fa5;--c-leaf:#4cc38a;--c-leaf-soft:#dff6ea;--c-leaf-ink:#157a50;--c-grape:#8a7cf8;--c-grape-soft:#ede9ff;--c-grape-ink:#5b4bcf;--c-teal:#23c4af;--c-pink:#ff8db5;--c-sidebar:#fffbf3;--c-label:#b0a292;--radius-sm:12px;--radius-md:20px;--radius-lg:28px;--radius-pill:999px;--touch-min:64px;--space-1:.5rem;--space-2:.75rem;--space-3:1rem;--space-4:1.5rem;--space-5:2rem;--shadow-soft:0 1px 2px #2b1e3a0f;--shadow-pop:0 8px 24px #2b1e3a24;--shadow-lift:0 12px 32px #2b1e3a33;--shell-sidebar:236px;--shell-gutter:36px;--font-sans:"Nunito","Segoe UI",system-ui,-apple-system,sans-serif;--font-display:"Baloo 2","Nunito","Segoe UI",system-ui,-apple-system,sans-serif;--font-arabic:"Baloo Bhaijaan 2","Segoe UI",Tahoma,system-ui,sans-serif;--motion-fast:.12s;--motion-base:.22s;--motion-slow:.42s;--motion-spring:cubic-bezier(.34,1.56,.64,1);--motion-out:cubic-bezier(.22,1,.36,1);--motion-in:cubic-bezier(.4,0,1,1);--buncss-light:initial;--buncss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body,#root{height:100%}body{font-family:var(--font-sans);color:var(--c-ink);background:var(--c-bg);-webkit-tap-highlight-color:transparent;overscroll-behavior:none;margin:0}:root[lang=ar] body{font-family:var(--font-arabic)}:root[lang=ar]{--font-display:"Baloo Bhaijaan 2","Segoe UI",Tahoma,system-ui,sans-serif;--font-sans:"Baloo Bhaijaan 2","Segoe UI",Tahoma,system-ui,sans-serif}button,input,select{color:inherit;font-family:inherit;font-size:1rem}h1,h2,h3{margin:0;line-height:1.15}p{margin:0}:focus-visible{outline:4px solid var(--c-secondary);outline-offset:3px}.app-shell{display:flex;padding:var(--space-3);gap:var(--space-3);flex-direction:column;max-width:1100px;min-height:100%;margin:0 auto}.app-shell--center{justify-content:center;align-items: center}.visually-hidden{position:absolute;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0}@media (prefers-reduced-motion:reduce){*,:before,:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}:root[data-motion=reduced] *,:root[data-motion=reduced] :before,:root[data-motion=reduced] :after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}
