@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-400-normal-CDDApCn2.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-400-normal-CYLoc0-x.woff)format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-latin-500-normal-6ng42L7E.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-500-normal-BgVn5rGT.woff)format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-latin-600-normal-CuJfVYMP.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-600-normal-Cu4Hd6ag.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-500-normal-CB9ihrfo.woff)format("woff")}@font-face{font-family:Fraunces;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fraunces-latin-600-normal-BFCDtZfi.woff2)format("woff2"),url(/assets/fraunces-latin-600-normal-DL5QCzvS.woff)format("woff")}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--font-sans:"IBM Plex Sans", system-ui, "Segoe UI", sans-serif;--font-display:"Fraunces", Georgia, serif;--font-mono:"IBM Plex Mono", ui-monospace, Consolas, monospace;--text-sm:.875rem;--text-md:1rem;--text-lg:1.125rem;--text-xl:1.375rem;--text-2xl:1.75rem;--text-3xl:2.125rem;--background:oklch(96.3% .007 88);--foreground:oklch(20.4% .011 260);--card:oklch(100% 0 0);--primary:oklch(48.9% .08 171.5);--primary-strong:oklch(41% .075 171.5);--primary-foreground:oklch(100% 0 0);--secondary:oklch(92.4% .024 165);--muted:oklch(94% .008 88);--muted-foreground:oklch(46% .022 264);--border:oklch(86.2% .014 88);--border-strong:oklch(62% .02 88);--coral:oklch(56% .15 34);--coral-soft:oklch(95% .03 34);--gold:oklch(72.9% .137 77);--gold-ink:oklch(47% .095 70);--gold-soft:oklch(96% .04 85);--sky:oklch(64% .103 252);--focus-ring:oklch(42% .12 252);--child-bg:oklch(93% .022 155);--child-surface:oklch(99% .004 155);--child-ink:oklch(25% .02 160);--child-cell:oklch(98.5% .004 155);--child-cell-border:oklch(55% .03 160);--child-cell-lit:oklch(36% .07 171.5);--child-cell-lit-ring:oklch(80% .15 85);--child-success:oklch(80% .15 85);--child-success-ink:oklch(42% .09 70);--child-neutral:oklch(60% .05 252);--child-correct:oklch(52% .14 150);--child-wrong:oklch(53% .19 27);--child-carton:oklch(72% .09 65);--child-carton-dark:oklch(58% .09 60);--child-carton-tape:oklch(86% .05 80);--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--radius-xl:12px;--radius-pill:999px;--shadow-subtle:0 2px 8px oklch(20% .01 160/.05);--shadow-target:0 8px 24px oklch(20% .04 160/.16);--ease:cubic-bezier(.32, .72, 0, 1);--target-min:44px}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--background:oklch(19.5% .012 170);--foreground:oklch(93.5% .01 88);--card:oklch(23.5% .013 170);--primary:oklch(74% .09 168);--primary-strong:oklch(80% .08 168);--primary-foreground:oklch(18% .02 170);--secondary:oklch(30% .035 168);--muted:oklch(27% .012 170);--muted-foreground:oklch(78% .018 100);--border:oklch(38% .014 170);--border-strong:oklch(60% .02 170);--coral:oklch(75% .13 34);--coral-soft:oklch(30% .05 34);--gold:oklch(78% .12 77);--gold-ink:oklch(85% .11 80);--gold-soft:oklch(30% .04 80);--sky:oklch(74% .09 252);--focus-ring:oklch(82% .11 252);--shadow-subtle:0 2px 10px oklch(0% 0 0/.25);--shadow-target:0 8px 24px oklch(0% 0 0/.35)}}html,body,#root{height:100%}*,:before,:after{box-sizing:border-box}body{font-family:var(--font-sans);font-size:var(--text-md);color:var(--foreground);background:var(--background);-webkit-font-smoothing:antialiased;margin:0;line-height:1.55}h1,h2,h3{margin:0;line-height:1.25}h1,h2{font-family:var(--font-display);font-weight:600}h1{font-size:var(--text-3xl)}h2{font-size:var(--text-xl)}h3{font-size:var(--text-lg);font-weight:600}p{margin:0}a{color:var(--primary-strong);text-underline-offset:3px}a:hover{color:var(--primary)}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px;border-radius:var(--radius-sm)}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.btn{justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--target-min);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--card);color:var(--foreground);font-size:var(--text-md);transition:background .15s var(--ease), border-color .15s var(--ease), transform .15s var(--ease);padding:.55rem 1.1rem;font-weight:500;line-height:1.2;text-decoration:none;display:inline-flex}.btn:hover:not(:disabled){background:var(--muted);border-color:var(--primary)}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn--primary{background:var(--primary);border-color:var(--primary);color:var(--primary-foreground)}.btn--primary:hover:not(:disabled){background:var(--primary-strong);border-color:var(--primary-strong)}.btn--ghost{color:var(--primary-strong);background:0 0;border-color:#0000}.btn--ghost:hover:not(:disabled){background:var(--secondary);border-color:#0000}.btn--danger{border-color:var(--coral);color:var(--coral)}.btn--danger:hover:not(:disabled){background:var(--coral-soft);border-color:var(--coral)}.btn--lg{min-height:52px;font-size:var(--text-lg);padding:.75rem 1.5rem}input:not([type]),input[type=text],input[type=email],input[type=password],input[type=number],select,textarea{min-height:var(--target-min);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--card);color:var(--foreground);font-size:var(--text-md);padding:.5rem .75rem}textarea{resize:vertical;min-height:7rem;line-height:1.6}input:focus-visible,select:focus-visible,textarea:focus-visible{border-color:var(--primary)}input[type=checkbox],input[type=radio]{width:20px;height:20px;accent-color:var(--primary);flex-shrink:0;margin:0}[role=alert]{color:var(--coral);font-weight:500}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.app-header{z-index:30;border-bottom:1px solid var(--border);background:color-mix(in oklch, var(--card) 85%, transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);position:sticky;top:0}.app-header__inner{max-width:72rem;padding:var(--space-3) var(--space-5);align-items:center;gap:var(--space-5);margin:0 auto;display:flex}.brand{align-items:center;gap:var(--space-3);color:var(--foreground);text-decoration:none;display:flex}.brand:hover{color:var(--foreground)}.brand__mark{border-radius:var(--radius-lg);background:var(--primary);width:40px;height:40px;color:var(--primary-foreground);flex-shrink:0;place-items:center;display:grid}.brand__name{font-weight:600;font-size:var(--text-lg);line-height:1.2;display:block}.brand__tagline{font-size:var(--text-sm);color:var(--muted-foreground);display:block}.app-nav{gap:var(--space-1);flex:1;display:flex}.app-nav a{min-height:var(--target-min);padding:0 var(--space-3);border-radius:var(--radius-md);color:var(--muted-foreground);align-items:center;font-weight:500;text-decoration:none;display:inline-flex}.app-nav a:hover{background:var(--secondary);color:var(--primary-strong)}.app-nav a[aria-current=page]{color:var(--primary-strong);background:var(--secondary)}.app-header__user{align-items:center;gap:var(--space-3);font-size:var(--text-sm);color:var(--muted-foreground);display:flex}.status-dot{background:var(--primary);border-radius:50%;flex-shrink:0;width:8px;height:8px}.skip-link{left:var(--space-3);z-index:50;padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);background:var(--primary);color:var(--primary-foreground);font-weight:500;position:absolute;top:-100px}.skip-link:focus{top:var(--space-3);color:var(--primary-foreground)}.clinician-layout__content:focus{outline:none}.clinician-layout__content>main,.login-screen{max-width:72rem;padding:var(--space-6) var(--space-5) var(--space-5);margin:0 auto}.clinician-layout__content>main>h1{margin-bottom:var(--space-5)}.clinician-layout section{margin-bottom:var(--space-6)}.clinician-layout section>h2,.clinician-layout main>h2{margin:var(--space-6) 0 var(--space-3)}.eyebrow{font-family:var(--font-mono);font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.04em;color:var(--muted-foreground)}.lead{color:var(--muted-foreground);font-size:var(--text-lg)}.clinician-layout__footer{max-width:72rem;margin:var(--space-6) auto var(--space-4);padding:var(--space-4) var(--space-5) 0;border-top:1px solid var(--border);color:var(--muted-foreground);font-size:var(--text-sm)}.clinician-layout__footer p{margin:var(--space-1) 0}.clinician-layout__version{font-family:var(--font-mono)}.clinician-layout button:not([class]),.login-screen button:not([class]){justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--target-min);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--card);color:var(--foreground);padding:.55rem 1.1rem;font-weight:500;line-height:1.2;display:inline-flex}.clinician-layout button:not([class]):hover:not(:disabled),.login-screen button:not([class]):hover:not(:disabled){background:var(--muted);border-color:var(--primary)}.clinician-layout button[type=submit]:not([class]),.login-screen button[type=submit]:not([class]){background:var(--primary);border-color:var(--primary);color:var(--primary-foreground)}.clinician-layout button[type=submit]:not([class]):hover:not(:disabled),.login-screen button[type=submit]:not([class]):hover:not(:disabled){background:var(--primary-strong)}.clinician-layout button:disabled,.login-screen button:disabled{opacity:.55;cursor:not-allowed}.panel{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-subtle);padding:var(--space-5)}.clinician-layout form,.login-screen form{gap:var(--space-2);flex-direction:column;max-width:32rem;display:flex}.clinician-layout form label,.login-screen form label{font-weight:500;font-size:var(--text-md)}.clinician-layout form button,.login-screen form button{margin-top:var(--space-2);align-self:flex-start}.clinician-layout fieldset{border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-3) var(--space-4);margin:var(--space-2) 0}.clinician-layout legend{padding:0 var(--space-2);font-weight:500}.clinician-layout fieldset label{align-items:center;gap:var(--space-2);min-height:var(--target-min);font-weight:400;display:flex}.item-list{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-subtle);margin:0;padding:0;list-style:none;overflow:hidden}.item-list>li{align-items:center;gap:var(--space-3) var(--space-5);min-height:56px;padding:var(--space-3) var(--space-5);border-bottom:1px solid var(--border);flex-wrap:wrap;display:flex}.item-list>li:last-child{border-bottom:0}.item-list__main{flex:1;min-width:12rem;font-weight:500}.item-list__meta{color:var(--muted-foreground);font-size:var(--text-sm)}.item-list__empty{color:var(--muted-foreground)}.patient-code{font-family:var(--font-mono);font-weight:500}.status-badge{align-items:center;gap:var(--space-1);border-radius:var(--radius-pill);border:1px solid var(--primary);background:var(--secondary);color:var(--primary-strong);font-size:var(--text-sm);white-space:nowrap;padding:2px 10px;font-weight:500;display:inline-flex}.status-badge--pending{border-style:dashed;border-color:var(--gold-ink);background:var(--gold-soft);color:var(--gold-ink)}.two-columns{gap:var(--space-6);grid-template-columns:minmax(0,1.4fr) minmax(18rem,1fr);align-items:start;display:grid}@media (width<=900px){.two-columns{grid-template-columns:1fr}}.data-table{border-collapse:collapse;background:var(--card);border:1px solid var(--border);border-radius:var(--radius-xl);width:100%;overflow:hidden}.data-table th{text-align:left;font-family:var(--font-mono);font-size:var(--text-sm);text-transform:uppercase;color:var(--muted-foreground);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border);font-weight:400}.data-table td{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border);vertical-align:top}.data-table tr:last-child td{border-bottom:0}.dv-list{gap:var(--space-1) var(--space-2);font-family:var(--font-mono);font-size:var(--text-sm);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.dv-list li{border-radius:var(--radius-sm);background:var(--muted);padding:1px 8px}.load-error{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.resume-banner{background:var(--gold-soft);color:var(--foreground);padding:var(--space-3) var(--space-5);border-bottom:1px solid var(--gold-ink)}.login-screen{max-width:30rem;padding-top:var(--space-7)}.login-screen h1{font-size:var(--text-2xl);margin:var(--space-4) 0 var(--space-5)}.program-editor__add{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.program-editor__add label[for]{font-weight:500}.program-editor__list{margin:var(--space-5) 0;padding:0;list-style:none}.program-editor__item{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-subtle);padding:var(--space-4) var(--space-5);margin-bottom:var(--space-4)}.program-editor__item-header{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.program-editor__title{min-width:14rem;font-size:var(--text-lg);flex:1}.program-editor__position{font-family:var(--font-mono);color:var(--muted-foreground)}.program-editor__handle{cursor:grab;font-size:var(--text-xl);min-width:var(--target-min);padding:0}.program-editor__item details{margin-top:var(--space-3);border-top:1px solid var(--border);padding-top:var(--space-3)}.program-editor__item summary{min-height:var(--target-min);color:var(--primary-strong);cursor:pointer;align-items:center;font-weight:500;display:flex}.program-editor__diagnostic-toggle{align-items:center;gap:var(--space-2);min-height:var(--target-min);font-size:var(--text-sm);color:var(--muted-foreground);font-weight:400;display:inline-flex}.settings-form{gap:var(--space-4) var(--space-5);margin-top:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(17rem,1fr));display:grid}.settings-form__field{gap:var(--space-1);flex-direction:column;display:flex}.settings-form__field label{font-weight:500}.settings-form__field input[type=checkbox]{width:24px;height:24px}.settings-form__help,.settings-form__prefill{font-size:var(--text-sm);color:var(--muted-foreground)}.settings-form__prefill{color:var(--primary-strong);font-weight:500}.settings-form>button{grid-column:1/-1;justify-self:start}.age-guidance{border-left:4px solid var(--gold);background:var(--gold-soft);border-radius:0 var(--radius-lg) var(--radius-lg) 0;padding:var(--space-3) var(--space-4);margin:var(--space-3) 0;font-size:var(--text-sm)}.age-guidance__title{margin-bottom:var(--space-2);font-weight:600}.age-guidance dl{margin:0}.age-guidance dt{font-weight:600}.age-guidance dd{margin:0 0 var(--space-2)}.age-guidance__note{color:var(--muted-foreground)}.breadcrumb{align-items:center;gap:var(--space-2);margin-bottom:var(--space-4);font-size:var(--text-sm);color:var(--muted-foreground);flex-wrap:wrap;display:flex}.breadcrumb a{min-height:var(--target-min);align-items:center;display:inline-flex}.patient-file-screen section>.btn{margin-bottom:var(--space-4)}.launch-panel{align-items:flex-start;gap:var(--space-3);flex-direction:column;max-width:40rem;display:flex}.launch-panel select{min-width:16rem}.game-catalog{margin-top:var(--space-6)}.game-catalog h2{margin-top:0}.game-catalog__filters{gap:var(--space-3);margin-bottom:var(--space-5);flex-direction:column;display:flex}.chip-group{align-items:center;gap:var(--space-2);border:0;flex-wrap:wrap;margin:0;padding:0;display:flex}.chip-group legend{float:left;min-width:6.5rem;margin-right:var(--space-2);font-weight:500}.chip{display:inline-flex;position:relative}.chip input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.chip span{min-height:var(--target-min);padding:0 var(--space-4);border:1px solid var(--border-strong);border-radius:var(--radius-pill);background:var(--card);font-size:var(--text-sm);align-items:center;font-weight:500;display:inline-flex}.chip input:hover+span{border-color:var(--primary)}.chip input:checked+span{background:var(--primary);border-color:var(--primary);color:var(--primary-foreground)}.chip input:focus-visible+span{outline:3px solid var(--focus-ring);outline-offset:2px}.game-catalog__grid{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));margin:0;padding:0;list-style:none;display:grid}.game-card{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card);flex-direction:column;display:flex;overflow:hidden}.game-card__vignette{aspect-ratio:16/9;object-fit:cover;background:var(--child-bg);border-bottom:1px solid var(--border);width:100%;height:auto;display:block}.game-card__vignette--empty{font-family:var(--font-mono);color:var(--muted-foreground);justify-content:center;align-items:center;display:flex}.game-card__body{padding:var(--space-3) var(--space-4) 0;flex:1}.game-card__name{font-size:var(--text-lg);margin:0}.game-card__meta{margin:var(--space-1) 0 0;font-size:var(--text-sm);color:var(--muted-foreground)}.game-card__code{font-family:var(--font-mono)}.game-card__description{margin:var(--space-2) 0 0;font-size:var(--text-sm);line-height:1.4}.game-card__add{margin:var(--space-3) var(--space-4) var(--space-4);align-self:flex-start}.palier-picker{align-items:center;gap:var(--space-2);margin-top:var(--space-3);flex-wrap:wrap;display:flex}.palier-picker__label{margin-right:var(--space-1);font-weight:500}.palier-picker__btn{min-width:var(--target-min);font-family:var(--font-mono);padding:0}.palier-picker__btn--on,.palier-picker__btn--on:hover:not(:disabled){background:var(--primary);border-color:var(--primary);color:var(--primary-foreground)}.palier-picker__note{font-size:var(--text-sm);color:var(--muted-foreground)}.progress-intro{max-width:60rem;font-size:var(--text-sm);color:var(--muted-foreground)}.progress-grid-cards{gap:var(--space-4);margin:var(--space-4) 0;grid-template-columns:repeat(auto-fill,minmax(22rem,1fr));display:grid}.progress-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-4)}.progress-card h3{margin:0 0 var(--space-2);font-size:var(--text-lg)}.progress-chart{width:100%;height:auto;display:block;overflow:visible}.progress-grid{stroke:var(--border);stroke-width:1px}.progress-axis{fill:var(--muted-foreground);font-size:11px;font-family:var(--font-mono)}.progress-series--v{--series:oklch(50% .13 245)}.progress-series--nv{--series:oklch(55% .17 40)}.progress-line{fill:none;stroke:var(--series);stroke-width:1.5px}.progress-marker{fill:var(--series);stroke:var(--series);stroke-width:2px}.progress-trend{fill:none;stroke:var(--foreground);stroke-width:3px;stroke-dasharray:6 4;opacity:.7}.progress-point{cursor:pointer}.progress-point__hit{fill:#0000}.progress-point:focus-visible{outline:none}.progress-point:focus-visible .progress-point__hit,.progress-point--selected .progress-point__hit{stroke:var(--focus-ring);stroke-width:2.5px}.progress-legend{gap:var(--space-4);margin:var(--space-2) 0 0;font-size:var(--text-sm);flex-wrap:wrap;display:flex}.progress-legend__item{align-items:center;gap:var(--space-1);display:inline-flex}.progress-legend__swatch{background:var(--series);border-radius:50%;width:12px;height:12px}.progress-legend__trend{border-top:3px dashed var(--foreground);opacity:.7;width:20px}.progress-detail{margin-top:var(--space-3);padding:var(--space-3);background:var(--muted);border-radius:var(--radius-md);font-size:var(--text-sm)}.progress-detail__title{margin:0 0 var(--space-2);font-weight:600}.progress-detail ul{padding-left:var(--space-5);margin:0}.progress-table{margin-top:var(--space-3);font-size:var(--text-sm)}.progress-table summary,.session-history summary{min-height:var(--target-min);color:var(--primary-strong);cursor:pointer;align-items:center;font-weight:500;display:flex}.progress-table table{border-collapse:collapse;width:100%}.progress-table th,.progress-table td{text-align:left;padding:var(--space-1) var(--space-2);border-bottom:1px solid var(--border)}.baseline-table{border-collapse:collapse;background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);width:100%;max-width:50rem}.baseline-table th,.baseline-table td{text-align:left;padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border)}.baseline-table thead th{font-size:var(--text-sm);color:var(--muted-foreground);font-weight:500}.baseline-due{margin-left:var(--space-2)}.baseline-actions{gap:var(--space-3);margin-top:var(--space-3);flex-wrap:wrap;display:flex}.unsaved-dialog{width:min(100% - 2rem,34rem);padding:var(--space-6);color:var(--foreground);background:var(--background);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-target)}.unsaved-dialog::backdrop{background:color-mix(in oklch, var(--foreground) 35%, transparent)}.unsaved-dialog h2{font-size:var(--text-xl);margin:0 0 var(--space-3)}.unsaved-dialog p{color:var(--muted-foreground)}.unsaved-dialog__actions{gap:var(--space-3);margin-top:var(--space-5);flex-wrap:wrap;display:flex}.program-editor__vignette{aspect-ratio:16/9;object-fit:cover;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--child-bg);width:112px;height:auto}.program-editor__vignette.game-card__vignette--empty{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--muted-foreground);justify-content:center;align-items:center;display:flex}.session-runner{background:var(--background);width:100%;height:100%;color:var(--foreground);position:relative;overflow:hidden}.child-stage{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:var(--child-bg);width:100%;height:100%;min-height:480px;color:var(--child-ink);-webkit-user-select:none;user-select:none;position:relative;overflow:hidden}.child-stimulus{aspect-ratio:1;background:var(--child-surface);width:min(44vh,40vw);box-shadow:var(--shadow-target);border:2px solid color-mix(in oklch, var(--child-ink) 12%, transparent);border-radius:50%;place-items:center;display:grid;position:absolute;top:46%;left:50%;transform:translate(-50%,-50%)}.child-stimulus img{object-fit:contain;width:68%;height:68%}.child-stimulus--empty{background:color-mix(in oklch, var(--child-surface) 55%, transparent);box-shadow:none}.child-target-reminder{top:var(--space-5);right:var(--space-5);border-radius:var(--radius-xl);background:var(--child-surface);border:4px solid var(--child-cell-lit);width:112px;height:112px;box-shadow:var(--shadow-subtle);padding:10px;position:absolute}.child-target-reminder img{object-fit:contain;width:100%;height:100%}.child-distractor{background:var(--child-neutral);opacity:.12;pointer-events:none;border-radius:50%;width:22px;height:22px;transition:opacity .3s;position:absolute}.child-distractor--on{opacity:.6}.child-listening{background:var(--child-surface);width:180px;height:180px;box-shadow:var(--shadow-target);color:var(--child-cell-lit);border-radius:50%;place-items:center;display:grid;position:absolute;top:46%;left:50%;transform:translate(-50%,-50%)}.child-listening svg{width:84px;height:84px}.child-listening--person svg{width:96px;height:96px}.child-listening__wave{border:3px solid color-mix(in oklch, var(--child-cell-lit) 35%, transparent);border-radius:50%;position:absolute;inset:-18px}.child-listening__wave:nth-child(2){border-color:color-mix(in oklch, var(--child-cell-lit) 18%, transparent);inset:-40px}.child-recall{justify-content:center;align-items:center;gap:var(--space-5);padding:var(--space-5) var(--space-5) 140px;flex-direction:column;display:flex}.child-word-grid{grid-template-columns:repeat(var(--cols,4), minmax(0, 1fr));gap:var(--space-4);width:min(100%, calc(var(--cols,4) * 170px));display:grid}.child-card{aspect-ratio:1;border:3px solid var(--child-cell-border);border-radius:var(--radius-xl);background:var(--child-cell);min-width:96px;box-shadow:var(--shadow-subtle);transition:transform .15s var(--ease), opacity .15s;padding:12px;position:relative}.child-card img{object-fit:contain;pointer-events:none;width:100%;height:100%}.child-card:hover:not(:disabled){border-color:var(--child-cell-lit);transform:translateY(-3px)}.child-card:disabled,.child-cell--chosen{opacity:.45;cursor:default;border-style:dashed}.child-order-dots{pointer-events:none;gap:4px;display:flex;position:absolute;bottom:8px;left:50%;transform:translate(-50%)}.child-order-dots span{background:var(--child-ink);border-radius:50%;width:10px;height:10px}.child-spatial-grid{width:min(100% - 260px,640px);max-width:calc(100% - 2 * var(--space-5));aspect-ratio:1;max-height:calc(100% - 220px);position:absolute;top:calc(50% - 60px);left:50%;transform:translate(-50%,-50%)}.child-cell{left:var(--x);top:var(--y);border:3px solid var(--child-cell-border);border-radius:var(--radius-lg);background:var(--child-cell);width:76px;height:76px;box-shadow:var(--shadow-subtle);padding:0;position:absolute;transform:translate(-50%,-50%)}button.child-cell:hover:not(:disabled){border-color:var(--child-cell-lit);border-width:4px}.child-cell--lit{background:var(--child-cell-lit);border-color:var(--child-cell-lit);box-shadow:0 0 0 6px var(--child-cell-lit-ring), var(--shadow-target)}.child-controls{left:50%;bottom:var(--space-5);gap:var(--space-6);z-index:2;display:flex;position:absolute;transform:translate(-50%)}.child-control{border:3px solid var(--child-cell-lit);background:var(--child-surface);width:96px;height:96px;color:var(--child-cell-lit);box-shadow:var(--shadow-target);transition:transform .15s var(--ease);border-radius:50%;place-items:center;display:grid}.child-control svg{width:44px;height:44px}.child-control--done{background:var(--child-cell-lit);color:var(--child-surface)}.child-control:hover:not(:disabled){transform:translateY(-3px)}.child-control:disabled{opacity:.35;cursor:default}.child-stage :focus-visible{outline:4px solid var(--focus-ring);outline-offset:4px}.child-stage--demo .child-recall,.child-stage--demo .child-spatial-grid,.child-stage--demo .child-controls{pointer-events:none}.feedback{pointer-events:none;z-index:3;filter:drop-shadow(0 4px 10px oklch(20% .02 160/.25));width:104px;height:104px;margin-left:-52px;position:absolute;bottom:7%;left:50%}.feedback svg{width:100%;height:100%}.feedback--success{animation:feedback-success .7s var(--ease) forwards}.feedback--error{animation:.7s ease-out forwards feedback-error}@keyframes feedback-success{0%{opacity:0;transform:scale(.4)}30%{opacity:1;transform:scale(1.15)}to{opacity:0;transform:scale(1)}}@keyframes feedback-error{0%,to{opacity:.95;transform:translate(0)}20%{transform:translate(-10px)}40%{transform:translate(10px)}60%{transform:translate(-6px)}80%{opacity:.6;transform:translate(6px)}}.demo-pointer{left:var(--x);top:var(--y);border:6px solid var(--child-surface);background:color-mix(in oklch, var(--child-cell-lit) 35%, transparent);width:52px;height:52px;box-shadow:0 0 0 3px var(--child-cell-lit), var(--shadow-target);transition:left var(--move-ms,.55s) ease-in-out, top var(--move-ms,.55s) ease-in-out;pointer-events:none;z-index:4;border-radius:50%;margin:-26px 0 0 -26px;position:absolute}.demo-pointer--holding{background:color-mix(in oklch, var(--child-cell-lit) 15%, transparent)}.demo-pointer__carry{left:var(--x);top:var(--y);z-index:3;filter:drop-shadow(0 6px 10px oklch(0% 0 0/.25));pointer-events:none;transition:left var(--move-ms,.55s) ease-in-out, top var(--move-ms,.55s) ease-in-out;position:absolute;transform:translate(-50%,-50%)scale(1.08)}.demo-pointer__carry .tower-ball{width:74px;height:74px;display:block}.demo-space-key{border-radius:var(--radius-xl);border:3px solid var(--child-cell-border);background:var(--child-surface);width:280px;height:64px;box-shadow:var(--shadow-subtle);pointer-events:none;z-index:2;border-bottom-width:9px;margin-left:-140px;transition:transform 80ms,border-bottom-width 80ms,background 80ms;position:absolute;bottom:6%;left:50%}.demo-arrow-keys{pointer-events:none;z-index:2;gap:24px;display:flex;position:absolute;bottom:6%;left:50%;transform:translate(-50%)}.demo-arrow-key{border-radius:var(--radius-xl);border:3px solid var(--child-cell-border);background:var(--child-surface);width:84px;height:72px;color:var(--child-ink);box-shadow:var(--shadow-subtle);border-bottom-width:9px;place-items:center;transition:transform 80ms,border-bottom-width 80ms,background 80ms;display:grid}.demo-arrow-key svg{width:40px;height:40px}.demo-space-key--pressed{background:var(--secondary);border-bottom-width:3px;transform:translateY(6px)}.opposites-choices{justify-content:center;align-items:center;gap:min(14vw,220px);display:flex;position:absolute;inset:0}.opposites-card{cursor:pointer;width:min(30vw,300px)}div.opposites-card{cursor:default}.switch-signal{background:var(--child-cell-lit-ring);width:220px;height:220px;color:var(--child-ink);box-shadow:0 0 0 14px color-mix(in oklch, var(--child-cell-lit-ring) 35%, transparent);border-radius:50%;place-items:center;margin:-110px 0 0 -110px;animation:.7s ease-in-out infinite alternate switch-signal;display:grid;position:absolute;top:50%;left:50%}.switch-signal svg{width:130px;height:130px}@keyframes switch-signal{0%{transform:scale(.94)}to{transform:scale(1.06)}}.child-target-reminder--forbidden{border-color:var(--child-wrong)}.child-target-reminder__badge{width:48px;height:48px;position:absolute;bottom:-14px;right:-14px}.inh-nv-fixation{background:var(--child-cell-border);border-radius:50%;width:18px;height:18px;margin:-9px 0 0 -9px;position:absolute;top:50%;left:50%}.inh-nv-center{place-items:center;display:grid;position:absolute;inset:0}.inh-nv-arrow{width:min(32vw,260px);height:min(32vw,260px);color:var(--child-ink)}.inh-nv-stage--stop{box-shadow:inset 0 0 0 22px var(--child-wrong)}.simon-disc{top:50%;left:var(--x);border:4px solid var(--child-ink);border-radius:50%;width:180px;height:180px;margin:-90px 0 0 -90px;position:absolute}.simon-dot--blue{background:oklch(48% .17 258)}.simon-dot--yellow{background:oklch(88% .16 95)}.simon-keys{gap:24px;display:flex;position:absolute;bottom:22%;left:50%;transform:translate(-50%)}.simon-key{border-radius:var(--radius-xl);border:3px solid var(--child-cell-border);background:var(--child-surface);color:var(--child-ink);border-bottom-width:8px;align-items:center;gap:10px;padding:10px 16px;display:flex}.simon-key svg{width:34px;height:34px}.simon-dot{border:2px solid var(--child-ink);border-radius:50%;width:30px;height:30px}.flex-card{justify-content:center;align-items:center;gap:6%;width:100%;height:100%;display:inline-flex}.flex-card svg{flex:0 auto;max-height:100%}.flex-card[data-count="1"] svg{width:70%}.flex-card[data-count="2"] svg{width:44%}.flex-card[data-count="3"] svg,.flex-card[data-count="4"] svg{width:30%}.flex-current{aspect-ratio:1;border:4px solid var(--child-cell-border);border-radius:var(--radius-xl);background:var(--child-surface);width:min(26vw,230px);box-shadow:var(--shadow-target);padding:16px;position:absolute;top:34%;left:50%;transform:translate(-50%,-50%)}.flex-current--border{border:14px solid var(--child-ink)}.flex-cue{border:4px solid var(--child-ink);background:var(--child-surface);width:120px;height:120px;color:var(--child-ink);border-radius:50%;place-items:center;display:grid;position:absolute;top:5%;left:50%;transform:translate(-50%)}.flex-cue--shape{border-radius:var(--radius-xl);background:var(--child-cell-lit)}.flex-cue--number{background:var(--child-cell-lit-ring);border-radius:18%}.flex-cue__explicit{justify-content:center;align-items:center;gap:6px;width:100%;display:flex}.flex-cue__drop{border:2px solid var(--child-ink);border-radius:50% 50% 50% 0;width:24px;height:24px;transform:rotate(-45deg)}.flex-cue__symbol{width:64px;height:64px}.flex-cue__dots{gap:4px;display:flex}.flex-cue__dots span{background:var(--child-ink);border-radius:50%;width:16px;height:16px}.flex-cue__explicit--number{gap:18px}.flex-self{justify-content:center;gap:48px;display:flex;position:absolute;top:18%;left:0;right:0}.flex-self .flex-cue,.flex-reflection .flex-cue{cursor:pointer;position:static;transform:none}.flex-boxes,.flex-piles{gap:min(18vw,240px);display:flex;position:absolute;bottom:7%;left:50%;transform:translate(-50%)}.flex-piles{gap:28px}.flex-box{aspect-ratio:1;border:4px solid var(--child-cell-border);border-radius:var(--radius-xl);background:var(--child-cell);cursor:pointer;border-bottom-width:10px;width:min(18vw,170px);padding:14px}.flex-piles .flex-box{width:min(16vw,150px)}.flex-box:disabled{cursor:default}.flex-box:hover:not(:disabled){border-color:var(--child-cell-lit)}.flex-box--corrective{border-color:var(--child-correct);box-shadow:0 0 0 8px color-mix(in oklch, var(--child-correct) 40%, transparent)}.flex-reflection{background:color-mix(in oklch, var(--child-bg) 88%, transparent);z-index:3;justify-content:center;align-items:center;gap:56px;display:flex;position:absolute;inset:0}.flex-reflection .flex-cue{width:160px;height:160px;animation:.9s ease-in-out infinite alternate switch-signal}.flex-cue.flex-cue--card{border-radius:var(--radius-xl);background:var(--child-surface);width:auto;height:auto;padding:6px 16px 10px}.flex-v-cuecard{flex-direction:column;align-items:center;gap:6px;display:flex}.flex-v-cuecard__title{letter-spacing:.02em;color:var(--child-ink);font-size:1.375rem;font-weight:700}.flex-v-cuecard__pictos{align-items:flex-end;gap:14px;height:96px;display:flex}.flex-v-cuecard__vs{background:var(--child-cell-border);border-radius:2px;align-self:stretch;width:3px}.flex-v-picto{align-self:center;width:auto;height:86px}.flex-v-size{align-items:stretch;gap:3px;height:100%;display:flex}.flex-v-size--small{height:55%}.flex-v-size img{object-fit:contain;width:auto;min-width:0;height:100%}.flex-v-sticker .flex-v-size{max-width:100%}.flex-v-size__arrow{width:12px;color:var(--child-ink);margin:2px 0;position:relative}.flex-v-size__arrow:before{content:"";background:currentColor;width:3px;position:absolute;top:5px;bottom:5px;left:50%;transform:translate(-50%)}.flex-v-size__arrow:after{content:"";background:conic-gradient(from 150deg at 50% 0, currentColor 60deg, transparent 0) top / 100% 8px no-repeat, conic-gradient(from -30deg at 50% 100%, currentColor 60deg, transparent 0) bottom / 100% 8px no-repeat;position:absolute;inset:0}.flex-box.flex-v-box{aspect-ratio:5/4;border:3px solid var(--child-carton-dark);background:linear-gradient(var(--child-carton-tape), var(--child-carton-tape)) center top / 22% 12% no-repeat, var(--child-carton);width:min(24vw,250px);color:var(--child-ink);border-radius:6px;justify-content:center;align-items:center;gap:10px;padding:12px;display:flex;position:relative}.flex-box.flex-v-box:before,.flex-box.flex-v-box:after{content:"";background:var(--child-carton-dark);border:3px solid var(--child-carton-dark);width:46%;height:16%;position:absolute;top:-16%}.flex-box.flex-v-box:before{clip-path:polygon(8% 0,100% 0,100% 100%,0 100%);left:2%;transform:skew(-8deg)}.flex-box.flex-v-box:after{clip-path:polygon(0 0,92% 0,100% 100%,0 100%);right:2%;transform:skew(8deg)}.flex-box.flex-v-box:hover:not(:disabled){border-color:var(--child-cell-lit)}.flex-v-sticker{aspect-ratio:4/5;width:calc(min(24vw,250px)/2.5);box-shadow:0 2px 0 var(--child-carton-dark);background:#fff;border-radius:6px;flex:none;justify-content:center;align-items:flex-end;padding:6px;display:flex}.flex-v-sticker--a{align-items:center;transform:rotate(-4deg)}.flex-v-sticker--b{transform:rotate(3deg)}.flex-v-sticker .flex-v-picto{width:100%;height:auto}.mct-judgment__answers{gap:min(12vw,160px);display:flex;position:absolute;bottom:8%;left:50%;transform:translate(-50%)}.mct-judgment__no{position:relative}.mct-judgment__cross{height:52px;position:absolute;bottom:8px;right:8px;width:52px!important}.asel-target svg{width:100%;height:100%}.search-area{width:min(78vw,980px);height:64%;position:absolute;top:6%;left:50%;transform:translate(-50%)}.search-item{left:calc(var(--x) * 100%);top:calc(var(--y) * 100%);width:calc(var(--size) * 1px);height:calc(var(--size) * 1px);position:absolute;transform:translate(-50%,-50%)}.search-item svg{width:100%;height:100%}.flanker-row{gap:18px;display:flex;position:absolute;top:38%;left:50%;transform:translate(-50%,-50%)}.flanker-fish{width:min(13vw,150px)}.asel-answers{gap:min(20vw,260px);display:flex;position:absolute;bottom:22%;left:50%;transform:translate(-50%)}.asel-answer{border:3px solid var(--child-cell-border);border-radius:var(--radius-xl);background:var(--child-surface);width:120px;height:104px;color:var(--child-ink);cursor:pointer;border-bottom-width:9px;place-items:center;padding:16px;display:grid}.asel-answer:disabled{cursor:default;opacity:.6}.asel-answer svg{width:60px;height:60px}.asel-answer__absent{place-items:center;display:grid;position:relative}.asel-answer__absent .asel-answer__cross{width:38px;height:38px;position:absolute;bottom:-14px;right:-14px}.cancellation-grid{grid-template-columns:repeat(var(--n), 1fr);gap:6px;width:min(72vh,70vw);display:grid;position:absolute;top:4%;left:50%;transform:translate(-50%)}.cancellation-cell{aspect-ratio:1;border-radius:var(--radius-md);background:var(--child-cell);cursor:pointer;border:2px solid #0000;padding:10%;position:relative}.cancellation-cell svg{width:100%;height:100%}.cancellation-cell--marked{border-color:var(--child-ink)}.cancellation-cell--marked:after{content:"";background:var(--child-ink);border-radius:3px;height:5px;position:absolute;top:50%;left:10%;right:10%;transform:rotate(-45deg)}.cancellation-cell--missed:before{content:"";border:6px solid var(--child-success-ink);pointer-events:none;border-radius:50%;position:absolute;inset:-8%}@media (prefers-reduced-motion:no-preference){.cancellation-cell--missed:before{animation:1.4s ease-in-out infinite cancellation-missed-pulse}}@keyframes cancellation-missed-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.08)}}.asel-v-characters{justify-content:center;align-items:center;gap:min(24vw,320px);display:flex;position:absolute;inset:0 0 20%}.asel-v-character{background:var(--child-surface);width:190px;height:190px;color:var(--child-ink);transition:transform .15s var(--ease);border-radius:50%;place-items:center;display:grid}.asel-v-character svg{width:110px;height:110px}.asel-v-character--target{box-shadow:0 0 0 12px var(--child-cell-lit-ring), var(--shadow-target)}.asel-v-character--masker{opacity:.45}.asel-v-character--speaking{transform:scale(1.06)}.ad-stage{cursor:none}.ad-canvas{width:100%;height:100%;position:absolute;inset:0}.ad-lights{border-radius:var(--radius-xl);background:color-mix(in oklch, var(--child-surface) 85%, transparent);gap:18px;padding:12px 18px;display:flex;position:absolute;bottom:3%;left:3%}.ad-light{color:oklch(82% .01 250);width:64px;height:64px}.ad-light svg{width:100%;height:100%}.ad-light--on.ad-light--0{color:oklch(85% .17 90);filter:drop-shadow(0 0 10px oklch(85% .17 90))}.ad-light--on.ad-light--1{color:oklch(60% .17 145);filter:drop-shadow(0 0 10px oklch(60% .17 145))}.ad-light--on.ad-light--2{color:oklch(55% .18 25);filter:drop-shadow(0 0 10px oklch(55% .18 25))}.ad-light--on.ad-light--3{color:oklch(50% .16 258);filter:drop-shadow(0 0 10px oklch(50% .16 258))}.ad-sound{background:var(--child-surface);width:96px;height:96px;color:var(--child-ink);opacity:.6;border-radius:50%;place-items:center;display:grid;position:absolute;bottom:4%;right:4%}.ad-sound svg{width:52px;height:52px}.ad-sound--on{opacity:1;box-shadow:0 0 0 10px var(--child-cell-lit-ring)}.ad-phase-card{grid-auto-flow:row;gap:32px}.ad-phase-icons{color:var(--child-ink);align-items:center;gap:18px;font-size:56px;font-weight:700;display:flex}.ad-phase-icons svg{width:96px;height:96px}.plan-routine{top:50%;left:var(--space-4);z-index:2;flex-direction:column;gap:14px;display:flex;position:absolute;transform:translateY(-50%)}.plan-routine__step{border:3px solid var(--child-cell-border);border-radius:var(--radius-xl);background:var(--child-surface);width:76px;height:76px;color:var(--child-ink);cursor:pointer;place-items:center;padding:10px;display:grid}.plan-routine__step svg{width:100%;height:100%}.plan-routine__step--done{border-color:var(--child-correct);box-shadow:0 0 0 5px color-mix(in oklch, var(--child-correct) 35%, transparent)}.plan-board{place-items:center;display:grid;position:absolute;inset:4% 7% 15% 120px}.plan-board--locked{opacity:.55}.plan-hourglass{border:6px solid var(--child-cell-lit-ring);border-top-color:#0000;border-radius:50%;width:56px;height:56px;animation:1.4s linear infinite plan-spin;position:absolute;top:8px;right:8px}@keyframes plan-spin{to{transform:rotate(360deg)}}.plan-controls{right:var(--space-5);pointer-events:none}.plan-controls>*{pointer-events:auto}.plan-ready svg{width:30px;height:30px}.tower-board{justify-items:center;gap:22px;width:100%;display:grid}.tower-model-frame{border:3px dashed var(--child-cell-border);border-radius:var(--radius-xl);background:var(--child-surface);padding:10px 18px}.tower{align-items:flex-end;gap:18px;display:flex}.tower-peg{border-radius:var(--radius-md);background:0 0;border:none;border-bottom:10px solid oklch(45% .05 60);flex-direction:column;justify-content:flex-end;align-items:center;width:150px;height:260px;padding:0 0 10px;display:flex;position:relative}button.tower-peg{cursor:grab;touch-action:none}.tower-peg--selected{background:color-mix(in oklch, var(--child-cell-lit-ring) 30%, transparent)}.tower-rod{background:oklch(55% .06 60);border-radius:6px 6px 0 0;width:12px;position:absolute;bottom:10px}.tower-balls{flex-direction:column-reverse;gap:2px;display:flex;position:relative}.tower-ball{width:min(74px, calc(228px / max(var(--max-cap,3), 3)));height:min(74px, calc(228px / max(var(--max-cap,3), 3)))}.pk-tower-board{position:relative}.tower-ball-slot{line-height:0;display:block}.tower-drag{z-index:10;pointer-events:none;filter:drop-shadow(0 6px 10px oklch(0% 0 0/.25));position:fixed;transform:translate(-50%,-50%)scale(1.08)}.tower-drag .tower-ball{width:74px;height:74px}.tower--model .tower-peg{width:70px;height:120px}.tower--model .tower-ball{width:min(34px, calc(104px / max(var(--max-cap,3), 3)));height:min(34px, calc(104px / max(var(--max-cap,3), 3)))}.maze{grid-template-columns:repeat(var(--n), 1fr);aspect-ratio:1;border:4px solid var(--child-ink);background:var(--child-surface);touch-action:none;-webkit-user-select:none;user-select:none;width:min(66vh,62vw);display:grid;position:relative}.maze--pencil,.maze--pencil .maze-cell{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32'%3E%3Cpath d='M3 29l2.5-8L22 4.5a3 3 0 0 1 4.2 0l1.3 1.3a3 3 0 0 1 0 4.2L11 26.5z' fill='%23f5c542' stroke='%23222' stroke-width='1.6' stroke-linejoin='round'/%3E%3Cpath d='M3 29l2.5-8 5.5 5.5z' fill='%23f2d9b1' stroke='%23222' stroke-width='1.6' stroke-linejoin='round'/%3E%3Cpath d='M3 29l1.2-3.8 2.6 2.6z' fill='%23222'/%3E%3C/svg%3E") 3 29,crosshair}.maze-cell{border-style:solid;border-color:var(--child-ink);background:0 0;padding:0}.maze-stroke{pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.maze-stroke path{stroke:oklch(45% .16 258);stroke-width:6px;stroke-linecap:round;stroke-linejoin:round}.maze-stroke circle{fill:oklch(45% .16 258)}.maze-cell--start{box-shadow:inset 0 0 0 6px var(--child-correct)}.maze-cell--exit{box-shadow:inset 0 0 0 6px var(--child-cell-lit-ring)}.zoo{align-items:center;gap:24px;width:100%;height:100%;display:flex}.zoo-map{flex:1;height:100%;position:relative}.zoo-paths{width:100%;height:100%;position:absolute;inset:0}.zoo-path{stroke:oklch(70% .04 70);stroke-width:2.4px;stroke-linecap:round}.zoo-path--walked{stroke:var(--child-cell-lit);stroke-width:3.6px}.zoo-path--reused{stroke:oklch(55% .2 27);stroke-dasharray:3 2}.zoo-place{left:calc(var(--x) * 100%);top:calc(var(--y) * 100%);border:3px solid var(--child-cell-border);background:var(--child-surface);width:96px;height:96px;color:var(--child-ink);cursor:pointer;border-radius:50%;place-items:center;padding:12px;display:grid;position:absolute;transform:translate(-50%,-50%)}.zoo-place img,.zoo-place svg{object-fit:contain;width:100%;height:100%}.zoo-place--marked{border-color:var(--child-cell-lit-ring);box-shadow:0 0 0 6px color-mix(in oklch, var(--child-cell-lit-ring) 55%, transparent)}.zoo-place--visited{background:color-mix(in oklch, var(--child-cell-lit) 18%, var(--child-surface))}.zoo-place--here{border-color:var(--child-cell-lit);border-width:5px}.zoo-place--entrance{border-color:var(--child-correct);color:var(--child-correct);border-width:5px}.zoo-place--exit{border-color:var(--child-ink);border-width:5px}.zoo-place__order{background:var(--child-ink);width:34px;height:34px;color:var(--child-surface);border-radius:50%;place-items:center;font-size:1.1rem;font-weight:700;display:grid;position:absolute;top:-10px;left:-10px}.zoo-place__cross{position:absolute;top:-8px;right:-8px;width:36px!important;height:36px!important}.plan-replay{position:absolute;top:0;right:0}.plan-replay svg{width:30px;height:30px}.script-board{justify-items:center;gap:28px;width:100%;display:grid;position:relative}.script-timeline{border-radius:var(--radius-xl);background:color-mix(in oklch, var(--child-surface) 70%, transparent);gap:12px;padding:14px;display:flex}.script-slot{aspect-ratio:1;border:3px dashed var(--child-cell-border);border-radius:var(--radius-xl);background:var(--child-surface);place-items:center;width:min(15vw,160px);display:grid}.script-slot img{object-fit:contain;width:90%;height:90%}.script-cards{flex-wrap:wrap;justify-content:center;gap:14px;display:flex}.script-card{width:min(15vw,170px);transition:transform .16s}.script-card:hover:not(:disabled),.script-card:focus-visible{z-index:4;box-shadow:var(--shadow-subtle);position:relative;transform:scale(1.6)}@media (prefers-reduced-motion:reduce){.script-card{transition:none}}.outing-board{width:100%;height:100%;position:relative}.outing-map{border-radius:var(--radius-xl);background:linear-gradient(90deg, transparent 49%, oklch(85% .01 250) 49% 51%, transparent 51%), linear-gradient(0deg, transparent 48%, oklch(85% .01 250) 48% 52%, transparent 52%), color-mix(in oklch, var(--child-surface) 60%, var(--child-bg));position:absolute;inset:0}.outing-place{left:calc(var(--x) * 100%);top:calc(var(--y) * 100%);aspect-ratio:1;border:3px solid var(--child-cell-border);border-radius:var(--radius-xl);background:var(--child-surface);cursor:pointer;width:min(12vw,120px);padding:10px;position:absolute;transform:translate(-50%,-50%)}.outing-place img{object-fit:contain;width:100%;height:100%}.outing-place--visited{border-color:var(--child-cell-lit);box-shadow:0 0 0 5px color-mix(in oklch, var(--child-cell-lit-ring) 50%, transparent)}.plan-board:has(.shop-board){bottom:max(15%,136px)}.shop-board{grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(150px,13%) minmax(0,1fr) minmax(220px,19%);align-items:stretch;gap:clamp(12px,1.6vw,28px);display:grid;position:absolute;inset:0}.shop-list{box-shadow:var(--shadow-subtle);background:repeating-linear-gradient(#0000 0 46px,oklch(86% .04 240) 46px 48px),oklch(99% .012 95);border-radius:6px;flex-direction:column;gap:10px;padding:18px 12px 14px;display:flex;position:relative;overflow:auto;rotate:-1.2deg}.shop-list__replay{flex:none;align-self:center;width:64px;height:64px}.shop-list__replay svg{width:30px;height:30px}.shop-list__items{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0;padding:0;list-style:none;display:grid}.shop-list__item{aspect-ratio:1;border-radius:var(--radius-lg);padding:6px;position:relative}.shop-list__item img{object-fit:contain;width:100%;height:100%}.shop-list__item--taken img{opacity:.4}.shop-list__check{background:var(--child-correct);width:30px;height:30px;box-shadow:0 0 0 3px var(--child-surface);border-radius:50%;position:absolute;bottom:-4px;right:-4px}.shop-list__check:after{content:"";border:4px solid #fff;border-width:0 4px 4px 0;width:8px;height:14px;position:absolute;top:5px;left:10px;rotate:45deg}.shop-list__item--crossed img{opacity:.35}.shop-list__item--crossed:after{content:"";background:var(--child-ink);border-radius:3px;height:6px;position:absolute;top:50%;left:4%;right:4%;rotate:-35deg}.shop-list__item--added{background:color-mix(in oklch, var(--child-success) 35%, transparent)}@media (prefers-reduced-motion:no-preference){.shop-list__item--added{animation:shop-pop .6s var(--ease)}}@keyframes shop-pop{0%{transform:scale(.4)}70%{transform:scale(1.15)}to{transform:scale(1)}}.shop-list__item--missed:before{content:"";border:6px solid var(--child-success-ink);pointer-events:none;border-radius:50%;position:absolute;inset:-6%}@media (prefers-reduced-motion:no-preference){.shop-list__item--missed:before{animation:1.4s ease-in-out infinite cancellation-missed-pulse}}.shop-list__frozen{color:oklch(50% .12 245);align-self:center;width:52px;height:52px;margin-top:auto}.shop-list__frozen svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;width:100%;height:100%}.shop-list__drop{fill:oklch(70% .1 235);stroke:none}.shop-plan{aspect-ratio:10/9;border-radius:var(--radius-xl);width:auto;max-width:100%;height:100%;box-shadow:inset 0 0 0 3px color-mix(in oklch, var(--child-ink) 18%, transparent);touch-action:none;background:oklch(88% .02 80);place-self:center;position:relative;overflow:hidden}.shop-plan--pencil,.shop-plan--pencil .shop-cell{cursor:crosshair}.shop-cell{background:0 0;border:0;padding:0;position:absolute}.shop-cell:focus-visible{outline-offset:-4px}.shop-cell--blocked{background:repeating-linear-gradient(45deg, var(--child-wrong) 0 10px, #fff 10px 20px);box-shadow:inset 0 0 0 3px var(--child-ink)}.shop-gondola{pointer-events:none;background:oklch(75% .02 80);border-radius:6px;position:absolute;box-shadow:0 2px oklch(60% .02 80)}.shop-face{border:3px solid oklch(.45 .06 var(--hue,80));background:repeating-linear-gradient(90deg, oklch(.62 .15 var(--hue,80)) 0 8px, oklch(.97 .02 var(--hue,80)) 8px 16px) top / 100% 14% no-repeat, var(--child-surface);pointer-events:none;border-radius:8px;padding:0;position:absolute}.shop-face img{object-fit:contain;width:88%;height:70%;position:absolute;inset:22% 6% 8%}.shop-face--open{box-shadow:0 0 0 5px var(--child-cell-lit-ring);z-index:1}.shop-face--empty{background:repeating-linear-gradient(0deg,oklch(90% .005 80) 0 30%,oklch(80% .01 80) 30% 33%);border-color:oklch(68% .01 80)}.shop-door svg{fill:none;stroke:currentColor;stroke-width:3px;stroke-linecap:round;stroke-linejoin:round;width:100%;height:100%}.shop-door{aspect-ratio:1;background:var(--child-correct);color:#fff;opacity:.85;pointer-events:none;border-radius:50%;width:7%;padding:.6%;position:absolute;translate:-50% -50%}.shop-checkout{pointer-events:none;width:8%;position:absolute;translate:-50% -50%}.shop-trace{pointer-events:none;z-index:2;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.shop-trace line,.shop-trace polyline{fill:none;stroke-linecap:round;stroke-linejoin:round}.shop-trace__line{stroke:var(--child-cell-lit);stroke-width:7px}.shop-trace__back{stroke:var(--child-wrong);stroke-width:11px;stroke-dasharray:16 8}.shop-trace__ideal{stroke:var(--child-ink);stroke-width:4px;stroke-dasharray:1 12}.shop-caddie{z-index:3;pointer-events:none;filter:drop-shadow(0 2px 2px #00000040);width:8%;position:absolute;translate:-50% -60%}.shop-call{border-radius:var(--radius-xl);background:var(--child-surface);box-shadow:0 0 0 6px var(--child-cell-lit-ring), var(--shadow-target);z-index:3;pointer-events:none;align-items:center;gap:18px;padding:18px 24px;display:flex;position:absolute;top:50%;left:50%;translate:-50% -50%}.shop-call img{aspect-ratio:1;object-fit:contain;width:clamp(80px,9vw,130px)}@media (prefers-reduced-motion:no-preference){.shop-call__phone{animation:.5s ease-in-out 4 shop-ring}}@keyframes shop-ring{0%,to{rotate:0deg}25%{rotate:-12deg}75%{rotate:12deg}}.shop-shelf{flex-direction:column;gap:14px;min-height:0;display:flex;overflow-y:auto}.shop-shelf:has(.shop-shelf__block+.shop-shelf__block) .shop-shelf__sign{height:58px;padding-top:22px}.shop-shelf:has(.shop-shelf__block+.shop-shelf__block) .shop-item{max-width:92px}.shop-shelf:has(.shop-shelf__block+.shop-shelf__block) .shop-shelf__items{gap:14px 10px;padding:10px}.shop-shelf__block{flex-direction:column;gap:8px;display:flex}.shop-shelf__block+.shop-shelf__block{margin-top:6px}.shop-shelf__sign{border:3px solid oklch(.45 .06 var(--hue));background:repeating-linear-gradient(90deg, oklch(.62 .15 var(--hue)) 0 12px, oklch(.97 .02 var(--hue)) 12px 24px) top / 100% 22px no-repeat, var(--child-surface);text-align:center;border-radius:10px;height:84px;padding:28px 0 8px}.shop-shelf__sign img{object-fit:contain;height:100%}.shop-shelf__items{background:repeating-linear-gradient(180deg, transparent 0 calc(50% - 7px), var(--child-carton-dark) calc(50% - 7px) 50%), color-mix(in oklch, var(--child-carton) 30%, var(--child-surface));border-radius:10px;grid-template-columns:repeat(2,1fr);gap:22px 12px;padding:14px 12px;display:grid}.shop-item{justify-self:center;width:100%;min-width:0;max-width:120px;position:relative}.shop-item--empty{aspect-ratio:1;border:3px dashed var(--child-cell-border);border-radius:var(--radius-xl);background:color-mix(in oklch, var(--child-surface) 50%, transparent)}.shop-item__promo{clip-path:polygon(50% 0%,61% 18%,82% 10%,80% 32%,100% 40%,85% 56%,96% 76%,74% 78%,68% 100%,50% 87%,32% 100%,26% 78%,4% 76%,15% 56%,0% 40%,20% 32%,18% 10%,39% 18%);background:oklch(60% .22 25);width:46px;height:46px;position:absolute;top:-14px;right:-14px}.shop-item__promo:after{content:"";background:oklch(95% .12 95);border-radius:50%;position:absolute;inset:32%}@media (prefers-reduced-motion:no-preference){.shop-item--promo .shop-item__promo{animation:.9s ease-in-out infinite shop-promo}}@keyframes shop-promo{0%,to{rotate:0deg;scale:1}50%{rotate:15deg;scale:1.25}}.shop-shelf__idle{background:repeating-linear-gradient(180deg, transparent 0 calc(50% - 7px), color-mix(in oklch, var(--child-carton-dark) 35%, transparent) calc(50% - 7px) 50%);border-radius:10px;flex:1;max-height:260px}.shop-cart{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.shop-cart li{background:var(--child-surface);width:56px;height:56px;box-shadow:0 0 0 3px var(--child-wrong);border-radius:10px;padding:4px}.shop-cart img{object-fit:contain;width:100%;height:100%}.pk-shop-store{grid-template-columns:repeat(3,auto);justify-content:center;gap:18px 48px;margin:28px 0 22px;display:grid}.pk-shop-lane{background:oklch(88% .02 80);border-radius:12px;grid-column:1/-1;height:84px;position:relative}.pk-shop-stroke{background:var(--child-cell-lit);height:8px;transition:width .6s var(--ease);border-radius:4px;position:absolute;top:calc(50% - 4px);left:0}.pk-shop-caddie{width:72px;transition:left .6s var(--ease);position:absolute;top:50%;translate:-50% -50%}.pk-shop-back{width:80px;height:80px;color:var(--child-wrong);position:absolute;top:50%;left:50%;translate:-50% -50%}.pk-shop-back>svg:first-child{width:100%;height:100%}@media (prefers-reduced-motion:reduce){.pk-shop-caddie{transition:none}}.consigne-audio{align-items:center;gap:var(--space-2) var(--space-4);margin:var(--space-2) 0 var(--space-3);flex-wrap:wrap;display:flex}.consigne-audio .btn svg{width:20px;height:20px}.consigne-audio__autoplay{align-items:center;gap:var(--space-2);min-height:var(--target-min);font-size:var(--text-sm);display:inline-flex}.consigne-audio__status{font-size:var(--text-sm);flex-basis:100%}.ready-screen{place-items:center;display:grid}.ready-screen__space-key,.ready-screen__play{cursor:pointer;position:relative}.ready-screen__space-key:after,.ready-screen__play:after{content:"";border-radius:inherit;border:6px solid var(--child-cell-lit-ring);opacity:.7;pointer-events:none;animation:1.8s ease-in-out infinite ready-breathe;position:absolute;inset:-18px}.ready-screen__cue{align-items:center;gap:calc(var(--space-6,2rem) + 18px);padding-inline:var(--space-4,1rem);flex-direction:column;display:flex}.ready-screen__prompt{max-width:28ch;color:var(--child-ink);text-align:center;margin:0;font-size:clamp(1.5rem,2.6vw,2.25rem);font-weight:700;line-height:1.3}.ready-screen__space-key{border-radius:var(--radius-xl);border:3px solid var(--child-cell-border);background:var(--child-surface);width:min(460px,70vw);height:96px;box-shadow:var(--shadow-target);border-bottom-width:12px}.ready-screen__space-key:active{border-bottom-width:4px;transform:translateY(6px)}.ready-screen__play{border:6px solid var(--child-surface);background:var(--child-cell-lit);width:168px;height:168px;color:var(--child-surface);box-shadow:var(--shadow-target);border-radius:50%;place-items:center;display:grid}.ready-screen__play svg{width:84px;height:84px;margin-left:10px}@keyframes ready-breathe{0%,to{opacity:.35;transform:scale(.96)}50%{opacity:.85;transform:scale(1.04)}}.ready-screen__back{top:var(--space-3);left:var(--space-3);width:var(--target-min);height:var(--target-min);border:1px solid var(--child-cell-border);background:color-mix(in oklch, var(--child-surface) 70%, transparent);color:var(--child-ink);opacity:.55;border-radius:50%;place-items:center;display:grid;position:absolute}.ready-screen__back:hover{opacity:1}.ready-screen__back svg{width:22px;height:22px}.reward-screen{place-items:center;display:grid}.reward{width:min(720px,82vw)}.reward__stars{height:104px;margin-bottom:var(--space-4);position:relative}.reward__star{bottom:0;left:calc(var(--pos) * 100%);color:#0000;width:96px;height:96px;transition:transform .35s var(--ease);margin-left:-48px;position:absolute}.reward__star svg{width:100%;height:100%}.reward__star:not(.reward__star--lit) svg path{fill:var(--child-surface);stroke:var(--child-cell-border);stroke-width:1.4px}.reward__star--lit{color:var(--child-success);animation:reward-star-pop .5s var(--ease)}@keyframes reward-star-pop{0%{transform:scale(.6)}60%{transform:scale(1.25)}to{transform:scale(1)}}.reward__gauge{border-radius:var(--radius-pill);border:3px solid var(--child-cell-border);background:var(--child-surface);height:44px;position:relative;overflow:hidden}.reward__fill{clip-path:inset(0 calc((1 - var(--fill)) * 100%) 0 0);transition:clip-path var(--fill-ms,2s) linear;background:linear-gradient(90deg,oklch(62% .2 27) 0%,oklch(74% .17 55) 33%,oklch(86% .16 95) 62%,oklch(70% .17 145) 100%);position:absolute;inset:0}.reward__tick{top:0;bottom:0;left:calc(var(--pos) * 100%);background:var(--child-cell-border);opacity:.6;width:3px;margin-left:-1.5px;position:absolute}.reward-fireworks{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.reward-screen .reward{position:relative}.reward-screen__continue{right:var(--space-5);bottom:var(--space-5);position:absolute}.clinician-pause-button{top:var(--space-3);left:var(--space-3);z-index:5;width:var(--target-min);height:var(--target-min);border:2px solid var(--child-cell-border);background:color-mix(in oklch, var(--child-surface) 80%, transparent);color:var(--child-ink);border-radius:50%;place-items:center;display:grid;position:absolute}.clinician-pause-button:hover{background:var(--child-surface)}.clinician-pause-button svg{width:20px;height:20px}.session-runner__sync-warning{top:var(--space-3);padding:var(--space-2) var(--space-4);border-radius:var(--radius-pill);background:var(--card);border:2px dashed var(--coral);z-index:6;position:absolute;left:50%;transform:translate(-50%)}.runner-config-error{max-width:44rem;padding:var(--space-5);background:var(--card);border:2px solid var(--coral);border-radius:var(--radius-xl);font-size:var(--text-lg);margin:15vh auto 0}.clinician-screen{height:100%;padding:var(--space-6) max(var(--space-5), calc((100% - 52rem) / 2));background:linear-gradient(180deg, var(--secondary) 0, var(--background) 14rem) no-repeat, var(--background);color:var(--foreground);font-size:var(--text-lg);line-height:1.6;overflow-y:auto}.clinician-screen__badge{align-items:center;gap:var(--space-2);margin-bottom:var(--space-3);border-radius:var(--radius-pill);background:var(--card);border:1px solid var(--border);font-size:var(--text-sm);color:var(--muted-foreground);padding:4px 12px;font-weight:500;display:inline-flex}.clinician-screen h1,.clinician-screen h2{font-size:var(--text-3xl);margin-bottom:var(--space-4)}.clinician-screen>p{margin:var(--space-3) 0}.consigne{margin:var(--space-5) 0;padding:var(--space-5) var(--space-5) var(--space-5) var(--space-6);background:var(--card);border:1px solid var(--border);border-left:6px solid var(--primary);border-radius:var(--radius-xl);box-shadow:var(--shadow-subtle);position:relative}.consigne__label{margin-bottom:var(--space-2);font-family:var(--font-mono);font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.04em;color:var(--primary-strong)}.consigne p+p{margin-top:var(--space-3)}.consigne__text{font-size:var(--text-xl);line-height:1.5}.consigne__framing{font-style:italic}.clinician-note{padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);background:var(--gold-soft);border:1px dashed var(--gold-ink);font-size:var(--text-md)}.score-line{align-items:baseline;gap:var(--space-3);margin:var(--space-4) 0;display:flex}.score-line strong{font-family:var(--font-mono);font-size:var(--text-3xl);font-weight:500}.lock-status{align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);background:var(--card);border:2px dashed var(--border-strong);font-size:var(--text-md);display:flex}.lock-status--ok{border-style:solid;border-color:var(--primary);background:var(--secondary)}.lock-status svg{flex-shrink:0;width:24px;height:24px;margin-top:2px}.clinician-actions{gap:var(--space-3);margin-top:var(--space-5);flex-wrap:wrap;display:flex}.pause-overlay{z-index:20;padding:var(--space-5);background:color-mix(in oklch, var(--foreground) 35%, transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);place-items:center;display:grid;position:absolute;inset:0}.pause-overlay__panel{width:min(100%,34rem);padding:var(--space-6);background:var(--background);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-target);font-size:var(--text-md)}.pause-overlay__panel h2{font-size:var(--text-2xl);margin-bottom:var(--space-3)}.pause-overlay__panel p{margin:var(--space-2) 0;color:var(--muted-foreground)}.pause-overlay__actions{gap:var(--space-3);margin-top:var(--space-5);display:grid}.pause-overlay__confirm{padding:var(--space-4);border-radius:var(--radius-lg);border:2px dashed var(--coral)}.pause-overlay__confirm p{color:var(--foreground);font-weight:500}.clinical-note-form{gap:var(--space-3);flex-direction:column;max-width:40rem;display:flex}.clinical-note-form fieldset{border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-3) var(--space-4);margin:0}.clinical-note-form legend{padding:0 var(--space-2);font-weight:500}.clinical-note-form .choice{align-items:center;gap:var(--space-3);min-height:var(--target-min);font-size:var(--text-md);display:flex}.clinical-note-form .choices{gap:0 var(--space-4);grid-template-columns:repeat(auto-fill,minmax(13rem,1fr));display:grid}.clinical-note-form>label{font-weight:500;font-size:var(--text-md)}.clinical-note-form button{align-self:flex-start}.summary-cards{gap:var(--space-5);margin:var(--space-5) 0;grid-template-columns:repeat(auto-fill,minmax(min(100%,30rem),1fr));align-items:start;display:grid}.summary-card{gap:var(--space-3);padding:var(--space-4);background:var(--card);border:1px solid var(--border);border-radius:var(--radius-xl);flex-direction:column;display:flex}.summary-card__header{justify-content:space-between;align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.summary-card__header h2{font-size:var(--text-lg);margin:0}.summary-card__part{margin:calc(-1 * var(--space-1)) 0 0;color:var(--muted-foreground);font-weight:600}.summary-card__table{font-size:var(--text-md)}.summary-card__table tbody th{font-family:inherit;font-size:inherit;text-transform:none;color:var(--foreground);padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--border);font-weight:400}.summary-card__table td{padding-block:var(--space-2)}.summary-card__value{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.summary-card__table tbody td.summary-card__value{font-weight:600}.summary-card__procedural th,.summary-card__table tbody .summary-card__procedural td.summary-card__value{color:var(--muted-foreground);font-weight:400}.summary-card__empty{color:var(--muted-foreground);margin:0}.summary-card__note{gap:var(--space-1);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--muted);margin:0;display:grid}.summary-card__note>div{gap:var(--space-2);display:flex}.summary-card__note dt{font-weight:600}.summary-card__note dt:after{content:" :"}.summary-card__note dd{margin:0}.summary-card__observations{flex-direction:column}.summary-card__observations dd{white-space:pre-wrap}@media (prefers-reduced-motion:reduce){.feedback--success,.feedback--error{opacity:1;animation:none!important}.demo-pointer,.demo-pointer__carry{transition:none!important}.ready-screen__space-key:after,.ready-screen__play:after,.reward__star--lit{animation:none!important}.reward__fill{transition:none!important}.switch-signal,.flex-reflection .flex-cue,.plan-hourglass{animation:none!important}}.primer-screen{position:absolute;inset:0}.primer-screen__stop{top:var(--space-3);left:var(--space-3);z-index:5;width:var(--target-min);height:var(--target-min);border:2px solid var(--child-cell-border);background:color-mix(in oklch, var(--child-surface) 80%, transparent);color:var(--child-ink);border-radius:50%;place-items:center;display:grid;position:absolute}.primer-screen__stop:hover{background:var(--child-surface)}.primer-screen__stop svg{width:18px;height:18px}.flex-primer__cue{width:150px;height:150px;animation:.45s ease-out both primer-appear}.flex-primer__cue--left{left:30%}.flex-primer__cue--right{left:70%}.flex-primer__card{z-index:3;transition:transform 1.1s cubic-bezier(.45,0,.25,1);animation:.45s ease-out both primer-appear}.flex-primer__box{cursor:default;transition:box-shadow .3s,transform .3s}.flex-primer__box--lit{box-shadow:0 0 0 8px var(--child-cell-lit-ring);transform:translateY(-4px)}@keyframes primer-appear{0%{opacity:0;scale:.85}to{opacity:1;scale:1}}.flex-primer--still .flex-primer__card,.flex-primer--still .flex-primer__cue,.flex-primer--still .flex-primer__box{transition:none;animation:none}@media (prefers-reduced-motion:reduce){.flex-primer__card,.flex-primer__cue,.flex-primer__box{transition:none;animation:none}}.primer-scene{flex-direction:column;justify-content:center;align-items:center;gap:36px;display:flex}.pk-listen-only{justify-content:flex-end;padding-bottom:6vh}.pk-row{justify-content:center;align-items:center;gap:40px;display:flex}.pk-space{border-radius:var(--radius-xl);border:3px solid var(--child-cell-border);background:var(--child-surface);width:280px;height:64px;box-shadow:var(--shadow-subtle);border-bottom-width:9px;display:block}.pk-arrows{gap:24px;display:flex}.pk-arrow{border-radius:var(--radius-xl);border:3px solid var(--child-cell-border);background:var(--child-surface);width:84px;height:72px;color:var(--child-ink);border-bottom-width:9px;place-items:center;display:grid}.pk-arrow svg{width:40px;height:40px}.pk-pressing{background:var(--child-cell-lit);animation:1.1s ease-in-out infinite pk-press}@keyframes pk-press{0%,40%,to{border-bottom-width:9px;transform:translateY(0)}55%,75%{border-bottom-width:3px;transform:translateY(6px)}}.pk-card{aspect-ratio:1;border:4px solid var(--child-cell-border);border-radius:var(--radius-xl);background:var(--child-surface);place-items:center;width:min(26vw,220px);padding:16px;animation:.45s ease-out both primer-appear;display:grid;position:relative}.pk-card--small{width:min(14vw,120px);padding:10px}.pk-card img,.pk-card svg{object-fit:contain;width:100%;height:100%}.pk-card__blank{width:100%;height:100%}.pk-lit{box-shadow:0 0 0 8px var(--child-cell-lit-ring)}.pk-card__cross{position:absolute;top:-14px;right:-14px;width:52px!important;height:52px!important}.pk-verdict{place-items:center;width:88px;height:88px;animation:.3s ease-out both primer-appear;display:grid}.pk-verdict svg{width:100%;height:100%}.pk-speaker{background:var(--child-surface);border:4px solid var(--child-cell-border);width:140px;height:140px;color:var(--child-ink);border-radius:50%;place-items:center;display:grid}.pk-speaker svg{width:64px;height:64px}.pk-speaker--active{border-color:var(--child-cell-lit-ring);animation:.9s ease-in-out infinite alternate pk-pulse}@keyframes pk-pulse{0%{scale:1}to{scale:1.08}}@media (prefers-reduced-motion:reduce){.pk-pressing,.pk-speaker--active,.pk-card,.pk-verdict{animation:none}}.primer-bottom{align-items:center;gap:32px;display:flex;position:absolute;bottom:6%;left:50%;transform:translate(-50%)}.primer-inline{position:static;transform:none}.pk-validate{cursor:default}.pk-pulse{animation:.8s ease-in-out infinite alternate pk-pulse}.pk-rank{z-index:2;background:var(--child-ink);width:38px;height:38px;color:var(--child-surface);border-radius:50%;place-items:center;font-size:1.2rem;font-weight:700;animation:.3s ease-out both primer-appear;display:grid;position:absolute;top:-10px;left:-10px}.pk-grid{grid-template-columns:repeat(var(--cols,3), auto);gap:14px;display:grid}.pk-cell{aspect-ratio:1;border-radius:var(--radius-lg,14px);border:3px solid var(--child-cell-border);background:var(--child-cell);width:min(11vw,96px);transition:background .2s;position:relative}.pk-cell--on{background:var(--child-cell-lit);box-shadow:0 0 0 6px var(--child-cell-lit-ring)}@media (prefers-reduced-motion:reduce){.pk-pulse,.pk-rank{animation:none}}.primer-feedback-pair{position:absolute;top:8%;left:50%;transform:translate(-50%)}.pk-cell--glyph{background:var(--child-surface);padding:12%}.pk-cell--glyph svg{width:100%;height:100%}.pk-fish-center{border-radius:var(--radius-xl);box-shadow:0 0 0 6px var(--child-cell-lit-ring)}.primer-head{width:min(30vw,260px)}.primer-ear{fill:var(--child-cell);stroke:var(--child-ink);stroke-width:3px}.primer-ear--on{fill:var(--child-cell-lit)}.primer-ear--off{fill:var(--child-cell);stroke-dasharray:4 3;opacity:.6}.primer-maze{width:min(48vh,46vw)}.primer-zoo{width:min(80vw,900px);height:min(62vh,560px)}
