@layer wa-native,wa-utilities;@layer wa-color-palette{:where(:root),.wa-palette-default{--wa-color-red-95:#fff0ef ;--wa-color-red-90:#ffdedc ;--wa-color-red-80:#ffb8b6 ;--wa-color-red-70:#fd8f90 ;--wa-color-red-60:#f3676c ;--wa-color-red-50:#dc3146 ;--wa-color-red-40:#b30532 ;--wa-color-red-30:#8a132c ;--wa-color-red-20:#631323 ;--wa-color-red-10:#3e0913 ;--wa-color-red-05:#2a040b ;--wa-color-red:var(--wa-color-red-50);--wa-color-red-key:50;--wa-color-orange-95:#fff0e6 ;--wa-color-orange-90:#ffdfca ;--wa-color-orange-80:#ffbb94 ;--wa-color-orange-70:#ff9266 ;--wa-color-orange-60:#f46a45 ;--wa-color-orange-50:#cd491c ;--wa-color-orange-40:#9f3501 ;--wa-color-orange-30:#802700 ;--wa-color-orange-20:#601b00 ;--wa-color-orange-10:#3c0d00 ;--wa-color-orange-05:#280600 ;--wa-color-orange:var(--wa-color-orange-60);--wa-color-orange-key:60;--wa-color-yellow-95:#fef3cd ;--wa-color-yellow-90:#ffe495 ;--wa-color-yellow-80:#fac22b ;--wa-color-yellow-70:#ef9d00 ;--wa-color-yellow-60:#da7e00 ;--wa-color-yellow-50:#b45f04 ;--wa-color-yellow-40:#8c4602 ;--wa-color-yellow-30:#6f3601 ;--wa-color-yellow-20:#532600 ;--wa-color-yellow-10:#331600 ;--wa-color-yellow-05:#220c00 ;--wa-color-yellow:var(--wa-color-yellow-80);--wa-color-yellow-key:80;--wa-color-green-95:#e3f9e3 ;--wa-color-green-90:#c2f2c1 ;--wa-color-green-80:#93da98 ;--wa-color-green-70:#5dc36f ;--wa-color-green-60:#00ac49 ;--wa-color-green-50:#00883c ;--wa-color-green-40:#036730 ;--wa-color-green-30:#0a5027 ;--wa-color-green-20:#0a3a1d ;--wa-color-green-10:#052310 ;--wa-color-green-05:#031608 ;--wa-color-green:var(--wa-color-green-60);--wa-color-green-key:60;--wa-color-cyan-95:#e3f6fb ;--wa-color-cyan-90:#c5ecf7 ;--wa-color-cyan-80:#7fd6ec ;--wa-color-cyan-70:#2fbedc ;--wa-color-cyan-60:#00a3c0 ;--wa-color-cyan-50:#078098 ;--wa-color-cyan-40:#026274 ;--wa-color-cyan-30:#014c5b ;--wa-color-cyan-20:#003844 ;--wa-color-cyan-10:#002129 ;--wa-color-cyan-05:#00151b ;--wa-color-cyan:var(--wa-color-cyan-70);--wa-color-cyan-key:70;--wa-color-blue-95:#e8f3ff ;--wa-color-blue-90:#d1e8ff ;--wa-color-blue-80:#9fceff ;--wa-color-blue-70:#6eb3ff ;--wa-color-blue-60:#3e96ff ;--wa-color-blue-50:#0071ec ;--wa-color-blue-40:#0053c0 ;--wa-color-blue-30:#003f9c ;--wa-color-blue-20:#002d77 ;--wa-color-blue-10:#001a4e ;--wa-color-blue-05:#000f35 ;--wa-color-blue:var(--wa-color-blue-50);--wa-color-blue-key:50;--wa-color-indigo-95:#f0f2ff ;--wa-color-indigo-90:#dfe5ff ;--wa-color-indigo-80:#bcc7ff ;--wa-color-indigo-70:#9da9ff ;--wa-color-indigo-60:#808aff ;--wa-color-indigo-50:#6163f2 ;--wa-color-indigo-40:#4945cb ;--wa-color-indigo-30:#3933a7 ;--wa-color-indigo-20:#292381 ;--wa-color-indigo-10:#181255 ;--wa-color-indigo-05:#0d0a3a ;--wa-color-indigo:var(--wa-color-indigo-50);--wa-color-indigo-key:50;--wa-color-purple-95:#f7f0ff ;--wa-color-purple-90:#eedfff ;--wa-color-purple-80:#ddbdff ;--wa-color-purple-70:#ca99ff ;--wa-color-purple-60:#b678f5 ;--wa-color-purple-50:#9951db ;--wa-color-purple-40:#7936b3 ;--wa-color-purple-30:#612692 ;--wa-color-purple-20:#491870 ;--wa-color-purple-10:#2d0b48 ;--wa-color-purple-05:#1e0532 ;--wa-color-purple:var(--wa-color-purple-50);--wa-color-purple-key:50;--wa-color-pink-95:#feeff9 ;--wa-color-pink-90:#feddf0 ;--wa-color-pink-80:#fcb5d8 ;--wa-color-pink-70:#f78dbf ;--wa-color-pink-60:#e66ba3 ;--wa-color-pink-50:#c84382 ;--wa-color-pink-40:#9e2a6c ;--wa-color-pink-30:#7d1e58 ;--wa-color-pink-20:#5e1342 ;--wa-color-pink-10:#3c0828 ;--wa-color-pink-05:#28041a ;--wa-color-pink:var(--wa-color-pink-50);--wa-color-pink-key:50;--wa-color-gray-95:#f1f2f3 ;--wa-color-gray-90:#e4e5e9 ;--wa-color-gray-80:#c7c9d0 ;--wa-color-gray-70:#abaeb9 ;--wa-color-gray-60:#9194a2 ;--wa-color-gray-50:#717584 ;--wa-color-gray-40:#545868 ;--wa-color-gray-30:#424554 ;--wa-color-gray-20:#2f323f ;--wa-color-gray-10:#1b1d26 ;--wa-color-gray-05:#101219 ;--wa-color-gray:var(--wa-color-gray-40);--wa-color-gray-key:40}}@layer wa-color-variant{:where(:root),.wa-brand-blue{--wa-color-brand-95:var(--wa-color-blue-95);--wa-color-brand-90:var(--wa-color-blue-90);--wa-color-brand-80:var(--wa-color-blue-80);--wa-color-brand-70:var(--wa-color-blue-70);--wa-color-brand-60:var(--wa-color-blue-60);--wa-color-brand-50:var(--wa-color-blue-50);--wa-color-brand-40:var(--wa-color-blue-40);--wa-color-brand-30:var(--wa-color-blue-30);--wa-color-brand-20:var(--wa-color-blue-20);--wa-color-brand-10:var(--wa-color-blue-10);--wa-color-brand-05:var(--wa-color-blue-05);--wa-color-brand:var(--wa-color-blue);--wa-color-brand-on:var(--wa-color-blue-on)}.wa-brand-red{--wa-color-brand-95:var(--wa-color-red-95);--wa-color-brand-90:var(--wa-color-red-90);--wa-color-brand-80:var(--wa-color-red-80);--wa-color-brand-70:var(--wa-color-red-70);--wa-color-brand-60:var(--wa-color-red-60);--wa-color-brand-50:var(--wa-color-red-50);--wa-color-brand-40:var(--wa-color-red-40);--wa-color-brand-30:var(--wa-color-red-30);--wa-color-brand-20:var(--wa-color-red-20);--wa-color-brand-10:var(--wa-color-red-10);--wa-color-brand-05:var(--wa-color-red-05);--wa-color-brand:var(--wa-color-red);--wa-color-brand-on:var(--wa-color-red-on)}.wa-brand-orange{--wa-color-brand-95:var(--wa-color-orange-95);--wa-color-brand-90:var(--wa-color-orange-90);--wa-color-brand-80:var(--wa-color-orange-80);--wa-color-brand-70:var(--wa-color-orange-70);--wa-color-brand-60:var(--wa-color-orange-60);--wa-color-brand-50:var(--wa-color-orange-50);--wa-color-brand-40:var(--wa-color-orange-40);--wa-color-brand-30:var(--wa-color-orange-30);--wa-color-brand-20:var(--wa-color-orange-20);--wa-color-brand-10:var(--wa-color-orange-10);--wa-color-brand-05:var(--wa-color-orange-05);--wa-color-brand:var(--wa-color-orange);--wa-color-brand-on:var(--wa-color-orange-on)}.wa-brand-yellow{--wa-color-brand-95:var(--wa-color-yellow-95);--wa-color-brand-90:var(--wa-color-yellow-90);--wa-color-brand-80:var(--wa-color-yellow-80);--wa-color-brand-70:var(--wa-color-yellow-70);--wa-color-brand-60:var(--wa-color-yellow-60);--wa-color-brand-50:var(--wa-color-yellow-50);--wa-color-brand-40:var(--wa-color-yellow-40);--wa-color-brand-30:var(--wa-color-yellow-30);--wa-color-brand-20:var(--wa-color-yellow-20);--wa-color-brand-10:var(--wa-color-yellow-10);--wa-color-brand-05:var(--wa-color-yellow-05);--wa-color-brand:var(--wa-color-yellow);--wa-color-brand-on:var(--wa-color-yellow-on)}.wa-brand-green{--wa-color-brand-95:var(--wa-color-green-95);--wa-color-brand-90:var(--wa-color-green-90);--wa-color-brand-80:var(--wa-color-green-80);--wa-color-brand-70:var(--wa-color-green-70);--wa-color-brand-60:var(--wa-color-green-60);--wa-color-brand-50:var(--wa-color-green-50);--wa-color-brand-40:var(--wa-color-green-40);--wa-color-brand-30:var(--wa-color-green-30);--wa-color-brand-20:var(--wa-color-green-20);--wa-color-brand-10:var(--wa-color-green-10);--wa-color-brand-05:var(--wa-color-green-05);--wa-color-brand:var(--wa-color-green);--wa-color-brand-on:var(--wa-color-green-on)}.wa-brand-cyan{--wa-color-brand-95:var(--wa-color-cyan-95);--wa-color-brand-90:var(--wa-color-cyan-90);--wa-color-brand-80:var(--wa-color-cyan-80);--wa-color-brand-70:var(--wa-color-cyan-70);--wa-color-brand-60:var(--wa-color-cyan-60);--wa-color-brand-50:var(--wa-color-cyan-50);--wa-color-brand-40:var(--wa-color-cyan-40);--wa-color-brand-30:var(--wa-color-cyan-30);--wa-color-brand-20:var(--wa-color-cyan-20);--wa-color-brand-10:var(--wa-color-cyan-10);--wa-color-brand-05:var(--wa-color-cyan-05);--wa-color-brand:var(--wa-color-cyan);--wa-color-brand-on:var(--wa-color-cyan-on)}.wa-brand-indigo{--wa-color-brand-95:var(--wa-color-indigo-95);--wa-color-brand-90:var(--wa-color-indigo-90);--wa-color-brand-80:var(--wa-color-indigo-80);--wa-color-brand-70:var(--wa-color-indigo-70);--wa-color-brand-60:var(--wa-color-indigo-60);--wa-color-brand-50:var(--wa-color-indigo-50);--wa-color-brand-40:var(--wa-color-indigo-40);--wa-color-brand-30:var(--wa-color-indigo-30);--wa-color-brand-20:var(--wa-color-indigo-20);--wa-color-brand-10:var(--wa-color-indigo-10);--wa-color-brand-05:var(--wa-color-indigo-05);--wa-color-brand:var(--wa-color-indigo);--wa-color-brand-on:var(--wa-color-indigo-on)}.wa-brand-purple{--wa-color-brand-95:var(--wa-color-purple-95);--wa-color-brand-90:var(--wa-color-purple-90);--wa-color-brand-80:var(--wa-color-purple-80);--wa-color-brand-70:var(--wa-color-purple-70);--wa-color-brand-60:var(--wa-color-purple-60);--wa-color-brand-50:var(--wa-color-purple-50);--wa-color-brand-40:var(--wa-color-purple-40);--wa-color-brand-30:var(--wa-color-purple-30);--wa-color-brand-20:var(--wa-color-purple-20);--wa-color-brand-10:var(--wa-color-purple-10);--wa-color-brand-05:var(--wa-color-purple-05);--wa-color-brand:var(--wa-color-purple);--wa-color-brand-on:var(--wa-color-purple-on)}.wa-brand-pink{--wa-color-brand-95:var(--wa-color-pink-95);--wa-color-brand-90:var(--wa-color-pink-90);--wa-color-brand-80:var(--wa-color-pink-80);--wa-color-brand-70:var(--wa-color-pink-70);--wa-color-brand-60:var(--wa-color-pink-60);--wa-color-brand-50:var(--wa-color-pink-50);--wa-color-brand-40:var(--wa-color-pink-40);--wa-color-brand-30:var(--wa-color-pink-30);--wa-color-brand-20:var(--wa-color-pink-20);--wa-color-brand-10:var(--wa-color-pink-10);--wa-color-brand-05:var(--wa-color-pink-05);--wa-color-brand:var(--wa-color-pink);--wa-color-brand-on:var(--wa-color-pink-on)}.wa-brand-gray{--wa-color-brand-95:var(--wa-color-gray-95);--wa-color-brand-90:var(--wa-color-gray-90);--wa-color-brand-80:var(--wa-color-gray-80);--wa-color-brand-70:var(--wa-color-gray-70);--wa-color-brand-60:var(--wa-color-gray-60);--wa-color-brand-50:var(--wa-color-gray-50);--wa-color-brand-40:var(--wa-color-gray-40);--wa-color-brand-30:var(--wa-color-gray-30);--wa-color-brand-20:var(--wa-color-gray-20);--wa-color-brand-10:var(--wa-color-gray-10);--wa-color-brand-05:var(--wa-color-gray-05);--wa-color-brand:var(--wa-color-gray);--wa-color-brand-on:var(--wa-color-gray-on)}:where(:root),.wa-neutral-gray{--wa-color-neutral-95:var(--wa-color-gray-95);--wa-color-neutral-90:var(--wa-color-gray-90);--wa-color-neutral-80:var(--wa-color-gray-80);--wa-color-neutral-70:var(--wa-color-gray-70);--wa-color-neutral-60:var(--wa-color-gray-60);--wa-color-neutral-50:var(--wa-color-gray-50);--wa-color-neutral-40:var(--wa-color-gray-40);--wa-color-neutral-30:var(--wa-color-gray-30);--wa-color-neutral-20:var(--wa-color-gray-20);--wa-color-neutral-10:var(--wa-color-gray-10);--wa-color-neutral-05:var(--wa-color-gray-05);--wa-color-neutral:var(--wa-color-gray);--wa-color-neutral-on:var(--wa-color-gray-on)}.wa-neutral-red{--wa-color-neutral-95:var(--wa-color-red-95);--wa-color-neutral-90:var(--wa-color-red-90);--wa-color-neutral-80:var(--wa-color-red-80);--wa-color-neutral-70:var(--wa-color-red-70);--wa-color-neutral-60:var(--wa-color-red-60);--wa-color-neutral-50:var(--wa-color-red-50);--wa-color-neutral-40:var(--wa-color-red-40);--wa-color-neutral-30:var(--wa-color-red-30);--wa-color-neutral-20:var(--wa-color-red-20);--wa-color-neutral-10:var(--wa-color-red-10);--wa-color-neutral-05:var(--wa-color-red-05);--wa-color-neutral:var(--wa-color-red);--wa-color-neutral-on:var(--wa-color-red-on)}.wa-neutral-orange{--wa-color-neutral-95:var(--wa-color-orange-95);--wa-color-neutral-90:var(--wa-color-orange-90);--wa-color-neutral-80:var(--wa-color-orange-80);--wa-color-neutral-70:var(--wa-color-orange-70);--wa-color-neutral-60:var(--wa-color-orange-60);--wa-color-neutral-50:var(--wa-color-orange-50);--wa-color-neutral-40:var(--wa-color-orange-40);--wa-color-neutral-30:var(--wa-color-orange-30);--wa-color-neutral-20:var(--wa-color-orange-20);--wa-color-neutral-10:var(--wa-color-orange-10);--wa-color-neutral-05:var(--wa-color-orange-05);--wa-color-neutral:var(--wa-color-orange);--wa-color-neutral-on:var(--wa-color-orange-on)}.wa-neutral-yellow{--wa-color-neutral-95:var(--wa-color-yellow-95);--wa-color-neutral-90:var(--wa-color-yellow-90);--wa-color-neutral-80:var(--wa-color-yellow-80);--wa-color-neutral-70:var(--wa-color-yellow-70);--wa-color-neutral-60:var(--wa-color-yellow-60);--wa-color-neutral-50:var(--wa-color-yellow-50);--wa-color-neutral-40:var(--wa-color-yellow-40);--wa-color-neutral-30:var(--wa-color-yellow-30);--wa-color-neutral-20:var(--wa-color-yellow-20);--wa-color-neutral-10:var(--wa-color-yellow-10);--wa-color-neutral-05:var(--wa-color-yellow-05);--wa-color-neutral:var(--wa-color-yellow);--wa-color-neutral-on:var(--wa-color-yellow-on)}.wa-neutral-green{--wa-color-neutral-95:var(--wa-color-green-95);--wa-color-neutral-90:var(--wa-color-green-90);--wa-color-neutral-80:var(--wa-color-green-80);--wa-color-neutral-70:var(--wa-color-green-70);--wa-color-neutral-60:var(--wa-color-green-60);--wa-color-neutral-50:var(--wa-color-green-50);--wa-color-neutral-40:var(--wa-color-green-40);--wa-color-neutral-30:var(--wa-color-green-30);--wa-color-neutral-20:var(--wa-color-green-20);--wa-color-neutral-10:var(--wa-color-green-10);--wa-color-neutral-05:var(--wa-color-green-05);--wa-color-neutral:var(--wa-color-green);--wa-color-neutral-on:var(--wa-color-green-on)}.wa-neutral-cyan{--wa-color-neutral-95:var(--wa-color-cyan-95);--wa-color-neutral-90:var(--wa-color-cyan-90);--wa-color-neutral-80:var(--wa-color-cyan-80);--wa-color-neutral-70:var(--wa-color-cyan-70);--wa-color-neutral-60:var(--wa-color-cyan-60);--wa-color-neutral-50:var(--wa-color-cyan-50);--wa-color-neutral-40:var(--wa-color-cyan-40);--wa-color-neutral-30:var(--wa-color-cyan-30);--wa-color-neutral-20:var(--wa-color-cyan-20);--wa-color-neutral-10:var(--wa-color-cyan-10);--wa-color-neutral-05:var(--wa-color-cyan-05);--wa-color-neutral:var(--wa-color-cyan);--wa-color-neutral-on:var(--wa-color-cyan-on)}.wa-neutral-blue{--wa-color-neutral-95:var(--wa-color-blue-95);--wa-color-neutral-90:var(--wa-color-blue-90);--wa-color-neutral-80:var(--wa-color-blue-80);--wa-color-neutral-70:var(--wa-color-blue-70);--wa-color-neutral-60:var(--wa-color-blue-60);--wa-color-neutral-50:var(--wa-color-blue-50);--wa-color-neutral-40:var(--wa-color-blue-40);--wa-color-neutral-30:var(--wa-color-blue-30);--wa-color-neutral-20:var(--wa-color-blue-20);--wa-color-neutral-10:var(--wa-color-blue-10);--wa-color-neutral-05:var(--wa-color-blue-05);--wa-color-neutral:var(--wa-color-blue);--wa-color-neutral-on:var(--wa-color-blue-on)}.wa-neutral-indigo{--wa-color-neutral-95:var(--wa-color-indigo-95);--wa-color-neutral-90:var(--wa-color-indigo-90);--wa-color-neutral-80:var(--wa-color-indigo-80);--wa-color-neutral-70:var(--wa-color-indigo-70);--wa-color-neutral-60:var(--wa-color-indigo-60);--wa-color-neutral-50:var(--wa-color-indigo-50);--wa-color-neutral-40:var(--wa-color-indigo-40);--wa-color-neutral-30:var(--wa-color-indigo-30);--wa-color-neutral-20:var(--wa-color-indigo-20);--wa-color-neutral-10:var(--wa-color-indigo-10);--wa-color-neutral-05:var(--wa-color-indigo-05);--wa-color-neutral:var(--wa-color-indigo);--wa-color-neutral-on:var(--wa-color-indigo-on)}.wa-neutral-purple{--wa-color-neutral-95:var(--wa-color-purple-95);--wa-color-neutral-90:var(--wa-color-purple-90);--wa-color-neutral-80:var(--wa-color-purple-80);--wa-color-neutral-70:var(--wa-color-purple-70);--wa-color-neutral-60:var(--wa-color-purple-60);--wa-color-neutral-50:var(--wa-color-purple-50);--wa-color-neutral-40:var(--wa-color-purple-40);--wa-color-neutral-30:var(--wa-color-purple-30);--wa-color-neutral-20:var(--wa-color-purple-20);--wa-color-neutral-10:var(--wa-color-purple-10);--wa-color-neutral-05:var(--wa-color-purple-05);--wa-color-neutral:var(--wa-color-purple);--wa-color-neutral-on:var(--wa-color-purple-on)}.wa-neutral-pink{--wa-color-neutral-95:var(--wa-color-pink-95);--wa-color-neutral-90:var(--wa-color-pink-90);--wa-color-neutral-80:var(--wa-color-pink-80);--wa-color-neutral-70:var(--wa-color-pink-70);--wa-color-neutral-60:var(--wa-color-pink-60);--wa-color-neutral-50:var(--wa-color-pink-50);--wa-color-neutral-40:var(--wa-color-pink-40);--wa-color-neutral-30:var(--wa-color-pink-30);--wa-color-neutral-20:var(--wa-color-pink-20);--wa-color-neutral-10:var(--wa-color-pink-10);--wa-color-neutral-05:var(--wa-color-pink-05);--wa-color-neutral:var(--wa-color-pink);--wa-color-neutral-on:var(--wa-color-pink-on)}:where(:root),.wa-success-green{--wa-color-success-95:var(--wa-color-green-95);--wa-color-success-90:var(--wa-color-green-90);--wa-color-success-80:var(--wa-color-green-80);--wa-color-success-70:var(--wa-color-green-70);--wa-color-success-60:var(--wa-color-green-60);--wa-color-success-50:var(--wa-color-green-50);--wa-color-success-40:var(--wa-color-green-40);--wa-color-success-30:var(--wa-color-green-30);--wa-color-success-20:var(--wa-color-green-20);--wa-color-success-10:var(--wa-color-green-10);--wa-color-success-05:var(--wa-color-green-05);--wa-color-success:var(--wa-color-green);--wa-color-success-on:var(--wa-color-green-on)}.wa-success-red{--wa-color-success-95:var(--wa-color-red-95);--wa-color-success-90:var(--wa-color-red-90);--wa-color-success-80:var(--wa-color-red-80);--wa-color-success-70:var(--wa-color-red-70);--wa-color-success-60:var(--wa-color-red-60);--wa-color-success-50:var(--wa-color-red-50);--wa-color-success-40:var(--wa-color-red-40);--wa-color-success-30:var(--wa-color-red-30);--wa-color-success-20:var(--wa-color-red-20);--wa-color-success-10:var(--wa-color-red-10);--wa-color-success-05:var(--wa-color-red-05);--wa-color-success:var(--wa-color-red);--wa-color-success-on:var(--wa-color-red-on)}.wa-success-orange{--wa-color-success-95:var(--wa-color-orange-95);--wa-color-success-90:var(--wa-color-orange-90);--wa-color-success-80:var(--wa-color-orange-80);--wa-color-success-70:var(--wa-color-orange-70);--wa-color-success-60:var(--wa-color-orange-60);--wa-color-success-50:var(--wa-color-orange-50);--wa-color-success-40:var(--wa-color-orange-40);--wa-color-success-30:var(--wa-color-orange-30);--wa-color-success-20:var(--wa-color-orange-20);--wa-color-success-10:var(--wa-color-orange-10);--wa-color-success-05:var(--wa-color-orange-05);--wa-color-success:var(--wa-color-orange);--wa-color-success-on:var(--wa-color-orange-on)}.wa-success-yellow{--wa-color-success-95:var(--wa-color-yellow-95);--wa-color-success-90:var(--wa-color-yellow-90);--wa-color-success-80:var(--wa-color-yellow-80);--wa-color-success-70:var(--wa-color-yellow-70);--wa-color-success-60:var(--wa-color-yellow-60);--wa-color-success-50:var(--wa-color-yellow-50);--wa-color-success-40:var(--wa-color-yellow-40);--wa-color-success-30:var(--wa-color-yellow-30);--wa-color-success-20:var(--wa-color-yellow-20);--wa-color-success-10:var(--wa-color-yellow-10);--wa-color-success-05:var(--wa-color-yellow-05);--wa-color-success:var(--wa-color-yellow);--wa-color-success-on:var(--wa-color-yellow-on)}.wa-success-cyan{--wa-color-success-95:var(--wa-color-cyan-95);--wa-color-success-90:var(--wa-color-cyan-90);--wa-color-success-80:var(--wa-color-cyan-80);--wa-color-success-70:var(--wa-color-cyan-70);--wa-color-success-60:var(--wa-color-cyan-60);--wa-color-success-50:var(--wa-color-cyan-50);--wa-color-success-40:var(--wa-color-cyan-40);--wa-color-success-30:var(--wa-color-cyan-30);--wa-color-success-20:var(--wa-color-cyan-20);--wa-color-success-10:var(--wa-color-cyan-10);--wa-color-success-05:var(--wa-color-cyan-05);--wa-color-success:var(--wa-color-cyan);--wa-color-success-on:var(--wa-color-cyan-on)}.wa-success-blue{--wa-color-success-95:var(--wa-color-blue-95);--wa-color-success-90:var(--wa-color-blue-90);--wa-color-success-80:var(--wa-color-blue-80);--wa-color-success-70:var(--wa-color-blue-70);--wa-color-success-60:var(--wa-color-blue-60);--wa-color-success-50:var(--wa-color-blue-50);--wa-color-success-40:var(--wa-color-blue-40);--wa-color-success-30:var(--wa-color-blue-30);--wa-color-success-20:var(--wa-color-blue-20);--wa-color-success-10:var(--wa-color-blue-10);--wa-color-success-05:var(--wa-color-blue-05);--wa-color-success:var(--wa-color-blue);--wa-color-success-on:var(--wa-color-blue-on)}.wa-success-indigo{--wa-color-success-95:var(--wa-color-indigo-95);--wa-color-success-90:var(--wa-color-indigo-90);--wa-color-success-80:var(--wa-color-indigo-80);--wa-color-success-70:var(--wa-color-indigo-70);--wa-color-success-60:var(--wa-color-indigo-60);--wa-color-success-50:var(--wa-color-indigo-50);--wa-color-success-40:var(--wa-color-indigo-40);--wa-color-success-30:var(--wa-color-indigo-30);--wa-color-success-20:var(--wa-color-indigo-20);--wa-color-success-10:var(--wa-color-indigo-10);--wa-color-success-05:var(--wa-color-indigo-05);--wa-color-success:var(--wa-color-indigo);--wa-color-success-on:var(--wa-color-indigo-on)}.wa-success-purple{--wa-color-success-95:var(--wa-color-purple-95);--wa-color-success-90:var(--wa-color-purple-90);--wa-color-success-80:var(--wa-color-purple-80);--wa-color-success-70:var(--wa-color-purple-70);--wa-color-success-60:var(--wa-color-purple-60);--wa-color-success-50:var(--wa-color-purple-50);--wa-color-success-40:var(--wa-color-purple-40);--wa-color-success-30:var(--wa-color-purple-30);--wa-color-success-20:var(--wa-color-purple-20);--wa-color-success-10:var(--wa-color-purple-10);--wa-color-success-05:var(--wa-color-purple-05);--wa-color-success:var(--wa-color-purple);--wa-color-success-on:var(--wa-color-purple-on)}.wa-success-pink{--wa-color-success-95:var(--wa-color-pink-95);--wa-color-success-90:var(--wa-color-pink-90);--wa-color-success-80:var(--wa-color-pink-80);--wa-color-success-70:var(--wa-color-pink-70);--wa-color-success-60:var(--wa-color-pink-60);--wa-color-success-50:var(--wa-color-pink-50);--wa-color-success-40:var(--wa-color-pink-40);--wa-color-success-30:var(--wa-color-pink-30);--wa-color-success-20:var(--wa-color-pink-20);--wa-color-success-10:var(--wa-color-pink-10);--wa-color-success-05:var(--wa-color-pink-05);--wa-color-success:var(--wa-color-pink);--wa-color-success-on:var(--wa-color-pink-on)}.wa-success-gray{--wa-color-success-95:var(--wa-color-gray-95);--wa-color-success-90:var(--wa-color-gray-90);--wa-color-success-80:var(--wa-color-gray-80);--wa-color-success-70:var(--wa-color-gray-70);--wa-color-success-60:var(--wa-color-gray-60);--wa-color-success-50:var(--wa-color-gray-50);--wa-color-success-40:var(--wa-color-gray-40);--wa-color-success-30:var(--wa-color-gray-30);--wa-color-success-20:var(--wa-color-gray-20);--wa-color-success-10:var(--wa-color-gray-10);--wa-color-success-05:var(--wa-color-gray-05);--wa-color-success:var(--wa-color-gray);--wa-color-success-on:var(--wa-color-gray-on)}:where(:root),.wa-warning-yellow{--wa-color-warning-95:var(--wa-color-yellow-95);--wa-color-warning-90:var(--wa-color-yellow-90);--wa-color-warning-80:var(--wa-color-yellow-80);--wa-color-warning-70:var(--wa-color-yellow-70);--wa-color-warning-60:var(--wa-color-yellow-60);--wa-color-warning-50:var(--wa-color-yellow-50);--wa-color-warning-40:var(--wa-color-yellow-40);--wa-color-warning-30:var(--wa-color-yellow-30);--wa-color-warning-20:var(--wa-color-yellow-20);--wa-color-warning-10:var(--wa-color-yellow-10);--wa-color-warning-05:var(--wa-color-yellow-05);--wa-color-warning:var(--wa-color-yellow);--wa-color-warning-on:var(--wa-color-yellow-on)}.wa-warning-red{--wa-color-warning-95:var(--wa-color-red-95);--wa-color-warning-90:var(--wa-color-red-90);--wa-color-warning-80:var(--wa-color-red-80);--wa-color-warning-70:var(--wa-color-red-70);--wa-color-warning-60:var(--wa-color-red-60);--wa-color-warning-50:var(--wa-color-red-50);--wa-color-warning-40:var(--wa-color-red-40);--wa-color-warning-30:var(--wa-color-red-30);--wa-color-warning-20:var(--wa-color-red-20);--wa-color-warning-10:var(--wa-color-red-10);--wa-color-warning-05:var(--wa-color-red-05);--wa-color-warning:var(--wa-color-red);--wa-color-warning-on:var(--wa-color-red-on)}.wa-warning-orange{--wa-color-warning-95:var(--wa-color-orange-95);--wa-color-warning-90:var(--wa-color-orange-90);--wa-color-warning-80:var(--wa-color-orange-80);--wa-color-warning-70:var(--wa-color-orange-70);--wa-color-warning-60:var(--wa-color-orange-60);--wa-color-warning-50:var(--wa-color-orange-50);--wa-color-warning-40:var(--wa-color-orange-40);--wa-color-warning-30:var(--wa-color-orange-30);--wa-color-warning-20:var(--wa-color-orange-20);--wa-color-warning-10:var(--wa-color-orange-10);--wa-color-warning-05:var(--wa-color-orange-05);--wa-color-warning:var(--wa-color-orange);--wa-color-warning-on:var(--wa-color-orange-on)}.wa-warning-green{--wa-color-warning-95:var(--wa-color-green-95);--wa-color-warning-90:var(--wa-color-green-90);--wa-color-warning-80:var(--wa-color-green-80);--wa-color-warning-70:var(--wa-color-green-70);--wa-color-warning-60:var(--wa-color-green-60);--wa-color-warning-50:var(--wa-color-green-50);--wa-color-warning-40:var(--wa-color-green-40);--wa-color-warning-30:var(--wa-color-green-30);--wa-color-warning-20:var(--wa-color-green-20);--wa-color-warning-10:var(--wa-color-green-10);--wa-color-warning-05:var(--wa-color-green-05);--wa-color-warning:var(--wa-color-green);--wa-color-warning-on:var(--wa-color-green-on)}.wa-warning-cyan{--wa-color-warning-95:var(--wa-color-cyan-95);--wa-color-warning-90:var(--wa-color-cyan-90);--wa-color-warning-80:var(--wa-color-cyan-80);--wa-color-warning-70:var(--wa-color-cyan-70);--wa-color-warning-60:var(--wa-color-cyan-60);--wa-color-warning-50:var(--wa-color-cyan-50);--wa-color-warning-40:var(--wa-color-cyan-40);--wa-color-warning-30:var(--wa-color-cyan-30);--wa-color-warning-20:var(--wa-color-cyan-20);--wa-color-warning-10:var(--wa-color-cyan-10);--wa-color-warning-05:var(--wa-color-cyan-05);--wa-color-warning:var(--wa-color-cyan);--wa-color-warning-on:var(--wa-color-cyan-on)}.wa-warning-blue{--wa-color-warning-95:var(--wa-color-blue-95);--wa-color-warning-90:var(--wa-color-blue-90);--wa-color-warning-80:var(--wa-color-blue-80);--wa-color-warning-70:var(--wa-color-blue-70);--wa-color-warning-60:var(--wa-color-blue-60);--wa-color-warning-50:var(--wa-color-blue-50);--wa-color-warning-40:var(--wa-color-blue-40);--wa-color-warning-30:var(--wa-color-blue-30);--wa-color-warning-20:var(--wa-color-blue-20);--wa-color-warning-10:var(--wa-color-blue-10);--wa-color-warning-05:var(--wa-color-blue-05);--wa-color-warning:var(--wa-color-blue);--wa-color-warning-on:var(--wa-color-blue-on)}.wa-warning-indigo{--wa-color-warning-95:var(--wa-color-indigo-95);--wa-color-warning-90:var(--wa-color-indigo-90);--wa-color-warning-80:var(--wa-color-indigo-80);--wa-color-warning-70:var(--wa-color-indigo-70);--wa-color-warning-60:var(--wa-color-indigo-60);--wa-color-warning-50:var(--wa-color-indigo-50);--wa-color-warning-40:var(--wa-color-indigo-40);--wa-color-warning-30:var(--wa-color-indigo-30);--wa-color-warning-20:var(--wa-color-indigo-20);--wa-color-warning-10:var(--wa-color-indigo-10);--wa-color-warning-05:var(--wa-color-indigo-05);--wa-color-warning:var(--wa-color-indigo);--wa-color-warning-on:var(--wa-color-indigo-on)}.wa-warning-purple{--wa-color-warning-95:var(--wa-color-purple-95);--wa-color-warning-90:var(--wa-color-purple-90);--wa-color-warning-80:var(--wa-color-purple-80);--wa-color-warning-70:var(--wa-color-purple-70);--wa-color-warning-60:var(--wa-color-purple-60);--wa-color-warning-50:var(--wa-color-purple-50);--wa-color-warning-40:var(--wa-color-purple-40);--wa-color-warning-30:var(--wa-color-purple-30);--wa-color-warning-20:var(--wa-color-purple-20);--wa-color-warning-10:var(--wa-color-purple-10);--wa-color-warning-05:var(--wa-color-purple-05);--wa-color-warning:var(--wa-color-purple);--wa-color-warning-on:var(--wa-color-purple-on)}.wa-warning-pink{--wa-color-warning-95:var(--wa-color-pink-95);--wa-color-warning-90:var(--wa-color-pink-90);--wa-color-warning-80:var(--wa-color-pink-80);--wa-color-warning-70:var(--wa-color-pink-70);--wa-color-warning-60:var(--wa-color-pink-60);--wa-color-warning-50:var(--wa-color-pink-50);--wa-color-warning-40:var(--wa-color-pink-40);--wa-color-warning-30:var(--wa-color-pink-30);--wa-color-warning-20:var(--wa-color-pink-20);--wa-color-warning-10:var(--wa-color-pink-10);--wa-color-warning-05:var(--wa-color-pink-05);--wa-color-warning:var(--wa-color-pink);--wa-color-warning-on:var(--wa-color-pink-on)}.wa-warning-gray{--wa-color-warning-95:var(--wa-color-gray-95);--wa-color-warning-90:var(--wa-color-gray-90);--wa-color-warning-80:var(--wa-color-gray-80);--wa-color-warning-70:var(--wa-color-gray-70);--wa-color-warning-60:var(--wa-color-gray-60);--wa-color-warning-50:var(--wa-color-gray-50);--wa-color-warning-40:var(--wa-color-gray-40);--wa-color-warning-30:var(--wa-color-gray-30);--wa-color-warning-20:var(--wa-color-gray-20);--wa-color-warning-10:var(--wa-color-gray-10);--wa-color-warning-05:var(--wa-color-gray-05);--wa-color-warning:var(--wa-color-gray);--wa-color-warning-on:var(--wa-color-gray-on)}:where(:root),.wa-danger-red{--wa-color-danger-95:var(--wa-color-red-95);--wa-color-danger-90:var(--wa-color-red-90);--wa-color-danger-80:var(--wa-color-red-80);--wa-color-danger-70:var(--wa-color-red-70);--wa-color-danger-60:var(--wa-color-red-60);--wa-color-danger-50:var(--wa-color-red-50);--wa-color-danger-40:var(--wa-color-red-40);--wa-color-danger-30:var(--wa-color-red-30);--wa-color-danger-20:var(--wa-color-red-20);--wa-color-danger-10:var(--wa-color-red-10);--wa-color-danger-05:var(--wa-color-red-05);--wa-color-danger:var(--wa-color-red);--wa-color-danger-on:var(--wa-color-red-on)}.wa-danger-orange{--wa-color-danger-95:var(--wa-color-orange-95);--wa-color-danger-90:var(--wa-color-orange-90);--wa-color-danger-80:var(--wa-color-orange-80);--wa-color-danger-70:var(--wa-color-orange-70);--wa-color-danger-60:var(--wa-color-orange-60);--wa-color-danger-50:var(--wa-color-orange-50);--wa-color-danger-40:var(--wa-color-orange-40);--wa-color-danger-30:var(--wa-color-orange-30);--wa-color-danger-20:var(--wa-color-orange-20);--wa-color-danger-10:var(--wa-color-orange-10);--wa-color-danger-05:var(--wa-color-orange-05);--wa-color-danger:var(--wa-color-orange);--wa-color-danger-on:var(--wa-color-orange-on)}.wa-danger-yellow{--wa-color-danger-95:var(--wa-color-yellow-95);--wa-color-danger-90:var(--wa-color-yellow-90);--wa-color-danger-80:var(--wa-color-yellow-80);--wa-color-danger-70:var(--wa-color-yellow-70);--wa-color-danger-60:var(--wa-color-yellow-60);--wa-color-danger-50:var(--wa-color-yellow-50);--wa-color-danger-40:var(--wa-color-yellow-40);--wa-color-danger-30:var(--wa-color-yellow-30);--wa-color-danger-20:var(--wa-color-yellow-20);--wa-color-danger-10:var(--wa-color-yellow-10);--wa-color-danger-05:var(--wa-color-yellow-05);--wa-color-danger:var(--wa-color-yellow);--wa-color-danger-on:var(--wa-color-yellow-on)}.wa-danger-green{--wa-color-danger-95:var(--wa-color-green-95);--wa-color-danger-90:var(--wa-color-green-90);--wa-color-danger-80:var(--wa-color-green-80);--wa-color-danger-70:var(--wa-color-green-70);--wa-color-danger-60:var(--wa-color-green-60);--wa-color-danger-50:var(--wa-color-green-50);--wa-color-danger-40:var(--wa-color-green-40);--wa-color-danger-30:var(--wa-color-green-30);--wa-color-danger-20:var(--wa-color-green-20);--wa-color-danger-10:var(--wa-color-green-10);--wa-color-danger-05:var(--wa-color-green-05);--wa-color-danger:var(--wa-color-green);--wa-color-danger-on:var(--wa-color-green-on)}.wa-danger-cyan{--wa-color-danger-95:var(--wa-color-cyan-95);--wa-color-danger-90:var(--wa-color-cyan-90);--wa-color-danger-80:var(--wa-color-cyan-80);--wa-color-danger-70:var(--wa-color-cyan-70);--wa-color-danger-60:var(--wa-color-cyan-60);--wa-color-danger-50:var(--wa-color-cyan-50);--wa-color-danger-40:var(--wa-color-cyan-40);--wa-color-danger-30:var(--wa-color-cyan-30);--wa-color-danger-20:var(--wa-color-cyan-20);--wa-color-danger-10:var(--wa-color-cyan-10);--wa-color-danger-05:var(--wa-color-cyan-05);--wa-color-danger:var(--wa-color-cyan);--wa-color-danger-on:var(--wa-color-cyan-on)}.wa-danger-blue{--wa-color-danger-95:var(--wa-color-blue-95);--wa-color-danger-90:var(--wa-color-blue-90);--wa-color-danger-80:var(--wa-color-blue-80);--wa-color-danger-70:var(--wa-color-blue-70);--wa-color-danger-60:var(--wa-color-blue-60);--wa-color-danger-50:var(--wa-color-blue-50);--wa-color-danger-40:var(--wa-color-blue-40);--wa-color-danger-30:var(--wa-color-blue-30);--wa-color-danger-20:var(--wa-color-blue-20);--wa-color-danger-10:var(--wa-color-blue-10);--wa-color-danger-05:var(--wa-color-blue-05);--wa-color-danger:var(--wa-color-blue);--wa-color-danger-on:var(--wa-color-blue-on)}.wa-danger-indigo{--wa-color-danger-95:var(--wa-color-indigo-95);--wa-color-danger-90:var(--wa-color-indigo-90);--wa-color-danger-80:var(--wa-color-indigo-80);--wa-color-danger-70:var(--wa-color-indigo-70);--wa-color-danger-60:var(--wa-color-indigo-60);--wa-color-danger-50:var(--wa-color-indigo-50);--wa-color-danger-40:var(--wa-color-indigo-40);--wa-color-danger-30:var(--wa-color-indigo-30);--wa-color-danger-20:var(--wa-color-indigo-20);--wa-color-danger-10:var(--wa-color-indigo-10);--wa-color-danger-05:var(--wa-color-indigo-05);--wa-color-danger:var(--wa-color-indigo);--wa-color-danger-on:var(--wa-color-indigo-on)}.wa-danger-purple{--wa-color-danger-95:var(--wa-color-purple-95);--wa-color-danger-90:var(--wa-color-purple-90);--wa-color-danger-80:var(--wa-color-purple-80);--wa-color-danger-70:var(--wa-color-purple-70);--wa-color-danger-60:var(--wa-color-purple-60);--wa-color-danger-50:var(--wa-color-purple-50);--wa-color-danger-40:var(--wa-color-purple-40);--wa-color-danger-30:var(--wa-color-purple-30);--wa-color-danger-20:var(--wa-color-purple-20);--wa-color-danger-10:var(--wa-color-purple-10);--wa-color-danger-05:var(--wa-color-purple-05);--wa-color-danger:var(--wa-color-purple);--wa-color-danger-on:var(--wa-color-purple-on)}.wa-danger-pink{--wa-color-danger-95:var(--wa-color-pink-95);--wa-color-danger-90:var(--wa-color-pink-90);--wa-color-danger-80:var(--wa-color-pink-80);--wa-color-danger-70:var(--wa-color-pink-70);--wa-color-danger-60:var(--wa-color-pink-60);--wa-color-danger-50:var(--wa-color-pink-50);--wa-color-danger-40:var(--wa-color-pink-40);--wa-color-danger-30:var(--wa-color-pink-30);--wa-color-danger-20:var(--wa-color-pink-20);--wa-color-danger-10:var(--wa-color-pink-10);--wa-color-danger-05:var(--wa-color-pink-05);--wa-color-danger:var(--wa-color-pink);--wa-color-danger-on:var(--wa-color-pink-on)}.wa-danger-gray{--wa-color-danger-95:var(--wa-color-gray-95);--wa-color-danger-90:var(--wa-color-gray-90);--wa-color-danger-80:var(--wa-color-gray-80);--wa-color-danger-70:var(--wa-color-gray-70);--wa-color-danger-60:var(--wa-color-gray-60);--wa-color-danger-50:var(--wa-color-gray-50);--wa-color-danger-40:var(--wa-color-gray-40);--wa-color-danger-30:var(--wa-color-gray-30);--wa-color-danger-20:var(--wa-color-gray-20);--wa-color-danger-10:var(--wa-color-gray-10);--wa-color-danger-05:var(--wa-color-gray-05);--wa-color-danger:var(--wa-color-gray);--wa-color-danger-on:var(--wa-color-gray-on)}}@layer wa-theme{:where(:root),.wa-theme-default,.wa-light,.wa-dark .wa-invert,.wa-light .wa-theme-default,.wa-dark .wa-theme-default.wa-invert,.wa-dark .wa-theme-default .wa-invert{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:var(--wa-color-text-normal);--wa-color-surface-raised:white;--wa-color-surface-default:white;--wa-color-surface-lowered:var(--wa-color-neutral-95);--wa-color-surface-border:var(--wa-color-neutral-90);--wa-color-text-normal:var(--wa-color-neutral-10);--wa-color-text-quiet:var(--wa-color-neutral-40);--wa-color-text-link:var(--wa-color-brand-40);--wa-color-overlay-modal:color-mix(in oklab, var(--wa-color-neutral-05) 50%, transparent);--wa-color-overlay-inline:color-mix(in oklab, var(--wa-color-neutral-80) 25%, transparent);--wa-color-shadow:color-mix(in oklab, var(--wa-color-neutral-05) calc(var(--wa-shadow-blur-scale) * 4% + 8%), transparent);--wa-color-focus:var(--wa-color-brand-60);--wa-color-mix-hover:black 10%;--wa-color-mix-active:black 20%;--wa-color-brand-fill-quiet:var(--wa-color-brand-95);--wa-color-brand-fill-normal:var(--wa-color-brand-90);--wa-color-brand-fill-loud:var(--wa-color-brand-50);--wa-color-brand-border-quiet:var(--wa-color-brand-90);--wa-color-brand-border-normal:var(--wa-color-brand-80);--wa-color-brand-border-loud:var(--wa-color-brand-60);--wa-color-brand-on-quiet:var(--wa-color-brand-40);--wa-color-brand-on-normal:var(--wa-color-brand-30);--wa-color-brand-on-loud:white;--wa-color-success-fill-quiet:var(--wa-color-success-95);--wa-color-success-fill-normal:var(--wa-color-success-90);--wa-color-success-fill-loud:var(--wa-color-success-50);--wa-color-success-border-quiet:var(--wa-color-success-90);--wa-color-success-border-normal:var(--wa-color-success-80);--wa-color-success-border-loud:var(--wa-color-success-60);--wa-color-success-on-quiet:var(--wa-color-success-40);--wa-color-success-on-normal:var(--wa-color-success-30);--wa-color-success-on-loud:white;--wa-color-warning-fill-quiet:var(--wa-color-warning-95);--wa-color-warning-fill-normal:var(--wa-color-warning-90);--wa-color-warning-fill-loud:var(--wa-color-warning-50);--wa-color-warning-border-quiet:var(--wa-color-warning-90);--wa-color-warning-border-normal:var(--wa-color-warning-80);--wa-color-warning-border-loud:var(--wa-color-warning-60);--wa-color-warning-on-quiet:var(--wa-color-warning-40);--wa-color-warning-on-normal:var(--wa-color-warning-30);--wa-color-warning-on-loud:white;--wa-color-danger-fill-quiet:var(--wa-color-danger-95);--wa-color-danger-fill-normal:var(--wa-color-danger-90);--wa-color-danger-fill-loud:var(--wa-color-danger-50);--wa-color-danger-border-quiet:var(--wa-color-danger-90);--wa-color-danger-border-normal:var(--wa-color-danger-80);--wa-color-danger-border-loud:var(--wa-color-danger-60);--wa-color-danger-on-quiet:var(--wa-color-danger-40);--wa-color-danger-on-normal:var(--wa-color-danger-30);--wa-color-danger-on-loud:white;--wa-color-neutral-fill-quiet:var(--wa-color-neutral-95);--wa-color-neutral-fill-normal:var(--wa-color-neutral-90);--wa-color-neutral-fill-loud:var(--wa-color-neutral-20);--wa-color-neutral-border-quiet:var(--wa-color-neutral-90);--wa-color-neutral-border-normal:var(--wa-color-neutral-80);--wa-color-neutral-border-loud:var(--wa-color-neutral-60);--wa-color-neutral-on-quiet:var(--wa-color-neutral-40);--wa-color-neutral-on-normal:var(--wa-color-neutral-30);--wa-color-neutral-on-loud:white}.wa-dark,.wa-invert,.wa-dark .wa-theme-default,.wa-light .wa-theme-default.wa-invert,.wa-light .wa-theme-default .wa-invert{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:var(--wa-color-text-normal);--wa-color-surface-raised:var(--wa-color-neutral-10);--wa-color-surface-default:var(--wa-color-neutral-05);--wa-color-surface-lowered:color-mix(in oklab, var(--wa-color-surface-default), black 20%);--wa-color-surface-border:var(--wa-color-neutral-20);--wa-color-text-normal:var(--wa-color-neutral-95);--wa-color-text-quiet:var(--wa-color-neutral-60);--wa-color-text-link:var(--wa-color-brand-70);--wa-color-overlay-modal:#0009;--wa-color-overlay-inline:color-mix(in oklab, var(--wa-color-neutral-50) 10%, transparent);--wa-color-shadow:color-mix(in oklab, var(--wa-color-surface-lowered) calc(var(--wa-shadow-blur-scale) * 32% + 40%), transparent);--wa-color-focus:var(--wa-color-brand-60);--wa-color-mix-hover:black 8%;--wa-color-mix-active:black 16%;--wa-color-brand-fill-quiet:var(--wa-color-brand-10);--wa-color-brand-fill-normal:var(--wa-color-brand-20);--wa-color-brand-fill-loud:var(--wa-color-brand-50);--wa-color-brand-border-quiet:var(--wa-color-brand-20);--wa-color-brand-border-normal:var(--wa-color-brand-30);--wa-color-brand-border-loud:var(--wa-color-brand-40);--wa-color-brand-on-quiet:var(--wa-color-brand-60);--wa-color-brand-on-normal:var(--wa-color-brand-70);--wa-color-brand-on-loud:white;--wa-color-success-fill-quiet:var(--wa-color-success-10);--wa-color-success-fill-normal:var(--wa-color-success-20);--wa-color-success-fill-loud:var(--wa-color-success-50);--wa-color-success-border-quiet:var(--wa-color-success-20);--wa-color-success-border-normal:var(--wa-color-success-30);--wa-color-success-border-loud:var(--wa-color-success-40);--wa-color-success-on-quiet:var(--wa-color-success-60);--wa-color-success-on-normal:var(--wa-color-success-70);--wa-color-success-on-loud:white;--wa-color-warning-fill-quiet:var(--wa-color-warning-10);--wa-color-warning-fill-normal:var(--wa-color-warning-20);--wa-color-warning-fill-loud:var(--wa-color-warning-50);--wa-color-warning-border-quiet:var(--wa-color-warning-20);--wa-color-warning-border-normal:var(--wa-color-warning-30);--wa-color-warning-border-loud:var(--wa-color-warning-40);--wa-color-warning-on-quiet:var(--wa-color-warning-60);--wa-color-warning-on-normal:var(--wa-color-warning-70);--wa-color-warning-on-loud:white;--wa-color-danger-fill-quiet:var(--wa-color-danger-10);--wa-color-danger-fill-normal:var(--wa-color-danger-20);--wa-color-danger-fill-loud:var(--wa-color-danger-50);--wa-color-danger-border-quiet:var(--wa-color-danger-20);--wa-color-danger-border-normal:var(--wa-color-danger-30);--wa-color-danger-border-loud:var(--wa-color-danger-40);--wa-color-danger-on-quiet:var(--wa-color-danger-60);--wa-color-danger-on-normal:var(--wa-color-danger-70);--wa-color-danger-on-loud:white;--wa-color-neutral-fill-quiet:var(--wa-color-neutral-10);--wa-color-neutral-fill-normal:var(--wa-color-neutral-20);--wa-color-neutral-fill-loud:var(--wa-color-neutral-90);--wa-color-neutral-border-quiet:var(--wa-color-neutral-20);--wa-color-neutral-border-normal:var(--wa-color-neutral-30);--wa-color-neutral-border-loud:var(--wa-color-neutral-40);--wa-color-neutral-on-quiet:var(--wa-color-neutral-60);--wa-color-neutral-on-normal:var(--wa-color-neutral-70);--wa-color-neutral-on-loud:var(--wa-color-neutral-05)}@supports (color:lab(0% 0 0)){.wa-dark,.wa-invert,.wa-dark .wa-theme-default,.wa-light .wa-theme-default.wa-invert,.wa-light .wa-theme-default .wa-invert{--wa-color-overlay-modal:lab(0% 0 0/.6)}}:where(:root),.wa-theme-default,.wa-light,.wa-dark,.wa-invert{font-family:var(--wa-font-family-body);--wa-font-family-body:ui-sans-serif, system-ui, sans-serif;--wa-font-family-heading:var(--wa-font-family-body);--wa-font-family-code:ui-monospace, monospace;--wa-font-family-longform:ui-serif, serif;--wa-font-size-scale:1;--wa-font-size-2xs:round(calc(var(--wa-font-size-xs) / 1.125), 1px);--wa-font-size-xs:round(calc(var(--wa-font-size-s) / 1.125), 1px);--wa-font-size-s:round(calc(var(--wa-font-size-m) / 1.125), 1px);--wa-font-size-m:calc(1rem * var(--wa-font-size-scale));--wa-font-size-l:round(calc(var(--wa-font-size-m) * 1.125 * 1.125), 1px);--wa-font-size-xl:round(calc(var(--wa-font-size-l) * 1.125 * 1.125), 1px);--wa-font-size-2xl:round(calc(var(--wa-font-size-xl) * 1.125 * 1.125), 1px);--wa-font-size-3xl:round(calc(var(--wa-font-size-2xl) * 1.125 * 1.125), 1px);--wa-font-size-4xl:round(calc(var(--wa-font-size-3xl) * 1.125 * 1.125), 1px);--wa-font-size-smaller:round(calc(1em / 1.125), 1px);--wa-font-size-larger:round(calc(1em * 1.125 * 1.125), 1px);--wa-font-weight-light:300;--wa-font-weight-normal:400;--wa-font-weight-semibold:500;--wa-font-weight-bold:600;--wa-font-weight-body:var(--wa-font-weight-normal);--wa-font-weight-heading:var(--wa-font-weight-bold);--wa-font-weight-code:var(--wa-font-weight-normal);--wa-font-weight-longform:var(--wa-font-weight-normal);--wa-font-weight-action:var(--wa-font-weight-semibold);--wa-line-height-condensed:1.2;--wa-line-height-normal:1.6;--wa-line-height-expanded:2;--wa-link-decoration-default:underline color-mix(in oklab, currentColor 70%, transparent) dotted;--wa-link-decoration-hover:underline;--wa-space-scale:1;--wa-space-3xs:calc(var(--wa-space-scale) * .125rem);--wa-space-2xs:calc(var(--wa-space-scale) * .25rem);--wa-space-xs:calc(var(--wa-space-scale) * .5rem);--wa-space-s:calc(var(--wa-space-scale) * .75rem);--wa-space-m:calc(var(--wa-space-scale) * 1rem);--wa-space-l:calc(var(--wa-space-scale) * 1.5rem);--wa-space-xl:calc(var(--wa-space-scale) * 2rem);--wa-space-2xl:calc(var(--wa-space-scale) * 2.5rem);--wa-space-3xl:calc(var(--wa-space-scale) * 3rem);--wa-space-4xl:calc(var(--wa-space-scale) * 4rem);--wa-content-spacing:var(--wa-space-l);--wa-border-style:solid;--wa-border-width-scale:1;--wa-border-width-s:calc(var(--wa-border-width-scale) * .0625rem);--wa-border-width-m:calc(var(--wa-border-width-scale) * .125rem);--wa-border-width-l:calc(var(--wa-border-width-scale) * .1875rem);--wa-border-radius-scale:1;--wa-border-radius-s:calc(var(--wa-border-radius-scale) * .1875rem);--wa-border-radius-m:calc(var(--wa-border-radius-scale) * .375rem);--wa-border-radius-l:calc(var(--wa-border-radius-scale) * .75rem);--wa-border-radius-pill:9999px;--wa-border-radius-circle:50%;--wa-border-radius-square:0px;--wa-focus-ring-style:solid;--wa-focus-ring-width:.1875rem;--wa-focus-ring:var(--wa-focus-ring-style) var(--wa-focus-ring-width) var(--wa-color-focus);--wa-focus-ring-offset:.0625rem;--wa-shadow-offset-x-scale:0;--wa-shadow-offset-x-s:calc(var(--wa-shadow-offset-x-scale) * .125rem);--wa-shadow-offset-x-m:calc(var(--wa-shadow-offset-x-scale) * .25rem);--wa-shadow-offset-x-l:calc(var(--wa-shadow-offset-x-scale) * .5rem);--wa-shadow-offset-y-scale:1;--wa-shadow-offset-y-s:calc(var(--wa-shadow-offset-y-scale) * .125rem);--wa-shadow-offset-y-m:calc(var(--wa-shadow-offset-y-scale) * .25rem);--wa-shadow-offset-y-l:calc(var(--wa-shadow-offset-y-scale) * .5rem);--wa-shadow-blur-scale:1;--wa-shadow-blur-s:calc(var(--wa-shadow-blur-scale) * .125rem);--wa-shadow-blur-m:calc(var(--wa-shadow-blur-scale) * .25rem);--wa-shadow-blur-l:calc(var(--wa-shadow-blur-scale) * .5rem);--wa-shadow-spread-scale:-.5;--wa-shadow-spread-s:calc(var(--wa-shadow-spread-scale) * .125rem);--wa-shadow-spread-m:calc(var(--wa-shadow-spread-scale) * .25rem);--wa-shadow-spread-l:calc(var(--wa-shadow-spread-scale) * .5rem);--wa-shadow-s:var(--wa-shadow-offset-x-s) var(--wa-shadow-offset-y-s) var(--wa-shadow-blur-s) var(--wa-shadow-spread-s) var(--wa-color-shadow);--wa-shadow-m:var(--wa-shadow-offset-x-m) var(--wa-shadow-offset-y-m) var(--wa-shadow-blur-m) var(--wa-shadow-spread-m) var(--wa-color-shadow);--wa-shadow-l:var(--wa-shadow-offset-x-l) var(--wa-shadow-offset-y-l) var(--wa-shadow-blur-l) var(--wa-shadow-spread-l) var(--wa-color-shadow);--wa-transition-easing:ease;--wa-transition-slow:.3s;--wa-transition-normal:.15s;--wa-transition-fast:75ms;--wa-form-control-background-color:var(--wa-color-surface-default);--wa-form-control-border-color:var(--wa-color-neutral-border-loud);--wa-form-control-border-style:var(--wa-border-style);--wa-form-control-border-width:var(--wa-border-width-s);--wa-form-control-border-radius:var(--wa-border-radius-m);--wa-form-control-activated-color:var(--wa-color-brand-fill-loud);--wa-form-control-label-color:var(--wa-color-text-normal);--wa-form-control-label-font-weight:var(--wa-font-weight-semibold);--wa-form-control-label-line-height:var(--wa-line-height-condensed);--wa-form-control-value-color:var(--wa-color-text-normal);--wa-form-control-value-font-weight:var(--wa-font-weight-body);--wa-form-control-value-line-height:var(--wa-line-height-condensed);--wa-form-control-hint-color:var(--wa-color-text-quiet);--wa-form-control-hint-font-weight:var(--wa-font-weight-body);--wa-form-control-hint-line-height:var(--wa-line-height-normal);--wa-form-control-placeholder-color:var(--wa-color-gray-50);--wa-form-control-required-content:"*";--wa-form-control-required-content-color:inherit;--wa-form-control-required-content-offset:.1em;--wa-form-control-padding-block:.75em;--wa-form-control-padding-inline:1em;--wa-form-control-height:round(calc(2 * var(--wa-form-control-padding-block) + 1em * var(--wa-form-control-value-line-height)), 1px);--wa-form-control-toggle-size:round(1.25em, 1px);--wa-panel-border-style:var(--wa-border-style);--wa-panel-border-width:var(--wa-border-width-s);--wa-panel-border-radius:var(--wa-border-radius-l);--wa-tooltip-arrow-size:.375rem;--wa-tooltip-background-color:var(--wa-color-text-normal);--wa-tooltip-border-color:var(--wa-tooltip-background-color);--wa-tooltip-border-style:var(--wa-border-style);--wa-tooltip-border-width:var(--wa-border-width-s);--wa-tooltip-border-radius:var(--wa-border-radius-s);--wa-tooltip-content-color:var(--wa-color-surface-default);--wa-tooltip-font-size:var(--wa-font-size-s);--wa-tooltip-line-height:var(--wa-line-height-normal)}}@layer wa-theme-dimension,wa-theme-overrides;:where(:root),:host{--wa-color-red-gte-60:calc(100% - (clamp(0, 60 - var(--wa-color-red-key), 1) * 100%));--wa-color-orange-gte-60:calc(100% - (clamp(0, 60 - var(--wa-color-orange-key), 1) * 100%));--wa-color-yellow-gte-60:calc(100% - (clamp(0, 60 - var(--wa-color-yellow-key), 1) * 100%));--wa-color-green-gte-60:calc(100% - (clamp(0, 60 - var(--wa-color-green-key), 1) * 100%));--wa-color-cyan-gte-60:calc(100% - (clamp(0, 60 - var(--wa-color-cyan-key), 1) * 100%));--wa-color-blue-gte-60:calc(100% - (clamp(0, 60 - var(--wa-color-blue-key), 1) * 100%));--wa-color-indigo-gte-60:calc(100% - (clamp(0, 60 - var(--wa-color-indigo-key), 1) * 100%));--wa-color-purple-gte-60:calc(100% - (clamp(0, 60 - var(--wa-color-purple-key), 1) * 100%));--wa-color-pink-gte-60:calc(100% - (clamp(0, 60 - var(--wa-color-pink-key), 1) * 100%));--wa-color-gray-gte-60:calc(100% - (clamp(0, 60 - var(--wa-color-gray-key), 1) * 100%));--wa-color-red-on:color-mix(in oklab, var(--wa-color-red-10) var(--wa-color-red-gte-60), white);--wa-color-orange-on:color-mix(in oklab, var(--wa-color-orange-10) var(--wa-color-orange-gte-60), white);--wa-color-yellow-on:color-mix(in oklab, var(--wa-color-yellow-10) var(--wa-color-yellow-gte-60), white);--wa-color-green-on:color-mix(in oklab, var(--wa-color-green-10) var(--wa-color-green-gte-60), white);--wa-color-cyan-on:color-mix(in oklab, var(--wa-color-cyan-10) var(--wa-color-cyan-gte-60), white);--wa-color-blue-on:color-mix(in oklab, var(--wa-color-blue-10) var(--wa-color-blue-gte-60), white);--wa-color-indigo-on:color-mix(in oklab, var(--wa-color-indigo-10) var(--wa-color-indigo-gte-60), white);--wa-color-purple-on:color-mix(in oklab, var(--wa-color-purple-10) var(--wa-color-purple-gte-60), white);--wa-color-pink-on:color-mix(in oklab, var(--wa-color-pink-10) var(--wa-color-pink-gte-60), white);--wa-color-gray-on:color-mix(in oklab, var(--wa-color-gray-10) var(--wa-color-gray-gte-60), white)}@media (prefers-reduced-motion:no-preference){.app-topbar,.app-sidenav,.app-bottombar,.app-shell :where(.card,.glass,.modal,.modal-content,.signin-card){transition:background-color .22s,color .22s,border-color .22s,box-shadow .22s}}@keyframes gradientShift{0%,to{background-position:0%}50%{background-position:100%}}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-5px)}60%{transform:translateY(-3px)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.api-down-banner{animation:none}.app-shell *,.app-shell :before,.app-shell :after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.app-shell .image-quest-option,.app-shell .sound-pop-bubble{will-change:auto;transition:none}.skill-node-current .skill-node-btn,.nav-pill,.streak-milestone,.streak-milestone-flame,.goal-ring.goal-ring-levelup{animation:none!important}.tav .tav-body,.tav-think circle,.tav-sparkle,.tav .tav-halo-outer,.tav .tav-halo-ring,.tav .tav-spark,.tav .tav-mouth-wrap{animation:none!important;transform:none!important}.dock-cta-aura,.orb-ring,.orb-bg,.live-dot,.dot-pulse,.loader-orb,[class*=cinemaReady],[class*=auroraFloat],[class*=bargeinFlash]{animation:none!important}.app-shell .app-bottombar-2026{transition:none}.app-shell .app-bottombar-2026 .bb-fab-glow{opacity:.6;animation:none}.app-shell .blob-shape,.app-shell .gradient-mesh .blob-shape{animation:none!important}.app-shell .home-shell-v2 :where(.loop-cell,.home-card):hover{transform:none!important}.bubble-thinking-dots span{opacity:.7;animation:none}.bubble.bubble-fresh,.ui-ripple[data-ripple="1"]:after{animation:none!important}.bubble.bubble-fresh{opacity:1!important;transform:none!important}.ui-magnetic{translate:0!important}.ui-tilt{transform:none!important}body.app-shell .motion-rise{opacity:1!important;will-change:auto!important;transition-duration:1ms!important;transition-delay:0s!important;animation:none!important;transform:none!important}body.app-shell :where(.btn-primary,.btn-next-primary,.conv-list-new,.send-btn,.chat-switch-voice-fab,.dock-cta,.bb-fab,.loop-vocab-link.is-due,.skills-coldstart-cta):before{display:none}body.app-shell .talk-shell :where(.cinema-rim,.cinema-listening-ring,.cinema-waveform,.status-dot){animation:none!important}body.app-shell :where(.home-greeting,.home-next,.home-card,.home-skills,.home-tree,.progress-grid .card,.you-tab){transition-duration:1ms;animation-duration:1ms}}@keyframes slideInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.app-shell{--app-topbar-h:calc(58px + env(safe-area-inset-top,0px));--bg:var(--legacy-color-0a0e27);--bg-1:var(--legacy-color-111634);--bg-2:var(--legacy-color-1a2150);--bg-3:var(--legacy-color-232c66);--brand-1:var(--legacy-color-667eea);--brand-2:var(--legacy-color-764ba2);--brand-3:var(--legacy-color-4cc9f0);--accent-1:var(--legacy-color-f59e0b);--accent-2:var(--legacy-color-fbbf24);--warm:var(--legacy-color-f43f5e);--good:var(--legacy-color-22c55e);--text-1:var(--legacy-color-f8fafc);--text-2:var(--legacy-color-cbd5e1);--text-3:var(--legacy-color-94a3b8);--text-muted:var(--legacy-color-94a3b8);--app-action-gradient:linear-gradient(135deg, var(--legacy-color-3657d8) 0%, var(--legacy-color-0e7490) 48%, var(--legacy-color-be185d) 100%);--user-bubble:var(--app-action-gradient);--tutor-bubble:#ffffff0f;--glass-bg:#ffffff0f;--glass-stroke:1px solid #ffffff1a;--glass-blur:saturate(140%) blur(20px);--focus-ring:0 0 0 3px #667eea8c;--neural-glow:0 0 0 1px #667eea4d, 0 0 32px #667eea59, 0 0 80px #764ba240;--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-6:24px;--s-8:32px;--s-12:48px;--s-16:64px;--r-1:8px;--r-2:12px;--r-3:16px;--r-4:24px;--r-pill:9999px;--ease:cubic-bezier(.22, 1, .36, 1);--t-fast:.18s var(--ease);--t-med:.28s var(--ease);--t-slow:.48s var(--ease);background:var(--bg);color:var(--text-1);font-family:var(--font-body);-webkit-font-smoothing:antialiased;min-height:100vh;grid-template-columns:240px minmax(0,1fr);grid-template-rows:var(--app-topbar-h) 1fr auto;grid-template-areas:"topbar topbar""sidenav main""sidenav main";min-height:100dvh;margin:0;display:grid}.app-shell ::-webkit-scrollbar{width:6px;height:6px}.app-shell ::-webkit-scrollbar-track{background:0 0}.app-shell ::-webkit-scrollbar-thumb{background:#ffffff1f;border-radius:3px}.app-shell ::-webkit-scrollbar-thumb:hover{background:#ffffff38}html[data-theme=light] .app-shell{scrollbar-color:#0f172a26 transparent}html[data-theme=light] .app-shell ::-webkit-scrollbar-thumb{background:#0f172a26}html[data-theme=light] .app-shell ::-webkit-scrollbar-thumb:hover{background:#0f172a47}html[data-theme=light] .app-shell{--bg:var(--legacy-color-f8fafc);--bg-1:var(--legacy-color-ffffff);--bg-2:var(--legacy-color-f1f5f9);--bg-3:var(--legacy-color-e2e8f0);--text-1:var(--legacy-color-0f172a);--text-2:var(--legacy-color-334155);--text-3:var(--legacy-color-64748b);--glass-bg:#ffffffb3;--glass-stroke:1px solid #0f172a0f;--tutor-bubble:#0f172a0d;--app-chrome-bg:#ffffffc7;--app-chrome-bg-strong:#ffffffeb;--app-chrome-bg-soft:#f8fafc99;--app-chrome-cutout:#fffffff2;--app-chrome-hover:#0f172a0d;--app-chrome-border:#0f172a14}:root .app-shell{--app-chrome-bg:#0a0e2799;--app-chrome-bg-strong:#0a0e27d9;--app-chrome-bg-soft:#0a0e2766;--app-chrome-cutout:#0a0e27d9;--app-chrome-hover:#ffffff0f;--app-chrome-border:#ffffff14}.app-shell .skip-link{top:-100px;background:var(--public-action-bg,var(--legacy-color-3657d8));color:var(--text-on-accent);z-index:var(--z-toast,2000);border-radius:8px;padding:8px 12px;position:absolute;inset-inline-start:8px}.app-shell .skip-link:focus{top:8px}.app-shell .gradient-mesh{z-index:0;pointer-events:none;position:fixed;inset:0;overflow:hidden}.app-shell .blob-shape{filter:blur(80px);opacity:.45;mix-blend-mode:screen;border-radius:50% 60% 40%/60% 40%;width:480px;height:480px;position:absolute}html[data-theme=light] .app-shell .blob-shape{opacity:.28;mix-blend-mode:multiply}.app-shell .blob-1{background:radial-gradient(circle, var(--legacy-color-667eea), transparent 70%);top:-120px;animation:22s ease-in-out infinite appBlob;inset-inline-start:-120px}.app-shell .blob-2{background:radial-gradient(circle, var(--legacy-color-764ba2), transparent 70%);inset-inline-end:-160px;animation:28s ease-in-out infinite reverse appBlob;top:30%}.app-shell .blob-3{background:radial-gradient(circle, var(--legacy-color-4cc9f0), transparent 70%);inset-inline-start:25%;animation:35s ease-in-out infinite appBlob;bottom:-180px}@keyframes appBlob{0%,to{transform:translate(0)scale(1)}50%{transform:translate(40px,-30px)scale(1.1)}}.app-shell .app-topbar{z-index:var(--z-sticky,50);padding-top:max(env(safe-area-inset-top), 0px);padding-bottom:0;background:var(--app-chrome-bg,#0a0e2799);-webkit-backdrop-filter:var(--glass-blur);border-bottom:var(--glass-stroke);grid-area:topbar;justify-content:space-between;align-items:center;padding-inline-start:max(env(safe-area-inset-left), var(--s-6));padding-inline-end:max(env(safe-area-inset-right), var(--s-6));display:flex;position:sticky;top:0}.app-shell .app-brand{align-items:center;gap:var(--s-2);color:var(--text-1);font-family:var(--font-display);transition:transform var(--t-fast), background var(--t-fast);border-radius:12px;padding:4px 6px;font-size:1.125rem;font-weight:800;text-decoration:none;display:inline-flex}.app-shell .app-brand-logo{width:118px;max-width:min(34vw,118px);height:auto}.app-shell .app-brand:hover{background:#ffffff0a}.app-shell .app-brand:active{transform:scale(.98)}.app-shell .app-brand:focus-visible{box-shadow:var(--focus-ring);outline:none}.app-shell .topbar-actions{align-items:center;gap:var(--s-3);display:flex}.app-shell .icon-btn{min-width:44px;min-height:44px;padding:0 var(--s-3);border-radius:var(--r-pill);color:var(--text-1);cursor:pointer;transition:background var(--t-fast), transform var(--t-fast);background:#ffffff0a;border:1px solid #0000;justify-content:center;align-items:center;display:inline-flex}.app-shell .icon-btn:hover{background:#ffffff1a}.app-shell .icon-btn:active{transform:scale(.96)}.app-shell .icon-btn:focus-visible{box-shadow:var(--focus-ring);outline:none}.app-shell .user-chip{align-items:center;gap:var(--s-2);border-radius:var(--r-pill);background:var(--glass-bg);border:var(--glass-stroke);padding:4px 12px 4px 4px;display:flex}.app-shell .avatar{background:var(--app-action-gradient);width:32px;height:32px;color:var(--text-on-accent);border-radius:50%;justify-content:center;align-items:center;font-weight:700;display:inline-flex}.app-shell .avatar-lg{width:56px;height:56px;font-size:1.5rem}.app-shell .app-sidenav{top:var(--app-topbar-h);height:calc(100dvh - var(--app-topbar-h));padding:var(--s-6) var(--s-3);border-inline-end:var(--glass-stroke);background:var(--app-chrome-bg-soft,#0a0e2766);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);grid-area:sidenav;align-self:start;position:sticky}.app-shell .app-sidenav ul{gap:var(--s-1);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.app-shell .app-sidenav a{align-items:center;gap:var(--s-3);border-radius:var(--r-2);color:var(--text-2);transition:background var(--t-fast), color var(--t-fast);padding:12px 14px;font-weight:500;text-decoration:none;display:flex}.app-shell .app-sidenav a:hover{background:var(--app-chrome-hover,#ffffff0f);color:var(--text-1)}.app-shell .app-sidenav a.active{color:var(--text-1);background:linear-gradient(135deg,#667eea33,#764ba233);box-shadow:inset 0 0 0 1px #667eea4d}.app-shell .app-sidenav i{text-align:center;width:20px}.app-shell .app-bottombar{grid-area:unset;bottom:0;z-index:var(--z-overlay,60);padding-top:6px;padding-bottom:calc(6px + env(safe-area-inset-bottom));background:var(--app-chrome-bg-strong,#0a0e27d9);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border-top:var(--glass-stroke);grid-template-columns:repeat(5,1fr);gap:2px;padding-inline-start:max(4px, env(safe-area-inset-left));padding-inline-end:max(4px, env(safe-area-inset-right));display:none;position:fixed;inset-inline:0}.app-shell .app-bottombar a{min-height:56px;color:var(--text-3);flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:8px 2px;font-size:.7rem;font-weight:600;text-decoration:none;display:flex}.app-shell .app-bottombar a.active{color:var(--text-1)}.app-shell .app-bottombar a.active i{background:linear-gradient(135deg, var(--brand-1), var(--brand-2));color:#0000;-webkit-background-clip:text;background-clip:text}.app-shell .app-bottombar i{font-size:1.125rem}.app-shell .app-main{min-height:calc(100dvh - var(--app-topbar-h));padding:var(--s-6);z-index:1;grid-area:main;min-width:0;position:relative}.app-shell .app-main:focus{outline:none}.app-shell .view{animation:viewFadeIn var(--t-med)}@keyframes viewFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.app-shell .glass{background:var(--glass-bg);border:var(--glass-stroke);-webkit-backdrop-filter:var(--glass-blur);border-radius:var(--r-3);box-shadow:var(--depth-1)}@supports not ((-webkit-backdrop-filter:blur(20px)) or (backdrop-filter:blur(20px))){.app-shell .glass{background:#141831eb}:root[data-theme=light] .app-shell .glass{background:#fffffff0}}:root[data-theme=light] .app-shell .glass{background:#ffffffb8;border-color:#0f172a14}.app-shell .muted{color:var(--text-3)}.app-shell .btn{justify-content:center;align-items:center;gap:var(--s-2);border-radius:var(--r-pill);cursor:pointer;min-height:44px;transition:transform var(--t-fast), box-shadow var(--t-fast), background var(--t-fast), opacity var(--t-fast), color var(--t-fast);border:1px solid #0000;padding:10px 18px;font-size:.95rem;font-weight:600;text-decoration:none;display:inline-flex}.app-shell .btn:focus-visible{box-shadow:var(--focus-ring);outline:none}.app-shell .btn-primary{background:var(--app-action-gradient);color:var(--text-on-accent);box-shadow:0 8px 24px -8px #667eeaa6}.app-shell .btn-primary:hover{transform:translateY(-1px);box-shadow:0 12px 32px -8px #667eeacc}.app-shell .btn-primary:disabled{opacity:.5;cursor:not-allowed;transform:none}.app-shell .btn-ghost{color:var(--text-1);background:#ffffff0f;border-color:#ffffff1a}.app-shell .btn-ghost:hover{background:#ffffff1f}.app-shell .btn-danger{color:var(--legacy-color-fda4af);background:#f43f5e1f;border-color:#f43f5e59}.app-shell .btn-danger:hover{background:#f43f5e38}.app-shell .btn-sm{min-height:36px;padding:6px 14px;font-size:.85rem}.app-shell .btn-google{background:var(--legacy-color-fff);color:var(--legacy-color-1f1f1f);border-color:#3c404340}.app-shell .btn-google:hover{background:var(--legacy-color-f6f8fa);transform:translateY(-1px);box-shadow:0 8px 22px -10px #00000073}.app-shell .btn-google:disabled{opacity:.55;cursor:not-allowed;transform:none}.app-shell .btn-google .google-icon{flex:0 0 18px}.app-shell .link-google-cta{align-items:center;gap:var(--s-3);padding:var(--s-3);margin-bottom:var(--s-3);border-radius:var(--r-3);background:#ffffff0a;border:1px solid #ffffff1a;display:flex}.app-shell .link-google-cta .link-google-text{flex:1;min-width:0}.app-shell .link-google-cta h3{margin:0 0 4px;font-size:1rem}.app-shell .link-google-cta p{margin:0;font-size:.85rem}.app-shell .link-google-linked{align-items:center;gap:var(--s-2);padding:var(--s-2) var(--s-3);margin-bottom:var(--s-3);color:var(--text-2);font-size:.9rem;display:flex}.app-shell .link-google-linked .google-icon{flex:0 0 18px}.app-shell .link-btn{color:var(--brand-1,var(--primary));cursor:pointer;font:inherit;text-underline-offset:2px;background:0 0;border:0;padding:0;text-decoration:underline}.app-shell .link-btn:hover{color:var(--brand-2,var(--primary-light))}[data-theme=light] .app-shell .link-btn{color:var(--primary-dark,var(--legacy-color-3a0ca3))}[data-theme=light] .app-shell .link-btn:hover{color:var(--primary,var(--legacy-color-4361ee))}@keyframes mirrorPulse{0%,to{box-shadow:0 0 #f43f5e80}50%{box-shadow:0 0 0 10px #f43f5e00}}.app-shell .loader-orb{background:radial-gradient(circle, var(--brand-1), var(--brand-2) 60%, transparent 80%);width:96px;height:96px;box-shadow:var(--neural-glow);border-radius:50%;margin:80px auto 24px;animation:2.4s ease-in-out infinite orbBreath}.app-shell .loader-text{text-align:center;color:var(--text-2)}@keyframes orbBreath{0%,to{opacity:.85;transform:scale(.92)}50%{opacity:1;transform:scale(1.05)}}.app-shell .signin-card{max-width:460px;padding:var(--s-8);text-align:center;margin:80px auto}.app-shell .signin-card h1{font-family:var(--font-display);margin:0 0 var(--s-3);font-size:1.75rem}.app-shell .signin-card p{color:var(--text-3);margin:0 0 var(--s-6)}#toast-root{top:calc(56px + var(--s-3));z-index:var(--z-toast,2000);pointer-events:none;flex-direction:column;gap:8px;display:flex;position:fixed;inset-inline-end:24px}body:has(.api-down-banner:not([hidden])) #toast-root{top:calc(56px + 56px + var(--s-3))}.toast{pointer-events:auto;min-width:240px;color:var(--legacy-color-f8fafc);opacity:0;transition:transform .25s var(--ease), opacity .2s;background:#141831f2;border:1px solid #ffffff14;border-radius:12px;align-items:center;gap:10px;padding:12px 16px;display:flex;transform:translate(120%);box-shadow:0 16px 48px #0006}.toast-in{opacity:1;transform:translate(0)}.toast-out{opacity:0}.api-down-banner{margin:0 0 var(--s-3);border-radius:var(--r-2);color:var(--legacy-color-fef2f2);background:linear-gradient(135deg,#f43f5e2e,#f59e0b2e);border:1px solid #f43f5e73;align-items:center;gap:12px;padding:12px 18px;font-size:.9375rem;animation:.32s cubic-bezier(.22,1,.36,1) bannerSlideIn;display:flex;box-shadow:0 8px 32px #f43f5e2e}.api-down-banner[hidden]{display:none}.api-down-icon{width:28px;height:28px;color:var(--legacy-color-fda4af);background:#f43f5e40;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.api-down-text{flex:1;min-width:0;line-height:1.4}.api-down-retry{appearance:none;color:var(--text-on-accent);font:inherit;cursor:pointer;background:#ffffff14;border:1px solid #ffffff40;border-radius:999px;flex-shrink:0;min-height:44px;padding:10px 18px;font-weight:600;transition:background .18s,border-color .18s,transform .18s}.api-down-retry:hover:not(:disabled){background:#ffffff29;border-color:#fff6}.api-down-retry:focus-visible{outline:none;box-shadow:0 0 0 3px #ffffff73}.api-down-retry:disabled{opacity:.6;cursor:wait}:root[data-theme=light] .api-down-banner{color:var(--legacy-color-7f1d1d);background:linear-gradient(135deg,#f43f5e1a,#f59e0b1a)}:root[data-theme=light] .api-down-icon{color:var(--legacy-color-b91c1c);background:#f43f5e26}:root[data-theme=light] .api-down-retry{color:var(--legacy-color-7f1d1d);background:#fff9;border-color:#7f1d1d4d}:root[data-theme=light] .api-down-retry:hover:not(:disabled){background:var(--legacy-color-fff);border-color:#7f1d1d80}@keyframes bannerSlideIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@media (max-width:640px){.api-down-banner{grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:8px;padding:8px 10px;font-size:.82rem;display:grid}.api-down-icon{width:24px;height:24px}.api-down-text{flex-basis:auto;line-height:1.3}.api-down-retry{min-height:36px;margin-inline-start:0;padding:6px 10px;font-size:.82rem}body.app-shell .api-down-banner,.app-shell .api-down-banner{border-radius:12px;grid-template-columns:20px minmax(0,1fr) auto;gap:6px;padding:6px 8px;font-size:.76rem}body.app-shell .api-down-icon,.app-shell .api-down-icon{width:20px;height:20px;font-size:.72rem}body.app-shell .api-down-text,.app-shell .api-down-text{-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.18;display:-webkit-box;overflow:hidden}body.app-shell .api-down-retry,.app-shell .api-down-retry{min-width:44px;min-height:44px;padding:6px 10px;font-size:.76rem}}@media (orientation:landscape) and (max-height:500px){body.app-shell .api-down-banner,.app-shell .api-down-banner{padding-block:6px;font-size:.78rem}}.app-shell .error-state{align-items:center;gap:var(--s-3);padding:var(--s-4);border-radius:var(--r-3);color:var(--text-2);margin:var(--s-4) 0;background:#f43f5e14;border:1px solid #f43f5e40;display:flex}.app-shell .error-state-icon{width:36px;height:36px;color:var(--legacy-color-fca5a5);background:#f43f5e2e;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.95rem;display:inline-flex}.app-shell .error-state-body{flex:1;min-width:0}.app-shell .error-state-title{color:var(--text-1);font-size:.95rem;display:block}.app-shell .error-state-msg{color:var(--text-3);margin:4px 0 0;font-size:.875rem}.app-shell .error-state-retry{flex-shrink:0}:root[data-theme=light] .app-shell .error-state{color:var(--text);background:#f43f5e0f}:root[data-theme=light] .app-shell .error-state-icon{color:var(--legacy-color-be123c)}.app-shell .empty-state{align-items:center;gap:var(--s-3);padding:var(--s-4);border-radius:var(--r-3);color:var(--text-2);margin:var(--s-4) 0;background:#4ade8014;border:1px dashed #4ade804d;display:flex}.app-shell .empty-state-icon{width:36px;height:36px;color:var(--legacy-color-86efac);background:#4ade802e;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.95rem;display:inline-flex}.app-shell .empty-state-body{flex:1;min-width:0}.app-shell .empty-state-title{color:var(--text-1);font-size:.95rem;display:block}.app-shell .empty-state-msg{color:var(--text-3);margin:4px 0 0;font-size:.875rem}.app-shell .empty-state-cta{flex-shrink:0}:root[data-theme=light] .app-shell .empty-state{color:var(--text);background:#4ade800f}:root[data-theme=light] .app-shell .empty-state-icon{color:var(--legacy-color-15803d)}.app-shell .router-error{max-width:480px;margin:var(--s-12) auto;padding:var(--s-8);border-radius:var(--r-3);text-align:center;background:#f43f5e14;border:1px solid #f43f5e40}.app-shell .router-error-icon{width:56px;height:56px;margin:0 auto var(--s-3);color:var(--legacy-color-fca5a5);background:#f43f5e2e;border-radius:50%;justify-content:center;align-items:center;font-size:1.5rem;display:inline-flex}.app-shell .router-error-title{margin:0 0 var(--s-2);font-size:1.15rem}.app-shell .router-error-msg{margin:0 0 var(--s-2);color:var(--text-3)}.app-shell .router-error-code{margin:0 0 var(--s-4)}.app-shell .router-error-actions{gap:var(--s-3);flex-wrap:wrap;justify-content:center;display:flex}.modal{background:0 0;border:0;max-width:92vw;padding:0}dialog.modal{width:fit-content;max-width:min(92vw,520px);height:fit-content;max-height:min(92dvh,760px);color:var(--text-1,var(--text));-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;margin:auto;animation:none;display:none;position:fixed;inset:0;overflow:visible}dialog.modal[open]{display:block}dialog.modal.modal-placement{max-width:min(96vw,680px)}.modal::backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0a0e27a6}[data-theme=light] .modal::backdrop{background:#0f172a73}dialog.modal .modal-form{box-sizing:border-box;overscroll-behavior:contain;width:min(100%,480px);min-width:min(320px,100vw - 32px);max-width:min(480px,100vw - 32px);max-height:calc(92dvh - 24px);padding:var(--s-6);position:relative;overflow-y:auto}dialog.modal.modal-placement .modal-form{width:min(640px,100vw - 24px);max-width:min(640px,100vw - 24px)}dialog.modal .modal-body p,dialog.modal .modal-body h3{text-align:inherit;color:inherit}dialog.modal .modal-body p{margin-bottom:0}.modal .modal-title{margin:0 0 var(--s-3);font-family:var(--font-display);padding-inline-end:44px;font-size:1.25rem}.modal .modal-body{color:var(--text-2);margin-bottom:var(--s-6)}.modal .modal-actions{gap:var(--s-3);flex-wrap:wrap;justify-content:end;align-items:stretch;display:flex}.modal .modal-actions .btn{white-space:normal;text-align:center;flex:116px;justify-content:center;min-width:min(100%,116px);max-width:100%;min-height:44px;line-height:1.2}.modal .modal-close{top:8px;min-width:44px;min-height:44px;color:var(--text-2,var(--legacy-color-cbd5e1));cursor:pointer;background:#ffffff0f;border:0;border-radius:50%;justify-content:center;align-items:center;font-size:1.5rem;line-height:1;transition:background .15s,color .15s,transform .15s;display:inline-flex;position:absolute;inset-inline-end:8px}.modal .modal-close:hover,.modal .modal-close:focus-visible{color:var(--text-1,var(--legacy-color-f8fafc));background:#ffffff24;outline:none;transform:scale(1.06)}.modal .modal-close:focus-visible{box-shadow:0 0 0 2px var(--brand-1,var(--legacy-color-4361ee))}[data-theme=light] .modal .modal-close{color:#0f172ab3;background:#0f172a0f}[data-theme=light] .modal .modal-close:hover,[data-theme=light] .modal .modal-close:focus-visible{color:#0f172aeb;background:#0f172a1f}@media (max-width:520px){dialog.modal .modal-form{min-width:min(280px,100vw - 18px);max-width:calc(100vw - 18px);padding:clamp(18px,5vw,24px)}}@media (max-width:430px){.modal .modal-actions{grid-template-columns:minmax(0,1fr);justify-content:stretch;display:grid}.modal .modal-actions .btn{width:100%}}[data-act].is-busy,[data-act][aria-busy=true]{opacity:.55;pointer-events:none;transition:opacity .15s}.app-shell .lang-picker{gap:var(--s-3);margin-top:var(--s-4);flex-direction:column;display:flex}.app-shell .lang-picker-grid{gap:var(--s-3);grid-template-columns:repeat(auto-fill,minmax(140px,1fr));display:grid}.app-shell .lang-picker-filter{display:flex}.app-shell .lang-picker-search{border-radius:var(--r-pill);width:100%;color:var(--text-1);transition:border-color var(--t-fast), background var(--t-fast);background:#ffffff0a;border:1px solid #ffffff1f;padding:10px 14px;font-size:.95rem}.app-shell .lang-picker-search:focus-visible{background:#ffffff12;border-color:#667eea99}.app-shell .lang-picker-empty{text-align:center;padding:var(--s-3)}.app-shell .lang-tile{padding:var(--s-4);border-radius:var(--r-2);color:var(--text-1);cursor:pointer;transition:transform var(--t-fast), background var(--t-fast), border-color var(--t-fast);background:#ffffff0a;border:1px solid #ffffff14;flex-direction:column;align-items:center;gap:6px;display:flex;position:relative}.app-shell .lang-tile:hover:not([disabled]){background:#ffffff1a;transform:translateY(-2px)}.app-shell .lang-tile.active{box-shadow:var(--neural-glow);background:linear-gradient(135deg,#667eea2e,#764ba22e);border-color:#667eea8c}.app-shell .lang-tile[disabled]{opacity:.35;cursor:not-allowed}.app-shell .lang-flag{font-size:1.75rem}.app-shell .lang-flag .svg-icon{width:1.25em;height:1.25em}.app-shell .lang-labels{flex-direction:column;align-items:center;gap:2px;min-width:0;display:flex}.app-shell .lang-name{font-size:.92rem;font-weight:700;line-height:1.15}.app-shell .lang-english{color:var(--text-3);font-size:.72rem;line-height:1.1}.app-shell .lang-feature-row{flex-wrap:wrap;justify-content:center;gap:4px;min-height:18px;display:flex}.app-shell .lang-feature-badge{font-size:var(--hy-type-caption-size);letter-spacing:0;text-transform:none;font-weight:700;line-height:var(--hy-type-label-leading);white-space:normal;overflow-wrap:anywhere;border-radius:999px;padding:2px 6px}.app-shell .lang-feature-voice{background:color-mix(in srgb, var(--hy-color-success) 8%, var(--hy-color-surface));color:var(--hy-color-success);border:1px solid color-mix(in srgb, var(--hy-color-success) 35%, var(--hy-color-border))}.app-shell .lang-feature-tonal{background:color-mix(in srgb, var(--hy-color-warning) 8%, var(--hy-color-surface));color:var(--hy-color-warning);border:1px solid color-mix(in srgb, var(--hy-color-warning) 35%, var(--hy-color-border))}.app-shell .lang-feature-course{background:color-mix(in srgb, var(--hy-color-brand) 8%, var(--hy-color-surface));color:var(--hy-color-brand);border:1px solid color-mix(in srgb, var(--primary) 40%, transparent)}.app-shell .lang-feature-ai{background:color-mix(in srgb, var(--secondary) 14%, transparent);color:var(--text-2);border:1px solid color-mix(in srgb, var(--secondary) 30%, transparent)}.app-shell .lang-tile.is-locked{border-color:color-mix(in srgb, var(--legacy-color-38bdf8) 34%, #ffffff14);background:linear-gradient(135deg, color-mix(in srgb, var(--legacy-color-38bdf8) 10%, transparent), transparent 68%), #ffffff0a}.app-shell .lang-feature-locked{background:color-mix(in srgb, var(--hy-color-brand) 8%, var(--hy-color-surface));color:var(--hy-color-brand);border:1px solid #38bdf852;align-items:center;gap:4px;display:inline-flex}.app-shell .lang-picker-compact{z-index:15;min-width:190px;margin-top:0;position:relative}.app-shell .lang-picker-trigger{border:var(--glass-stroke);width:100%;min-height:42px;color:var(--text-1);cursor:pointer;text-align:start;background:#ffffff0f;border-radius:12px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;padding:6px 10px;display:grid}.app-shell .lang-picker-trigger .lang-flag{font-size:1.15rem}.app-shell .lang-picker-trigger .lang-flag .svg-icon{width:1.25em;height:1.25em}.app-shell .lang-trigger-copy{flex-direction:column;gap:1px;min-width:0;display:flex}.app-shell .lang-trigger-copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:.86rem;line-height:1.1;overflow:hidden}.app-shell .lang-trigger-kicker{color:var(--text-3);text-transform:uppercase;letter-spacing:0;font-size:.62rem;font-weight:800;line-height:1}.app-shell .lang-picker-panel{top:calc(100% + 8px);background:color-mix(in srgb, var(--bg,var(--legacy-color-0c1424)) 92%, transparent);border:var(--glass-stroke);border-radius:16px;width:min(92vw,420px);max-height:min(70vh,520px);padding:12px;position:absolute;inset-inline-end:0;overflow:auto;box-shadow:0 24px 70px -30px #000000a6}.app-shell .lang-picker-panel[hidden]{display:none}.app-shell .lang-picker-panel .lang-picker-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.app-shell .lang-picker-panel .lang-tile{min-height:108px}.app-shell .chip-group{gap:var(--s-2);margin-top:var(--s-4);flex-wrap:wrap;display:flex}.app-shell .chip{border-radius:var(--r-pill);color:var(--text-1);cursor:pointer;transition:background var(--t-fast), transform var(--t-fast);background:#ffffff0d;border:1px solid #ffffff1a;align-items:center;gap:8px;padding:10px 16px;display:inline-flex}.app-shell .chip.active{background:linear-gradient(135deg,#667eea4d,#764ba24d);border-color:#667eea99}.app-shell .hours-slider{align-items:center;gap:var(--s-4);margin-top:var(--s-4);display:flex}.app-shell .hours-slider input{accent-color:var(--brand-1);flex:1}.app-shell .hours-slider output{font-variant-numeric:tabular-nums;min-width:40px;font-weight:700}.app-shell .generating-orb{width:220px;height:220px;margin:var(--s-6) auto;background:radial-gradient(circle, var(--brand-1), var(--brand-2) 60%, transparent 80%);box-shadow:var(--neural-glow);border-radius:50%;animation:1.8s ease-in-out infinite orbBreath}.app-shell .generating-log{border-radius:var(--r-2);padding:var(--s-3);white-space:pre-wrap;max-height:180px;color:var(--text-2);background:#00000040;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,monospace;overflow:auto}.app-shell .chip-btn{border-radius:var(--r-pill);border:var(--glass-stroke);color:var(--text-1);cursor:pointer;background:#ffffff0f;align-items:center;gap:6px;padding:6px 12px;font-size:.85rem;display:inline-flex}.app-shell .bubble{gap:var(--s-3);max-width:85%;animation:bubbleIn2026 var(--t-med);align-items:flex-start;display:flex}@media (max-width:480px){.app-shell .bubble{gap:var(--s-2);max-width:92%}}.app-shell .bubble-user{align-self:flex-end}.app-shell .bubble-assistant{align-self:flex-start}.app-shell .avatar-tutor{background:linear-gradient(135deg, var(--brand-1), var(--brand-2));width:36px;height:36px;color:var(--text-on-accent);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.app-shell .bubble-body{border-radius:18px;padding:12px 16px;font-size:.95rem;line-height:1.55}.app-shell .bubble-body.glass{border-top-left-radius:6px}.app-shell .bubble-user .bubble-body{background:var(--user-bubble);color:var(--text-on-accent);border-bottom-right-radius:6px}.app-shell .bubble-content :is(p,blockquote,ul){margin:0 0 8px}.app-shell .bubble-content :is(p,blockquote,ul):last-child{margin-bottom:0}.app-shell .bubble-content code{background:#00000040;border-radius:4px;padding:1px 5px;font-size:.85em}.app-shell .bubble-content blockquote{border-inline-start:2px solid var(--brand-1);color:var(--text-2);padding-inline-start:10px}.app-shell .bubble-streaming .bubble-content:after{content:"▍";color:var(--brand-3);margin-inline-start:2px;animation:.9s step-end infinite caret}@keyframes caret{50%{opacity:0}}.app-shell .bubble-footer{justify-content:space-between;gap:var(--s-3);align-items:center;margin-top:8px;display:flex}.app-shell .bubble-meta{color:var(--text-3);font-size:.72rem}.app-shell .bubble-actions button{color:var(--text-3);cursor:pointer;background:0 0;border:0;border-radius:50%;width:44px;min-width:44px;height:44px;min-height:44px;padding:0}.app-shell .bubble-actions button:hover{color:var(--text-1);background:#ffffff14}.app-shell .quick-actions{gap:6px;padding-bottom:4px;display:flex;overflow-x:auto}.app-shell .qa-chip{white-space:nowrap;border-radius:var(--r-pill);border:var(--glass-stroke);color:var(--text-1);cursor:pointer;background:#ffffff0d;padding:6px 12px;font-size:.78rem}.app-shell .send-btn,.app-shell .mic-btn{cursor:pointer;width:44px;height:44px;color:var(--text-on-accent);transition:transform var(--t-fast);border:0;border-radius:50%;justify-content:center;align-items:center;display:flex}.app-shell .send-btn{background:var(--app-action-gradient)}.app-shell .mic-btn{background:#ffffff14}.app-shell .mic-btn.mic-active{background:linear-gradient(135deg, var(--good), var(--legacy-color-16a34a));animation:1.4s ease-in-out infinite pulse}@keyframes pulse{0%,to{box-shadow:0 0 #22c55e80}50%{box-shadow:0 0 0 14px #22c55e00}}.app-shell .orb{aspect-ratio:1;width:min(60vw,320px);margin-bottom:var(--s-6);filter:drop-shadow(0 0 60px #667eea80);position:relative}.app-shell .orb-svg{width:100%;height:100%}.app-shell .orb[data-state=idle] .orb-core{animation:4s ease-in-out infinite orbBreath}.app-shell .orb[data-state=thinking] .orb-core{animation:.8s ease-in-out infinite orbBreath}.app-shell .orb-status{text-align:center;color:var(--text-2);min-height:24px;display:block}.app-shell .dock-btn{cursor:pointer;width:56px;height:56px;color:var(--text-1);background:#ffffff0f;border:0;border-radius:50%;justify-content:center;align-items:center;display:flex}.app-shell .dock-end{color:var(--legacy-color-fda4af);background:#f43f5e2e}.app-shell .dock-end:hover{background:#f43f5e47}.app-shell .plan-shell{gap:var(--s-4);flex-direction:column;max-width:1040px;margin:0 auto;display:flex}.app-shell .plan-header{align-items:center;gap:var(--s-4);padding:var(--s-6);display:flex}.app-shell .plan-flag{font-size:2.5rem}.app-shell .plan-flag .svg-icon{width:1.15em;height:1.15em}.app-shell .plan-meta{flex:1}.app-shell .plan-meta h1{font-family:var(--font-display);margin:0;font-size:1.5rem}.app-shell .plan-completion{text-align:center}.app-shell .plan-completion strong{color:var(--brand-3);font-size:1.5rem;display:block}.app-shell .plan-empty{text-align:center;padding:var(--s-12);color:var(--text-2)}.app-shell .plan-units{gap:var(--s-3);flex-direction:column;display:flex}.app-shell .plan-unit{background:var(--glass-bg);border:var(--glass-stroke);border-radius:var(--r-3);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);padding:var(--s-3) var(--s-4)}.app-shell .plan-unit>summary{cursor:pointer;align-items:center;gap:var(--s-3);padding:var(--s-3) 0;list-style:none;display:flex}.app-shell .plan-unit>summary::-webkit-details-marker{display:none}.app-shell .unit-num{background:var(--app-action-gradient);width:36px;height:36px;color:var(--text-on-accent);border-radius:12px;justify-content:center;align-items:center;font-weight:800;display:inline-flex}.app-shell .unit-title{flex:1;font-weight:700}.app-shell .unit-time{color:var(--text-3);font-size:.85rem}.app-shell .unit-desc{padding-inline-start:48px}.app-shell .streak-chip{border-radius:var(--r-pill);background:linear-gradient(135deg,#f59e0b2e,#f43f5e2e);border:1px solid #f59e0b66;align-items:center;gap:6px;padding:8px 14px;font-weight:700;display:inline-flex}.app-shell .streak-flame{font-size:1.1rem}.app-shell .level-badge{align-items:center;gap:8px;display:inline-flex}.app-shell .level-pill{border-radius:var(--r-pill);background:var(--app-action-gradient);color:var(--text-on-accent);padding:4px 12px;font-size:.85rem;font-weight:800}.app-shell .level-track{background:#ffffff14;border-radius:4px;width:120px;height:6px;overflow:hidden}.app-shell .level-fill{background:linear-gradient(90deg, var(--brand-1), var(--brand-3));transform-origin:0;width:100%;height:100%;transform:scaleX(var(--xp-progress,0));transition:transform var(--t-slow);will-change:transform}.app-shell .level-xp{color:var(--text-3);font-size:.75rem}.app-shell .card{padding:var(--s-4);gap:var(--s-3);flex-direction:column;display:flex}.app-shell .card header h2{font-family:var(--font-display);margin:0;font-size:1rem}.app-shell .card-radar,.app-shell .card-heat{grid-column:span 1}.app-shell .numbers{gap:var(--s-3);grid-template-columns:repeat(3,1fr);display:grid}.app-shell .big-num{flex-direction:column;align-items:flex-start;gap:4px;display:flex}.app-shell .big-num strong{font-family:var(--font-display);background:linear-gradient(135deg, var(--brand-1), var(--brand-2));color:#0000;-webkit-background-clip:text;background-clip:text;font-size:2rem;font-weight:800;line-height:1}.app-shell .big-num span{color:var(--text-3);text-transform:uppercase;letter-spacing:.08em;font-size:.78rem}.app-shell .sparkline{color:var(--brand-3);margin-top:4px;display:block}.app-shell .radar-chart-wrap{justify-content:center;display:flex}.app-shell .radar-chart{width:100%;max-width:240px;height:auto;color:var(--text-2)}.app-shell .radar-data{fill:#667eea4d;stroke:var(--brand-1);stroke-width:2px}.app-shell .recent-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.app-shell .recent-list li{border-bottom:1px dashed #ffffff0f;justify-content:space-between;padding:8px 0;display:flex}.app-shell .heatmap{color:var(--brand-1)}.app-shell .heatmap svg{max-width:100%;height:auto}.app-shell .heat-cell{fill:#ffffff0f}.app-shell .heat-1{fill:#667eea4d}.app-shell .heat-2{fill:#667eea8c}.app-shell .heat-3{fill:#667eeacc}.app-shell .heat-4{fill:var(--brand-1)}.app-shell .lang-row{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px;display:grid}.app-shell .theme-row{gap:var(--s-2);display:flex}.app-shell .row{justify-content:space-between;gap:var(--s-3);flex-wrap:wrap;display:flex}.app-shell .toggle-row{justify-content:space-between;align-items:center;gap:var(--s-3);padding:var(--s-2) 0;cursor:pointer;display:flex}.app-shell .toggle-row .toggle-text{flex-direction:column;gap:4px;display:flex}.app-shell .toggle-row .toggle-text strong{font-size:.95rem}.app-shell .toggle-row .toggle-text small{font-size:.8rem;line-height:1.4}.app-shell .toggle-row input[type=checkbox]{appearance:none;cursor:pointer;background:#ffffff1f;border-radius:13px;flex-shrink:0;width:44px;height:26px;transition:background .2s;position:relative}.app-shell .toggle-row input[type=checkbox]:after{content:"";top:3px;background:var(--legacy-color-fff);border-radius:50%;width:20px;height:20px;transition:transform .2s;position:absolute;inset-inline-start:3px}.app-shell .toggle-row input[type=checkbox]:checked{background:linear-gradient(135deg, var(--brand-1,var(--legacy-color-4361ee)), var(--brand-2,var(--legacy-color-4cc9f0)))}.app-shell .toggle-row input[type=checkbox]:checked:after{transform:translate(18px)}.app-shell .toggle-row input[type=checkbox]:focus-visible{outline:2px solid var(--accent,var(--legacy-color-f72585));outline-offset:2px}.app-shell .persona-row{grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px;display:grid}@media (max-width:380px){.app-shell .persona-row{grid-template-columns:repeat(auto-fill,minmax(88px,1fr))}.app-shell .persona-tile .persona-name{font-size:.78rem}}.app-shell .persona-tile{color:inherit;cursor:pointer;background:#ffffff0a;border:1px solid #ffffff14;border-radius:10px;flex-direction:column;align-items:center;gap:4px;padding:10px 8px;transition:background .15s,border-color .15s;display:flex}.app-shell .persona-tile:hover{background:#ffffff14}.app-shell .persona-tile.is-active{border-color:var(--accent,var(--legacy-color-f72585));background:linear-gradient(135deg,#f725852e,#4cc9f01f)}.app-shell .persona-tile .persona-flag{font-size:1.4rem}.app-shell .persona-tile .persona-flag .svg-icon{width:1.35em;height:1.35em}.app-shell .persona-tile .persona-name{font-size:.85rem;font-weight:600}@media (max-width:1024px){.app-shell{grid-template-columns:200px minmax(0,1fr)}}@media (min-width:1024px) and (max-width:1280px){.app-shell{grid-template-columns:220px minmax(0,1fr)}.app-shell .app-main{padding-inline-start:max(var(--s-6), calc((100% - 880px) / 2));padding-inline-end:max(var(--s-6), calc((100% - 880px) / 2))}}.app-shell.has-collapsed-sidenav,body.has-collapsed-sidenav .app-shell{grid-template-columns:64px minmax(0,1fr)}.app-shell .app-sidenav.collapsed{width:64px}.app-shell .app-sidenav.collapsed a span{display:none}.app-shell .app-sidenav.collapsed a{justify-content:center;padding-inline:0}@media (max-width:768px){.app-shell{grid-template-columns:1fr;grid-template-areas:"topbar""main";grid-template-rows:var(--app-topbar-h) 1fr;padding-bottom:calc(96px + env(safe-area-inset-bottom,0px))}.app-shell .app-sidenav{display:none}.app-shell .app-bottombar{display:grid}.app-shell .app-main{padding:var(--s-3)}.app-shell .signin-card{overflow-wrap:anywhere;width:min(100%,100vw - 24px);max-width:340px}.app-shell .signin-card h1{letter-spacing:0;max-width:16ch;margin-inline:auto;line-height:1.1}.app-shell .signin-card p{max-width:34ch;margin-inline:auto}.app-shell .signin-card .btn{white-space:normal;width:min(100%,280px);min-width:0;max-width:280px}.app-shell .orb{width:70vw;max-width:280px;margin-bottom:var(--s-4)}.app-shell .bubble{max-width:92%}#toast-root{top:70px;inset-inline:12px}.toast{min-width:0}}@media (max-width:480px){.app-shell .app-topbar{padding-inline-start:max(env(safe-area-inset-left), var(--s-3));padding-inline-end:max(env(safe-area-inset-right), var(--s-3))}.app-shell .signin-card{width:min(100%,100vw - 24px);max-width:340px;padding:var(--s-5);overflow-wrap:anywhere;margin:clamp(48px,12vh,80px) auto}.app-shell .signin-card h1{letter-spacing:0;max-width:13ch;margin-inline:auto;font-size:clamp(1.35rem,7vw,1.65rem);line-height:1.1}.app-shell .signin-card p{max-width:30ch;margin-inline:auto}.app-shell .signin-card .btn{white-space:normal;width:min(100%,280px);min-width:0;max-width:280px}.app-shell .lang-picker-grid{grid-template-columns:repeat(2,1fr)}.app-shell .numbers{grid-template-columns:1fr}}@keyframes auroraFloat{0%,to{transform:translate(0)scale(1)}33%{transform:translate(40px,-30px)scale(1.1)}66%{transform:translate(-30px,40px)scale(.95)}}@keyframes gradientFlow{0%,to{background-position:0%}50%{background-position:100%}}@keyframes orbSpin{to{transform:rotate(360deg)}}@keyframes floatY{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes typingDot{0%,60%,to{opacity:.3;transform:translateY(0)}30%{opacity:1;transform:translateY(-6px)}}@keyframes marquee{to{transform:translate(-50%)}}.goal-ring{flex:none;place-items:center;display:grid;position:relative}.goal-ring svg{width:100%;height:100%;position:absolute;inset:0}.goal-ring .goal-ring-track{stroke:var(--legacy-color-64748b)}.goal-ring .goal-ring-fill{transition:stroke-dashoffset .6s cubic-bezier(.4,0,.2,1)}.goal-ring-label{text-align:center;flex-direction:column;line-height:1;display:flex}.goal-ring-value{font-family:var(--font-display);font-size:2.4rem;font-weight:900}.goal-ring-divider{opacity:.55;margin-top:4px;font-size:.85rem}.goal-ring-unit{opacity:.6;letter-spacing:0;text-transform:uppercase;margin-top:4px;font-size:.7rem}.goal-ring-compact .goal-ring-label{display:none}.goal-ring-complete .goal-ring-fill{stroke:var(--legacy-color-4ade80)!important}.streak-cal{grid-template-columns:repeat(7,1fr);gap:4px;padding:8px 0;display:grid}.streak-cal-day{aspect-ratio:1;background:#ffffff0f;border-radius:4px}.streak-cal-day.mid{background:#4895ef80}.streak-cal-day.high{background:#f72585b3}.streak-cal-day.frozen{background:#06b6d499}.streak-cal-day.today{box-shadow:0 0 0 2px #ffd700b3}.streak-cal-day.future{opacity:.3}.badges-grid{grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:12px;display:grid}.badge-tile{text-align:center;background:#ffffff0a;border:1px solid #ffffff14;border-radius:12px;flex-direction:column;align-items:center;gap:6px;padding:14px 8px;transition:transform .15s;display:flex}.badge-tile:hover{transform:translateY(-2px)}.badge-icon{width:48px;height:48px;color:var(--legacy-color-ffd700);background:linear-gradient(135deg,#4895ef33,#f7258533);border-radius:12px;place-items:center;font-size:1.3rem;display:grid}.badge-tile.locked{opacity:.4;filter:grayscale(.6)}.badge-tile.locked .badge-icon{color:var(--legacy-color-9ca3af);background:#ffffff0f}.badge-name{font-size:.78rem;font-weight:700;line-height:1.1}.badge-date{opacity:.6;font-size:.68rem}.badge-xp{color:var(--legacy-color-ffd700);font-size:.7rem;font-weight:700}.skel{background:linear-gradient(90deg,#ffffff0a,#ffffff1a,#ffffff0a) 0 0/600px 100%;border-radius:8px;animation:1.5s linear infinite skelShimmer}.avatar-picker{gap:8px;padding:4px;display:flex;overflow-x:auto}.avatar-tile{cursor:pointer;color:inherit;background:0 0;border:1px solid #ffffff1a;border-radius:10px;flex-shrink:0;align-items:center;gap:8px;min-height:44px;padding:8px 10px;transition:background .15s,border-color .15s;display:flex}.avatar-tile.active{background:#4895ef1f;border-color:#4895ef99}.avatar-tile:hover{background:#ffffff0f}.avatar-icon{border-radius:8px;place-items:center;width:28px;height:28px;font-size:1rem;display:grid}.avatar-name{font-size:.85rem;font-weight:600}.waveform{align-items:flex-end;gap:3px;height:60px;padding:0 12px;display:inline-flex}.waveform-bar{background:linear-gradient(180deg, var(--legacy-color-4895ef), var(--legacy-color-f72585));border-radius:2px;width:4px;height:4px;transition:height 50ms;display:inline-block}@keyframes bargeinFlash{0%{filter:brightness(1.4)saturate(1.6)}to{filter:brightness()saturate()}}.pron-score-badge{background:#ffffff0f;border-radius:999px;align-items:center;gap:6px;margin-inline-start:8px;padding:4px 8px;font-size:.78rem;font-weight:600;display:inline-flex}.pron-tip{opacity:.75;margin-inline-start:4px;font-size:.7rem;display:block}.session-summary{text-align:center;border-radius:18px;max-width:480px;margin:24px auto;padding:24px}.session-summary-head{flex-direction:column;align-items:center;gap:8px;margin-bottom:18px;display:flex}.session-summary-head i{color:var(--legacy-color-4ade80);font-size:2rem}.session-summary-head h2{margin:0;font-size:1.4rem;font-weight:800}.session-summary-stats{grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:16px;display:grid}@media (min-width:480px){.session-summary-stats{grid-template-columns:repeat(5,1fr)}}.ss-stat{background:#ffffff0a;border-radius:10px;flex-direction:column;padding:12px 8px;display:flex}.ss-stat strong{font-size:1.3rem;font-weight:800}.ss-stat span{opacity:.65;font-size:.7rem}.ss-xp strong{color:var(--legacy-color-ffd700)}.session-summary-tip{opacity:.8;margin:0 0 18px}.session-summary-actions{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.word-token{cursor:pointer;border-radius:3px;padding:0 1px;transition:background .12s}.word-token:hover{background:#4895ef2e}.word-token:focus-visible{outline:3px solid var(--hy-focus-color);outline-offset:2px;border-radius:3px}.word-popover{z-index:var(--z-overlay,60);background:var(--bg,var(--legacy-color-0f172a));border:1px solid #ffffff1f;border-radius:14px;padding:14px 16px;font-size:.9rem;position:absolute;box-shadow:0 16px 48px -8px #00000080}:root[data-theme=light] .word-popover{background:var(--legacy-color-fff);box-shadow:0 16px 48px -8px #0000002e}.word-popover-arrow{top:-6px;background:inherit;border-inline-start:1px solid #ffffff1f;border-top:1px solid #ffffff1f;width:12px;height:12px;position:absolute;inset-inline-start:50%;transform:translate(-50%)rotate(45deg)}.word-popover-head{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.word-popover-lemma{font-size:1.1rem;font-weight:700}.word-popover-close{color:inherit;cursor:pointer;opacity:.6;background:0 0;border:0;font-size:1.2rem;line-height:1}.word-popover-translation{margin:0 0 6px;font-weight:600}.word-popover-pos{opacity:.7;margin:0 0 6px;font-size:.8rem}.word-popover-examples{opacity:.85;margin:6px 0;padding-inline-start:18px;font-size:.85rem}.word-popover-examples li{margin:3px 0}.word-popover-note{opacity:.7;margin:6px 0 0;font-size:.8rem;font-style:italic}.word-popover-actions{border-top:1px solid #ffffff14;gap:8px;margin-top:10px;padding-top:10px;display:flex}.btn-sm{padding:6px 10px;font-size:.8rem}.word-popover-loading{opacity:.7;align-items:center;gap:8px;font-size:.85rem;display:flex}.dot-pulse{background:var(--legacy-color-4895ef);border-radius:50%;width:8px;height:8px;animation:1.2s ease-in-out infinite dotPulseScale}@keyframes dotPulseScale{0%,to{opacity:.3;transform:scale(.8)}50%{opacity:1;transform:scale(1.3)}}@keyframes slideUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.grammar-correction{border-inline-start:3px solid var(--warning);background:#f59e0b1f;border-radius:6px;flex-wrap:wrap;align-items:center;gap:6px;margin:8px 0;padding:6px 10px;font-size:.85rem;display:inline-flex}.grammar-correction i{color:var(--warning)}.grammar-del{opacity:.7;text-decoration:line-through}.grammar-arrow{opacity:.5}.grammar-ins{color:var(--legacy-color-4ade80);font-weight:600}.pitch-contour{background:#4361ee0f;border:1px solid #4361ee24;border-radius:8px;margin:12px 0 0;padding:12px 14px 10px}.pitch-contour-loading,.pitch-contour-empty{color:var(--text-2);font-size:.85rem}.pitch-contour svg{vector-effect:non-scaling-stroke;width:100%;height:120px;display:block}.pitch-contour-grid{stroke:#ffffff0f;stroke-width:1px}.pitch-contour-ref{stroke:#9aa6ffd9;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.pitch-contour-user{stroke:#7ed7c1;stroke-width:2.4px;stroke-linecap:round;stroke-linejoin:round}.pitch-contour-legend{color:var(--text-2);flex-wrap:wrap;align-items:center;gap:6px 10px;margin:8px 0 0;font-size:.78rem;display:flex}.pitch-contour-swatch{vertical-align:middle;border-radius:2px;width:18px;height:3px;display:inline-block}.pitch-contour-ref-swatch{background:#9aa6ffd9}.pitch-contour-user-swatch{background:#7ed7c1}[data-theme=light] .pitch-contour{background:#4361ee0a;border-color:#4361ee2e}[data-theme=light] .pitch-contour-grid{stroke:#0000000f}[data-theme=light] .pitch-contour-ref{stroke:#4361ee8c}[data-theme=light] .pitch-contour-user{stroke:#22a189}[data-theme=light] .pitch-contour-ref-swatch{background:#4361ee8c}[data-theme=light] .pitch-contour-user-swatch{background:#22a189}mark.grammar-mark{color:inherit;cursor:pointer;text-underline-offset:3px;background:linear-gradient(#0000 55%,#f725852e 55% 92%,#0000 92%);border-radius:2px;padding:0 2px;-webkit-text-decoration:underline dotted #f725858c;text-decoration:underline dotted #f725858c;transition:background .16s}mark.grammar-mark:hover,mark.grammar-mark:focus-visible{background:linear-gradient(#0000 0%,#f7258547 0% 100%,#0000 100%)}[data-theme=dark] mark.grammar-mark{background:linear-gradient(#0000 55%,#4cc9f038 55% 92%,#0000 92%);text-decoration-color:#4cc9f0a6}[data-theme=dark] mark.grammar-mark:hover,[data-theme=dark] mark.grammar-mark:focus-visible{background:linear-gradient(#0000 0%,#4cc9f052 0% 100%,#0000 100%)}.quick-replies{flex-wrap:wrap;gap:6px;margin:8px 0 4px;display:flex}.qr-chip{color:inherit;cursor:pointer;background:#4895ef1f;border:1px solid #4895ef59;border-radius:999px;min-height:44px;padding:7px 12px;font-size:.85rem;transition:background .15s,transform .1s}.qr-chip:hover{background:#4895ef38;transform:translateY(-1px)}.bubble-error-host{background:#f43f5e1f;border-radius:8px;align-items:center;gap:8px;margin-top:8px;padding:8px 12px;font-size:.85rem;display:flex}.bubble-error-text{color:var(--legacy-color-f43f5e)}.bubble-error{opacity:.8}.toast-actions{gap:6px;margin-inline-start:8px;display:inline-flex}.toast-action{color:inherit;cursor:pointer;background:#ffffff2e;border:0;border-radius:6px;padding:4px 8px;font-size:.8rem}.toast-close{color:inherit;cursor:pointer;opacity:.6;background:0 0;border:0;margin-inline-start:4px;font-size:1.1rem;line-height:1}.toast-close:hover{opacity:1}.card-streak header{justify-content:space-between;align-items:center;display:flex}.card-recent .recent-link{color:inherit;border-bottom:1px solid #ffffff0f;padding:8px 0;text-decoration:none;display:block}.card-recent .recent-link:hover{color:var(--legacy-color-4895ef)}@media (max-width:768px){.app-bottombar{grid-template-columns:repeat(6,1fr)}}html.theme-fade,html.theme-fade body{filter:brightness(.92)saturate(.85);transition:filter .12s ease-out,background-color .12s ease-out!important}.xp-float{font-feature-settings:"tnum"}@keyframes navPillBreath{0%,to{box-shadow:0 2px 6px #f7258559}50%{box-shadow:0 2px 14px #f72585a6}}.skill-tree{--unit-color:var(--primary);flex-direction:column;gap:36px;display:flex}.skill-tree-empty{text-align:center;color:var(--text-secondary);padding:48px 16px}.skill-tree-empty i{color:var(--primary);margin-bottom:12px;font-size:2.4rem;display:block}.skill-tree-empty h3{font-family:var(--font-display);margin-bottom:8px}.skill-tree-empty .btn{margin-top:14px}.skill-unit{flex-direction:column;gap:12px;display:flex}.skill-unit-head{background:linear-gradient(120deg, color-mix(in srgb, var(--unit-color) 18%, transparent), color-mix(in srgb, var(--unit-color) 4%, transparent));border:1px solid color-mix(in srgb, var(--unit-color) 28%, transparent);border-radius:16px;grid-template-columns:56px 1fr;align-items:center;gap:14px;padding:14px 18px;display:grid}.skill-unit-mark{background:var(--unit-color);width:56px;height:56px;color:var(--text-on-accent);box-shadow:0 6px 18px color-mix(in srgb, var(--unit-color) 40%, transparent);border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.skill-unit-num{font-family:var(--font-display);font-size:1.4rem;font-weight:900}.skill-unit-text{flex-direction:column;gap:4px;display:flex}.skill-unit-title{font-family:var(--font-display);margin:0;font-size:1.05rem;font-weight:800}.skill-unit-sub{color:var(--text-secondary);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:.84rem;display:-webkit-box;overflow:hidden}.skill-unit-progress{align-items:center;gap:10px;margin-top:6px;display:flex}.skill-unit-progress-bar{background:rgba(var(--primary-rgb), .12);border-radius:999px;flex:1;height:6px;overflow:hidden}.skill-unit-progress-bar>span{background:var(--unit-color);border-radius:999px;height:100%;transition:width .6s cubic-bezier(.22,1,.36,1);display:block}.skill-unit-progress-label{color:var(--text-secondary);white-space:nowrap;font-size:.78rem;font-weight:700}.skill-unit-tree{justify-content:center;width:100%;display:flex;position:relative}.skill-paths{pointer-events:none;display:block}.skill-nodes{width:280px;margin:0;padding:0;list-style:none;position:absolute;inset:0;inset-inline-start:50%;transform:translate(-50%)}.skill-node{pointer-events:none;flex-direction:column;align-items:center;width:64px;height:64px;display:flex;position:absolute}.skill-node-btn{background:var(--card);width:64px;height:64px;color:var(--text);cursor:pointer;pointer-events:auto;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:1.2rem;transition:transform .2s cubic-bezier(.34,1.56,.64,1),box-shadow .2s;display:flex;position:relative;box-shadow:0 4px 12px #00000026}.skill-node-glow{background:radial-gradient(circle, color-mix(in srgb, var(--unit-color) 40%, transparent) 0%, transparent 70%);opacity:0;pointer-events:none;border-radius:50%;transition:opacity .22s ease-out;position:absolute;inset:-6px}.skill-node-btn:hover{transform:translateY(-2px);box-shadow:0 8px 20px #00000040}.skill-node-btn:active{transform:translateY(0)}.skill-node-btn:hover .skill-node-glow{opacity:1}.skill-node-icon{border-radius:50%;justify-content:center;align-items:center;width:100%;height:100%;display:flex}.skill-node-label{text-align:center;max-width:80px;color:var(--text-secondary);-webkit-line-clamp:2;pointer-events:none;-webkit-box-orient:vertical;margin-top:6px;font-size:.7rem;font-weight:700;line-height:1.2;display:-webkit-box;overflow:hidden}@keyframes skillNodePulse{0%{box-shadow:0 0 0 0 color-mix(in srgb, var(--unit-color) 55%, transparent)}70%{box-shadow:0 0 0 18px color-mix(in srgb, var(--unit-color) 0%, transparent)}to{box-shadow:0 0 0 0 color-mix(in srgb, var(--unit-color) 0%, transparent)}}@keyframes dotPulse{0%,to{opacity:1;box-shadow:0 0}50%{opacity:.7;box-shadow:0 0 0 6px #0000}}@media (max-width:640px){.skill-unit-tree{overflow-x:visible}.skill-paths,.skill-nodes{width:240px}.skill-nodes{inset-inline-start:50%;transform:translate(-50%)}}.scene-backdrop{text-align:center;color:var(--text-on-accent);text-shadow:0 2px 12px #0000004d;padding:16px 8px 8px}.scene-icon{filter:drop-shadow(0 4px 12px #0000004d);font-size:3rem;animation:3s ease-in-out infinite floatY;display:block}.scene-icon .svg-icon{width:3rem;height:3rem}.scene-title{font-family:var(--font-display);margin:8px 0 4px;font-size:1.6rem;font-weight:900}.scene-caption{opacity:.9;margin:0;font-size:.95rem}.scene-dialogue{margin:0;flex-direction:column;gap:10px;width:100%;max-width:720px;margin-inline:auto;padding:0;list-style:none;display:flex}.dlg{--char-color:var(--legacy-color-475569);color:var(--legacy-color-1e293b);border-inline-start:4px solid var(--char-color);background:#fffffff2;border-radius:16px;flex-direction:column;gap:4px;padding:12px 16px;animation:.36s cubic-bezier(.22,1,.36,1) backwards slideUp;display:flex;box-shadow:0 4px 12px #0000001f}.dlg:nth-child(2){animation-delay:80ms}.dlg:nth-child(3){animation-delay:.16s}.dlg:nth-child(4){animation-delay:.24s}.dlg:nth-child(5){animation-delay:.32s}.dlg-narrator{text-align:center;color:var(--legacy-color-475569);background:#ffffffc7;border-inline-start:none;font-style:italic}.dlg-name{font-family:var(--font-display);color:var(--char-color);text-transform:uppercase;letter-spacing:.5px;font-size:.85rem;font-weight:800}.dlg-text{cursor:pointer;border-radius:6px;outline:none;font-size:1.05rem;line-height:1.5;transition:background .15s ease-out,box-shadow .15s ease-out}.dlg-text:hover,.dlg-text:focus{background:#a855f714}.dlg-text:focus-visible{box-shadow:0 0 0 3px #a855f773}.dlg-gloss{color:var(--legacy-color-64748b);font-size:.82rem;font-style:italic}.scene-choice{border-radius:16px;max-width:720px;margin:16px auto 0;padding:18px}.scene-choice-prompt{font-weight:700;font-family:var(--font-display);margin:0 0 12px}.scene-choice-options{flex-direction:column;gap:10px;display:flex}.scene-choice-option{border:2px solid var(--border-color);background:var(--card);color:var(--text);cursor:pointer;text-align:start;transition:var(--transition);border-radius:12px;align-items:center;gap:12px;padding:12px 16px;font-family:inherit;font-size:1rem;display:flex}.scene-choice-option:hover:not(:disabled){border-color:var(--primary);transform:translate(4px)}.scene-choice-option:disabled{cursor:not-allowed;opacity:.7}.scene-choice-option .opt-letter{background:rgba(var(--primary-rgb), .12);width:28px;height:28px;color:var(--primary);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.85rem;font-weight:800;display:inline-flex}.scene-choice-option.correct{border-color:var(--success);color:var(--success);background:#4ade8026}.scene-choice-option.correct .opt-letter{background:var(--success);color:var(--text-on-accent)}.scene-choice-option.wrong{border-color:var(--error);color:var(--error);background:#f43f5e26}.scene-choice-option.wrong .opt-letter{background:var(--error);color:var(--text-on-accent)}.scene-choice-feedback{border-radius:10px;margin-top:12px;padding:10px 14px;font-size:.92rem;font-weight:600}.scene-choice-feedback[data-kind=correct]{background:color-mix(in srgb, var(--hy-color-success) 10%, var(--hy-color-surface));color:var(--hy-color-success)}.scene-choice-feedback[data-kind=wrong]{background:color-mix(in srgb, var(--hy-color-danger) 10%, var(--hy-color-surface));color:var(--hy-color-danger)}.story-vocab-card .vocab-pos{text-transform:uppercase;letter-spacing:.5px;color:var(--legacy-color-94a3b8);font-size:.7rem}@media (max-width:640px){.scene-title{font-size:1.3rem}.scene-icon{font-size:2.2rem}.dlg{padding:10px 12px}.dlg-text{font-size:1rem}}.leagues-shell{flex-direction:column;gap:18px;min-width:0;max-width:980px;margin:0 auto;padding:16px;display:flex;container-type:inline-size}.leagues-hero{border-radius:22px;grid-template-columns:auto 1fr;align-items:center;gap:24px;min-width:0;padding:24px;display:grid}.leagues-hero-shield{justify-content:center;align-items:center;display:flex}.leagues-hero-meta{flex-direction:column;gap:6px;min-width:0;display:flex}.leagues-hero-eyebrow{color:var(--text-secondary);align-items:center;gap:6px;font-size:.92rem;font-weight:700;display:inline-flex}.leagues-hero-eyebrow .svg-icon{width:1.15rem;height:1.15rem}.leagues-hero-title{font-family:var(--font-display);letter-spacing:0;margin:0;font-size:1.8rem;font-weight:900}.leagues-hero-sub{color:var(--text-secondary);margin:0 0 12px}.leagues-hero-stats{flex-wrap:wrap;gap:12px 18px;display:flex}.leagues-hero-stats>span{flex-direction:column;gap:2px;display:flex}.leagues-hero-stats strong{font-family:var(--font-display);font-feature-settings:"tnum";font-size:1.4rem;font-weight:800}.leagues-hero-stats small{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.6px;font-size:.78rem}.leagues-section-title{font-family:var(--font-display);margin:0 0 12px;font-size:1.05rem;font-weight:800}.leagues-ladder{border-radius:18px;padding:18px}.leagues-ladder-list{grid-template-columns:repeat(auto-fill,minmax(min(140px,100%),1fr));gap:10px;min-width:0;margin:0;padding:0;list-style:none;display:grid}.ladder-rung{--lg-color:var(--legacy-color-cd7f32);background:rgba(var(--primary-rgb), .04);border:1px solid var(--border-color);transition:var(--transition);border-radius:12px;align-items:center;gap:10px;min-width:0;padding:10px 12px;font-weight:700;display:flex;position:relative}.ladder-rung.is-past{opacity:.55}.ladder-rung.is-current{background:color-mix(in srgb, var(--lg-color) 18%, transparent);border-color:var(--lg-color);box-shadow:0 8px 22px color-mix(in srgb, var(--lg-color) 30%, transparent)}.ladder-shield{flex-shrink:0;display:inline-flex}.ladder-name{font-family:var(--font-display);overflow-wrap:break-word;word-break:normal;min-width:0;font-size:.92rem}.ladder-tag{text-transform:uppercase;letter-spacing:.5px;color:var(--lg-color);margin-inline-start:auto;font-size:.7rem;font-weight:800}.leagues-cohort{border-radius:18px;padding:18px}.leagues-cohort-head{justify-content:space-between;align-items:center;gap:12px;min-width:0;margin-bottom:12px;display:flex}.leagues-cohort-head h2{font-family:var(--font-display);margin:0;font-size:1.1rem;font-weight:800}.leagues-cohort-meta{color:var(--text-secondary);text-align:end;min-width:0;font-size:.9rem;font-weight:600}.leagues-list{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex;position:relative}.leagues-row{background:var(--card);transition:var(--transition);border:1px solid #0000;border-radius:12px;grid-template-columns:36px 36px 1fr auto;align-items:center;gap:10px;min-width:0;padding:8px 12px;display:grid}.leagues-row.is-me{background:rgba(var(--primary-rgb), .1);border-color:rgba(var(--primary-rgb), .4)}.leagues-row .row-rank{font-family:var(--font-mono);text-align:center;font-feature-settings:"tnum";color:var(--text-secondary);font-weight:800}.leagues-row .row-avatar{background:linear-gradient(135deg, var(--primary), var(--accent));width:36px;height:36px;color:var(--text-on-accent);border-radius:50%;justify-content:center;align-items:center;font-weight:800;display:inline-flex}.leagues-row .row-name{overflow-wrap:break-word;word-break:normal;align-items:center;gap:8px;min-width:0;font-weight:700;display:flex}.leagues-row .row-pill{background:var(--primary);color:var(--text-on-accent);letter-spacing:.5px;border-radius:999px;flex-shrink:0;padding:2px 8px;font-size:.68rem;font-weight:800;display:inline-block}.leagues-row .row-xp{font-family:var(--font-mono);font-feature-settings:"tnum";font-weight:800}.leagues-zone-divider{text-transform:uppercase;letter-spacing:.5px;text-align:center;color:var(--text-secondary);padding:6px 12px;font-size:.75rem;font-weight:800;list-style:none;position:relative}.leagues-zone-divider:before,.leagues-zone-divider:after{content:"";background:var(--border-color);width:30%;height:1px;position:absolute;top:50%}.leagues-zone-divider:before{inset-inline-start:4%}.leagues-zone-divider:after{inset-inline-end:4%}.zone-divider-promote{color:var(--success);order:2}@media (max-width:720px){.leagues-hero{text-align:center;grid-template-columns:1fr}.leagues-hero-stats{justify-content:center}.leagues-ladder-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@container (width<=420px){.leagues-shell{padding-inline:10px}.leagues-hero{padding:16px}.leagues-hero-stats{justify-content:space-between;gap:10px}.leagues-ladder{padding:14px}.leagues-ladder-list{grid-template-columns:1fr}.leagues-row{grid-template-columns:32px 32px minmax(0,1fr) auto;gap:8px;padding-inline:8px}}@media (max-width:420px){.leagues-ladder-list{grid-template-columns:1fr}}.kw{border-radius:8px;margin:2px;padding:4px 8px;transition:background .22s ease-out,color .22s ease-out,transform .22s ease-out;display:inline-block}.kw.lit{background:linear-gradient(135deg, var(--accent), var(--primary));color:var(--text-on-accent);transform:translateY(-2px)}.kw.s-good{color:var(--success);background:#4ade8040}.kw.s-mid{color:var(--warning);background:#f59e0b40}.kw.s-bad{color:var(--error);background:#f43f5e40}.ks{color:var(--text-secondary)}.tav{width:220px;height:240px;display:inline-block;position:relative}.tav .tav-svg{display:block}.tav .tav-body{transform-origin:110px 140px;animation:4s ease-in-out infinite tavBreath}@keyframes tavBreath{0%,to{transform:scale(1)translateY(0)}50%{transform:scale(1.012)translateY(-2px)}}.tav[data-state=listening] .tav-body{animation:4s ease-in-out infinite tavBreath,4s ease-in-out infinite tavHeadTilt}@keyframes tavHeadTilt{0%,to{transform:rotate(0)}50%{transform:rotate(2.5deg)}}.tav[data-state=celebrating] .tav-body{animation:.6s cubic-bezier(.34,1.56,.64,1) 2 tavBounce}@keyframes tavBounce{0%{transform:translateY(0)scale(1)}50%{transform:translateY(-10px)scale(1.04)}to{transform:translateY(0)scale(1)}}.tav .tav-halo-outer,.tav .tav-halo-ring{transform-origin:110px 118px;transition:opacity .32s}.tav[data-state=listening] .tav-halo-outer{animation:2s ease-in-out infinite tavHaloPulse}.tav[data-state=listening] .tav-halo-ring{animation:2s ease-in-out infinite reverse tavHaloPulse}@keyframes tavHaloPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.65;transform:scale(1.08)}}.tav .tav-eye-white{transform-origin:50%;transition:transform 80ms ease-out}.tav .tav-eye-white.blink{transform:scaleY(.05)}.tav .tav-eye-white.wide{transform:scaleY(1.15)}.tav .tav-pupil.blink,.tav .tav-iris.blink,.tav .tav-spark.blink{opacity:0}.tav .tav-spark:not(.tav-spark-sm){animation:5.6s ease-in-out infinite tavSparkBlink}@keyframes tavSparkBlink{0%,96%,to{opacity:1}98%{opacity:.4}}.tav .tav-brow{transform-origin:50%;transition:transform .2s ease-out}.tav .tav-brow.up.tav-brow-l{transform:translateY(-5px)rotate(-5deg)}.tav .tav-brow.up.tav-brow-r{transform:translateY(-2px)rotate(2deg)}.tav .tav-think{transition:opacity .22s ease-out}.tav .tav-think circle{animation:1.6s ease-in-out infinite thinkDot}.tav .tav-think circle:nth-child(2){animation-delay:.2s}.tav .tav-think circle:nth-child(3){animation-delay:.4s}@keyframes thinkDot{0%,60%,to{opacity:.55;transform:translateY(0)scale(1)}30%{opacity:1;transform:translateY(-5px)scale(1.25)}}.tav .tav-mouth-wrap{transform-origin:110px 172px;transition:transform 80ms ease-out}.tav[data-state=speaking] .tav-mouth-wrap{transform:scaleX(1.06)}.tav .tav-spark-ring{transition:opacity .24s ease-out}.tav[data-state=celebrating] .tav-sparkle{animation:.9s ease-out infinite tavSparkle}@keyframes tavSparkle{0%{opacity:0;transform:scale(.6)}40%{opacity:1;transform:scale(1.4)}to{opacity:0;transform:scale(.4)}}@media (max-width:640px){.tav{width:180px;height:200px}}@keyframes goal-ring-levelup-pulse{0%{filter:drop-shadow(0 0 #ffd70000);transform:scale(1)}50%{filter:drop-shadow(0 0 24px #ffd70099);transform:scale(1.15)}to{filter:drop-shadow(0 0 #ffd70000);transform:scale(1)}}@keyframes empty-icon-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.9;transform:scale(1.12)}}.conversation-starter-slot[hidden]{display:none}@media (max-width:760px){.conversation-starter-card{grid-template-columns:auto minmax(0,1fr)}.conversation-starter-card .btn{grid-column:1/-1;min-height:44px}}.conversation-starter-card{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;margin-bottom:16px;padding:18px;display:grid}.conversation-starter-card p{color:var(--hy-color-text-subtle);margin:4px 0 0}.conversation-starter-icon{background:color-mix(in srgb, var(--hy-color-accent) 18%, transparent);width:44px;height:44px;color:var(--hy-color-accent);border-radius:12px;place-items:center;display:inline-grid}.streak-milestone{border-radius:var(--r-3,14px);background:linear-gradient(135deg,#ffc4001a,#f725850f);border:1px solid #ffc40059;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;padding:14px 18px;animation:.45s cubic-bezier(.22,1,.36,1) milestone-slide-in;display:grid;box-shadow:0 8px 32px #ffc4001a}@keyframes milestone-slide-in{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}.streak-milestone-flame{background:radial-gradient(circle at 50% 60%, var(--legacy-color-ffd700), var(--legacy-color-f59e0b) 70%);width:44px;height:44px;color:var(--text-on-accent);border-radius:50%;place-items:center;font-size:1.35rem;animation:1.6s ease-in-out infinite milestone-flame-wiggle;display:grid;box-shadow:0 4px 18px #ffc40059}@keyframes milestone-flame-wiggle{0%,to{transform:rotate(0)scale(1)}25%{transform:rotate(-5deg)scale(1.04)}75%{transform:rotate(5deg)scale(1.04)}}.streak-milestone-text{flex-direction:column;gap:2px;display:flex}.streak-milestone-text strong{color:var(--text-1,var(--legacy-color-fff));font-size:1rem;font-weight:800}.streak-milestone-text small{color:var(--text-2,#ffffffa6);font-size:.82rem}.streak-milestone-actions{align-items:center;gap:6px;display:flex}.streak-milestone-actions .btn-icon-ghost{width:44px;height:44px;color:var(--text-2,#fff9);cursor:pointer;background:0 0;border:0;border-radius:50%;font-size:1.1rem;transition:background .15s}.streak-milestone-actions .btn-icon-ghost:hover{background:#ffffff14}@media (max-width:480px){.streak-milestone{grid-template-columns:auto minmax(0,1fr);align-items:start}.streak-milestone-actions{flex-wrap:wrap;grid-column:1/-1;justify-content:flex-end;min-width:0}.streak-milestone-actions .btn{min-width:0}}.streak-milestone-fade{animation:.6s ease-out forwards milestone-fade-out}@keyframes milestone-fade-out{to{opacity:.55}}.streak-milestone-grid{grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:8px;display:grid}.streak-milestone-tile{border-radius:var(--r-2,10px);text-align:center;background:#ffffff08;border:1px solid #ffffff14;flex-direction:column;align-items:center;gap:2px;padding:10px 6px;transition:transform .15s,border-color .15s,background .15s;display:flex}.streak-milestone-tile.unlocked{background:linear-gradient(135deg,#ffc4001a,#ffc4000a);border-color:#ffc40073;box-shadow:0 4px 14px #ffc4001a}.streak-milestone-tile.unlocked:hover{transform:translateY(-2px)}.streak-milestone-tile.locked{filter:grayscale(.85);opacity:.55}.streak-milestone-tile-flame{width:32px;height:32px;color:var(--text-2,#ffffff80);background:#ffffff0f;border-radius:50%;place-items:center;font-size:.9rem;display:grid}.streak-milestone-tile.unlocked .streak-milestone-tile-flame{background:radial-gradient(circle, var(--legacy-color-ffd700), var(--legacy-color-f59e0b) 70%);color:var(--text-on-accent)}.streak-milestone-tile strong{font-size:.9rem;font-weight:800}.streak-milestone-tile small{color:var(--text-2,#ffffff8c);font-size:.65rem}@keyframes cinemaDrift{0%{transform:translate(0,0)scale(1)}50%{transform:translate(2%,-1%)scale(1.05)}to{transform:translate(-2%,1%)scale(1.02)}}@keyframes cinemaBreath{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes cinemaRimPulse{0%,to{filter:brightness()}50%{filter:brightness(1.2)}}@keyframes cinemaRimBuild{0%{opacity:.4}to{opacity:1}}@keyframes cinemaDot{0%,80%,to{opacity:.5;transform:translateY(0)}40%{opacity:1;transform:translateY(-6px)}}@keyframes captionTypingBlink{to{visibility:hidden}}@keyframes chat-scene-shimmer{0%,to{opacity:.4;transform:translate(-12%)}50%{opacity:.85;transform:translate(12%)}}@keyframes chatLoadingDot{0%,to{opacity:.35;transform:scale(.85)}50%{opacity:1;transform:scale(1.15)}}.app-shell .bubble-assistant .avatar-tutor{--persona-accent:var(--brand-1);background:linear-gradient(135deg, var(--persona-accent,var(--brand-1)), color-mix(in srgb, var(--persona-accent,var(--brand-1)) 60%, var(--brand-2)));outline:2px solid color-mix(in srgb, var(--persona-accent,var(--brand-1)) 70%, transparent);outline-offset:1px;width:36px;height:36px;box-shadow:0 0 0 4px color-mix(in srgb, var(--persona-accent,var(--brand-1)) 18%, transparent), 0 4px 12px color-mix(in srgb, var(--persona-accent,var(--brand-1)) 35%, transparent);overflow:hidden}.app-shell .bubble-assistant .avatar-tutor img{object-fit:cover;width:100%;height:100%;display:block}.app-shell .qa-chip{font-weight:600;transition:background .16s,transform .12s,border-color .16s}.app-shell .qa-chip-icon{align-items:center;display:inline-flex}.app-shell .qa-chip-icon .svg-icon{width:1rem;height:1rem}.app-shell .qa-chip:hover{background:#ffffff1a;border-color:#667eea66;transform:translateY(-1px)}.app-shell .send-btn{box-shadow:0 6px 18px -4px #667eea8c}.app-shell .send-btn:hover{transform:translateY(-1px)scale(1.03)}.app-shell .send-btn:disabled{opacity:.5;box-shadow:none;transform:none}@keyframes voice2TapRing{0%{opacity:.85;transform:scale(.85)}to{opacity:0;transform:scale(1.6)}}@keyframes voice2TapFlash{0%{opacity:1;border-color:#ffffffd9;transform:scale(.85)}to{opacity:0;border-color:#fff0;transform:scale(2.4)}}.dock-cta-aura{background:linear-gradient(135deg, var(--rim-listening,var(--legacy-color-4cc9f0)), var(--rim-speaking,var(--legacy-color-f72585)));filter:blur(14px);opacity:.55;z-index:-1;border-radius:999px;animation:3.6s ease-in-out infinite dockCtaBreath;position:absolute;inset:-4px}@keyframes dockCtaBreath{0%,to{opacity:.45;transform:scale(1)}50%{opacity:.75;transform:scale(1.04)}}@keyframes dockCtaBolt{0%,to{transform:translateY(0)rotate(0)}20%{transform:translateY(-1px)rotate(-6deg)}60%{transform:translateY(0)rotate(6deg)}}@keyframes cinemaReadyPulse{0%{opacity:.85;transform:scale(.97)}to{opacity:0;transform:scale(1.08)}}@keyframes liveDotPulse{0%{box-shadow:0 0 #f43f5e8c}70%{box-shadow:0 0 0 8px #f43f5e00}to{box-shadow:0 0 #f43f5e00}}@media (prefers-contrast:more){:root,[data-theme=dark]{--text-secondary:var(--text-primary);--text-light:var(--text-primary);--border-color:currentColor}.glass,[class*=glass]{-webkit-backdrop-filter:none!important;background:var(--card)!important}.btn,.icon-btn,.chip{border:2px solid!important}}:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:4px}.field-error{color:var(--error);letter-spacing:.01em;margin:6px 0 0;font-size:.85rem;font-weight:500}.field-error:before{content:"";margin-inline-end:4px}[aria-invalid=true].chip-group{outline:1px dashed var(--error);outline-offset:6px;border-radius:12px}.mic-btn[disabled]{opacity:.5;cursor:not-allowed;filter:saturate(.4);pointer-events:none;box-shadow:none;border-color:var(--text-secondary)}@keyframes hy-microcopy-in{0%{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:translateY(0)}}.app-bottombar{padding-bottom:max(8px, env(safe-area-inset-bottom))!important}::view-transition-old(root){animation-duration:.28s;animation-timing-function:cubic-bezier(.32,.72,0,1)}::view-transition-new(root){animation-duration:.28s;animation-timing-function:cubic-bezier(.32,.72,0,1)}::view-transition-old(root){animation-name:hy-fade-out-soft}::view-transition-new(root){animation-name:hy-fade-in-soft}@keyframes hy-fade-out-soft{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.992)}}@keyframes hy-fade-in-soft{0%{opacity:0;transform:scale(1.004)}to{opacity:1;transform:scale(1)}}[data-vt=persona]{view-transition-name:hy-persona}:root.theme-sweep::view-transition-old(root){animation-name:hy-theme-sweep-out;animation-duration:.48s}:root.theme-sweep::view-transition-new(root){animation-name:hy-theme-sweep-in;animation-duration:.48s}@keyframes hy-theme-sweep-in{0%{clip-path:circle(0 at var(--theme-sweep-cx,50%) var(--theme-sweep-cy,50%))}to{clip-path:circle(150vmax at var(--theme-sweep-cx,50%) var(--theme-sweep-cy,50%))}}@keyframes hy-theme-sweep-out{0%{clip-path:circle(150vmax at var(--theme-sweep-cx,50%) var(--theme-sweep-cy,50%))}to{clip-path:circle(0 at var(--theme-sweep-cx,50%) var(--theme-sweep-cy,50%))}}body.app-shell [data-course-v3-nav][hidden]{display:none!important}.app-shell .app-bottombar-2026{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 88px minmax(0,1fr) minmax(0,1fr);align-items:end;gap:0;transition:transform .2s ease-out;overflow:visible}.app-shell .app-bottombar-2026.is-hidden:not(:focus-within){pointer-events:none;transform:translateY(110%)}.app-shell .app-bottombar-2026 .bb-tab{min-height:56px;color:var(--text-3);flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:8px 2px;font-size:.7rem;font-weight:600;text-decoration:none;display:flex;position:relative}.app-shell .app-bottombar-2026>a[data-course-v3-nav]{min-block-size:52px;min-inline-size:0}.app-shell .app-bottombar-2026 .bb-tab.active{color:var(--text-1)}.app-shell .app-bottombar-2026 .bb-tab.active i{background:linear-gradient(135deg, var(--brand-1), var(--brand-2));color:#0000;-webkit-background-clip:text;background-clip:text}.app-shell .app-bottombar-2026 .bb-tab i{font-size:1.125rem}.app-shell .app-bottombar-2026 .bb-fab{background:linear-gradient(135deg, var(--brand-1,var(--legacy-color-4361ee)), var(--accent,var(--legacy-color-f72585)));width:64px;height:64px;color:var(--text-on-accent);box-shadow:0 12px 28px -6px #4361ee8c,  0 0 0 4px var(--app-chrome-cutout,#0a0e27d9);transition:transform var(--t-fast,.15s) ease, box-shadow var(--t-fast,.15s) ease;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;margin:0 auto;text-decoration:none;display:flex;position:relative;transform:translateY(-18px)}.app-shell .app-bottombar-2026 .bb-fab:active{transform:translateY(-15px)scale(.96)}.app-shell .app-bottombar-2026 .bb-fab i{-webkit-background-clip:initial;background-clip:initial;font-size:1.4rem;color:var(--legacy-color-fff)!important;background:0 0!important}.app-shell .app-bottombar-2026 .bb-fab-label{bottom:-16px;color:var(--text-3);letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;font-size:.65rem;font-weight:700;position:absolute;inset-inline-start:50%;transform:translate(-50%)}.app-shell .app-bottombar-2026 .bb-fab.active .bb-fab-label{color:var(--text-1)}.app-shell .app-bottombar-2026 .bb-fab-glow{filter:blur(8px);z-index:-1;pointer-events:none;background:radial-gradient(circle,#f7258559 0%,#0000 70%);border-radius:50%;animation:2.4s ease-in-out infinite fabGlowPulse;position:absolute;inset:-6px}@keyframes fabGlowPulse{0%,to{opacity:.55;transform:scale(.95)}50%{opacity:.95;transform:scale(1.08)}}.app-shell .app-bottombar-2026 .bb-fab:focus-visible{outline:3px solid var(--accent,var(--legacy-color-f72585));outline-offset:4px}.app-shell .app-sidenav-2026 ul{gap:4px}.app-shell .app-sidenav-2026 a{padding:14px 16px;font-size:.95rem;font-weight:600}.app-shell .app-sidenav-2026 a i{font-size:1.05rem}.app-shell .memory-card,.app-shell .sprint-option,.app-shell .sentence-token,.app-shell .sentence-actions .btn,.app-shell .image-quest-option,.app-shell .sound-pop-bubble,.app-shell .sound-pop-listen .btn,.app-shell .generated-prompt .btn{min-height:48px}.app-shell .image-quest-board,.app-shell .sound-pop-board{touch-action:manipulation}.app-shell .generated-board.is-chat-quest .generated-prompt .sprint-icon{color:var(--legacy-color-f472b6);background:#ec489924}.app-shell .generated-board.is-echo-rush .generated-prompt .sprint-icon{color:var(--legacy-color-facc15);background:#facc1526}@container (width<=540px){.app-shell .image-quest-scene{min-height:clamp(260px,74vw,340px)}}.app-shell .memory-grid{grid-template-columns:repeat(4,minmax(72px,1fr));gap:10px;display:grid}.app-shell .memory-card{aspect-ratio:1;min-height:78px;color:var(--text-1,var(--text));text-align:center;overflow-wrap:anywhere;background:#0f172a6b;border:1px solid #ffffff24;border-radius:8px;place-items:center;padding:8px;font-weight:900;display:grid}.app-shell .memory-card i{color:var(--text-3,var(--text-secondary))}.app-shell .memory-card.is-open{background:#ffffff1c;border-color:#4cc9f06b}.app-shell .memory-card.is-matched{background:#4ade8029;border-color:#4ade8085}.app-shell .memory-card span{font-size:clamp(.82rem,2.2vw,1.1rem)}.app-shell .memory-card span:only-child{font-size:clamp(1rem,4vw,2rem)}.app-shell .sprint-board,.app-shell .sentence-board,.app-shell .generated-board{flex-direction:column;gap:16px;display:flex}.app-shell .sprint-prompt,.app-shell .sentence-clue,.app-shell .generated-prompt{text-align:center;background:#ffffff12;border-radius:8px;place-items:center;gap:8px;min-height:132px;padding:18px;display:grid}.app-shell .sprint-icon,.app-shell .sentence-clue span{place-items:center;width:3rem;height:3rem;display:inline-grid}.app-shell .game-prompt-visual,.app-shell .memory-card-visual,.app-shell .image-quest-visual,.app-shell .sound-pop-token{isolation:isolate;background:#0f172a6b;border:1px solid #ffffff29;border-radius:8px;place-items:center;display:inline-grid;position:relative;overflow:hidden}.app-shell :where(.games-visual-token,.game-prompt-visual,.memory-card-visual,.image-quest-visual,.sound-pop-token) img{object-fit:cover;grid-area:1/1;width:100%;height:100%}.app-shell .game-prompt-visual{width:100%;height:100%}.app-shell .memory-card-visual{width:min(100%,64px);height:min(100%,64px)}.app-shell .generated-prompt .sprint-icon{width:56px;height:56px;color:var(--brand-3,var(--legacy-color-4cc9f0));background:#4cc9f024;border-radius:8px;justify-content:center;align-items:center;font-size:1.35rem;display:inline-flex}.app-shell .sprint-prompt strong,.app-shell .sentence-clue strong,.app-shell .generated-prompt strong{overflow-wrap:anywhere;font-size:1.45rem;font-weight:900}.app-shell .sprint-prompt small,.app-shell .generated-prompt small{color:var(--text-2,var(--text-secondary));font-weight:700;line-height:1.4}.app-shell .sprint-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.app-shell .sprint-option,.app-shell .sentence-token{min-height:48px;color:var(--text-1,var(--text));overflow-wrap:anywhere;background:#ffffff14;border:1px solid #ffffff24;border-radius:8px;font-weight:850}.app-shell .sprint-option.is-correct{background:#4ade8033;border-color:#4ade8094}.app-shell .sprint-option.is-wrong{background:#f43f5e33;border-color:#f43f5e94}.app-shell .image-quest-board,.app-shell .sound-pop-board{flex-direction:column;gap:16px;min-width:0;display:flex;overflow:hidden}.app-shell .image-quest-scene{background:linear-gradient(135deg,#4cc9f01f,#f59e0b1a),#0f172a75;border:1px solid #ffffff24;border-radius:8px;grid-template-columns:minmax(160px,.92fr) minmax(0,1fr);align-items:stretch;gap:16px;min-width:0;min-height:clamp(240px,34vw,340px);padding:16px;display:grid}.app-shell .image-quest-visual{width:100%;min-height:208px}.app-shell .image-quest-visual img{filter:saturate(1.06)contrast(1.04)}.app-shell .image-quest-visual-emoji{font-size:clamp(2.25rem,8vw,5rem)}.app-shell .image-quest-copy{flex-direction:column;justify-content:center;gap:10px;min-width:0;padding:8px;display:flex}.app-shell .image-quest-copy span,.app-shell .sound-pop-listen p{color:var(--text-2,var(--text-secondary));margin:0;font-weight:800;line-height:1.35}.app-shell .image-quest-copy strong{min-width:0;color:var(--text-1,var(--text));overflow-wrap:anywhere;font-size:clamp(1.35rem,4.2vw,2.2rem);font-weight:950;line-height:1.05}.app-shell .image-quest-options,.app-shell .sound-pop-bubbles{gap:10px;min-width:0;display:grid}.app-shell .image-quest-options{grid-template-columns:repeat(2,minmax(0,1fr))}.app-shell .image-quest-option,.app-shell .sound-pop-bubble{min-width:0;color:var(--text-1,var(--text));cursor:pointer;overflow-wrap:anywhere;background:#ffffff14;border:1px solid #94a3b8ad;border-radius:8px;font-weight:900;transition:transform .14s,border-color .16s,background .16s}.app-shell .image-quest-option{text-align:start;min-height:64px;padding:12px 14px}.app-shell .image-quest-option:hover,.app-shell .image-quest-option:focus-visible,.app-shell .sound-pop-bubble:hover,.app-shell .sound-pop-bubble:focus-visible{background:#4cc9f024;border-color:#4cc9f08a;outline:none}.app-shell .image-quest-option:active,.app-shell .sound-pop-bubble:active{transform:translateY(1px)}.app-shell .image-quest-option.is-correct,.app-shell .sound-pop-bubble.is-correct{background:#4ade802e;border-color:#4ade809e}.app-shell .image-quest-option.is-wrong,.app-shell .sound-pop-bubble.is-wrong{background:#f43f5e2e;border-color:#f43f5e94}.app-shell .sound-pop-listen{background:linear-gradient(135deg,#facc151f,#4cc9f01a),#ffffff0f;border:1px solid #facc1533;border-radius:8px;align-items:center;gap:12px;min-width:0;padding:14px;display:flex}.app-shell .sound-pop-listen .btn{flex:none}.app-shell .sound-pop-bubbles{grid-template-columns:repeat(auto-fit,minmax(132px,1fr))}.app-shell .sound-pop-bubble{text-align:center;place-items:center;gap:8px;min-height:132px;padding:12px;display:grid}.app-shell .sound-pop-token{width:68px;height:68px}.app-shell .sound-pop-bubble strong,.app-shell .image-quest-option strong{overflow-wrap:anywhere;min-width:0;font-size:clamp(.96rem,2.4vw,1.12rem);line-height:1.16}.app-shell .sentence-slots,.app-shell .sentence-bank{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.app-shell .sentence-slot{min-width:74px;min-height:46px;color:var(--text-2,var(--text-secondary));border:1px dashed #fff3;border-radius:8px;justify-content:center;align-items:center;padding:8px 10px;display:inline-flex}.app-shell .sentence-slot.is-filled{color:var(--text-1,var(--text));background:#ffffff14;border-style:solid;font-weight:850}.app-shell .sentence-actions{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}[data-theme=light] .app-shell .sprint-prompt,[data-theme=light] .app-shell .sentence-clue,[data-theme=light] .app-shell .generated-prompt,[data-theme=light] .app-shell .memory-card,[data-theme=light] .app-shell .sprint-option,[data-theme=light] .app-shell .sentence-token,[data-theme=light] .app-shell .sentence-slot.is-filled,[data-theme=light] .app-shell .image-quest-scene,[data-theme=light] .app-shell .sound-pop-listen{background:var(--legacy-color-ffffff);border-color:#0f172a1f}[data-theme=light] .app-shell .image-quest-option,[data-theme=light] .app-shell .sound-pop-bubble,[data-theme=light] .app-shell :where(.games-visual-token,.game-prompt-visual,.memory-card-visual,.image-quest-visual,.sound-pop-token){border-color:var(--legacy-color-64748b);background:#0f172a0a}@media (max-width:760px){.app-shell .memory-grid{grid-template-columns:repeat(3,minmax(68px,1fr))}.app-shell .sprint-options{grid-template-columns:minmax(0,1fr)}.app-shell .image-quest-scene{grid-template-columns:minmax(0,1fr);min-height:0}.app-shell .image-quest-copy,.app-shell .sound-pop-listen{align-items:flex-start}.app-shell .sound-pop-listen{flex-direction:column}.app-shell .sound-pop-listen .btn{justify-content:center;width:100%}}@media (max-width:420px){.app-shell .memory-grid{grid-template-columns:repeat(2,minmax(72px,1fr))}.app-shell .sentence-slot{min-width:60px}.app-shell .image-quest-scene{padding:10px}.app-shell .image-quest-options,.app-shell .sound-pop-bubbles{grid-template-columns:minmax(0,1fr)}}.app-shell .tutor-tip-strip{align-items:center;gap:var(--s-3,.75rem);background:linear-gradient(135deg,#6366f11f,#ec48991a);border:1px solid #6366f138;border-radius:14px;padding:10px 14px;font-size:.92rem;line-height:1.4;display:flex}.app-shell .tutor-tip-strip .tip-icon{width:32px;height:32px;color:var(--text-on-accent);background:#6366f133;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.app-shell .tutor-tip-strip .tip-text{flex:1;min-width:0}.app-shell .tutor-tip-strip .tip-cta{color:var(--text-1,var(--text));transition:background var(--t-fast,.15s) ease;background:#6366f138;border-radius:999px;flex-shrink:0;padding:6px 12px;font-size:.85rem;font-weight:700;text-decoration:none}.app-shell .tutor-tip-strip .tip-cta:hover{background:#6366f15c}.app-shell .tutor-tip-strip .tip-dismiss{appearance:none;min-width:44px;min-height:44px;color:var(--text-3,var(--text-secondary));cursor:pointer;background:0 0;border:0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:1.1rem;line-height:1;display:inline-flex}.app-shell .tutor-tip-strip .tip-dismiss:hover{background:var(--app-chrome-hover,#ffffff14);color:var(--text-1,var(--text))}.app-shell .app-main[data-active-view=talk]{flex-direction:column;display:flex}.app-shell .view[data-view=talk]:not([hidden]){flex-direction:column;flex:auto;width:100%;min-height:0;display:flex}.personas{padding:clamp(60px, 9vw, 110px) var(--space-md,1rem);position:relative}.personas .persona-meta{color:var(--text-secondary);letter-spacing:.01em;min-width:0;margin:0;font-size:.82rem;font-weight:600}@keyframes voice2DockSpin{to{transform:rotate(360deg)}}.difference{padding:clamp(60px, 9vw, 110px) var(--space-md,1rem);position:relative}.app-shell .user-menu-wrap{position:relative}.app-shell .user-chip-btn{appearance:none;min-width:44px;min-height:44px;color:var(--text-1,var(--text));cursor:pointer;font:inherit;transition:background var(--motion-duration-quick,.16s) var(--motion-ease-flow,ease), border-color var(--motion-duration-quick,.16s) var(--motion-ease-flow,ease), transform var(--motion-duration-quick,.16s) var(--motion-ease-flow,ease);background:#ffffff0d;border:1px solid #ffffff1a;border-radius:999px;align-items:center;gap:8px;padding:6px 12px 6px 6px;font-weight:600;display:inline-flex}.app-shell .user-chip-btn:hover{background:#ffffff1a;border-color:#ffffff2e}.app-shell .user-chip-btn.is-open{background:#ffffff1f;border-color:#ffffff38}[data-theme=light] .app-shell .user-chip-btn{background:#0f172a0a;border-color:#0f172a1a}[data-theme=light] .app-shell .user-chip-btn:hover{background:#0f172a12;border-color:#0f172a2e}[data-theme=light] .app-shell .user-chip-btn.is-open{background:#0f172a1a;border-color:#0f172a38}.app-shell .user-chip-btn .avatar{background:linear-gradient(135deg, var(--brand-1,var(--legacy-color-4361ee)), var(--brand-2,var(--legacy-color-4cc9f0)));width:28px;height:28px;color:var(--text-on-accent);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.85rem;font-weight:800;display:inline-flex}.app-shell .user-chip-btn .user-name{text-overflow:ellipsis;white-space:nowrap;max-width:9rem;font-size:.85rem;overflow:hidden}.app-shell .user-chip-btn .user-chip-caret{opacity:.65;transition:transform var(--motion-duration-quick,.16s) var(--motion-ease-flow,ease);font-size:.65rem}.app-shell .user-chip-btn.is-open .user-chip-caret{transform:rotate(180deg)}@media (max-width:540px){.app-shell .user-chip-btn .user-name,.app-shell .user-chip-btn .user-chip-caret{display:none}.app-shell .user-chip-btn{padding:4px}}.app-shell .user-menu-item{appearance:none;cursor:pointer;color:var(--text-1,var(--text));font:inherit;text-align:start;transition:background var(--motion-duration-quick,.16s) var(--motion-ease-flow,ease);background:0 0;border:0;border-radius:10px;align-items:center;gap:10px;padding:10px 12px;font-size:.9rem;font-weight:600;display:flex}.app-shell .user-menu-item:hover{background:#ffffff14}[data-theme=light] .app-shell .user-menu-item:hover{background:#0f172a0f}.app-shell .user-menu-item i{text-align:center;opacity:.85;width:16px}.app-shell .user-menu-divider{background:#ffffff14;height:1px;margin:4px 8px}[data-theme=light] .app-shell .user-menu-divider{background:#0f172a14}.app-shell .user-menu-danger{color:var(--legacy-color-fca5a5)}.app-shell .user-menu-danger:hover{color:var(--legacy-color-fda4af);background:#f43f5e24}[data-theme=light] .app-shell .user-menu-danger{color:var(--legacy-color-b91c1c)}[data-theme=light] .app-shell .user-menu-danger:hover{color:var(--legacy-color-991b1b);background:#f43f5e1a}@keyframes speakingPulse{0%,to{opacity:.6;transform:scale(1)}50%{opacity:1;transform:scale(1.15)}}@keyframes hy-placement-pop{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}@keyframes hy-placement-flash{0%{transform:scale(1);box-shadow:0 0 #764ba200}20%{transform:scale(1.08);box-shadow:0 0 0 10px #764ba259}60%{transform:scale(1.02);box-shadow:0 0 0 18px #764ba200}to{transform:scale(1);box-shadow:0 0 #764ba200}}persona-portrait{border-radius:inherit;width:100%;height:100%;display:block}.app-shell .bubble-assistant .avatar-tutor persona-portrait[variant=chip]{border-radius:50%;width:100%;height:100%;overflow:hidden}@keyframes pp-settle-aura{0%,to{opacity:.45;transform:scale(1)}50%{opacity:.7;transform:scale(1.06)}}.bubble-thinking-dots{vertical-align:middle;align-items:center;gap:5px;padding:6px 4px;display:inline-flex}.bubble-thinking-dots span{background:var(--persona-accent,color-mix(in srgb, var(--text-1,var(--legacy-color-f1f5f9)) 75%, transparent));opacity:.45;border-radius:50%;width:7px;height:7px;animation:1.1s ease-in-out infinite bubble-thinking-bounce}.bubble-thinking-dots span:nth-child(2){animation-delay:.18s}.bubble-thinking-dots span:nth-child(3){animation-delay:.36s}@keyframes bubble-thinking-bounce{0%,70%,to{opacity:.45;transform:translateY(0)}35%{opacity:1;transform:translateY(-4px)}}.bubble.bubble-thinking .bubble-content{min-height:1.5em}@keyframes tapRingExpand{0%{opacity:.55;transform:scale(.92)}70%{opacity:0;transform:scale(1.18)}to{opacity:0;transform:scale(1.18)}}@keyframes listenPulse{0%,to{box-shadow:0 0 0 0 color-mix(in srgb, var(--legacy-color-22c55e) 55%, transparent)}50%{box-shadow:0 0 0 14px color-mix(in srgb, var(--legacy-color-22c55e) 0%, transparent)}}@keyframes auraShimmer{0%{opacity:.55;background-position:0%}50%{opacity:.85;background-position:100%}to{opacity:.55;background-position:0%}}@keyframes rimSweep{0%,to{filter:hue-rotate()}50%{filter:hue-rotate(8deg)}}@keyframes celebrateGlow{0%{box-shadow:0 0 0 0 color-mix(in srgb, var(--persona-accent,var(--primary)) 55%, transparent)}60%{box-shadow:0 0 0 32px color-mix(in srgb, var(--persona-accent,var(--primary)) 0%, transparent)}to{box-shadow:0 0 0 0 color-mix(in srgb, var(--persona-accent,var(--primary)) 0%, transparent)}}@keyframes pp-celebrate{0%{transform:translateY(0)rotate(0)scale(1)}20%{transform:translateY(-8px)rotate(-3deg)scale(1.04)}45%{transform:translateY(2px)rotate(2deg)scale(.99)}70%{transform:translateY(-4px)rotate(-1deg)scale(1.02)}to{transform:translateY(0)rotate(0)scale(1)}}@keyframes summarySlideIn{0%{opacity:0;transform:translateY(60px)}to{opacity:1;transform:translateY(0)}}@keyframes bubbleIn2026{0%{opacity:0;transform:translateY(8px)scale(.94)}to{opacity:1;transform:translateY(0)scale(1)}}.bubble{contain:content}.bubble.bubble-fresh{animation:bubbleIn2026 .32s var(--spring-snap) both}.bubble.bubble-assistant.bubble-fresh{box-shadow:0 0 0 1px color-mix(in srgb, var(--persona-accent,var(--primary)) 24%, transparent), var(--depth-1)}.bubble .bubble-actions{opacity:0;clip-path:inset(0 100% 0 0);transition:clip-path .28s var(--motion-ease-deliberate), opacity .2s var(--motion-ease-flow), transform .2s var(--motion-ease-flow);pointer-events:none;transform:translateY(2px)}.bubble:hover .bubble-actions,.bubble:focus-within .bubble-actions,.bubble.bubble-actions-open .bubble-actions{opacity:1;clip-path:inset(0);pointer-events:auto;transform:translateY(0)}.bubble .bubble-actions>*{opacity:0;transition:opacity .18s var(--motion-ease-flow), transform .18s var(--motion-ease-flow);transform:translate(6px)}.bubble:hover .bubble-actions>*,.bubble:focus-within .bubble-actions>*,.bubble.bubble-actions-open .bubble-actions>*{opacity:1;transform:translate(0)}.bubble .bubble-actions>:first-child{transition-delay:0s}.bubble .bubble-actions>:nth-child(2){transition-delay:60ms}.bubble .bubble-actions>:nth-child(3){transition-delay:.12s}.bubble .bubble-actions>:nth-child(4){transition-delay:.18s}.bubble .bubble-actions>:nth-child(5){transition-delay:.24s}.bubble .bubble-actions>:nth-child(6){transition-delay:.3s}@media (hover:none){.bubble .bubble-actions{clip-path:none;opacity:1;pointer-events:auto;transform:none}.bubble .bubble-actions>*{opacity:1;transform:none}}@keyframes caretPulse2026{0%,to{opacity:1}50%{opacity:.3}}.bubble .bubble-content[data-streaming="1"]:after{content:"";vertical-align:-.18em;background:color-mix(in srgb, var(--persona-accent,var(--primary)) 80%, white);border-radius:3px;width:8px;height:1.05em;margin-inline-start:3px;animation:1.1s ease-in-out infinite caretPulse2026;display:inline-block}@keyframes chipSlideIn{to{opacity:1;transform:translate(0)scale(1)}}@keyframes sendLiftOff{0%{transform:translate(0)rotate(0)}60%{opacity:.7;transform:translate(-12px,-18px)rotate(12deg)}to{opacity:1;transform:translate(0)rotate(0)}}@keyframes rippleOut{0%{opacity:.55;transform:scale(0)}to{opacity:0;transform:scale(2.4)}}.ui-ripple{isolation:isolate;position:relative;overflow:hidden}.ui-ripple:after{content:"";width:12px;height:12px;inset-inline-start:var(--rx,50%);top:var(--ry,50%);margin-inline-start:-6px;opacity:0;pointer-events:none;z-index:0;background:radial-gradient(circle,#ffffff6b,#0000 60%);border-radius:50%;margin-top:-6px;position:absolute;transform:scale(0)}.ui-ripple[data-ripple="1"]:after{animation:rippleOut var(--motion-ripple-dur) var(--spring-soft) 1}.ui-magnetic{translate:var(--mag-x,0) var(--mag-y,0);transition:translate .14s var(--motion-ease-flow);will-change:translate}.ui-haptic-press{transition:transform .12s var(--motion-ease-flow)}.ui-haptic-press:active{transform:scale(.96)}.ui-tilt{transform:perspective(900px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));transition:transform .22s var(--motion-ease-flow);transform-style:preserve-3d}@media (hover:none),(pointer:coarse),(max-width:767px){.ui-tilt{transform:none}}.goal-sections{gap:18px;margin-top:12px;display:grid}.goal-section{border:0;gap:8px;min-inline-size:0;margin:0;padding:0;display:grid}.goal-section-label{font-family:var(--font-display);font-size:13px;font-weight:var(--type-emph-mid);text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary);margin:0;padding:0}.goal-section .chip-group{flex-wrap:wrap;gap:8px;display:flex}.chip.goal-chip-recommended{position:relative}.chip.goal-chip-recommended .chip-badge{font-size:10px;font-weight:var(--type-emph-high);letter-spacing:.04em;text-transform:uppercase;background:color-mix(in srgb, var(--success) 22%, transparent);color:var(--success);border:1px solid color-mix(in srgb, var(--success) 38%, transparent);vertical-align:1px;border-radius:999px;margin-inline-start:6px;padding:2px 8px;display:inline-block}.dialect-row{flex-wrap:wrap;gap:8px;display:flex}.dialect-pill{border:1px solid var(--border-color);background:var(--surface-1);color:var(--text);cursor:pointer;font-weight:var(--type-emph-mid);transition:background .2s var(--motion-ease-flow), border-color .2s var(--motion-ease-flow), transform .14s var(--motion-ease-flow);border-radius:999px;align-items:center;padding:8px 14px;font-size:14px;display:inline-flex}.dialect-pill:hover{transform:translateY(-1px)}.dialect-pill input{display:none}.dialect-pill.active{background:color-mix(in srgb, var(--persona-accent,var(--primary)) 18%, transparent);border-color:color-mix(in srgb, var(--persona-accent,var(--primary)) 50%, transparent);color:var(--text)}.dialect-pill:focus-within{outline:2px solid var(--persona-accent,var(--primary));outline-offset:2px}@keyframes voice2AmbientDrift{0%{transform:translate(-1.5%)scale(1)}to{transform:translate(1.5%,-1%)scale(1.04)}}@keyframes voice2PreflightRise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translate(0,0)}}@keyframes voice2CTARing{0%{opacity:0;transform:scale(.95)}35%{opacity:.6;transform:scale(1)}to{opacity:0;transform:scale(1.18)}}.modal :where(button,input,select,textarea){min-height:44px}.theme-toggle{border:1px solid #0000;justify-content:center;width:44px;min-width:44px;height:44px}.modal{padding:max(16px, env(safe-area-inset-top,0px)) 16px max(16px, env(safe-area-inset-bottom,0px))}.app-shell .app-main{container-type:inline-size}.app-shell .app-bottombar-2026{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 78px minmax(0,1fr) minmax(0,1fr)}.app-shell .app-bottombar-2026 .bb-tab{min-width:0;min-height:60px;overflow:hidden}.app-shell .app-bottombar-2026 .bb-tab span{text-overflow:ellipsis;max-width:100%;overflow:hidden}.app-shell .app-bottombar-2026 .bb-fab{width:62px;height:62px}.app-shell :where(.card,.home-card,.loop-cell,.practice-card,.progress-header,.settings-shell .card){overflow-wrap:anywhere}.app-shell .signin-card{box-shadow:var(--depth-2)}.app-shell .api-down-banner{margin-bottom:var(--s-3);border-radius:16px}.app-shell .numbers{grid-template-columns:repeat(3,minmax(0,1fr))}.app-shell .theme-row,.app-shell .row{align-items:center}@media (max-width:480px){.app-shell .app-main{padding:10px}.app-shell .numbers{grid-template-columns:1fr}.app-shell .theme-row,.app-shell .row{flex-direction:column;align-items:stretch}.app-shell .row .btn,.app-shell .theme-row .btn{width:100%}}@media (max-width:1023px){html,body{max-width:100%}.container{max-width:min(100%,100vw - 32px)}.app-shell .app-main{min-width:0}.app-shell :where(.home-shell-v2,.practice-shell,.games-shell,.you-shell,.vocab-shell,.progress-shell,.settings-shell,.talk-shell){max-width:100%}.app-shell :where(.home-card,.practice-card,.progress-header,.progress-grid .card,.settings-shell .card,.empty-state,.error-state,.router-error){overflow-wrap:anywhere;min-width:0}.app-shell :where(.settings-field input,.settings-field select,.settings-field textarea,.composer-input,.mirror-custom-row input,.cafe-input,input,select,textarea){font-size:16px}dialog.modal{width:100%;padding-inline:max(12px, env(safe-area-inset-left,0px)) max(12px, env(safe-area-inset-right,0px));padding-block:max(12px, env(safe-area-inset-top,0px)) max(12px, env(safe-area-inset-bottom,0px))}dialog.modal .modal-form{width:min(100%,640px);max-height:min(92dvh, calc(100dvh - 24px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px)));overscroll-behavior:contain;overflow-y:auto}}@media (min-width:769px) and (max-width:1023px){.app-shell .app-main{padding:var(--s-5,1.25rem)}}@media (max-width:768px){body{-moz-text-size-adjust:100%;text-size-adjust:100%}.personas .persona-meta{grid-area:meta;line-height:1.3}.modal{align-items:flex-start;overflow-y:auto}.modal input,.modal select,.modal textarea{font-size:16px}.app-shell{min-height:100vh;min-height:100dvh}.app-shell .app-topbar{min-width:0}.app-shell .topbar-actions{gap:var(--s-2,.5rem);min-width:0}.app-shell .user-chip{min-width:44px;max-width:min(46vw,180px)}.app-shell .user-chip .user-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.app-shell .app-main{padding-inline:max(12px, env(safe-area-inset-left,0px)) max(12px, env(safe-area-inset-right,0px));padding-bottom:calc(104px + env(safe-area-inset-bottom,0px))}.app-shell .app-bottombar-2026{min-width:0;padding-inline:max(6px, env(safe-area-inset-left,0px)) max(6px, env(safe-area-inset-right,0px))}.app-shell .app-bottombar-2026 .bb-tab{min-width:0;padding-inline:2px}.app-shell .app-bottombar-2026 .bb-tab span{font-size:.66rem;line-height:1.1}.app-shell .theme-row,.app-shell .row,.app-shell .router-error-actions,.app-shell .empty-state,.app-shell .error-state{flex-direction:column;align-items:stretch}.app-shell .router-error-actions{width:100%}.app-shell .router-error-actions>*,.app-shell .modal-actions>*{justify-content:center;width:100%}.app-shell .chip-group{overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;scrollbar-width:none;overflow-x:auto}.app-shell .lang-picker-trigger{min-width:0}.app-shell .lang-picker-panel{overscroll-behavior:contain;width:min(94vw,390px);max-height:min(70dvh,520px);overflow-y:auto}}@media (max-width:480px){.languages,.personas,.difference{padding-block:2.75rem}.personas .persona-meta{font-size:.78rem}.app-shell .app-main{padding-inline:max(10px, env(safe-area-inset-left,0px)) max(10px, env(safe-area-inset-right,0px))}.app-shell :where(.home-card,.practice-card,.progress-header,.settings-shell .card,.signin-card,.api-down-banner,.empty-state,.error-state){border-radius:16px}.app-shell .numbers,.app-shell .badges-grid{grid-template-columns:1fr}.app-shell .hours-slider{flex-direction:column;align-items:stretch}.app-shell .modal-form{border-radius:18px;padding:18px}.app-shell .modal-actions{flex-direction:column;align-items:stretch}}@media (max-width:380px){.app-shell .app-bottombar-2026{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) 64px minmax(0,1fr) minmax(0,1fr)}.app-shell .app-bottombar-2026 .bb-fab{width:58px;height:58px}.app-shell .app-bottombar-2026 .bb-tab span{font-size:.62rem}}@media (max-width:1023px){.app-shell .app-brand{min-height:44px}}@media (max-width:1024px){body.app-shell .app-brand,.app-shell .app-brand{min-height:44px;padding-block:6px}}:root{--premium-line:color-mix(in srgb, var(--border-color,var(--legacy-color-334155)) 72%, transparent);--premium-line-strong:color-mix(in srgb, var(--primary,var(--legacy-color-4361ee)) 34%, var(--border-color,var(--legacy-color-334155)));--premium-surface:color-mix(in srgb, var(--card,var(--legacy-color-101827)) 86%, transparent);--premium-surface-2:color-mix(in srgb, var(--bg-secondary,var(--legacy-color-1e293b)) 78%, var(--card,var(--legacy-color-101827)));--premium-ink-soft:color-mix(in srgb, var(--text,var(--legacy-color-f8fafc)) 74%, transparent);--premium-accent-a:color-mix(in oklab, var(--primary,var(--legacy-color-4361ee)) 78%, var(--legacy-color-14b8a6));--premium-accent-b:color-mix(in oklab, var(--accent,var(--legacy-color-f72585)) 76%, var(--legacy-color-f59e0b));--premium-shadow:0 18px 52px -32px #0f172ab8}[data-theme=light]{--premium-surface:#ffffffe0;--premium-surface-2:color-mix(in srgb, var(--legacy-color-f8fafc) 86%, white);--premium-shadow:0 18px 46px -34px #0f172a52}body.app-shell{text-rendering:optimizelegibility;scrollbar-gutter:stable;background:linear-gradient(180deg, color-mix(in srgb, var(--bg,var(--legacy-color-0f172a)) 94%, var(--primary,var(--legacy-color-4361ee)) 6%) 0%, var(--bg,var(--legacy-color-0f172a)) 46%, color-mix(in srgb, var(--bg,var(--legacy-color-0f172a)) 94%, var(--accent,var(--legacy-color-f72585)) 6%) 100%)}.app-shell .app-main{min-width:0}.app-shell :where(.home-shell,.practice-shell,.games-shell,.you-shell,.vocab-shell,.progress-shell,.settings-shell,.talk-shell,.chat-shell,.plan-shell,.leagues-shell,.onboarding-shell,.story-picker,.story-player,.cafe-picker,.cafe-chat,.kara-shell,.mirror-shell){width:100%;min-width:0;padding-inline:max(16px, env(safe-area-inset-left,0px)) max(16px, env(safe-area-inset-right,0px))}.app-shell :where(.home-greeting,.home-next,.home-card,.home-skills,.home-tree,.practice-card,.games-stage,.progress-header,.progress-grid .card,.settings-shell .card,.vocab-header,.vocab-area,.you-tab-loading,.story-card,.cafe-topic,.kara-list,.kara-stage,.mirror-pickers,.mirror-stage,.plan-header,.leagues-hero,.leagues-ladder,.leagues-cohort,.onboarding-card,.signin-card,.api-down-banner){border:1px solid var(--premium-line);background:var(--premium-surface);box-shadow:var(--premium-shadow)}.app-shell :where(.home-greeting,.home-next,.home-card,.home-skills,.home-tree,.practice-card,.games-stage,.progress-header,.progress-grid .card,.settings-shell .card,.vocab-header,.vocab-area,.story-card,.cafe-topic,.kara-list,.kara-stage,.mirror-pickers,.mirror-stage,.plan-header,.leagues-hero,.leagues-ladder,.leagues-cohort,.onboarding-card){border-radius:var(--r-3,16px)}.app-shell .chip-group{scrollbar-width:none;-webkit-overflow-scrolling:touch;min-width:0;overflow-x:auto}.app-shell .chip-group::-webkit-scrollbar{display:none}.app-shell .app-topbar,.app-shell .app-bottombar-2026{border-color:var(--premium-line);background:color-mix(in srgb, var(--bg,var(--legacy-color-0f172a)) 86%, transparent);-webkit-backdrop-filter:saturate(160%)blur(18px);backdrop-filter:saturate(160%)blur(18px)}[data-theme=light] .app-shell .app-topbar,[data-theme=light] .app-shell .app-bottombar-2026{background:#ffffffe0}.app-shell .app-sidenav-2026{border-color:var(--premium-line);background:color-mix(in srgb, var(--bg,var(--legacy-color-0f172a)) 80%, transparent)}.app-shell .app-sidenav-2026 a,.app-shell .app-bottombar-2026 a{min-width:0}@media (min-width:1180px){.app-shell .app-main{padding-inline:28px}}@media (max-width:640px){.app-shell :where(.home-shell,.practice-shell,.games-shell,.you-shell,.vocab-shell,.progress-shell,.settings-shell,.talk-shell,.chat-shell,.plan-shell,.leagues-shell,.onboarding-shell,.story-picker,.story-player,.cafe-picker,.cafe-chat,.kara-shell,.mirror-shell){padding-inline:max(10px, env(safe-area-inset-left,0px)) max(10px, env(safe-area-inset-right,0px))}.app-shell :where(.home-greeting,.home-next,.home-card,.home-skills,.home-tree,.progress-header,.settings-shell .card,.vocab-header,.vocab-area,.story-card,.cafe-topic,.kara-list,.kara-stage,.mirror-pickers,.mirror-stage,.plan-header,.leagues-hero,.leagues-ladder,.leagues-cohort,.onboarding-card){padding:14px}}.skip-link,.app-shell .skip-link{align-items:center;min-block-size:44px;display:inline-flex}@media (max-width:768px){body.app-shell .app-main,.app-shell .app-main{padding-bottom:calc(108px + env(safe-area-inset-bottom,0px))}}.persona-chip-copy{gap:1px;min-width:0;line-height:1.05;display:grid}.persona-chip-scene{text-overflow:ellipsis;white-space:nowrap;max-width:12rem;color:color-mix(in srgb, var(--aura-color,var(--legacy-color-7c3aed)) 34%, var(--legacy-color-ffffff));opacity:.82;font-size:10.5px;font-weight:700;overflow:hidden}body.app-shell{--font-ui:"Bricolage Grotesque", Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono-ui:"JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;--app-brand-gradient:var(--grad-aurora,linear-gradient(135deg, var(--legacy-color-4361ee) 0%, var(--legacy-color-4cc9f0) 44%, var(--legacy-color-f72585) 100%));--app-action-gradient:linear-gradient(135deg, var(--legacy-color-3657d8) 0%, var(--legacy-color-0e7490) 48%, var(--legacy-color-be185d) 100%);--app-brand-gradient-soft:linear-gradient(135deg, color-mix(in srgb, var(--brand-1,var(--legacy-color-4361ee)) 24%, transparent), color-mix(in srgb, var(--brand-3,var(--legacy-color-4cc9f0)) 18%, transparent) 48%, color-mix(in srgb, var(--brand-2,var(--legacy-color-f72585)) 22%, transparent));--brand-1:var(--primary,var(--legacy-color-4361ee));--brand-2:var(--accent,var(--legacy-color-f72585));--brand-3:var(--secondary,var(--legacy-color-4cc9f0));--app-bg:var(--legacy-color-080d1d);--app-panel:#0a1022ad;--app-panel-strong:#0c1226d6;--app-panel-soft:#ffffff0e;--app-panel-border:#ffffff24;--app-panel-border-strong:#ffffff3b;--app-text-muted:color-mix(in srgb, var(--text-2,var(--legacy-color-a8b3cf)) 88%, var(--legacy-color-ffffff));--app-focus-ring:0 0 0 3px color-mix(in srgb, var(--brand-3,var(--legacy-color-4cc9f0)) 36%, transparent);--app-shadow-panel:0 18px 50px -34px #000000c7, 0 1px 0 #ffffff14 inset;--app-shadow-float:0 26px 72px -42px color-mix(in srgb, var(--brand-1,var(--legacy-color-4361ee)) 52%, #000000d6);--app-shadow-brand:0 18px 42px -24px color-mix(in srgb, var(--brand-2,var(--legacy-color-f72585)) 48%, transparent);--app-control-min:44px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;font-family:var(--font-ui);background:radial-gradient(circle at 14% -4%, color-mix(in srgb, var(--brand-2,var(--legacy-color-f72585)) 20%, transparent), transparent 32rem), radial-gradient(circle at 88% 8%, color-mix(in srgb, var(--brand-3,var(--legacy-color-4cc9f0)) 16%, transparent), transparent 30rem), linear-gradient(180deg, var(--legacy-color-070b18) 0%, var(--legacy-color-0a1020) 48%, var(--legacy-color-090d19) 100%);letter-spacing:0}@media (prefers-color-scheme:dark){body.app-shell{--lightningcss-light: ;--lightningcss-dark:initial}}:root[data-theme=light] body.app-shell{--app-bg:var(--legacy-color-f7f9ff);--app-panel:#ffffffc7;--app-panel-strong:#ffffffe6;--app-panel-soft:#4361ee0e;--app-panel-border:#0c12261f;--app-panel-border-strong:#4361ee33;--app-text-muted:color-mix(in srgb, var(--text-2,var(--legacy-color-475569)) 86%, var(--legacy-color-0f172a));--app-shadow-panel:0 18px 46px -36px #0f172a52, 0 1px 0 #ffffffe0 inset;--app-shadow-float:0 24px 64px -46px #4361ee66;background:radial-gradient(circle at 12% -8%, color-mix(in srgb, var(--brand-3,var(--legacy-color-4cc9f0)) 16%, transparent), transparent 30rem), radial-gradient(circle at 86% 0%, color-mix(in srgb, var(--brand-2,var(--legacy-color-f72585)) 12%, transparent), transparent 28rem), linear-gradient(180deg, var(--legacy-color-fbfcff) 0%, var(--legacy-color-f4f7ff) 54%, var(--legacy-color-eef3ff) 100%)}body.app-shell .gradient-mesh{opacity:.72;filter:saturate(1.08)}body.app-shell .blob-shape{background:var(--app-brand-gradient-soft);filter:blur(54px)}body.app-shell .app-main,body.app-shell .view{min-width:0}body.app-shell :where(button,a,input,textarea,select){letter-spacing:0;font-family:inherit}body.app-shell :where(button,a,input,textarea,select):focus-visible{box-shadow:var(--app-focus-ring);outline:none}body.app-shell :where(.glass,.home-greeting,.home-card,.home-skills,.loop-cell,.conv-list,.chat-topbar-2026,.chat-scene-strip,.composer,.voice2-preflight-card,.caption-stream){background:linear-gradient(145deg, color-mix(in srgb, var(--app-panel-strong) 88%, transparent), color-mix(in srgb, var(--app-panel) 94%, transparent)), color-mix(in srgb, var(--app-panel) 82%, transparent);border-color:var(--app-panel-border);box-shadow:var(--app-shadow-panel);-webkit-backdrop-filter:blur(22px)saturate(1.2)}body.app-shell :where(.ui-ripple>span,.ui-ripple>i,.ui-ripple>svg,.ui-ripple>img,.ui-ripple>persona-portrait){z-index:1;position:relative}body.app-shell .ui-ripple:after{background:radial-gradient(circle,#ffffff85,#ffffff2e 36%,#0000 68%)}body.app-shell .app-topbar{background:linear-gradient(180deg, color-mix(in srgb, var(--app-panel-strong) 92%, transparent), color-mix(in srgb, var(--app-panel) 74%, transparent));border-bottom:1px solid var(--app-panel-border);-webkit-backdrop-filter:blur(24px)saturate(1.22);box-shadow:0 12px 34px -28px #000000b8}body.app-shell .app-brand{min-height:var(--app-control-min);border:1px solid color-mix(in srgb, var(--app-panel-border) 82%, transparent);background:color-mix(in srgb, var(--app-panel-strong) 80%, transparent);border-radius:999px;gap:10px;padding:5px 10px 5px 6px;box-shadow:0 14px 30px -24px #000000b8}body.app-shell .app-brand:hover{border-color:color-mix(in srgb, var(--brand-3,var(--legacy-color-4cc9f0)) 42%, var(--app-panel-border));background:color-mix(in srgb, var(--app-panel-strong) 92%, transparent)}body.app-shell :where(.icon-btn,.user-chip-btn,.user-menu-item,.api-down-retry){min-height:var(--app-control-min)}body.app-shell .user-chip-btn{border-color:var(--app-panel-border);background:color-mix(in srgb, var(--app-panel-strong) 88%, transparent);box-shadow:var(--app-shadow-panel)}body.app-shell .user-chip-btn .avatar{background:var(--app-action-gradient);color:var(--legacy-color-ffffff);box-shadow:0 12px 26px -18px color-mix(in srgb, var(--brand-2,var(--legacy-color-f72585)) 52%, transparent)}body.app-shell .app-sidenav-2026,body.app-shell .app-bottombar-2026{border-color:var(--app-panel-border);background:color-mix(in srgb, var(--app-panel-strong) 88%, transparent);box-shadow:var(--app-shadow-panel);-webkit-backdrop-filter:blur(24px)saturate(1.18)}body.app-shell .app-sidenav-2026 a,body.app-shell .app-bottombar-2026 .bb-tab{min-height:var(--app-control-min);color:var(--app-text-muted);border:1px solid #0000;border-radius:14px}body.app-shell .app-sidenav-2026 a:hover,body.app-shell .app-bottombar-2026 .bb-tab:hover{border-color:var(--app-panel-border);background:var(--app-panel-soft);color:var(--text-1,var(--legacy-color-ffffff))}body.app-shell .app-sidenav-2026 a.active,body.app-shell .app-bottombar-2026 .bb-tab.active{border-color:color-mix(in srgb, var(--brand-3,var(--legacy-color-4cc9f0)) 32%, var(--app-panel-border));background:linear-gradient(135deg, color-mix(in srgb, var(--brand-1,var(--legacy-color-4361ee)) 22%, transparent), color-mix(in srgb, var(--brand-2,var(--legacy-color-f72585)) 12%, transparent)), color-mix(in srgb, var(--app-panel-strong) 88%, transparent);color:var(--text-1,var(--legacy-color-ffffff));box-shadow:0 14px 30px -24px color-mix(in srgb, var(--brand-1,var(--legacy-color-4361ee)) 48%, transparent)}body.app-shell .app-bottombar-2026 .bb-fab{background:var(--app-action-gradient);box-shadow:0 22px 46px -24px color-mix(in srgb, var(--brand-2,var(--legacy-color-f72585)) 64%, transparent), 0 1px 0 #ffffff47 inset;border-color:#ffffff47}body.app-shell :where(.btn-next-secondary,.chip-btn,.chat-mode-tab,.talk-mode-btn,.voice2-pill,.next-alt-chip,.skill-cta,.qa-chip,.loop-vocab-link,.chat-welcome-chip){border-color:var(--app-panel-border);background:color-mix(in srgb, var(--app-panel-strong) 78%, transparent);color:var(--text-1,var(--legacy-color-ffffff));box-shadow:0 10px 26px -24px #0000009e}body.app-shell :where(.btn-next-secondary,.chip-btn,.chat-mode-tab,.talk-mode-btn,.voice2-pill,.next-alt-chip,.skill-cta,.qa-chip,.loop-vocab-link,.chat-welcome-chip):hover{border-color:color-mix(in srgb, var(--brand-3,var(--legacy-color-4cc9f0)) 34%, var(--app-panel-border));background:color-mix(in srgb, var(--app-panel-strong) 92%, transparent)}body.app-shell .loop-cell,body.app-shell .skill-item{border-color:var(--app-panel-border);background:color-mix(in srgb, var(--app-panel-strong) 72%, transparent)}body.app-shell .skills-sub{color:var(--app-text-muted)}body.app-shell .skill-item.is-promoted{border-color:color-mix(in srgb, var(--brand-2,var(--legacy-color-f72585)) 34%, var(--app-panel-border));background:linear-gradient(135deg, color-mix(in srgb, var(--brand-2,var(--legacy-color-f72585)) 12%, transparent), color-mix(in srgb, var(--brand-3,var(--legacy-color-4cc9f0)) 10%, transparent)), color-mix(in srgb, var(--app-panel-strong) 76%, transparent)}body.app-shell .skill-bar-fill{background:var(--app-brand-gradient)}body.app-shell .lang-picker-trigger,.app-shell .lang-picker-trigger{min-height:var(--app-control-min,44px)}body.app-shell .bubble-body.glass{border-color:var(--app-panel-border);background:linear-gradient(145deg, color-mix(in srgb, var(--app-panel-strong) 84%, transparent), color-mix(in srgb, var(--app-panel) 92%, transparent))}body.app-shell .bubble-user{background:var(--app-action-gradient);color:var(--legacy-color-ffffff);box-shadow:var(--app-shadow-brand)}body.app-shell .bubble-actions button{border:1px solid var(--app-panel-border);background:color-mix(in srgb, var(--app-panel-strong) 82%, transparent);min-width:34px;min-height:34px}@media (hover:hover) and (pointer:fine){body.app-shell .ui-haptic-press:hover{transform:translateY(-1px)}body.app-shell .ui-haptic-press:active{transform:translateY(0)scale(.97)}body.app-shell :where(.home-card,.home-next,.home-greeting,.home-skills,.home-tree,.chat-scene-strip,.chat-welcome,.conv-list,.voice2-preflight-card).ui-tilt:hover{box-shadow:var(--app-shadow-float)}}@media (max-width:420px){body.app-shell .app-brand{padding-inline-end:8px}}body.app-shell .settings-shell :where(.settings-form,.settings-field,.toggle-text,.link-google-text,.placement-retake-row>div,.placement-retake-actions,.row){min-width:0}body.app-shell .settings-shell :where(.settings-actions,.theme-row,.row,.placement-retake-actions){flex-wrap:wrap;align-items:center;gap:10px;display:flex}body.app-shell .settings-shell :where(.settings-actions,.theme-row,.row,.placement-retake-actions) .btn{min-height:44px}body.app-shell .settings-shell .placement-retake-row{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;display:grid}body.app-shell .settings-shell .placement-retake-blurb{overflow-wrap:anywhere}body.app-shell .link-google-row{width:100%;min-width:0;margin-block:8px 14px}body.app-shell .link-google-cta,body.app-shell .link-google-linked{isolation:isolate;border:1px solid color-mix(in srgb, var(--brand-3,var(--legacy-color-4cc9f0)) 28%, var(--app-panel-border,#ffffff24));background:radial-gradient(circle at 0% 0%, color-mix(in srgb, var(--brand-3,var(--legacy-color-4cc9f0)) 18%, transparent), transparent 38%), linear-gradient(135deg, color-mix(in srgb, var(--brand-1,var(--legacy-color-4361ee)) 14%, transparent), color-mix(in srgb, var(--brand-2,var(--legacy-color-f72585)) 9%, transparent)), color-mix(in srgb, var(--app-panel-strong,#ffffff1f) 88%, transparent);width:100%;min-width:0;box-shadow:0 24px 58px -44px color-mix(in srgb, var(--brand-1,var(--legacy-color-4361ee)) 62%, transparent), inset 0 1px 0 #ffffff1f;border-radius:20px;position:relative}body.app-shell .link-google-cta{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;padding:clamp(14px,2.2vw,18px);display:grid;overflow:hidden}body.app-shell .link-google-cta:after{content:"";background:var(--app-brand-gradient,linear-gradient(135deg, var(--legacy-color-4361ee), var(--legacy-color-f72585), var(--legacy-color-4cc9f0)));opacity:.82;pointer-events:none;border-radius:999px;height:2px;position:absolute;inset:auto 16px 0}body.app-shell .link-google-text{gap:4px;display:grid}body.app-shell .link-google-text h3{color:var(--text-1,var(--legacy-color-ffffff));letter-spacing:0;margin:0;font-size:1.04rem;font-weight:850;line-height:1.12}body.app-shell .link-google-text p{max-width:56ch;color:var(--text-2,#ffffffc7);overflow-wrap:anywhere;margin:0;line-height:1.45}body.app-shell .btn-google{border:1px solid color-mix(in srgb, var(--brand-3,var(--legacy-color-4cc9f0)) 26%, #0f172a1f);min-width:max-content;min-height:44px;color:var(--legacy-color-111827);background:linear-gradient(#fffffff5,#f8fafce6);border-radius:999px;padding-inline:16px;box-shadow:0 16px 34px -24px #0f172a9e}body.app-shell .btn-google:hover{border-color:color-mix(in srgb, var(--brand-1,var(--legacy-color-4361ee)) 38%, #0f172a24);box-shadow:0 22px 42px -24px color-mix(in srgb, var(--brand-1,var(--legacy-color-4361ee)) 52%, #0f172a61)}body.app-shell .btn-google .google-icon,body.app-shell .link-google-linked .google-icon{flex:0 0 20px;width:20px;height:20px}body.app-shell .link-google-linked{min-height:64px;color:var(--text-1,var(--legacy-color-ffffff));grid-template-columns:34px minmax(0,1fr);align-items:center;gap:10px;padding:14px 16px;font-weight:750;display:grid}body.app-shell .link-google-linked span{overflow-wrap:anywhere;min-width:0}[data-theme=light] body.app-shell .link-google-text h3,body.app-shell[data-theme=light] .link-google-text h3,[data-theme=light] body.app-shell .link-google-linked,body.app-shell[data-theme=light] .link-google-linked{color:var(--legacy-color-172033)}[data-theme=light] body.app-shell .link-google-text p,body.app-shell[data-theme=light] .link-google-text p{color:#172033b8}@media (max-width:700px){body.app-shell .settings-shell .placement-retake-row,body.app-shell .link-google-cta{grid-template-columns:1fr;align-items:stretch}body.app-shell .settings-shell :where(.settings-actions,.theme-row,.row,.placement-retake-actions){align-items:stretch}body.app-shell .settings-shell :where(.settings-actions,.theme-row,.row,.placement-retake-actions) .btn,body.app-shell .settings-shell .placement-retake-row>.btn,body.app-shell .btn-google{white-space:normal;justify-content:center;width:100%;min-width:0}}@media (max-width:380px){body.app-shell .link-google-cta,body.app-shell .link-google-linked{border-radius:16px;padding:13px}body.app-shell .link-google-linked{grid-template-columns:24px minmax(0,1fr)}}body.app-shell{--app-motion-fast:.14s;--app-motion-base:.24s;--app-motion-view:.42s;--app-motion-ease:cubic-bezier(.22, 1, .36, 1);--app-motion-press:cubic-bezier(.2, .8, .2, 1);--app-motion-lift:-2px}@keyframes appMotionRise{0%{opacity:0;transform:translateY(12px)scale(.985)}to{opacity:1;transform:translate(0,0)scale(1)}}@keyframes appActionSheen{0%{opacity:0;transform:translate(-130%)skew(-18deg)}18%{opacity:.55}to{opacity:0;transform:translate(130%)skew(-18deg)}}body.app-shell .motion-rise{animation:appMotionRise var(--app-motion-view) var(--app-motion-ease) backwards;animation-delay:var(--motion-delay,0s)}body.app-shell :where(.app-topbar,.app-sidenav-2026,.app-bottombar-2026).motion-rise{--motion-delay:0s}body.app-shell .app-brand{transition:transform var(--app-motion-fast) var(--app-motion-press), border-color var(--app-motion-base) var(--app-motion-ease), background var(--app-motion-base) var(--app-motion-ease), box-shadow var(--app-motion-base) var(--app-motion-ease)}body.app-shell .bubble-fresh{animation-duration:.34s;animation-timing-function:var(--app-motion-ease)}@media (hover:hover) and (pointer:fine){body.app-shell .app-brand:hover{box-shadow:var(--app-shadow-float);transform:translateY(-1px)}}body.app-shell .supporter-chip-badge{block-size:22px;inline-size:22px;color:var(--legacy-color-7c2d12);background:linear-gradient(135deg, var(--legacy-color-fde68a), var(--legacy-color-fbbf24));box-shadow:0 0 0 1px color-mix(in srgb, var(--legacy-color-92400e) 26%, transparent);border-radius:999px;flex:none;place-items:center;font-size:.72rem;display:inline-grid}body.app-shell .user-menu-supporter-badge{color:var(--legacy-color-fde68a);background:color-mix(in srgb, var(--legacy-color-451a03) 58%, transparent);border:1px solid color-mix(in srgb, var(--legacy-color-f59e0b) 36%, transparent);border-radius:8px;align-items:center;gap:8px;margin:6px;padding:8px 10px;font-size:.88rem;font-weight:900;display:flex}body.app-shell .support-card{border-color:color-mix(in srgb, var(--legacy-color-f59e0b) 24%, var(--border-color,var(--legacy-color-334155)))}body.app-shell .support-card.is-supporter{background:linear-gradient(135deg, color-mix(in srgb, var(--legacy-color-f59e0b) 10%, transparent), transparent 46%), var(--card,var(--legacy-color-101827))}body.app-shell .support-card-actions{flex-wrap:wrap}body.app-shell .support-card-actions .btn{min-height:42px}body.app-shell .support-card-status{min-height:28px;margin-top:var(--s-3,.75rem)}body.app-shell .support-card-trust{margin:var(--s-3,.75rem) 0 0}body.app-shell .account-email-card{gap:var(--s-3,.75rem);display:grid}body.app-shell .account-email-heading{justify-content:space-between;align-items:flex-start;gap:12px;min-width:0;display:flex}body.app-shell .account-email-heading>div{min-width:0}body.app-shell .account-email-heading .muted,body.app-shell .account-email-separate-consent,body.app-shell .account-email-live-status{margin:0}body.app-shell .account-email-status{border:1px solid var(--border-color,var(--hy-color-border));border-radius:var(--hy-radius-pill,999px);max-width:100%;min-height:30px;color:var(--text-2,var(--hy-color-text-muted));text-align:center;flex:none;align-items:center;padding:5px 10px;font-size:.78rem;font-weight:800;line-height:1.25;display:inline-flex}body.app-shell .account-email-card[data-verification-state=verified] .account-email-status{color:var(--hy-color-success,var(--legacy-color-166534));border-color:color-mix(in srgb, var(--hy-color-success,var(--legacy-color-22c55e)) 48%, transparent);background:color-mix(in srgb, var(--hy-color-success,var(--legacy-color-22c55e)) 14%, var(--card,transparent))}body.app-shell .account-email-card[data-verification-state=unverified] .account-email-status{color:var(--hy-color-warning,var(--legacy-color-92400e));border-color:color-mix(in srgb, var(--hy-color-warning,var(--legacy-color-f59e0b)) 50%, transparent);background:color-mix(in srgb, var(--hy-color-warning,var(--legacy-color-f59e0b)) 16%, var(--card,transparent))}body.app-shell .account-email-separate-consent{color:var(--text-2,var(--hy-color-text-muted));align-items:flex-start;gap:8px;font-size:.82rem;line-height:1.45;display:flex}body.app-shell .account-email-separate-consent i{color:var(--brand-1,var(--hy-color-brand));flex:none;margin-top:3px}body.app-shell .account-email-actions{flex-flow:wrap;display:flex}body.app-shell .account-email-live-status{min-height:1.25rem;color:var(--text-2,var(--hy-color-text-muted));font-size:.82rem;line-height:1.45}body.app-shell .newsletter-card{gap:var(--s-3,.75rem);border-color:color-mix(in srgb, var(--brand-1,var(--hy-color-brand)) 30%, var(--border-color,var(--hy-color-border)));display:grid}body.app-shell .newsletter-card-heading{justify-content:space-between;align-items:flex-start;gap:12px;min-width:0;display:flex}body.app-shell .newsletter-card-heading>div,body.app-shell .newsletter-purpose,body.app-shell .newsletter-consent-copy{min-width:0}body.app-shell .newsletter-purpose,body.app-shell .newsletter-separate-consent,body.app-shell .newsletter-verification-note{margin:0}body.app-shell .newsletter-status-pill{border:1px solid var(--border-color,var(--hy-color-border));border-radius:var(--hy-radius-pill,999px);max-width:min(100%,18rem);min-height:30px;color:var(--text-2,var(--hy-color-text-muted));background:color-mix(in srgb, var(--card,var(--hy-color-surface)) 88%, transparent);text-align:center;flex:0 auto;align-items:center;padding:5px 10px;font-size:.78rem;font-weight:800;line-height:1.25;display:inline-flex}body.app-shell .newsletter-card[data-newsletter-state=pending] .newsletter-status-pill{color:var(--hy-color-warning,var(--legacy-color-92400e));border-color:color-mix(in srgb, var(--hy-color-warning,var(--legacy-color-f59e0b)) 50%, transparent);background:color-mix(in srgb, var(--hy-color-warning,var(--legacy-color-f59e0b)) 16%, var(--card,transparent))}:root[data-theme=light] body.app-shell .account-email-card[data-verification-state=unverified] .account-email-status,:root[data-theme=light] body.app-shell .newsletter-card[data-newsletter-state=pending] .newsletter-status-pill{color:color-mix(in srgb, var(--hy-color-warning,var(--legacy-color-92400e)) 88%, black)}body.app-shell .newsletter-card[data-newsletter-state=subscribed] .newsletter-status-pill{color:var(--hy-color-success,var(--legacy-color-166534));border-color:color-mix(in srgb, var(--hy-color-success,var(--legacy-color-22c55e)) 48%, transparent);background:color-mix(in srgb, var(--hy-color-success,var(--legacy-color-22c55e)) 14%, var(--card,transparent))}body.app-shell .newsletter-card[data-newsletter-state=unavailable] .newsletter-status-pill,body.app-shell .newsletter-verification-note{color:var(--hy-color-danger,var(--error,var(--legacy-color-ef4444)))}body.app-shell .newsletter-consent{border:1px solid var(--border-color,var(--hy-color-border));border-radius:var(--hy-radius-card,12px);background:color-mix(in srgb, var(--card,var(--hy-color-surface)) 84%, transparent);cursor:pointer;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:10px;min-width:0;padding:12px;display:grid}body.app-shell .newsletter-consent:has(input:disabled){cursor:default;opacity:.78}body.app-shell .newsletter-consent input[type=checkbox]{block-size:22px;inline-size:22px;accent-color:var(--brand-1,var(--hy-color-brand));flex:none;margin:1px 0 0}body.app-shell .newsletter-consent input[type=checkbox]:focus-visible{outline:3px solid color-mix(in srgb, var(--accent,var(--hy-color-accent)) 72%, transparent);outline-offset:3px}body.app-shell .newsletter-consent-copy{overflow-wrap:anywhere;gap:4px;display:grid}body.app-shell .newsletter-consent-copy strong{color:var(--text-1,var(--hy-color-text));font-size:.95rem}body.app-shell .newsletter-consent-copy small,body.app-shell .newsletter-separate-consent,body.app-shell .newsletter-verification-note{color:var(--text-2,var(--hy-color-text-muted));font-size:.82rem;line-height:1.45}body.app-shell .newsletter-separate-consent{align-items:flex-start;gap:8px;display:flex}body.app-shell .newsletter-separate-consent i{color:var(--brand-1,var(--hy-color-brand));flex:none;margin-top:3px}body.app-shell .newsletter-actions{flex-flow:wrap;align-items:stretch;gap:8px;display:flex}body.app-shell .newsletter-actions .btn{white-space:normal;flex:min(100%,15rem)}body.app-shell .newsletter-privacy-link{width:fit-content;max-width:100%;min-height:44px;color:var(--app-link,var(--brand-1,var(--hy-color-brand)));overflow-wrap:anywhere;align-items:center;font-size:.84rem;display:inline-flex}body.app-shell .learning-reminders-card{gap:var(--s-3,.75rem);border-color:color-mix(in srgb, var(--brand-1,var(--hy-color-brand)) 30%, var(--border-color,var(--hy-color-border)));display:grid}body.app-shell .learning-reminders-heading{justify-content:space-between;align-items:flex-start;gap:12px;min-width:0;display:flex}body.app-shell .learning-reminders-heading>div{min-width:0}body.app-shell .learning-reminders-heading :where(h2,p),body.app-shell .learning-reminders-next,body.app-shell .learning-reminders-error,body.app-shell .learning-reminders-separate-consent{margin:0}body.app-shell .learning-reminders-status{border:1px solid var(--border-color,var(--hy-color-border));border-radius:var(--hy-radius-pill,999px);max-width:min(100%,19rem);min-height:30px;color:var(--text-2,var(--hy-color-text-muted));background:color-mix(in srgb, var(--card,var(--hy-color-surface)) 88%, transparent);text-align:center;flex:0 auto;align-items:center;padding:5px 10px;font-size:.78rem;font-weight:800;line-height:1.25;display:inline-flex}body.app-shell .learning-reminders-card[data-reminder-state=active] .learning-reminders-status{color:var(--hy-color-success,var(--legacy-color-166534));border-color:color-mix(in srgb, var(--hy-color-success,var(--legacy-color-22c55e)) 48%, transparent);background:color-mix(in srgb, var(--hy-color-success,var(--legacy-color-22c55e)) 14%, var(--card,transparent))}body.app-shell .learning-reminders-card:is([data-reminder-state=paused],[data-reminder-state=paused_auto]) .learning-reminders-status{color:var(--hy-color-warning,var(--legacy-color-92400e));border-color:color-mix(in srgb, var(--hy-color-warning,var(--legacy-color-f59e0b)) 48%, transparent);background:color-mix(in srgb, var(--hy-color-warning,var(--legacy-color-f59e0b)) 14%, var(--card,transparent))}body.app-shell .learning-reminders-card:is([data-reminder-state=suppressed],[data-reminder-state=unavailable]) .learning-reminders-status,body.app-shell .learning-reminders-error{color:var(--hy-color-danger,var(--error,var(--legacy-color-ef4444)))}body.app-shell .learning-reminders-separate-consent{color:var(--text-2,var(--hy-color-text-muted));align-items:flex-start;gap:8px;font-size:.82rem;line-height:1.45;display:flex}body.app-shell .learning-reminders-separate-consent i{color:var(--brand-1,var(--hy-color-brand));flex:none;margin-top:3px}body.app-shell .learning-reminders-frequency,.modal-learning-reminder .learning-reminder-frequency-grid{border:0;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;min-width:0;margin:0;padding:0;display:grid}body.app-shell .learning-reminders-frequency legend,.modal-learning-reminder .learning-reminder-frequency-grid legend{color:var(--text-1,var(--hy-color-text));grid-column:1/-1;margin-bottom:2px;font-size:.88rem;font-weight:800}body.app-shell .learning-reminders-frequency label,.modal-learning-reminder .learning-reminder-frequency-option{border:1px solid var(--border-color,var(--hy-color-border));border-radius:var(--hy-radius-control,8px);background:color-mix(in srgb, var(--card,var(--hy-color-surface)) 84%, transparent);cursor:pointer;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:8px;min-width:0;min-height:48px;padding:10px;display:grid}body.app-shell .learning-reminders-frequency label:has(input:checked){border-color:var(--brand-1,var(--hy-color-brand));background:color-mix(in srgb, var(--brand-1,var(--hy-color-brand)) 12%, var(--card,transparent))}.modal-learning-reminder .learning-reminder-frequency-option:has(input:checked){border-color:var(--brand-1,var(--hy-color-brand));background:color-mix(in srgb, var(--brand-1,var(--hy-color-brand)) 12%, var(--card,transparent))}body.app-shell .learning-reminders-frequency label:has(input:disabled){cursor:default;opacity:.72}.modal-learning-reminder .learning-reminder-frequency-option:has(input:disabled){cursor:default;opacity:.72}body.app-shell .learning-reminders-frequency input,.modal-learning-reminder .learning-reminder-frequency-option input{block-size:20px;inline-size:20px;accent-color:var(--brand-1,var(--hy-color-brand));margin:1px 0 0}body.app-shell .learning-reminders-frequency label>span,.modal-learning-reminder .learning-reminder-frequency-option>span{gap:2px;min-width:0;display:grid}body.app-shell .learning-reminders-frequency small,.modal-learning-reminder .learning-reminder-frequency-option small,body.app-shell .learning-reminders-time small,body.app-shell .learning-reminders-next{color:var(--text-2,var(--hy-color-text-muted));font-size:.78rem;line-height:1.35}body.app-shell .learning-reminders-time{max-width:22rem}body.app-shell .learning-reminders-time input{min-height:44px}body.app-shell .learning-reminders-settings-consent,.modal-learning-reminder .learning-reminder-consent{border:1px solid var(--border-color,var(--hy-color-border));border-radius:var(--hy-radius-card,12px);background:color-mix(in srgb, var(--card,var(--hy-color-surface)) 84%, transparent);min-width:0;color:var(--text-1,var(--hy-color-text));cursor:pointer;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:10px;padding:12px;display:grid}body.app-shell .learning-reminders-settings-consent input,.modal-learning-reminder .learning-reminder-consent input{block-size:22px;inline-size:22px;accent-color:var(--brand-1,var(--hy-color-brand));margin:0}body.app-shell .learning-reminders-frequency input:focus-visible,body.app-shell .learning-reminders-settings-consent input:focus-visible,.modal-learning-reminder :where(input[type=radio],input[type=checkbox]):focus-visible{outline:3px solid color-mix(in srgb, var(--accent,var(--hy-color-accent)) 72%, transparent);outline-offset:3px}body.app-shell .learning-reminders-actions{flex-flow:wrap;align-items:stretch;gap:8px;display:flex}body.app-shell .learning-reminders-actions .btn{white-space:normal;flex:min(100%,14rem)}body.app-shell .learning-reminders-privacy-link{width:fit-content;max-width:100%;min-height:44px;color:var(--app-link,var(--brand-1,var(--hy-color-brand)));overflow-wrap:anywhere;align-items:center;font-size:.84rem;display:inline-flex}dialog.modal-learning-reminder{max-width:min(94vw,600px)}dialog.modal-learning-reminder .modal-form{width:min(560px,100vw - 32px);max-width:min(560px,100vw - 32px)}.modal-learning-reminder .learning-reminder-prompt{gap:14px;min-width:0;display:grid}.modal-learning-reminder .learning-reminder-prompt-lead,.modal-learning-reminder .learning-reminder-separate-consent,.modal-learning-reminder .learning-reminder-modal-error{margin:0}.modal-learning-reminder .learning-reminder-separate-consent{color:var(--text-2,var(--hy-color-text-muted));font-size:.8rem;line-height:1.45}.modal-learning-reminder .learning-reminder-separate-consent a{align-items:center;min-height:44px;display:inline-flex}.modal-learning-reminder .learning-reminder-modal-error{color:var(--hy-color-danger,var(--error,var(--legacy-color-ef4444)))}.modal-learning-reminder .learning-reminder-never-action{text-underline-offset:3px;text-decoration:underline}body.app-shell .supporter-status-pill,body.app-shell .supporter-status-muted{border-radius:999px;align-items:center;gap:8px;min-height:28px;padding:0 10px;font-size:.86rem;font-weight:900;display:inline-flex}body.app-shell .supporter-status-pill{color:var(--legacy-color-7c2d12);background:linear-gradient(135deg, var(--legacy-color-fde68a), var(--legacy-color-fbbf24))}body.app-shell .supporter-status-muted{color:var(--text-2,var(--legacy-color-cbd5e1));border:1px solid var(--border-color,var(--legacy-color-334155));background:color-mix(in srgb, var(--card,var(--legacy-color-101827)) 86%, transparent)}body.app-shell .support-modal-body{gap:12px;max-width:460px;display:grid}body.app-shell .support-modal-body p{margin:0}body.app-shell .support-modal-icon{block-size:48px;inline-size:48px;color:var(--legacy-color-7c2d12);background:linear-gradient(135deg, var(--legacy-color-fde68a), var(--legacy-color-fbbf24));box-shadow:0 10px 24px -16px var(--legacy-color-f59e0b);border-radius:999px;place-items:center;display:inline-grid}body.app-shell .support-amount-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;display:grid}body.app-shell .support-amount-btn{justify-content:center;min-width:0;padding-inline:8px}body.app-shell .support-custom-amount{color:var(--text-2,var(--legacy-color-cbd5e1));gap:6px;font-size:.86rem;font-weight:800;display:grid}body.app-shell .support-custom-amount input{border:1px solid var(--border-color,var(--legacy-color-334155));background:color-mix(in srgb, var(--card,var(--legacy-color-101827)) 88%, transparent);width:100%;min-height:42px;color:var(--text,var(--legacy-color-f8fafc));border-radius:8px;padding:8px 10px}body.app-shell .support-checkout-mount{background:var(--legacy-color-fff);border-radius:8px;min-height:360px;overflow:hidden}body.app-shell .support-checkout-status{min-height:20px}body.app-shell .support-banner-slot{min-width:0}body.app-shell .support-inline-banner{margin-block:var(--s-3,.75rem);border:1px solid color-mix(in srgb, var(--legacy-color-f59e0b) 28%, var(--border-color,var(--legacy-color-334155)));background:linear-gradient(135deg, color-mix(in srgb, var(--legacy-color-f59e0b) 13%, transparent), transparent 62%), color-mix(in srgb, var(--card,var(--legacy-color-101827)) 94%, transparent);border-radius:8px;justify-content:space-between;align-items:center;gap:16px;padding:14px 16px;display:flex;box-shadow:0 18px 46px -36px #0f172a8f}body.app-shell .support-inline-copy{min-width:0}body.app-shell .support-inline-copy strong{color:var(--text,var(--legacy-color-f8fafc));font-size:.98rem;line-height:1.25;display:block}body.app-shell .support-inline-copy p{color:var(--text-2,var(--legacy-color-cbd5e1));margin:4px 0 0;font-size:.9rem;line-height:1.4}body.app-shell .support-safe-copy{color:var(--text-2,var(--legacy-color-cbd5e1));overflow-wrap:anywhere;flex-wrap:wrap;align-items:center;gap:7px 9px;margin:8px 0 0;font-size:.84rem;line-height:1.35;display:flex}body.app-shell .support-platform-chip{max-inline-size:100%;min-height:26px;color:var(--legacy-color-7c2d12);background:linear-gradient(135deg, var(--legacy-color-fef3c7), var(--legacy-color-fbbf24));white-space:normal;border-radius:999px;align-items:center;gap:6px;padding:3px 8px;font-weight:900;display:inline-flex}body.app-shell .support-impact-slot,body.app-shell .support-progress-slot{min-width:0;margin-block:var(--s-3,.75rem)}body.app-shell .support-impact-card{border:1px solid color-mix(in srgb, var(--legacy-color-f59e0b) 30%, var(--border-color,var(--legacy-color-334155)));background:linear-gradient(135deg, color-mix(in srgb, var(--legacy-color-f59e0b) 12%, transparent), transparent 56%), color-mix(in srgb, var(--card,var(--legacy-color-101827)) 94%, transparent);border-radius:8px;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:14px;padding:16px;display:grid;box-shadow:0 20px 52px -40px #0f172a9e}body.app-shell .support-impact-card-compact{grid-template-columns:40px minmax(0,1fr) auto;padding:14px}body.app-shell .support-impact-icon{block-size:44px;inline-size:44px;color:var(--legacy-color-7c2d12);background:linear-gradient(135deg, var(--legacy-color-fde68a), var(--legacy-color-f59e0b));box-shadow:0 12px 26px -18px var(--legacy-color-f59e0b);border-radius:999px;place-items:center;display:inline-grid}body.app-shell .support-impact-card-compact .support-impact-icon{block-size:38px;inline-size:38px}body.app-shell .support-impact-copy{min-width:0}body.app-shell .support-impact-copy h2{color:var(--text,var(--legacy-color-f8fafc));letter-spacing:0;margin:0;font-size:1.05rem;line-height:1.2}body.app-shell .support-impact-copy p{color:var(--text-2,var(--legacy-color-cbd5e1));margin:5px 0 0;font-size:.92rem;line-height:1.42}body.app-shell .support-impact-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;min-width:min(100%,210px);display:flex}body.app-shell .support-impact-actions .btn{min-height:40px}body.app-shell .support-inline-actions{flex-wrap:wrap;flex:none;justify-content:flex-end;align-items:center;gap:8px;display:flex}body.app-shell .support-inline-actions .btn{min-height:40px}body.app-shell .support-inline-dismiss{flex:none;block-size:40px;inline-size:40px}@media (max-width:520px){body.app-shell .support-card-actions .btn{flex:100%;justify-content:center}body.app-shell .support-inline-banner{flex-direction:column;align-items:stretch}body.app-shell .support-impact-card,body.app-shell .support-impact-card-compact{grid-template-columns:1fr;align-items:stretch}body.app-shell .support-impact-icon{block-size:40px;inline-size:40px}body.app-shell .support-impact-actions{justify-content:stretch;min-width:0}body.app-shell .support-impact-actions .btn{flex:100%;justify-content:center}body.app-shell .support-inline-actions{justify-content:stretch}body.app-shell .support-inline-actions .btn{flex:100%;justify-content:center}}@keyframes landingIconSpin{to{transform:rotate(360deg)}}body.app-shell .bubble-body.glass{border-color:color-mix(in srgb, var(--app-panel-border) 74%, transparent);background:color-mix(in srgb, var(--app-panel-strong) 74%, transparent);box-shadow:none;border-radius:16px}body.app-shell .bubble-user .bubble-body,body.app-shell .bubble-user{box-shadow:none}body.app-shell .quick-actions{gap:6px}body.app-shell .qa-chip{border-radius:999px;min-height:34px;padding:6px 10px}@media (max-width:768px){body.app-shell .bubble{max-width:92%}body.app-shell .quick-actions{scrollbar-width:none;flex-wrap:nowrap;overflow-x:auto}body.app-shell .quick-actions::-webkit-scrollbar{display:none}}body.app-shell{--app-mobile-topbar-h:var(--app-topbar-h);--app-mobile-bottombar-h:calc(78px + env(safe-area-inset-bottom,0px));--app-mobile-viewport-h:calc(100dvh - var(--app-mobile-topbar-h) - var(--app-mobile-bottombar-h));--app-mobile-gutter-start:max(12px, env(safe-area-inset-left,0px));--app-mobile-gutter-end:max(12px, env(safe-area-inset-right,0px))}body.app-shell .chat-topbar-2026 :where(.icon-btn,.chat-persona-chip,.chat-level-chip,.lang-picker-trigger),body.app-shell .goal-sections .chip,body.app-shell .dialect-pill,body.app-shell .empty-state-cta{min-height:44px}@media (max-width:768px){body.app-shell{grid-template-columns:1fr;grid-template-rows:var(--app-mobile-topbar-h) minmax(0, 1fr)}body.app-shell .app-topbar{min-height:var(--app-mobile-topbar-h);padding-inline-start:var(--app-mobile-gutter-start);padding-inline-end:var(--app-mobile-gutter-end)}body.app-shell .app-brand{min-width:0}body.app-shell .app-brand-logo{width:min(118px,34vw);height:auto}body.app-shell .topbar-actions{min-width:0}body.app-shell .user-chip{max-width:min(44vw,168px)}body.app-shell .app-main{min-height:var(--app-mobile-viewport-h);padding:12px var(--app-mobile-gutter-end) calc(var(--app-mobile-bottombar-h) + 12px) var(--app-mobile-gutter-start)}body.app-shell .view:not([hidden]){min-width:0}body.app-shell .app-bottombar-2026{min-height:var(--app-mobile-bottombar-h);padding-top:5px;padding-bottom:calc(5px + env(safe-area-inset-bottom,0px));grid-template-columns:minmax(0,1fr) minmax(0,1fr) 62px minmax(0,1fr) minmax(0,1fr);gap:2px;padding-inline-start:max(6px, env(safe-area-inset-left,0px));padding-inline-end:max(6px, env(safe-area-inset-right,0px));display:grid}body.app-shell .app-bottombar-2026 .bb-tab{gap:1px;min-width:0;min-height:52px;padding-inline:2px}body.app-shell .app-bottombar-2026 .bb-tab i{font-size:1rem}body.app-shell .app-bottombar-2026 .bb-tab span{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:.64rem;line-height:1.05;overflow:hidden}body.app-shell .app-bottombar-2026 .bb-fab{width:56px;height:56px;transform:translateY(-8px)}body.app-shell .app-bottombar-2026 .bb-fab i{font-size:1.25rem}body.app-shell .app-bottombar-2026 .bb-fab-label{display:none}body.app-shell :where(.home-shell-v2,.you-shell,.progress-shell,.settings-shell){gap:12px;width:100%;max-width:100%}body.app-shell :where(.home-greeting,.home-next,.home-card,.home-skills,.home-tree,.progress-header,.progress-grid .card,.settings-shell .card){overflow-wrap:anywhere;border-radius:18px}body.app-shell .greeting-title{text-wrap:balance;line-height:1.1}body.app-shell .empty-state-cta{white-space:normal;justify-content:center;width:100%;min-width:0;min-height:44px}body.app-shell .settings-shell .placement-retake-row,body.app-shell .link-google-cta{grid-template-columns:minmax(0,1fr)}body.app-shell .goal-sections{gap:12px;min-width:0;display:grid}body.app-shell .goal-section{min-width:0}body.app-shell .goal-section-label{overflow-wrap:anywhere;max-width:100%}body.app-shell .chip-group,body.app-shell .dialect-row{flex-wrap:wrap;gap:8px;min-width:0;display:flex}body.app-shell .goal-sections .chip,body.app-shell .dialect-pill{white-space:normal;overflow-wrap:anywhere;min-width:0;max-width:100%;min-height:44px}body.app-shell .goal-sections .chip-label,body.app-shell .dialect-pill span{overflow-wrap:anywhere;min-width:0}body.app-shell .hours-slider{min-width:0}body.app-shell .app-main[data-active-view=talk]{height:var(--app-mobile-viewport-h);max-height:var(--app-mobile-viewport-h);min-height:0;padding:8px var(--app-mobile-gutter-end) 8px var(--app-mobile-gutter-start);overflow:hidden}body.app-shell .view[data-view=talk]:not([hidden]){height:100%;min-height:0}body.app-shell .bubble{max-width:94%}body.app-shell .quick-actions{scrollbar-width:none;flex-wrap:nowrap;overflow-x:auto}body.app-shell .quick-actions::-webkit-scrollbar{display:none}}@media (max-width:380px){body.app-shell{--app-mobile-gutter-start:max(8px, env(safe-area-inset-left,0px));--app-mobile-gutter-end:max(8px, env(safe-area-inset-right,0px))}body.app-shell .user-chip-caret,body.app-shell .app-bottombar-2026 .bb-fab-label,body.app-shell .quick-actions{display:none}body.app-shell .app-main[data-active-view=talk]{padding-block:6px}}@media (orientation:landscape) and (max-height:500px) and (max-width:932px){body.app-shell{--app-mobile-topbar-h:var(--app-topbar-h);--app-mobile-bottombar-h:0px;--app-mobile-viewport-h:calc(100dvh - var(--app-mobile-topbar-h))}body.app-shell .app-main[data-active-view=talk]{height:var(--app-mobile-viewport-h);max-height:var(--app-mobile-viewport-h);min-height:0;padding-block:6px;overflow:hidden}body.app-shell .quick-actions{display:none}}@media (max-width:360px){body.app-shell .app-main[data-active-view=games],body.app-shell .app-main[data-active-view=practice]{padding-inline:max(8px, env(safe-area-inset-left,0px)) max(8px, env(safe-area-inset-right,0px))}body.app-shell .image-quest-visual{min-height:clamp(190px,58vw,280px)}}body.app-shell,body.app-shell .app-main,body.app-shell .view:not([hidden]){min-width:0}body.app-shell :where(.home-shell-v2,.talk-shell,.chat-shell-2026b,.voice2-shell-2026,.practice-shell,.games-arcade-shell,.vocab-shell,.you-shell,.progress-shell,.settings-shell,.onboarding-shell,.placement-modal-body){box-sizing:border-box;min-width:0;max-width:100%}body.app-shell :where(.home-shell-v2,.practice-shell,.games-arcade-shell,.vocab-shell,.you-shell,.progress-shell,.settings-shell,.onboarding-shell,.placement-modal-body){container-type:inline-size}body.app-shell :where(img,video,canvas,svg,.card,.home-card,.loop-cell,.practice-card,.games-stage,.vocab-area,.progress-header,.progress-grid .card,.settings-shell .card,.empty-state,.error-state,.router-error,.modal-form){max-width:100%}body.app-shell :where(.btn,.chip-btn,.chat-mode-tab,.talk-mode-btn,.you-tab,.games-mode-card,.image-quest-option,.sound-pop-bubble,.sound-pop-listen .btn,.vocab-mode-btn,.placement-option) :where(span,strong,small){min-width:0}body.app-shell :where(.home-card,.practice-card,.games-mission,.games-rank-row,.vocab-smart-card,.vocab-lab-card,.progress-grid .card,.settings-shell .card,.onboarding-card,.placement-option,.message-stream,.bubble-body){overflow-wrap:anywhere;word-break:normal}body.app-shell :where(input,select,textarea,.composer-input){min-width:0;max-width:100%}@container settings-surface (width<=520px){.settings-shell :where(.settings-actions,.theme-row,.row,.placement-retake-actions){align-items:stretch}.settings-shell :where(.settings-actions,.theme-row,.row,.placement-retake-actions)>*{min-width:0}}body.app-shell{--pro-control-min:44px;--pro-control-radius:10px;--pro-card-radius:var(--r-3,16px);--pro-control-gap:clamp(8px, 1.6vw, 12px);--pro-panel-pad:clamp(12px, 2.4vw, 18px);--pro-action-shadow:0 16px 34px -24px #000000b8;--pro-focus-ring:0 0 0 3px color-mix(in srgb, var(--brand-3,var(--legacy-color-4cc9f0)) 42%, transparent);--pro-bottom-safe:calc(var(--app-mobile-bottombar-h,0px) + 18px)}body.app-shell :where(.app-topbar,.app-sidenav-2026,.app-bottombar-2026,.chat-topbar-2026,.composer,.voice2-dock-2026.floating,.onboarding-nav,.placement-actions,.modal-actions){box-sizing:border-box;max-width:100%}body.app-shell :where(.btn,.empty-state-cta,.practice-reco,.vocab-lab-head .btn,.vocab-smart-card .btn,.home-card .phrase-cta,.home-card .word-practice,.sound-pop-listen .btn,.onboarding-nav .btn,.placement-actions .btn,.modal-actions .btn){white-space:normal;line-height:1.18}body.app-shell :where(button,a,[role=button],[role=tab],[role=link],input,select,textarea,summary):focus-visible{outline:2px solid color-mix(in srgb, var(--brand-3,var(--legacy-color-4cc9f0)) 78%, var(--legacy-color-ffffff));outline-offset:3px;box-shadow:var(--pro-focus-ring)}body.app-shell :where(.home-card,.loop-cell,.practice-card,.games-stage,.games-mode-card,.vocab-area,.vocab-smart-card,.vocab-lab-card,.progress-header,.progress-grid .card,.settings-shell .card,.onboarding-card,.signin-card,.api-down-banner,.empty-state,.error-state,.router-error,.modal-form,.placement-option){overflow-wrap:anywhere;scrollbar-gutter:stable;background-clip:padding-box;min-width:0}body.app-shell :where(.chat-mode-bar,.talk-mode-toggle,.you-tabs,.chip-group,.goal-sections,.settings-actions,.theme-row,.row,.placement-retake-actions,.modal-actions,.placement-actions,.onboarding-nav,.image-quest-options,.sound-pop-bubbles,.games-summary-actions,.home-card .card-actions){gap:var(--pro-control-gap);min-width:0}body.app-shell :where(.btn-primary,.dock-cta,.empty-state-cta,.practice-reco,.sound-pop-listen .btn-primary,.onboarding-nav,.placement-actions,.modal-actions){scroll-margin-bottom:var(--pro-bottom-safe)}body.app-shell :where(.icon-btn,.mic-btn,.send-btn,.dock-btn,.bb-tab,.bb-fab){flex-shrink:0}body.app-shell :where(.app-bottombar-2026,.voice2-dock-2026.floating,.onboarding-nav){contain:layout paint}@media (max-width:768px){body.app-shell :where(.home-shell-v2,.talk-shell,.practice-shell,.games-arcade-shell,.vocab-shell,.you-shell,.progress-shell,.settings-shell){scroll-padding-bottom:var(--pro-bottom-safe)}}@media (hover:hover) and (pointer:fine){body.app-shell :where(.btn,.home-card,.practice-card,.games-mode-card,.vocab-mode-btn,.placement-option):hover{transition-property:transform,border-color,background-color,box-shadow,color}}body.app-shell .talk-shell .voice2-shell.cinema.voice2-shell-2026>:where(.voice2-header,.persona-carousel-host,.cinema-stage,.caption-stream,.voice2-preflight-2026,.voice2-dock-2026){min-width:0;position:relative}@media (max-width:360px){body.app-shell .app-main[data-active-view=games]{padding-inline:max(4px, env(safe-area-inset-left,0px)) max(4px, env(safe-area-inset-right,0px))}}body.app-shell .app-topbar :where(.app-brand,.icon-btn,.user-chip-btn){min-height:var(--talk-flagship-control,44px)}body.app-shell .qa-chip,body.app-shell .bubble-actions button{min-width:var(--talk-flagship-control);min-height:var(--talk-flagship-control);touch-action:manipulation}body.app-shell .bubble-meta{color:var(--talk-flagship-muted)}body.app-shell .bubble{max-width:min(76ch,88%)}body.app-shell .bubble-body{border-radius:18px}body.app-shell .bubble-assistant .bubble-body.glass{background:linear-gradient(180deg, color-mix(in srgb, var(--legacy-color-ffffff) 8%, transparent), color-mix(in srgb, var(--app-panel-strong,var(--legacy-color-101827)) 78%, transparent));border-color:color-mix(in srgb, var(--chat-flagship-accent) 22%, var(--app-panel-border,#ffffff24))}body.app-shell .bubble-user .bubble-body{background:linear-gradient(135deg, color-mix(in srgb, var(--chat-flagship-accent) 82%, var(--brand-1,var(--legacy-color-4361ee))), color-mix(in srgb, var(--brand-1,var(--legacy-color-4361ee)) 88%, var(--legacy-color-111827)));color:var(--legacy-color-ffffff)}body.app-shell .avatar-tutor{box-shadow:0 12px 22px -18px color-mix(in srgb, var(--chat-flagship-accent) 80%, var(--legacy-color-000000))}body.app-shell .bubble-actions button{border-radius:999px;place-items:center;display:inline-grid}body.app-shell .quick-actions{scrollbar-width:none;gap:8px}body.app-shell .quick-actions::-webkit-scrollbar{display:none}body.app-shell .qa-chip{background:color-mix(in srgb, var(--chat-flagship-accent) 12%, transparent);border-color:color-mix(in srgb, var(--chat-flagship-accent) 24%, var(--app-panel-border,#ffffff24));border-radius:999px}@media (max-width:768px){body.app-shell .bubble{max-width:92%}body.app-shell .quick-actions{padding-bottom:1px;overflow-x:auto}body.app-shell .qa-chip{flex:none}}@media (max-width:360px){body.app-shell .qa-chip span:not(.qa-chip-icon){display:none}body.app-shell .qa-chip{min-width:var(--talk-flagship-control);justify-content:center}}@media (orientation:landscape) and (max-height:500px){body.app-shell .quick-actions{display:none}body.app-shell .bubble{max-width:min(76ch,86%)}}[data-motion=reduced]{scroll-behavior:auto}[data-motion=reduced] body.app-shell *,[data-motion=reduced] body.app-shell :before,[data-motion=reduced] body.app-shell :after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}@media (max-width:720px),(max-height:620px){body.app-shell .session-summary-actions{grid-template-columns:minmax(0,1fr);display:grid}}html,body{max-width:100%}body.app-shell :where(.view,.app-main,.home-shell,.practice-shell,.games-shell,.vocab-shell,.settings-shell,.you-shell,.talk-shell){min-width:0}body.app-shell :where(h1,h2,h3,h4,p,strong,small,span,label,button){overflow-wrap:normal;word-break:normal}body.app-shell :where([data-user-text],[data-long-id],code,pre,.url,.email){overflow-wrap:anywhere;word-break:break-word}@supports (content-visibility:auto){body.app-shell .leagues-ladder,body.app-shell .leagues-cohort{content-visibility:auto;contain-intrinsic-size:320px}}body.app-shell :where(h1,h2,h3){text-wrap:balance;letter-spacing:0}body.app-shell :where(p,li,small){text-wrap:pretty}body.app-shell :where(button,.btn,.icon-btn,input,select,textarea,[role=button]){touch-action:manipulation}body.app-shell :where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:2px solid color-mix(in srgb, var(--app-accent,var(--legacy-color-14b8a6)) 68%, white);outline-offset:3px}body.app-shell .generated-board,body.app-shell .image-quest-board,body.app-shell .sound-pop-board{min-width:0;overflow:hidden}body.app-shell .support-inline-actions,body.app-shell .support-impact-actions{flex-wrap:wrap;gap:8px;display:flex}body.app-shell .support-modal-body{overscroll-behavior:contain;width:min(100%,620px);max-height:min(78dvh,720px);overflow:auto}body.app-shell .support-currency-note{border:1px solid color-mix(in srgb, var(--app-accent,var(--legacy-color-14b8a6)) 34%, var(--app-border));width:fit-content;max-width:100%;color:var(--app-text);background:color-mix(in srgb, var(--app-accent,var(--legacy-color-14b8a6)) 10%, transparent);border-radius:8px;align-items:center;margin:0;padding:6px 9px;font-size:.84rem;font-weight:700;display:inline-flex}body.app-shell .support-amount-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,112px),1fr));gap:8px}body.app-shell .support-amount-btn{white-space:normal;justify-content:center}body.app-shell .support-safe-copy{align-items:flex-start;gap:8px}body.app-shell .support-safe-copy>span{min-width:0}@media (max-width:720px){body.app-shell .support-modal-body{width:100%;max-height:min(82dvh,660px)}}@media (max-width:420px){body.app-shell .support-amount-grid,body.app-shell .support-inline-actions,body.app-shell .support-impact-actions{grid-template-columns:minmax(0,1fr);display:grid}body.app-shell .support-currency-note{width:100%}}body.app-shell{--theme-accent-text:var(--legacy-color-bae6fd);--theme-control-text:var(--text-1,var(--legacy-color-f8fafc));--theme-control-muted:var(--text-2,var(--legacy-color-d8dee9));--theme-control-bg:color-mix(in srgb, var(--app-panel-strong,#0c1226d6) 88%, transparent);--theme-control-bg-hover:color-mix(in srgb, var(--brand-3,var(--legacy-color-4cc9f0)) 16%, var(--app-panel-strong,#0c1226d6));--theme-control-border:var(--legacy-color-94a3b8);--theme-control-border-soft:color-mix(in srgb, var(--legacy-color-94a3b8) 68%, transparent);--theme-control-active-bg:var(--app-action-gradient);--theme-control-active-text:var(--text-on-accent,var(--legacy-color-ffffff));--theme-control-active-border:color-mix(in srgb, var(--legacy-color-ffffff) 44%, transparent);--theme-line-strong:var(--legacy-color-94a3b8)}:root[data-theme=light] body.app-shell,[data-theme=light] body.app-shell{--theme-accent-text:var(--legacy-color-3657d8);--theme-control-text:var(--legacy-color-0f172a);--theme-control-muted:var(--legacy-color-334155);--theme-control-bg:var(--legacy-color-ffffff);--theme-control-bg-hover:var(--legacy-color-eef4ff);--theme-control-border:var(--legacy-color-64748b);--theme-control-border-soft:var(--legacy-color-64748b);--theme-control-active-bg:var(--app-action-gradient);--theme-control-active-text:var(--legacy-color-ffffff);--theme-control-active-border:var(--legacy-color-3657d8);--theme-line-strong:var(--legacy-color-64748b)}body.app-shell .settings-shell :where(.settings-field>span,.muted,.toggle-text small,.placement-retake-blurb,.support-safe-copy,.support-card-trust){color:var(--theme-control-muted,var(--app-text-muted,var(--text-2,var(--legacy-color-334155))))}body.app-shell :where(.btn-primary,.btn-next-primary,.send-btn,.dock-cta,.bb-fab,.conv-list-new,.practice-reco,.skills-coldstart-cta,.loop-vocab-link.is-due,.empty-state-cta){color:var(--text-on-accent,var(--legacy-color-ffffff));border-color:#0000}body.app-shell .generated-prompt .sprint-icon,body.app-shell .plan-completion strong,body.app-shell .bubble-streaming .bubble-content:after{color:var(--theme-accent-text)}body.app-shell :where(.practice-focus-chip,.sprint-option,.sentence-token,.image-quest-scene,.sound-pop-listen,.vocab-lab-empty,.vocab-lab-card,.practice-flow,.practice-hero-visual,.games-summary-mode){border-color:var(--theme-control-border-soft)}body.app-shell .onboarding-shell :is(.goal-sections .chip,.dialect-pill,.onboarding-nav .btn){color:var(--theme-control-text);background:var(--theme-control-bg);border-color:var(--theme-control-border);min-height:44px}body.app-shell .onboarding-shell :is(.goal-sections .chip:hover,.dialect-pill:hover,.onboarding-nav .btn:hover){color:var(--theme-control-text);background:var(--theme-control-bg-hover);border-color:var(--theme-control-border)}body.app-shell .onboarding-shell :is(.goal-sections .chip.active,.dialect-pill.active,.onboarding-nav .btn-primary){color:var(--theme-control-active-text);background:var(--theme-control-active-bg);border-color:var(--theme-control-active-border)}body.app-shell .chip.goal-chip-recommended .chip-badge{color:var(--legacy-color-14532d);background:var(--legacy-color-dcfce7);border-color:var(--legacy-color-15803d)}:root[data-theme=dark] body.app-shell .chip.goal-chip-recommended .chip-badge{color:var(--legacy-color-dcfce7);border-color:var(--legacy-color-86efac);background:#1665346b}body.app-shell .btn-ghost,body.app-shell .btn-ghost-light,:root[data-theme=light] body.app-shell .btn-ghost,:root[data-theme=dark] body.app-shell .btn-ghost,:root[data-theme=light] body.app-shell .btn-ghost-light,:root[data-theme=dark] body.app-shell .btn-ghost-light{color:var(--theme-control-text);background:var(--theme-control-bg);border-color:var(--theme-control-border);min-height:44px}body.app-shell .btn-ghost:hover,body.app-shell .btn-ghost-light:hover,:root[data-theme=light] body.app-shell .btn-ghost:hover,:root[data-theme=dark] body.app-shell .btn-ghost:hover,:root[data-theme=light] body.app-shell .btn-ghost-light:hover,:root[data-theme=dark] body.app-shell .btn-ghost-light:hover{color:var(--theme-control-text);background:var(--theme-control-bg-hover);border-color:var(--theme-control-border)}body.app-shell .btn-danger,:root[data-theme=light] body.app-shell .btn-danger{color:var(--legacy-color-ffffff);background:var(--legacy-color-b42318);border-color:var(--legacy-color-ffffff)}body.app-shell .btn-danger:hover,:root[data-theme=light] body.app-shell .btn-danger:hover{color:var(--legacy-color-ffffff);background:var(--legacy-color-991b1b);border-color:var(--legacy-color-ffffff)}:root[data-theme=dark] body.app-shell .btn-danger{color:var(--legacy-color-ffffff);background:var(--legacy-color-991b1b);border-color:var(--legacy-color-fca5a5)}:root[data-theme=dark] body.app-shell .btn-danger:hover{color:var(--legacy-color-ffffff);background:var(--legacy-color-b91c1c);border-color:var(--legacy-color-fecaca)}body.app-shell .game-learning-feedback{background:color-mix(in srgb, var(--card) 88%, transparent);border:1px solid #94a3b86b;border-radius:8px;grid-template-columns:minmax(72px,96px) minmax(0,1fr);align-items:center;gap:12px;width:100%;min-width:0;padding:12px;display:grid}body.app-shell .game-learning-feedback.is-correct{border-color:color-mix(in srgb, var(--legacy-color-22c55e) 42%, #94a3b86b)}body.app-shell .game-learning-feedback.is-wrong{border-color:color-mix(in srgb, var(--legacy-color-ef4444) 42%, #94a3b86b)}body.app-shell .game-feedback-visual{aspect-ratio:1;border-radius:8px;width:min(96px,24vw)}body.app-shell .game-learning-feedback-copy{gap:5px;min-width:0;display:grid}body.app-shell .game-learning-feedback-copy span{color:var(--text-secondary);font-size:.82rem;font-weight:750}body.app-shell .game-learning-feedback-copy strong{color:var(--text);overflow-wrap:anywhere;font-size:clamp(1.05rem,2vw,1.28rem);line-height:1.1}body.app-shell .game-learning-feedback-copy small{color:var(--text-secondary);overflow-wrap:anywhere;line-height:1.35}body.app-shell .game-learning-feedback-copy .btn{width:fit-content;max-width:100%;min-height:44px}body.app-shell .sound-pop-bubble:disabled{cursor:not-allowed;opacity:.58;transform:none}@media (max-width:420px){body.app-shell .game-learning-feedback{grid-template-columns:1fr}body.app-shell .game-feedback-visual{width:min(132px,44vw)}}body.app-shell :where(.app-topbar,.app-sidenav,.app-bottombar,.app-main){min-width:0}body.app-shell .app-bottombar{inset-inline:0}body.app-shell :where(.app-bottombar a,.bb-tab,.bb-fab){min-inline-size:44px}body.app-shell .app-sidenav-toggle{border:1px solid var(--app-panel-border,#ffffff1f);width:44px;min-width:44px;height:44px;min-height:44px;color:var(--text-1,var(--legacy-color-ffffff));background:color-mix(in srgb, var(--app-panel-strong,var(--legacy-color-101827)) 72%, transparent);cursor:pointer;border-radius:999px;place-items:center;margin:0 auto 14px;display:inline-grid}body.app-shell .app-sidenav-toggle:hover{background:var(--app-chrome-hover,#ffffff14)}body.app-shell .app-sidenav.collapsed{width:64px;padding-inline:8px}body.app-shell.has-collapsed-sidenav{grid-template-columns:64px minmax(0,1fr)}body.app-shell .app-sidenav.collapsed ul{align-items:center}body.app-shell .app-sidenav.collapsed a{justify-content:center;width:48px;min-height:48px;padding-inline:0}body.app-shell .app-sidenav.collapsed a span{display:inline-block;clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}@media (max-width:768px){body.app-shell .app-sidenav-toggle{display:none}}body.app-shell.app-focus-mode{grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1fr);overflow:hidden;grid-template-areas:"main"!important;padding-bottom:0!important}body.app-shell.app-focus-mode .app-sidenav,body.app-shell.app-focus-mode .app-bottombar{display:none}body.app-shell.app-focus-mode .app-topbar{width:auto;min-height:0;box-shadow:none;pointer-events:none;background:0 0;border:0;padding:0;position:fixed;inset-block-start:max(8px, env(safe-area-inset-top,0px));inset-inline-start:auto;inset-inline-end:max(8px, env(safe-area-inset-right,0px))}body.app-shell.app-focus-mode .app-topbar .app-brand,body.app-shell.app-focus-mode .app-topbar [data-action=theme-toggle],body.app-shell.app-focus-mode .app-topbar .user-menu-wrap{display:none}body.app-shell.app-focus-mode .app-topbar .topbar-actions{pointer-events:none}body.app-shell.app-focus-mode .app-main{width:100%;height:100dvh;min-height:0;max-height:100dvh;padding:max(8px, env(safe-area-inset-top,0px)) max(8px, env(safe-area-inset-right,0px)) max(8px, env(safe-area-inset-bottom,0px)) max(8px, env(safe-area-inset-left,0px));grid-area:main;overflow:auto}body.app-shell.app-focus-mode .view[data-view=talk]:not([hidden]){height:100%;min-height:0;max-height:100%}@media (max-width:480px){body.app-shell .you-shell[data-active-tab=progress] :where(.you-tab,.progress-header,.progress-id,.progress-pillrow,.progress-pillrow>*,.progress-grid .card,.recent-link,.badge-tile,.streak-milestone-tile,.vocab-summary-row){min-width:0;max-width:100%}body.app-shell .you-shell[data-active-tab=progress] .card-vocab .vocab-summary-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}}body.app-shell :where(.view,.app-main,.talk-shell,.talk-host,.chat-shell-2026b,.voice2-shell.cinema.voice2-shell-2026,.you-shell,.progress-grid){min-width:0}body.app-shell .talk-shell :where(.chat-shell-2026b,.voice2-shell.cinema.voice2-shell-2026.voice-surface){inline-size:100%;max-inline-size:100%}@media (max-width:768px){body.app-shell .app-bottombar-2026 .bb-fab:active{transform:translateY(-6px)scale(.96)}}body.app-shell .next-curriculum-strip{flex-wrap:wrap;align-items:center;gap:6px;margin-top:8px;display:flex}body.app-shell .next-curriculum-strip span{border:1px solid color-mix(in srgb, var(--text) 14%, transparent);background:color-mix(in srgb, var(--card) 82%, transparent);max-width:100%;min-height:28px;color:var(--text);overflow-wrap:anywhere;border-radius:8px;align-items:center;gap:6px;padding:5px 8px;font-size:.78rem;line-height:1.2;display:inline-flex}body.app-shell .next-curriculum-strip span:first-child{font-weight:800}body.app-shell .skill-node-topic{inset-inline-start:50%;width:128px;color:var(--muted);text-align:center;overflow-wrap:anywhere;font-size:.68rem;line-height:1.1;position:absolute;top:92px;transform:translate(-50%)}body.app-shell .card-curriculum{min-height:220px}body.app-shell .curriculum-topic-card,body.app-shell .curriculum-topic-empty{gap:10px;min-width:0;display:grid}body.app-shell .curriculum-topic-kicker{color:var(--muted);letter-spacing:0;text-transform:uppercase;font-size:.78rem;font-weight:800}body.app-shell .curriculum-topic-card strong{font-size:1.05rem;line-height:1.25}body.app-shell .curriculum-can-do{color:var(--text);margin:0;font-size:.9rem;line-height:1.35}body.app-shell .curriculum-skill-row,body.app-shell .curriculum-mission-list{flex-wrap:wrap;align-items:center;gap:6px;min-width:0;display:flex}body.app-shell .curriculum-skill-row span,body.app-shell .curriculum-mission{border:1px solid color-mix(in srgb, var(--text) 14%, transparent);background:color-mix(in srgb, var(--card) 82%, transparent);max-width:100%;min-height:28px;color:var(--text);overflow-wrap:anywhere;border-radius:8px;align-items:center;gap:6px;padding:5px 8px;font-size:.76rem;font-weight:760;line-height:1.2;display:inline-flex}body.app-shell .curriculum-skill-row span{color:var(--muted)}body.app-shell .curriculum-mission.complete{border-color:color-mix(in srgb, var(--legacy-color-14b8a6) 42%, transparent);background:color-mix(in srgb, var(--legacy-color-14b8a6) 12%, var(--card))}body.app-shell .curriculum-mission b{color:var(--muted);margin-inline-start:2px;font-size:.72rem;font-weight:850}body.app-shell .curriculum-topic-meter{background:color-mix(in srgb, var(--text) 10%, transparent);border-radius:999px;width:100%;height:10px;overflow:hidden}body.app-shell .curriculum-topic-meter span{transform-origin:0;border-radius:inherit;background:linear-gradient(90deg, var(--legacy-color-14b8a6), var(--legacy-color-3b82f6));width:100%;height:100%;display:block}body.app-shell .curriculum-checkpoint{border:1px solid color-mix(in srgb, var(--text) 12%, transparent);background:color-mix(in srgb, var(--card) 76%, transparent);min-width:0;color:var(--text);border-radius:8px;grid-template-columns:24px minmax(0,1fr);align-items:center;gap:8px;padding:10px;font-size:.84rem;line-height:1.3;display:grid}body.app-shell .curriculum-checkpoint.complete{border-color:color-mix(in srgb, var(--legacy-color-14b8a6) 40%, transparent);background:color-mix(in srgb, var(--legacy-color-14b8a6) 12%, var(--card))}body.app-shell .curriculum-checkpoint i{color:var(--legacy-color-14b8a6)}body.app-shell .curriculum-next{margin:0}@media (max-width:720px){body.app-shell .next-curriculum-strip{gap:5px}body.app-shell .next-curriculum-strip span,body.app-shell .curriculum-mission{width:100%}body.app-shell .skill-node-topic{display:none}}.course-roadmap{gap:16px;min-width:0;display:grid}.course-roadmap-summary{justify-content:space-between;align-items:flex-start;gap:14px;min-width:0;display:flex}.course-roadmap-copy{min-width:0}.course-roadmap-copy h2,.course-roadmap-copy p{overflow-wrap:anywhere;margin:0}.course-roadmap-copy h2{margin-block-start:5px;font-size:clamp(1.15rem,2.4vw,1.55rem)}.course-roadmap-copy p{color:var(--text-2,var(--text-secondary));margin-block-start:6px}.course-roadmap-eyebrow,.course-roadmap-status{align-items:center;gap:7px;font-size:.78rem;font-weight:850;display:inline-flex}.course-roadmap-eyebrow{color:var(--brand-3,var(--primary));text-transform:uppercase;letter-spacing:.04em}.course-roadmap-status{border:1px solid var(--border-color);background:color-mix(in srgb, var(--primary) 10%, transparent);text-align:center;overflow-wrap:anywhere;border-radius:999px;flex:none;max-width:42%;min-height:30px;padding:5px 9px}.course-roadmap-meter{background:color-mix(in srgb, var(--text,white) 10%, transparent);border-radius:999px;height:9px;overflow:hidden}.course-roadmap-meter>span{border-radius:inherit;background:linear-gradient(90deg, var(--primary), var(--accent));transform-origin:0%;width:100%;height:100%;display:block}.course-roadmap-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.course-roadmap-stats>span{background:color-mix(in srgb, var(--text,white) 5%, transparent);min-width:0;color:var(--text-2,var(--text-secondary));overflow-wrap:anywhere;border-radius:10px;gap:2px;padding:9px;font-size:.75rem;display:grid}.course-roadmap-stats strong{color:var(--text-1,var(--text));font-size:.9rem}.course-roadmap-level-checkpoint{border:1px solid color-mix(in srgb, var(--primary) 38%, var(--border-color));background:color-mix(in srgb, var(--primary) 9%, transparent);border-radius:12px;grid-template-columns:38px minmax(0,1fr);align-items:start;gap:10px;min-width:0;padding:11px 12px;display:grid}.course-roadmap-level-checkpoint.is-repair{border-color:color-mix(in srgb, var(--warning,var(--legacy-color-fbbf24)) 42%, var(--border-color));background:color-mix(in srgb, var(--warning,var(--legacy-color-fbbf24)) 8%, transparent)}.course-roadmap-level-checkpoint.is-passed{border-color:color-mix(in srgb, var(--success,var(--legacy-color-22c55e)) 42%, var(--border-color));background:color-mix(in srgb, var(--success,var(--legacy-color-22c55e)) 8%, transparent)}.course-roadmap-level-icon{background:color-mix(in srgb, var(--primary) 15%, transparent);width:38px;height:38px;color:var(--primary);border-radius:11px;place-items:center;display:grid}.course-roadmap-level-checkpoint.is-repair .course-roadmap-level-icon{color:var(--warning,var(--legacy-color-fbbf24))}.course-roadmap-level-checkpoint.is-passed .course-roadmap-level-icon{color:var(--success,var(--legacy-color-22c55e))}.course-roadmap-level-checkpoint :where(h3,p,small){overflow-wrap:anywhere;margin:0}.course-roadmap-level-checkpoint h3{font-size:.94rem}.course-roadmap-level-checkpoint p,.course-roadmap-level-checkpoint small{color:var(--text-2,var(--text-secondary));margin-block-start:3px;font-size:.78rem;line-height:1.4;display:block}.course-roadmap-topics{grid-template-columns:repeat(auto-fit,minmax(min(190px,100%),1fr));gap:9px;margin:0;padding:0;list-style:none;display:grid}.course-roadmap-topic{border:1px solid var(--border-color);background:color-mix(in srgb, var(--text,white) 4%, transparent);border-radius:10px;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:9px;min-width:0;min-height:54px;padding:8px 10px;display:grid}.course-roadmap-topic[aria-current=step]{border-color:color-mix(in srgb, var(--primary) 62%, var(--border-color));background:color-mix(in srgb, var(--primary) 12%, transparent)}.course-roadmap-topic:is(.is-current,.is-repair,.is-mastery_ready){border-color:color-mix(in srgb, var(--primary) 62%, var(--border-color))}.course-roadmap-topic.is-locked{opacity:.62}.course-roadmap-topic-marker{background:color-mix(in srgb, var(--primary) 16%, transparent);width:34px;height:34px;color:var(--primary);border-radius:50%;place-items:center;display:grid}.course-roadmap-topic.is-mastered .course-roadmap-topic-marker{background:color-mix(in srgb, var(--success) 18%, transparent);color:var(--success)}.course-roadmap-topic-copy{gap:2px;min-width:0;display:grid}.course-roadmap-topic-copy :where(strong,small){overflow-wrap:anywhere;min-width:0}.course-roadmap-topic-copy small{color:var(--text-2,var(--text-secondary))}.course-roadmap:not(.is-compact) .course-roadmap-topics{grid-template-columns:minmax(0,1fr);gap:12px}.course-roadmap:not(.is-compact) .course-roadmap-topic{border-radius:14px;grid-template-columns:38px minmax(0,1fr);align-items:start;min-height:0;padding:clamp(12px,2vw,18px)}.course-roadmap:not(.is-compact) .course-roadmap-topic-marker{margin-block-start:1px}.course-roadmap:not(.is-compact) .course-roadmap-topic-copy{gap:6px}.course-roadmap:not(.is-compact) .course-roadmap-topic-copy>strong{font-size:1rem}.course-roadmap-topic-section{gap:6px;min-width:0;margin-block-start:7px;display:grid}.course-roadmap-topic-section h3{color:var(--text-2,var(--text-secondary));letter-spacing:.04em;text-transform:uppercase;margin:0;font-size:.75rem;font-weight:850}.course-roadmap-topic-section ul{min-width:0;margin:0;padding-inline-start:18px}.course-roadmap-outcomes li{color:var(--text-1,var(--text));overflow-wrap:anywhere;margin-block:3px;line-height:1.4}.course-roadmap-missions ul{grid-template-columns:repeat(auto-fit,minmax(min(190px,100%),1fr));gap:6px;padding:0;list-style:none;display:grid}.course-roadmap-missions li{background:color-mix(in srgb, var(--text,white) 5%, transparent);min-width:0;min-height:36px;color:var(--text-2,var(--text-secondary));border-radius:8px;grid-template-columns:20px minmax(0,1fr) auto;align-items:center;gap:6px;padding:6px 8px;font-size:.78rem;display:grid}.course-roadmap-missions li.is-complete{color:var(--success,var(--legacy-color-22c55e))}.course-roadmap-missions li>span{overflow-wrap:anywhere;min-width:0}.course-roadmap-missions li>strong{color:currentColor;font-variant-numeric:tabular-nums}.course-roadmap-topic-evidence{flex-wrap:wrap;gap:6px;min-width:0;margin-block-start:7px;display:flex}.course-roadmap-topic-evidence>span{background:color-mix(in srgb, var(--text,white) 5%, transparent);min-width:0;max-width:100%;color:var(--text-2,var(--text-secondary));overflow-wrap:anywhere;border-radius:8px;align-items:flex-start;gap:6px;padding:6px 8px;font-size:.76rem;line-height:1.35;display:inline-flex}.course-roadmap-topic-evidence>span.is-review{color:var(--brand-3,var(--primary));background:color-mix(in srgb, var(--primary) 11%, transparent)}.course-roadmap-topic-evidence>span.is-repair{color:var(--warning,var(--legacy-color-fbbf24));background:color-mix(in srgb, var(--warning,var(--legacy-color-fbbf24)) 10%, transparent)}.course-roadmap-topic-cta{justify-self:start;min-width:min(100%,170px);min-height:44px;margin-block-start:7px}.course-roadmap-actions,.course-roadmap-empty{flex-wrap:wrap;gap:9px;display:flex}.topic-quest-head{justify-content:space-between;align-items:flex-start;gap:14px;min-width:0;display:flex}.topic-quest-head>div{min-width:0}.topic-quest-head :where(h2,p){overflow-wrap:anywhere;margin:0}.topic-quest-head h2{margin-block-start:5px;font-size:clamp(1.15rem,2.4vw,1.5rem)}.topic-quest-head p{color:var(--text-2,var(--text-secondary));margin-block-start:6px}.topic-quest-eyebrow,.topic-quest-status{align-items:center;gap:7px;font-size:.78rem;font-weight:850;display:inline-flex}.topic-quest-eyebrow{color:var(--brand-3,var(--primary));text-transform:uppercase;letter-spacing:.04em}.topic-quest-status{border:1px solid var(--border-color);background:color-mix(in srgb, var(--primary) 10%, transparent);text-align:center;overflow-wrap:anywhere;border-radius:999px;flex:none;max-width:42%;padding:6px 9px}.topic-quest-steps{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:14px 0;padding:0;list-style:none;display:grid}.topic-quest-steps li{border:1px solid var(--border-color);background:color-mix(in srgb, var(--text,white) 4%, transparent);border-radius:10px;grid-template-columns:26px minmax(0,1fr);align-items:center;gap:7px;min-width:0;min-height:52px;padding:8px;display:grid}.topic-quest-steps li.is-current{border-color:color-mix(in srgb, var(--primary) 62%, var(--border-color));background:color-mix(in srgb, var(--primary) 11%, transparent)}.topic-quest-steps li.is-complete{border-color:color-mix(in srgb, var(--success,var(--legacy-color-22c55e)) 44%, var(--border-color))}.topic-quest-steps li>span:last-child{gap:2px;min-width:0;display:grid}.topic-quest-steps :where(strong,small){overflow-wrap:anywhere}.topic-quest-steps small{color:var(--text-2,var(--text-secondary))}.topic-quest-step-icon{width:26px;height:26px;color:var(--primary);background:color-mix(in srgb, var(--primary) 14%, transparent);border-radius:50%;place-items:center;display:grid}.topic-quest-steps .is-complete .topic-quest-step-icon{color:var(--success,var(--legacy-color-22c55e));background:color-mix(in srgb, var(--success,var(--legacy-color-22c55e)) 14%, transparent)}.topic-quest-cta{min-height:44px}.topic-quest-complete{min-height:44px;color:var(--success,var(--legacy-color-22c55e));overflow-wrap:anywhere;align-items:center;gap:8px;margin:0;font-weight:800;display:flex}.course-roadmap-actions .btn,.course-roadmap-empty .btn{min-height:44px}.course-roadmap-empty{align-items:center}.course-roadmap-empty>div{flex:220px;min-width:0}.course-roadmap-empty :where(h2,p){overflow-wrap:anywhere;margin:0}button.dlg-text{appearance:none;width:100%;min-height:44px;color:inherit;font:inherit;text-align:inherit;background:0 0;border:0;margin:0;padding:4px 0;display:block}.cafe-foot :where(.cafe-input,.btn){min-width:0;min-height:44px}@keyframes cafe-record-pulse{50%{opacity:.68}}html[data-motion=reduced] body.app-shell .app-bottombar-2026{transition:none}html[data-motion=reduced] body.app-shell .app-bottombar-2026.is-hidden,body.app-shell .app-bottombar-2026.is-hidden:focus-within{pointer-events:auto;transform:none}@media (max-width:520px){.course-roadmap-summary{display:grid}.course-roadmap-status,.topic-quest-status{justify-self:start;max-width:100%}.topic-quest-head{display:grid}.topic-quest-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.course-roadmap-actions .btn,.course-roadmap-empty .btn,.course-roadmap-topic-cta{flex:100%;width:100%}.course-roadmap:not(.is-compact) .course-roadmap-topic{grid-template-columns:32px minmax(0,1fr);padding:11px 10px}.course-roadmap:not(.is-compact) .course-roadmap-topic-marker{width:32px;height:32px}.course-roadmap-missions ul{grid-template-columns:minmax(0,1fr)}}@media (max-width:360px){.course-roadmap-stats,.topic-quest-steps{grid-template-columns:minmax(0,1fr)}}body.app-shell{--dash-v230-max:min(1120px, calc(100vw - 32px));--dash-v230-card:#0f172abd;--dash-v230-card-soft:#0f172a85;--dash-v230-line:#e2e8f024;--dash-v230-muted:#e2e8f0b8;--dash-v230-shadow:0 18px 48px -34px #000000a3}[data-theme=light] body.app-shell{--dash-v230-card:#ffffffeb;--dash-v230-card-soft:#ffffffc7;--dash-v230-line:#0f172a1f;--dash-v230-muted:var(--legacy-color-475569);--dash-v230-shadow:0 18px 48px -36px #0f172a4d}body.app-shell .gradient-mesh .blob-shape{opacity:.12;filter:none}body.app-shell .app-topbar{min-height:var(--app-topbar-h);border-bottom:1px solid var(--dash-v230-line);box-shadow:none;-webkit-backdrop-filter:saturate(1.02)blur(18px);backdrop-filter:saturate(1.02)blur(18px);background:#080d1fd6}[data-theme=light] body.app-shell .app-topbar{background:#f8fafce0}body.app-shell .app-brand,body.app-shell .icon-btn,body.app-shell .user-chip,body.app-shell .app-sidenav-2026 a,body.app-shell .app-bottombar-2026 a{border-radius:8px}body.app-shell .app-sidenav-2026{border-inline-end:1px solid var(--dash-v230-line);box-shadow:none;-webkit-backdrop-filter:saturate(1.02)blur(18px);backdrop-filter:saturate(1.02)blur(18px);background:#080d1fb8}[data-theme=light] body.app-shell .app-sidenav-2026{background:#ffffffc7}body.app-shell .app-sidenav-2026 a{min-height:46px;color:var(--dash-v230-muted)}body.app-shell .app-sidenav-2026 a:is(.active,[aria-current=page]){color:var(--text-on-accent,var(--legacy-color-fff));background:var(--public-action-gradient);box-shadow:0 14px 28px -22px #4361eeb8}body.app-shell .app-bottombar-2026{border-top:1px solid var(--dash-v230-line);-webkit-backdrop-filter:saturate(1.02)blur(18px);backdrop-filter:saturate(1.02)blur(18px);background:#080d1fe0;box-shadow:0 -14px 36px -30px #000000ad}[data-theme=light] body.app-shell .app-bottombar-2026{background:#ffffffe6}body.app-shell :where(.home-greeting,.home-next,.home-more,.home-card,.home-skills,.home-tree,.progress-header,.progress-grid .card,.progress-disclosure,.progress-disclosure-grid .card,.you-tab-loading){border-radius:var(--hy-radius-card,12px);border:1px solid var(--dash-v230-line);background:var(--dash-v230-card);box-shadow:var(--dash-v230-shadow);-webkit-backdrop-filter:saturate(1.02)blur(16px);backdrop-filter:saturate(1.02)blur(16px)}@media (max-width:480px){body.app-shell{--app-topbar-h:calc(54px + env(safe-area-inset-top,0px))}body.app-shell .app-topbar{min-height:var(--app-topbar-h)}}@media (forced-colors:active){body.app-shell :where(.app-topbar,.app-sidenav-2026,.app-bottombar-2026,.home-greeting,.home-next,.home-more,.home-card,.home-skills,.home-tree,.progress-header,.progress-grid .card,.progress-disclosure,.progress-disclosure-grid .card,.you-tabs){color:canvastext;box-shadow:none;background:canvas;border-color:canvastext}}@media (max-width:360px){body.app-shell .view[data-view=practice]{padding-block-start:12px}}body.app-shell{--app-panel:var(--hy-color-surface);--app-panel-strong:var(--hy-color-surface-elevated);--app-panel-border:var(--hy-color-border);--app-text:var(--hy-color-text);--app-text-muted:var(--hy-color-text-muted);--dash-v230-card:var(--hy-color-surface-elevated);--dash-v230-card-soft:var(--hy-color-surface-soft);--dash-v230-line:var(--hy-color-border);--dash-v230-muted:var(--hy-color-text-muted);--dash-v230-shadow:var(--hy-elevation-card);background:var(--hy-color-canvas);color:var(--hy-color-text)}body.app-shell .gradient-mesh .blob-shape{opacity:.075}[data-theme=light] body.app-shell .gradient-mesh .blob-shape{opacity:.045}body.app-shell .app-topbar,body.app-shell .app-sidenav-2026,body.app-shell .app-bottombar-2026{border-color:var(--hy-color-border);background:color-mix(in srgb, var(--hy-color-canvas) 92%, transparent)}body.app-shell :where(.home-greeting,.home-next,.home-more,.home-card,.home-skills,.home-tree,.progress-header,.progress-grid .card,.progress-disclosure,.progress-disclosure-grid .card,.practice-card,.practice-browse-all,.practice-activity-section,.games-hero,.games-stage,.games-next-card,.games-mode-card,.games-progress-more,.games-browse-all,.vocab-header,.vocab-area,.vocab-review-card,.vocab-activity-card,.vocab-lab-panel,.vocab-lab-card,.vocab-explore,.settings-shell .card,.settings-hydration-status,.you-tab-loading){border-color:var(--hy-color-border);background:var(--hy-color-surface-elevated);box-shadow:var(--hy-elevation-card);-webkit-backdrop-filter:none}body.app-shell :where(.practice-card,.games-mode-card,.vocab-activity-card,.games-next-card):hover{border-color:var(--hy-color-border-strong);background:var(--hy-color-surface-hover)}body.app-shell :where(.home-shell-v2,.you-shell,.practice-shell,.games-shell,.vocab-shell,.settings-shell,.talk-shell,.learn-v3-shell){container-type:inline-size}body.app-shell .theme-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}body.app-shell .theme-row .btn{min-inline-size:0;min-block-size:var(--hy-control-block-size);white-space:normal}body.app-shell .theme-row .btn[aria-pressed=true]{color:var(--hy-color-on-action);background:var(--app-action-gradient);border-color:#0000}body.app-shell .user-menu-theme-state{color:var(--hy-color-text-muted);margin-inline-start:auto;font-size:.76rem;font-weight:700}body.app-shell :where(.learn-course-head,.learn-library-head,.learn-module-card,.learn-unit-card,.lesson-v3-card){border-color:var(--hy-color-border);background:var(--hy-color-surface-elevated);box-shadow:var(--hy-elevation-card)}@container (width<=560px){body.app-shell .theme-row{grid-template-columns:minmax(0,1fr)}body.app-shell .theme-row .btn{justify-content:flex-start}}body.app-shell :where(.ui-page-shell,.ui-page-header,.ui-section-card){min-inline-size:0;max-inline-size:100%}body.app-shell :where(.ui-card,.ui-page-header,.ui-section-card,.settings-shell .card,.progress-header,.progress-grid .card,.progress-disclosure){border-radius:var(--hy-radius-card,12px)}body.app-shell :where(h1,h2,h3,h4,h5,h6)[tabindex="-1"]:focus{box-shadow:none;outline:none}body.app-shell .app-bottombar-2026>[data-view=today]{grid-column:1}body.app-shell .app-bottombar-2026>[data-view=learn]{grid-column:2}body.app-shell .app-bottombar-2026>.bb-fab[data-view=talk]{grid-column:3}body.app-shell .app-bottombar-2026>[data-view=practice]{grid-column:4}body.app-shell .app-bottombar-2026>[data-view=you]{grid-column:5}.skel-wrap{gap:8px;width:100%;min-width:0;display:grid;overflow:hidden}.skel{background:linear-gradient(100deg, color-mix(in srgb, var(--hy-color-text,white) 5%, transparent) 20%, color-mix(in srgb, var(--hy-color-text,white) 13%, transparent) 42%, color-mix(in srgb, var(--hy-color-text,white) 5%, transparent) 64%);background-size:220% 100%;animation:1.35s linear infinite skelShimmer}@keyframes skelShimmer{0%{background-position:200% 0}to{background-position:-20% 0}}html[data-motion=reduced] .skel{background-position:50% 0;animation:none}@media (prefers-reduced-motion:reduce){.skel{background-position:50% 0;animation:none}}body.app-shell .support-card,body.app-shell .support-card>*,body.app-shell .support-card :where(.support-card-actions,.support-card-trust,.support-safe-copy,.support-platform-chip){width:100%;min-width:0;max-width:100%}body.app-shell .support-card-actions{flex-flow:wrap;align-items:stretch;display:flex}body.app-shell .support-card-actions .btn,body.app-shell .support-card-actions .btn span,body.app-shell .support-card-trust,body.app-shell .support-safe-copy{white-space:normal;overflow-wrap:anywhere;min-width:0;max-width:100%}body.app-shell .support-card-actions>*{flex:min(100%,14rem)}body.app-shell :where(.practice-browse-all,.practice-activity-section,.games-browse-all,.games-progress-more,.vocab-explore){border:1px solid var(--app-panel-border,var(--border-color));background:color-mix(in srgb, var(--app-panel,var(--card)) 82%, transparent);min-width:0;overflow:clip}body.app-shell :where(.practice-browse-all,.practice-activity-section,.games-browse-all,.games-progress-more,.vocab-explore)>summary{min-height:48px;color:var(--text-1,var(--hy-color-text));cursor:pointer;justify-content:space-between;align-items:center;gap:10px;padding:10px 14px;font-weight:800;list-style:none;display:flex}body.app-shell :where(.practice-browse-all,.practice-activity-section,.games-browse-all,.games-progress-more,.vocab-explore)>summary::-webkit-details-marker{display:none}body.app-shell :where(.practice-browse-all,.practice-activity-section,.games-browse-all,.games-progress-more,.vocab-explore)>summary:after{content:"";width:8px;height:8px;transition:transform var(--hy-motion-fast,.16s) ease;border-block-end:2px solid;border-inline-end:2px solid;flex:none;transform:rotate(45deg)}body.app-shell :where(.practice-browse-all,.practice-activity-section,.games-browse-all,.games-progress-more,.vocab-explore)[open]>summary:after{transform:rotate(-135deg)}body.app-shell .session-summary-actions[data-action-cap="3"]>:nth-child(n+4){display:none}@media (max-width:520px){body.app-shell .support-card-actions{flex-flow:column}body.app-shell .support-card-actions>*{flex:none;inline-size:100%;max-inline-size:100%}body.app-shell .account-email-heading,body.app-shell .newsletter-card-heading,body.app-shell .learning-reminders-heading{flex-direction:column}body.app-shell .account-email-status,body.app-shell .newsletter-status-pill,body.app-shell .learning-reminders-status{align-self:flex-start}body.app-shell .account-email-actions,body.app-shell .newsletter-actions,body.app-shell .learning-reminders-actions{flex-flow:column}body.app-shell .account-email-actions .btn,body.app-shell .newsletter-actions .btn,body.app-shell .learning-reminders-actions .btn{flex:none;inline-size:100%;max-inline-size:100%}body.app-shell .learning-reminders-frequency,.modal-learning-reminder .learning-reminder-frequency-grid{grid-template-columns:minmax(0,1fr)}dialog.modal-learning-reminder[open]{width:100%;max-width:100%;max-height:min(88dvh,760px);margin:auto auto 0;inset:auto 0 0}dialog.modal-learning-reminder .modal-form{width:calc(100vw - 12px);min-width:0;max-width:calc(100vw - 12px);max-height:min(88dvh,760px);padding:20px 18px calc(18px + env(safe-area-inset-bottom,0px));border-end-end-radius:0;border-end-start-radius:0}dialog.modal-learning-reminder .modal-actions{bottom:calc(-18px - env(safe-area-inset-bottom,0px));z-index:2;margin:0 -18px calc(-18px - env(safe-area-inset-bottom,0px));padding:10px 18px calc(12px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--border-color,var(--hy-color-border));background:color-mix(in srgb, var(--app-panel-strong,var(--card)) 96%, transparent);grid-template-columns:minmax(0,1fr);justify-content:stretch;align-items:stretch;display:grid;position:sticky}dialog.modal-learning-reminder .modal-actions .btn{width:100%}}@media (orientation:landscape) and (max-height:500px){dialog.modal-learning-reminder[open],dialog.modal-learning-reminder .modal-form{max-height:calc(100dvh - 8px)}dialog.modal-learning-reminder .modal-form{padding-block-start:14px}}body.app-shell{--wa-font-family-body:var(--hy-font-body,var(--font-body,system-ui, sans-serif));--wa-font-family-heading:var(--hy-font-display,var(--font-display,system-ui, sans-serif));--wa-font-family-code:var(--hy-font-mono,ui-monospace, monospace);--wa-color-surface-raised:var(--app-panel-strong,var(--hy-color-surface));--wa-color-surface-default:var(--app-panel,var(--hy-color-surface));--wa-color-surface-lowered:var(--hy-color-surface-muted);--wa-color-surface-border:var(--app-panel-border,var(--border-color));--wa-color-text-normal:var(--text-1,var(--hy-color-text));--wa-color-text-quiet:var(--app-text-muted,var(--hy-color-text-muted));--wa-color-focus:var(--hy-focus-color,var(--brand-3,var(--hy-color-brand)));--wa-color-brand-fill-loud:var(--hy-color-brand);--wa-color-neutral-fill-normal:color-mix(in srgb, var(--hy-color-text) 9%, transparent);--wa-color-danger-on-quiet:var(--hy-color-danger);--wa-color-danger-fill-normal:color-mix(in srgb, var(--hy-color-danger) 16%, transparent);--wa-panel-border-radius:var(--hy-radius-card,12px);--wa-form-control-border-radius:var(--hy-radius-control,8px);--wa-focus-ring-width:var(--hy-focus-width,3px);--wa-shadow-m:var(--hy-elevation-card);--wa-shadow-l:var(--hy-elevation-overlay)}:root[data-theme=dark] body.app-shell{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--wa-color-overlay-modal:#020617b8}:root[data-theme=light] body.app-shell{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--wa-color-overlay-modal:#0f172a57}body.app-shell wa-dropdown.user-menu-dropdown{--show-duration:var(--hy-motion-fast,.16s);--hide-duration:var(--hy-motion-fast,.16s);z-index:var(--z-modal,1000)}body.app-shell .user-menu-dropdown[data-ui-implementation=native]{display:inline-block;position:relative}body.app-shell .user-menu-native-panel{z-index:var(--z-modal,1000);border:1px solid var(--app-panel-border,var(--wa-color-surface-border));border-radius:var(--hy-radius-card,12px);max-block-size:min(70dvh,480px);inline-size:min(240px,100vw - 24px);color:var(--text-1,var(--hy-color-text));background:color-mix(in srgb, var(--app-panel-strong,var(--hy-color-surface)) 96%, transparent);box-shadow:var(--hy-elevation-overlay);-webkit-backdrop-filter:blur(18px)saturate(1.12);backdrop-filter:blur(18px)saturate(1.12);flex-direction:column;gap:2px;padding:6px;display:flex;position:absolute;inset-block-start:calc(100% + 8px);inset-inline-end:0;overflow:auto}body.app-shell .user-menu-dropdown[data-ui-implementation=native] .user-menu-item{inline-size:100%;min-block-size:var(--hy-control-min-size,44px)}body.app-shell wa-dropdown.user-menu-dropdown::part(menu){border:1px solid var(--app-panel-border,var(--wa-color-surface-border));border-radius:var(--hy-radius-card,12px);min-inline-size:min(240px,100vw - 24px);max-inline-size:calc(100vw - 24px);color:var(--text-1,var(--hy-color-text));background:color-mix(in srgb, var(--app-panel-strong,var(--hy-color-surface)) 96%, transparent);box-shadow:var(--hy-elevation-overlay);-webkit-backdrop-filter:blur(18px)saturate(1.12);backdrop-filter:blur(18px)saturate(1.12);padding:6px;overflow:visible}body.app-shell wa-dropdown-item.user-menu-item{inline-size:100%;min-block-size:var(--hy-control-min-size,44px);border-radius:var(--hy-radius-control,8px);color:var(--text-1,var(--hy-color-text));font:inherit;padding:10px 12px;font-size:.9rem;font-weight:650}body.app-shell wa-dropdown-item.user-menu-item::part(icon){inline-size:18px;color:var(--app-text-muted,var(--hy-color-text-muted));text-align:center}body.app-shell wa-dropdown-item.user-menu-item::part(label){overflow-wrap:anywhere;min-inline-size:0}body.app-shell wa-dropdown-item::part(submenu){border-color:var(--app-panel-border,var(--wa-color-surface-border));border-radius:var(--hy-radius-card,12px);background:var(--app-panel-strong,var(--hy-color-surface));max-block-size:min(68dvh,460px);max-inline-size:min(320px,100vw - 24px);box-shadow:var(--hy-elevation-overlay);overflow:auto}@media (forced-colors:active){body.app-shell .user-menu-native-panel,body.app-shell wa-dropdown.user-menu-dropdown::part(menu){color:canvastext;box-shadow:none;forced-color-adjust:auto;background:canvas;border:1px solid canvastext}}body.app-shell :is(.games-visual-token,.game-prompt-visual,.memory-card-visual,.image-quest-visual,.sound-pop-token).is-emoji-only{background:color-mix(in srgb, var(--accent) 8%, var(--card))}body.app-shell .game-learning-feedback.is-text-only{grid-template-columns:minmax(0,1fr)}body.app-shell .sentence-correction{border:1px solid color-mix(in srgb, var(--legacy-color-22c55e) 45%, var(--border-color));background:color-mix(in srgb, var(--card) 88%, transparent);border-radius:8px;gap:7px;min-width:0;padding:14px;display:grid}body.app-shell .sentence-correction.is-wrong{border-color:color-mix(in srgb, var(--legacy-color-ef4444) 45%, var(--border-color))}body.app-shell .sentence-correction :is(span,small,strong,p){overflow-wrap:anywhere;min-width:0;margin:0}body.app-shell .sentence-correction span,body.app-shell .sentence-correction small{color:var(--text-2,var(--text-secondary))}body.app-shell .sentence-correction p{color:var(--text-1,var(--text));font-size:clamp(1rem,2.5vw,1.2rem);font-weight:850;line-height:1.45}:where(.learn-v3-shell,.lesson-v3-shell){--course-accent:var(--brand-3,#22d3ee);--course-accent-strong:var(--brand-1,#6d5dfc);--course-success:var(--hy-color-success);--course-warning:var(--hy-color-warning);--course-danger:var(--hy-color-danger);--course-panel:var(--theme-control-bg,var(--app-panel,#0f172ab8));--course-panel-strong:var(--app-panel-strong,var(--theme-control-bg,#10182e));--course-panel-hover:var(--theme-control-bg-hover,#22d3ee1a);--course-line:var(--theme-control-border-soft,#94a3b861);--course-text:var(--theme-control-text,var(--app-text,#f8fafc));--course-muted:var(--theme-control-muted,var(--app-text-muted,#cbd5e1));color:var(--course-text);min-inline-size:0;padding:0}:where(.learn-v3-shell,.lesson-v3-shell) *,:where(.learn-v3-shell,.lesson-v3-shell) :before,:where(.learn-v3-shell,.lesson-v3-shell) :after{box-sizing:border-box}:where(.learn-v3-shell,.lesson-v3-shell) button,:where(.learn-v3-shell,.lesson-v3-shell) select,:where(.learn-v3-shell,.lesson-v3-shell) input,:where(.learn-v3-shell,.lesson-v3-shell) textarea,:where(.learn-v3-shell,.lesson-v3-shell) summary{font:inherit}:where(.learn-v3-shell,.lesson-v3-shell) :focus-visible{outline:3px solid color-mix(in srgb, var(--course-accent) 78%, white);outline-offset:3px}@media (max-width:720px){:where(.learn-v3-shell,.lesson-v3-shell){padding:12px}}@media (max-width:320px){:where(.learn-v3-shell,.lesson-v3-shell){padding-inline:8px}}@media (prefers-reduced-motion:reduce){:where(.learn-v3-shell,.lesson-v3-shell) *,:where(.learn-v3-shell,.lesson-v3-shell) :before,:where(.learn-v3-shell,.lesson-v3-shell) :after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}@media (forced-colors:active){:where(.learn-v3-tab.is-active,.learn-collection-chip.is-active,.lesson-step.is-active){color:highlighttext;background:highlight}}@media (max-width:860px){body.app-shell[data-course-v3=enabled] .app-bottombar-2026[data-nav-layout=converged]{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 62px minmax(0,1fr) minmax(0,1fr) minmax(0,1fr)}body.app-shell[data-course-v3=disabled] .app-bottombar-2026[data-nav-layout=converged]{grid-template-columns:minmax(0,1fr) 62px minmax(0,1fr) minmax(0,1fr) minmax(0,1fr)}}:where(.learn-v3-shell,.lesson-v3-shell){--course-panel:var(--hy-color-surface-elevated,var(--app-panel));--course-panel-strong:var(--hy-color-surface-elevated,var(--app-panel-strong));--course-panel-hover:var(--hy-color-surface-hover,#22d3ee1a);--course-line:var(--hy-color-border,var(--app-panel-border));--course-text:var(--hy-color-text,var(--app-text));--course-muted:var(--hy-color-text-muted,var(--app-text-muted));container-type:inline-size}html[data-experience=next] body.app-shell{background:var(--hy-color-canvas);color:var(--hy-color-text);font-family:var(--hy-font-body);line-height:var(--hy-type-body-leading)}html[data-experience=next] body.app-shell .gradient-mesh,html[data-experience=next] body.app-shell:before,html[data-experience=next] body.app-shell:after{display:none}html[data-experience=next] body.app-shell :is(.glass,.ui-card,.card){background:var(--hy-color-surface);color:var(--hy-color-text);border-color:var(--hy-color-border);border-radius:var(--hy-radius-card);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}html[data-experience=next] body.app-shell :is(h1,h2,h3){color:var(--hy-color-text);letter-spacing:-.025em;text-wrap:balance}html[data-experience=next] body.app-shell :is(.muted,.settings-eyebrow,.home-greeting-sub){color:var(--hy-color-text-muted)}html[data-experience=next] body.app-shell :is(button,a,input,textarea,select):focus-visible{outline:var(--hy-focus-width) solid var(--hy-focus-color);outline-offset:3px}html[data-experience=next] body.app-shell :is(.btn,.chip-btn,.icon-btn,.ui-button,.settings-field select){min-block-size:var(--hy-control-min-size);border-radius:var(--hy-radius-control);box-shadow:none}html[data-experience=next] body.app-shell :is(.btn-primary,.btn-next-primary,.learn-resume-cta,.word-practice,.phrase-cta){background:var(--hy-color-action);color:var(--hy-color-on-action);border-color:var(--hy-color-action)}@media (hover:hover){html[data-experience=next] body.app-shell :is(.btn-primary,.btn-next-primary,.learn-resume-cta,.word-practice,.phrase-cta):hover:not(:disabled):not([aria-disabled=true]){background:var(--hy-color-action-hover);border-color:var(--hy-color-action-hover)}}html[data-experience=next] body.app-shell :is(input,textarea,select){color:var(--hy-color-text);background-color:var(--hy-color-surface-muted);border-color:var(--hy-color-border-strong);font:inherit}html[data-experience=next] body.app-shell :is(.app-topbar,.app-sidenav,.app-bottombar){background:var(--hy-color-surface);border-color:var(--hy-color-border);-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none}html[data-experience=next] body.app-shell .app-brand{box-shadow:none;background:0 0;border:0}html[data-experience=next] body.app-shell .app-sidenav ul{gap:.5rem}html[data-experience=next] body.app-shell .app-sidenav a{color:var(--hy-color-text-muted);min-block-size:48px;box-shadow:none;background:0 0;border-radius:12px}html[data-experience=next] body.app-shell .app-sidenav a.active{background:var(--hy-experience-accent-soft);color:var(--hy-color-brand)}html[data-experience=next] body.app-shell .app-sidenav a[data-view=talk]{font-weight:700}html[data-experience=next] body.app-shell .app-main{padding-block:clamp(16px,3vw,32px)}html[data-experience=next] body.app-shell :is(.home-shell,.practice-shell,.games-shell,.settings-shell,.vocab-shell,.you-shell,.learn-v3-shell,.onboarding-shell){gap:clamp(16px,2vw,24px)}html[data-experience=next] body.app-shell :is(.home-greeting,.home-next,.practice-hero,.games-hero,.learn-v3-hero){border:1px solid var(--hy-color-border);border-radius:var(--hy-radius-card);background:var(--hy-color-surface);box-shadow:none;padding:clamp(20px,3vw,32px)}html[data-experience=next] body.app-shell :is(.home-greeting,.home-next,.practice-hero,.games-hero,.learn-v3-hero):before,html[data-experience=next] body.app-shell :is(.home-greeting,.home-next,.practice-hero,.games-hero,.learn-v3-hero):after{display:none}html[data-experience=next] body.app-shell :is(.loop-cell,.home-card,.learn-chapter,.learn-library-card,.learn-resume-card,.learn-lesson-card){background:var(--hy-color-surface);border:1px solid var(--hy-color-border);border-radius:var(--hy-radius-card);box-shadow:none}html[data-experience=next] body.app-shell :is(.settings-shell .card,.onboarding-shell .card){padding:clamp(20px,3vw,28px)}html[data-experience=next] body.app-shell :is(.settings-section-nav,.you-tabs,.learn-v3-tabs,.talk-mode-toggle){background:var(--hy-color-surface-muted);border:1px solid var(--hy-color-border);box-shadow:none;border-radius:16px;gap:4px;padding:5px}html[data-experience=next] body.app-shell :is(.talk-mode-btn.is-active,.you-tab.is-active,.learn-v3-tab.is-active){background:var(--hy-color-surface);color:var(--hy-color-brand);box-shadow:none;border-radius:11px}html[data-experience=next] body.app-shell .voice2-focused :is(.voice2-learner-actions,[data-act=voice-hold])[hidden]{display:none}html[data-experience=next] body.app-shell .chat-shell .composer :is(.send-btn,.composer-actions-btn,.mic-btn){min-block-size:44px;min-inline-size:44px;box-shadow:none;background:var(--hy-color-surface);color:var(--hy-color-text);border-radius:12px;transform:none}body.app-shell .message-help{border:1px solid var(--hy-color-border);color:var(--hy-color-text);background:var(--hy-color-surface);border-radius:12px;margin-block-start:16px;padding:14px}body.app-shell .message-help-header{justify-content:space-between;align-items:center;gap:12px;display:flex}body.app-shell .message-help-header button{min-block-size:44px;min-inline-size:44px}body.app-shell .message-help-body{white-space:pre-wrap;overflow-wrap:anywhere;font:400 .95rem/1.65 var(--hy-font-body)}body.app-shell .message-help-status{color:var(--hy-color-text-muted)}body.app-shell :is(wa-dialog,wa-drawer,wa-dropdown)[data-ui-implementation=native]{display:contents}body.app-shell .ui-native-dialog{overscroll-behavior:contain;max-block-size:85dvh;inline-size:min(92vw,42rem);color:var(--hy-color-text);background:var(--hy-color-surface);border:1px solid var(--hy-color-border);border-radius:var(--hy-radius-overlay);box-shadow:var(--hy-elevation-overlay);padding:24px;overflow:auto}body.app-shell .ui-native-dialog::backdrop{background:color-mix(in srgb, var(--hy-color-canvas) 75%, transparent)}body.app-shell .ui-native-menu{max-block-size:70dvh;max-inline-size:min(92vw,360px);color:var(--hy-color-text);background:var(--hy-color-surface);border:1px solid var(--hy-color-border);border-radius:var(--hy-radius-control);box-shadow:var(--hy-elevation-overlay);padding:8px;overflow:auto}body.app-shell .ui-native-menu :is(wa-dropdown-item,button,[role=menuitem]){min-block-size:44px;color:inherit;cursor:pointer;border-radius:8px;padding:10px 12px;display:block}body.app-shell .ui-native-menu :is(wa-dropdown-item,button,[role=menuitem]):focus-visible{outline:2px solid var(--hy-focus-color);outline-offset:-2px}@media (max-width:767px){html[data-experience=next] body.app-shell .app-main{padding-block-start:12px;padding-inline:12px}html[data-experience=next] body.app-shell .app-bottombar{border-radius:20px 20px 0 0;padding-block-start:8px}}