@import"https://fonts.googleapis.com/css2?family=Quicksand:wght@400;500;600;700&family=Inter:wght@400;500;600;700&family=Lora:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500;1,600&family=Caveat:wght@400;500;600;700&display=swap";@import"https://fonts.googleapis.com/css2?family=Caveat:wght@400;500;600;700&family=Inter:wght@300..700&family=Lora:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500;1,600&family=Nunito:wght@600;700;800&family=Plus+Jakarta+Sans:wght@300..700&family=Quicksand:wght@400;500;600;700&display=swap";:root{--brand-coral: #E07A5F;--brand-coral-dark: #C45F47;--brand-coral-soft: #F4C7B8;--brand-coral-tint: #FBE9E2;--brand-sage: #739E82;--brand-sage-dark: #557A65;--brand-sage-soft: #C2D6CA;--brand-sage-tint: #E8EFEB;--cream: #FBF8F1;--cream-dim: #F4EFE3;--ink: #2A2522;--ink-soft: #5C544F;--ink-mute: #8B827C;--ink-faint: #B8B0A9;--paper: #FFFFFF;--line: #E8E2D6;--line-soft: #F1ECE0;--teal-50: #ECFDF5;--teal-100: #D1FAE5;--teal-200: #A7F3D0;--teal-500: #14B8A6;--teal-600: #0D9488;--teal-700: #0F766E;--teal-800: #115E59;--blue-50: #EFF6FF;--blue-100: #DBEAFE;--blue-200: #BFDBFE;--blue-500: #3B82F6;--blue-600: #2563EB;--blue-700: #1D4ED8;--blue-800: #1E40AF;--indigo-50: #EEF2FF;--indigo-100: #E0E7FF;--indigo-200: #C7D2FE;--indigo-500: #6366F1;--indigo-600: #4F46E5;--indigo-700: #4338CA;--indigo-800: #3730A3;--amber-50: #FFFBEB;--amber-100: #FEF3C7;--amber-200: #FDE68A;--amber-400: #FBBF24;--amber-500: #F59E0B;--amber-600: #D97706;--amber-700: #B45309;--amber-800: #92400E;--rose-50: #FFF1F2;--rose-100: #FFE4E6;--rose-200: #FECDD3;--rose-400: #FB7185;--rose-500: #F43F5E;--rose-600: #E11D48;--rose-700: #BE123C;--rose-800: #9F1239;--green-50: #F0FDF4;--green-100: #DCFCE7;--green-200: #BBF7D0;--green-500: #22C55E;--green-600: #16A34A;--green-700: #15803D;--green-800: #166534;--red-50: #FEF2F2;--red-100: #FEE2E2;--red-200: #FECACA;--red-500: #EF4444;--red-600: #DC2626;--red-700: #B91C1C;--red-800: #991B1B;--purple-50: #FAF5FF;--purple-100: #F3E8FF;--purple-200: #E9D5FF;--purple-500: #A855F7;--purple-600: #9333EA;--purple-700: #7E22CE;--purple-800: #6B21A8;--pink-50: #FDF2F8;--pink-100: #FCE7F3;--pink-200: #FBCFE8;--pink-500: #EC4899;--pink-600: #DB2777;--pink-700: #BE185D;--pink-800: #9D174D;--orange-50: #FFF7ED;--orange-100: #FFEDD5;--orange-200: #FED7AA;--orange-500: #F97316;--orange-600: #EA580C;--orange-700: #C2410C;--orange-800: #9A3412;--yellow-50: #FEFCE8;--yellow-100: #FEF9C3;--yellow-500: #EAB308;--yellow-600: #CA8A04;--font-rounded: "Quicksand", system-ui, sans-serif;--font-body: "Inter", system-ui, sans-serif;--font-serif: "Lora", Georgia, serif;--font-hand: "Caveat", "Bradley Hand", cursive;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--text-4xl: 2.25rem;--text-5xl: 3rem;--leading-tight: 1.2;--leading-snug: 1.35;--leading-normal: 1.55;--leading-relaxed: 1.7;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--space-16: 64px;--space-24: 96px;--radius-sm: 6px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 20px;--radius-2xl: 24px;--radius-full: 9999px;--shadow-xs: 0 1px 2px rgba(42, 37, 34, .04);--shadow-sm: 0 1px 3px rgba(42, 37, 34, .06), 0 1px 2px rgba(42, 37, 34, .04);--shadow-md: 0 4px 12px rgba(42, 37, 34, .06), 0 2px 4px rgba(42, 37, 34, .04);--shadow-lg: 0 12px 28px rgba(42, 37, 34, .08), 0 4px 8px rgba(42, 37, 34, .04);--shadow-inner: inset 0 1px 2px rgba(42, 37, 34, .04);--ease: cubic-bezier(.4, 0, .2, 1);--duration-fast: .12s;--duration: .2s;--duration-slow: .32s}*,*:before,*:after{box-sizing:border-box}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{margin:0;font-family:var(--font-body);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--ink);background:var(--cream);text-wrap:pretty}h1,h2,h3,h4,h5,h6{margin:0;font-family:var(--font-rounded);font-weight:600;letter-spacing:-.01em;color:var(--ink);text-wrap:balance}p{margin:0}a{color:var(--brand-sage-dark);text-decoration-color:var(--brand-sage-soft);text-underline-offset:3px}a:hover{color:var(--brand-coral-dark)}::-moz-selection{background:var(--brand-coral-soft);color:var(--ink)}::selection{background:var(--brand-coral-soft);color:var(--ink)}.text-mute{color:var(--ink-mute)}.text-soft{color:var(--ink-soft)}.text-coral{color:var(--brand-coral)}.text-sage{color:var(--brand-sage)}.lb{display:grid;grid-template-columns:auto 1fr;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-radius:var(--radius-lg);border:1px solid var(--line);background:var(--paper)}.lb__icon{width:32px;height:32px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;flex-shrink:0}.lb__title{font-family:var(--font-rounded);font-weight:600;font-size:var(--text-sm);margin-bottom:4px}.lb__body{font-size:var(--text-sm);line-height:var(--leading-relaxed)}.lb--blue{background:var(--blue-50);border-color:var(--blue-200)}.lb--blue .lb__icon{background:#2563eb1f;color:var(--blue-600)}.lb--blue .lb__title{color:var(--blue-800)}.lb--blue .lb__body{color:var(--blue-700)}.lb--teal{background:var(--teal-50);border-color:var(--teal-200)}.lb--teal .lb__icon{background:#0d94881f;color:var(--teal-700)}.lb--teal .lb__title{color:var(--teal-800)}.lb--teal .lb__body{color:var(--teal-700)}.lb--indigo{background:var(--indigo-50);border-color:var(--indigo-200)}.lb--indigo .lb__icon{background:#4f46e51f;color:var(--indigo-600)}.lb--indigo .lb__title{color:var(--indigo-800)}.lb--indigo .lb__body{color:var(--indigo-700)}.lb--amber{background:var(--amber-50);border-color:var(--amber-200)}.lb--amber .lb__icon{background:#d9770624;color:var(--amber-700)}.lb--amber .lb__title,.lb--amber .lb__body{color:var(--amber-800)}.lb--rose{background:var(--rose-50);border-color:var(--rose-200)}.lb--rose .lb__icon{background:#e11d481f;color:var(--rose-600)}.lb--rose .lb__title{color:var(--rose-800)}.lb--rose .lb__body{color:var(--rose-700)}.lb--green{background:var(--green-50);border-color:var(--green-200)}.lb--green .lb__icon{background:#16a34a24;color:var(--green-700)}.lb--green .lb__title{color:var(--green-800)}.lb--green .lb__body{color:var(--green-700)}.lb--purple{background:var(--purple-50);border-color:var(--purple-200)}.lb--purple .lb__icon{background:#9333ea1f;color:var(--purple-600)}.lb--purple .lb__title{color:var(--purple-800)}.lb--purple .lb__body{color:var(--purple-700)}.lb--pink{background:var(--pink-50);border-color:var(--pink-200)}.lb--pink .lb__icon{background:#db27771f;color:var(--pink-600)}.lb--pink .lb__title{color:var(--pink-800)}.lb--pink .lb__body{color:var(--pink-700)}.lb--orange{background:var(--orange-50);border-color:var(--orange-200)}.lb--orange .lb__icon{background:#ea580c1f;color:var(--orange-600)}.lb--orange .lb__title{color:var(--orange-800)}.lb--orange .lb__body{color:var(--orange-700)}:root{--font-sans: "Inter", "Plus Jakarta Sans", system-ui, sans-serif;--font-warm: "Plus Jakarta Sans", "Inter", system-ui, sans-serif;--font-friendly: "Nunito", "Plus Jakarta Sans", "Inter", system-ui, sans-serif;--font-rounded: "Quicksand", "Nunito", system-ui, sans-serif;--font-serif: "Lora", "Merriweather", Georgia, serif;--font-hand: "Caveat", "Bradley Hand", cursive;--font-body: var(--font-sans)}body{font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}h1,h2,h3,h4,h5,h6{font-family:var(--font-rounded);font-weight:600;letter-spacing:-.01em}.font-sans{font-family:var(--font-sans)}.font-warm{font-family:var(--font-warm)}.font-friendly{font-family:var(--font-friendly)}.font-rounded{font-family:var(--font-rounded)}.font-serif{font-family:var(--font-serif)}.font-hand{font-family:var(--font-hand)}.font-body{font-family:var(--font-body)}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Inter,Plus Jakarta Sans,system-ui,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}:root{--background: 45 25% 96%;--foreground: 20 15% 15%;--card: 45 30% 97%;--card-foreground: 20 15% 15%;--popover: 45 30% 97%;--popover-foreground: 20 15% 15%;--primary: 13 67% 63%;--primary-foreground: 0 0% 100%;--secondary: 45 40% 92%;--secondary-foreground: 20 30% 25%;--muted: 45 25% 94%;--muted-foreground: 20 30% 40%;--accent: 150 20% 88%;--accent-foreground: 150 45% 25%;--destructive: 0 65% 68%;--destructive-foreground: 0 0% 98%;--border: 45 35% 80%;--border-strong: 45 40% 75%;--border-accent: 13 60% 72%;--input: 45 30% 90%;--ring: 13 67% 63%;--radius: 1rem;--brand-coral: 13 67% 63%;--brand-sage: 141 18% 54%;--brand-cream: 45 85% 94%;--brand-warm: 35 90% 85%;--success: 150 50% 65%;--success-foreground: 150 50% 15%;--warning: 38 75% 65%;--warning-foreground: 38 85% 20%;--yellow-soft: 45 85% 55%;--yellow-soft-foreground: 45 90% 15%;--yellow-gentle: 42 80% 70%;--yellow-gentle-foreground: 42 85% 25%;--amber-soft: 38 75% 60%;--amber-soft-foreground: 38 80% 20%;--space-cozy: 1.5rem;--space-comfortable: 2rem}*{border-color:hsl(var(--border))}body{background-color:hsl(var(--background));color:hsl(var(--foreground));font-feature-settings:"rlig" 1,"calt" 1}.visible{visibility:visible}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.hidden{display:none}.h-10{height:2.5rem}.h-11{height:2.75rem}.h-9{height:2.25rem}.w-10{width:2.5rem}.w-full{width:100%}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.space-y-1\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.375rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem * var(--tw-space-y-reverse))}.rounded-lg{border-radius:var(--radius)}.rounded-md{border-radius:calc(var(--radius) - 2px)}.border{border-width:1px}.border-input{border-color:hsl(var(--input))}.bg-background{background-color:hsl(var(--background))}.bg-card{background-color:hsl(var(--card))}.bg-destructive{background-color:hsl(var(--destructive))}.bg-destructive\/90{background-color:hsl(var(--destructive) / .9)}.bg-primary{background-color:hsl(var(--primary))}.bg-primary\/90{background-color:hsl(var(--primary) / .9)}.bg-secondary{background-color:hsl(var(--secondary))}.bg-secondary\/80{background-color:hsl(var(--secondary) / .8)}.p-6{padding:1.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-8{padding-left:2rem;padding-right:2rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.pt-0{padding-top:0}.text-2xl{font-size:clamp(1.25rem,1.125rem + .625vw,1.5rem);line-height:clamp(1.875rem,1.75rem + .625vw,2.25rem)}.text-sm{font-size:.875rem;line-height:1.25rem}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.italic{font-style:italic}.leading-none{line-height:1}.tracking-tight{letter-spacing:-.025em}.text-accent-foreground{color:hsl(var(--accent-foreground))}.text-card-foreground{color:hsl(var(--card-foreground))}.text-destructive-foreground{color:hsl(var(--destructive-foreground))}.text-muted-foreground{color:hsl(var(--muted-foreground))}.text-primary{color:hsl(var(--primary))}.text-primary-foreground{color:hsl(var(--primary-foreground))}.text-secondary-foreground{color:hsl(var(--secondary-foreground))}.underline-offset-4{text-underline-offset:4px}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline{outline-style:solid}.ring-offset-background{--tw-ring-offset-color: hsl(var(--background))}.drop-shadow{--tw-drop-shadow: drop-shadow(0 1px 2px rgb(0 0 0 / .1)) drop-shadow(0 1px 1px rgb(0 0 0 / .06));filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}@keyframes enter{0%{opacity:var(--tw-enter-opacity, 1);transform:translate3d(var(--tw-enter-translate-x, 0),var(--tw-enter-translate-y, 0),0) scale3d(var(--tw-enter-scale, 1),var(--tw-enter-scale, 1),var(--tw-enter-scale, 1)) rotate(var(--tw-enter-rotate, 0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity, 1);transform:translate3d(var(--tw-exit-translate-x, 0),var(--tw-exit-translate-y, 0),0) scale3d(var(--tw-exit-scale, 1),var(--tw-exit-scale, 1),var(--tw-exit-scale, 1)) rotate(var(--tw-exit-rotate, 0))}}@keyframes gentle-bounce{0%,20%,53%,80%,to{transform:translateZ(0)}40%,43%{transform:translate3d(0,-8px,0)}70%{transform:translate3d(0,-4px,0)}90%{transform:translate3d(0,-2px,0)}}@keyframes soft-pulse{0%,to{opacity:1}50%{opacity:.8}}html,body,#root{height:100%;margin:0}:root{--coral: #E07A5F;--coral-soft: #F4C7B8;--coral-deep: #C45F47;--sage: #739E82;--sage-soft: #C2D6CA;--sage-deep: #557A65;--cream: #F8F2E5;--cream-deep: #F0E6D2;--warm: #F5DAB4;--paper: #FBF7EF;--ink: #2A2018;--ink-soft: #5A4A3C;--ink-light: #8A7868;--line: #E5D9C3;--line-strong: #D4C4A8;--subj-math: #6B7BC5;--subj-math-soft: #C5CCEB;--subj-math-bg: #EEF0FA;--subj-reading: #E07A5F;--subj-reading-soft: #F4C7B8;--subj-reading-bg: #FBE9E2;--subj-science: #739E82;--subj-science-soft: #BFDDCC;--subj-science-bg: #E8F2EC;--subj-writing: #B07AB8;--subj-writing-soft: #D9BFDD;--subj-writing-bg: #F2E8F4;--subj-social: #E8B36B;--subj-social-soft: #F2D5A8;--subj-social-bg: #FBF1DF;--gold: #E8B36B;--rose: #E47C8A;--sky: #79B6D8;--scale: 1;--r-sm: 12px;--r-md: 18px;--r-lg: 24px;--r-xl: 32px;--r-pill: 9999px;--shadow-sm: 0 2px 6px rgba(74, 56, 40, .08);--shadow-md: 0 8px 24px rgba(74, 56, 40, .1);--shadow-lg: 0 18px 50px rgba(74, 56, 40, .14);--shadow-coral: 0 8px 28px rgba(232, 133, 107, .32);--shadow-sage: 0 8px 28px rgba(122, 184, 154, .32)}body[data-density=kid]{--scale: 1.15}body[data-density=calm]{--scale: 1}body[data-age-band=early] .a-title{font-size:26px}body[data-age-band=early] .btn{font-size:19px}body[data-age-band=early] .topbar-text-detail{display:none}body[data-age-band=early] .a-icon{width:80px;height:80px;font-size:40px}body[data-age-band=older] .assignment-card{padding:16px 20px;gap:16px}body[data-age-band=older] .a-icon{width:56px;height:56px;font-size:28px}body[data-age-band=older] .a-title{font-size:19px}.app{width:100%;height:100%;position:relative;overflow:hidden;font-family:Nunito,system-ui,sans-serif;-webkit-tap-highlight-color:transparent;overscroll-behavior:none;background:var(--cream);color:var(--ink)}.app:before{content:"";position:fixed;inset:0;background-image:radial-gradient(circle at 20% 30%,rgba(232,179,107,.06),transparent 40%),radial-gradient(circle at 80% 70%,rgba(122,184,154,.05),transparent 40%);pointer-events:none;z-index:0}.screen{position:absolute;inset:0;overflow:auto;overflow-x:hidden;z-index:1}.font-display{font-family:Quicksand,system-ui,sans-serif;font-weight:700;letter-spacing:-.01em}.font-prose{font-family:Merriweather,Georgia,serif}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:14px 22px;border-radius:var(--r-pill);font-weight:700;font-size:17px;font-family:Nunito,system-ui,sans-serif;min-height:calc(52px * var(--scale));transition:transform .12s ease,box-shadow .2s ease,background .2s ease;white-space:nowrap;cursor:pointer;border:none;color:inherit}.btn:active{transform:scale(.97)}.btn:focus-visible{outline:3px solid var(--sky);outline-offset:2px;border-radius:4px}.btn-primary{background:var(--coral);color:#fff;box-shadow:var(--shadow-coral)}.btn-primary:hover{background:var(--coral-deep)}.btn-secondary{background:#fff;color:var(--ink);box-shadow:var(--shadow-sm);border:2px solid var(--line)}.btn-secondary:hover{border-color:var(--coral);color:var(--coral-deep)}.btn-ghost{background:transparent;color:var(--ink-soft);font-weight:600}.btn-ghost:hover{color:var(--ink);background:#0000000a}.btn-large{font-size:22px;padding:20px 36px;min-height:calc(68px * var(--scale))}.ll-card{background:#fff;border-radius:var(--r-lg);box-shadow:var(--shadow-sm);border:1.5px solid var(--line)}.subj-chip{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border-radius:var(--r-pill);font-size:13px;font-weight:700;letter-spacing:.02em;text-transform:uppercase}.tile-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:22px;width:100%;max-width:920px}.student-tile{width:200px;position:relative;display:flex;flex-direction:column;align-items:center;gap:14px;padding:28px 16px 20px;background:#fff;border-radius:var(--r-xl);border:2px solid var(--line);box-shadow:var(--shadow-sm);transition:transform .18s ease,box-shadow .2s ease,border-color .2s ease;cursor:pointer;font-family:Nunito,system-ui,sans-serif}.student-tile:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);border-color:var(--coral-soft)}.student-tile.selected{border-color:var(--coral);box-shadow:var(--shadow-coral);transform:translateY(-4px)}.ll-avatar{border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;color:#fff;box-shadow:inset 0 -6px #00000014}.pin-display{display:flex;gap:14px;justify-content:center}.pin-dot{width:18px;height:18px;border-radius:50%;background:var(--cream-deep);border:2px solid var(--line-strong);transition:all .15s ease}.pin-dot.filled{background:var(--coral);border-color:var(--coral);transform:scale(1.1)}.pin-pad{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.pin-key{width:72px;height:72px;border-radius:50%;background:#fff;border:2px solid var(--line);font-size:28px;font-weight:700;font-family:Nunito,system-ui,sans-serif;color:var(--ink);display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-sm);transition:all .12s ease;cursor:pointer}.pin-key:hover{background:var(--cream);border-color:var(--coral-soft)}.pin-key:active{transform:scale(.92);background:var(--cream-deep)}.topbar{display:flex;align-items:center;justify-content:space-between;padding:18px 32px;background:#ffffffb3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1.5px solid var(--line);position:sticky;top:0;z-index:10}.topbar-left{display:flex;align-items:center;gap:16px}.topbar-right{display:flex;align-items:center;gap:14px}.assignment-card{position:relative;display:grid;grid-template-columns:auto 1fr auto;gap:22px;align-items:center;padding:22px 26px;background:#fff;border-radius:var(--r-lg);border:2px solid var(--line);cursor:pointer;transition:all .18s ease;overflow:hidden}.assignment-card:hover{transform:translate(4px);border-color:var(--ink-light);box-shadow:var(--shadow-md)}.assignment-card.done{background:var(--sage-soft);border-color:var(--sage);opacity:.9}.assignment-card.done .a-title{text-decoration:line-through;opacity:.7}.a-icon{width:72px;height:72px;border-radius:var(--r-md);display:flex;align-items:center;justify-content:center;font-size:36px;flex-shrink:0}.a-title{font-size:22px;font-weight:800;font-family:Quicksand,sans-serif;color:var(--ink);margin:0 0 4px}.a-meta{font-size:14px;color:var(--ink-light)}.whiteboard-wrap{position:relative;background:var(--paper);border-radius:var(--r-lg);overflow:hidden;border:1.5px solid var(--line);flex:1;display:flex;flex-direction:column}.wb-canvas-area{flex:1;position:relative;overflow:auto;background:linear-gradient(var(--paper),var(--paper)),repeating-linear-gradient(0deg,transparent 0,transparent 31px,rgba(122,184,154,.18) 31px,rgba(122,184,154,.18) 32px);background-blend-mode:multiply;background-color:var(--paper)}.wb-toolbar{display:flex;flex-wrap:wrap;flex-shrink:0;align-items:center;gap:8px;padding:10px 14px;background:#fff;border-top:1.5px solid var(--line);position:sticky;bottom:0;z-index:2}.wb-tool{width:44px;height:44px;border-radius:50%;background:var(--cream);display:flex;align-items:center;justify-content:center;border:2px solid transparent;transition:all .15s ease;cursor:pointer}.wb-tool:hover{background:var(--cream-deep)}.wb-tool.active{background:#fff;border-color:var(--ink);box-shadow:var(--shadow-sm)}.color-swatch{width:32px;height:32px;border-radius:50%;border:3px solid white;box-shadow:0 0 0 1.5px var(--line);transition:transform .15s ease;cursor:pointer}.color-swatch.active{transform:scale(1.18);box-shadow:0 0 0 2px var(--ink)}.size-dot{border-radius:50%;background:var(--ink)}.q-choice{display:flex;align-items:center;gap:18px;padding:22px 24px;background:#fff;border-radius:var(--r-lg);border:2.5px solid var(--line);font-size:20px;font-weight:600;font-family:Nunito,system-ui,sans-serif;text-align:left;width:100%;transition:all .15s ease;cursor:pointer}.q-choice:hover{border-color:var(--ink-light);transform:translate(2px)}.q-choice.selected{border-color:var(--coral);background:var(--subj-reading-bg)}.q-choice.correct{border-color:var(--sage);background:var(--subj-science-bg)}.q-choice.wrong{border-color:var(--rose);background:#fce9ec}.q-letter{width:48px;height:48px;border-radius:50%;background:var(--cream);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:22px;font-family:Quicksand,sans-serif;color:var(--ink);flex-shrink:0}.q-choice.selected .q-letter{background:var(--coral);color:#fff}.q-choice.correct .q-letter{background:var(--sage);color:#fff}.q-choice.wrong .q-letter{background:var(--rose);color:#fff}.reading-page{background:#fff;border-radius:var(--r-lg);padding:48px clamp(28px,6vw,56px);box-shadow:var(--shadow-md);max-width:720px;margin:0 auto;font-family:Merriweather,Georgia,serif;font-size:19px;line-height:1.85;color:var(--ink)}.reading-page p{margin:0 0 1.2em}.reading-page p:first-of-type:first-letter{font-size:4em;float:left;line-height:.85;padding:8px 10px 0 0;color:var(--coral);font-weight:700}.confetti-piece{position:absolute;width:12px;height:18px;border-radius:2px;animation:confetti-fall 2.4s ease-out infinite}.sticker{display:flex;flex-direction:column;align-items:center;justify-content:center;width:130px;height:130px;border-radius:50%;background:#fff;box-shadow:var(--shadow-md);border:3px solid var(--line);font-size:14px;font-weight:800;color:var(--ink-soft);text-align:center;padding:8px;font-family:Nunito,system-ui,sans-serif}.sticker.earned{background:linear-gradient(135deg,#ffe6b0,#ffc97a);border-color:var(--gold);color:#5a3a10}.sticker.locked{opacity:.5}.progress-track{height:14px;background:var(--cream-deep);border-radius:var(--r-pill);overflow:hidden;position:relative;border:1.5px solid var(--line)}.progress-fill{height:100%;background:linear-gradient(90deg,var(--coral),var(--coral-soft));border-radius:var(--r-pill);transition:width .4s ease}.ll-flex{display:flex}.ll-center{align-items:center;justify-content:center}.ll-col{flex-direction:column}@keyframes confetti-fall{0%{transform:translateY(-100vh) rotate(0);opacity:1}to{transform:translateY(100vh) rotate(720deg);opacity:0}}@keyframes pop-in{0%{transform:scale(0);opacity:0}60%{transform:scale(1.15);opacity:1}to{transform:scale(1);opacity:1}}@keyframes wiggle{0%,to{transform:rotate(-2deg)}50%{transform:rotate(2deg)}}@keyframes float-anim{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.pop-in{animation:pop-in .55s cubic-bezier(.34,1.56,.64,1) both}.wiggle{animation:wiggle 1.6s ease-in-out infinite}.float{animation:float-anim 3.2s ease-in-out infinite}@keyframes weavie-pop{0%{transform:translateY(12px) scale(.96);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.weavie-panel{transform-origin:bottom right;animation:weavie-pop .22s cubic-bezier(.16,1,.3,1) both}.weavie-fab{transition:transform .15s ease,box-shadow .15s ease}.weavie-fab:hover{transform:translateY(-2px);box-shadow:0 6px 26px #7c6fe88c}::-webkit-scrollbar{width:12px;height:12px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--line-strong);border-radius:6px;border:3px solid var(--cream)}::-webkit-scrollbar-thumb:hover{background:var(--ink-light)}.file\:border-0::file-selector-button{border-width:0px}.file\:bg-transparent::file-selector-button{background-color:transparent}.file\:text-sm::file-selector-button{font-size:.875rem;line-height:1.25rem}.file\:font-medium::file-selector-button{font-weight:500}.placeholder\:text-muted-foreground::-moz-placeholder{color:hsl(var(--muted-foreground))}.placeholder\:text-muted-foreground::placeholder{color:hsl(var(--muted-foreground))}.hover\:bg-accent:hover{background-color:hsl(var(--accent))}.hover\:bg-destructive\/90:hover{background-color:hsl(var(--destructive) / .9)}.hover\:bg-primary\/90:hover{background-color:hsl(var(--primary) / .9)}.hover\:bg-secondary\/80:hover{background-color:hsl(var(--secondary) / .8)}.hover\:text-accent-foreground:hover{color:hsl(var(--accent-foreground))}.hover\:underline:hover{text-decoration-line:underline}.focus-visible\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.focus-visible\:ring-2:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-ring:focus-visible{--tw-ring-color: hsl(var(--ring))}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width: 2px}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}
