._root_1s5rx_1{font-family:var(--font-parent);text-align:center;justify-content:center;align-items:center;gap:var(--space-4);width:100%;max-width:420px;padding:var(--space-6) var(--space-4);box-sizing:border-box;flex-direction:column;margin-inline:auto;display:flex}._root--parent_1s5rx_16{color:var(--color-char)}._root--child_1s5rx_20{color:#f9f5ee8c}._mascot_1s5rx_24{flex-shrink:0}._heading_1s5rx_28{font-size:var(--text-parent-xl);font-weight:var(--weight-semibold);letter-spacing:-.02em;margin:0;line-height:1.25}._root--parent_1s5rx_16 ._heading_1s5rx_28{color:var(--color-forest)}._root--child_1s5rx_20 ._heading_1s5rx_28{color:var(--color-canvas-white)}._body_1s5rx_44{font-size:var(--text-parent-base);max-width:36ch;margin:0;line-height:1.55}._root--parent_1s5rx_16 ._body_1s5rx_44{color:var(--color-char)}._actions_1s5rx_55{align-items:stretch;gap:var(--space-3);flex-direction:column;width:100%;display:flex}._tryAgain_1s5rx_63{width:100%}@media (width>=768px){._tryAgain_1s5rx_63{max-width:320px;margin-inline:auto}}._secondary_1s5rx_74{padding:var(--space-3) var(--space-2);min-height:44px;font-family:inherit;font-size:var(--text-parent-base);font-weight:var(--weight-medium);cursor:pointer;text-underline-offset:.2em;background:0 0;border:none;align-self:center;margin:0;text-decoration:underline}._root--parent_1s5rx_16 ._secondary_1s5rx_74{color:var(--color-forest)}._root--child_1s5rx_20 ._secondary_1s5rx_74{color:#f9f5eed9}@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-ease:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-amber-50:oklch(98.7% .022 95.277);--color-amber-200:oklch(92.4% .12 95.746);--color-amber-800:oklch(47.3% .137 46.201);--color-indigo-600:oklch(51.1% .262 276.966);--color-gray-50:oklch(98.5% .002 247.839);--color-gray-200:oklch(92.8% .006 264.531);--color-gray-500:oklch(55.1% .027 264.364);--color-gray-700:oklch(37.3% .034 259.733);--color-gray-900:oklch(21% .034 264.665);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-md:28rem;--container-4xl:56rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25 / 1.875);--font-weight-semibold:600;--tracking-wide:.025em;--leading-tight:1.25;--leading-snug:1.375;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--ease-in:cubic-bezier(.4, 0, 1, 1);--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-0{inset:calc(var(--spacing) * 0)}.start{inset-inline-start:var(--spacing)}.start\!{inset-inline-start:var(--spacing)!important}.end{inset-inline-end:var(--spacing)}.isolate{isolation:isolate}.z-50{z-index:50}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.mx-auto{margin-inline:auto}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.min-h-screen{min-height:100vh}.w-full{width:100%}.max-w-4xl{max-width:var(--container-4xl)}.max-w-md{max-width:var(--container-md)}.flex-shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-2{gap:calc(var(--spacing) * 2)}.rounded{border-radius:.25rem}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-amber-200{border-color:var(--color-amber-200)}.border-gray-200{border-color:var(--color-gray-200)}.bg-amber-50{background-color:var(--color-amber-50)}.bg-black\/40{background-color:#0006}@supports (color:color-mix(in lab, red, red)){.bg-black\/40{background-color:color-mix(in oklab, var(--color-black) 40%, transparent)}}.bg-gray-50{background-color:var(--color-gray-50)}.bg-white{background-color:var(--color-white)}.p-3{padding:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-12{padding-block:calc(var(--spacing) * 12)}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.break-all{word-break:break-all}.text-amber-800{color:var(--color-amber-800)}.text-gray-500{color:var(--color-gray-500)}.text-gray-900{color:var(--color-gray-900)}.text-indigo-600{color:var(--color-indigo-600)}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.underline{text-decoration-line:underline}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.invert{--tw-invert:invert(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.ease-in{--tw-ease:var(--ease-in);transition-timing-function:var(--ease-in)}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}@media (hover:hover){.hover\:text-gray-700:hover{color:var(--color-gray-700)}}}@font-face{font-family:Sassoon Infant;src:url(/fonts/SassoonInfantMd-Medium.woff2)format("woff2");font-weight:500;font-style:normal;font-display:block}@font-face{font-family:Sassoon Infant Fallback;src:local(Comic Sans MS);size-adjust:105%;ascent-override:90%}@font-face{font-family:DM Sans;font-style:normal;font-display:block;font-weight:300 900;src:url(/fonts/DMSans-latin-ext-wght-normal.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans;font-style:normal;font-display:block;font-weight:300 900;src:url(/fonts/DMSans-latin-wght-normal.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans;font-style:italic;font-display:block;font-weight:300 900;src:url(/fonts/DMSans-latin-ext-wght-italic.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans;font-style:italic;font-display:block;font-weight:300 900;src:url(/fonts/DMSans-latin-wght-italic.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--color-canvas-white:#fff;--color-ink:var(--color-char);--color-text:var(--color-char);--color-accent-dark:#d4553a;--color-accent-darker:#b8421a;--color-confirm-positive:#22c55e;--color-confirm-positive-shadow:#166534;--color-parent-overlay-decline-icon:#64748b;--color-error:#c0392b;--color-error-soft:#f87171;--color-success:#27ae60;--color-assessment-grapheme:#004648;--color-surface-muted:#f4f6f8;--color-surface:var(--color-mist);--color-border:#ddd;--color-assessment-done-title:#1a1a2e;--color-border-ink-faint:#0f2a231f;--color-overlay-scrim:#0000004d;--color-shadow-neutral:#0000001f;--color-shadow-card-ink:#0f2a2314;--color-surface-chip-idle:#e0e0e0;--color-text-on-idle-chip:#666;--color-phase-strip-past:#dff0ee;--color-panel-border-muted:#64748b73;--color-panel-surface-elevated:#f8fafcf2;--color-text-on-accent-muted:#ffffff8c;--color-practice-parchment-95:#fffbf5f2;--color-practice-parchment-98:#fffbf5fa;--color-practice-parchment-88:#fffbf5e0;--practice-image-size:380px;--color-practice-sheet-border:#d6a22a59;--color-practice-sheet-border-strong:#d6a22a73;--color-practice-sheet-border-faint:#d6a22a40;--color-summary-panel-highlight-bg:#d6a22a0f;--color-summary-panel-highlight-border:#d6a22a33;--color-summary-panel-success-bg:#27ae601a;--color-summary-panel-success-border:#27ae6040;--color-summary-panel-warning-bg:#f5b9001f;--color-summary-panel-warning-border:#d6a22a4d;--color-destructive-disabled:#e0c0bc;--color-overlay-ink-dim:#0f2a238c;--color-assessment-progress-track:#ffffff1f;--color-assessment-progress-fill:#ffffff8c;--size-assessment-progress-bar:6px;--shadow-assessment-card:0 4px 24px #0000001f;--color-practice-progress-dot-idle-fill:#0e4f6e33;--color-practice-progress-dot-idle-border:#0e4f6e40;--color-mascot-primary:#2a9d8f;--color-mascot-grapheme:#083344;--color-mascot-button-text:#0e4f6e;--color-forest:#1a3828;--color-coral:#e8624a;--color-cream:#f9f5ee;--color-amber:#c8913a;--color-char:#2c2c2c;--color-stone:#9b9590;--color-mist:#e8e3da;--bg-child-match:#132d1f;--bg-child-blend:#1a5c52;--bg-child-build:#7b3b1a;--bg-child-read:#1c2e4a;--bg-child-psc:#1a2838;--bg-child-celebrate:#f2b544;--bg-child-complete:var(--color-coral);--bg-child-handoff:linear-gradient(160deg, #1a3828 0%, #1a5c52 100%);--bg-child:var(--bg-child-match);--color-teal-bright:#2dc4b2;--color-coral-bright:#f0724e;--color-amber-bright:#e0a030;--bg-adult:var(--color-cream);--color-pill-specced:color-mix(in srgb, var(--color-coral) 16%, #fff);--color-pill-specced-text:color-mix(in srgb, var(--color-ink) 76%, var(--color-coral) 24%);--color-pill-deferred:color-mix(in srgb, var(--color-stone) 14%, #fff);--color-pill-deferred-text:var(--color-text-muted);--color-child-mode-bg:var(--bg-child-handoff);--color-confirm-positive-lo:color-mix(in srgb, var(--color-confirm-positive) 16%, var(--color-canvas-white));--color-confirm-positive-border:var(--color-confirm-positive-shadow);--color-confirm-negative:var(--color-error);--color-confirm-negative-lo:color-mix(in srgb, var(--color-error) 14%, var(--color-canvas-white));--color-confirm-negative-border:color-mix(in srgb, var(--color-error) 45%, var(--color-ink) 55%);--color-nudge-bg:var(--color-summary-panel-warning-bg);--color-nudge-border:var(--color-summary-panel-warning-border);--color-child-accent:var(--color-accent);--radius-large:14px;--radius-medium:10px;--radius-small:6px;--radius-pill:999px;--radius-full:var(--radius-pill);--font-sans:system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--scale:1;--bottom-nav-height:56px;--adult-shell-max-width:680px;--layout-admin-shell-max-width:min(1360px, calc(100vw - 2 * var(--space-8)));--layout-admin-page-gutter:var(--space-4);--layout-admin-table-max-height:70vh;--font-parent:"DM Sans", "Helvetica Neue", system-ui, sans-serif;--font-grapheme:"Sassoon Infant", "Sassoon Infant Fallback", cursive;--text-parent-xs:.75rem;--text-parent-sm:.875rem;--text-parent-base:1rem;--text-parent-lg:1.125rem;--text-parent-xl:1.375rem;--text-parent-2xl:1.75rem;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--shadow-sm:0 1px 3px #0f1e1412;--shadow-md:0 4px 12px #0f1e141a;--shadow-lg:0 12px 32px #0f1e1424;--transition-ui:.15s cubic-bezier(.16,1,.3,1);--transition-enter:.2s cubic-bezier(.16,1,.3,1);--transition-exit:.15s cubic-bezier(.4,0,1,1);--transition-mascot:.32s cubic-bezier(.34,1.56,.64,1);--radius-md:var(--radius-medium);--radius-lg:var(--radius-large);--color-muted:var(--color-stone);--tile-bg-not-yet:var(--color-mist);--tile-bg-learning:color-mix(in srgb, var(--color-amber) 25%, #fff);--tile-bg-secure:color-mix(in srgb, var(--color-teal) 18%, #fff);--tile-bg-very-secure:color-mix(in srgb, var(--color-teal) 35%, #fff);--color-accent:var(--color-coral);--color-teal:#2a9d8f;--color-canvas:var(--color-cream);--color-border-subtle:var(--color-mist);--color-text-muted:var(--color-stone)}.app-shell--parent-font{font-family:var(--font-parent)}.auth-screen-ground{background-color:var(--bg-adult);font-family:var(--font-parent)}*,:before,:after{box-sizing:border-box}html,body{margin:0;padding:0}html{-webkit-text-size-adjust:100%;width:100%;overflow-x:hidden}body{font-family:var(--font-sans);background-color:var(--bg-adult);color:var(--color-text);-webkit-font-smoothing:antialiased;min-height:100vh;padding-top:env(safe-area-inset-top);width:100%;max-width:100vw;line-height:1.6;overflow-x:hidden}#root{width:100%;max-width:100vw;overflow-x:clip}.text-heading-lg{letter-spacing:-.02em;font-size:1.85rem;font-weight:700;line-height:1.2}.text-heading-md{letter-spacing:-.02em;font-size:1.5rem;font-weight:700;line-height:1.3}.text-heading-sm{letter-spacing:-.01em;font-size:1.1rem;font-weight:600;line-height:1.4}.text-body{font-size:.95rem;line-height:1.6}.word-tap-btn{color:inherit;cursor:pointer;border-radius:var(--radius-small);background:0 0;border:none;margin:0;padding:2px 4px}.word-tap-btn--active{background-color:#00808038}.text-body-sm{font-size:.88rem;line-height:1.5}.text-label{font-size:.88rem;font-weight:500}.text-muted{color:var(--color-text-muted)}.text-caption{letter-spacing:.04em;color:var(--color-text-muted);font-size:.78rem}.text-grapheme-tile{font-size:calc(1.625rem * var(--scale))}.text-grapheme{font-family:var(--font-grapheme), "Sassoon Infant", "Sassoon Infant Fallback", cursive;letter-spacing:.01em;font-weight:500}.text-grapheme--xs{font-size:1.5rem}.text-grapheme--sm{font-size:1.625rem}.text-grapheme--md{font-size:2.5rem}.text-grapheme--lg{font-size:5rem}.text-grapheme--xl{font-size:6rem}.text-grapheme--escalated{font-size:56pt;line-height:1}.game-card-banner{-o-object-fit:cover;object-fit:cover;vertical-align:middle;border-radius:12px 12px 0 0;width:100%;height:160px;display:block}.game-card-banner-placeholder{border-radius:12px 12px 0 0;justify-content:center;align-items:center;width:100%;height:160px;display:flex}.game-card-banner-placeholder-icon{color:var(--color-canvas-white)}@supports (color:color-mix(in lab, red, red)){.game-card-banner-placeholder-icon{color:color-mix(in srgb, var(--color-canvas-white) 88%, var(--color-ink))}}.game-card-banner-placeholder--sound-practice{background:linear-gradient(145deg, var(--color-mascot-primary), var(--color-mascot-primary))}@supports (color:color-mix(in lab, red, red)){.game-card-banner-placeholder--sound-practice{background:linear-gradient(145deg, color-mix(in srgb, var(--color-mascot-primary) 50%, var(--color-canvas-white)), color-mix(in srgb, var(--color-mascot-primary) 22%, var(--color-canvas)))}}.game-card-banner-placeholder--word-building{background:linear-gradient(145deg, var(--color-accent), var(--color-accent))}@supports (color:color-mix(in lab, red, red)){.game-card-banner-placeholder--word-building{background:linear-gradient(145deg, color-mix(in srgb, var(--color-accent) 42%, var(--color-canvas-white)), color-mix(in srgb, var(--color-accent) 18%, var(--color-canvas)))}}.game-card-banner-placeholder--reading-practice{background:linear-gradient(145deg, var(--color-mascot-primary), var(--color-accent))}@supports (color:color-mix(in lab, red, red)){.game-card-banner-placeholder--reading-practice{background:linear-gradient(145deg, color-mix(in srgb, var(--color-mascot-primary) 32%, var(--color-canvas-white)), color-mix(in srgb, var(--color-accent) 28%, var(--color-canvas-white)))}}.game-card-banner-placeholder--decodable-sentences{background:linear-gradient(145deg, var(--color-mascot-primary), var(--color-canvas))}@supports (color:color-mix(in lab, red, red)){.game-card-banner-placeholder--decodable-sentences{background:linear-gradient(145deg, color-mix(in srgb, var(--color-mascot-primary) 38%, var(--color-canvas-white)), color-mix(in srgb, var(--color-canvas) 85%, var(--color-accent)))}}.game-card-banner-placeholder--blend-arrow{background:linear-gradient(145deg, var(--color-accent), var(--color-mascot-primary))}@supports (color:color-mix(in lab, red, red)){.game-card-banner-placeholder--blend-arrow{background:linear-gradient(145deg, color-mix(in srgb, var(--color-accent) 36%, var(--color-canvas-white)), color-mix(in srgb, var(--color-mascot-primary) 24%, var(--color-canvas)))}}.game-card-banner-row{text-align:left;align-items:center;gap:12px;width:100%;padding:14px 48px 14px 16px;display:flex}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}:focus-visible{outline:2px solid var(--color-teal);outline-offset:2px}:focus:not(:focus-visible){outline:none}.btn{border-radius:var(--radius-pill);min-height:48px;font:inherit;cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;padding:.75rem 1.5rem;font-size:.95rem;font-weight:500;text-decoration:none;transition:background-color .15s ease-out,color .15s ease-out,box-shadow .15s ease-out,transform 80ms ease-out,border-color .15s ease-out;display:inline-flex}.btn-primary{background-color:var(--color-coral);color:#fff}.btn-primary:hover{background-color:var(--color-accent-dark);box-shadow:0 2px 6px #0f2a231f}.btn-primary:focus-visible{background-color:var(--color-accent-darker);box-shadow:0 2px 6px #0f2a231f}.btn-coral-secondary{color:var(--color-accent-darker);border-color:var(--color-accent-dark);background-color:#fff}.btn-coral-secondary:hover,.btn-coral-secondary:focus-visible{border-color:var(--color-accent-darker);background-color:#e855201a}.btn-coral-primary{background-color:var(--color-accent-dark);color:#fff}.btn-coral-primary:hover,.btn-coral-primary:focus-visible{background-color:var(--color-accent-darker);box-shadow:0 2px 6px #0f2a231f}.btn-link-tertiary{min-height:44px;font:inherit;color:var(--color-text-muted);text-underline-offset:.2em;cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;margin:0;padding:.5rem .25rem;font-size:.95rem;font-weight:500;text-decoration:underline;transition:color .15s ease-out;display:inline-flex}.btn-link-tertiary:hover,.btn-link-tertiary:focus-visible{color:var(--color-text)}.btn-secondary{color:var(--color-text-muted);border-color:var(--color-border-subtle);background-color:#0000}.btn-secondary:hover,.btn-secondary:focus-visible{background-color:#0f2a230a;border-color:#0f2a2340}.btn-handoff-return-done{background-color:var(--color-forest);width:100%;max-width:min(360px,92vw);min-height:56px;color:var(--color-cream);border-color:#0000;padding:.85rem 2rem;font-size:1.1rem;font-weight:700}.btn-handoff-return-done:hover{background-color:var(--color-forest)}@supports (color:color-mix(in lab, red, red)){.btn-handoff-return-done:hover{background-color:color-mix(in srgb, var(--color-forest) 85%, black)}}.btn-handoff-return-done:focus-visible{background-color:var(--color-forest)}@supports (color:color-mix(in lab, red, red)){.btn-handoff-return-done:focus-visible{background-color:color-mix(in srgb, var(--color-forest) 90%, black)}}.btn-handoff-return-done:focus-visible{box-shadow:0 2px 6px #0f2a231f}.btn-ghost{color:var(--color-text);background-color:#fff;border-color:#bbc4e6b3}.btn-ghost:hover,.btn-ghost:focus-visible{border-color:var(--color-accent);background-color:#e7eef6b3}.btn-destructive{color:#c0392b;background-color:#fff;border-color:#c0392b4d}.btn-destructive:hover,.btn-destructive:focus-visible{background-color:#c0392b0f;border-color:#c0392b}input,select,textarea{font-size:16px}.input{border-radius:var(--radius-medium);color:var(--color-text);background-color:#fff;border:1px solid #c3c9e199;width:100%;padding:.8rem .95rem;font-family:inherit;font-size:16px}.input::placeholder{color:#7f849ee6}.input:focus-visible{border-color:var(--color-teal);box-shadow:0 0 0 1px var(--color-teal), 0 0 0 3px var(--color-teal);outline:none}@supports (color:color-mix(in lab, red, red)){.input:focus-visible{box-shadow:0 0 0 1px color-mix(in oklch, var(--color-teal) 25%, transparent), 0 0 0 3px color-mix(in oklch, var(--color-teal) 35%, transparent)}}.input-error{border-color:#c0392b}.card{border-radius:var(--radius-large);border:1px solid var(--color-border-subtle);background-color:#fff;padding:24px}.card-parchment{background-color:var(--bg-adult);border-radius:var(--radius-large);border:1px solid var(--color-border-subtle);padding:24px}.card-dashboard{background:var(--color-cream);border:1px solid var(--color-mist);border-radius:var(--radius-lg);padding:var(--space-4);box-shadow:none}.confirm-modal-overlay{z-index:60;padding:var(--space-6);box-sizing:border-box;background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.confirm-modal-card{box-sizing:border-box;background:var(--color-canvas-white);border-radius:var(--radius-large);width:100%;max-width:400px;box-shadow:var(--shadow-lg);padding:var(--space-6)}.confirm-modal-title{font-size:var(--text-parent-lg);font-weight:var(--weight-semibold);color:var(--color-forest);font-family:var(--font-sans);margin:0}.confirm-modal-copy{color:var(--color-text-muted);margin:12px 0 0}.confirm-modal-actions{margin-top:var(--space-6);flex-direction:row;gap:12px;display:flex}.confirm-modal-actions .btn{flex:1}.journey-strip{gap:4px;margin-bottom:0;display:flex}.journey-strip__tab{box-sizing:border-box;text-align:center;min-width:0;font-family:var(--font-parent);border:1px solid #0000;border-radius:8px;flex:1;padding:8px 4px}.journey-strip__phase{font-size:var(--text-parent-sm);font-weight:var(--weight-regular);line-height:1.2}.journey-strip__desc{font-size:var(--text-parent-xs);margin-top:2px;line-height:1.25}.journey-strip__tab--current{background:var(--color-forest);border-color:var(--color-forest);color:var(--color-cream);font-weight:var(--weight-bold)}.journey-strip__tab--current .journey-strip__phase,.journey-strip__tab--current .journey-strip__desc{font-weight:var(--weight-bold)}.journey-strip__tab--current .journey-strip__desc{opacity:.9;font-weight:var(--weight-semibold)}.journey-strip__tab--past{background:var(--color-teal)}@supports (color:color-mix(in lab, red, red)){.journey-strip__tab--past{background:color-mix(in srgb, var(--color-teal) 15%, #fff)}}.journey-strip__tab--past{border-color:var(--color-teal);color:var(--color-teal)}.journey-strip__tab--past .journey-strip__desc{opacity:.85}.journey-strip__tab--future{background:var(--color-mist);border-color:var(--color-mist);color:var(--color-stone)}.journey-strip__tab--future .journey-strip__desc{opacity:.85}.sound-map-legend{-moz-column-gap:var(--space-3);column-gap:var(--space-3);row-gap:var(--space-1);margin-bottom:var(--space-4);font-family:var(--font-parent);font-size:var(--text-parent-xs);color:var(--color-char);flex-wrap:wrap;display:flex}.sound-map-legend__item{align-items:center;gap:var(--space-1);display:inline-flex}.sound-map-legend__swatch{box-sizing:border-box;border-radius:4px;flex-shrink:0;width:12px;height:12px;display:inline-block}.sound-map-legend__swatch--pending{background:var(--tile-bg-not-yet)}.sound-map-legend__swatch--learning{background:var(--tile-bg-learning)}.sound-map-legend__swatch--secure{background:var(--tile-bg-secure)}.sound-map-legend__swatch--very{background:var(--tile-bg-very-secure)}.phase-complete-badge{align-items:center;gap:var(--space-2);box-sizing:border-box;width:100%;padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--color-cream);border:1px solid var(--color-mist);color:var(--color-forest);font-family:var(--font-parent);font-size:var(--text-parent-sm);font-weight:var(--weight-semibold);display:flex}.phase-complete-badge__icon{color:var(--color-teal);flex-shrink:0}.psc-readiness__progress{width:100%;height:10px;margin-top:var(--space-3);margin-bottom:var(--space-3);border-radius:var(--radius-pill);background:var(--color-mist);vertical-align:middle;accent-color:var(--color-teal);border:none;display:block}.psc-readiness__progress::-webkit-progress-bar{border-radius:var(--radius-pill);background:var(--color-mist)}.psc-readiness__progress::-webkit-progress-value{border-radius:var(--radius-pill);background:var(--color-teal)}.psc-readiness__progress::-moz-progress-bar{border-radius:var(--radius-pill);background:var(--color-teal)}.psc-readiness__lw-badge{margin-top:var(--space-3);padding:var(--space-1) var(--space-2);border:1px solid var(--color-mist);border-radius:var(--radius-small);background:var(--color-cream);color:var(--color-forest);font-family:var(--font-parent);font-size:var(--text-parent-xs);font-weight:var(--weight-medium);display:inline-block}.psc-readiness-card{gap:var(--space-3);flex-direction:column;display:flex}.psc-readiness-card__info-toggle{text-align:left;cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:center;width:100%;padding:0;display:flex}.psc-readiness-card__info-title{font-family:var(--font-parent);font-size:var(--text-parent-base);font-weight:var(--weight-semibold);color:var(--color-char)}.psc-readiness-card__info-copy{margin:0}.psc-readiness-card__info-chevron{color:var(--color-stone);transition:transform var(--transition-ui);flex-shrink:0}.psc-readiness-card__info-chevron--open{transform:rotate(180deg)}.psc-readiness-card__state-block{gap:var(--space-2);flex-direction:column;display:flex}.psc-readiness-card__phase-row{flex-direction:column;gap:6px;display:flex}.psc-readiness-card__phase-meta{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.psc-readiness-card__phase-label{font-size:var(--text-parent-sm);font-weight:var(--weight-medium);color:var(--color-char)}.psc-readiness-card__phase-score{font-size:var(--text-parent-sm);color:var(--color-char);align-items:center;gap:4px;display:inline-flex}.psc-readiness-card__bar-track{border-radius:var(--radius-pill);background:var(--color-mist);width:100%;height:10px;overflow:hidden}.psc-readiness-card__bar-fill{border-radius:var(--radius-pill);background:var(--color-teal);height:100%}.psc-readiness-card__bar-fill--full{background:var(--color-teal)}@supports (color:color-mix(in lab, red, red)){.psc-readiness-card__bar-fill--full{background:color-mix(in srgb, var(--color-teal) 85%, var(--color-forest) 15%)}}.psc-readiness-card__phase4-row{justify-content:space-between;align-items:center;gap:var(--space-3);padding-top:var(--space-1);font-size:var(--text-parent-sm);display:flex}.psc-readiness-card__phase4-row a{color:var(--color-accent-darker);font-weight:var(--weight-medium);text-decoration:none}.psc-readiness-card__phase4-row a:hover{text-decoration:underline}.psc-readiness-card__phase-ticks{gap:var(--space-2);font-size:var(--text-parent-sm);color:var(--color-char);flex-wrap:wrap;display:flex}.psc-readiness-card__gap-chips{gap:var(--space-2);flex-wrap:wrap;display:flex}.psc-readiness-card__gap-chip{border-radius:var(--radius-pill);border:1px solid var(--color-mist);background:var(--color-canvas-white);font-size:var(--text-parent-sm);color:var(--color-char);align-items:center;padding:4px 10px;display:inline-flex}.psc-readiness-card__actions{flex-direction:column;align-items:flex-start;display:flex}.psc-readiness-card__actions .btn{width:100%}.psc-readiness-card__actions .btn-link-tertiary{justify-content:flex-start;min-height:0;padding-left:0;font-size:13px}.psc-readiness-card__honest-note{border-top:1px solid var(--color-mist);padding-top:var(--space-3);margin:0}.recheck-card{background:var(--color-canvas-white);border:1px solid var(--color-mist);border-radius:var(--radius-large);padding:var(--space-4)}.recheck-header{cursor:pointer;justify-content:space-between;align-items:center;gap:var(--space-2);text-align:left;background:0 0;border:none;width:100%;padding:0;display:flex}.recheck-label{font-family:var(--font-parent);font-size:var(--text-parent-sm);font-weight:var(--weight-medium);color:var(--color-char)}.recheck-chevron{color:var(--color-stone);transition:transform var(--transition-ui);flex-shrink:0}.recheck-chevron--open{transform:rotate(180deg)}.recheck-tiles{gap:var(--space-2);margin-top:var(--space-3);flex-wrap:wrap;display:flex}.divider{border:none;border-top:1px solid #0f2a231f;margin:24px 0}.page-shell{max-width:var(--adult-shell-max-width);padding:16px 12px calc(var(--bottom-nav-height) + 24px + env(safe-area-inset-bottom));margin:0 auto}.page-shell.page-shell--game{box-sizing:border-box;background:var(--bg-child);width:100%;max-width:none;min-height:100dvh;padding:calc(16px + env(safe-area-inset-top)) 12px calc(24px + env(safe-area-inset-bottom));margin:0;position:relative}.page-shell.page-shell--game:has(.psc-alien-session){background:var(--bg-child-psc)}.page-shell.page-shell--handoff{box-sizing:border-box;width:100%;max-width:none;min-height:0;padding:calc(16px + env(safe-area-inset-top)) 12px calc(24px + env(safe-area-inset-bottom));margin:0}.page-shell.page-shell--admin-wide{max-width:var(--layout-admin-shell-max-width)}.page-body.page-body--admin-assets{background:var(--bg-adult);padding:var(--space-6) var(--layout-admin-page-gutter) var(--space-12);box-sizing:border-box;width:100%}.admin-graphemes-table-scroll{max-height:var(--layout-admin-table-max-height);-webkit-overflow-scrolling:touch;overflow:auto}.admin-graphemes-table{border-collapse:collapse;width:100%;font-family:var(--font-parent);font-size:var(--text-parent-sm)}.admin-graphemes-table thead th{z-index:2;background:var(--color-cream);text-align:left;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-mist);position:sticky;top:0}.admin-graphemes-table tbody td{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-mist)}@supports (color:color-mix(in lab, red, red)){.admin-graphemes-table tbody td{border-bottom:1px solid color-mix(in srgb, var(--color-mist) 70%, transparent)}}.admin-graphemes-table .admin-graphemes-table-sticky-col{z-index:1;background:var(--color-cream);position:sticky;left:0}.admin-graphemes-table thead .admin-graphemes-table-sticky-col{z-index:3}.admin-graphemes-table tbody tr[role=button]{cursor:pointer}.admin-asset-rows-grid{gap:var(--space-3);grid-template-columns:1fr;display:grid}@media (width>=768px){.admin-asset-rows-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=1200px){.admin-asset-rows-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.admin-asset-rows-grid .admin-asset-row{margin-bottom:0}@media (width<=1199px){.admin-asset-rows-grid .admin-asset-row{gap:var(--space-2) var(--space-3);grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"slug status""used ticket""play play"}.admin-asset-rows-grid .admin-asset-row>strong{grid-area:slug}.admin-asset-rows-grid .admin-asset-row>div:nth-child(2){grid-area:status;justify-self:end}.admin-asset-rows-grid .admin-asset-row>div:nth-child(3){grid-area:used}.admin-asset-rows-grid .admin-asset-row>div:nth-child(4){grid-area:ticket}.admin-asset-rows-grid .admin-asset-row>div:nth-child(5){grid-area:play;justify-self:start}}.page-body{padding-bottom:calc(var(--bottom-nav-height) + env(safe-area-inset-bottom) + 16px)}.page-body.page-body--fullscreen-game{padding-bottom:calc(24px + env(safe-area-inset-bottom))}.game-stage{box-sizing:border-box;width:100%;max-width:480px;margin-inline:auto}.app-header{background:var(--color-cream);border-bottom:1px solid var(--color-mist);padding:0 16px}.app-header-inner{max-width:var(--adult-shell-max-width);justify-content:space-between;align-items:center;gap:var(--space-2);box-sizing:border-box;width:100%;min-width:0;padding-block:var(--space-3);margin:0 auto;display:flex;position:relative}.app-header-brand{align-items:center;gap:12px;min-width:0;display:inline-flex}@media (width>=768px){.app-header-brand{gap:14px}}.app-header-brand--centered{max-width:calc(100vw - 200px);position:absolute;left:50%;transform:translate(-50%)}.app-header-mark{flex-shrink:0;width:44px;height:44px;display:block}@media (width>=768px){.app-header-mark{width:52px;height:52px}}.auth-screen-brand{align-items:center;gap:12px;min-width:0;margin-bottom:24px;display:inline-flex}@media (width>=768px){.auth-screen-brand{gap:14px}}.app-header-wordmark-stack{flex-direction:column;justify-content:center;align-items:flex-start;min-width:0;display:flex}.app-header .wordmark-legible,.auth-screen-brand .wordmark-legible{letter-spacing:-.025em;color:var(--color-forest);font-family:Lora,Georgia,serif;font-size:24px;font-weight:500;line-height:1}.app-header .wordmark-phonics,.auth-screen-brand .wordmark-phonics{font-family:var(--font-parent);text-transform:uppercase;letter-spacing:.08em;color:var(--color-coral);margin-top:2px;font-size:15px;font-weight:800;line-height:1}@media (width>=768px){.app-header .wordmark-legible,.auth-screen-brand .wordmark-legible{font-size:28px}.app-header .wordmark-phonics,.auth-screen-brand .wordmark-phonics{font-size:17px}}.bottom-nav{height:var(--bottom-nav-height)}.bottom-nav svg{width:22px;height:22px}.bottom-nav__label{font-size:.68rem}.header-child-info{align-items:center;gap:var(--space-2);z-index:1;flex-shrink:0;min-width:0;margin-left:auto;display:flex}.header-child-name{font-family:var(--font-parent);font-size:var(--text-parent-sm);font-weight:var(--weight-medium);color:var(--color-forest);white-space:nowrap;text-overflow:ellipsis;max-width:80px;margin:0;overflow:hidden}.header-child-switcher-btn{align-items:center;gap:var(--space-1);cursor:pointer;min-width:0;max-width:104px;font:inherit;color:inherit;text-align:left;background:0 0;border:none;margin:0;padding:0;display:inline-flex}.header-child-switcher-btn .header-child-name{flex:1;min-width:0}.header-child-chevron{color:var(--color-stone);flex-shrink:0;font-size:.7rem;line-height:1}.header-child-settings{width:28px;height:28px;color:var(--color-stone);cursor:pointer;border-radius:var(--radius-small);box-sizing:border-box;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;text-decoration:none;display:flex}.header-child-settings:hover,.header-child-settings:focus-visible{color:var(--color-forest);background:var(--color-forest)}@supports (color:color-mix(in lab, red, red)){.header-child-settings:hover,.header-child-settings:focus-visible{background:color-mix(in srgb, var(--color-forest) 6%, transparent)}}.header-child-settings:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.header-child-settings-icon{display:block}.header-child-avatar{background:var(--color-forest);width:28px;height:28px;color:var(--color-cream);font-family:var(--font-parent);font-size:var(--text-parent-xs);font-weight:var(--weight-bold);-webkit-user-select:none;user-select:none;text-transform:uppercase;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.header-child-avatar-btn{cursor:pointer;background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin:0;padding:0;display:flex}.header-child-avatar-btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.header-child-avatar-btn:hover .header-child-avatar{filter:brightness(1.05)}.child-header{border-bottom:1px solid var(--color-border-subtle);flex-direction:column;align-items:stretch;gap:4px;min-height:0;padding:8px 16px 10px;display:flex}.child-header-top{align-items:center;gap:8px;width:100%;min-width:0;display:flex}.child-header-switcher-btn{cursor:pointer;min-width:0;color:var(--color-text);text-align:left;font:inherit;background:0 0;border:none;flex:1;align-items:center;gap:12px;margin:0;padding:0;display:flex}.child-header-static{flex:1;align-items:center;gap:12px;min-width:0;display:flex}.child-header-chevron{flex-shrink:0;font-size:.7rem;line-height:1}.child-header-settings{box-sizing:border-box;min-width:44px;min-height:44px;color:var(--color-stone);flex-shrink:0;justify-content:center;align-items:center;margin:0;padding:0;text-decoration:none;display:flex}.child-header-settings:hover,.child-header-settings:focus-visible{color:var(--color-accent-darker)}.child-header-settings:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:8px}.child-header-settings-icon{display:block}.child-header-name--inline{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;margin:0;font-size:1rem;font-weight:600;line-height:1.2;overflow:hidden}.child-header-avatar{background:var(--color-accent);color:#fff;text-transform:uppercase;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:.85rem;font-weight:700;display:flex}.child-detail-assess-recency{margin:var(--space-2) 0 0;font-size:var(--text-parent-xs);color:var(--color-muted);text-align:center;white-space:nowrap;text-overflow:ellipsis;padding:0;line-height:1.2;overflow:hidden}@keyframes page-slide-in{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.page-enter{animation:.2s ease-out forwards page-slide-in}@keyframes page-fade-in{0%{opacity:0}to{opacity:1}}.page-enter-tab{animation:.15s ease-out forwards page-fade-in}@media (prefers-reduced-motion:reduce){.page-enter,.page-enter-tab{animation:none}}@keyframes legible-loader-breathe{0%,to{opacity:1}50%{opacity:.5}}.legible-loader__bar{fill:var(--color-coral);transform-origin:50%;animation:1.6s cubic-bezier(.4,0,.6,1) infinite legible-loader-breathe}.legible-loader__dot{fill:var(--color-forest)}.legible-loader__caption{color:var(--loader-caption-color,var(--color-stone));text-align:center;margin:0;font-size:14px}@media (prefers-reduced-motion:reduce){.legible-loader__bar{opacity:1;animation:none}}@keyframes spin{to{transform:rotate(360deg)}}.spinner{box-sizing:border-box;border:2px solid #ffffff59;border-top-color:#fff;border-radius:50%;flex-shrink:0;width:24px;height:24px;animation:.75s linear infinite spin}@media (prefers-reduced-motion:reduce){.spinner{border-color:#fff #ffffff8c #ffffff8c;animation:none}}.assessment-layout{flex-direction:column;flex:1;justify-content:flex-start;align-items:center;gap:16px;padding:16px 16px 24px;display:flex}.assessment-mascot-col{flex-shrink:0;justify-content:center;align-items:center;display:flex}.assessment-mascot-col img[data-testid=mascot]{width:130px;height:auto}.assessment-card-col,.assessment-card-column{flex-direction:column;align-items:center;gap:20px;width:100%;max-width:460px;display:flex}.assessment-score-buttons{gap:16px;width:100%;max-width:420px;margin:0 auto;display:flex}.parent-strip{box-sizing:border-box;background:var(--color-teal);border-radius:10px;width:100%;max-width:420px;margin:4px 14px 8px;padding:9px 12px}@supports (color:color-mix(in lab, red, red)){.parent-strip{background:color-mix(in srgb, var(--color-teal) 15%, var(--color-canvas-white))}}.parent-strip{color:var(--color-teal);text-align:center;font-size:11px;font-weight:700;line-height:1.35}.reference-strip{box-sizing:border-box;width:100%;max-width:420px;color:var(--color-text-muted);text-align:center;background:#f3f0ec;border-radius:8px;margin:0 14px;padding:8px 12px;font-size:11px;line-height:1.35}.flip-card{box-sizing:border-box;background:var(--color-canvas-white);width:calc(100% - 28px);max-width:420px;box-shadow:var(--shadow-assessment-card);border-radius:20px;margin-left:auto;margin-right:auto}.assessment-audio-hint{pointer-events:none;color:var(--color-muted);opacity:1;justify-content:center;margin-top:8px;transition:opacity 2s ease-out;display:flex}.assessment-audio-hint__icon{color:var(--color-muted);flex-shrink:0}.assessment-audio-hint--fade{opacity:0}.assessment-card-main-row{flex-direction:column;align-items:center;gap:20px;width:100%;display:flex}.done-mascot-wrap{place-items:center;width:220px;height:220px;display:grid;position:relative}.done-mascot{z-index:1;position:relative}.done-mascot-wrap.practice-well-done-mascot-wrap{width:260px;height:260px}.practice-well-done-mascot-bob{animation:2.8s cubic-bezier(.34,1.56,.64,1) infinite practice-well-done-mascot-bob}@keyframes practice-well-done-mascot-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.mastery-pulse{border-radius:var(--radius-full);z-index:0;pointer-events:none;background:var(--color-forest);width:100px;height:100px;margin-top:-50px;margin-left:-50px;position:absolute;top:50%;left:50%}@supports (color:color-mix(in lab, red, red)){.mastery-pulse{background:color-mix(in srgb, var(--color-forest) 24%, transparent)}}.mastery-pulse{animation:.88s cubic-bezier(.34,1.56,.64,1) forwards mastery-pulse-once}@keyframes mastery-pulse-once{0%{opacity:.8;transform:scale(.42)}to{opacity:0;transform:scale(3.1)}}.done-mascot-wrap.assessment-done-mascot-wrap{width:260px;height:260px;position:relative}@keyframes assessment-done-mastery-pulse-kf{0%{opacity:.7;transform:scale(.5)}to{opacity:0;transform:scale(6)}}.assessment-done-mastery-pulse{background:var(--color-teal-bright);pointer-events:none;z-index:0;border-radius:50%;width:80px;height:80px;margin:auto;animation:.6s cubic-bezier(.16,1,.3,1) forwards assessment-done-mastery-pulse-kf;position:absolute;inset:0}.assessment-done-card{width:100%;max-width:380px}.practice-well-done-title{font-family:var(--font-grapheme), cursive;color:var(--color-canvas-white);margin:0;font-size:1.75rem;font-weight:500;line-height:1.2}.practice-well-done-shell--mastery .practice-well-done-title{color:var(--color-forest)}.practice-well-done-row-label{font-family:var(--font-parent), sans-serif;font-size:var(--text-parent-sm);color:var(--color-forest);margin:0 0 12px;font-weight:600}.practice-well-done-row-label--on-dark{color:var(--color-canvas-white)}@supports (color:color-mix(in lab, red, red)){.practice-well-done-row-label--on-dark{color:color-mix(in srgb, var(--color-canvas-white) 88%, transparent)}}.practice-well-done-row-muted{font-family:var(--font-parent), sans-serif;font-size:var(--text-parent-sm);margin:0}.practice-well-done-row-muted--on-dark{color:var(--color-canvas-white)}@supports (color:color-mix(in lab, red, red)){.practice-well-done-row-muted--on-dark{color:color-mix(in srgb, var(--color-canvas-white) 70%, transparent)}}.practice-well-done-shell--mastery .practice-well-done-row-muted{color:var(--color-forest)}@supports (color:color-mix(in lab, red, red)){.practice-well-done-shell--mastery .practice-well-done-row-muted{color:color-mix(in srgb, var(--color-forest) 72%, transparent)}}.practice-well-done-chip--mastery{background:var(--color-forest);color:var(--color-cream);border:1px solid var(--color-forest);font-weight:500}.practice-well-done-chip--on-amber{color:var(--color-forest);border:1px solid var(--color-canvas-white);background:0 0}.practice-well-done-btn-primary-mastery{background-color:var(--color-forest);color:var(--color-cream);border-radius:var(--radius-medium);cursor:pointer;border:none}.practice-well-done-btn-primary-mastery:hover{background-color:var(--color-forest)}@supports (color:color-mix(in lab, red, red)){.practice-well-done-btn-primary-mastery:hover{background-color:color-mix(in srgb, var(--color-forest) 90%, var(--color-cream))}}.practice-well-done-btn-primary-mastery:focus-visible{outline:2px solid var(--color-forest);outline-offset:3px}.practice-well-done-btn-primary-session-complete{background-color:var(--color-forest);color:var(--color-cream);border-radius:var(--radius-medium);cursor:pointer;border:none}.practice-well-done-btn-primary-session-complete:hover{background-color:var(--color-forest)}@supports (color:color-mix(in lab, red, red)){.practice-well-done-btn-primary-session-complete:hover{background-color:color-mix(in srgb, var(--color-forest) 90%, var(--color-cream))}}.practice-well-done-btn-primary-session-complete:focus-visible{outline:2px solid var(--color-forest);outline-offset:3px}.practice-well-done-shell--mastery .practice-well-done-btn-secondary-mastery{color:var(--color-forest);border-color:var(--color-forest);background-color:#0000}.practice-well-done-shell--mastery .practice-well-done-btn-secondary-mastery:hover{background-color:var(--color-forest)}@supports (color:color-mix(in lab, red, red)){.practice-well-done-shell--mastery .practice-well-done-btn-secondary-mastery:hover{background-color:color-mix(in srgb, var(--color-forest) 10%, transparent)}}.practice-well-done-shell--mastery .practice-well-done-btn-secondary-mastery:focus-visible{background-color:var(--color-forest)}@supports (color:color-mix(in lab, red, red)){.practice-well-done-shell--mastery .practice-well-done-btn-secondary-mastery:focus-visible{background-color:color-mix(in srgb, var(--color-forest) 10%, transparent)}}.practice-well-done-shell--mastery .practice-well-done-btn-secondary-mastery:focus-visible{border-color:var(--color-forest)}.practice-well-done-exit--mastery,.practice-well-done-exit--mastery:hover,.practice-well-done-exit--mastery:focus-visible{color:var(--color-forest)}@supports (color:color-mix(in lab, red, red)){.practice-well-done-exit--mastery:hover,.practice-well-done-exit--mastery:focus-visible{color:color-mix(in srgb, var(--color-forest) 82%, var(--color-cream))}}.practice-well-done-chip-row{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.practice-well-done-chip{color:var(--color-canvas-white);background:#ffffff24;border:1px solid #ffffff59;border-radius:999px;align-items:center;padding:4px 12px;font-weight:600;display:inline-flex}.practice-well-done-shell:not(.practice-well-done-shell--mastery) .practice-well-done-chip{border:1px solid var(--color-canvas-white);background:0 0}.practice-well-done-actions .practice-well-done-btn-secondary{color:var(--color-canvas-white);background-color:#0000;border-color:#ffffff8c}.practice-well-done-actions .practice-well-done-btn-secondary:hover,.practice-well-done-actions .practice-well-done-btn-secondary:focus-visible{background-color:#ffffff1f;border-color:#ffffffc7}.practice-well-done-actions .practice-well-done-exit{color:#ffffffd9;width:100%}.practice-well-done-actions .practice-well-done-exit:hover,.practice-well-done-actions .practice-well-done-exit:focus-visible{color:var(--color-canvas-white)}.done-mascot img[data-testid=mascot]{width:200px;height:auto}@media (width>=640px){.page-shell{padding:32px 24px calc(var(--bottom-nav-height) + 24px + env(safe-area-inset-bottom))}.page-shell.page-shell--game,.page-shell.page-shell--handoff{padding:calc(20px + env(safe-area-inset-top)) 24px calc(28px + env(safe-area-inset-bottom))}}@media (width>=768px){:root{--scale:1.2;--bottom-nav-height:84px;--adult-shell-max-width:520px}.text-body{font-size:1rem}.card,.card-parchment{padding:28px}.app-header-inner{padding-block:14px}.app-header .wordmark-legible,.auth-screen-brand .wordmark-legible{font-size:1rem}.app-header .wordmark-phonics,.auth-screen-brand .wordmark-phonics{font-size:.75rem}.bottom-nav svg{width:28px;height:28px}.bottom-nav__label{font-size:.75rem}}@media (width>=520px){.assessment-layout{flex-direction:row;justify-content:center;align-items:center;gap:24px;padding:32px 28px}.assessment-mascot-col{flex:0 0 240px;max-width:240px}.assessment-mascot-col img[data-testid=mascot]{width:220px}.assessment-card-col,.assessment-card-column{flex:auto;gap:24px}.done-mascot-wrap,.done-mascot-wrap.practice-well-done-mascot-wrap{width:300px;height:300px}.done-mascot img[data-testid=mascot]{width:280px}}@media (orientation:landscape) and (height<=500px){.child-header{min-height:48px;padding-block:6px}.assessment-layout{flex-direction:row;align-items:center}.assessment-card-column{flex-direction:column;flex:1;align-items:center;max-width:560px}.assessment-card-main-row{flex-direction:row;justify-content:center;align-items:center;gap:12px;width:100%}.assessment-card-main-row>:first-child{flex:auto;justify-content:center;min-width:0;display:flex}.assessment-score-buttons{flex-direction:column;flex-shrink:0;gap:12px;width:108px;max-width:none;margin:0}.assessment-score-buttons button{flex-direction:column;gap:4px;padding-left:6px;padding-right:6px;font-size:.68rem;line-height:1.15}.assessment-score-buttons button svg{flex-shrink:0}}@media (height<=450px) and (orientation:landscape){.app-header-inner{padding-block:var(--space-2)}}.tile{box-sizing:border-box}.tile.tile--upcoming{border:1px dashed var(--color-border-subtle);background:var(--color-cream);color:var(--color-text-muted);opacity:.88;cursor:default;pointer-events:none;-webkit-user-select:none;user-select:none}.tile.tile--pending{border:1px solid var(--color-stone)}@supports (color:color-mix(in lab, red, red)){.tile.tile--pending{border:1px solid color-mix(in srgb, var(--color-stone) 35%, var(--color-mist))}}.tile.tile--pending{background:var(--tile-bg-not-yet);color:var(--color-stone)}.tile.tile--learning{border:1px solid var(--color-amber)}@supports (color:color-mix(in lab, red, red)){.tile.tile--learning{border:1px solid color-mix(in srgb, var(--color-amber) 55%, #fff)}}.tile.tile--learning{background:var(--tile-bg-learning);color:var(--color-text)}.tile.tile--mastered{border:1px solid var(--color-teal)}@supports (color:color-mix(in lab, red, red)){.tile.tile--mastered{border:1px solid color-mix(in srgb, var(--color-teal) 45%, #fff)}}.tile.tile--mastered{background:var(--tile-bg-secure);color:var(--color-text)}.tile.tile--mastered-strong{border:1px solid var(--color-teal)}@supports (color:color-mix(in lab, red, red)){.tile.tile--mastered-strong{border:1px solid color-mix(in srgb, var(--color-teal) 50%, #fff)}}.tile.tile--mastered-strong{background:var(--tile-bg-secure);color:var(--color-text)}.tile.tile--mastered-very{border:1px solid var(--color-teal)}@supports (color:color-mix(in lab, red, red)){.tile.tile--mastered-very{border:1px solid color-mix(in srgb, var(--color-teal) 58%, #fff)}}.tile.tile--mastered-very{background:var(--tile-bg-very-secure);color:var(--color-text)}button.tile{cursor:pointer;font:inherit;margin:0}.gpc-tile__divergence-badge{box-sizing:border-box;background:radial-gradient(circle at center, transparent calc(100% - 2px), var(--color-canvas-white) calc(100% - 2px)), conic-gradient(from 0deg, var(--color-teal) 0deg 180deg, var(--color-mist) 180deg 360deg);border:2px solid #0000}.sound-map-legend__icon{box-sizing:border-box;border-radius:50%;flex-shrink:0;width:12px;height:12px;display:inline-block}.sound-map-legend__icon--divergence{background:radial-gradient(circle at center, transparent calc(100% - 1.5px), var(--color-canvas-white) calc(100% - 1.5px)), conic-gradient(from 0deg, var(--color-teal) 0deg 180deg, var(--color-mist) 180deg 360deg);border:1.5px solid #0000}@media (prefers-reduced-motion:reduce){.mastery-pulse,.assessment-done-mastery-pulse{opacity:0;animation:none}.practice-well-done-mascot-bob{animation:none}}.audio-replay-btn{border:2px solid var(--color-accent);border-radius:50%;width:48px;height:48px;padding:0}@supports (color:color-mix(in lab, red, red)){.audio-replay-btn{border:2px solid color-mix(in srgb, var(--color-accent) 45%, var(--color-ink) 35%)}}.audio-replay-btn{background-color:var(--color-canvas-white);color:var(--color-accent-darker);cursor:pointer;box-shadow:0 2px 10px var(--color-ink);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.audio-replay-btn{box-shadow:0 2px 10px color-mix(in srgb, var(--color-ink) 10%, transparent)}}.audio-replay-btn{transition:background-color .15s,border-color .15s,box-shadow .15s,transform .15s}.audio-replay-btn:hover:not(:disabled){border-color:var(--color-accent-dark);box-shadow:0 4px 14px var(--color-accent)}@supports (color:color-mix(in lab, red, red)){.audio-replay-btn:hover:not(:disabled){box-shadow:0 4px 14px color-mix(in srgb, var(--color-accent) 22%, transparent)}}.audio-replay-btn:disabled{cursor:default;opacity:.72}.audio-replay-btn--playing{background-color:var(--color-accent)}@supports (color:color-mix(in lab, red, red)){.audio-replay-btn--playing{background-color:color-mix(in srgb, var(--color-accent) 14%, var(--color-canvas-white))}}.audio-replay-btn--playing{border-color:var(--color-accent-dark);box-shadow:0 0 0 3px var(--color-accent)}@supports (color:color-mix(in lab, red, red)){.audio-replay-btn--playing{box-shadow:0 0 0 3px color-mix(in srgb, var(--color-accent) 35%, transparent)}}.audio-pill{font-size:13px;font-weight:700;font-family:var(--font-sans);background:var(--color-teal-bright);color:var(--color-canvas-white);cursor:pointer;box-shadow:0 2px 10px var(--color-ink);border:none;border-radius:20px;flex-shrink:0;align-items:center;gap:8px;margin:0;padding:9px 18px;line-height:1.2;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.audio-pill{box-shadow:0 2px 10px color-mix(in srgb, var(--color-ink) 18%, transparent)}}.audio-pill{transition:background-color .15s,box-shadow .15s,opacity .15s}.audio-pill:hover:not(:disabled){box-shadow:0 4px 14px var(--color-ink)}@supports (color:color-mix(in lab, red, red)){.audio-pill:hover:not(:disabled){box-shadow:0 4px 14px color-mix(in srgb, var(--color-ink) 22%, transparent)}}.audio-pill:disabled{cursor:default;opacity:.85}.audio-pill--playing{background-color:var(--color-mascot-button-text)}@supports (color:color-mix(in lab, red, red)){.audio-pill--playing{background-color:color-mix(in srgb, var(--color-mascot-button-text) 22%, var(--color-teal-bright))}}.audio-pill--playing{box-shadow:0 0 0 3px var(--color-canvas-white)}@supports (color:color-mix(in lab, red, red)){.audio-pill--playing{box-shadow:0 0 0 3px color-mix(in srgb, var(--color-canvas-white) 35%, transparent)}}.audio-anchor{background:var(--color-teal);width:75px;height:75px;color:var(--color-canvas-white);cursor:pointer;box-shadow:0 4px 16px var(--color-ink);border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex;position:relative}@supports (color:color-mix(in lab, red, red)){.audio-anchor{box-shadow:0 4px 16px color-mix(in srgb, var(--color-ink) 24%, transparent)}}.audio-anchor:hover{filter:brightness(1.04)}.audio-anchor:disabled{cursor:default}.audio-anchor__icon{z-index:3;justify-content:center;align-items:center;width:48px;height:48px;display:inline-flex;position:relative}.audio-anchor__icon svg{width:100%;height:100%;display:block}.audio-anchor__idle-ring{border:1.5px solid var(--color-teal);opacity:.3;z-index:1;pointer-events:none;border-radius:50%;width:83px;height:83px;position:absolute;top:-4px;left:-4px}.audio-anchor__halos{z-index:2;pointer-events:none;display:none;position:absolute;inset:0}.audio-anchor__halo{border:1.5px solid var(--color-teal);opacity:0;border-radius:50%;width:75px;height:75px;position:absolute;top:0;left:0}@keyframes audio-anchor-halo{0%{opacity:.6;transform:scale(1)}to{opacity:0;transform:scale(1.2667)}}.audio-anchor--playing .audio-anchor__idle-ring{display:none}.audio-anchor--playing .audio-anchor__halos{display:block}.audio-anchor--playing .audio-anchor__halo{animation:1.2s linear infinite audio-anchor-halo}.audio-anchor--playing .audio-anchor__halo--1{animation-delay:0s}.audio-anchor--playing .audio-anchor__halo--2{animation-delay:.4s}.audio-anchor--playing .audio-anchor__halo--3{animation-delay:.8s}@keyframes audio-anchor-wrong-pulse-halo{0%{opacity:.55;transform:scale(1)}to{opacity:0;transform:scale(1.35)}}.audio-anchor--wrong-pulse .audio-anchor__idle-ring{display:none}.audio-anchor--wrong-pulse .audio-anchor__halos{display:block}.audio-anchor--wrong-pulse .audio-anchor__halo{animation:.4s ease-out forwards audio-anchor-wrong-pulse-halo}.audio-anchor--wrong-pulse .audio-anchor__halo--1{animation-delay:0s}.audio-anchor--wrong-pulse .audio-anchor__halo--2{animation-delay:.1s}.audio-anchor--wrong-pulse .audio-anchor__halo--3{animation-delay:.2s}@media (prefers-reduced-motion:reduce){.audio-anchor--playing .audio-anchor__halos{display:none}.audio-anchor--playing .audio-anchor__idle-ring{display:block}.audio-anchor--wrong-pulse .audio-anchor__halos{display:none}.audio-anchor--wrong-pulse .audio-anchor__idle-ring{display:block}}.gpc-match-screen{z-index:1;box-sizing:border-box;flex-direction:column;min-height:min(100dvh,640px);padding:24px 0 28px;display:flex;position:relative}.gpc-match-screen__anchor{flex:none;justify-content:center;align-items:center;min-height:min(30vh,200px);padding:8px 14px 12px;display:flex}.gpc-match-screen__tiles{flex:auto;justify-content:center;align-items:center;min-height:0;padding:0 14px 12px;display:flex}.gpc-match-grid{grid-template-columns:1fr 1fr;justify-items:center;gap:12px;width:calc(100% - 28px);max-width:100%;margin:0 auto;display:grid}@keyframes tile-invite{0%{transform:scale(1)}50%{transform:scale(1.03)}to{transform:scale(1)}}@keyframes tile-shake{0%{transform:translate(0)}25%{transform:translate(-8px)}75%{transform:translate(8px)}to{transform:translate(0)}}@keyframes tile-incorrect-ring{0%{box-shadow:0 4px 8px #0000002e, 0 0 0 3px var(--color-coral)}to{box-shadow:0 4px 8px #0000002e,0 0 #0000}}.gpc-match-tile{box-sizing:border-box;min-width:0;font:inherit;cursor:pointer;border:2.5px solid var(--color-border-subtle);color:var(--color-ink);background:#fffdf7;border-radius:10px;justify-content:center;align-items:center;width:107px;height:96px;margin:0;padding:8px 10px;transition:border-color .2s ease-out,background-color .2s ease-out,color .2s ease-out,box-shadow .2s ease-out,transform .2s ease-out,opacity .2s ease-out;display:flex;position:relative;box-shadow:0 4px 8px #0000002e}.gpc-match-tile__glyph{font-size:36px;line-height:1}.gpc-match-tile:disabled{cursor:default}.gpc-match-tile--muted{opacity:.55}.gpc-match-tile--invite{animation:.6s ease-in-out tile-invite}.gpc-match-tile--dimmed{opacity:.35}.gpc-match-tile--correct{border:3px solid var(--color-teal);color:var(--color-teal);background:#fffdf7;transform:scale(1.07);box-shadow:0 4px 8px #0000002e}.gpc-match-tile__check{background:var(--color-teal);width:14px;height:14px;color:var(--color-canvas-white);pointer-events:none;border-radius:50%;justify-content:center;align-items:center;font-size:10px;font-weight:800;line-height:1;display:inline-flex;position:absolute;top:4px;right:4px}.gpc-match-tile--incorrect{animation:.25s ease-in-out tile-shake,.3s ease-out forwards tile-incorrect-ring}.gpc-match-tile--hint{border:2.5px solid var(--color-accent)}@supports (color:color-mix(in lab, red, red)){.gpc-match-tile--hint{border:2.5px solid color-mix(in srgb, var(--color-accent) 55%, var(--color-ink) 45%)}}.gpc-match-tile--hint{box-shadow:0 0 0 3px var(--color-accent), 0 4px 8px #0000002e}@supports (color:color-mix(in lab, red, red)){.gpc-match-tile--hint{box-shadow:0 0 0 3px color-mix(in srgb, var(--color-accent) 45%, transparent), 0 4px 8px #0000002e}}.gpc-match-tile.tile--escalated{width:100%;max-width:none;height:auto;min-height:120pt;max-height:none}@media (width>=600px){.gpc-match-tile{width:min(140px,100%);max-width:140px;height:120px;max-height:120px}.gpc-match-tile.tile--escalated{width:100%;max-width:none;height:auto;min-height:120pt;max-height:none}}@media (prefers-reduced-motion:reduce){.gpc-match-tile--invite,.gpc-match-tile--incorrect{animation:none}}.progress-dot{box-sizing:border-box}.progress-dot--filled{background-color:var(--color-coral);border-color:#0000}.progress-dot--empty{background-color:#0000}.progress-dot--ring{border:2px solid var(--color-coral);background-color:#0000}.word-building-screen{color:var(--color-canvas-white);background:0 0;border-radius:0;min-height:min(520px,100dvh);padding:16px 12px 20px}.word-building-card{background:var(--color-canvas-white);box-shadow:var(--shadow-assessment-card);border-radius:12px}.word-building-card--pad{padding:12px}.elkonin-filled-grapheme{color:var(--color-teal);font-family:Sassoon Infant,Sassoon Infant Fallback,cursive;font-size:2rem;font-weight:500;line-height:1}.elkonin-box{appearance:none;background:#5d2c13;border:none;border-radius:8px;transition:box-shadow .2s,border-color .2s,outline-color .2s;box-shadow:inset 0 2px 6px #0000004d}.elkonin-box--fox-hint{border:2px solid var(--color-accent);box-shadow:inset 0 2px 6px #00000040, var(--shadow-assessment-card)}.elkonin-box--flash{box-shadow:0 0 0 4px var(--color-mascot-primary), inset 0 2px 6px #0000004d}@supports (color:color-mix(in lab, red, red)){.elkonin-box--flash{box-shadow:0 0 0 4px color-mix(in srgb, var(--color-mascot-primary) 38%, transparent), inset 0 2px 6px #0000004d}}.elkonin-box--active{outline:2px solid var(--color-teal);outline-offset:2px;animation:2.2s ease-in-out infinite box-breathe}@keyframes box-breathe{0%,to{opacity:.5;transform:scale(1)}50%{opacity:.9;transform:scale(1.04)}}@media (prefers-reduced-motion:reduce){.elkonin-box--active{opacity:.9;outline:2px solid var(--color-teal);animation:none}}.elkonin-box--error{outline:3px solid var(--color-coral);animation:.3s ease-out forwards box-error-flash}@keyframes box-error-flash{0%{outline-color:var(--color-coral);opacity:1}to{opacity:1;outline-color:#0000}}@media (prefers-reduced-motion:reduce){.elkonin-box--error{outline-color:#0000;animation:none}}.picture-card{box-sizing:border-box}.picture-card--complete{box-shadow:0 0 0 3px var(--color-teal), 0 0 16px 4px #2f9e8559;transition:box-shadow .4s}.wb-tile-band{box-sizing:border-box}.elkonin-row--complete{background:#2f9e8524;border-radius:6px;transition:background .4s}.tile-bank-tile{background:var(--color-cream);color:var(--bg-child-build);border:2px solid var(--color-ink);border-radius:8px}@supports (color:color-mix(in lab, red, red)){.tile-bank-tile{border:2px solid color-mix(in srgb, var(--color-ink) 18%, transparent)}}.tile-bank-tile{box-shadow:0 4px 8px #0003}.tile-bank-tile--idle.tile-bank-tile--hover,.tile-bank-tile--selected.tile-bank-tile--hover,.tile-bank-tile--hint.tile-bank-tile--hover{background:var(--color-cream)}@supports (color:color-mix(in lab, red, red)){.tile-bank-tile--idle.tile-bank-tile--hover,.tile-bank-tile--selected.tile-bank-tile--hover,.tile-bank-tile--hint.tile-bank-tile--hover{background:color-mix(in srgb, var(--color-cream) 88%, var(--bg-child-build))}}.tile-bank-tile--idle.tile-bank-tile--pressed,.tile-bank-tile--selected.tile-bank-tile--pressed,.tile-bank-tile--hint.tile-bank-tile--pressed{background:var(--color-cream)}@supports (color:color-mix(in lab, red, red)){.tile-bank-tile--idle.tile-bank-tile--pressed,.tile-bank-tile--selected.tile-bank-tile--pressed,.tile-bank-tile--hint.tile-bank-tile--pressed{background:color-mix(in srgb, var(--color-cream) 78%, var(--bg-child-build))}}.tile-bank-tile--selected{border:2px solid var(--bg-child-build);box-shadow:0 6px 18px var(--color-ink)}@supports (color:color-mix(in lab, red, red)){.tile-bank-tile--selected{box-shadow:0 6px 18px color-mix(in srgb, var(--color-ink) 20%, transparent)}}.tile-bank-tile--hint{box-shadow:0 0 0 3px var(--bg-child-build), 0 6px 18px var(--color-ink)}@supports (color:color-mix(in lab, red, red)){.tile-bank-tile--hint{box-shadow:0 0 0 3px color-mix(in srgb, var(--bg-child-build) 40%, transparent), 0 6px 18px color-mix(in srgb, var(--color-ink) 22%, transparent)}}.tile-bank-tile--placed{border:2px solid var(--color-ink)}@supports (color:color-mix(in lab, red, red)){.tile-bank-tile--placed{border:2px solid color-mix(in srgb, var(--color-ink) 12%, transparent)}}.tile-bank-tile--placed{background-color:var(--color-child-accent);color:var(--color-canvas-white);box-shadow:none}.tile-bank-tile--spent{position:relative}.tile-bank-tile--spent .tile-glyph{opacity:.3}.tile-bank-tile--spent .tile-check-badge{box-sizing:border-box;background:var(--color-teal);width:12pt;height:12pt;color:var(--color-canvas-white);pointer-events:none;border-radius:50%;justify-content:center;align-items:center;font-size:8pt;font-weight:800;line-height:1;display:inline-flex;position:absolute;top:-4px;right:-4px}.elkonin-box--filled{box-sizing:border-box;border:2px solid var(--color-teal);background:var(--color-cream);box-shadow:none;border-radius:12px;justify-content:center;align-items:center;display:flex}.audio-btn-wb.audio-replay-btn{box-sizing:border-box;background:var(--color-teal);width:2.6875rem;min-width:44px;height:2.6875rem;min-height:44px;color:var(--color-canvas-white);box-shadow:0 2px 10px var(--color-ink);border:none;border-radius:50%;padding:0;position:relative}@supports (color:color-mix(in lab, red, red)){.audio-btn-wb.audio-replay-btn{box-shadow:0 2px 10px color-mix(in srgb, var(--color-ink) 10%, transparent)}}.audio-btn-wb.audio-replay-btn:hover:not(:disabled){background:var(--color-canvas-white);border:none}@supports (color:color-mix(in lab, red, red)){.audio-btn-wb.audio-replay-btn:hover:not(:disabled){background:color-mix(in srgb, var(--color-canvas-white) 12%, var(--color-teal))}}.audio-btn-wb.audio-replay-btn:hover:not(:disabled){box-shadow:0 4px 14px var(--color-ink)}@supports (color:color-mix(in lab, red, red)){.audio-btn-wb.audio-replay-btn:hover:not(:disabled){box-shadow:0 4px 14px color-mix(in srgb, var(--color-ink) 18%, transparent)}}.audio-btn-wb.audio-replay-btn:disabled{opacity:.85}.audio-btn-wb.audio-replay-btn--playing{background:var(--color-teal);box-shadow:0 0 0 3px var(--color-canvas-white);border:none}@supports (color:color-mix(in lab, red, red)){.audio-btn-wb.audio-replay-btn--playing{box-shadow:0 0 0 3px color-mix(in srgb, var(--color-canvas-white) 35%, transparent)}}.audio-btn-wb--pulse:after{content:"";border:2px solid var(--color-teal);pointer-events:none;border-radius:50%;animation:1.2s ease-out forwards wb-audio-pulse;position:absolute;inset:-4px}@keyframes wb-audio-pulse{0%{opacity:.8;transform:scale(1)}to{opacity:0;transform:scale(1.6)}}@media (prefers-reduced-motion:reduce){.audio-btn-wb--pulse:after{display:none}}.audio-pill__word{font-family:Sassoon Infant,Sassoon Infant Fallback,cursive;font-size:1.125rem;font-weight:500;line-height:1.2}.status-chip{padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);font-family:var(--font-parent);font-size:var(--text-parent-xs);font-weight:var(--weight-semibold);letter-spacing:.03em;text-transform:uppercase;white-space:nowrap;align-items:center;display:inline-flex}.status-chip--secure{background:var(--color-confirm-positive)}@supports (color:color-mix(in lab, red, red)){.status-chip--secure{background:color-mix(in oklch, var(--color-confirm-positive) 14%, transparent)}}.status-chip--secure{color:var(--color-confirm-positive)}.status-chip--developing{background:var(--color-nudge-border)}@supports (color:color-mix(in lab, red, red)){.status-chip--developing{background:color-mix(in oklch, var(--color-nudge-border) 14%, transparent)}}.status-chip--developing{color:var(--color-nudge-border)}.status-chip--support{background:var(--color-error)}@supports (color:color-mix(in lab, red, red)){.status-chip--support{background:color-mix(in oklch, var(--color-error) 12%, transparent)}}.status-chip--support{color:var(--color-error)}.field{gap:var(--space-2);flex-direction:column;display:flex}.field-label{font-family:var(--font-parent);font-size:var(--text-parent-sm);font-weight:var(--weight-semibold)}.field-input{font-family:var(--font-parent);font-size:var(--text-parent-base);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);border:1px solid var(--color-border,#00000026);width:100%;transition:border-color var(--transition-ui), box-shadow var(--transition-ui);background:#fff}.field-input::placeholder{color:var(--color-muted)}.field-input:focus-visible{border-color:var(--color-teal);box-shadow:0 0 0 3px var(--color-teal);outline:none}@supports (color:color-mix(in lab, red, red)){.field-input:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch, var(--color-teal) 20%, transparent)}}.field-input--error{border-color:var(--color-error)}.field-hint{font-family:var(--font-parent);font-size:var(--text-parent-xs);color:var(--color-muted)}.field-error{font-family:var(--font-parent);font-size:var(--text-parent-xs);color:var(--color-error);margin-top:.3rem}.field .field-error{margin-top:0}.btn-exit-child-wrapper{cursor:pointer;box-sizing:border-box;background:0 0;border:none;border-radius:0;justify-content:center;align-items:center;width:44px;height:44px;margin:0;padding:0;display:flex}.btn-exit-child-wrapper:disabled{cursor:default}.btn-exit-child{box-sizing:border-box;background:0 0;border:1.5px solid #ffffff59;border-radius:50%;justify-content:center;align-items:center;width:27px;height:27px;display:flex}.btn-exit-child__icon{display:block}.phoneme-track{box-sizing:border-box;width:100%;height:14px;margin-bottom:20px;position:relative}.phoneme-track__line{pointer-events:none;background:#f9f5ee99;height:1px;position:absolute;bottom:0;left:0;right:0}.phoneme-tick{opacity:.5;box-sizing:border-box;pointer-events:none;background:#f9f5ee;border-radius:1px;width:2px;height:4px;position:absolute;bottom:0}.phoneme-tick--active{background:var(--color-teal);opacity:1;height:6px}.phoneme-tick--passed{background:var(--color-teal);opacity:.5;height:4px}.blend-letter{transition:color .15s}.blend-letter--idle{color:#c7bfa7}.blend-letter--current{color:var(--color-cream)}.blend-letter--passed{color:#c7bfa7}.blend-letter--complete{color:var(--color-cream);transition:color .3s}.word-card--complete{box-shadow:0 0 0 2px var(--color-teal), 0 0 12px 3px #2f9e854d;transition:box-shadow .3s}@keyframes blend-nudge{0%,to{transform:translate(0)}40%{transform:translate(10px)}60%{transform:translate(8px)}}.blend-handle-hit{box-sizing:border-box}.blend-handle{background:var(--color-coral);width:37px;height:37px;box-shadow:0 2px 10px var(--color-ink);border-radius:50%}@supports (color:color-mix(in lab, red, red)){.blend-handle{box-shadow:0 2px 10px color-mix(in srgb, var(--color-ink) 18%, transparent)}}.blend-handle{box-sizing:border-box;flex-shrink:0;justify-content:center;align-items:center;transition:transform .1s;display:flex;transform:scale(1)}.blend-handle--idle{animation:2.4s ease-in-out infinite blend-nudge}@media (prefers-reduced-motion:reduce){.blend-handle--idle{animation:none}.blend-letter,.blend-letter--complete{transition:none}}.blend-handle--dragging{transform:scale(1.1)}.blend-handle-chevron{display:block}.blend-arrow-fox{left:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));box-sizing:border-box;z-index:2;pointer-events:none;justify-content:flex-start;align-items:flex-end;width:48px;height:48px;display:flex;position:absolute;overflow:hidden}.blend-arrow-fox__scale{transform-origin:0 100%;pointer-events:none;flex-shrink:0;transform:scale(.48)}.blend-arrow-fox__scale>*{pointer-events:auto}.practice-illustration{width:100%;max-width:var(--practice-image-size);aspect-ratio:1;-o-object-fit:contain;object-fit:contain;margin:0 auto;display:block}.alien-word-practice-root{box-sizing:border-box;width:100%;min-height:min(80vh,560px);padding:16px 12px calc(28vh + env(safe-area-inset-bottom,0px));flex-direction:column;justify-content:center;align-items:center;display:flex}.alien-word-practice-loading{min-height:120px}.alien-word-card-wrap{justify-content:center;align-items:center;display:flex}.alien-word-card{background:var(--color-canvas-white);box-shadow:0 8px 28px var(--color-ink), 0 2px 8px var(--color-ink);border-radius:16px}@supports (color:color-mix(in lab, red, red)){.alien-word-card{box-shadow:0 8px 28px color-mix(in srgb, var(--color-ink) 14%, transparent), 0 2px 8px color-mix(in srgb, var(--color-ink) 8%, transparent)}}.alien-word-card{text-align:center;max-width:min(92vw,420px);padding:24px 28px 28px}.alien-word-practice-root .practice-illustration{width:min(100%, var(--practice-image-size));max-width:var(--practice-image-size);aspect-ratio:1;box-sizing:border-box;justify-content:center;align-items:center;margin:0 auto 12px;display:flex;position:relative;overflow:hidden}@media (orientation:landscape) and (height<=500px){.alien-word-practice-root{min-height:0;padding-top:4px;padding-bottom:calc(20vh + env(safe-area-inset-bottom,0px));justify-content:flex-start}.alien-word-card{padding:10px 16px}.alien-word-text{margin:0;font-size:clamp(26px,6.5vw,40px);line-height:1}.alien-word-practice-root .practice-illustration{width:min(100%, var(--practice-image-size));min-width:200px;max-width:var(--practice-image-size);aspect-ratio:auto;height:13vh;max-height:13vh;margin-bottom:4px}}.alien-word-practice-root .practice-illustration>img{-o-object-fit:contain;object-fit:contain;width:100%;height:100%}.alien-word-practice-root .practice-illustration>img.alien-word-image--broken{visibility:hidden}.alien-word-practice-root .practice-illustration>span[role=img]{justify-content:center;align-items:center;font-size:clamp(80px,40vw,200px);line-height:1;display:flex;position:absolute;inset:0}.alien-word-text{font-family:var(--font-sassoon,"Sassoon Infant", serif);color:var(--color-text);margin:0;font-size:clamp(48px,12vw,72px);font-weight:500;line-height:1.1}.psc-intro-root{z-index:20;background:var(--bg-child-psc);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.psc-intro-skip{right:16px;bottom:calc(24px + env(safe-area-inset-bottom,0px));z-index:25;color:var(--color-canvas-white);background:0 0;border:none;padding:8px 12px;position:fixed}@supports (color:color-mix(in lab, red, red)){.psc-intro-skip{color:color-mix(in srgb, var(--color-canvas-white) 55%, transparent)}}.psc-intro-skip{font-family:var(--font-sans);cursor:pointer;font-size:.875rem;font-weight:600}.psc-intro-skip:hover{color:var(--color-canvas-white)}@supports (color:color-mix(in lab, red, red)){.psc-intro-skip:hover{color:color-mix(in srgb, var(--color-canvas-white) 85%, transparent)}}.psc-intro-alien-grid{opacity:0;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;max-width:560px;padding:24px;transition:opacity .6s;display:flex}.psc-intro-alien-grid--visible{opacity:1}.psc-intro-alien-thumb{box-shadow:0 4px 16px var(--color-ink);border-radius:12px}@supports (color:color-mix(in lab, red, red)){.psc-intro-alien-thumb{box-shadow:0 4px 16px color-mix(in srgb, var(--color-ink) 22%, transparent)}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}
