/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--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}}}@layer theme{:host,:root{--font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,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;--spacing:.25rem;--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{*,::backdrop,:after,:before{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}:host,html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,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;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{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:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,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,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-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,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden}.absolute,.sr-only{position:absolute}.fixed{position:fixed}.static{position:static}.contents{display:contents}.hidden{display:none}.table{display:table}.h-34{height:calc(var(--spacing) * 34)}.resize{resize:both}.sepia{--tw-sepia:sepia(100%)}.filter,.sepia{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))}}:root,html[data-theme=light]{color-scheme:light;--lumo-orange:#dd6e17;--lumo-orange-dark:#b5470e;--lumo-cocoa:#6b2e12;--lumo-deep-cocoa:#37190d;--lumo-cream:#f0e4d3;--lumo-warm-white:#fcf8f3;--lumo-spark:#eee254;--background:#fcf8f3;--foreground:#2f160b;--surface:#fff;--surface-raised:#fff;--surface-subtle:#f7efe6;--surface-elevated:#fffdf9;--border:#e7d8c8;--text-muted:#7a5c48;--primary:#dd6e17;--primary-hover:#b5470e;--primary-foreground:#2f160b;--secondary:#6b2e12;--secondary-foreground:#fcf8f3;--accent:#eee254;--accent-foreground:#2f160b;--success:#2f7a45;--success-foreground:#fff;--warning:#b87512;--warning-foreground:#2f160b;--danger:#b64635;--danger-foreground:#fff;--info:#2f6f98;--info-foreground:#fff;--focus-ring:#b5470e;--shadow:0 12px 0 #6b2e121a,0 24px 48px #37190d1f;--navigation-background:#fcf8f3eb;--navigation-border:#6b2e1229;--navigation-active-background:#dd6e171f;--navigation-shadow:0 -12px 32px #37190d1f;--scrim:#37190d1a;--mascot-shadow:#37190d33;--primary-soft:var(--primary)}@supports (color:color-mix(in lab,red,red)){:root,html[data-theme=light]{--primary-soft:color-mix(in srgb,var(--primary) 12%,transparent)}}:root,html[data-theme=light]{--secondary-soft:var(--secondary)}@supports (color:color-mix(in lab,red,red)){:root,html[data-theme=light]{--secondary-soft:color-mix(in srgb,var(--secondary) 11%,transparent)}}:root,html[data-theme=light]{--success-soft:var(--success)}@supports (color:color-mix(in lab,red,red)){:root,html[data-theme=light]{--success-soft:color-mix(in srgb,var(--success) 13%,transparent)}}:root,html[data-theme=light]{--danger-soft:var(--danger)}@supports (color:color-mix(in lab,red,red)){:root,html[data-theme=light]{--danger-soft:color-mix(in srgb,var(--danger) 12%,transparent)}}:root,html[data-theme=light]{--info-soft:var(--info)}@supports (color:color-mix(in lab,red,red)){:root,html[data-theme=light]{--info-soft:color-mix(in srgb,var(--info) 12%,transparent)}}:root,html[data-theme=light]{--accent-soft:var(--accent)}@supports (color:color-mix(in lab,red,red)){:root,html[data-theme=light]{--accent-soft:color-mix(in srgb,var(--accent) 22%,transparent)}}html[data-theme=dark]{color-scheme:dark;--background:#130b07;--foreground:#faf4ed;--surface:#1d110b;--surface-raised:#342015;--surface-subtle:#2a1a12;--surface-elevated:#3a2518;--border:#3a281d;--text-muted:#bfa996;--primary:#f08325;--primary-hover:#ff9b48;--primary-foreground:#2f160b;--secondary:#e6b28a;--secondary-foreground:#2f160b;--accent:#eee254;--accent-foreground:#2f160b;--success:#8fd181;--success-foreground:#1b2d18;--warning:#f0c45d;--warning-foreground:#2f160b;--danger:#ff8a72;--danger-foreground:#37190d;--info:#8ac7e9;--info-foreground:#132434;--focus-ring:#f0a14e;--shadow:0 14px 0 #00000038,0 28px 54px #0000004d;--navigation-background:#130b07e6;--navigation-border:#f0e4d324;--navigation-active-background:#f0832529;--navigation-shadow:0 -12px 32px #0000004d;--scrim:#0000004d;--mascot-shadow:#00000057;--primary-soft:var(--primary)}@supports (color:color-mix(in lab,red,red)){html[data-theme=dark]{--primary-soft:color-mix(in srgb,var(--primary) 16%,transparent)}}html[data-theme=dark]{--secondary-soft:var(--secondary)}@supports (color:color-mix(in lab,red,red)){html[data-theme=dark]{--secondary-soft:color-mix(in srgb,var(--secondary) 15%,transparent)}}html[data-theme=dark]{--success-soft:var(--success)}@supports (color:color-mix(in lab,red,red)){html[data-theme=dark]{--success-soft:color-mix(in srgb,var(--success) 16%,transparent)}}html[data-theme=dark]{--danger-soft:var(--danger)}@supports (color:color-mix(in lab,red,red)){html[data-theme=dark]{--danger-soft:color-mix(in srgb,var(--danger) 16%,transparent)}}html[data-theme=dark]{--info-soft:var(--info)}@supports (color:color-mix(in lab,red,red)){html[data-theme=dark]{--info-soft:color-mix(in srgb,var(--info) 16%,transparent)}}html[data-theme=dark]{--accent-soft:var(--accent)}@supports (color:color-mix(in lab,red,red)){html[data-theme=dark]{--accent-soft:color-mix(in srgb,var(--accent) 20%,transparent)}}@media (prefers-color-scheme:dark){html:not([data-theme]){color-scheme:dark;--lumo-orange:#dd6e17;--lumo-orange-dark:#b5470e;--lumo-cocoa:#6b2e12;--lumo-deep-cocoa:#37190d;--lumo-cream:#f0e4d3;--lumo-warm-white:#fcf8f3;--lumo-spark:#eee254;--background:#130b07;--foreground:#faf4ed;--surface:#1d110b;--surface-raised:#342015;--surface-subtle:#2a1a12;--surface-elevated:#3a2518;--border:#3a281d;--text-muted:#bfa996;--primary:#f08325;--primary-hover:#ff9b48;--primary-foreground:#2f160b;--secondary:#e6b28a;--secondary-foreground:#2f160b;--accent:#eee254;--accent-foreground:#2f160b;--success:#8fd181;--success-foreground:#1b2d18;--warning:#f0c45d;--warning-foreground:#2f160b;--danger:#ff8a72;--danger-foreground:#37190d;--info:#8ac7e9;--info-foreground:#132434;--focus-ring:#f0a14e;--shadow:0 14px 0 #00000038,0 28px 54px #0000004d;--navigation-background:#130b07e6;--navigation-border:#f0e4d324;--navigation-active-background:#f0832529;--navigation-shadow:0 -12px 32px #0000004d;--mascot-shadow:#00000057;--primary-soft:var(--primary)}@supports (color:color-mix(in lab,red,red)){html:not([data-theme]){--primary-soft:color-mix(in srgb,var(--primary) 16%,transparent)}}html:not([data-theme]){--secondary-soft:var(--secondary)}@supports (color:color-mix(in lab,red,red)){html:not([data-theme]){--secondary-soft:color-mix(in srgb,var(--secondary) 15%,transparent)}}html:not([data-theme]){--success-soft:var(--success)}@supports (color:color-mix(in lab,red,red)){html:not([data-theme]){--success-soft:color-mix(in srgb,var(--success) 16%,transparent)}}html:not([data-theme]){--danger-soft:var(--danger)}@supports (color:color-mix(in lab,red,red)){html:not([data-theme]){--danger-soft:color-mix(in srgb,var(--danger) 16%,transparent)}}html:not([data-theme]){--info-soft:var(--info)}@supports (color:color-mix(in lab,red,red)){html:not([data-theme]){--info-soft:color-mix(in srgb,var(--info) 16%,transparent)}}html:not([data-theme]){--accent-soft:var(--accent)}@supports (color:color-mix(in lab,red,red)){html:not([data-theme]){--accent-soft:color-mix(in srgb,var(--accent) 20%,transparent)}}}*{box-sizing:border-box}body,html{background:var(--background)}body{color:var(--foreground);-webkit-font-smoothing:antialiased;margin:0;font-family:Nunito,Avenir Next,Segoe UI,sans-serif;font-size:16px}button,input{font:inherit}button{-webkit-tap-highlight-color:transparent}button:disabled{cursor:not-allowed;opacity:.48}.entry-screen{isolation:isolate;color:#fffaf3;background:#2b160c;width:100%;height:100dvh;min-height:100svh;transition:opacity .28s cubic-bezier(.22,1,.36,1),transform .28s cubic-bezier(.22,1,.36,1);position:relative;overflow:hidden}.entry-screen.is-leaving{opacity:0;pointer-events:none;transform:scale(1.025)}.entry-media,.entry-poster,.entry-readability,.entry-video{width:100%;height:100%;position:absolute;inset:0}.entry-media{z-index:-3;background:#2b160c;overflow:hidden}.entry-poster{background-position:50%;background-size:cover;transform:scale(1.01)}.entry-video{object-fit:cover;opacity:0;transition:opacity .52s cubic-bezier(.22,1,.36,1);display:block}.entry-screen.is-video-ready .entry-video{opacity:1}.entry-readability{z-index:-2;pointer-events:none;background:0 0}.entry-header{z-index:3;top:max(16px,env(safe-area-inset-top));right:max(16px,env(safe-area-inset-right));left:max(16px,env(safe-area-inset-left));pointer-events:none;justify-content:flex-end;display:flex;position:absolute}.entry-settings-button{color:#4a2411;-webkit-backdrop-filter:blur(16px)saturate(1.25);backdrop-filter:blur(16px)saturate(1.25);cursor:pointer;pointer-events:auto;background:#fffaf34d;border:1px solid #ffffff94;border-radius:50%;place-items:center;width:48px;height:48px;transition:transform .15s cubic-bezier(.22,1,.36,1),filter .15s;display:grid;box-shadow:0 4px #3918092e,0 12px 28px #230c032e,inset 0 1px #ffffff85,inset 0 0 0 1px #ffffff1f}.entry-settings-button:hover{filter:brightness(1.04)}.entry-settings-button:active{transform:translateY(3px)scale(.95)}.entry-loader{z-index:2;pointer-events:none;place-items:center;padding:20px;transition:opacity .36s,transform .36s;display:grid;position:absolute;inset:0}.entry-screen.is-video-ready .entry-loader{opacity:0;transform:scale(.97)}.entry-loader-card{color:#fffaf3;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#2f170a57;border:1px solid #fffaf34d;border-radius:24px;justify-items:center;gap:8px;padding:18px 22px 16px;display:grid;box-shadow:0 18px 48px #260c0338,inset 0 1px #ffffff26}.entry-loader-card .mascot{width:92px!important;height:92px!important}.entry-loader-card .lumo-mark{color:#fffaf3;font-size:18px}.entry-loader-card .lumo-mark-orb{width:28px;height:28px}.entry-fallback span,.entry-loader-card>span:last-child{color:#fffaf3d1;letter-spacing:.03em;font-size:11px;font-weight:850}.entry-fallback{z-index:2;text-align:center;justify-items:center;gap:6px;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.entry-fallback .mascot{width:92px!important;height:92px!important}.entry-footer{z-index:3;right:max(18px,env(safe-area-inset-right));bottom:max(18px,env(safe-area-inset-bottom));left:max(18px,env(safe-area-inset-left));pointer-events:none;gap:8px;width:min(100% - 36px,460px);margin:0 auto;display:grid;position:absolute}.entry-footer>*{opacity:0;transform:translateY(14px)scale(.985)}.entry-footer.is-action-ready>*{pointer-events:auto;animation:entry-action-in .82s cubic-bezier(.22,1,.36,1) both}.entry-footer.is-action-ready .entry-sound-hint{animation-delay:80ms}.entry-footer.is-action-ready .entry-cta{animation:entry-action-in .82s cubic-bezier(.22,1,.36,1) .18s both,entry-cta-attention 3.6s ease-in-out 1.2s infinite}.entry-copy{color:#fffaf3;text-align:center;text-shadow:0 2px 12px #250d036b;gap:5px;display:grid}.entry-copy h1{letter-spacing:-.06em;text-shadow:0 2px #2f120552,0 5px 18px #1908026b;text-wrap:balance;font-family:Arial Rounded MT Bold,Avenir Next Rounded,Nunito,Trebuchet MS,sans-serif;font-size:clamp(25px,7vw,38px);font-weight:900;line-height:.98}.entry-copy p{color:#fffaf3fa;text-shadow:0 2px 10px #19080270;font-size:12px;font-style:italic;font-weight:650;line-height:1.25}.entry-sound-hint{color:#fffaf3f0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#2f170a6b;border:1px solid #fffaf352;border-radius:99px;justify-self:center;gap:6px;min-height:32px;padding:7px 12px;font-size:11px;font-weight:850;display:inline-flex}.entry-cta,.entry-sound-hint{cursor:pointer;align-items:center}.entry-cta{color:#fffaf3;background:var(--primary);letter-spacing:-.02em;text-shadow:0 1px 2px #43170538;border:1px solid #ffd5a3ad;border-radius:999px;justify-content:center;gap:10px;width:100%;min-height:64px;padding:13px 18px;font-size:15px;font-weight:950;transition:transform .15s cubic-bezier(.22,1,.36,1),filter .15s,box-shadow .15s;display:flex;position:relative;overflow:hidden;box-shadow:0 5px #9f3b0c,0 0 24px #dd6e1785,0 16px 38px #2d0e024d,inset 0 1px #ffffff5c}.entry-cta:before{background:linear-gradient(#fff3,#0000);border-radius:999px 999px 50% 50%;height:45%;inset:1px 1px auto}.entry-cta:after,.entry-cta:before{z-index:0;content:"";pointer-events:none;position:absolute}.entry-cta:after{opacity:0;will-change:transform;background:linear-gradient(105deg,#0000 12%,#ffffffc7 48%,#0000 84%);border-radius:999px;width:22%;height:240%;animation:entry-cta-shine 3.8s ease-in-out 1.4s infinite;top:-70%;left:-24%;transform:translate(-240%)rotate(18deg)}.entry-cta>span,.entry-cta>svg{z-index:1;position:relative}.entry-cta:hover{filter:brightness(1.06)}.entry-cta:active{transform:translateY(4px)scale(.985);box-shadow:0 1px #9f3b0c,0 0 18px #dd6e176b,0 10px 20px #2d0e023d,inset 0 1px #ffffff47}.entry-cta:disabled{cursor:wait}.entry-cta-spark{width:32px;height:32px;color:var(--accent);background:#211008;border:1px solid #eee254a6;border-radius:50%;place-items:center;display:grid;box-shadow:0 2px #43170552,0 0 10px #eee2543d}@keyframes entry-action-in{0%{opacity:0;transform:translateY(14px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes entry-cta-attention{0%,5%,to{transform:translate(0)rotate(0)scale(1);box-shadow:0 5px #9f3b0c,0 0 24px #dd6e1785,0 16px 38px #2d0e024d,inset 0 1px #ffffff5c}8%{transform:translate(-3px)rotate(-1.2deg)scale(1.012);box-shadow:0 5px #9f3b0c,0 0 32px #eee254a8,0 16px 38px #2d0e024d,inset 0 1px #ffffff7a}11%{transform:translate(3px)rotate(1.2deg)scale(1.012)}14%{transform:translate(-2px)rotate(-.8deg)scale(1.008)}17%{transform:translate(2px)rotate(.8deg)scale(1.008)}20%{transform:translate(-1px)rotate(-.35deg)scale(1.004)}23%{transform:translate(0)rotate(0)scale(1)}}@keyframes entry-cta-shine{0%,18%,to{opacity:0;transform:translate(-240%)rotate(18deg)}27%{opacity:.9}52%{opacity:.72;transform:translate(560%)rotate(18deg)}60%{opacity:0}}.entry-settings-backdrop{z-index:100;padding:max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));-webkit-backdrop-filter:blur(16px)saturate(.9);backdrop-filter:blur(16px)saturate(.9);background:#220f077a;justify-content:center;align-items:flex-end;animation:entry-settings-fade .18s both;display:flex;position:fixed;inset:0}.entry-settings-sheet{width:min(100%,540px);max-height:min(88dvh,720px);padding:20px 16px max(18px,env(safe-area-inset-bottom));border:1px solid var(--primary);overflow:auto}@supports (color:color-mix(in lab,red,red)){.entry-settings-sheet{border:1px solid color-mix(in srgb,var(--primary) 22%,var(--border))}}.entry-settings-sheet{color:var(--foreground);background:var(--surface);border-radius:28px}@supports (color:color-mix(in lab,red,red)){.entry-settings-sheet{background:color-mix(in srgb,var(--surface) 94%,transparent)}}.entry-settings-sheet{box-shadow:0 24px 60px #270e044d,0 5px 0 var(--foreground)}@supports (color:color-mix(in lab,red,red)){.entry-settings-sheet{box-shadow:0 24px 60px #270e044d,0 5px 0 color-mix(in srgb,var(--foreground) 12%,transparent)}}.entry-settings-sheet{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);animation:entry-settings-rise .26s cubic-bezier(.22,1,.36,1) both}.entry-settings-heading{justify-content:space-between;align-items:flex-start;gap:12px;padding:2px 4px 0;display:flex}.entry-settings-kicker{color:var(--primary);letter-spacing:.14em;text-transform:uppercase;font-size:10px;font-weight:950;display:block}.entry-settings-heading h2{margin-top:4px;font-size:28px}.entry-settings-close{border:1px solid var(--border);width:40px;height:40px;color:var(--text-muted);background:var(--surface-subtle);cursor:pointer;border-radius:14px;flex:none;place-items:center;display:grid}.entry-settings-close:active{transform:translateY(2px)scale(.96)}.entry-settings-sheet .settings-list{gap:8px;margin-top:18px}.entry-settings-sheet .setting-row{border-radius:15px;gap:10px;min-height:55px;padding:10px 12px}.entry-settings-sheet .setting-row h3{font-size:13px}.entry-settings-sheet .setting-row p{margin-top:2px;font-size:10px}.entry-settings-sheet .appearance-row{align-items:stretch}.entry-settings-sheet .appearance-control{width:100%}.entry-settings-sheet .appearance-control button{flex:1}@keyframes entry-settings-fade{0%{opacity:0}to{opacity:1}}@keyframes entry-settings-rise{0%{opacity:0;transform:translateY(18px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@media (min-width:760px){.entry-footer{bottom:max(28px,env(safe-area-inset-bottom))}.entry-settings-backdrop{align-items:center;padding:24px}.entry-settings-sheet{padding:24px}}@media (prefers-reduced-motion:reduce){.entry-cta,.entry-cta:after,.entry-footer>*,.entry-loader,.entry-screen,.entry-settings-backdrop,.entry-settings-button,.entry-settings-sheet,.entry-video{transition-duration:.01ms;animation:none}.entry-footer>*{opacity:1;pointer-events:auto;transform:none}}html[data-reduced-motion=true] .entry-cta,html[data-reduced-motion=true] .entry-cta:after,html[data-reduced-motion=true] .entry-footer>*,html[data-reduced-motion=true] .entry-loader,html[data-reduced-motion=true] .entry-screen,html[data-reduced-motion=true] .entry-settings-backdrop,html[data-reduced-motion=true] .entry-settings-button,html[data-reduced-motion=true] .entry-settings-sheet,html[data-reduced-motion=true] .entry-video{transition-duration:.01ms;animation:none}html[data-reduced-motion=true] .entry-footer>*{opacity:1;pointer-events:auto;transform:none}.lesson-guide{grid-template-rows:1fr 1fr;grid-template-columns:minmax(0,1fr) 168px minmax(0,1fr);align-items:center;min-height:178px;margin:4px 0 8px;display:grid}.lesson-guide-mascot{z-index:1;grid-area:1/2/-1;justify-self:center;overflow:visible;width:168px!important;height:168px!important}.lesson-guide-bubble{--lesson-guide-bubble-bg:var(--surface)}@supports (color:color-mix(in lab,red,red)){.lesson-guide-bubble{--lesson-guide-bubble-bg:color-mix(in srgb,var(--surface) 90%,var(--primary-soft))}}.lesson-guide-bubble{z-index:2;border:1px solid var(--primary);max-width:124px;padding:9px 11px;display:block;position:relative}@supports (color:color-mix(in lab,red,red)){.lesson-guide-bubble{border:1px solid color-mix(in srgb,var(--primary) 25%,var(--border))}}.lesson-guide-bubble{color:var(--foreground);background:var(--lesson-guide-bubble-bg);box-shadow:0 5px 0 var(--foreground);border-radius:15px 15px 15px 4px}@supports (color:color-mix(in lab,red,red)){.lesson-guide-bubble{box-shadow:0 5px 0 color-mix(in srgb,var(--foreground) 10%,transparent)}}.lesson-guide-bubble{text-align:center;font-size:11px;font-weight:850;line-height:1.18;animation:lesson-guide-bubble-float 4.6s ease-in-out infinite}.lesson-guide-bubble:after{border:1px solid var(--primary);width:9px;height:9px;position:absolute}@supports (color:color-mix(in lab,red,red)){.lesson-guide-bubble:after{border:1px solid color-mix(in srgb,var(--primary) 25%,var(--border))}}.lesson-guide-bubble:after{background:var(--lesson-guide-bubble-bg);content:""}.lesson-guide-bubble-left{justify-self:start}.lesson-guide-bubble-left:after{border-bottom:0;border-left:0;top:50%;right:-6px;transform:translateY(-50%)rotate(45deg)}.lesson-guide-bubble-right{--lesson-guide-bubble-bg:var(--surface);border-radius:15px 15px 4px;justify-self:end}@supports (color:color-mix(in lab,red,red)){.lesson-guide-bubble-right{--lesson-guide-bubble-bg:color-mix(in srgb,var(--surface) 90%,var(--info-soft))}}.lesson-guide-bubble-right{animation-delay:-1.5s}.lesson-guide-bubble-right:after{border-top:0;border-right:0;top:50%;left:-6px;transform:translateY(-50%)rotate(45deg)}.lesson-guide-bubble-one{grid-area:1/1;align-self:start}.lesson-guide-bubble-two{grid-area:1/3/-1;align-self:center}.lesson-guide-bubble-three{grid-area:2/1;align-self:end;animation-delay:-3s}@keyframes lesson-guide-bubble-float{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@media (prefers-reduced-motion:reduce){.lesson-guide-bubble{animation:none}}.lesson-word-visual{object-fit:contain;border-radius:14px;flex:0 0 44px;width:44px;height:44px}.lesson-word-card{color:var(--foreground);font:inherit;text-align:left}.lesson-word-card:not(.lesson-word-card-static){cursor:pointer;transition:transform var(--motion-tap) var(--ease-lumo),border-color var(--motion-select) var(--ease-lumo-calm),background-color var(--motion-select) var(--ease-lumo-calm),box-shadow var(--motion-select) var(--ease-lumo);align-items:center;gap:14px;display:flex}.lesson-word-card:not(.lesson-word-card-static):hover{border-color:var(--info);transform:translateY(-1px)}.lesson-word-card:not(.lesson-word-card-static):active{transform:translateY(2px) scale(var(--press-scale))}.lesson-word-card:not(.lesson-word-card-static):disabled{cursor:default;filter:saturate(.65)}.speech-card-content{flex:1;align-items:center;gap:14px;min-width:0;display:flex}.lesson-word-card-copy{flex:1;min-width:0;display:block}.lesson-word-card-copy strong{letter-spacing:-.04em;font-size:27px;display:block}.lesson-word-card-copy>span{color:var(--text-muted);font-size:13px;display:block}.speech-card-action{min-width:67px;color:var(--info);flex:none;justify-items:center;gap:2px;display:grid}.speech-card-action small{color:var(--text-muted);letter-spacing:.03em;white-space:nowrap;font-size:8px;font-weight:900;line-height:1}.lesson-word-card.is-speaking .speech-card-action svg{animation:pulse-speech .9s infinite}.lesson-example{border:0;border-left:2px solid var(--secondary);grid-template-columns:1fr auto;gap:3px 8px;margin:10px 0 14px;padding:7px 10px 8px 11px;display:grid}@supports (color:color-mix(in lab,red,red)){.lesson-example{border-left:2px solid color-mix(in srgb,var(--secondary) 62%,var(--border))}}.lesson-example{background:var(--secondary);border-radius:0 10px 10px 0}@supports (color:color-mix(in lab,red,red)){.lesson-example{background:color-mix(in srgb,var(--secondary) 5%,var(--background))}}.lesson-example p{color:var(--text);align-self:center;margin:0;font-size:12px;line-height:1.35}.lesson-example>.speech-controls{grid-area:1/2;align-self:center}.lesson-example-cloze{border-left-color:var(--info)}@supports (color:color-mix(in lab,red,red)){.lesson-example-cloze{border-left-color:color-mix(in srgb,var(--info) 72%,var(--border))}}.lesson-example-cloze{background:var(--info)}@supports (color:color-mix(in lab,red,red)){.lesson-example-cloze{background:color-mix(in srgb,var(--info) 7%,var(--background))}}.lesson-example .speech-button{width:32px;height:32px;color:var(--secondary-foreground);background:var(--secondary);box-shadow:0 3px 0 var(--secondary);border-radius:10px}@supports (color:color-mix(in lab,red,red)){.lesson-example .speech-button{box-shadow:0 3px 0 color-mix(in srgb,var(--secondary) 72%,var(--foreground))}}.lesson-example .speech-button svg{width:17px;height:17px}.lesson-celebration{z-index:60;pointer-events:none;position:fixed;inset:0;overflow:hidden}.lesson-celebration:before{background:radial-gradient(circle,var(--accent),transparent 68%);border-radius:50%;width:170px;height:170px;position:absolute;top:43%;left:50%}@supports (color:color-mix(in lab,red,red)){.lesson-celebration:before{background:radial-gradient(circle,color-mix(in srgb,var(--accent) 22%,transparent),transparent 68%)}}.lesson-celebration:before{content:"";animation:celebration-glow .72s var(--ease-lumo-spring) both;transform:translate(-50%,-50%)scale(.35)}.celebration-piece{background:var(--celebration-color,var(--accent));opacity:0;width:8px;height:13px;animation:celebration-piece .9s var(--ease-lumo-spring) both;border-radius:3px;position:absolute;top:43%;left:50%;transform:translate(-50%,-50%)}.celebration-piece:nth-child(2n){--celebration-color:var(--primary)}.celebration-piece:nth-child(3n){--celebration-color:var(--info)}.celebration-piece:nth-child(4n){--celebration-color:var(--secondary)}.celebration-piece:first-child{--celebration-x:-142px;--celebration-y:-106px;--celebration-rotate:-48deg}.celebration-piece:nth-child(2){--celebration-x:-96px;--celebration-y:-146px;--celebration-rotate:36deg}.celebration-piece:nth-child(3){--celebration-x:-38px;--celebration-y:-172px;--celebration-rotate:-18deg}.celebration-piece:nth-child(4){--celebration-x:20px;--celebration-y:-160px;--celebration-rotate:42deg}.celebration-piece:nth-child(5){--celebration-x:76px;--celebration-y:-137px;--celebration-rotate:-31deg}.celebration-piece:nth-child(6){--celebration-x:132px;--celebration-y:-92px;--celebration-rotate:19deg}.celebration-piece:nth-child(7){--celebration-x:-165px;--celebration-y:-30px;--celebration-rotate:58deg}.celebration-piece:nth-child(8){--celebration-x:163px;--celebration-y:-26px;--celebration-rotate:-54deg}.celebration-piece:nth-child(9){--celebration-x:-138px;--celebration-y:51px;--celebration-rotate:-26deg}.celebration-piece:nth-child(10){--celebration-x:144px;--celebration-y:47px;--celebration-rotate:32deg}.celebration-piece:nth-child(11){--celebration-x:-91px;--celebration-y:102px;--celebration-rotate:49deg}.celebration-piece:nth-child(12){--celebration-x:92px;--celebration-y:105px;--celebration-rotate:-42deg}.celebration-piece:nth-child(13){--celebration-x:-28px;--celebration-y:128px;--celebration-rotate:17deg}.celebration-piece:nth-child(14){--celebration-x:36px;--celebration-y:132px;--celebration-rotate:-19deg}@keyframes celebration-piece{0%{opacity:0;transform:translate(-50%,-50%)translate(0)rotate(0)scale(.55)}18%{opacity:1}to{opacity:0;transform:translate(-50%,-50%) translate(var(--celebration-x),var(--celebration-y)) rotate(var(--celebration-rotate)) scale(1)}}@keyframes celebration-glow{0%{opacity:0;transform:translate(-50%,-50%)scale(.35)}35%{opacity:1}to{opacity:0;transform:translate(-50%,-50%)scale(1.1)}}@supports (color:color-mix(in lab,red,red)){.feedback-panel.is-correction{border:1px solid color-mix(in srgb,var(--info) 28%,var(--border))}}.feedback-panel.is-correction .feedback-icon{color:var(--info-foreground);background:var(--info)}@media (max-width:759px){.lesson-guide{grid-template-columns:minmax(0,1fr) 124px minmax(0,1fr);min-height:148px;margin:0 -2px 5px}.lesson-guide-mascot{width:124px!important;height:124px!important}.lesson-guide-bubble{border-radius:12px 12px 12px 4px;max-width:96px;padding:7px 8px;font-size:10px}.lesson-guide-bubble-right{border-radius:12px 12px 4px}.lesson-word-visual{border-radius:11px;flex-basis:34px;width:34px;height:34px}.lesson-word-card{border-radius:15px;gap:9px;width:100%;margin:14px 0;padding:10px 11px}.speech-card-content{gap:9px}.lesson-word-card-copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:20px;overflow:hidden}.lesson-word-card-copy>span{text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:10px;overflow:hidden}.lesson-example{border-left-width:2px;border-radius:0 9px 9px 0;gap:2px 6px;margin:8px 0 11px;padding:6px 8px 7px 9px}.speech-card-action{min-width:56px}.speech-card-action svg{width:21px;height:21px}.speech-card-action small{font-size:7px}.lesson-example{gap:3px 8px;margin:15px 0 18px;padding:8px 10px 9px 11px}.lesson-example p{font-size:12px}}.app-frame{background:radial-gradient(circle at 8% 0,var(--accent),transparent 26rem),var(--background);min-height:100svh}@supports (color:color-mix(in lab,red,red)){.app-frame{background:radial-gradient(circle at 8% 0,color-mix(in srgb,var(--accent) 10%,transparent),transparent 26rem),var(--background)}}.app-shell{width:min(100%,1180px);min-height:100svh;padding:max(18px,env(safe-area-inset-top)) 22px max(100px,calc(34px + env(safe-area-inset-bottom)));margin:0 auto}.app-shell.is-lesson{max-width:820px;padding-bottom:26px}.desktop-rail{display:none}.page-enter{animation:page-enter .42s both}@keyframes page-enter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.lumo-mark{color:var(--foreground);letter-spacing:-.04em;align-items:center;gap:10px;font-size:25px;font-weight:900;display:inline-flex}.lumo-mark-orb{background:var(--surface-subtle);width:38px;height:38px;box-shadow:0 3px 0 var(--primary-hover),0 0 0 1px var(--primary);border-radius:13px;place-items:center;display:grid;overflow:hidden}@supports (color:color-mix(in lab,red,red)){.lumo-mark-orb{box-shadow:0 3px 0 var(--primary-hover),0 0 0 1px color-mix(in srgb,var(--primary) 28%,transparent)}}.lumo-mark-icon{object-fit:cover;width:100%;height:100%;display:block}.lumo-mark-compact{font-size:20px}.lumo-mark-compact .lumo-mark-orb{border-radius:10px;width:32px;height:32px}.mascot{will-change:transform;flex:none;line-height:0;display:block}.mascot-art{object-fit:contain;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;height:100%;filter:drop-shadow(0 10px 10px var(--mascot-shadow));display:block}.mascot-celebrate .mascot-art,.mascot-excited .mascot-art{filter:drop-shadow(0 10px 12px var(--mascot-shadow)) saturate(1.08)}.topbar{justify-content:space-between;margin-bottom:25px}.topbar,.topbar-actions{align-items:center;display:flex}.topbar-actions{gap:9px}.icon-button{border:1px solid var(--border);width:42px;height:42px;color:var(--text-muted);background:var(--surface);cursor:pointer;border-radius:14px;place-items:center;display:grid}.icon-button:hover{color:var(--foreground);border-color:var(--primary)}.eyebrow{color:var(--text-muted);text-transform:uppercase;letter-spacing:.16em;font-size:11px;font-weight:900;line-height:1.1;display:block}h1,h2,h3,p{margin:0}h1,h2,h3{letter-spacing:-.045em;font-weight:900}h1{font-size:clamp(32px,7vw,62px);line-height:.98}h2{font-size:clamp(24px,4vw,34px);line-height:1.03}h3{font-size:20px;line-height:1.15}.muted{color:var(--text-muted)}.text-primary{color:var(--primary)}.text-info{color:var(--info)}.text-secondary{color:var(--secondary)}.text-success{color:var(--success)}.text-accent{color:var(--accent)}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.section-title{justify-content:space-between;align-items:end;gap:18px;margin-bottom:16px;display:flex}.section-title h2{margin-top:6px}.primary-button{width:100%;min-height:56px;color:var(--primary-foreground);letter-spacing:.01em;cursor:pointer;box-shadow:0 4px 0 var(--foreground);border:0;border-radius:17px;padding:15px 22px;font-weight:950}@supports (color:color-mix(in lab,red,red)){.primary-button{box-shadow:0 4px 0 color-mix(in srgb,var(--foreground) 24%,transparent)}}.primary-button{transition:transform .14s,filter .14s,box-shadow .14s}.primary-button:hover{filter:brightness(1.05)}.primary-button:active{box-shadow:0 1px 0 var(--foreground);transform:translateY(3px)}@supports (color:color-mix(in lab,red,red)){.primary-button:active{box-shadow:0 1px 0 color-mix(in srgb,var(--foreground) 24%,transparent)}}.primary-button-primary{background:var(--primary)}.primary-button-info{background:var(--info);color:var(--info-foreground)}.primary-button-dark{background:var(--surface-elevated);color:var(--foreground)}.primary-button-ghost{border:1px solid var(--border);color:var(--text-muted);box-shadow:none;background:0 0}.button-row{gap:10px;display:flex}.button-row .primary-button{flex:1}.pill{border-radius:999px;align-items:center;gap:6px;padding:7px 11px;font-size:12px;font-weight:900;display:inline-flex}.pill-neutral{background:var(--surface-subtle);color:var(--text-muted)}.pill-primary{background:var(--primary-soft);color:var(--primary)}.pill-secondary{background:var(--secondary-soft);color:var(--secondary)}.pill-info{background:var(--info-soft);color:var(--info)}.pill-accent{background:var(--accent-soft);color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.pill-accent{color:color-mix(in srgb,var(--accent) 58%,var(--foreground))}}.stat-strip{grid-template-columns:repeat(3,1fr);gap:9px;margin-bottom:21px;display:grid}.stat-strip>div{border:1px solid var(--border);background:var(--surface);border-radius:15px;grid-template-columns:auto 1fr;align-items:center;column-gap:7px;min-width:0;padding:11px 12px;display:grid}@supports (color:color-mix(in lab,red,red)){.stat-strip>div{background:color-mix(in srgb,var(--surface) 86%,var(--surface-subtle))}}.stat-strip svg{color:var(--primary);grid-row:span 2}.stat-strip strong{font-size:18px;line-height:1}.stat-strip span{color:var(--text-muted);grid-column:2;margin-top:2px;font-size:10px}.progress-bar{background:var(--surface-subtle);border-radius:99px;width:100%;height:10px;overflow:hidden}.progress-fill{border-radius:inherit;height:100%;transition:width .55s cubic-bezier(.22,1,.36,1);display:block}.fill-primary{background:linear-gradient(90deg,var(--primary-hover),var(--primary))}.fill-secondary{background:linear-gradient(90deg,var(--secondary),var(--secondary))}@supports (color:color-mix(in lab,red,red)){.fill-secondary{background:linear-gradient(90deg,color-mix(in srgb,var(--secondary) 82%,var(--foreground)),var(--secondary))}}.fill-success{background:linear-gradient(90deg,var(--success),var(--success))}@supports (color:color-mix(in lab,red,red)){.fill-success{background:linear-gradient(90deg,color-mix(in srgb,var(--success) 82%,var(--foreground)),var(--success))}}.fill-info{background:linear-gradient(90deg,var(--info),var(--info))}@supports (color:color-mix(in lab,red,red)){.fill-info{background:linear-gradient(90deg,color-mix(in srgb,var(--info) 82%,var(--foreground)),var(--info))}}.fill-accent{background:linear-gradient(90deg,var(--accent),var(--accent))}@supports (color:color-mix(in lab,red,red)){.fill-accent{background:linear-gradient(90deg,color-mix(in srgb,var(--accent) 66%,var(--foreground)),var(--accent))}}.hero-panel{border:1px solid var(--primary);grid-template-columns:1fr auto;align-items:center;gap:15px;padding:23px;display:grid;position:relative;overflow:hidden}@supports (color:color-mix(in lab,red,red)){.hero-panel{border:1px solid color-mix(in srgb,var(--primary) 28%,var(--border))}}.hero-panel{background:linear-gradient(135deg,var(--primary),var(--surface) 62%,var(--accent));border-radius:25px}@supports (color:color-mix(in lab,red,red)){.hero-panel{background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 12%,var(--surface-raised)),var(--surface) 62%,color-mix(in srgb,var(--accent) 8%,var(--surface)))}}.hero-panel{box-shadow:var(--shadow);margin-bottom:25px}.hero-panel:after{content:"";background:var(--primary-soft);border-radius:50%;width:180px;height:180px;position:absolute;top:-75px;right:-70px}.hero-panel .mascot{z-index:1;position:relative}.hero-kicker{color:var(--primary);align-items:center;gap:8px;margin-bottom:10px;font-size:13px;font-weight:900;display:flex}.hero-panel h1{max-width:560px;font-size:clamp(29px,6vw,46px)}.hero-panel p{color:var(--text-muted);max-width:520px;margin-top:12px;line-height:1.5}.hero-cta{grid-column:1/-1;max-width:260px;margin-top:6px}.daily-card{border:1px solid var(--border);background:var(--surface);border-radius:22px;margin-bottom:26px;padding:20px}.daily-card-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.daily-goal{font-size:23px;font-weight:950}.daily-goal small{letter-spacing:0;margin-top:5px;font-weight:600;display:block}.daily-card footer,.daily-goal small{color:var(--text-muted);font-size:12px}.daily-card footer{justify-content:space-between;gap:12px;margin-top:10px;display:flex}.daily-card footer strong{color:var(--foreground)}.path-list{gap:15px;padding:6px 0 12px;display:grid;position:relative}.path-list:before{content:"";background:repeating-linear-gradient(to bottom,var(--border) 0 9px,transparent 9px 17px);width:3px;position:absolute;top:34px;bottom:36px;left:29px}.path-item{text-align:left;color:var(--foreground);cursor:pointer;background:0 0;border:0;grid-template-columns:60px 1fr;align-items:center;gap:14px;padding:0;display:grid;position:relative}.path-node{z-index:1;border:4px solid var(--border);width:60px;height:60px;color:var(--text-muted);background:var(--surface-subtle);box-shadow:0 5px 0 var(--foreground);border-radius:21px;place-items:center;display:grid;position:relative}@supports (color:color-mix(in lab,red,red)){.path-node{box-shadow:0 5px 0 color-mix(in srgb,var(--foreground) 16%,transparent)}}.path-node{font-size:22px}.path-node.is-active{border-color:var(--primary);background:var(--primary);color:var(--primary-foreground);box-shadow:0 6px 0 var(--primary-hover),0 0 0 8px var(--primary-soft);transform:rotate(-5deg)}.path-node.is-done{border-color:var(--info);color:var(--info);background:var(--info-soft)}.path-copy{border:1px solid var(--border);background:var(--surface);border-radius:18px;min-width:0;padding:15px 16px}@supports (color:color-mix(in lab,red,red)){.path-copy{background:color-mix(in srgb,var(--surface) 86%,var(--surface-subtle))}}.path-copy strong{font-size:16px;display:block}.path-copy span{color:var(--text-muted);margin-top:4px;font-size:12px;display:block}.path-copy .category-accent{color:var(--category-color)}.path-item.is-active .path-copy{border-color:var(--primary)}@supports (color:color-mix(in lab,red,red)){.path-item.is-active .path-copy{border-color:color-mix(in srgb,var(--primary) 46%,var(--border))}}.path-item.is-active .path-copy{background:linear-gradient(100deg,var(--primary-soft),var(--surface))}.path-item.is-locked{cursor:default;opacity:.48}.category-grid{gap:12px;display:grid}.category-card{background:var(--surface);border:1px solid var(--border);border-radius:19px;align-items:center;gap:14px;padding:16px;display:flex}.category-icon{width:46px;height:46px;color:var(--category-color);background:var(--category-color);border-radius:15px;flex:none;place-items:center;font-size:23px;display:grid}@supports (color:color-mix(in lab,red,red)){.category-icon{background:color-mix(in srgb,var(--category-color) 16%,var(--surface))}}.category-card h3{font-size:17px}.category-card p{color:var(--text-muted);margin-top:4px;font-size:12px}.category-card .category-meta{text-align:right;min-width:96px;margin-left:auto}.category-meta strong{font-size:13px;display:block}.category-meta span{color:var(--text-muted);margin-bottom:6px;font-size:11px;display:block}.bottom-nav{z-index:20;width:min(100%,660px);padding:9px 10px max(10px,env(safe-area-inset-bottom));background:var(--navigation-background);box-shadow:var(--navigation-shadow);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--navigation-border);border-bottom:0;border-radius:23px 23px 0 0;grid-template-columns:repeat(4,1fr);display:grid;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.bottom-nav button{color:var(--text-muted);cursor:pointer;background:0 0;border:0;justify-items:center;gap:4px;padding:8px 4px;font-size:10px;font-weight:900;display:grid}.bottom-nav button.is-active{color:var(--primary)}.bottom-nav button.is-active svg{filter:drop-shadow(0 0 8px var(--primary))}@supports (color:color-mix(in lab,red,red)){.bottom-nav button.is-active svg{filter:drop-shadow(0 0 8px color-mix(in srgb,var(--primary) 35%,transparent))}}.onboarding{flex-direction:column;max-width:600px;min-height:calc(100svh - 34px);margin:0 auto;display:flex}.onboarding-header{align-items:center;gap:14px;padding-top:5px;display:flex}.onboarding-header .progress-bar{flex:1;height:9px}.onboarding-stage{flex-direction:column;flex:1;padding:clamp(30px,8vh,90px) 0 26px;display:flex}.onboarding-intro{align-items:center;gap:20px;margin-bottom:30px;display:flex}.speech-bubble{border:1px solid var(--border);background:var(--surface);color:var(--foreground);box-shadow:0 8px 0 var(--foreground);border-radius:20px 20px 20px 5px;padding:17px 20px;line-height:1.3;position:relative}@supports (color:color-mix(in lab,red,red)){.speech-bubble{box-shadow:0 8px 0 color-mix(in srgb,var(--foreground) 12%,transparent)}}.speech-bubble:after{content:"";border-left:1px solid var(--border);border-bottom:1px solid var(--border);background:var(--surface);width:16px;height:16px;position:absolute;bottom:10px;left:-9px;transform:rotate(45deg)}.onboarding h1{font-size:clamp(33px,8vw,58px)}.onboarding-subtitle{color:var(--text-muted);max-width:470px;margin-top:14px;line-height:1.5}.choice-list{gap:11px;margin-top:20px;display:grid}.choice-card{border:1px solid var(--border);min-height:64px;color:var(--foreground);background:var(--surface);text-align:left;cursor:pointer;border-radius:18px;justify-content:space-between;align-items:center;gap:14px;padding:15px 17px;transition:border-color .16s,background .16s,transform .16s;display:flex}.choice-card:hover{border-color:var(--primary);transform:translateY(-1px)}.choice-card.is-selected{border-color:var(--info);background:var(--info-soft);box-shadow:inset 0 0 0 1px var(--info)}@supports (color:color-mix(in lab,red,red)){.choice-card.is-selected{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--info) 25%,transparent)}}.choice-card strong{font-size:17px}.choice-card small{color:var(--text-muted)}.choice-icon{font-size:26px}.onboarding-footer{margin-top:auto;padding-top:20px}.goal-card{flex-direction:column;align-items:stretch;gap:5px}.goal-card>div{justify-content:space-between;align-items:center;display:flex}.goal-card.is-selected{border-color:var(--primary);background:var(--primary-soft)}.loading-state{text-align:center;flex:1;place-items:center;gap:24px;display:grid}.loading-orbit{place-items:center;width:120px;height:120px;display:grid;position:relative}.loading-orbit:before{content:"";border:3px dashed var(--border);border-radius:50%;animation:orbit 3s linear infinite;position:absolute;inset:0}.loading-orbit-content{z-index:1;place-items:center;animation:loader-hover 2.8s ease-in-out infinite;display:grid;position:relative}.is-onboarding-frame{box-sizing:border-box;width:min(100%,600px);min-height:100svh;padding:max(24px,env(safe-area-inset-top)) 22px max(24px,env(safe-area-inset-bottom));margin:0 auto}.is-onboarding-frame .onboarding-loading-header{width:100%;min-height:44px;padding-top:0}.is-onboarding-frame .onboarding-loading-header .lumo-mark{flex:none}.is-onboarding-frame .onboarding-loading-header .progress-bar{flex:1;height:8px}.is-onboarding-frame .onboarding-loading-state{min-height:0;padding-bottom:8vh}.splash-screen .loading-orbit-splash:before{border-width:4px;inset:2px}.splash-screen .lumo-mark{gap:12px;font-size:30px}.splash-screen .lumo-mark-orb{border-radius:15px;width:46px;height:46px}@keyframes orbit{to{transform:rotate(1turn)}}@keyframes loader-hover{0%,to{transform:translateY(0)}50%{transform:translateY(-7px)}}.lesson-shell{flex-direction:column;min-height:calc(100svh - 52px);display:flex}.lesson-top{align-items:center;gap:12px;display:flex}.lesson-top .progress-bar{flex:1}.lesson-close{width:44px;height:44px;color:var(--text-muted);border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:15px;place-items:center;display:grid}.lesson-top-meta{color:var(--text-muted);justify-content:space-between;margin-top:11px;font-size:12px;display:flex}.lesson-content{flex:1;padding:clamp(30px,7vh,80px) 0 28px}.lesson-kicker{color:var(--secondary);letter-spacing:.13em;text-transform:uppercase;align-items:center;gap:8px;margin-bottom:15px;font-size:12px;font-weight:950;display:flex}.lesson-content h1{font-size:clamp(30px,7vw,48px)}.lesson-prompt{color:var(--text-muted);margin-top:9px;font-size:17px}.lesson-word-card{border:1px solid var(--secondary);align-items:center;gap:14px;width:fit-content;margin:36px 0 25px;padding:17px 19px;display:flex}@supports (color:color-mix(in lab,red,red)){.lesson-word-card{border:1px solid color-mix(in srgb,var(--secondary) 50%,var(--border))}}.lesson-word-card{background:var(--secondary-soft);border-radius:20px}.lesson-word-emoji{font-size:38px}.lesson-word-card strong{letter-spacing:-.04em;font-size:27px;display:block}.lesson-word-card span{color:var(--text-muted);font-size:13px}.speech-button{width:48px;height:48px;color:var(--info-foreground);background:var(--info);cursor:pointer;box-shadow:0 4px 0 var(--info);border:0;border-radius:15px;flex:none;place-items:center;display:grid}@supports (color:color-mix(in lab,red,red)){.speech-button{box-shadow:0 4px 0 color-mix(in srgb,var(--info) 72%,var(--foreground))}}.speech-button.is-speaking{animation:pulse-speech .9s infinite}@keyframes pulse-speech{50%{filter:brightness(1.12);transform:scale(1.08)}}.answer-grid{gap:11px;max-width:640px;display:grid}.answer-button{min-height:66px;color:var(--foreground);background:var(--surface);text-align:left;cursor:pointer;border:solid var(--border);border-width:1px 1px 4px;border-radius:18px;padding:15px 17px;font-size:18px;transition:border-color .15s,background .15s,transform .15s}.answer-button:hover{border-color:var(--info);transform:translateY(-2px)}.answer-button.is-selected{border-color:var(--info);background:var(--info-soft)}.answer-button.is-correct{border-color:var(--success);background:var(--success-soft);color:var(--success)}.answer-button.is-wrong{border-color:var(--danger);background:var(--danger-soft);animation:shake .3s}.answer-button:active{transform:translateY(2px)}@keyframes shake{25%{transform:translate(-5px)}75%{transform:translate(5px)}}.sentence-answer{border-bottom:2px solid var(--border);flex-wrap:wrap;gap:9px;min-height:73px;padding:14px;display:flex}.word-chip{color:var(--foreground);background:var(--surface-subtle);cursor:pointer;border:solid var(--border);border-width:1px 1px 3px;border-radius:14px;padding:12px 15px}.word-chip:hover{border-color:var(--secondary)}.word-chip.is-used{opacity:.22;cursor:default}.word-bank{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:65px;display:flex}.type-answer{border:1px solid var(--border);width:100%;min-height:62px;color:var(--foreground);background:var(--surface);border-radius:17px;padding:0 17px;font-size:20px}.hint{color:var(--text-muted);margin-top:13px;font-size:13px}.lesson-footer{padding:16px 0 max(5px,env(safe-area-inset-bottom));border-top:1px solid var(--navigation-border)}.feedback-panel{border-radius:18px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;padding:16px 17px;display:flex}.feedback-panel strong{font-size:18px;display:block}.feedback-panel p{color:var(--text-muted);margin-top:3px;font-size:13px}.feedback-panel.is-correct{background:var(--success-soft);border:1px solid var(--success)}@supports (color:color-mix(in lab,red,red)){.feedback-panel.is-correct{border:1px solid color-mix(in srgb,var(--success) 35%,var(--border))}}.feedback-panel.is-correction{background:var(--danger-soft);border:1px solid var(--danger)}@supports (color:color-mix(in lab,red,red)){.feedback-panel.is-correction{border:1px solid color-mix(in srgb,var(--danger) 32%,var(--border))}}.feedback-icon{width:38px;height:38px;color:var(--success-foreground);background:var(--success);border-radius:13px;place-items:center;display:grid}.feedback-panel.is-correction .feedback-icon{background:var(--danger);color:var(--danger-foreground)}.lesson-button{max-width:none}.completion{text-align:center;flex-direction:column;align-items:center;min-height:calc(100svh - 52px);padding:8vh 0 0;display:flex}.completion h1{margin-top:18px}.completion-subtitle{color:var(--text-muted);margin-top:10px}.reward-grid{grid-template-columns:repeat(3,1fr);gap:10px;width:100%;max-width:540px;margin:30px 0;display:grid}.reward-card{border:1px solid var(--border);background:var(--surface);border-radius:18px;padding:16px 9px}.reward-card strong{color:var(--primary);font-size:22px;display:block}.reward-card span{color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;margin-top:4px;font-size:10px;font-weight:900;display:block}.completion-install-card{border:1px solid var(--primary);align-items:center;gap:10px;width:100%;max-width:540px;margin:-8px 0 16px;padding:10px 11px;display:flex}@supports (color:color-mix(in lab,red,red)){.completion-install-card{border:1px solid color-mix(in srgb,var(--primary) 25%,var(--border))}}.completion-install-card{background:var(--primary-soft);border-radius:16px}@supports (color:color-mix(in lab,red,red)){.completion-install-card{background:color-mix(in srgb,var(--primary-soft) 72%,var(--surface))}}.completion-install-card{text-align:left}.completion-install-icon{width:32px;height:32px;color:var(--primary);background:var(--surface);border-radius:10px;flex:none;place-items:center;display:grid}.completion-install-copy{flex:1;min-width:0}.completion-install-copy strong{font-size:13px;display:block}.completion-install-copy p{color:var(--text-muted);margin-top:2px;font-size:10px;line-height:1.25}.completion-install-action{min-height:34px;color:var(--primary-foreground);background:var(--primary);cursor:pointer;border:0;border-radius:10px;flex:none;padding:7px 10px;font-size:11px;font-weight:900}.completion .primary-button{margin-top:auto}.practice-hero{background:linear-gradient(135deg,var(--info),var(--primary));border-radius:24px;padding:22px}@supports (color:color-mix(in lab,red,red)){.practice-hero{background:linear-gradient(135deg,color-mix(in srgb,var(--info) 16%,var(--surface-raised)),color-mix(in srgb,var(--primary) 11%,var(--surface)))}}.practice-hero{border:1px solid var(--info)}@supports (color:color-mix(in lab,red,red)){.practice-hero{border:1px solid color-mix(in srgb,var(--info) 30%,var(--border))}}.practice-hero{margin-bottom:28px}.practice-hero>div{justify-content:space-between;align-items:center;display:flex}.practice-hero h1{max-width:450px;margin-top:7px;font-size:clamp(31px,7vw,48px)}.practice-hero p{max-width:500px;color:var(--text-muted);margin-top:11px;line-height:1.45}.practice-hero .mascot{margin-left:auto}.practice-list{gap:12px;display:grid}.practice-card{border:1px solid var(--border);background:var(--surface);border-radius:20px;align-items:center;gap:15px;padding:18px;display:flex}.practice-card:disabled{cursor:not-allowed;opacity:.68;filter:saturate(.72)}.practice-card:disabled .practice-icon{background:var(--surface-subtle)}.practice-icon{background:var(--secondary-soft);border-radius:16px;flex:none;place-items:center;width:50px;height:50px;font-size:24px;display:grid}.practice-card h3{font-size:18px}.practice-card p{color:var(--text-muted);margin-top:4px;font-size:12px}.vocab-preview{gap:10px;margin-top:28px;display:grid}.vocab-row{background:var(--surface);border-radius:15px;align-items:center;gap:11px;padding:13px 15px;display:flex}.vocab-row>span:first-child{font-size:22px}.vocab-row div{flex:1}.vocab-row strong{font-size:14px}.vocab-row small{color:var(--text-muted);margin-top:3px;display:block}.strength-meter{background:var(--surface-subtle);border-radius:99px;width:62px;height:6px;overflow:hidden}.strength-meter span{background:var(--info);border-radius:inherit;height:100%;display:block}.progress-overview{grid-template-columns:1fr 1fr;gap:12px;margin-bottom:28px;display:grid}.overview-card{border:1px solid var(--border);background:var(--surface);border-radius:20px;padding:19px}.overview-card .big-number{letter-spacing:-.07em;margin-top:8px;font-size:37px;font-weight:950;display:block}.overview-card p{color:var(--text-muted);margin-top:4px;font-size:12px}.category-progress-list{gap:11px;display:grid}.category-progress{border:1px solid var(--border);background:var(--surface);border-radius:18px;padding:16px}.category-progress-header{justify-content:space-between;gap:12px;margin-bottom:9px;display:flex}.category-progress-header strong{font-size:14px}.category-progress-header span{color:var(--text-muted);font-size:12px}.achievement-grid{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.achievement{border:1px solid var(--border);background:var(--surface);border-radius:18px;padding:16px}.achievement.is-earned{border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.achievement.is-earned{border-color:color-mix(in srgb,var(--accent) 42%,var(--border))}}.achievement.is-earned{background:var(--accent-soft)}.achievement-icon{background:var(--surface-subtle);border-radius:13px;place-items:center;width:38px;height:38px;margin-bottom:13px;font-size:20px;display:grid}.is-earned .achievement-icon{background:var(--accent);color:var(--accent-foreground)}.achievement strong{font-size:14px;display:block}.achievement p{color:var(--text-muted);margin-top:4px;font-size:11px;line-height:1.35}.profile-title-badge{color:var(--secondary);background:var(--secondary-soft);border-radius:999px;margin-top:7px;padding:4px 7px;font-size:10px;font-weight:850;display:inline-block}.profile-card{border:1px solid var(--border);background:var(--surface);border-radius:22px;align-items:center;gap:16px;margin-bottom:18px;padding:20px;display:flex}.profile-card h1{font-size:29px}.profile-card p{color:var(--text-muted);margin-top:5px;font-size:13px}.settings-list{gap:10px;display:grid}.setting-row{border:1px solid var(--border);background:var(--surface);border-radius:17px;justify-content:space-between;align-items:center;gap:15px;min-height:63px;padding:14px 16px;display:flex}.setting-row h3{font-size:15px}.setting-row p{color:var(--text-muted);margin-top:4px;font-size:11px}.setting-row-action{width:100%;color:var(--foreground);text-align:left;cursor:pointer;transition:transform var(--motion-fast) cubic-bezier(.22,1,.36,1),border-color var(--motion-fast) ease,background-color var(--motion-fast) ease}.setting-row-action:hover{border-color:var(--primary);background:var(--surface-subtle)}.setting-row-action:active{transform:translateY(2px)scale(.99)}.toggle{background:var(--surface-subtle);cursor:pointer;border:0;border-radius:99px;width:49px;height:29px;padding:3px}.toggle span{background:var(--text-muted);border-radius:50%;width:23px;height:23px;transition:transform .18s,background .18s;display:block}.toggle.is-on{background:var(--primary-soft)}.toggle.is-on span{background:var(--primary);transform:translate(20px)}.danger-button{color:var(--danger);cursor:pointer;background:0 0;border:0;font-size:12px;font-weight:900}.appearance-control{border:1px solid var(--border);background:var(--surface-subtle);border-radius:13px;flex:none;padding:3px;display:flex}.appearance-control button{min-height:34px;color:var(--text-muted);cursor:pointer;transition:transform var(--motion-fast) ease,color var(--motion-fast) ease,background-color var(--motion-fast) ease,box-shadow var(--motion-fast) ease;background:0 0;border:0;border-radius:10px;padding:0 9px;font-size:11px;font-weight:900}.appearance-control button:hover{color:var(--foreground)}.appearance-control button.is-selected{color:var(--primary-foreground);background:var(--primary);box-shadow:0 2px 0 var(--primary-hover)}.appearance-control button:active{transform:scale(.96)}.offline-indicator{border:1px solid var(--primary);align-items:center;gap:6px;padding:6px 9px;display:inline-flex}@supports (color:color-mix(in lab,red,red)){.offline-indicator{border:1px solid color-mix(in srgb,var(--primary) 30%,var(--border))}}.offline-indicator{color:var(--primary);background:var(--primary-soft);border-radius:999px;font-size:10px;font-weight:900}.offline-indicator span{background:var(--primary);border-radius:50%;width:6px;height:6px}@media (min-width:760px){.app-shell{padding-left:42px;padding-right:42px}.bottom-nav{border:1px solid var(--navigation-border);border-radius:22px;width:100%;max-width:520px;margin:40px auto 0;position:static;transform:none}.hero-panel{padding:30px}.category-grid{grid-template-columns:repeat(2,1fr)}.path-list{max-width:760px}.lesson-shell .lesson-footer{margin:0 -70px;padding-left:70px;padding-right:70px}.practice-list{grid-template-columns:repeat(2,1fr)}.app-shell.is-lesson{padding-left:92px;padding-right:92px}}@media (min-width:1100px){.app-shell{padding-left:70px;padding-right:70px}.bottom-nav{max-width:620px}.hero-panel{grid-template-columns:1fr 210px;min-height:250px}.hero-cta{grid-column:1}.category-grid{grid-template-columns:repeat(3,1fr)}.path-list{margin:0 auto}.app-shell.is-lesson{max-width:850px}.practice-hero{justify-content:space-between;align-items:center;display:flex}.practice-hero>div{display:block}.practice-hero .mascot{margin-left:0}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.level-bars{flex:none;align-items:end;gap:4px;width:35px;height:29px;display:flex}.level-bars i{background:var(--surface-subtle);border-radius:4px;width:6px;display:block}.level-bars i:first-child{height:8px}.level-bars i:nth-child(2){height:14px}.level-bars i:nth-child(3){height:21px}.level-bars i:nth-child(4){height:29px}.level-bars i.is-lit{background:var(--info);box-shadow:0 0 9px var(--info-soft)}.match-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:35px;display:grid}.match-tile{min-height:63px;color:var(--foreground);background:var(--surface);cursor:pointer;border:solid var(--border);border-width:1px 1px 4px;border-radius:17px;padding:12px 10px}.match-tile.is-selected{border-color:var(--info);background:var(--info-soft)}.match-tile.is-matched{border-color:var(--success);color:var(--success);background:var(--success-soft);opacity:.55}.match-grid.has-error{animation:shake .3s}:root{--motion-fast:.15s;--motion-medium:.22s;--action-bar-height:76px}.answer-button,.bottom-nav button,.choice-card,.icon-button,.lesson-close,.match-tile,.path-item,.practice-card,.primary-button,.speech-button,.toggle,.word-chip{touch-action:manipulation;will-change:transform}.answer-button,.bottom-nav button,.choice-card,.icon-button,.lesson-close,.match-tile,.practice-card,.primary-button,.speech-button,.word-chip{transition:transform var(--motion-fast) cubic-bezier(.22,1,.36,1),border-color var(--motion-fast) ease,background-color var(--motion-fast) ease,filter var(--motion-fast) ease}.answer-button:active,.choice-card:active,.icon-button:active,.lesson-close:active,.match-tile:active,.practice-card:active,.primary-button:active,.speech-button:active,.word-chip:active{transform:translateY(2px)scale(.985)}.lesson-content-enter{animation:lesson-content-in var(--motion-medium) cubic-bezier(.22,1,.36,1) both}.screen-transition{animation:screen-content-in .18s cubic-bezier(.22,1,.36,1) both}.feedback-panel{animation:feedback-in .18s cubic-bezier(.22,1,.36,1) both}@keyframes lesson-content-in{0%{opacity:0;transform:translate(8px)}to{opacity:1;transform:translate(0)}}@keyframes screen-content-in{0%{opacity:0;transform:translateY(7px)scale(.99)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes feedback-in{0%{opacity:0;transform:translateY(5px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes success-pop{0%{transform:scale(.97)}55%{transform:scale(1.015)}to{transform:scale(1)}}.progress-fill{transition:width .28s cubic-bezier(.22,1,.36,1)}@media (max-width:759px){.app-shell{padding:max(12px,env(safe-area-inset-top)) 14px calc(var(--action-bar-height) + env(safe-area-inset-bottom))}.app-shell.is-lesson{padding:max(10px,env(safe-area-inset-top)) 14px 0}.topbar{min-height:34px;margin-bottom:13px}.lumo-mark{gap:8px;font-size:22px}.lumo-mark-orb{border-radius:10px;width:32px;height:32px}.lumo-mark-compact{font-size:20px}.lumo-mark-compact .lumo-mark-orb{border-radius:10px;width:30px;height:30px}.topbar-actions{gap:6px;min-width:0}.topbar-actions .pill{white-space:nowrap;padding:6px 8px;font-size:10px}h1{font-size:clamp(27px,8vw,36px);line-height:1.02}.section-title{align-items:center;gap:10px;margin:20px 0 10px}.section-title h2{margin-top:4px;font-size:20px;line-height:1.05}.eyebrow{letter-spacing:.13em;font-size:9px}.primary-button{border-radius:15px;min-height:50px;padding:13px 15px;font-size:14px}.stat-strip{background:var(--surface);border:0;border-radius:14px;gap:3px;margin:0 -2px 12px;padding:7px 9px}@supports (color:color-mix(in lab,red,red)){.stat-strip{background:color-mix(in srgb,var(--surface) 72%,var(--surface-subtle))}}.stat-strip{box-shadow:none}.stat-strip div{white-space:nowrap;gap:4px;min-width:0}.stat-strip svg{width:15px;height:15px}.stat-strip strong{font-size:13px}.stat-strip span{font-size:9px}.hero-panel{box-shadow:0 7px 0 var(--foreground);border-radius:19px;grid-template-columns:minmax(0,1fr) auto;gap:6px;margin-bottom:13px;padding:16px}@supports (color:color-mix(in lab,red,red)){.hero-panel{box-shadow:0 7px 0 color-mix(in srgb,var(--foreground) 16%,transparent)}}.hero-panel h1{font-size:clamp(24px,7.2vw,31px);line-height:1.02}.hero-panel p{max-width:35ch;margin-top:7px;font-size:12px;line-height:1.35}.hero-kicker{gap:5px;margin-bottom:7px;font-size:10px}.hero-kicker svg{width:13px}.hero-panel .mascot{max-width:76px;max-height:76px}.hero-cta{grid-column:1/-1;max-width:none;margin-top:4px}.daily-card{border-radius:17px;margin-bottom:18px;padding:13px}.daily-card-header{align-items:flex-start;gap:7px;margin-bottom:10px}.daily-goal{font-size:19px}.daily-goal small{max-width:25ch;margin-top:3px;font-size:10px;line-height:1.25}.daily-card .pill{white-space:nowrap;padding:6px 8px;font-size:10px}.daily-card footer{margin-top:7px;font-size:10px}.progress-bar{height:8px}.path-list{gap:9px;padding:3px 0 8px}.path-list:before{width:2px;top:28px;bottom:28px;left:22px}.path-item{grid-template-columns:47px minmax(0,1fr);gap:9px}.path-node{border-width:3px;border-radius:16px;width:47px;height:47px;font-size:17px}.path-node.is-active{box-shadow:0 5px 0 var(--primary-hover),0 0 0 5px var(--primary-soft)}.path-copy{border-radius:14px;min-width:0;padding:10px 11px}.path-copy strong{font-size:13px}.path-copy span,.path-copy strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.path-copy span{margin-top:3px;font-size:10px}.category-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.category-card{border-radius:15px;grid-template-columns:35px minmax(0,1fr);gap:8px;min-width:0;padding:10px;display:grid}.category-icon{border-radius:11px;width:35px;height:35px;font-size:18px}.category-card h3{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.category-card p{margin-top:2px;font-size:9px}.category-card .category-meta{text-align:left;grid-column:1/-1;min-width:0;margin-left:0}.category-meta strong{font-size:10px;display:inline}.category-meta span{margin-left:5px;font-size:9px;display:inline}.category-meta .progress-bar{height:5px;margin-top:5px}.bottom-nav{width:100%;padding:6px 10px max(7px,env(safe-area-inset-bottom));border:0;border-top:1px solid var(--navigation-border);background:var(--navigation-background);box-shadow:var(--navigation-shadow);border-radius:17px 17px 0 0}.bottom-nav button{white-space:nowrap;gap:2px;min-width:0;padding:5px 3px;font-size:9px}.bottom-nav button svg{width:19px;height:19px}.onboarding{min-height:calc(100svh - max(12px, env(safe-area-inset-top)))}.onboarding-header{gap:9px;padding-top:0}.onboarding-header .progress-bar{height:7px}.onboarding-stage{min-height:0;padding:clamp(20px,5vh,43px) 0 12px}.onboarding-intro{gap:11px;margin-bottom:18px}.onboarding-intro .mascot{transform-origin:0;margin-right:-20px;transform:scale(.78)}.speech-bubble{box-shadow:0 5px 0 var(--foreground);border-radius:15px 15px 15px 4px;padding:12px 14px;font-size:13px}@supports (color:color-mix(in lab,red,red)){.speech-bubble{box-shadow:0 5px 0 color-mix(in srgb,var(--foreground) 10%,transparent)}}.onboarding h1{font-size:clamp(29px,8.8vw,38px)}.onboarding h2{font-size:23px;line-height:1.04;margin-top:14px!important}.onboarding-subtitle{margin-top:10px;font-size:13px;line-height:1.35}.choice-list{gap:8px;margin-top:15px}.choice-card{border-radius:14px;gap:9px;min-height:54px;padding:10px 12px}.choice-card strong{font-size:14px}.choice-card small{margin-top:2px;font-size:10px;display:block}.choice-icon{font-size:21px}.choice-card .pill{padding:5px 8px;font-size:9px}.onboarding-footer{z-index:4;padding:10px 14px calc(8px + env(safe-area-inset-bottom));background:linear-gradient(180deg,transparent,var(--navigation-background) 22%);margin:auto -14px -12px;position:sticky;bottom:0}.goal-card{min-height:52px}.goal-card>div{gap:8px}.goal-card small{font-size:10px}.lesson-shell{min-height:calc(100svh - max(10px, env(safe-area-inset-top)))}.lesson-top{gap:8px}.lesson-top .progress-bar{height:8px}.lesson-close{border-radius:12px;width:36px;height:36px}.lesson-close svg{width:20px;height:20px}.lesson-top-meta{margin-top:6px;font-size:10px}.lesson-content{padding:19px 0 14px}.lesson-kicker{letter-spacing:.1em;gap:5px;margin-bottom:9px;font-size:10px}.lesson-kicker svg{width:12px}.lesson-content h1{font-size:clamp(26px,7.6vw,34px);line-height:1.04}.lesson-prompt{margin-top:5px;font-size:13px;line-height:1.3}.lesson-word-card{border-radius:15px;gap:9px;width:100%;margin:14px 0;padding:10px 11px}.lesson-word-card>div{flex:1;min-width:0}.lesson-word-emoji{font-size:29px}.lesson-word-card strong{font-size:20px}.lesson-word-card span,.lesson-word-card strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.lesson-word-card span{margin-top:2px;font-size:10px;display:block}.speech-button{border-radius:12px;width:40px;height:40px}.speech-button svg{width:19px;height:19px}.answer-grid{gap:8px}.answer-button{border-bottom-width:3px;border-radius:15px;min-height:53px;padding:11px 13px;font-size:15px}.sentence-answer{gap:7px;min-height:58px;padding:9px 1px}.word-chip{border-radius:12px;padding:9px 11px;font-size:13px}.word-bank{gap:7px;margin-top:24px}.type-answer{border-radius:14px;min-height:54px;font-size:17px}.hint{margin-top:9px;font-size:11px}.feedback-panel{border-radius:14px;align-items:flex-start;gap:9px;margin:10px 0 0;padding:10px 11px}.feedback-panel strong{font-size:14px}.feedback-panel p{font-size:11px;line-height:1.25}.feedback-icon{border-radius:10px;width:31px;height:31px}.feedback-icon svg{width:17px;height:17px}.lesson-footer{z-index:10;padding:10px 14px calc(8px + env(safe-area-inset-bottom));border-top:1px solid var(--navigation-border);background:linear-gradient(180deg,var(--navigation-background),var(--navigation-background) 26%);margin:0 -14px;position:sticky;bottom:0}@supports (color:color-mix(in lab,red,red)){.lesson-footer{background:linear-gradient(180deg,color-mix(in srgb,var(--navigation-background) 72%,transparent),var(--navigation-background) 26%)}}.lesson-footer{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.lesson-footer .primary-button{min-height:49px}.match-grid{gap:8px;margin-top:18px}.match-tile{border-bottom-width:3px;border-radius:14px;min-height:55px;padding:10px 8px;font-size:13px}.completion{min-height:calc(100svh - 20px);padding:5vh 0 0}.completion .mascot{margin-bottom:-20px;transform:scale(.78)}.completion h1{max-width:17ch;margin-top:13px;font-size:28px}.completion-subtitle{max-width:31ch;margin-top:8px;font-size:12px;line-height:1.35}.reward-grid{gap:7px;margin:20px 0}.reward-card{border-radius:14px;padding:12px 6px}.reward-card strong{font-size:19px}.reward-card span{font-size:8px}.completion-install-card{border-radius:14px;gap:8px;margin:-7px 0 12px;padding:9px 10px}.completion-install-icon{border-radius:9px;width:29px;height:29px}.completion-install-copy strong{font-size:12px}.completion-install-copy p{font-size:9px}.completion-install-action{min-height:31px;padding:6px 9px;font-size:10px}.practice-hero{border-radius:18px;grid-template-columns:minmax(0,1fr) auto;gap:7px;margin-bottom:20px;padding:16px;display:grid}.practice-hero>div{min-width:0;display:block}.practice-hero h1{font-size:26px;line-height:1.03}.practice-hero p{margin-top:7px;font-size:12px;line-height:1.35}.practice-hero>div>div{max-width:none!important;margin-top:12px!important}.practice-hero .mascot{max-width:72px;max-height:72px}.practice-list{gap:8px}.practice-card{border-radius:15px;gap:9px;min-width:0;padding:12px}.practice-icon{border-radius:11px;width:37px;height:37px;font-size:19px}.practice-card h3{font-size:14px}.practice-card p{margin-top:2px;font-size:10px}.practice-card>span:nth-child(2){min-width:0}.practice-card p{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.vocab-preview{gap:7px;margin-top:18px}.vocab-row{border-radius:13px;gap:8px;padding:10px 11px}.vocab-row>span:first-child{font-size:19px}.vocab-row strong{font-size:13px}.vocab-row small{margin-top:2px;font-size:10px}.strength-meter{width:48px;height:5px}.progress-overview{gap:8px;margin-bottom:20px}.overview-card{border-radius:15px;min-width:0;padding:13px}.overview-card .big-number{margin-top:5px;font-size:29px}.overview-card p{font-size:10px;line-height:1.25}.category-progress-list{gap:7px}.category-progress{border-radius:14px;padding:11px 12px}.category-progress-header{margin-bottom:7px}.category-progress-header span,.category-progress-header strong{text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.achievement-grid{gap:7px}.achievement{border-radius:14px;min-width:0;padding:12px}.achievement-icon{border-radius:10px;width:31px;height:31px;margin-bottom:8px;font-size:16px}.achievement strong{font-size:12px}.achievement p{font-size:9px}.profile-card{border-radius:17px;gap:10px;margin-bottom:12px;padding:13px}.profile-card .mascot{transform-origin:0;margin-right:-20px;transform:scale(.78)}.profile-card h1{font-size:22px;line-height:1.05}.profile-card p{margin-top:3px;font-size:11px}.settings-list{gap:7px}.setting-row{border-radius:14px;gap:10px;min-height:54px;padding:10px 12px}.setting-row>div{min-width:0}.setting-row h3{font-size:13px}.setting-row h3,.setting-row p{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.setting-row p{margin-top:2px;font-size:9px}.toggle{flex:none;width:43px;height:26px}.toggle span{width:20px;height:20px}.toggle.is-on span{transform:translate(17px)}.danger-button{font-size:11px}}@media (prefers-reduced-motion:reduce){.answer-button.is-correct,.feedback-panel,.lesson-content-enter,.match-tile.is-matched,.screen-transition{animation:none!important}.answer-button,.choice-card,.icon-button,.lesson-close,.match-tile,.practice-card,.primary-button,.speech-button,.word-chip{transition-duration:.01ms!important}}.practice-hero{grid-template-rows:auto auto;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:7px;display:grid}.practice-hero>div{min-width:0;display:block}.practice-hero-copy{grid-area:1/1}.practice-hero-cta{grid-area:2/1/auto/-1;width:100%;max-width:none;margin-top:20px}.practice-hero .mascot{grid-area:1/2;margin-left:0}.view-transition{animation:nav-view-in .22s cubic-bezier(.22,1,.36,1) both}@keyframes nav-view-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (max-width:759px){:root{--action-bar-height:78px}.bottom-nav{z-index:40;width:100%;max-width:none;min-height:64px;padding:7px 10px calc(7px + env(safe-area-inset-bottom));border:0;border-top:1px solid var(--navigation-border);background:var(--navigation-background);box-shadow:var(--navigation-shadow),0 -1px 0 var(--foreground);border-radius:0;grid-template-columns:repeat(4,minmax(0,1fr));display:grid;position:fixed;inset:auto 0 0;transform:none}@supports (color:color-mix(in lab,red,red)){.bottom-nav{box-shadow:var(--navigation-shadow),0 -1px 0 color-mix(in srgb,var(--foreground) 3%,transparent)}}.bottom-nav{-webkit-backdrop-filter:blur(24px)}.bottom-nav:before{content:"";pointer-events:none;background:linear-gradient(180deg,var(--foreground),transparent 42%);position:absolute;inset:0}@supports (color:color-mix(in lab,red,red)){.bottom-nav:before{background:linear-gradient(180deg,color-mix(in srgb,var(--foreground) 3.5%,transparent),transparent 42%)}}.bottom-nav button{z-index:1;min-width:0;min-height:50px;color:var(--text-muted);border-radius:16px;align-content:center;place-items:center;gap:3px;padding:5px 3px;display:grid;position:relative}@supports (color:color-mix(in lab,red,red)){.bottom-nav button{color:color-mix(in srgb,var(--text-muted) 82%,transparent)}}.bottom-nav button{letter-spacing:.01em;white-space:nowrap;font-size:9px;font-weight:900;transition:color .18s,transform .12s cubic-bezier(.22,1,.36,1)}.bottom-nav button:before{content:"";z-index:-1;background:var(--navigation-active-background);box-shadow:inset 0 0 0 1px var(--primary);border-radius:14px;position:absolute;inset:2px 7px}@supports (color:color-mix(in lab,red,red)){.bottom-nav button:before{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--primary) 14%,transparent)}}.bottom-nav button:before{opacity:0;transition:opacity .18s,transform .22s cubic-bezier(.22,1,.36,1);transform:scale(.78)}.bottom-nav button>span,.bottom-nav button>svg{z-index:1;position:relative}.bottom-nav button>svg{transition:transform .18s cubic-bezier(.22,1,.36,1),filter .18s}.bottom-nav button>span{transition:transform .18s cubic-bezier(.22,1,.36,1)}.bottom-nav button.is-active{color:var(--primary)}.bottom-nav button.is-active:before{opacity:1;transform:scale(1)}.bottom-nav button.is-active>svg{filter:drop-shadow(0 0 8px var(--primary));transform:translateY(-1px)scale(1.07)}@supports (color:color-mix(in lab,red,red)){.bottom-nav button.is-active>svg{filter:drop-shadow(0 0 8px color-mix(in srgb,var(--primary) 35%,transparent))}}.bottom-nav button.is-active>span{transform:translateY(1px)}.bottom-nav button:active{transform:scale(.92)}}@media (prefers-reduced-motion:reduce){.view-transition{animation:none!important}.bottom-nav button,.bottom-nav button:before,.bottom-nav button>span,.bottom-nav button>svg{transition-duration:.01ms!important}}.progress-ribbon{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0 0 16px;display:grid}.language-progress-card,.player-level-card,.progress-ribbon>div,.weekly-card{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow);border-radius:18px;padding:16px}.progress-ribbon .eyebrow{align-items:center;gap:4px;display:flex}.progress-ribbon strong{letter-spacing:-.04em;margin-top:6px;font-size:22px;display:block}.progress-ribbon small{min-height:15px;color:var(--text-muted);margin:3px 0 9px;font-size:10px;line-height:1.25;display:block}.progress-ribbon .progress-bar{height:7px}.mission-list{border-top:1px solid var(--border);gap:7px;margin-top:15px;padding-top:13px;display:grid}.mission-row{grid-template-columns:23px minmax(0,1fr) auto;align-items:center;gap:8px;min-width:0;display:grid}.mission-check{border:1px solid var(--foreground);place-items:center;width:23px;height:23px;display:grid}@supports (color:color-mix(in lab,red,red)){.mission-check{border:1px solid color-mix(in srgb,var(--foreground) 18%,var(--border))}}.mission-check{color:var(--text-muted);border-radius:8px;font-size:14px;font-weight:900}.mission-row.is-complete .mission-check{color:var(--success);border-color:var(--success)}@supports (color:color-mix(in lab,red,red)){.mission-row.is-complete .mission-check{border-color:color-mix(in srgb,var(--success) 45%,var(--border))}}.mission-row.is-complete .mission-check{background:var(--success-soft)}.mission-row>div{min-width:0}.mission-row small,.mission-row strong{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.mission-row strong{font-size:12px}.mission-row small{color:var(--text-muted);margin-top:2px;font-size:10px}.mission-progress{color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:10px}.mission-complete-note{color:var(--primary);margin-top:3px;font-size:11px;font-weight:850}.world-list{gap:12px;display:grid}.world-card{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow);border-radius:20px;padding:16px}.world-card.is-complete{border-color:var(--success)}@supports (color:color-mix(in lab,red,red)){.world-card.is-complete{border-color:color-mix(in srgb,var(--success) 32%,var(--border))}}.world-card.is-locked{opacity:.62}.world-card-header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:13px;display:flex}.world-card-header>div{min-width:0}.world-card-header h3{letter-spacing:-.035em;margin-top:4px;font-size:21px}.world-card-header p{max-width:47ch;color:var(--text-muted);margin-top:4px;font-size:11px;line-height:1.35}.world-card>.progress-bar{height:7px}.unit-list{gap:6px;margin-top:12px;display:grid}.unit-row{min-width:0;color:var(--foreground);background:var(--surface-subtle);text-align:left;cursor:pointer;border:1px solid #0000;border-radius:13px;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:9px;padding:8px 9px;display:grid}.unit-row:not(:disabled):hover{border-color:var(--foreground)}@supports (color:color-mix(in lab,red,red)){.unit-row:not(:disabled):hover{border-color:color-mix(in srgb,var(--foreground) 18%,var(--border))}}.unit-row:not(:disabled):hover{background:var(--surface)}.unit-row:disabled{cursor:default}.unit-row.is-complete{color:var(--text-muted)}.unit-node{width:32px;height:32px;color:var(--unit-accent,var(--primary));background:var(--unit-accent,var(--primary));border-radius:11px;place-items:center;display:grid}@supports (color:color-mix(in lab,red,red)){.unit-node{background:color-mix(in srgb,var(--unit-accent,var(--primary)) 12%,var(--surface))}}.unit-node{font-size:15px;font-weight:900}.unit-row>span:nth-child(2){min-width:0}.unit-row small,.unit-row strong{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.unit-row strong{font-size:12px}.unit-row small{color:var(--text-muted);margin-top:2px;font-size:10px}.unit-arrow{color:var(--text-muted);font-size:18px}.checkpoint-row{border:1px solid var(--primary);grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:8px;width:100%;margin-top:10px;padding:10px;display:grid}@supports (color:color-mix(in lab,red,red)){.checkpoint-row{border:1px solid color-mix(in srgb,var(--primary) 30%,var(--border))}}.checkpoint-row{color:var(--foreground);background:var(--primary-soft);text-align:left;cursor:pointer;border-radius:13px}.checkpoint-row>span:first-child{font-size:19px}.checkpoint-row small,.checkpoint-row strong{display:block}.checkpoint-row strong{font-size:12px}.checkpoint-row small{color:var(--text-muted);margin-top:2px;font-size:10px}.checkpoint-row>span:last-child{color:var(--primary);font-size:11px;font-weight:850}.checkpoint-row.is-complete{border-color:var(--border);background:var(--surface-subtle)}.language-progress-card,.player-level-card,.weekly-card{margin-bottom:12px}.player-level-heading,.progress-card-heading,.weekly-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.player-level-heading h2,.progress-card-heading h2,.weekly-heading h2{letter-spacing:-.04em;margin-top:4px;font-size:25px}.progress-card-heading p{color:var(--text-muted);margin-top:3px;font-size:11px}.language-level-mark{width:45px;height:45px;color:var(--primary);background:var(--primary-soft);border-radius:15px;place-items:center;font-size:25px;display:grid}.language-progress-card>.progress-bar,.player-level-card>.progress-bar{height:9px;margin-top:14px}.language-progress-meta,.player-level-meta{color:var(--text-muted);justify-content:space-between;gap:10px;margin-top:8px;font-size:10px;display:flex}.requirements-list{color:var(--text-muted);gap:3px;margin-top:12px;font-size:10px;list-style:none;display:grid}.player-level-heading h2{color:var(--secondary)}.unlock-preview{border-top:1px solid var(--border);color:var(--text-muted);align-items:center;gap:5px;margin-top:13px;padding-top:11px;font-size:10px;display:flex}.unlock-preview svg{color:var(--secondary)}.unlock-chips{flex-wrap:wrap;gap:5px;margin-top:9px;display:flex}.unlock-chips span{color:var(--secondary);background:var(--secondary-soft);border-radius:8px;padding:5px 7px;font-size:9px;font-weight:800}.weekly-heading h2{font-size:20px}.weekly-days{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;margin-top:15px;display:grid}.weekly-day{color:var(--text-muted);justify-items:center;gap:6px;font-size:9px;font-weight:800;display:grid}.weekly-day i{border:1px solid var(--border);width:30px;height:30px;color:var(--text-muted);background:var(--surface-subtle);border-radius:10px;place-items:center;font-size:14px;font-style:normal;display:grid}.weekly-day.is-completed i{border-color:var(--primary)}@supports (color:color-mix(in lab,red,red)){.weekly-day.is-completed i{border-color:color-mix(in srgb,var(--primary) 38%,var(--border))}}.weekly-day.is-completed i{color:var(--primary);background:var(--primary-soft)}.weekly-day.is-protected i{border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.weekly-day.is-protected i{border-color:color-mix(in srgb,var(--accent) 42%,var(--border))}}.weekly-day.is-protected i{color:var(--accent);background:var(--accent-soft)}.weekly-day.is-today-incomplete i{color:var(--primary);border-style:dashed}.weekly-day.is-unknown i{opacity:.55}.weekly-legend{color:var(--text-muted);flex-wrap:wrap;gap:10px;margin-top:13px;font-size:9px;display:flex}.weekly-legend span{align-items:center;gap:4px;display:inline-flex}.weekly-legend i{background:var(--primary);border-radius:3px;width:8px;height:8px;display:inline-block}.weekly-legend .legend-protected{background:var(--accent)}.world-progress-list{gap:8px;margin-bottom:19px;display:grid}.world-progress-row{border:1px solid var(--border);background:var(--surface);border-radius:15px;grid-template-columns:minmax(0,1fr) minmax(90px,.7fr) auto;align-items:center;gap:12px;padding:13px;display:grid}.world-progress-row.is-complete{border-color:var(--success)}@supports (color:color-mix(in lab,red,red)){.world-progress-row.is-complete{border-color:color-mix(in srgb,var(--success) 32%,var(--border))}}.world-progress-copy{min-width:0}.world-progress-copy small,.world-progress-copy strong{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.world-progress-copy strong{margin-top:3px;font-size:13px}.world-progress-copy small{color:var(--text-muted);margin-top:3px;font-size:10px}.world-progress-bar .progress-bar{height:7px}.world-progress-row>span:last-child{min-width:31px;color:var(--text-muted);text-align:right;font-size:10px;font-weight:850}.achievement-category{color:var(--text-muted);letter-spacing:.09em;text-transform:uppercase;margin-bottom:4px;font-size:8px;font-weight:800;display:block}.achievement.is-progressing{border-color:var(--secondary)}@supports (color:color-mix(in lab,red,red)){.achievement.is-progressing{border-color:color-mix(in srgb,var(--secondary) 32%,var(--border))}}.achievement>small{color:var(--secondary);margin-top:7px;font-size:10px;font-weight:850;display:block}.progression-callout{border:1px solid var(--border);background:var(--surface-subtle);border-radius:14px;align-items:center;gap:10px;margin:-5px 0 12px;padding:10px 12px;display:flex}.session-combo{color:var(--secondary);font-weight:900}.session-combo.combo-lumo-fever,.session-combo.combo-on-fire,.session-combo.combo-perfect-spark{color:var(--primary)}.progression-callout>span{width:31px;height:31px;color:var(--primary);background:var(--primary-soft);border-radius:10px;place-items:center;font-size:17px;display:grid}.progression-callout p,.progression-callout strong{display:block}.progression-callout strong{font-size:12px}.progression-callout p{color:var(--text-muted);margin-top:2px;font-size:10px}.level-up-callout{border-color:var(--secondary)}@supports (color:color-mix(in lab,red,red)){.level-up-callout{border-color:color-mix(in srgb,var(--secondary) 38%,var(--border))}}.level-up-callout{background:var(--secondary-soft)}.level-up-callout>span{color:var(--secondary);background:var(--secondary)}@supports (color:color-mix(in lab,red,red)){.level-up-callout>span{background:color-mix(in srgb,var(--secondary) 18%,var(--surface))}}.world-complete-callout{border-color:var(--success)}@supports (color:color-mix(in lab,red,red)){.world-complete-callout{border-color:color-mix(in srgb,var(--success) 38%,var(--border))}}.world-complete-callout{background:var(--success-soft)}.world-complete-callout>span{color:var(--success);background:var(--success)}@supports (color:color-mix(in lab,red,red)){.world-complete-callout>span{background:color-mix(in srgb,var(--success) 16%,var(--surface))}}.completion-missions{flex-wrap:wrap;justify-content:center;gap:5px;margin:-2px 0 14px;display:flex}.completion-missions span,.completion-missions strong{color:var(--text-muted);background:var(--surface-subtle);border-radius:8px;padding:5px 7px;font-size:9px}.completion-missions strong{color:var(--primary);background:var(--primary-soft)}.checkpoint-fail-callout{border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.checkpoint-fail-callout{border-color:color-mix(in srgb,var(--accent) 38%,var(--border))}}.checkpoint-fail-callout{background:var(--accent-soft)}.completion-action-row{gap:8px;width:100%;display:grid}.completion-secondary-action{min-height:44px;color:var(--text-muted);cursor:pointer;background:0 0;border:0;font-size:12px;font-weight:850}.completion-shield-note{color:var(--accent);margin:-3px 0 14px;font-size:10px;font-weight:800}@media (max-width:759px){.progress-ribbon{gap:7px;margin-bottom:10px}.language-progress-card,.player-level-card,.progress-ribbon>div,.weekly-card{border-radius:15px;padding:12px}.progress-ribbon strong{font-size:18px}.progress-ribbon small{margin-bottom:7px;font-size:9px}.world-list{gap:9px}.world-card{border-radius:16px;padding:12px}.world-card-header{gap:7px;margin-bottom:10px}.world-card-header h3{font-size:18px}.world-card-header p{font-size:10px}.unit-list{gap:5px;margin-top:9px}.unit-row{grid-template-columns:29px minmax(0,1fr) auto;gap:7px;padding:7px}.unit-node{border-radius:9px;width:29px;height:29px}.unit-row strong{font-size:11px}.unit-row small{font-size:9px}.checkpoint-row{margin-top:8px;padding:8px}.language-progress-meta,.player-level-meta,.requirements-list{font-size:9px}.world-progress-row{grid-template-columns:minmax(0,1fr) 70px auto;gap:8px;padding:10px}.world-progress-copy strong{font-size:11px}.world-progress-copy small{font-size:9px}.world-progress-row>span:last-child{min-width:27px}.weekly-days{gap:3px}.weekly-day i{border-radius:8px;width:26px;height:26px}.achievement-category{font-size:7px}.progression-callout{margin-top:-3px;padding:8px 10px}}:root{--motion-instant:80ms;--motion-tap:.12s;--motion-select:.18s;--motion-feedback:.22s;--motion-screen:.28s;--motion-reward:.52s;--ease-lumo:cubic-bezier(.22,1,.36,1);--ease-lumo-spring:cubic-bezier(.22,1.25,.36,1);--ease-lumo-calm:cubic-bezier(.4,0,.2,1);--press-scale:.985;--touch-target:44px}html[data-reduced-motion=true] *,html[data-reduced-motion=true] :after,html[data-reduced-motion=true] :before{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}button,input{accent-color:var(--primary)}button:focus-visible,input:focus-visible{outline:3px solid var(--focus-ring)}@supports (color:color-mix(in lab,red,red)){button:focus-visible,input:focus-visible{outline:3px solid color-mix(in srgb,var(--focus-ring) 78%,transparent)}}button:focus-visible,input:focus-visible{outline-offset:3px}.answer-button,.appearance-control button,.bottom-nav button,.choice-card,.icon-button,.lesson-close,.match-tile,.practice-card,.primary-button,.setting-row-action,.speech-button,.toggle,.word-chip{transition:transform var(--motion-tap) var(--ease-lumo),border-color var(--motion-select) var(--ease-lumo-calm),background-color var(--motion-select) var(--ease-lumo-calm),color var(--motion-select) var(--ease-lumo-calm),box-shadow var(--motion-select) var(--ease-lumo),filter var(--motion-select) var(--ease-lumo)}.answer-button:hover,.choice-card:hover,.match-tile:hover,.practice-card:hover,.primary-button:hover,.setting-row-action:hover,.word-chip:hover{transform:translateY(-1px)}.answer-button:active,.appearance-control button:active,.bottom-nav button:active,.choice-card:active,.icon-button:active,.lesson-close:active,.match-tile:active,.practice-card:active,.primary-button:active,.setting-row-action:active,.speech-button:active,.word-chip:active{transform:translateY(2px) scale(var(--press-scale))}.answer-button:disabled,.choice-card:disabled,.path-item:disabled,.primary-button:disabled,.speech-button:disabled,.toggle:disabled{filter:saturate(.6);transform:none}.primary-button.is-busy{color:#0000;pointer-events:none;position:relative}.primary-button.is-busy:after{content:"";border:2px solid;width:17px;height:17px;position:absolute;inset:50% auto auto 50%}@supports (color:color-mix(in lab,red,red)){.primary-button.is-busy:after{border:2px solid color-mix(in srgb,currentColor 26%,transparent)}}.primary-button.is-busy:after{border-top-color:var(--primary-foreground);border-radius:50%;animation:lumo-spinner .7s linear infinite;transform:translate(-50%,-50%)}.loading-copy{text-align:center;gap:7px;display:grid}.loading-copy strong{letter-spacing:-.01em;font-size:15px}.loading-copy p{font-size:12px}@keyframes lumo-spinner{to{transform:translate(-50%,-50%)rotate(1turn)}}.lesson-content-enter,.screen-transition,.view-transition{animation-duration:var(--motion-screen);animation-timing-function:var(--ease-lumo)}.feedback-panel{animation-duration:var(--motion-feedback);animation-timing-function:var(--ease-lumo-spring)}.reward-grid{--reward-stagger:60ms}.reward-card{animation:reward-card-in var(--motion-reward) var(--ease-lumo-spring) both}.reward-card-primary{animation-delay:40ms}.reward-card-secondary{animation-delay:calc(40ms + var(--reward-stagger))}.reward-card-tertiary{animation-delay:calc(40ms + var(--reward-stagger) * 2)}@keyframes reward-card-in{0%{opacity:0;transform:translateY(8px)scale(.97)}60%{opacity:1;transform:translateY(-2px)scale(1.015)}to{opacity:1;transform:translateY(0)scale(1)}}.lesson-top .progress-bar{box-shadow:inset 0 1px 0 var(--surface);position:relative}@supports (color:color-mix(in lab,red,red)){.lesson-top .progress-bar{box-shadow:inset 0 1px 0 color-mix(in srgb,var(--surface) 60%,transparent)}}.lesson-stepper{flex:1;align-items:center;gap:7px;min-width:0;display:flex}.lesson-step{cursor:pointer;background:0 0;border:0;flex:1;place-items:center;min-width:0;min-height:32px;padding:10px 0;display:grid}.lesson-step-track{background:var(--surface-subtle);width:100%;height:8px;transition:transform var(--motion-tap) var(--ease-lumo),background-color var(--motion-select) var(--ease-lumo-calm),box-shadow var(--motion-select) var(--ease-lumo);border-radius:99px;display:block}.lesson-step.is-visited .lesson-step-track{background:var(--primary)}.lesson-step.is-current .lesson-step-track{background:linear-gradient(90deg,var(--info),var(--info))}@supports (color:color-mix(in lab,red,red)){.lesson-step.is-current .lesson-step-track{background:linear-gradient(90deg,color-mix(in srgb,var(--info) 82%,var(--foreground)),var(--info))}}.lesson-step.is-current .lesson-step-track{box-shadow:0 0 0 3px var(--info)}@supports (color:color-mix(in lab,red,red)){.lesson-step.is-current .lesson-step-track{box-shadow:0 0 0 3px color-mix(in srgb,var(--info) 14%,transparent)}}.lesson-step.is-success .lesson-step-track{background:var(--success);box-shadow:0 0 0 3px var(--success)}@supports (color:color-mix(in lab,red,red)){.lesson-step.is-success .lesson-step-track{box-shadow:0 0 0 3px color-mix(in srgb,var(--success) 14%,transparent)}}.lesson-step:not(:disabled):hover .lesson-step-track{box-shadow:0 0 0 3px var(--primary);transform:translateY(-1px)}@supports (color:color-mix(in lab,red,red)){.lesson-step:not(:disabled):hover .lesson-step-track{box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 12%,transparent)}}.lesson-step:disabled{cursor:default}.lesson-progress-accessible{clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.progress-fill{transform-origin:0;transition:width var(--motion-screen) var(--ease-lumo)}.answer-button.is-selected,.choice-card.is-selected,.match-tile.is-selected{box-shadow:0 0 0 3px var(--info)}@supports (color:color-mix(in lab,red,red)){.answer-button.is-selected,.choice-card.is-selected,.match-tile.is-selected{box-shadow:0 0 0 3px color-mix(in srgb,var(--info) 12%,transparent)}}.answer-button.is-selected,.choice-card.is-selected,.match-tile.is-selected{animation:selection-pop var(--motion-select) var(--ease-lumo-spring) both}.answer-button.is-correct,.match-tile.is-matched{animation:success-pop var(--motion-feedback) var(--ease-lumo-spring) both}.feedback-panel.is-correct{animation:success-panel-in var(--motion-feedback) var(--ease-lumo-spring) both}.feedback-panel.is-correction{animation:correction-panel-in var(--motion-feedback) var(--ease-lumo) both}@keyframes selection-pop{0%{transform:scale(.985)}65%{transform:scale(1.012)}to{transform:scale(1)}}@keyframes success-panel-in{0%{opacity:0;transform:translateY(5px)scale(.97)}55%{opacity:1;transform:translateY(-2px)scale(1.012)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes correction-panel-in{0%{opacity:0;transform:translate(-4px)}45%{opacity:1;transform:translate(3px)}to{opacity:1;transform:translate(0)}}.path-item.is-active .path-node{animation:active-node-breathe 2.8s ease-in-out infinite}@keyframes active-node-breathe{0%,to{box-shadow:0 6px 0 var(--primary-hover),0 0 0 6px var(--primary-soft)}50%{box-shadow:0 6px 0 var(--primary-hover),0 0 0 9px color-mix(in srgb,var(--primary) 7%,transparent)}}.offline-indicator span{animation:offline-pulse 2.2s ease-in-out infinite}@keyframes offline-pulse{0%,to{opacity:.55}50%{opacity:1}}.bottom-nav button{min-height:var(--touch-target)}.reset-modal-backdrop{z-index:80;background:var(--foreground);place-items:center;padding:18px;display:grid;position:fixed;inset:0}@supports (color:color-mix(in lab,red,red)){.reset-modal-backdrop{background:color-mix(in srgb,var(--foreground) 34%,transparent)}}.reset-modal-backdrop{-webkit-backdrop-filter:blur(12px)saturate(.92);backdrop-filter:blur(12px)saturate(.92)}.reset-modal{border:1px solid var(--primary);width:min(100%,360px);padding:20px}@supports (color:color-mix(in lab,red,red)){.reset-modal{border:1px solid color-mix(in srgb,var(--primary) 22%,var(--border))}}.reset-modal{background:var(--surface);box-shadow:0 18px 44px var(--foreground),0 5px 0 var(--foreground);border-radius:22px}@supports (color:color-mix(in lab,red,red)){.reset-modal{box-shadow:0 18px 44px color-mix(in srgb,var(--foreground) 22%,transparent),0 5px 0 color-mix(in srgb,var(--foreground) 12%,transparent)}}.reset-modal-heading{align-items:flex-start;gap:11px;display:flex}.reset-modal-icon{width:38px;height:38px;color:var(--danger);background:var(--danger-soft);border-radius:13px;flex:none;place-items:center;display:grid}.reset-modal-kicker{color:var(--danger);letter-spacing:.12em;text-transform:uppercase;font-size:9px;font-weight:950;display:block}.reset-modal h2{color:var(--foreground);margin-top:3px;font-size:21px;line-height:1.05}.reset-modal>p{color:var(--text-muted);margin:14px 2px 0;font-size:12px;line-height:1.45}.reset-modal-actions{grid-template-columns:1fr 1fr;gap:8px;margin-top:19px;display:grid}.reset-modal-button{border:1px solid var(--border);cursor:pointer;min-height:43px;transition:transform var(--motion-tap) var(--ease-lumo),background-color var(--motion-select) var(--ease-lumo-calm),border-color var(--motion-select) var(--ease-lumo-calm),filter var(--motion-select) var(--ease-lumo);border-radius:13px;padding:9px 10px;font-size:11px;font-weight:950;line-height:1.1}.reset-modal-button:hover{transform:translateY(-1px)}.reset-modal-button:active{transform:translateY(2px) scale(var(--press-scale))}.reset-modal-button:disabled{cursor:default;filter:saturate(.6)}.reset-modal-cancel{color:var(--foreground);background:var(--surface-subtle)}.reset-modal-confirm{border-color:var(--danger)}@supports (color:color-mix(in lab,red,red)){.reset-modal-confirm{border-color:color-mix(in srgb,var(--danger) 64%,var(--border))}}.reset-modal-confirm{color:var(--danger-foreground);background:var(--danger);box-shadow:0 3px 0 var(--danger)}@supports (color:color-mix(in lab,red,red)){.reset-modal-confirm{box-shadow:0 3px 0 color-mix(in srgb,var(--danger) 72%,var(--foreground))}}.install-offer-backdrop{z-index:100;padding:14px max(14px,env(safe-area-inset-right)) max(14px,env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-left));background:var(--foreground);justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}@supports (color:color-mix(in lab,red,red)){.install-offer-backdrop{background:color-mix(in srgb,var(--foreground) 32%,transparent)}}.install-offer-backdrop{-webkit-backdrop-filter:blur(14px)saturate(.92);backdrop-filter:blur(14px)saturate(.92);animation:install-offer-fade .18s both}.install-offer-sheet{width:min(100%,560px);padding:20px 18px max(18px,env(safe-area-inset-bottom));border:1px solid var(--primary)}@supports (color:color-mix(in lab,red,red)){.install-offer-sheet{border:1px solid color-mix(in srgb,var(--primary) 30%,var(--border))}}.install-offer-sheet{color:var(--foreground);background:var(--surface);border-radius:28px}@supports (color:color-mix(in lab,red,red)){.install-offer-sheet{background:color-mix(in srgb,var(--surface) 96%,transparent)}}.install-offer-sheet{box-shadow:0 24px 60px var(--foreground),0 5px 0 var(--foreground)}@supports (color:color-mix(in lab,red,red)){.install-offer-sheet{box-shadow:0 24px 60px color-mix(in srgb,var(--foreground) 26%,transparent),0 5px 0 color-mix(in srgb,var(--foreground) 11%,transparent)}}.install-offer-sheet{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);animation:install-offer-rise .26s cubic-bezier(.22,1,.36,1) both}.install-offer-heading{grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:11px;display:grid}.install-offer-icon{width:40px;height:40px;color:var(--primary-foreground);background:var(--primary);box-shadow:0 3px 0 var(--primary-hover),0 0 0 5px var(--primary-soft);border-radius:14px;place-items:center;display:grid}.install-offer-kicker{color:var(--primary);letter-spacing:.14em;text-transform:uppercase;font-size:10px;font-weight:950;display:block}.install-offer-heading h2{margin-top:4px;font-size:25px;line-height:1.03}.install-offer-close{border:1px solid var(--border);width:36px;height:36px;color:var(--text-muted);background:var(--surface-subtle);cursor:pointer;border-radius:12px;place-items:center;display:grid}.install-offer-description{color:var(--text-muted);margin:14px 2px 0 51px;font-size:13px;line-height:1.4}.install-offer-benefits{flex-wrap:wrap;gap:7px;margin:17px 0 0 51px;display:flex}.install-offer-benefits span{border:1px solid var(--primary);padding:7px 9px}@supports (color:color-mix(in lab,red,red)){.install-offer-benefits span{border:1px solid color-mix(in srgb,var(--primary) 22%,var(--border))}}.install-offer-benefits span{color:var(--secondary);background:var(--primary-soft);border-radius:999px;font-size:10px;font-weight:900}.install-offer-steps{gap:8px;margin:17px 0 0;padding:0;list-style:none;display:grid}.install-offer-steps li{border:1px solid var(--border);background:var(--surface-subtle);border-radius:14px;align-items:center;gap:10px;padding:9px 10px;display:flex}.install-offer-menu-icon,.install-offer-steps li>span{width:30px;height:30px;color:var(--primary);background:var(--primary-soft);border-radius:10px;flex:none;place-items:center;display:grid}.install-offer-steps small,.install-offer-steps strong{display:block}.install-offer-steps strong{font-size:12px}.install-offer-steps small{color:var(--text-muted);margin-top:2px;font-size:10px}.install-offer-menu-tip{border:1px solid var(--primary);align-items:center;gap:10px;margin-top:17px;padding:12px;display:flex}@supports (color:color-mix(in lab,red,red)){.install-offer-menu-tip{border:1px solid color-mix(in srgb,var(--primary) 22%,var(--border))}}.install-offer-menu-tip{background:var(--primary-soft);border-radius:15px}.install-offer-menu-tip p{color:var(--text-muted);font-size:12px;line-height:1.35}.install-offer-menu-tip strong{color:var(--foreground)}.install-offer-actions{gap:8px;margin-top:19px;display:grid}.install-offer-primary,.install-offer-secondary{cursor:pointer;min-height:47px;transition:transform var(--motion-tap) var(--ease-lumo),filter var(--motion-select) var(--ease-lumo);border-radius:15px;font-size:12px;font-weight:950}.install-offer-primary{border:1px solid var(--primary-hover);color:var(--primary-foreground);background:var(--primary);box-shadow:0 3px 0 var(--primary-hover)}.install-offer-secondary{color:var(--text-muted);background:0 0;border:1px solid #0000}.install-offer-primary:hover,.install-offer-secondary:hover{filter:brightness(1.04)}.install-offer-primary:active,.install-offer-secondary:active{transform:translateY(2px) scale(var(--press-scale))}@keyframes install-offer-fade{0%{opacity:0}to{opacity:1}}@keyframes install-offer-rise{0%{opacity:0;transform:translateY(18px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}@media (max-width:390px){.install-offer-sheet{border-radius:24px;padding-inline:14px}.install-offer-heading h2{font-size:22px}.install-offer-benefits,.install-offer-description{margin-left:0}}@media (prefers-reduced-motion:reduce){.install-offer-backdrop,.install-offer-sheet{animation:none}}html[data-reduced-motion=true] .install-offer-backdrop,html[data-reduced-motion=true] .install-offer-sheet{animation:none}@media (min-width:760px){.app-frame{padding-inline:22px}.app-shell{border-inline:1px solid var(--border);min-height:calc(100svh - 24px)}@supports (color:color-mix(in lab,red,red)){.app-shell{border-inline:1px solid color-mix(in srgb,var(--border) 35%,transparent)}}.app-shell{background:var(--background)}@supports (color:color-mix(in lab,red,red)){.app-shell{background:color-mix(in srgb,var(--background) 90%,var(--surface))}}}@media (max-width:390px){.app-shell{padding-inline:12px}.hero-panel{padding:14px}.hero-panel .mascot{max-width:66px;max-height:66px}.stat-strip{margin-inline:-1px;padding-inline:6px}.stat-strip>div{padding-inline:7px}.daily-card-header{flex-wrap:wrap}.daily-card-header .pill{margin-left:auto}}@media (max-width:759px){.setting-row,.settings-list{width:100%;min-width:0}.bottom-nav{width:auto;left:0;right:0}.appearance-row{flex-direction:column;align-items:stretch}.appearance-row .appearance-control,.appearance-row>div:first-child{width:100%}.appearance-control button{flex:1}}@media (max-width:390px),(prefers-reduced-motion:reduce){.offline-indicator span,.path-item.is-active .path-node,.reward-card{animation:none!important}}.hero-panel .mascot{max-width:296px;max-height:296px}.splash-screen .loading-orbit-splash{width:320px;height:320px}.splash-screen .loading-orbit-splash .mascot{width:308px!important;height:308px!important}.onboarding-welcome{gap:14px;margin-bottom:26px;display:grid}.onboarding-welcome-header{justify-content:center;display:flex}.onboarding-welcome-header .speech-bubble{text-align:center;border-radius:20px;max-width:360px}.onboarding-welcome-header .speech-bubble:after{border:0;border-right:1px solid var(--border);border-bottom:1px solid var(--border);margin-left:-8px;bottom:-8px;left:50%;transform:rotate(45deg)}.onboarding-welcome-mascot{place-items:center;display:grid}.onboarding-welcome-mascot .mascot{width:220px!important;height:220px!important}@media (min-width:760px) and (max-width:1099px){.hero-panel{grid-template-columns:minmax(0,1fr) 250px;min-height:300px}.hero-panel .mascot{max-width:250px;max-height:250px}}@media (min-width:1100px){.hero-panel{grid-template-columns:minmax(0,1fr) 310px;min-height:350px}}@media (max-width:759px){.hero-panel .mascot{max-width:132px;max-height:132px}.onboarding-welcome{gap:10px;margin-bottom:18px}.onboarding-welcome-header .speech-bubble{border-radius:15px;max-width:min(100%,340px);padding:12px 14px;font-size:13px}.onboarding-welcome-mascot .mascot{width:190px!important;height:190px!important}}@media (max-width:390px){.hero-panel .mascot{max-width:132px;max-height:132px}}@media (max-width:759px){:root{--action-bar-height:64px}body{overflow-x:hidden}.app-shell.is-completion,.app-shell.is-onboarding,.is-onboarding-frame,.splash-screen{height:100svh;min-height:100svh;overflow:hidden}.app-shell.is-completion,.app-shell.is-onboarding{padding-bottom:0}.app-shell.is-view-profile{padding-bottom:calc(var(--action-bar-height) + 20px + env(safe-area-inset-bottom))}.app-shell.is-view-profile .section-title{margin-top:14px;margin-bottom:8px}.app-shell.is-view-profile .profile-card{gap:9px;margin-bottom:8px;padding:9px 12px}.app-shell.is-view-profile .profile-card .mascot{margin-right:0;transform:none;width:72px!important;height:72px!important}.app-shell.is-view-profile .profile-card h1{font-size:20px}.app-shell.is-view-profile .profile-card p{font-size:10px}.app-shell.is-view-profile .settings-list{gap:5px}.app-shell.is-view-profile .setting-row{gap:8px;min-height:48px;padding:8px 10px}.app-shell.is-view-profile .setting-row h3{font-size:12px}.app-shell.is-view-profile .setting-row p{margin-top:2px;font-size:9px}.app-shell.is-view-profile .profile-reset{margin-top:12px!important}.app-shell.is-lesson{overscroll-behavior-y:contain;height:100svh;min-height:100svh;overflow-y:auto}.completion-footer,.lesson-footer,.onboarding-footer{position:sticky;bottom:0}.completion{min-height:calc(100svh - max(12px, env(safe-area-inset-top)));padding-top:clamp(16px,5vh,40px)}.completion-install-card{margin-top:-7px}.completion-footer{width:calc(100% + 28px);padding:10px 14px calc(8px + env(safe-area-inset-bottom));border-top:1px solid var(--navigation-border);background:linear-gradient(180deg,var(--navigation-background),var(--navigation-background) 26%);margin:auto -14px 0}@supports (color:color-mix(in lab,red,red)){.completion-footer{background:linear-gradient(180deg,color-mix(in srgb,var(--navigation-background) 72%,transparent),var(--navigation-background) 26%)}}.completion-footer{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.completion .primary-button{margin-top:0}.onboarding-footer{padding-bottom:calc(14px + env(safe-area-inset-bottom));margin:auto -14px 0}.app-shell.is-onboarding>.onboarding>.onboarding-header{padding-top:4px;padding-bottom:4px}.is-onboarding-frame{box-sizing:border-box;width:min(100%,600px);padding:max(20px,env(safe-area-inset-top)) 14px max(20px,env(safe-area-inset-bottom))}.is-onboarding-frame .onboarding-loading-header{gap:10px;width:100%;min-height:40px;padding-top:0}.is-onboarding-frame .onboarding-loading-header .lumo-mark{flex:none}.is-onboarding-frame .onboarding-loading-header .progress-bar{flex:1;height:7px}.is-onboarding-frame .onboarding-loading-state{gap:18px;min-height:0;padding-bottom:6vh}.is-onboarding-frame .onboarding-loading-state .loading-orbit{width:104px;height:104px}.completion-footer,.lesson-footer{padding-bottom:calc(14px + env(safe-area-inset-bottom))}}.speech-controls{flex:none;align-items:center;gap:6px;display:inline-flex}.speech-button-secondary{width:38px;height:38px;color:var(--info);background:var(--surface);border:1px solid var(--info)}@supports (color:color-mix(in lab,red,red)){.speech-button-secondary{border:1px solid color-mix(in srgb,var(--info) 42%,var(--border))}}.speech-button-secondary{box-shadow:none;font-size:12px;font-weight:900}.speech-unavailable-note{max-width:130px;color:var(--text-muted);font-size:10px;line-height:1.2}.speech-settings{border:1px solid var(--border);background:var(--surface);border-radius:14px;gap:12px;margin:-2px 0 2px;padding:12px;display:grid}@supports (color:color-mix(in lab,red,red)){.speech-settings{background:color-mix(in srgb,var(--surface) 78%,var(--primary-soft))}}.speech-settings-status{justify-content:space-between;align-items:center;gap:10px;min-width:0;display:flex}.speech-settings-status>span{gap:2px;min-width:0;display:grid}.speech-settings-status strong{color:var(--foreground);font-size:11px}.speech-settings-status small{color:var(--text-muted);font-size:9px}.speech-retry{border:1px solid var(--border);background:var(--surface);color:var(--info);border-radius:9px;flex:none;padding:6px 8px;font-size:9px;font-weight:800}.speech-progress{width:100%;height:6px;accent-color:var(--primary)}.speech-setting-group{gap:7px;display:grid}.speech-setting-label{color:var(--text-muted);letter-spacing:.04em;text-transform:uppercase;font-size:10px;font-weight:800}.speech-voice-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;display:grid}.speech-speed-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.speech-choice{border:1px solid var(--border);background:var(--surface);min-height:34px;color:var(--foreground);border-radius:9px;padding:6px 5px;font-size:10px;font-weight:800}.speech-choice.is-selected{border-color:var(--primary);background:var(--primary-soft);color:var(--primary-hover);box-shadow:inset 0 0 0 1px var(--primary)}@media (display-mode:fullscreen),(display-mode:standalone){.app-shell,.app-shell.is-lesson,.is-onboarding-frame{padding-top:max(12px,env(safe-area-inset-top,0px))}.completion,.lesson-shell{min-height:100svh}}.onboarding-stepper{flex:1;align-items:center;gap:7px;min-width:0;display:flex}.onboarding-step{min-width:0;min-height:32px;color:var(--text-muted);cursor:pointer;background:0 0;border:0;flex:1;place-items:center;padding:10px 0;display:grid}.onboarding-step-track{background:var(--surface-subtle);width:100%;height:8px;transition:transform var(--motion-tap) var(--ease-lumo),background-color var(--motion-select) var(--ease-lumo-calm),box-shadow var(--motion-select) var(--ease-lumo);border-radius:99px;display:block}.onboarding-step.is-complete .onboarding-step-track{background:var(--primary)}.onboarding-step.is-current .onboarding-step-track{background:linear-gradient(90deg,var(--primary-hover),var(--primary));box-shadow:0 0 0 3px var(--primary)}@supports (color:color-mix(in lab,red,red)){.onboarding-step.is-current .onboarding-step-track{box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 14%,transparent)}}.onboarding-step:not(:disabled):hover .onboarding-step-track{box-shadow:0 0 0 3px var(--primary);transform:translateY(-1px)}@supports (color:color-mix(in lab,red,red)){.onboarding-step:not(:disabled):hover .onboarding-step-track{box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 12%,transparent)}}.onboarding-step:disabled{cursor:default}.choice-card{justify-content:flex-start}.choice-card>.choice-icon{flex:none}.choice-card>span:not(.choice-icon):not(.pill),.choice-card>strong{flex:1;min-width:0}.choice-card>.pill,.choice-card>svg{margin-left:auto}@media (max-width:759px){.lesson-stepper{gap:4px}.lesson-step{min-height:28px;padding:8px 0}.lesson-step-track{height:6px}.onboarding-stepper{gap:4px}.onboarding-step{min-height:28px;padding:8px 0}.onboarding-step-track{height:6px}}.lesson-word-card>.speech-card-content{min-width:0;color:inherit;font-size:inherit;white-space:normal;flex:1;align-items:center;gap:14px;display:flex;overflow:visible}.lesson-word-card>.speech-card-content>.lesson-word-emoji{color:inherit;white-space:normal;margin:0;font-size:38px;display:inline;overflow:visible}.lesson-word-card>.speech-card-content>.lesson-word-card-copy{white-space:normal;margin:0;display:block;overflow:visible}.lesson-word-card>.speech-card-content>.lesson-word-card-copy>span{color:var(--text-muted);white-space:normal;margin-top:0;font-size:13px;display:block;overflow:visible}.lesson-word-card>.speech-card-action{color:var(--info);font-size:inherit;white-space:normal;place-items:center;gap:2px;display:grid;overflow:visible}.lesson-word-card>.speech-card-action small{color:var(--text-muted);white-space:nowrap;margin-top:0;font-size:8px;display:block;overflow:visible}@media (max-width:759px){.lesson-kicker{letter-spacing:.09em;margin-bottom:7px;font-size:9px}.lesson-content h1{font-size:clamp(24px,7vw,30px);line-height:1.05}.lesson-prompt{margin-top:4px;font-size:12px;line-height:1.25}.lesson-word-card>.speech-card-content{gap:9px}.lesson-word-card>.speech-card-content>.lesson-word-emoji{font-size:29px}.lesson-word-card>.speech-card-content>.lesson-word-card-copy>span{text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:10px;overflow:hidden}.lesson-word-card>.speech-card-action{min-width:56px}.lesson-word-card>.speech-card-action small{font-size:7px}}@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}