/*! tailwindcss v4.3.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-font-weight:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-ease:initial}}}@layer theme{:root,:host{--font-sans:"Space Grotesk", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-emerald-300:oklch(84.5% .143 164.978);--color-emerald-400:oklch(76.5% .177 163.223);--color-emerald-700:oklch(50.8% .118 165.612);--color-slate-100:oklch(96.8% .007 247.896);--color-slate-200:oklch(92.9% .013 255.508);--color-slate-400:oklch(70.4% .04 256.788);--color-slate-900:oklch(20.8% .042 265.755);--color-neutral-200:oklch(92.2% 0 0);--color-neutral-500:oklch(55.6% 0 0);--color-neutral-600:oklch(43.9% 0 0);--color-neutral-700:oklch(37.1% 0 0);--color-neutral-800:oklch(26.9% 0 0);--color-neutral-900:oklch(20.5% 0 0);--color-white:#fff;--spacing:.25rem;--container-md:28rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25 / 1.875);--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--text-5xl:3rem;--text-5xl--line-height:1;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--radius-md:.75rem;--radius-lg:1rem;--radius-xl:1.25rem;--radius-2xl:1.5rem;--ease-in:cubic-bezier(.4, 0, 1, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--font-display:"Nunito", system-ui, sans-serif;--text-display:clamp(2rem, 4vw + 1rem, 3.25rem);--text-title:clamp(1.5rem, 2vw + .75rem, 2rem);--text-subtitle:1.125rem;--text-body:.9375rem;--text-caption:.8125rem;--ease-out-expo:cubic-bezier(.16, 1, .3, 1);--duration-fast:.15s;--duration-normal:.25s;--duration-slow:.45s;--color-brand-300:#6ee7b7;--color-brand-400:#34d399;--color-brand-500:#10b981;--color-surface:#fafdf9;--color-surface-elevated-dark:#0f2a48;--color-charcoal-deep:#0f172a;--color-muted:#64748b;--color-muted-light:#94a3b8;--gradient-brand:linear-gradient(135deg, #34d399 0%, #10b981 55%, #059669 100%);--gradient-brand-soft:linear-gradient(160deg, #ecfdf5 0%, #d1fae5 45%, #d1fae5a6 100%);--shadow-glass-dark:0 4px 24px -4px #0006, 0 0 0 1px #ffffff14;--shadow-lift:0 12px 40px -12px #34d39947;--touch-min:2.75rem;--press-scale:.96;--spring-press:cubic-bezier(.34, 1.4, .64, 1);--btn-font-family:var(--font-sans);--btn-font-size:.8125rem;--btn-font-size-sm:.75rem;--btn-font-size-xs:.6875rem;--btn-font-weight:600;--btn-font-weight-nav:500;--btn-letter-spacing:.01em;--btn-line-height:1.25;--btn-radius:.5rem;--btn-radius-sm:.375rem;--btn-radius-tab:.4375rem;--btn-padding-y:.375rem;--btn-padding-x:.75rem;--btn-padding-compact-y:.3125rem;--btn-padding-compact-x:.5rem;--btn-padding-icon:.375rem;--btn-min-height:2.25rem;--btn-min-height-touch:var(--touch-min);--btn-transition:background-color .15s ease, border-color .15s ease, color .15s ease, box-shadow .15s ease;--btn-focus-ring:0 0 0 3px #3b82f640;--btn-focus-outline:#3b82f6;--pastel-physics:#dbeafe;--pastel-chemistry:#d1fae5;--pastel-earth:#fef3c7;--pastel-astronomy:#ede9fe;--pastel-biology:#fce7f3;--pastel-math:#cffafe;--pastel-games:#ffedd5}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-0{inset:0}.isolate{isolation:isolate}.z-10{z-index:10}.z-50{z-index:50}.z-\[5\]{z-index:5}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.mx-1{margin-inline:var(--spacing)}.mx-auto{margin-inline:auto}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-5{margin-bottom:calc(var(--spacing) * 5)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.size-full{width:100%;height:100%}.h-3\.5{height:calc(var(--spacing) * 3.5)}.h-4{height:calc(var(--spacing) * 4)}.h-5{height:calc(var(--spacing) * 5)}.h-full{height:100%}.\!max-h-none{max-height:none!important}.max-h-\[70vh\]{max-height:70vh}.min-h-0{min-height:0}.min-h-\[320px\]{min-height:320px}.min-h-\[480px\]{min-height:480px}.min-h-screen{min-height:100vh}.w-3\.5{width:calc(var(--spacing) * 3.5)}.w-4{width:calc(var(--spacing) * 4)}.w-5{width:calc(var(--spacing) * 5)}.w-48{width:calc(var(--spacing) * 48)}.w-full{width:100%}.max-w-\[60\%\]{max-width:60%}.max-w-md{max-width:var(--container-md)}.flex-1{flex:1}.flex-shrink,.shrink{flex-shrink:1}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1{gap:var(--spacing)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.overflow-hidden{overflow:hidden}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-none{border-radius:0}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-emerald-400\/30{border-color:#00d2944d}@supports (color:color-mix(in lab, red, red)){.border-emerald-400\/30{border-color:color-mix(in oklab, var(--color-emerald-400) 30%, transparent)}}.border-neutral-200{border-color:var(--color-neutral-200)}.bg-emerald-400{background-color:var(--color-emerald-400)}.bg-slate-900\/95{background-color:#0f172bf2}@supports (color:color-mix(in lab, red, red)){.bg-slate-900\/95{background-color:color-mix(in oklab, var(--color-slate-900) 95%, transparent)}}.bg-white{background-color:var(--color-white)}.bg-white\/95{background-color:#fffffff2}@supports (color:color-mix(in lab, red, red)){.bg-white\/95{background-color:color-mix(in oklab, var(--color-white) 95%, transparent)}}.object-cover{object-fit:cover}.p-4{padding:calc(var(--spacing) * 4)}.p-8{padding:calc(var(--spacing) * 8)}.p-12{padding:calc(var(--spacing) * 12)}.px-3{padding-inline:calc(var(--spacing) * 3)}.py-2{padding-block:calc(var(--spacing) * 2)}.text-center{text-align:center}.\!text-3xl{font-size:var(--text-3xl)!important;line-height:var(--tw-leading,var(--text-3xl--line-height))!important}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.text-emerald-700{color:var(--color-emerald-700)}.text-neutral-500{color:var(--color-neutral-500)}.text-neutral-600{color:var(--color-neutral-600)}.text-neutral-800{color:var(--color-neutral-800)}.text-neutral-900{color:var(--color-neutral-900)}.text-slate-200{color:var(--color-slate-200)}.text-slate-400{color:var(--color-slate-400)}.text-slate-900{color:var(--color-slate-900)}.text-white{color:var(--color-white)}.italic{font-style:italic}.ordinal{--tw-ordinal:ordinal;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.opacity-40{opacity:.4}.opacity-50{opacity:.5}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-2xl{--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a), 0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.grayscale{--tw-grayscale:grayscale(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.invert{--tw-invert:invert(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-blur{--tw-backdrop-blur:blur(8px);-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.ease-in{--tw-ease:var(--ease-in);transition-timing-function:var(--ease-in)}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}@media (hover:hover){.hover\:bg-emerald-300:hover{background-color:var(--color-emerald-300)}.hover\:text-white:hover{color:var(--color-white)}}@media (width>=40rem){.sm\:\!text-4xl{font-size:var(--text-4xl)!important;line-height:var(--tw-leading,var(--text-4xl--line-height))!important}}@media (width>=48rem){.md\:hidden{display:none}}.dark\:border-neutral-700:where(.dark,.dark *){border-color:var(--color-neutral-700)}.dark\:text-slate-100:where(.dark,.dark *){color:var(--color-slate-100)}.dark\:text-white:where(.dark,.dark *){color:var(--color-white)}}@media (width<=639px){:root{--text-caption:.875rem;--text-body:1rem}.kids-principle-label{font-size:.75rem}.site-header{padding-left:env(safe-area-inset-left,0);padding-right:env(safe-area-inset-right,0)}}:root{--btn-color:#334155;--btn-color-muted:#64748b;--btn-bg:#fff;--btn-border:#e2e8f0;--btn-hover-bg:#f8fafc;--btn-hover-border:#93c5fd;--btn-hover-color:#1d4ed8;--btn-primary-bg:#2563eb;--btn-primary-border:#2563eb;--btn-primary-color:#fff;--btn-primary-hover-bg:#1d4ed8;--btn-ghost-hover-bg:#f1f5f9}.dark{--eda-dark-bg:#0b1929;--eda-dark-surface:#0f2a48;--eda-dark-surface-glass:#0f2a48e0;--eda-dark-surface-input:#0714288c;--eda-dark-surface-muted:#071428b3;--eda-dark-border:#38649659;--eda-dark-border-strong:#334155;--eda-dark-text:#f1f5f9;--eda-dark-text-bright:#f8fafc;--eda-dark-text-muted:#94a3b8;--eda-dark-text-subtle:#64748b;--eda-dark-accent:#60a5fa;--eda-dark-accent-soft:#93c5fd;--eda-dark-primary:#2563eb;--eda-dark-primary-hover:#1d4ed8;--eda-dark-header:#0f172af2;--eda-dark-header-toolbar:#0a1e38eb;--eda-dark-hover-bg:#1e293ba6;--eda-dark-active-bg:#1e3a8a40;--eda-dark-focus:#3b82f6;--eda-dark-focus-ring:#3b82f61f;--btn-color:#cbd5e1;--btn-color-muted:var(--eda-dark-text-muted);--btn-bg:var(--eda-dark-surface-glass);--btn-border:var(--eda-dark-border);--btn-hover-bg:var(--eda-dark-hover-bg);--btn-hover-border:var(--eda-dark-focus);--btn-hover-color:var(--eda-dark-accent-soft);--btn-primary-bg:var(--eda-dark-primary);--btn-primary-border:var(--eda-dark-primary);--btn-primary-color:#fff;--btn-primary-hover-bg:var(--eda-dark-primary-hover);--btn-ghost-hover-bg:#1e293b73}html{font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4{font-family:var(--font-display)}body{min-height:100vh;margin:0}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.glass-card{border-radius:var(--radius-2xl);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffeb;border:1px solid #a7f3d080;transition:border-color .2s,box-shadow .2s,transform .2s;box-shadow:0 1px 3px #0f281e0a,0 8px 24px -8px #34d3991f}.dark .glass-card{border-color:var(--eda-dark-border);background:var(--eda-dark-surface-glass);box-shadow:var(--shadow-glass-dark)}.elevated-card{border-radius:var(--radius-2xl);background:#fff;border:1px solid #d1fae5cc;box-shadow:0 1px 3px #0f281e0a,0 4px 16px -4px #34d3991a}.dark .elevated-card{border-color:var(--eda-dark-border);background:var(--color-surface-elevated-dark)}.glass-card:hover{border-color:#6ee7b773}.glass-card-interactive:hover{box-shadow:var(--shadow-lift);transform:translateY(-3px)}.btn{border-radius:var(--radius-xl);justify-content:center;align-items:center;gap:.5rem;padding:.625rem 1.25rem;font-size:.875rem;font-weight:600;line-height:1.25;transition:background-color .15s,border-color .15s,color .15s,transform .15s,box-shadow .15s;display:inline-flex}.btn:active{transform:scale(.98)}.btn-primary{background:var(--gradient-brand);color:#0f281e;box-shadow:0 4px 14px -4px #34d3998c}.btn-primary:hover{background:linear-gradient(135deg, var(--color-brand-300), var(--color-brand-500));color:#0f281e;box-shadow:0 6px 20px -4px #34d399a6}.btn-secondary{color:#1e4637;background:#d1fae559;border:1px solid #6ee7b759}.btn-secondary:hover{background:#a7f3d08c;border-color:#34d39973}.dark .btn-secondary{border-color:var(--eda-dark-border);background:var(--eda-dark-surface-input);color:var(--eda-dark-text)}.dark .btn-secondary:hover{background:var(--eda-dark-hover-bg);border-color:var(--eda-dark-focus)}.btn-ghost{color:inherit;border-radius:var(--radius-md);background:0 0;border:1px solid #a7f3d073;padding:.5rem .75rem;font-size:.75rem}.btn-ghost:hover{background:#d1fae573}.dark .btn-ghost{border-color:var(--eda-dark-border)}.dark .btn-ghost:hover{background:var(--eda-dark-hover-bg)}.chip{border-radius:9999px;align-items:center;gap:.375rem;padding:.375rem 1rem;font-size:.8125rem;font-weight:500;transition:background-color .15s,color .15s,border-color .15s,transform .15s;display:inline-flex}.chip:not(.chip-active):hover{background:#d1fae573}.chip-active{color:#0f281e}.dark .chip-active{color:#fff}.stat-pill-light{color:#4b6458;background:#ffffffd9;border:1px solid #a7f3d099;border-radius:9999px;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.8125rem;display:inline-flex}.stat-pill-light strong{color:#0f281e;font-weight:600}.stat-pill-animated{animation:.5s both fade-up}@keyframes fade-up{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.dark .stat-pill-light{border-color:var(--eda-dark-border);background:var(--eda-dark-surface-input);color:var(--eda-dark-accent-soft)}.dark .stat-pill-light strong{color:#fff}.stat-pill{color:#a7f3d0;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:9999px;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.8125rem;display:inline-flex}.stat-pill strong{color:#fff;font-weight:600}.skeleton{background:linear-gradient(90deg,#6ee7b71f 0%,#6ee7b740 50%,#6ee7b71f 100%) 0 0/200% 100%;animation:1.5s ease-in-out infinite shimmer}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes pulse-soft{0%,to{opacity:1}50%{opacity:.6}}.animate-pulse-soft{animation:2s ease-in-out infinite pulse-soft}.page-heading{letter-spacing:-.025em;color:var(--color-charcoal-deep);font-size:1.875rem;font-weight:700}.dark .page-heading{color:#fff}.page-subheading{color:var(--color-muted);margin-top:.5rem}.dark .page-subheading{color:var(--eda-dark-text-muted)}.input-search{border-radius:var(--radius-xl);background:#ffffffd9;border:1px solid #a7f3d08c;outline:none;width:100%;padding:.625rem 1rem;font-size:.875rem;transition:border-color .15s,box-shadow .15s}.input-search:focus{border-color:var(--color-brand-400);box-shadow:0 0 0 3px #34d3992e}.dark .input-search{background:var(--eda-dark-surface-glass);border-color:var(--eda-dark-border);color:var(--eda-dark-text-bright)}.dark .input-search:focus{border-color:var(--eda-dark-focus);box-shadow:0 0 0 3px var(--eda-dark-focus-ring)}.difficulty-easy{color:#056446;background:#34d3992e}.difficulty-medium{color:#b4640a;background:#f59e0b26}.difficulty-hard{color:#b93232;background:#ef444426}.nav-link{color:#4b6458;font-size:.875rem;font-weight:500;transition:color .15s;position:relative}.nav-link:hover{color:#0f281e}.dark .nav-link{color:var(--eda-dark-text-muted)}.dark .nav-link:hover{color:var(--eda-dark-text-bright)}.nav-link-active{color:#0f281e;font-weight:600}.dark .nav-link-active{color:#fff}.nav-link-active:after{content:"";background:linear-gradient(90deg, var(--color-brand-400), var(--color-brand-300));border-radius:9999px;height:2px;position:absolute;bottom:-.25rem;left:0;right:0}.mobile-nav-link{border-radius:var(--radius-xl);-webkit-tap-highlight-color:transparent;width:100%;transition:background-color var(--duration-fast) ease, color var(--duration-fast) ease, transform var(--duration-fast) var(--spring-press);padding:.875rem 1rem;font-size:.9375rem;font-weight:600;line-height:1.25;text-decoration:none;display:block}.mobile-nav-link:active{transform:scale(var(--press-scale))}.mobile-nav-link--active{color:#056446;background:#ecfdf5}.mobile-nav-link:not(.mobile-nav-link--active){color:#475569}.mobile-nav-link:not(.mobile-nav-link--active):active{background:#f1f5f9}.dark .mobile-nav-link--active{background:var(--eda-dark-active-bg);color:var(--eda-dark-accent-soft)}.dark .mobile-nav-link:not(.mobile-nav-link--active){color:#cbd5e1}.dark .mobile-nav-link:not(.mobile-nav-link--active):active{background:var(--eda-dark-hover-bg)}.install-prompt{bottom:max(1rem, env(safe-area-inset-bottom,0px));left:max(1rem, env(safe-area-inset-left,0px));right:max(1rem, env(safe-area-inset-right,0px))}.hero-gradient{background:radial-gradient(ellipse 80% 60% at 50% -20%, #a8cce873, transparent), radial-gradient(ellipse 60% 50% at 100% 50%, #9fd4b84d, transparent), linear-gradient(160deg, #f0f8fc 0%, var(--c-mint-100,#e5f7ee) 45%, #faf8f2 100%);border:1px solid #a8cce873}main:has(.home-page){padding-top:1.25rem;padding-bottom:2rem}@media (width>=640px){main:has(.home-page){padding-top:1.5rem;padding-bottom:2.5rem}}.home-page{flex-direction:column;gap:1.5rem;display:flex}@media (width>=640px){.home-page{gap:2rem}}.home-section__eyebrow{margin-bottom:.25rem}.home-section--playable{padding-top:.25rem}.home-section__head,.home-panel__head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem 1rem;margin-bottom:.75rem;display:flex}.home-section__title{letter-spacing:-.02em;color:#0f281e;font-size:clamp(1.125rem,1.5vw + .75rem,1.375rem);font-weight:700;line-height:1.2}.home-section__title--sm{font-size:.9375rem}.dark .home-section__title{color:#fff}.home-section__desc{color:#64748b;margin-top:.125rem;font-size:.8125rem}.dark .home-section__desc{color:#94a3b8}.home-section__footnote{text-align:center;color:#64748b;margin-top:.625rem;font-size:.75rem}.home-section-link--sm{font-size:.75rem}.home-main-grid{align-items:start;gap:1rem;display:grid}@media (width>=1024px){.home-main-grid{grid-template-columns:1fr 17.5rem;gap:1.25rem}}@media (width>=1280px){.home-main-grid{grid-template-columns:1fr 20rem}}.home-panel{border-radius:var(--radius-xl);background:#fffffff0;border:1px solid #d1fae5bf;padding:1rem 1.125rem;box-shadow:0 1px 2px #0f281e08,0 8px 24px -12px #34d3991f}.dark .home-panel{border-color:var(--eda-dark-border);background:var(--eda-dark-surface-glass)}.home-sidebar{flex-direction:column;gap:.75rem;display:flex}.home-results-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.75rem;margin-top:.75rem;display:grid}.home-results-more{text-align:center;margin-top:.75rem}.home-result-count{color:#056446;background:#ecfdf5;border-radius:9999px;flex-shrink:0;padding:.375rem .75rem;font-size:.8125rem;font-weight:600}.dark .home-result-count{color:var(--eda-dark-accent-soft);background:#2563eb26}.filter-toolbar--compact{margin-bottom:0;padding:.75rem}.filter-toolbar__row{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.filter-toolbar__chips{flex-wrap:wrap;gap:.375rem;margin-top:.625rem;display:flex}.empty-state--compact{padding:1.5rem 1rem}.empty-state__icon{color:#34d399b3;width:2.5rem;height:2.5rem;margin-inline:auto}.home-featured-list{flex-direction:column;gap:.375rem;margin:0;padding:0;list-style:none;display:flex}.home-featured-item{border-radius:var(--radius-lg);align-items:center;gap:.625rem;padding:.5rem .625rem;text-decoration:none;transition:background-color .15s,transform .15s;display:flex}.home-featured-item:hover{background:#ecfdf5cc;transform:translate(2px)}.dark .home-featured-item:hover{background:var(--eda-dark-hover-bg)}.home-featured-item__icon{border-radius:var(--radius-md);flex-shrink:0;justify-content:center;align-items:center;width:2rem;height:2rem;font-size:1rem;display:flex}.home-featured-item__text{flex-direction:column;flex:1;gap:.0625rem;min-width:0;display:flex}.home-featured-item__title{color:#0f281e;white-space:nowrap;text-overflow:ellipsis;font-size:.8125rem;font-weight:600;overflow:hidden}.dark .home-featured-item__title{color:#fff}.home-featured-item__meta{color:#64748b;font-size:.6875rem}.home-featured-item__arrow{color:#34d399;opacity:0;flex-shrink:0;transition:opacity .15s,transform .15s}.home-featured-item:hover .home-featured-item__arrow{opacity:1;transform:translate(2px)}.home-subject-list{flex-wrap:wrap;gap:.375rem;display:flex}.home-subject-chip{color:#1e4637;background:#fffc;border:1px solid #a7f3d080;border-radius:9999px;align-items:center;gap:.375rem;padding:.375rem .625rem;font-size:.75rem;font-weight:500;text-decoration:none;transition:background-color .15s,border-color .15s,transform .15s,box-shadow .15s;display:inline-flex}.home-subject-chip:hover{border-color:var(--subject-color,#34d399);background:#ecfdf5;transform:translateY(-1px);box-shadow:0 2px 8px -2px #34d39940}.dark .home-subject-chip{border-color:var(--eda-dark-border);background:var(--eda-dark-surface-input);color:var(--eda-dark-accent-soft)}.home-subject-chip__icon{font-size:.875rem}.home-subject-chip__count{color:var(--subject-color,#057855);opacity:.85;font-size:.6875rem;font-weight:700}.home-hero{border:1px solid #a7f3d059;box-shadow:0 1px 3px #0f281e0a,0 16px 48px -20px #34d39938}.home-hero--pro .home-hero__inner--pro{gap:1rem;padding:1rem 1rem 0}@media (width>=768px){.home-hero--pro .home-hero__inner--pro{gap:1.25rem;padding:1.25rem 1.25rem 0}}@media (width>=1024px){.home-hero--pro .home-hero__inner--pro{grid-template-columns:1fr auto;align-items:center;gap:1.5rem;padding:1.25rem 1.5rem 0}}.home-hero--pro .home-trust-strip--pro{margin-top:.875rem;padding:.5rem 1rem}.home-hero__eyebrow{margin-bottom:.375rem;font-size:.6875rem}.home-hero__title--pro{font-size:clamp(1.5rem,3vw + .5rem,2.25rem);line-height:1.12}.home-hero__subtitle--pro{color:#4b6458;max-width:28rem;margin-top:.375rem;font-size:.875rem;line-height:1.45}.dark .home-hero__subtitle--pro{color:var(--eda-dark-text-muted)}.home-hero__actions{flex-wrap:wrap;gap:.5rem;margin-top:.875rem;display:flex}.home-hero__stats--pro{gap:.5rem}.home-stat-card--pro{padding:.625rem .375rem}.home-stat-card--pro .home-stat-card__num{font-size:1.25rem}.home-hero--compact .home-hero__inner{gap:1.25rem;padding:1.25rem 1.25rem 0}@media (width>=1024px){.home-hero--compact .home-hero__inner{gap:1.75rem;padding:1.5rem 2rem 0}}.home-hero--compact .home-trust-strip{margin-top:1.25rem;padding:.625rem 1.25rem}.hero-orb{pointer-events:none;filter:blur(40px);opacity:.45;border-radius:9999px;animation:8s ease-in-out infinite float-orb;position:absolute}.hero-orb--1{background:#6ee7b780;width:8rem;height:8rem;top:-2rem;right:10%}.hero-orb--2{background:#a7f3d099;width:5rem;height:5rem;animation-delay:-2s;bottom:20%;left:5%}.hero-orb--3{background:#34d39959;width:4rem;height:4rem;animation-delay:-4s;top:30%;right:35%}@keyframes float-orb{0%,to{transform:translate(0)scale(1)}50%{transform:translate(6px,-8px)scale(1.05)}}.home-hero__title-bounce{animation:3s ease-in-out infinite bounce-gentle;display:inline-block}@keyframes bounce-gentle{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.btn-bounce:hover{animation:.5s cubic-bezier(.34,1.56,.64,1) bounce-btn}@keyframes bounce-btn{0%{transform:scale(1)}40%{transform:scale(1.06)}70%{transform:scale(.97)}to{transform:scale(1)}}.chip-pop:active{animation:.3s cubic-bezier(.34,1.56,.64,1) chip-pop}@keyframes chip-pop{0%{transform:scale(1)}50%{transform:scale(1.08)}to{transform:scale(1)}}.home-hero__inner{gap:2rem;padding:2rem 1.5rem 0;display:grid;position:relative}@media (width>=1024px){.home-hero__inner{grid-template-columns:1fr auto;align-items:center;gap:3rem;padding:3rem 2.5rem 0}}.home-hero__content{max-width:36rem}.home-hero--compact .home-hero__title{font-size:clamp(1.75rem,3.5vw + .75rem,2.75rem);line-height:1.1}.home-hero__title{font-size:clamp(2.25rem,5vw + 1rem,3.75rem);line-height:1.05}.home-hero__title-accent{color:#0000;background:linear-gradient(135deg,#34d399,#10b981);-webkit-background-clip:text;background-clip:text;display:inline-block}.home-hero__pulse-dot{vertical-align:middle;background:#34d399;border-radius:9999px;width:.5rem;height:.5rem;margin-right:.5rem;animation:2s ease-in-out infinite pulse-soft;display:inline-block}.home-hero__value-props{flex-wrap:wrap;gap:.5rem 1.25rem;margin:0;padding:0;list-style:none;display:flex}.home-hero__value-props li{color:#4b6458;align-items:center;gap:.375rem;font-size:.8125rem;font-weight:500;display:flex}.home-hero__value-props li span{color:#34d399;font-weight:700}.btn-hero-cta{padding:.625rem 1.25rem;font-size:.875rem}.home-hero--compact .home-stat-card{padding:.875rem .5rem}.home-hero--compact .home-stat-card__num{font-size:1.375rem}.home-hero__stats{grid-template-columns:repeat(3,1fr);gap:.75rem;min-width:0;display:grid}@media (width>=1024px){.home-hero__stats{min-width:18rem}}.home-stat-card{border-radius:var(--radius-xl);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);text-align:center;background:#ffffffbf;border:1px solid #a7f3d080;flex-direction:column;justify-content:center;align-items:center;gap:.25rem;padding:1.25rem .75rem;transition:transform .25s cubic-bezier(.16,1,.3,1),box-shadow .25s;display:flex}.home-stat-card:hover{transform:translateY(-3px);box-shadow:0 8px 24px -8px #34d3994d}.home-stat-card--accent{background:linear-gradient(135deg,#ecfdf5,#d1fae599);border-color:#6ee7b780}.home-stat-card__num{letter-spacing:-.03em;color:#0f281e;font-size:1.75rem;font-weight:800;line-height:1}.home-stat-card--accent .home-stat-card__num{color:#057855}.home-stat-card__label{text-transform:uppercase;letter-spacing:.06em;color:#64748b;font-size:.625rem;font-weight:600;line-height:1.3}.home-trust-strip{background:#ffffff59;border-top:1px solid #a7f3d066;flex-wrap:wrap;justify-content:center;align-items:center;gap:.75rem 1rem;margin-top:2rem;padding:1rem 1.5rem;display:flex}.home-trust-strip__item{letter-spacing:.02em;text-transform:uppercase;color:#3c5a4b;align-items:center;gap:.4375rem;font-size:.6875rem;font-weight:600;display:flex}.home-trust-strip__svg{color:#34d399;opacity:.9;flex-shrink:0;width:.875rem;height:.875rem}.dark .home-trust-strip__item{color:var(--eda-dark-accent-soft)}.home-trust-strip__icon{font-size:1rem}.home-trust-strip__divider{background:#a7f3d099;width:1px;height:1rem}.hero-grid-pattern{opacity:.35;pointer-events:none;background-image:linear-gradient(#a7f3d026 1px,#0000 1px),linear-gradient(90deg,#a7f3d026 1px,#0000 1px);background-size:48px 48px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(80% 70% at 50% 30%,#000,#0000);mask-image:radial-gradient(80% 70% at 50% 30%,#000,#0000)}.home-hero__floats{pointer-events:none;position:absolute;inset:0;overflow:hidden}.home-hero__float-icon{opacity:.2;animation:6s ease-in-out infinite float-icon;animation-delay:var(--float-delay,0s);font-size:1.5rem;position:absolute}.home-hero__float-icon:first-child{top:12%;right:8%}.home-hero__float-icon:nth-child(2){font-size:1.25rem;top:28%;right:22%}.home-hero__float-icon:nth-child(3){font-size:1.75rem;top:55%;right:12%}.home-hero__float-icon:nth-child(4){font-size:1.125rem;top:18%;right:38%}.home-hero__float-icon:nth-child(5){top:42%;right:32%}.home-hero__float-icon:nth-child(6){font-size:1.375rem;top:65%;right:28%}@keyframes float-icon{0%,to{transform:translate(0)rotate(0)}50%{transform:translate(var(--float-x,8px), -10px) rotate(6deg)}}.home-section-link{color:#057855;align-items:center;gap:.25rem;font-size:.875rem;font-weight:600;text-decoration:none;transition:gap .2s,color .15s;display:inline-flex}.home-section-link:hover{color:#046446;gap:.5rem}.reveal-section{opacity:0;transition:opacity .65s cubic-bezier(.16,1,.3,1),transform .65s cubic-bezier(.16,1,.3,1);transform:translateY(28px)}.reveal-section.is-revealed{opacity:1;transform:translateY(0)}.is-revealed .subject-card--premium{animation:stagger-in .5s cubic-bezier(.16, 1, .3, 1) var(--reveal-delay,0s) both}.playable-showcase{margin:0 -.5rem;padding:0 .5rem}.playable-showcase__track{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:.75rem;display:grid}@media (width>=1024px){.playable-showcase__track{grid-template-columns:repeat(3,1fr)}}@media (width<=639px){.playable-showcase{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;margin:0 -1rem;padding:0 1rem 1.75rem;scroll-padding-inline:1rem;overflow-x:auto;-webkit-mask-image:linear-gradient(90deg,#0000,#000 1.25rem calc(100% - 1.25rem),#0000);mask-image:linear-gradient(90deg,#0000,#000 1.25rem calc(100% - 1.25rem),#0000)}.playable-showcase::-webkit-scrollbar{display:none}.playable-showcase__track{gap:1rem;width:max-content;padding-right:1rem;display:flex}.playable-showcase__track .elevated-card{scroll-snap-align:center;flex:0 0 78vw;max-width:20rem}@supports (animation-timeline:view()){.playable-showcase__track .game-card-premium{animation:linear both carousel-snap-focus;animation-timeline:view(inline);animation-range:cover 35% cover 65%}}.playable-showcase__hint{letter-spacing:.02em;color:#057855a6;align-items:center;gap:.375rem;font-size:.6875rem;font-weight:500;display:flex;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.playable-showcase__hint-svg{opacity:.65;width:.875rem;height:.875rem}.playable-showcase__hint-icon{animation:1.5s ease-in-out infinite wiggle-hint;display:inline-block}.playable-showcase{position:relative}}@keyframes wiggle-hint{0%,to{transform:translate(0)}25%{transform:translate(-4px)}75%{transform:translate(2px)}}@keyframes carousel-snap-focus{0%,to{transform:scale(.97)}50%{transform:scale(1)}}.subject-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.75rem;display:grid}.subject-card--premium{align-items:center;gap:.75rem;text-decoration:none;display:flex}.subject-card__icon{border-radius:var(--radius-lg);border:1px solid;justify-content:center;align-items:center;width:3rem;height:3rem;font-size:1.25rem;transition:transform .3s cubic-bezier(.16,1,.3,1);display:flex}.subject-card--premium:hover .subject-card__icon{transform:scale(1.15)rotate(-6deg)}.subject-card--playful:hover{transform:translateY(-5px)scale(1.01)}.subject-card--playful:active{transform:translateY(-2px)scale(.99)}.subject-card--playful:hover .subject-card__arrow{animation:.6s bounce-gentle;transform:translate(6px)}.subject-card__arrow{transition:transform .25s}.subject-card--premium:hover .subject-card__arrow{transform:translate(4px)}@media (prefers-reduced-motion:reduce){.reveal-section{opacity:1;transition:none;transform:none}.home-hero__float-icon,.home-hero__pulse-dot,.hero-orb,.home-hero__title-bounce,.playable-showcase__hint,.playable-showcase__hint-icon,.btn-bounce:hover,.chip-pop:active{animation:none}.pressable:active,.tap-ring:active{animation:none;transform:none}.playable-showcase__track .game-card-premium{animation:none}.home-stat-card:hover,.subject-card--playful:hover,.subject-card--playful:active,.home-featured-item:hover,.home-subject-chip:hover{transform:none}.is-revealed .subject-card--premium{animation:none}}.dark .hero-gradient{border-color:var(--eda-dark-border);background:linear-gradient(135deg,#2563eb1f,#0f2a488c);box-shadow:0 4px 24px #00000026}.link-accent{color:#057855;transition:color .15s}.link-accent:hover{color:#046446}.dark .link-accent{color:var(--eda-dark-accent-soft)}.dark .link-accent:hover{color:var(--eda-dark-accent)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.section-eyebrow{font-size:var(--text-caption);letter-spacing:.2em;text-transform:uppercase;color:#057855;font-weight:600}.dark .section-eyebrow{color:var(--eda-dark-accent)}.section-title{font-size:var(--text-title);letter-spacing:-.025em;color:#0f281e;font-weight:700}.dark .section-title{color:#fff}.display-heading{font-size:var(--text-display);letter-spacing:-.03em;font-weight:700;line-height:1.1}.text-gradient-hero{color:#0000;background:linear-gradient(135deg,#0f281e 0%,#057855 55%,#34d399 100%);-webkit-background-clip:text;background-clip:text}.dark .text-gradient-hero{background:linear-gradient(135deg, #fff 0%, var(--eda-dark-accent-soft) 60%, var(--eda-dark-accent) 100%);color:#0000;-webkit-background-clip:text;background-clip:text}.brand-logo-link{color:inherit;flex-shrink:0;align-items:center;text-decoration:none;display:inline-flex}.brand-logo-link--header{max-height:2.5rem}.brand-logo--compact{align-items:center;gap:.625rem;min-width:0;display:inline-flex}.brand-logo--header{gap:.5rem}.brand-logo--header .brand-logo__name{font-size:.875rem;line-height:1.15}.brand-logo--header .brand-logo__tagline{letter-spacing:.12em;font-size:.5625rem;line-height:1.2}@media (width<=639px){.brand-logo--header .brand-logo__tagline{display:none}}.brand-logo__icon{object-fit:contain;filter:drop-shadow(0 2px 5px #10b98173);background:#ecfdf5d9;border-radius:9999px;flex-shrink:0;min-width:3.25rem;min-height:3.25rem;box-shadow:0 0 0 2px #a7f3d0bf,0 4px 14px -2px #10b98166}.brand-logo__icon--sm{width:3.25rem;min-width:3.25rem;height:3.25rem;min-height:3.25rem}.brand-logo__icon--md{width:4rem;min-width:4rem;height:4rem;min-height:4rem}.brand-logo__icon--lg{width:4.5rem;min-width:4.5rem;height:4.5rem;min-height:4.5rem}.brand-logo__icon--header{filter:none;background:0 0;width:2.5rem;min-width:2.5rem;height:2.5rem;min-height:2.5rem;box-shadow:0 0 0 1px #a7f3d073}@media (width>=640px){.brand-logo__icon--lg{width:4.5rem;min-width:4.5rem;height:4.5rem;min-height:4.5rem}.brand-logo__icon--header{width:3rem;min-width:3rem;height:3rem;min-height:3rem}}.brand-logo__text{flex-direction:column;gap:.0625rem;min-width:0;display:flex}.brand-logo__name{letter-spacing:-.02em;color:var(--color-charcoal-deep);font-size:.9375rem;font-weight:700;line-height:1.2}.dark .brand-logo__name{color:#fff}.brand-logo__tagline{letter-spacing:.14em;text-transform:uppercase;color:var(--color-muted);font-size:.625rem;font-weight:600;line-height:1.3}.dark .brand-logo__tagline{color:var(--color-muted-light)}.brand-logo__full{object-fit:contain;flex-shrink:0;width:auto;height:auto;display:block}.brand-logo__full--sm{width:11rem;min-width:11rem}.brand-logo__full--md{width:14rem;min-width:14rem}.brand-logo__full--lg{width:17.5rem;min-width:17.5rem}.brand-logo__full--header{filter:drop-shadow(0 2px 8px #10b9814d);width:8.75rem;min-width:8.75rem}.brand-logo__full--xl{filter:drop-shadow(0 4px 14px #10b98159);width:10rem;min-width:10rem}@media (width>=640px){.brand-logo__full--sm{width:13rem;min-width:13rem}.brand-logo__full--md{width:16rem;min-width:16rem}.brand-logo__full--lg{width:20rem;min-width:20rem}.brand-logo__full--header{width:12.5rem;min-width:12.5rem}.brand-logo__full--xl{width:13.75rem;min-width:13.75rem}}.site-header{border-bottom-color:#a7f3d073}.site-header__inner{min-height:3.5rem;padding-top:.625rem;padding-bottom:.625rem}@media (width>=640px){.site-header__inner{min-height:4rem;padding-top:.75rem;padding-bottom:.75rem}.brand-logo-link--header{max-height:2.5rem}}.catalog-hero{border-radius:var(--radius-2xl);background:var(--gradient-brand-soft);border:1px solid #a7f3d080;padding:1.5rem 1.25rem;position:relative;overflow:hidden;box-shadow:0 1px 3px #0f281e0a,0 12px 40px -16px #34d39933}.catalog-hero:before{content:"";filter:blur(32px);pointer-events:none;background:#6ee7b740;border-radius:9999px;width:10rem;height:10rem;position:absolute;top:-3rem;right:-2rem}.dark .catalog-hero{border-color:var(--eda-dark-border);background:linear-gradient(135deg,#2563eb1f,#0f2a488c);box-shadow:0 4px 24px #00000026}.catalog-hero .page-heading{position:relative}.catalog-hero .page-subheading{max-width:36rem;position:relative}.home-hero__brand-mark{align-items:center;gap:.75rem;margin-bottom:.75rem;display:flex}.home-hero__brand-mark .brand-logo__full--xl{filter:drop-shadow(0 6px 20px #10b98161)}.home-hero__brand-wordmark{flex-direction:column;gap:.125rem;display:flex}.home-hero__brand-title{letter-spacing:-.02em;color:var(--color-charcoal-deep);font-size:.8125rem;font-weight:700}.dark .home-hero__brand-title{color:#fff}.home-hero__brand-tagline{letter-spacing:.16em;text-transform:uppercase;color:var(--color-muted);font-size:.5625rem;font-weight:600}@media (width>=640px){.catalog-hero{padding:1.75rem 1.5rem}}.header-scrolled{box-shadow:0 4px 24px -8px #0f281e14,0 0 0 1px #a7f3d059}.dark .header-scrolled{box-shadow:0 4px 24px -8px #0006, 0 0 0 1px var(--eda-dark-border)}.stagger-grid>*{animation:stagger-in var(--duration-slow) var(--ease-out-expo) both}.stagger-grid>:first-child{animation-delay:0s}.stagger-grid>:nth-child(2){animation-delay:50ms}.stagger-grid>:nth-child(3){animation-delay:.1s}.stagger-grid>:nth-child(4){animation-delay:.15s}.stagger-grid>:nth-child(5){animation-delay:.2s}.stagger-grid>:nth-child(6){animation-delay:.25s}.stagger-grid>:nth-child(7){animation-delay:.3s}.stagger-grid>:nth-child(8){animation-delay:.35s}.stagger-grid>:nth-child(9){animation-delay:.4s}@keyframes stagger-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.badge-playable{color:#fff;background:linear-gradient(135deg,#34d399,#10b981);border-radius:9999px;align-items:center;gap:.25rem;padding:.25rem .625rem;font-size:.6875rem;font-weight:600;display:inline-flex;box-shadow:0 2px 8px -2px #34d39980}.badge-pending{color:#b4640a;background:#f59e0b26;border:1px solid #f59e0b59;border-radius:9999px;align-items:center;gap:.25rem;padding:.25rem .625rem;font-size:.6875rem;font-weight:600;display:inline-flex}.subject-card{border-radius:var(--radius-2xl);transition:transform var(--duration-normal) var(--ease-out-expo), box-shadow var(--duration-normal) var(--ease-out-expo), border-color var(--duration-fast) ease;background:#ffffffeb;border:1px solid #a7f3d080;padding:1rem;position:relative;overflow:hidden}.subject-card:before{content:"";opacity:0;transition:opacity var(--duration-normal) ease;background:linear-gradient(135deg,#6ee7b714,#0000 60%);position:absolute;inset:0}.subject-card:hover{box-shadow:var(--shadow-lift);border-color:#6ee7b78c;transform:translateY(-4px)}.subject-card:hover:before{opacity:1}.dark .subject-card{border-color:var(--eda-dark-border);background:var(--eda-dark-surface-glass)}.skeleton-card{border-radius:var(--radius-2xl);border:1px solid #a7f3d059;overflow:hidden}.skeleton-card__thumb{height:10rem}.skeleton-card__body{flex-direction:column;gap:.5rem;padding:1rem;display:flex}.skeleton-line{border-radius:.375rem;height:.875rem}.skeleton-line--short{width:40%}.skeleton-line--medium{width:70%}.empty-state{border-radius:var(--radius-2xl);text-align:center;background:#ecfdf573;border:1px dashed #a7f3d0a6;padding:3rem 1.5rem}.dark .empty-state{border-color:var(--eda-dark-border);background:var(--eda-dark-surface-input)}.filter-toolbar{border-radius:var(--radius-2xl);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffffff2;border:1px solid #d1fae5cc;box-shadow:0 1px 3px #0f281e0a,0 8px 24px -8px #34d3991f}.dark .filter-toolbar{border-color:var(--eda-dark-border);background:var(--eda-dark-surface-glass)}.chip:active:not(.chip-active){transform:scale(.96)}.pressable{-webkit-tap-highlight-color:transparent;transition:transform var(--duration-fast) var(--spring-press), box-shadow var(--duration-fast) ease, background-color var(--duration-fast) ease, border-color var(--duration-fast) ease}.pressable:active{transform:scale(var(--press-scale))}@media (pointer:coarse){.tap-ring:active{animation:tap-ring-pulse .35s var(--spring-press)}}@keyframes tap-ring-pulse{0%{box-shadow:0 0 #34d39973}to{box-shadow:0 0 0 .5rem #0000}}.card-play-overlay{opacity:0;transition:opacity var(--duration-normal) ease;background:#0f281e59;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.group:hover .card-play-overlay{opacity:1}.card-play-btn{color:#057855;width:3rem;height:3rem;transition:transform var(--duration-normal) var(--ease-out-expo);background:#fff;border-radius:9999px;justify-content:center;align-items:center;display:flex;transform:scale(.85);box-shadow:0 8px 24px -4px #00000040}.group:hover .card-play-btn{transform:scale(1)}.card-play-pill{z-index:2;color:#057855;opacity:0;min-height:2rem;transition:opacity var(--duration-normal) ease, transform var(--duration-normal) var(--ease-out-expo);pointer-events:none;background:#fffffff5;border-radius:9999px;align-items:center;gap:.25rem;padding:.375rem .75rem;font-size:.75rem;font-weight:700;line-height:1;display:inline-flex;position:absolute;bottom:.75rem;right:.75rem;transform:scale(.92);box-shadow:0 4px 14px -4px #0003}.card-play-pill__icon{flex-shrink:0;width:.75rem;height:.75rem}.group:hover .card-play-pill{opacity:1;transform:scale(1)}@media (width<=639px),(pointer:coarse){.card-play-overlay{opacity:1;background:linear-gradient(#0000 45%,#0f281e73 100%)}.card-play-overlay .card-play-btn{display:none}.card-play-pill{opacity:1;min-height:var(--touch-min);padding-inline:1rem;font-size:.8125rem;transform:scale(1)}}.article-panel{border-radius:var(--radius-2xl);transition:box-shadow var(--duration-normal) ease;background:#fff;border:1px solid #d1fae5cc;padding:1.25rem}.article-panel:hover{box-shadow:0 4px 16px -4px #34d3991f}.dark .article-panel{border-color:var(--eda-dark-border);background:var(--eda-dark-surface-glass)}.tag-chip{color:#056446;transition:background-color var(--duration-fast) ease, border-color var(--duration-fast) ease;background:#ecfdf5;border:1px solid #a7f3d080;border-radius:9999px;padding:.25rem .75rem;font-size:.75rem;font-weight:500}.tag-chip:hover{background:#d1fae5;border-color:#6ee7b78c}.dark .tag-chip{border-color:var(--eda-dark-border);color:var(--eda-dark-accent-soft);background:#2563eb26}.game-card-premium{transition:transform .3s cubic-bezier(.16,1,.3,1),border-color .2s,box-shadow .3s}.game-card-premium:hover{box-shadow:var(--shadow-lift);border-color:#6ee7b78c;transform:translateY(-6px)}.game-card-premium:active{transform:scale(var(--press-scale));box-shadow:0 4px 16px -8px #34d3992e}@media (width<=639px),(pointer:coarse){.game-card-premium:hover{border-color:#d1fae5cc;transform:none;box-shadow:0 1px 3px #0f281e0a,0 4px 16px -4px #34d3991a}.game-card-premium .group-hover\:scale-105{transform:none}.game-card-premium[data-subject=physics]{background:linear-gradient(180deg, var(--pastel-physics) 0%, white 4.5rem);border-color:#3b82f659}.game-card-premium[data-subject=chemistry]{background:linear-gradient(180deg, var(--pastel-chemistry) 0%, white 4.5rem);border-color:#22c55e59}.game-card-premium[data-subject=earth]{background:linear-gradient(180deg, var(--pastel-earth) 0%, white 4.5rem);border-color:#f59e0b59}.game-card-premium[data-subject=astronomy]{background:linear-gradient(180deg, var(--pastel-astronomy) 0%, white 4.5rem);border-color:#8b5cf659}.game-card-premium[data-subject=biology]{background:linear-gradient(180deg, var(--pastel-biology) 0%, white 4.5rem);border-color:#ec489959}.game-card-premium[data-subject=math]{background:linear-gradient(180deg, var(--pastel-math) 0%, white 4.5rem);border-color:#06b6d459}.game-card-premium[data-subject=games]{background:linear-gradient(180deg, var(--pastel-games) 0%, white 4.5rem);border-color:#f9731659}.game-card-premium .card-play-footer-cta{opacity:1}.dark .game-card-premium[data-subject=physics]{background:linear-gradient(#3b82f626 0%,#142820 4.5rem)}.dark .game-card-premium[data-subject=chemistry]{background:linear-gradient(#22c55e26 0%,#142820 4.5rem)}.dark .game-card-premium[data-subject=earth]{background:linear-gradient(#f59e0b26 0%,#142820 4.5rem)}.dark .game-card-premium[data-subject=astronomy]{background:linear-gradient(#8b5cf626 0%,#142820 4.5rem)}.dark .game-card-premium[data-subject=biology]{background:linear-gradient(#ec489926 0%,#142820 4.5rem)}.dark .game-card-premium[data-subject=math]{background:linear-gradient(#06b6d426 0%,#142820 4.5rem)}.dark .game-card-premium[data-subject=games]{background:linear-gradient(#f9731626 0%,#142820 4.5rem)}}.game-card-premium:after{content:"";border-radius:inherit;opacity:0;pointer-events:none;background:linear-gradient(105deg,#0000 40%,#ffffff1f 45%,#0000 50%);transition:opacity .3s;position:absolute;inset:0}.game-card-premium{position:relative}.game-card-premium:hover:after{opacity:1}@media (prefers-reduced-motion:reduce){.game-card-premium:hover,.game-card-premium:active{transform:none}}.sim-error-panel{border-radius:var(--radius-xl);background:linear-gradient(#fef2f2 0%,#fff 100%);border:1px solid #ef444440}.sim-loading-panel{background:linear-gradient(#ecfdf580 0%,#fff 100%)}@media (width<=639px){.sim-loading-panel--player .sim-loading-hero{width:5.5rem;height:5.5rem}.sim-loading-panel--player .sim-loading-emoji{font-size:2rem}.sim-loading-panel--player .sim-loader,.sim-loading-panel--player .sim-loader--playful{width:4.25rem;height:4.25rem}.sim-loading-panel--player .sim-loading-title{font-size:1.125rem}.sim-loading-panel--player .sim-loading-msg{font-size:.9375rem}.sim-error-panel--player .sim-error-icon{width:4.5rem;height:4.5rem}.sim-error-panel--player .sim-state-title{font-size:1.125rem}.sim-error-panel--player .sim-state-body,.sim-error-panel--player .sim-state-help{font-size:.9375rem}.sim-retry-btn{min-height:var(--touch-min,2.75rem);border-radius:var(--radius-lg);min-width:8.5rem;padding:.625rem 1.25rem;font-size:1rem;font-weight:700}.sim-touch-hint{border-color:var(--sim-accent,#10b981);gap:.5rem;padding:.5625rem 1rem;font-size:.875rem}@supports (color:color-mix(in lab, red, red)){.sim-touch-hint{border-color:color-mix(in srgb, var(--sim-accent,#10b981) 45%, white)}}.sim-touch-hint{color:var(--sim-accent,#10b981)}@supports (color:color-mix(in lab, red, red)){.sim-touch-hint{color:color-mix(in srgb, var(--sim-accent,#10b981) 85%, #0f172a)}}.sim-touch-hint{animation:.5s cubic-bezier(.16,1,.3,1) sim-touch-in,2.5s ease-in-out .5s infinite sim-touch-pulse-accent}.sim-touch-hint__icon{width:1.0625rem;height:1.0625rem}}@keyframes sim-touch-pulse-accent{0%,to{box-shadow:0 4px 20px -6px color-mix(in srgb, var(--sim-accent,#10b981) 35%, transparent)}50%{box-shadow:0 0 0 4px color-mix(in srgb, var(--sim-accent,#10b981) 18%, transparent), 0 6px 24px -4px color-mix(in srgb, var(--sim-accent,#10b981) 45%, transparent)}}.sim-stage--player-native,.sim-stage--player-native .sim-viewport--player{flex:1;min-height:0}.player-root{--jv-sim-bg:var(--c-mint-100,#e5f7ee);--player-surface:var(--c-gray-50,#f8f7ff);--player-glass:#ffffffeb;--player-border:var(--c-gray-200,#d5d3e8);--player-text:var(--c-gray-900,#1a1730);--player-text-muted:#64748b;--player-btn-bg:var(--btn-bg,#fff);--player-btn-border:var(--btn-border,#e2e8f0);--player-btn-hover-bg:var(--btn-hover-bg,#f8fafc);--player-btn-hover-border:var(--btn-hover-border,#93c5fd);--player-btn-hover-color:var(--btn-hover-color,#1d4ed8);height:100dvh;font-family:var(--font-body,"Space Grotesk", system-ui, sans-serif);background:radial-gradient(ellipse 120% 80% at 50% -20%, #5e3ae814, transparent 55%), var(--player-surface);color:var(--player-text);padding:env(safe-area-inset-top,0) env(safe-area-inset-right,0) env(safe-area-inset-bottom,0) env(safe-area-inset-left,0);flex-direction:column;display:flex;overflow:hidden}.dark .player-root{--player-surface:var(--eda-dark-bg);--player-stage-bg:var(--eda-dark-surface);--player-surface-raised:var(--eda-dark-surface);--player-glass:var(--eda-dark-surface-glass);--player-sidebar:#0b1929f5;--player-border:var(--eda-dark-border);--player-text:var(--eda-dark-text);--player-text-muted:var(--eda-dark-text-muted);--player-btn-bg:var(--btn-bg,var(--eda-dark-surface-input));--player-btn-border:var(--btn-border,var(--eda-dark-border));--player-btn-hover-bg:var(--btn-hover-bg,var(--eda-dark-hover-bg));--player-btn-hover-border:var(--btn-hover-border,var(--eda-dark-focus));--player-btn-hover-color:var(--btn-hover-color,var(--eda-dark-accent-soft));--player-chrome-accent:var(--eda-dark-accent);background:var(--player-surface)}.player-shell{flex-direction:column;height:100%;min-height:0;animation:.4s cubic-bezier(.16,1,.3,1) player-shell-in;display:flex;position:relative}.player-body{flex-direction:column;flex:1;min-height:0;display:flex;position:relative}.player-main{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex}@media (width>=641px){.player-body{flex-direction:row}.player-shell--learn-hidden .player-main{flex:1}}@keyframes player-shell-in{0%{opacity:0}to{opacity:1}}.player-stage{background:var(--jv-sim-bg,var(--c-mint-100,#e5f7ee));flex-direction:column;flex:1;min-height:0;display:flex;position:relative;overflow:hidden}.dark .player-stage{background:var(--player-stage-bg,var(--eda-dark-surface))}@media (width>=641px){.player-stage{--player-stage-max:1440px;padding:.75rem 1rem 1rem}.player-stage .sim-stage--player,.player-stage .oss-static-player{width:100%;max-width:var(--player-stage-max);box-shadow:0 12px 40px -20px #1a0a4f24, 0 0 0 1px var(--c-gray-200,#d5d3e8);border-radius:1.25rem;margin-inline:auto;overflow:hidden}.dark .player-stage .sim-stage--player,.dark .player-stage .oss-static-player{box-shadow:0 18px 55px -28px #000c,0 0 0 1px #ffffff0f}.player-stage .oss-static-player,.player-stage .oss-static-player iframe,.player-stage .sim-viewport--player{background:var(--jv-sim-bg,var(--c-mint-100,#e5f7ee))}}.player-stage:before{content:"";z-index:0;pointer-events:none;background:radial-gradient(ellipse 88% 72% at 50% 42%, var(--jv-sim-bg,var(--c-mint-100,#e5f7ee)) 0%, var(--jv-sim-bg,var(--c-mint-100,#e5f7ee)) 48%, var(--jv-sim-bg,var(--c-mint-100,#e5f7ee)) 100%);position:absolute;inset:0}@supports (color:color-mix(in lab, red, red)){.player-stage:before{background:radial-gradient(ellipse 88% 72% at 50% 42%, var(--jv-sim-bg,var(--c-mint-100,#e5f7ee)) 0%, color-mix(in srgb, var(--jv-sim-bg,var(--c-mint-100,#e5f7ee)) 88%, white) 48%, color-mix(in srgb, var(--jv-sim-bg,var(--c-mint-100,#e5f7ee)) 72%, var(--c-sage-200,#c5dcc9)) 100%)}}.dark .player-stage:before{background:radial-gradient(ellipse 90% 75% at 50% 38%, #0f2a48eb 0%, #0f172a 52%, var(--eda-dark-bg) 100%)}.player-stage>*{z-index:1;position:relative}.player-stage .oss-static-player{flex-direction:column;flex:1;height:100%;min-height:0;display:flex}.player-stage .oss-static-player iframe{flex:1;min-height:0;height:100%!important}.player-stage .sim-stage--player{flex:1;height:100%;min-height:0;box-shadow:none!important;background:0 0!important;border:none!important;border-radius:0!important}.player-stage .sim-viewport--player{flex-direction:column;flex:1;min-height:0;display:flex}.player-stage .sim-viewport--javalab.sim-viewport--player{flex:1;min-height:0;max-height:none}.player-stage .sim-canvas-host{flex-direction:column;flex:1;width:100%;min-height:0;display:flex}.player-stage .javalab-player,.player-stage .javalab-player #divFull{flex-direction:column;flex:1;width:100%;height:100%;min-height:0;display:flex}.player-stage .javalab-player #myContainer{flex:1;justify-content:center;align-items:center;width:100%;min-height:0;display:flex;overflow:hidden}.player-stage .javalab-player #myP5Canvas{max-width:100%;max-height:100%;display:block}.player-stage .javalab-player .flexContainer,.player-stage .javalab-player .jv-toolbar{-webkit-overflow-scrolling:touch;scrollbar-width:thin;flex-wrap:nowrap;flex-shrink:0;align-items:center;width:100%;max-width:100%;min-height:3.25rem;max-height:none;overflow:auto visible}@media (width<=640px){.player-stage .javalab-player .flexContainer,.player-stage .javalab-player .jv-toolbar{min-height:2.75rem}}.player-stage .javalab-player #myContainer,.dark .player-stage .javalab-player #myContainer{background:var(--jv-sim-bg,var(--c-mint-100,#e5f7ee))}.player-stage .sim-toolbar--javalab{display:none}.player-stage .sim-loading-panel--player,.player-stage .sim-error-panel--player{background:#fff}.dark .player-stage .sim-loading-panel--player,.dark .player-stage .sim-error-panel--player{background:var(--player-surface-raised,#0f2a48);color:var(--player-text,#f1f5f9)}.player-chrome{z-index:30;border-bottom:1px solid var(--player-border);background:var(--player-glass);-webkit-backdrop-filter:blur(20px)saturate(1.35);backdrop-filter:blur(20px)saturate(1.35);flex-wrap:wrap;flex-shrink:0;justify-content:space-between;align-items:center;gap:.5rem .625rem;min-height:3rem;padding:.375rem .75rem;transition:opacity .32s cubic-bezier(.16,1,.3,1),transform .32s cubic-bezier(.16,1,.3,1);display:flex;position:relative;box-shadow:inset 0 1px #00000008,0 4px 20px -12px #1a0a4f14}.dark .player-chrome{box-shadow:inset 0 1px #ffffff0a,0 8px 32px -16px #0000008c}.player-chrome:before{content:"";background:linear-gradient(90deg, var(--player-accent,var(--player-chrome-accent,#5e3ae8)) 0%, var(--player-accent,var(--player-chrome-accent,#5e3ae8)) 72%, transparent 100%);height:2px;position:absolute;top:0;left:0;right:0}@supports (color:color-mix(in lab, red, red)){.player-chrome:before{background:linear-gradient(90deg, var(--player-accent,var(--player-chrome-accent,#5e3ae8)) 0%, color-mix(in srgb, var(--player-accent,var(--player-chrome-accent,#5e3ae8)) 35%, transparent) 72%, transparent 100%)}}.player-chrome:before{pointer-events:none}.player-chrome__tooltip{z-index:32;border-radius:var(--radius-pill,9999px);border:1px solid var(--player-border);background:var(--player-glass);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--player-text);white-space:nowrap;pointer-events:none;padding:.5rem .875rem;font-size:.8125rem;font-weight:600;animation:.35s cubic-bezier(.16,1,.3,1) player-tooltip-in;position:absolute;top:calc(100% + .375rem);left:50%;transform:translate(-50%);box-shadow:0 8px 24px -8px #1a0a4f1f}.dark .player-chrome__tooltip{box-shadow:0 8px 24px -8px #0000008c}@keyframes player-tooltip-in{0%{opacity:0;transform:translate(-50%,-4px)}to{opacity:1;transform:translate(-50%)}}.player-chrome__peek{z-index:31;pointer-events:auto;cursor:default;height:12px;position:absolute;top:0;left:0;right:0}.dark .player-chrome{border-color:var(--player-border);background:var(--player-glass)}.player-chrome--hidden{opacity:0;pointer-events:none;position:absolute;top:0;left:0;right:0;transform:translateY(calc(2px - 100%))}.player-chrome__left,.player-chrome__right{align-items:center;gap:.375rem;min-width:0;display:flex}.player-chrome__right{flex-shrink:0;gap:.25rem}.player-chrome__group{background:var(--player-btn-bg);border:1px solid var(--player-btn-border);border-radius:.5625rem;align-items:center;gap:.1875rem;padding:.125rem;display:flex}.dark .player-chrome__group{background:var(--player-btn-bg);border-color:var(--player-btn-border)}.player-chrome__sep{background:var(--player-border);flex-shrink:0;width:1px;height:1.125rem}.player-chrome__sep--group{display:none}@media (width>=480px){.player-chrome__sep--group{margin-inline:.125rem;display:block}}.dark .player-chrome__sep{background:#ffffff1f}.player-chrome__back{color:var(--player-text-muted);gap:.3125rem;padding-inline:.4375rem;text-decoration:none}.player-chrome__brand-icon{object-fit:contain;border-radius:9999px;flex-shrink:0;width:1.25rem;height:1.25rem}.player-chrome__back:hover{color:var(--player-text)}.player-chrome__back-label{letter-spacing:.01em;font-size:.6875rem;font-weight:600}.player-chrome__icon{flex-shrink:0;width:1rem;height:1rem}@media (width<=640px){.player-chrome{-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-wrap:nowrap;align-items:center;gap:.25rem .375rem;min-height:2.5rem;padding:.25rem .5rem;overflow:auto hidden}.player-chrome::-webkit-scrollbar{display:none}.player-chrome__peek{height:1rem}.player-chrome__left{flex:auto;min-width:0}.player-chrome__right{flex:none;justify-content:flex-end}.player-chrome__back-label,.player-chrome__btn-label,.player-chrome__sep:not(.player-chrome__sep--group){display:none}.player-chrome__title{max-width:min(36vw,9rem);font-size:.75rem}.player-chrome__subject{display:none}.player-chrome__btn{min-width:2.25rem;min-height:2.25rem;padding:.375rem}.player-chrome__btn--locale{min-width:2.25rem}.player-chrome__icon{width:1rem;height:1rem}.player-chrome__group{flex-shrink:0;gap:.125rem;padding:.125rem}}.player-chrome__dot{border-radius:9999px;flex-shrink:0;width:.4375rem;height:.4375rem;box-shadow:0 0 0 1.5px #ffffff26}.player-chrome__subject{background:var(--subject-color,#5e3ae8);border-radius:9999px;flex-shrink:0;align-items:center;gap:.3125rem;padding:.1875rem .5rem .1875rem .375rem;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.player-chrome__subject{background:color-mix(in srgb, var(--subject-color,#5e3ae8) 16%, #ffffff0d)}}.player-chrome__subject{border:1px solid var(--subject-color,#5e3ae8)}@supports (color:color-mix(in lab, red, red)){.player-chrome__subject{border:1px solid color-mix(in srgb, var(--subject-color,#5e3ae8) 32%, transparent)}}.player-chrome__subject-icon{font-size:.75rem;line-height:1}.player-chrome__subject-label{letter-spacing:.05em;text-transform:uppercase;color:var(--subject-color,#a78bfa);font-size:.625rem;font-weight:700}.player-chrome__title{font-family:var(--font-sans);letter-spacing:-.02em;color:var(--player-text,#f1f5f9);white-space:nowrap;text-overflow:ellipsis;max-width:min(32vw,14rem);margin:0;font-size:.8125rem;font-weight:600;line-height:1.25;overflow:hidden}.dark .player-chrome__title{color:var(--player-text,#f1f5f9)}@media (width>=640px){.player-chrome{min-height:3rem;padding:.3125rem .75rem}.player-chrome__title{max-width:min(42vw,22rem);font-size:.875rem}}.player-chrome__btn{min-width:var(--btn-min-height,2.25rem);min-height:var(--btn-min-height,2.25rem);border-radius:var(--btn-radius,.5rem);border:1px solid var(--player-btn-border);background:var(--player-btn-bg);padding:var(--btn-padding-icon,.375rem);font-family:var(--btn-font-family,var(--font-sans));font-size:var(--btn-font-size-xs,.6875rem);font-weight:var(--btn-font-weight,600);letter-spacing:var(--btn-letter-spacing,.01em);line-height:var(--btn-line-height,1.25);color:var(--player-text-muted);cursor:pointer;transition:var(--btn-transition);justify-content:center;align-items:center;gap:.3125rem;display:inline-flex}.player-chrome__btn:hover{background:var(--player-btn-hover-bg);border-color:var(--player-btn-hover-border,var(--player-accent,var(--player-chrome-accent,#5e3ae8)))}@supports (color:color-mix(in lab, red, red)){.player-chrome__btn:hover{border-color:var(--player-btn-hover-border,color-mix(in srgb, var(--player-accent,var(--player-chrome-accent,#5e3ae8)) 45%, transparent))}}.player-chrome__btn:hover{color:var(--player-btn-hover-color,var(--player-text));box-shadow:0 2px 12px -6px var(--player-accent,var(--player-chrome-accent,#5e3ae8))}@supports (color:color-mix(in lab, red, red)){.player-chrome__btn:hover{box-shadow:0 2px 12px -6px color-mix(in srgb, var(--player-accent,var(--player-chrome-accent,#5e3ae8)) 35%, transparent)}}.player-chrome__btn:focus-visible{outline:2px solid var(--btn-focus-outline,#3b82f6);outline-offset:2px}.player-chrome__btn:active{transform:scale(.96)}.player-chrome__btn--locale{letter-spacing:.06em;min-width:2.125rem;font-size:.625rem}.player-chrome__btn--active{background:var(--player-accent,var(--player-chrome-accent,#5e3ae8))}@supports (color:color-mix(in lab, red, red)){.player-chrome__btn--active{background:color-mix(in srgb, var(--player-accent,var(--player-chrome-accent,#5e3ae8)) 22%, transparent)}}.player-chrome__btn--active{border-color:var(--player-accent,var(--player-chrome-accent,#5e3ae8))}@supports (color:color-mix(in lab, red, red)){.player-chrome__btn--active{border-color:color-mix(in srgb, var(--player-accent,var(--player-chrome-accent,#5e3ae8)) 50%, transparent)}}.player-chrome__btn--active{color:var(--player-accent,var(--player-chrome-accent,#5e3ae8))}@supports (color:color-mix(in lab, red, red)){.player-chrome__btn--active{color:color-mix(in srgb, var(--player-accent,var(--player-chrome-accent,#5e3ae8)) 85%, white)}}.player-chrome__btn--active{box-shadow:0 0 0 1px var(--player-accent,var(--player-chrome-accent,#5e3ae8))}@supports (color:color-mix(in lab, red, red)){.player-chrome__btn--active{box-shadow:0 0 0 1px color-mix(in srgb, var(--player-accent,var(--player-chrome-accent,#5e3ae8)) 20%, transparent)}}.player-chrome__btn--wiggle{animation:.5s cubic-bezier(.34,1.56,.64,1) chrome-reset-wiggle}@keyframes chrome-reset-wiggle{0%{transform:rotate(0)}25%{transform:rotate(-12deg)scale(1.08)}50%{transform:rotate(10deg)scale(1.04)}75%{transform:rotate(-6deg)}to{transform:rotate(0)scale(1)}}.dark .player-chrome__btn{border-color:var(--player-btn-border);background:var(--player-btn-bg);color:var(--player-text-muted)}.dark .player-chrome__btn:hover{background:var(--player-btn-hover-bg);border-color:var(--player-btn-hover-border,var(--player-accent,var(--player-chrome-accent,#5e3ae8)))}@supports (color:color-mix(in lab, red, red)){.dark .player-chrome__btn:hover{border-color:var(--player-btn-hover-border,color-mix(in srgb, var(--player-accent,var(--player-chrome-accent,#5e3ae8)) 45%, transparent))}}.dark .player-chrome__btn:hover{color:var(--player-btn-hover-color,var(--player-text))}.dark .player-chrome__btn--active{background:var(--player-accent,var(--player-chrome-accent,#5e3ae8))}@supports (color:color-mix(in lab, red, red)){.dark .player-chrome__btn--active{background:color-mix(in srgb, var(--player-accent,var(--player-chrome-accent,#5e3ae8)) 22%, transparent)}}.dark .player-chrome__btn--active{color:var(--player-accent,var(--player-chrome-accent,#5e3ae8))}@supports (color:color-mix(in lab, red, red)){.dark .player-chrome__btn--active{color:color-mix(in srgb, var(--player-accent,var(--player-chrome-accent,#5e3ae8)) 85%, white)}}.player-drawer-backdrop{z-index:40;cursor:pointer;animation:player-fade-in var(--duration-normal) var(--ease-out-expo);background:#0000008c;border:none;position:fixed;inset:0}.player-drawer{z-index:50;border-left:1px solid var(--player-border);background:var(--player-glass);-webkit-backdrop-filter:blur(20px)saturate(1.35);backdrop-filter:blur(20px)saturate(1.35);width:min(100%,22.5rem);max-width:100%;transition:transform var(--duration-slow) var(--ease-out-expo);flex-direction:column;display:flex;position:fixed;top:0;bottom:0;right:0;transform:translate(100%);box-shadow:-12px 0 40px -12px #0000008c}.dark .player-drawer{border-color:var(--player-border);background:var(--player-sidebar,var(--player-glass));box-shadow:-12px 0 40px -12px #0000008c}.player-drawer--open{pointer-events:auto;transform:translate(0)}.player-drawer:not(.player-drawer--open){pointer-events:none}.player-drawer__handle{display:none}.player-drawer__header{border-bottom:1px solid #ffffff14;justify-content:space-between;align-items:flex-start;gap:.75rem;padding:1rem 1rem .75rem;display:flex}.dark .player-drawer__header{border-color:#ffffff14}.player-drawer__title{font-size:var(--text-subtitle);color:var(--player-text,#f1f5f9);margin:0;font-weight:700;line-height:1.25}.dark .player-drawer__title{color:var(--player-text,#f1f5f9)}.player-drawer__close{border-radius:var(--radius-md);min-width:2.25rem;min-height:2.25rem;color:var(--player-text-muted,#94a3b8);cursor:pointer;background:0 0;border:1px solid #ffffff1a;flex-shrink:0;justify-content:center;align-items:center;padding:.375rem;display:inline-flex}.player-drawer__close:hover{color:var(--player-text,#f1f5f9);background:#ffffff14}.dark .player-drawer__close{color:var(--player-text-muted,#94a3b8);border-color:#ffffff1a}.player-drawer__body{flex-direction:column;flex:1;gap:1.25rem;min-height:0;padding:1rem;display:flex;overflow-y:auto}.player-drawer__desc{font-size:var(--text-body);color:var(--player-text-muted,#94a3b8);margin:0;line-height:1.5}.dark .player-drawer__desc{color:var(--player-text-muted,#94a3b8)}.player-drawer__badges{flex-wrap:wrap;gap:.5rem;display:flex}.player-drawer__section{flex-direction:column;gap:.75rem;display:flex}.player-drawer__heading{font-size:var(--text-caption);text-transform:uppercase;letter-spacing:.08em;color:var(--player-accent,#5e3ae8);margin:0;font-weight:700}@supports (color:color-mix(in lab, red, red)){.player-drawer__heading{color:color-mix(in srgb, var(--player-accent,#5e3ae8) 80%, white)}}.dark .player-drawer__heading{color:var(--player-accent,#5e3ae8)}@supports (color:color-mix(in lab, red, red)){.dark .player-drawer__heading{color:color-mix(in srgb, var(--player-accent,#5e3ae8) 80%, white)}}.player-drawer__tips{flex-direction:column;gap:.625rem;margin:0;padding:0;list-style:none;display:flex}.player-drawer__tip{border-radius:var(--radius-lg);background:#ffffff0a;border:1px solid #ffffff14;gap:.625rem;padding:.75rem;display:flex}.dark .player-drawer__tip{background:#ffffff0a;border-color:#ffffff14}.player-drawer__tip-num{background:linear-gradient(135deg, var(--player-accent,#5e3ae8), var(--player-accent,#5e3ae8));border-radius:9999px;flex-shrink:0;justify-content:center;align-items:center;width:1.5rem;height:1.5rem;display:flex}@supports (color:color-mix(in lab, red, red)){.player-drawer__tip-num{background:linear-gradient(135deg, var(--player-accent,#5e3ae8), color-mix(in srgb, var(--player-accent,#5e3ae8) 70%, #1e1b4b))}}.player-drawer__tip-num{color:#fff;font-size:.6875rem;font-weight:700}.player-drawer__tip-title{color:var(--player-text,#f1f5f9);margin:0;font-size:.8125rem;font-weight:600}.dark .player-drawer__tip-title{color:var(--player-text,#f1f5f9)}.player-drawer__tip-body{color:var(--player-text-muted,#94a3b8);margin:.25rem 0 0;font-size:.8125rem;line-height:1.5}.player-drawer__tip-body--muted{color:#64748b}.player-drawer__related{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;gap:.625rem;padding-bottom:.25rem;display:flex;overflow-x:auto}.player-related-card{scroll-snap-align:start;border-radius:var(--radius-lg);transition:transform var(--duration-normal) var(--ease-out-expo), border-color var(--duration-fast) ease;background:#fff;border:1px solid #d1fae5cc;flex-direction:column;flex:0 0 8.75rem;text-decoration:none;display:flex;overflow:hidden}.player-related-card:hover{border-color:#6ee7b78c;transform:translateY(-2px)}.dark .player-related-card{border-color:var(--player-border);background:var(--player-surface-raised,#0f2a48)}.player-related-card__thumb{background:#f1f5f9;height:4.5rem;overflow:hidden}.player-related-card__body{padding:.5rem .625rem}.player-related-card__title{color:#0f281e;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:.6875rem;font-weight:600;line-height:1.3;display:-webkit-box;overflow:hidden}.dark .player-related-card__title{color:#fff}.player-related-card__meta{color:#94a3b8;margin:.125rem 0 0;font-size:.625rem}.player-drawer__credits-text{color:#475569;margin:0;font-size:.8125rem;line-height:1.5}.dark .player-drawer__credits-text{color:#94a3b8}@keyframes player-fade-in{0%{opacity:0}to{opacity:1}}.runtime-badge{border-radius:9999px;padding:.125rem .625rem;font-size:.6875rem;font-weight:600}.runtime-badge--javalab{color:#056446;background:#fff;border:1px solid #a7f3d099}.runtime-badge--native{color:#6d28d9;background:#f5f3ff;border:1px solid #c4b5fd80}.info-dl{flex-direction:column;gap:0;display:flex}.info-dl__row{color:#64748b;border-bottom:1px solid #ecfdf5;justify-content:space-between;align-items:center;gap:1rem;padding:.625rem 0;font-size:.8125rem;display:flex}.info-dl__row:last-child{border-bottom:none}.info-dl__row--stack{flex-direction:column;align-items:flex-start;gap:.5rem}.dark .info-dl__row{border-color:#34d3991a}.info-pill{border-radius:9999px;padding:.125rem .5rem;font-size:.6875rem;font-weight:600}.info-pill--javalab{color:#056446;background:#ecfdf5}.info-pill--native{color:#6d28d9;background:#f5f3ff}.info-hint-chip{color:#056446;text-transform:capitalize;background:#ecfdf5;border:1px solid #a7f3d080;border-radius:9999px;align-items:center;gap:.25rem;padding:.125rem .5rem;font-size:.6875rem;font-weight:500;display:inline-flex}.credits-link{border-radius:var(--radius-lg);color:#057855;transition:background-color var(--duration-fast) ease, border-color var(--duration-fast) ease;background:#ecfdf580;border:1px solid #a7f3d080;align-items:center;gap:.375rem;padding:.625rem 1rem;font-size:.8125rem;font-weight:600;text-decoration:none;display:inline-flex}.credits-link:hover{background:#d1fae5;border-color:#6ee7b799}.tip-code{color:#056446;background:#d1fae580;border-radius:.25rem;padding:.0625rem .375rem;font-family:ui-monospace,monospace;font-size:.75rem}.kids-principle-label{letter-spacing:.04em;text-transform:uppercase;color:#059669;font-size:.6875rem;font-weight:700}.dark .kids-principle-label{color:#34d399}.player-drawer-kids{border-radius:var(--radius-lg);background:linear-gradient(135deg,#ecfdf5e6,#d1fae559);border:1px solid #a7f3d099;margin-bottom:1rem;padding:.875rem 1rem}.player-drawer-kids__head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.375rem .75rem;display:flex}.player-drawer-kids__ages{letter-spacing:.03em;color:#057855;background:#ffffffbf;border:1px solid #a7f3d08c;border-radius:9999px;padding:.125rem .5rem;font-size:.6875rem;font-weight:700}.player-drawer-kids__label{letter-spacing:.05em;text-transform:uppercase;color:#057855;margin:0;font-size:.6875rem;font-weight:700}.player-drawer-kids__text{color:#0f3c2d;margin-top:.375rem;font-size:.9375rem;line-height:1.5}.dark .player-drawer-kids{background:#1e243473;border-color:#3b82f638}.dark .player-drawer-kids__label{color:var(--c-indigo-300,#a98ef5)}.dark .player-drawer-kids__text{color:var(--player-text-muted,#94a3b8)}.home-section--adventure{padding-top:.25rem}.adventure-tiles{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:.75rem;display:grid}.adventure-tile{border-radius:var(--radius-xl);background:linear-gradient(145deg, var(--subject-color), #fffffff2);border:1px solid #d1fae5cc;align-items:flex-start;gap:.875rem;padding:1rem 1.125rem;display:flex}@supports (color:color-mix(in lab, red, red)){.adventure-tile{background:linear-gradient(145deg, color-mix(in srgb, var(--subject-color) 12%, white), #fffffff2)}}.adventure-tile{transition:transform var(--duration-fast) ease, box-shadow var(--duration-fast) ease, border-color var(--duration-fast) ease;box-shadow:0 4px 16px -8px var(--subject-color);text-decoration:none}@supports (color:color-mix(in lab, red, red)){.adventure-tile{box-shadow:0 4px 16px -8px color-mix(in srgb, var(--subject-color) 35%, transparent)}}.adventure-tile:hover{border-color:var(--subject-color);transform:translateY(-2px)}@supports (color:color-mix(in lab, red, red)){.adventure-tile:hover{border-color:color-mix(in srgb, var(--subject-color) 45%, #d1fae5)}}.adventure-tile:hover{box-shadow:0 8px 24px -10px var(--subject-color)}@supports (color:color-mix(in lab, red, red)){.adventure-tile:hover{box-shadow:0 8px 24px -10px color-mix(in srgb, var(--subject-color) 40%, transparent)}}.adventure-tile__icon{background:var(--subject-color);border-radius:.875rem;flex-shrink:0;justify-content:center;align-items:center;width:2.75rem;height:2.75rem;font-size:1.375rem;display:flex}@supports (color:color-mix(in lab, red, red)){.adventure-tile__icon{background:color-mix(in srgb, var(--subject-color) 18%, white)}}.adventure-tile__body{flex-direction:column;gap:.25rem;min-width:0;display:flex}.adventure-tile__title{color:#0f281e;font-size:.9375rem;font-weight:700}.adventure-tile__blurb{color:#475569;font-size:.8125rem;line-height:1.45}.adventure-tile__count{color:var(--subject-color);margin-top:.25rem;font-size:.75rem;font-weight:600}@supports (color:color-mix(in lab, red, red)){.adventure-tile__count{color:color-mix(in srgb, var(--subject-color) 75%, #0f281e)}}.dark .adventure-tile{background:linear-gradient(145deg, var(--subject-color), #142820cc)}@supports (color:color-mix(in lab, red, red)){.dark .adventure-tile{background:linear-gradient(145deg, color-mix(in srgb, var(--subject-color) 15%, #14231e), #142820cc)}}.dark .adventure-tile{border-color:#34d39926}.dark .adventure-tile__title{color:#fff}.dark .adventure-tile__blurb{color:#94a3b8}.home-easy-chip{color:#057855;transition:background-color var(--duration-fast) ease;background:#d1fae5b3;border-radius:9999px;align-items:center;padding:.375rem .75rem;font-size:.75rem;font-weight:600;text-decoration:none;display:inline-flex}.home-easy-chip:hover{background:#a7f3d0}.home-section--collection{padding-top:0}.collection-carousel{scrollbar-width:thin;-webkit-overflow-scrolling:touch;margin:0 -.25rem;overflow-x:auto}.collection-carousel__track{gap:.75rem;min-width:min-content;padding:.25rem .25rem .5rem;display:flex}.collection-carousel__item{flex:0 0 min(260px,78vw)}@media (width<=639px){.collection-carousel{scroll-snap-type:x mandatory;scrollbar-width:none;margin:0 -1rem;padding:0 1rem .5rem;scroll-padding-inline:1rem;overflow-x:auto;-webkit-mask-image:linear-gradient(90deg,#0000,#000 1rem calc(100% - 1rem),#0000);mask-image:linear-gradient(90deg,#0000,#000 1rem calc(100% - 1rem),#0000)}.collection-carousel::-webkit-scrollbar{display:none}.collection-carousel__track{gap:1rem;padding:.25rem 1rem .5rem 0}.collection-carousel__item{scroll-snap-align:center;flex:0 0 78vw;max-width:20rem}}.catalog-availability{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.catalog-availability__option{color:#64748b;cursor:pointer;transition:background-color var(--duration-fast) ease, border-color var(--duration-fast) ease, color var(--duration-fast) ease, box-shadow var(--duration-fast) ease;background:#ffffffd9;border:1px solid #e2e8f0;border-radius:9999px;align-items:baseline;gap:.375rem;padding:.4375rem .875rem;font-size:.8125rem;display:inline-flex}.catalog-availability__option:hover{color:#1e4637;background:#ecfdf5d9;border-color:#6ee7b78c}.catalog-availability__option--active{color:#056446;background:#ecfdf5;border-color:#34d3998c;box-shadow:0 1px 2px #34d3991f}.catalog-availability__option--pending:not(.catalog-availability__option--active){background:#fffbeb99;border-color:#fde68ab3}.catalog-availability__option--pending.catalog-availability__option--active{color:#92400e;background:#fef3c7;border-color:#f59e0b80}.catalog-availability__value{letter-spacing:-.02em;color:#0f281e;font-size:.9375rem;font-weight:700}.catalog-availability__option--active .catalog-availability__value{color:#057855}.catalog-availability__option--pending.catalog-availability__option--active .catalog-availability__value{color:#b45309}.catalog-availability__label{font-weight:500}.dark .catalog-availability__option{border-color:var(--eda-dark-border);background:var(--eda-dark-surface-input);color:var(--eda-dark-text-muted)}.dark .catalog-availability__option:hover{border-color:var(--eda-dark-focus);background:var(--eda-dark-hover-bg);color:var(--eda-dark-accent-soft)}.dark .catalog-availability__option--active{color:var(--eda-dark-accent-soft);background:#2563eb26;border-color:#3b82f659}.dark .catalog-availability__value{color:var(--eda-dark-text-bright)}.dark .catalog-availability__option--active .catalog-availability__value{color:var(--eda-dark-accent)}.catalog-search-bar{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.catalog-search-bar__field{flex:14rem;min-width:0;position:relative}.catalog-search-bar__icon{color:#34d399a6;pointer-events:none;width:1rem;height:1rem;position:absolute;top:50%;left:.875rem;transform:translateY(-50%)}.catalog-search-bar__input{border-radius:var(--radius-xl);color:#0f281e;width:100%;transition:border-color var(--duration-fast) ease, box-shadow var(--duration-fast) ease;background:#fffffff2;border:1px solid #d1fae5e6;padding:.625rem 1rem .625rem 2.5rem;font-size:.9375rem;box-shadow:0 1px 2px #0f281e0a}.catalog-search-bar__input:focus{border-color:#34d39999;outline:none;box-shadow:0 0 0 3px #34d39926}.catalog-search-bar__input::placeholder{color:#94a3b8}.catalog-search-bar__actions{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.catalog-search-bar__sort-label{color:#64748b;font-size:.75rem;font-weight:500}.catalog-search-bar__sort{border-radius:var(--radius-lg);color:#334155;cursor:pointer;background:#fffffff2;border:1px solid #d1fae5e6;padding:.5rem 2rem .5rem .75rem;font-size:.8125rem;font-weight:500}.catalog-filters-toggle{border-radius:var(--radius-lg);color:#056446;cursor:pointer;background:#fffffff2;border:1px solid #d1fae5e6;align-items:center;gap:.375rem;padding:.5rem .75rem;font-size:.8125rem;font-weight:600;display:inline-flex}.catalog-filters-toggle__badge{color:#fff;background:#34d399;border-radius:9999px;justify-content:center;align-items:center;min-width:1.125rem;height:1.125rem;padding:0 .25rem;font-size:.625rem;font-weight:700;display:inline-flex}.dark .catalog-search-bar__input,.dark .catalog-search-bar__sort,.dark .catalog-filters-toggle{border-color:var(--eda-dark-border);background:var(--eda-dark-surface-glass);color:var(--eda-dark-text-bright)}.dark .catalog-search-bar__input:focus,.dark .catalog-search-bar__sort:focus,.dark .catalog-filters-toggle:focus{border-color:var(--eda-dark-focus);box-shadow:0 0 0 3px var(--eda-dark-focus-ring)}.dark .catalog-search-bar__sort-label{color:#94a3b8}.catalog-filters{border-top:1px solid #e2e8f0cc;flex-direction:column;gap:1rem;padding:1rem 0;display:flex}.catalog-filters--collapsed{display:none}@media (width>=768px){.catalog-filters--collapsed{display:flex}}.catalog-filter-group{flex-wrap:wrap;align-items:flex-start;gap:.5rem .75rem;display:flex}.catalog-filter-group__label{text-transform:uppercase;letter-spacing:.05em;color:#94a3b8;flex-shrink:0;width:4.5rem;padding-top:.375rem;font-size:.6875rem;font-weight:600}.catalog-filter-group__chips{flex-wrap:wrap;flex:1;gap:.375rem;min-width:0;display:flex}.catalog-chip{color:#475569;cursor:pointer;transition:background-color var(--duration-fast) ease, color var(--duration-fast) ease, box-shadow var(--duration-fast) ease;background:#f1f5f9cc;border:none;border-radius:9999px;align-items:center;gap:.375rem;padding:.3125rem .75rem;font-size:.8125rem;font-weight:500;display:inline-flex}.catalog-chip:hover:not(.catalog-chip--active){color:#056446;background:#ecfdf5}.catalog-chip--active{color:#fff;background:#34d399;box-shadow:0 1px 3px #34d3994d}.catalog-chip--active.difficulty-easy,.catalog-chip--active.difficulty-medium,.catalog-chip--active.difficulty-hard{color:#fff;background:#34d399}.catalog-chip__count{opacity:.7;font-size:.75rem;font-weight:500}.catalog-chip--subject .subject-dot{border-radius:9999px;flex-shrink:0;width:.5rem;height:.5rem}.catalog-filters__footer{padding-top:.25rem}.catalog-filters__clear{color:#057855;cursor:pointer;text-underline-offset:2px;background:0 0;border:none;padding:0;font-size:.8125rem;font-weight:600;-webkit-text-decoration:underline #34d39973;text-decoration:underline #34d39973}.catalog-filters__clear:hover{color:#046446}.dark .catalog-filters{border-top-color:var(--eda-dark-border)}.dark .catalog-chip{background:var(--eda-dark-surface-input);color:#cbd5e1}.dark .catalog-chip:hover:not(.catalog-chip--active){background:var(--eda-dark-hover-bg);color:var(--eda-dark-accent-soft)}.dark .catalog-chip--active{background:var(--eda-dark-primary);color:#fff}.dark .catalog-filters__clear{color:var(--eda-dark-accent-soft)}.catalog-results-summary{color:#64748b;font-size:.875rem}.catalog-results-summary__count{color:#334155;font-weight:700}.catalog-results-summary__hint,.dark .catalog-results-summary{color:#94a3b8}.dark .catalog-results-summary__count{color:#e2e8f0}.catalog-grid{grid-template-columns:1fr;gap:1rem;display:grid}@media (width>=640px){.catalog-grid{grid-template-columns:repeat(2,1fr)}}@media (width>=1024px){.catalog-grid{grid-template-columns:repeat(3,1fr)}}.catalog-subject-rail{z-index:10;background:linear-gradient(#f8fcfaf7 70%,#f8fcfa00);flex-wrap:wrap;align-items:flex-start;gap:.5rem;margin:0 -.25rem;padding:.625rem 0;display:flex;position:sticky;top:.5rem}.dark .catalog-subject-rail{background:linear-gradient(#0b1929f7 70%,#0000)}.catalog-subject-rail__label{text-transform:uppercase;letter-spacing:.06em;color:#94a3b8;flex-shrink:0;align-self:center;font-size:.6875rem;font-weight:600}.catalog-subject-rail__chips{flex-wrap:wrap;flex:1;gap:.375rem;min-width:0;display:flex}.chip-subject{font-size:.8125rem}.catalog-layout-toggle{background:#fffc;border:1px solid #d1fae5;border-radius:9999px;padding:.125rem;display:inline-flex}.catalog-layout-toggle__btn{color:#64748b;cursor:pointer;transition:background-color var(--duration-fast) ease, color var(--duration-fast) ease;background:0 0;border:none;border-radius:9999px;padding:.25rem .625rem;font-size:.75rem;font-weight:600}.catalog-layout-toggle__btn--active{color:#fff;background:#34d399}.catalog-list{flex-direction:column;gap:.625rem;display:flex}.catalog-list .game-card-premium{flex-direction:row;max-height:none}.catalog-list .game-card-premium>div:first-child{flex-shrink:0;align-self:stretch;width:7.5rem;height:auto;min-height:5.5rem}.catalog-list .game-card-premium>div:last-child{min-width:0;padding:.75rem 1rem}.catalog-list .kids-principle-label{margin-top:.25rem;font-size:.625rem}.catalog-list .game-card-premium p.line-clamp-2{-webkit-line-clamp:2;margin-top:.125rem;font-size:.75rem;line-height:1.35}.empty-state--kids{max-width:28rem;margin-inline:auto}.catalog-collections{scrollbar-width:thin;flex-wrap:nowrap;gap:.5rem;padding-bottom:.25rem;display:flex;overflow-x:auto}.catalog-collection-chip{color:#05503c;cursor:pointer;background:#ffffffd9;border:1px solid #a7f3d08c;border-radius:9999px;flex-shrink:0;align-items:center;gap:.375rem;padding:.375rem .75rem;font-size:.8125rem;font-weight:600;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.dark .catalog-collection-chip{border-color:var(--eda-dark-border);background:var(--eda-dark-surface-input);color:var(--eda-dark-accent-soft)}.catalog-collection-chip:hover:not(.catalog-collection-chip--active){background:#ecfdf5;border-color:#6ee7b799}.catalog-collection-chip--active{color:#fff;background:#10b981;border-color:#10b981}.catalog-collection-chip__count{opacity:.75;font-size:.6875rem;font-weight:500}@media (width<=639px){.catalog-chip,.catalog-collection-chip{min-height:var(--touch-min);padding:.5rem 1rem;font-size:.875rem}.catalog-chip:active:not(.catalog-chip--active){color:#056446;transform:scale(var(--press-scale));background:#ecfdf5}.catalog-chip--active:active{transform:scale(var(--press-scale))}.catalog-collection-chip:active:not(.catalog-collection-chip--active){transform:scale(var(--press-scale));background:#ecfdf5;border-color:#6ee7b799}.catalog-collection-chip--active:active{transform:scale(var(--press-scale))}@media (pointer:coarse){.catalog-chip:active,.catalog-collection-chip:active{animation:tap-ring-pulse .35s var(--spring-press)}}}.staff-picks-strip__head{margin-bottom:.75rem}.staff-picks-strip__title{color:#0f172a;font-size:1.125rem;font-weight:700}.dark .staff-picks-strip__title{color:#f1f5f9}.staff-picks-strip__desc{color:#64748b;margin-top:.25rem;font-size:.875rem}.staff-picks-strip__track{scrollbar-width:thin;gap:.75rem;padding-bottom:.5rem;display:flex;overflow-x:auto}.staff-picks-strip__item{flex:0 0 min(16rem,72vw)}.player-footer{border-top:1px solid var(--player-border);background:var(--player-glass);-webkit-backdrop-filter:blur(20px)saturate(1.35);backdrop-filter:blur(20px)saturate(1.35);flex-shrink:0;transition:box-shadow .2s;position:relative;box-shadow:0 -4px 20px -12px #1a0a4f14}.dark .player-footer{box-shadow:0 -8px 32px -14px #00000080}.player-footer:before{content:"";background:linear-gradient(90deg, var(--player-footer-accent,var(--player-accent,#5e3ae8)) 0%, var(--player-footer-accent,var(--player-accent,#5e3ae8)) 65%, transparent 100%);height:2px;position:absolute;top:0;left:0;right:0}@supports (color:color-mix(in lab, red, red)){.player-footer:before{background:linear-gradient(90deg, var(--player-footer-accent,var(--player-accent,#5e3ae8)) 0%, color-mix(in srgb, var(--player-footer-accent,var(--player-accent,#5e3ae8)) 30%, transparent) 65%, transparent 100%)}}.player-footer:before{pointer-events:none}.player-footer--collapsed{padding:.25rem .5rem;padding-bottom:max(.25rem, env(safe-area-inset-bottom,0))}.player-footer--expanded{padding:.625rem .75rem;padding-bottom:max(.625rem, env(safe-area-inset-bottom,0));overscroll-behavior:contain;max-height:min(36vh,17rem);overflow-y:auto}.player-footer__panel{flex-wrap:wrap;align-items:center;gap:.75rem 1rem;display:flex}.player-footer__compact{flex:1;align-items:center;gap:.5rem;min-width:0;min-height:2.5rem;display:flex}.player-footer__compact-learn{text-align:left;cursor:pointer;min-width:0;color:inherit;background:0 0;border:none;border-radius:.5rem;flex:auto;align-items:center;gap:.5rem;padding:.25rem .5rem;transition:background .15s;display:flex}.player-footer__compact-learn:hover{background:var(--player-btn-hover-bg)}.player-footer__compact-principle{color:var(--player-text-muted,#94a3b8);white-space:nowrap;text-overflow:ellipsis;font-size:.8125rem;font-weight:500;line-height:1.35;overflow:hidden}.player-footer__compact-collection--inline{flex:0 auto;min-width:0}.player-footer__compact-actions{flex-shrink:0;align-items:center;gap:.375rem;margin-left:auto;display:flex}.player-footer__compact-collection{flex-direction:column;gap:.0625rem;min-width:0;display:flex}.player-footer__compact-hint{color:var(--player-text-muted,#94a3b8);font-size:.875rem;font-weight:600}.dark .player-footer__compact-hint{color:var(--player-text-muted,#94a3b8)}.player-footer__next-teaser{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:.625rem;flex-direction:column;flex:0 auto;gap:.125rem;min-width:0;max-width:12rem;padding:.25rem .5rem;text-decoration:none;transition:background .15s,border-color .15s;display:flex}.player-footer__next-teaser:hover{border-color:var(--player-footer-accent,var(--player-accent,#5e3ae8));background:#ffffff14}@supports (color:color-mix(in lab, red, red)){.player-footer__next-teaser:hover{border-color:color-mix(in srgb, var(--player-footer-accent,var(--player-accent,#5e3ae8)) 45%, transparent)}}.dark .player-footer__next-teaser{background:#ffffff0d;border-color:#ffffff1a}.player-footer__next-teaser-label{text-transform:uppercase;letter-spacing:.04em;color:var(--player-footer-accent,var(--player-accent,#5e3ae8));font-size:.6875rem;font-weight:700}@supports (color:color-mix(in lab, red, red)){.player-footer__next-teaser-label{color:color-mix(in srgb, var(--player-footer-accent,var(--player-accent,#5e3ae8)) 80%, white)}}.dark .player-footer__next-teaser-label{color:var(--player-footer-accent,var(--player-accent,#5e3ae8))}@supports (color:color-mix(in lab, red, red)){.dark .player-footer__next-teaser-label{color:color-mix(in srgb, var(--player-footer-accent,var(--player-accent,#5e3ae8)) 80%, white)}}.player-footer__next-teaser-title{color:var(--player-text,#f1f5f9);white-space:nowrap;text-overflow:ellipsis;font-size:.8125rem;font-weight:600;line-height:1.25;overflow:hidden}.dark .player-footer__next-teaser-title{color:var(--player-text,#f1f5f9)}.player-footer__expand,.player-footer__collapse{min-width:var(--btn-min-height,2.25rem);min-height:var(--btn-min-height,2.25rem);padding:0 var(--btn-padding-compact-x,.5rem);border-radius:var(--btn-radius,.5rem);border:1px solid var(--player-btn-border);background:var(--player-btn-bg);font-family:var(--btn-font-family,var(--font-sans));font-size:var(--btn-font-size-sm,.75rem);font-weight:var(--btn-font-weight,600);letter-spacing:var(--btn-letter-spacing,.01em);color:var(--player-text-muted);cursor:pointer;transition:var(--btn-transition);justify-content:center;align-items:center;gap:.25rem;display:inline-flex}.player-footer__expand-label,.player-footer__collapse-label{font-size:var(--btn-font-size-sm,.75rem);font-weight:var(--btn-font-weight,600);letter-spacing:var(--btn-letter-spacing,.01em);display:none}.player-footer__expand:hover,.player-footer__collapse:hover{background:var(--player-btn-hover-bg);border-color:var(--player-btn-hover-border,var(--player-footer-accent,var(--player-accent,#5e3ae8)))}@supports (color:color-mix(in lab, red, red)){.player-footer__expand:hover,.player-footer__collapse:hover{border-color:var(--player-btn-hover-border,color-mix(in srgb, var(--player-footer-accent,var(--player-accent,#5e3ae8)) 45%, transparent))}}.player-footer__expand:hover,.player-footer__collapse:hover{color:var(--player-btn-hover-color,var(--player-text))}.player-footer__expand:focus-visible,.player-footer__collapse:focus-visible{outline:2px solid var(--btn-focus-outline,#3b82f6);outline-offset:2px}.player-footer__expand-icon,.player-footer__collapse-icon{width:1.125rem;height:1.125rem}.player-footer__principle{text-align:left;cursor:pointer;background:0 0;border:none;border-radius:.5rem;flex:14rem;align-items:flex-start;gap:.5rem;min-width:0;padding:.375rem .5rem;display:flex}.player-footer__principle:hover{background:var(--player-btn-hover-bg)}.player-footer__dot{background:var(--player-footer-accent,var(--player-accent,#5e3ae8));width:.5rem;height:.5rem;box-shadow:0 0 8px var(--player-footer-accent,var(--player-accent,#5e3ae8));border-radius:9999px;flex-shrink:0;margin-top:.125rem}@supports (color:color-mix(in lab, red, red)){.player-footer__dot{box-shadow:0 0 8px color-mix(in srgb, var(--player-footer-accent,var(--player-accent,#5e3ae8)) 55%, transparent)}}.player-footer__principle-text{color:var(--player-text-muted,#94a3b8);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.875rem;font-weight:500;line-height:1.45;display:-webkit-box;overflow:hidden}.dark .player-footer__principle-text{color:var(--player-text-muted,#94a3b8)}.player-footer__nav{flex-direction:column;flex:16rem;gap:.375rem;min-width:0;display:flex}.player-footer__collection{flex-wrap:wrap;align-items:baseline;gap:.25rem .5rem;display:flex}.player-footer__collection-name{text-transform:uppercase;letter-spacing:.04em;color:var(--player-footer-accent,var(--player-accent,#5e3ae8));font-size:.75rem;font-weight:700}@supports (color:color-mix(in lab, red, red)){.player-footer__collection-name{color:color-mix(in srgb, var(--player-footer-accent,var(--player-accent,#5e3ae8)) 80%, white)}}.dark .player-footer__collection-name{color:var(--player-footer-accent,var(--player-accent,#5e3ae8))}@supports (color:color-mix(in lab, red, red)){.dark .player-footer__collection-name{color:color-mix(in srgb, var(--player-footer-accent,var(--player-accent,#5e3ae8)) 80%, white)}}.player-footer__collection-pos{color:var(--player-text-muted,#64748b);font-size:.8125rem;font-weight:600}.player-footer__journey{align-items:stretch;gap:.375rem;display:flex}.player-footer__next-card{border:1px solid var(--player-footer-accent,var(--player-accent,#5e3ae8));background:#ffffff0d;border-radius:.625rem;flex-direction:column;flex:auto;justify-content:center;gap:.125rem;min-width:0;padding:.5rem .75rem;text-decoration:none;display:flex}@supports (color:color-mix(in lab, red, red)){.player-footer__next-card{border:1px solid color-mix(in srgb, var(--player-footer-accent,var(--player-accent,#5e3ae8)) 40%, transparent)}}.player-footer__next-card{box-shadow:none;transition:background .15s,border-color .15s,transform .15s}.player-footer__next-card:hover{border-color:var(--player-footer-accent,var(--player-accent,#5e3ae8));background:#ffffff14}@supports (color:color-mix(in lab, red, red)){.player-footer__next-card:hover{border-color:color-mix(in srgb, var(--player-footer-accent,var(--player-accent,#5e3ae8)) 55%, transparent)}}.player-footer__next-card:hover{transform:translateY(-1px)}.player-footer__next-card--empty{color:var(--player-text-muted,#64748b);box-shadow:none;background:#ffffff08;border-style:dashed;border-color:#ffffff1a;font-size:.875rem;font-weight:600}.dark .player-footer__next-card{border-color:var(--player-footer-accent,var(--player-accent,#5e3ae8));background:#ffffff0d}@supports (color:color-mix(in lab, red, red)){.dark .player-footer__next-card{border-color:color-mix(in srgb, var(--player-footer-accent,var(--player-accent,#5e3ae8)) 40%, transparent)}}.player-footer__next-card-label{text-transform:uppercase;letter-spacing:.04em;color:var(--player-footer-accent,var(--player-accent,#5e3ae8));font-size:.6875rem;font-weight:700}@supports (color:color-mix(in lab, red, red)){.player-footer__next-card-label{color:color-mix(in srgb, var(--player-footer-accent,var(--player-accent,#5e3ae8)) 75%, white)}}.dark .player-footer__next-card-label{color:var(--player-footer-accent,var(--player-accent,#5e3ae8))}@supports (color:color-mix(in lab, red, red)){.dark .player-footer__next-card-label{color:color-mix(in srgb, var(--player-footer-accent,var(--player-accent,#5e3ae8)) 75%, white)}}.player-footer__next-card-title{color:var(--player-text,#f1f5f9);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.9375rem;font-weight:600;line-height:1.25;display:-webkit-box;overflow:hidden}.dark .player-footer__next-card-title{color:var(--player-text,#f1f5f9)}.player-footer__arrows{gap:.125rem;display:flex}.player-footer__arrow{width:var(--btn-min-height,2.25rem);height:var(--btn-min-height,2.25rem);border-radius:var(--btn-radius,.5rem);border:1px solid var(--player-btn-border);background:var(--player-btn-bg);font-family:var(--btn-font-family,var(--font-sans));color:var(--player-text-muted);transition:var(--btn-transition);flex-shrink:0;justify-content:center;align-self:center;align-items:center;text-decoration:none;display:inline-flex}.player-footer__arrow--primary{background:var(--player-footer-accent,var(--player-accent,#5e3ae8));width:2.5rem;height:2.5rem}@supports (color:color-mix(in lab, red, red)){.player-footer__arrow--primary{background:color-mix(in srgb, var(--player-footer-accent,var(--player-accent,#5e3ae8)) 18%, transparent)}}.player-footer__arrow--primary{border-color:var(--player-footer-accent,var(--player-accent,#5e3ae8))}@supports (color:color-mix(in lab, red, red)){.player-footer__arrow--primary{border-color:color-mix(in srgb, var(--player-footer-accent,var(--player-accent,#5e3ae8)) 45%, transparent)}}.player-footer__arrow--primary{color:var(--player-footer-accent,var(--player-accent,#5e3ae8))}@supports (color:color-mix(in lab, red, red)){.player-footer__arrow--primary{color:color-mix(in srgb, var(--player-footer-accent,var(--player-accent,#5e3ae8)) 85%, white)}}.player-footer__arrow:hover{background:var(--player-btn-hover-bg);border-color:var(--player-btn-hover-border,var(--player-footer-accent,var(--player-accent,#5e3ae8)))}@supports (color:color-mix(in lab, red, red)){.player-footer__arrow:hover{border-color:var(--player-btn-hover-border,color-mix(in srgb, var(--player-footer-accent,var(--player-accent,#5e3ae8)) 45%, transparent))}}.player-footer__arrow:hover{color:var(--player-btn-hover-color,var(--player-text))}.player-footer__arrow:focus-visible{outline:2px solid var(--btn-focus-outline,#3b82f6);outline-offset:2px}.player-footer__arrow--disabled{opacity:.35;pointer-events:none}.player-footer__arrow-icon{width:1.125rem;height:1.125rem}.player-footer__right{flex:100%;justify-content:space-between;align-items:flex-end;gap:.75rem;display:flex}@media (width>=768px){.player-footer__right{flex:none;align-items:center;margin-left:auto}}.player-footer__related{flex-wrap:wrap;align-items:flex-start;gap:.5rem;display:flex}.player-footer__related-card{flex-direction:column;align-items:center;gap:.25rem;width:4.5rem;text-decoration:none;transition:transform .15s;display:flex}.player-footer__related-card:hover{transform:translateY(-2px)}.player-footer__related-link,.player-footer__related-card>.player-footer__related-img,.player-footer__related-card>.player-footer__related-fallback{border:1px solid #ffffff1f;border-radius:.5rem;width:3.25rem;height:3.25rem;transition:box-shadow .15s,border-color .15s;display:block;overflow:hidden;box-shadow:0 4px 12px -6px #00000073}.player-footer__related-card:hover .player-footer__related-img,.player-footer__related-card:hover .player-footer__related-fallback{border-color:var(--player-footer-accent,var(--player-accent,#5e3ae8));box-shadow:0 6px 16px -6px #0000008c}@supports (color:color-mix(in lab, red, red)){.player-footer__related-card:hover .player-footer__related-img,.player-footer__related-card:hover .player-footer__related-fallback{border-color:color-mix(in srgb, var(--player-footer-accent,var(--player-accent,#5e3ae8)) 40%, transparent)}}.player-footer__related-img{object-fit:cover;border:1px solid #ffffff1f;border-radius:.5rem;width:3.25rem;height:3.25rem}.player-footer__related-fallback{background:#ffffff0f;justify-content:center;align-items:center;display:flex}.player-footer__related-title{text-align:center;color:var(--player-text-muted,#94a3b8);-webkit-line-clamp:2;-webkit-box-orient:vertical;width:100%;font-size:.6875rem;font-weight:600;line-height:1.2;display:-webkit-box;overflow:hidden}.dark .player-footer__related-title{color:var(--player-text-muted,#94a3b8)}.player-footer__actions{flex-shrink:0;align-items:center;gap:.375rem;display:flex}.player-footer__info{min-height:var(--btn-min-height,2.25rem);padding:var(--btn-padding-compact-y,.3125rem) var(--btn-padding-x,.75rem);border-radius:var(--btn-radius,.5rem);border:1px solid var(--player-btn-border);background:var(--player-btn-bg);font-family:var(--btn-font-family,var(--font-sans));font-size:var(--btn-font-size-sm,.75rem);font-weight:var(--btn-font-weight,600);letter-spacing:var(--btn-letter-spacing,.01em);color:var(--player-text-muted);cursor:pointer;transition:var(--btn-transition);align-items:center;gap:.375rem;display:inline-flex}.player-footer__info--active,.player-footer__info:hover{background:var(--player-footer-accent,var(--player-accent,#5e3ae8))}@supports (color:color-mix(in lab, red, red)){.player-footer__info--active,.player-footer__info:hover{background:color-mix(in srgb, var(--player-footer-accent,var(--player-accent,#5e3ae8)) 18%, transparent)}}.player-footer__info--active,.player-footer__info:hover{border-color:var(--player-footer-accent,var(--player-accent,#5e3ae8))}@supports (color:color-mix(in lab, red, red)){.player-footer__info--active,.player-footer__info:hover{border-color:color-mix(in srgb, var(--player-footer-accent,var(--player-accent,#5e3ae8)) 45%, transparent)}}.player-footer__info--active,.player-footer__info:hover{color:var(--player-text,#f1f5f9)}.player-footer__info:focus-visible{outline:2px solid var(--btn-focus-outline,#3b82f6);outline-offset:2px}.player-footer__info-icon{width:1.125rem;height:1.125rem}@media (width<=640px){.player-footer--collapsed{padding:.25rem .5rem;padding-bottom:max(.25rem, env(safe-area-inset-bottom,0))}.player-footer__compact{gap:.375rem;min-height:2.25rem}.player-footer__compact-principle{font-size:.75rem}.player-footer__next-teaser{display:none}.player-footer__expand,.player-footer__collapse{min-width:2.25rem;min-height:2.25rem;padding:0 .5rem}.player-footer__expand-label{display:none}.player-footer__info{justify-content:center;min-width:2.25rem;min-height:2.25rem}.player-footer__arrow{min-width:var(--touch-min,2.75rem);min-height:var(--touch-min,2.75rem);width:auto;height:auto}.player-footer--expanded{padding:.5rem .625rem;padding-bottom:max(.5rem, env(safe-area-inset-bottom,0))}.player-footer__panel{flex-direction:column;align-items:stretch}.player-footer__principle,.player-footer__nav{flex:auto}.player-footer__next-card-title{font-size:1rem}.player-footer__right{flex-direction:column;align-items:stretch}.player-footer__related{justify-content:flex-start}.player-footer__actions{justify-content:flex-end}.player-footer__info-label{display:none}.player-footer--collapsed .player-footer__info{padding:.5rem}}.player-learn-host{flex-shrink:0;min-height:0}.player-learn-tab{display:none}@media (width<=640px){.player-learn-host{z-index:12;pointer-events:none;order:unset;width:0;position:absolute;inset:0 auto 0 0}.player-learn-tab{pointer-events:auto;z-index:12;border:1px solid var(--player-border);border-radius:0 var(--radius-md,.75rem) var(--radius-md,.75rem) 0;background:var(--player-glass);-webkit-backdrop-filter:blur(16px)saturate(1.3);backdrop-filter:blur(16px)saturate(1.3);color:var(--player-text);cursor:pointer;border-left:none;flex-direction:column;align-items:center;gap:.2rem;padding:.5rem .3rem;transition:background .2s,transform .2s;display:flex;position:absolute;top:50%;left:0;transform:translateY(-50%);box-shadow:4px 0 20px -8px #00000059}.player-learn-tab:hover{background:var(--player-learn-accent,#5e3ae8)}@supports (color:color-mix(in lab, red, red)){.player-learn-tab:hover{background:color-mix(in srgb, var(--player-learn-accent,#5e3ae8) 12%, var(--player-glass))}}.player-learn-tab:hover{transform:translateY(-50%)translate(2px)}.player-learn-tab__icon{width:1rem;height:1rem;color:var(--player-learn-accent,var(--c-indigo-500,#5e3ae8));flex-shrink:0}.player-learn-tab__label{writing-mode:vertical-rl;text-orientation:mixed;font-family:var(--font-display,"Nunito", system-ui, sans-serif);letter-spacing:.06em;text-transform:uppercase;color:var(--player-learn-accent,var(--c-indigo-500,#5e3ae8));text-overflow:ellipsis;max-height:5rem;font-size:.625rem;font-weight:700;overflow:hidden}.player-learn-mobile-strip{display:none!important}.player-learn-reopen{bottom:3.5rem}}.player-body>.player-main{order:1}.player-learn-sidebar,.player-learn-mobile-strip,.player-learn-mobile-backdrop,.player-learn-mobile-overlay{display:none}.player-learn-reopen{z-index:20;border:1px solid var(--player-border);border-radius:0 var(--radius-md,.75rem) var(--radius-md,.75rem) 0;background:var(--color-surface,var(--c-white,#fff));color:var(--player-text);cursor:pointer;border-left:none;flex-direction:column;align-items:center;gap:.25rem;padding:.625rem .375rem;transition:background .2s,transform .2s;display:flex;position:absolute;top:50%;left:0;transform:translateY(-50%);box-shadow:4px 0 20px -8px #1a0a4f1a}.dark .player-learn-reopen{background:var(--player-glass);-webkit-backdrop-filter:blur(16px)saturate(1.3);backdrop-filter:blur(16px)saturate(1.3);box-shadow:4px 0 20px -8px #00000080}.player-learn-reopen:hover{background:var(--c-gray-50,#f8f7ff);transform:translateY(-50%)translate(2px)}.dark .player-learn-reopen:hover{background:#ffffff14}.player-learn-reopen__icon{width:1.125rem;height:1.125rem;color:var(--player-learn-accent,var(--c-indigo-500,#5e3ae8));flex-shrink:0}.player-learn-reopen__label{writing-mode:vertical-rl;text-orientation:mixed;font-family:var(--font-display,"Nunito", system-ui, sans-serif);letter-spacing:.06em;text-transform:uppercase;color:var(--player-learn-accent,var(--c-indigo-500,#5e3ae8));font-size:.6875rem;font-weight:700}@media (width>=641px){.player-learn-host{align-self:stretch;min-height:0;display:flex}.player-learn-sidebar{border-right:1px solid var(--player-border);background:var(--color-surface,var(--c-white,#fff));flex-direction:column;flex-shrink:0;width:clamp(220px,24vw,300px);min-height:0;display:flex;box-shadow:4px 0 24px -16px #1a0a4f0f}.dark .player-learn-sidebar{background:var(--player-sidebar,var(--player-glass));-webkit-backdrop-filter:blur(20px)saturate(1.35);backdrop-filter:blur(20px)saturate(1.35);box-shadow:4px 0 32px -12px #00000073,inset -1px 0 #ffffff0a}.player-learn-sidebar:before{content:"";background:linear-gradient(90deg, var(--player-learn-accent,var(--player-accent,#5e3ae8)) 0%, var(--player-learn-accent,var(--player-accent,#5e3ae8)) 100%);flex-shrink:0;height:3px;display:block}@supports (color:color-mix(in lab, red, red)){.player-learn-sidebar:before{background:linear-gradient(90deg, var(--player-learn-accent,var(--player-accent,#5e3ae8)) 0%, color-mix(in srgb, var(--player-learn-accent,var(--player-accent,#5e3ae8)) 30%, transparent) 100%)}}.player-learn-sidebar__head{flex-shrink:0;justify-content:space-between;align-items:flex-start;gap:.5rem;padding:.875rem 1rem .625rem;display:flex}.player-learn-sidebar__titles{flex-direction:column;gap:.125rem;min-width:0;display:flex}.player-learn-sidebar__title{font-family:var(--font-display,"Nunito", system-ui, sans-serif);letter-spacing:-.01em;color:var(--player-learn-accent,var(--c-indigo-500,#5e3ae8));margin:0;font-size:1rem;font-weight:800;line-height:1.25}.player-learn-sidebar__ages{align-self:flex-start;margin-top:.125rem}.player-learn-sidebar__hide{width:var(--btn-min-height,2.25rem);height:var(--btn-min-height,2.25rem);border-radius:var(--btn-radius-sm,.375rem);border:1px solid var(--player-btn-border);background:var(--player-btn-bg);color:var(--player-text-muted);cursor:pointer;transition:var(--btn-transition);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.dark .player-learn-sidebar__hide{background:var(--player-btn-bg);border-color:var(--player-btn-border)}.player-learn-sidebar__hide:hover,.dark .player-learn-sidebar__hide:hover{background:var(--player-btn-hover-bg);border-color:var(--player-btn-hover-border);color:var(--player-btn-hover-color,var(--player-text))}.player-learn-sidebar__hide:focus-visible{outline:2px solid var(--btn-focus-outline,#3b82f6);outline-offset:2px}.player-learn-sidebar__body{overscroll-behavior:contain;scrollbar-width:thin;flex:1;min-height:0;padding:0 1rem 1rem;overflow-y:auto}.player-learn-sidebar .player-explanation{gap:.875rem}.player-learn-sidebar .player-explanation__heading{font-size:1rem}.player-learn-sidebar .player-explanation__paragraph,.player-learn-sidebar .player-explanation__bullets{font-size:.9375rem;line-height:1.65}.player-learn-sidebar .player-explanation__section{padding:.75rem .875rem}.player-learn-reopen{top:4.5rem;left:0;transform:none}.player-learn-reopen:hover{transform:translate(2px)}}@media (width>=1025px){.player-learn-sidebar{width:clamp(260px,26vw,340px)}}@media (width<=640px),(height<=500px) and (orientation:landscape){.player-learn-mobile-strip{display:none!important}.player-learn-mobile-backdrop{z-index:45;cursor:pointer;background:#00000073;border:none;display:block;position:fixed;inset:0}.player-learn-mobile-overlay{z-index:46;background:var(--color-surface,var(--c-white,#fff));border-right:1px solid var(--player-border);flex-direction:column;width:min(88vw,22rem);max-width:360px;animation:.28s cubic-bezier(.16,1,.3,1) player-learn-slide-in;display:flex;position:fixed;top:0;bottom:0;left:0;box-shadow:8px 0 32px -8px #1a0a4f1f}.dark .player-learn-mobile-overlay{background:var(--player-sidebar,var(--player-glass));-webkit-backdrop-filter:blur(24px)saturate(1.4);backdrop-filter:blur(24px)saturate(1.4);box-shadow:8px 0 32px -8px #0009}@keyframes player-learn-slide-in{0%{transform:translate(-100%)}to{transform:translate(0)}}.player-learn-mobile-overlay:before{content:"";background:linear-gradient(90deg, var(--player-learn-accent,var(--player-accent,#5e3ae8)) 0%, var(--player-learn-accent,var(--player-accent,#5e3ae8)) 100%);flex-shrink:0;height:3px;display:block}@supports (color:color-mix(in lab, red, red)){.player-learn-mobile-overlay:before{background:linear-gradient(90deg, var(--player-learn-accent,var(--player-accent,#5e3ae8)) 0%, color-mix(in srgb, var(--player-learn-accent,var(--player-accent,#5e3ae8)) 30%, transparent) 100%)}}.player-learn-mobile-overlay__head{padding:.875rem 1rem .625rem;padding-top:max(.875rem, env(safe-area-inset-top,0));flex-shrink:0;justify-content:space-between;align-items:flex-start;gap:.5rem;display:flex}.player-learn-mobile-overlay__close{width:2.5rem;height:2.5rem;color:var(--player-text-muted,#94a3b8);cursor:pointer;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:.625rem;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.player-learn-mobile-overlay__body{overscroll-behavior:contain;min-height:0;padding:0 1rem 1rem;padding-bottom:max(1rem, env(safe-area-inset-bottom,0));flex:1;overflow-y:auto}.player-learn-mobile-overlay .player-explanation__paragraph,.player-learn-mobile-overlay .player-explanation__bullets{font-size:.9375rem;line-height:1.65}.player-learn-reopen{z-index:15;position:fixed;top:auto;bottom:3.25rem;left:0;transform:none}}@media (height<=500px) and (orientation:landscape){.player-shell--landscape .player-chrome,.player-chrome{scrollbar-width:none;flex-wrap:nowrap;gap:.25rem;min-height:2.125rem;padding:.1875rem .5rem;overflow-x:auto}.player-chrome::-webkit-scrollbar{display:none}.player-chrome__left{flex:auto;min-width:0}.player-chrome__right{flex:none}.player-chrome__subject,.player-chrome__back-label,.player-chrome__btn-label,.player-chrome__sep:not(.player-chrome__sep--group){display:none}.player-chrome__title{max-width:min(28vw,8rem);font-size:.75rem}.player-chrome__btn{min-width:2rem;min-height:2rem;padding:.3125rem}.player-chrome__group{flex-shrink:0}.player-learn-mobile-strip{display:none!important}.player-learn-host{z-index:12;pointer-events:none;width:0;position:absolute;inset:0 auto 0 0}.player-learn-tab{pointer-events:auto;border-radius:0 var(--radius-md,.75rem) var(--radius-md,.75rem) 0;flex-direction:row;padding:.3125rem .5rem;display:flex;position:absolute;top:auto;bottom:.5rem;left:0;transform:none}.player-learn-sidebar{display:none!important}.player-learn-tab__label{writing-mode:horizontal-tb;text-orientation:mixed;max-height:none;font-size:.625rem}.player-learn-tab__icon{width:.875rem;height:.875rem}.player-footer--collapsed{padding:.125rem .375rem;padding-bottom:max(.125rem, env(safe-area-inset-bottom,0))}.player-footer__compact{min-height:1.75rem}.player-footer__compact-principle,.player-footer__next-teaser,.player-footer__expand-label{display:none}.player-footer__expand,.player-footer__info{min-width:1.75rem;min-height:1.75rem}.player-stage .javalab-player .flexContainer,.player-stage .javalab-player .jv-toolbar{min-height:2.5rem}.player-stage{padding:0}.player-learn-mobile-overlay{width:min(72vw,18rem);max-height:100dvh}.player-learn-reopen{padding:.375rem .25rem;bottom:2.25rem}}@media (width>=641px) and (width<=1024px){.player-chrome{min-height:2.75rem;padding:.3125rem .625rem}.player-chrome__title{max-width:min(34vw,18rem);font-size:.8125rem}.player-stage{--player-stage-max:100%;padding:.5rem .625rem .625rem}.player-footer--collapsed{padding:.3125rem .625rem}.player-footer__compact{min-height:2.375rem}}.player-explanation{flex-direction:column;gap:.75rem;display:flex}.player-explanation--compact{gap:.625rem;margin-bottom:1rem}.player-explanation__locale-note{color:var(--player-text-muted,#94a3b8);margin:0 0 .25rem;font-size:.75rem;font-style:italic}.player-explanation__section{border-radius:var(--radius-md,14px);border:1px solid var(--player-border);border-left:3px solid var(--player-explanation-accent,var(--c-indigo-500,#5e3ae8));padding:.75rem .875rem}@supports (color:color-mix(in lab, red, red)){.player-explanation__section{border-left:3px solid color-mix(in srgb, var(--player-explanation-accent,var(--c-indigo-500,#5e3ae8)) 70%, transparent)}}.player-explanation__section{background:var(--color-surface,var(--c-white,#fff));box-shadow:0 2px 10px -4px #1a0a4f0f}.dark .player-explanation__section{border-color:var(--player-border);background:#ffffff09;box-shadow:inset 0 1px #ffffff0a}.player-explanation__section--safety{border-left-color:var(--c-amber-500,#f5a623);background:var(--c-amber-100,#fff8e0)}.dark .player-explanation__section--safety{background:#78350f59;border-color:#fbbf2433}.player-explanation__heading{font-family:var(--font-display,"Nunito", system-ui, sans-serif);color:var(--player-text);align-items:center;gap:.5rem;margin:0 0 .5rem;font-size:.9375rem;font-weight:800;display:flex}.player-explanation__heading:before{content:"";background:var(--player-explanation-accent,var(--c-indigo-500,#5e3ae8));border-radius:50%;flex-shrink:0;width:.5rem;height:.5rem}.player-explanation__section[data-kind=analogy] .player-explanation__heading:before{background:var(--c-teal-500,#00c4a7)}.player-explanation__section[data-kind=safety] .player-explanation__heading:before,.player-explanation__section--safety .player-explanation__heading:before{background:var(--c-amber-500,#f5a623)}.player-explanation__section[data-kind=fun-fact] .player-explanation__heading:before{background:var(--c-coral-500,#ff5c6c)}.player-explanation__paragraph{color:var(--player-text-muted);margin:0 0 .5rem;font-size:.9375rem;line-height:1.65}.player-explanation__paragraph:last-child{margin-bottom:0}.player-explanation__bullets{color:var(--player-text-muted);margin:.25rem 0 0;padding-left:1.125rem;font-size:.9375rem;line-height:1.6}.player-explanation__bullets li+li{margin-top:.25rem}@media (prefers-reduced-motion:reduce){.player-learn-mobile-overlay{animation:none}}@media (width<=639px){.player-drawer{border-radius:var(--radius-2xl) var(--radius-2xl) 0 0;width:100%;max-width:100%;max-height:min(88dvh,40rem);padding-bottom:env(safe-area-inset-bottom,0);border-top:1px solid #a7f3d08c;border-left:none;inset:auto 0 0;transform:translateY(100%);box-shadow:0 -12px 40px -12px #0f281e33}.dark .player-drawer{border-top-color:#34d39933;box-shadow:0 -12px 40px -12px #00000080}.player-drawer__handle{background:#a7f3d0d9;border-radius:9999px;flex-shrink:0;width:2.5rem;height:.25rem;margin:.625rem auto 0;display:block}.dark .player-drawer__handle{background:#34d39973}.player-drawer__header{padding-top:.5rem}.player-drawer__close{min-width:var(--touch-min,2.75rem);min-height:var(--touch-min,2.75rem)}.player-drawer__heading{background:var(--player-drawer-accent,var(--c-indigo-500,#5e3ae8));border-radius:9999px;align-self:flex-start;padding:.375rem .75rem;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.player-drawer__heading{background:color-mix(in srgb, var(--player-drawer-accent,var(--c-indigo-500,#5e3ae8)) 12%, white)}}.player-drawer__heading{border:1px solid var(--player-drawer-accent,var(--c-indigo-500,#5e3ae8))}@supports (color:color-mix(in lab, red, red)){.player-drawer__heading{border:1px solid color-mix(in srgb, var(--player-drawer-accent,var(--c-indigo-500,#5e3ae8)) 22%, transparent)}}.dark .player-drawer__heading{background:var(--player-drawer-accent,var(--c-indigo-500,#5e3ae8))}@supports (color:color-mix(in lab, red, red)){.dark .player-drawer__heading{background:color-mix(in srgb, var(--player-drawer-accent,var(--c-indigo-500,#5e3ae8)) 18%, var(--player-surface-raised,#0f2a48))}}.dark .player-drawer__heading{border-color:var(--player-drawer-accent,var(--c-indigo-500,#5e3ae8))}@supports (color:color-mix(in lab, red, red)){.dark .player-drawer__heading{border-color:color-mix(in srgb, var(--player-drawer-accent,var(--c-indigo-500,#5e3ae8)) 28%, transparent)}}}@media (width>=641px){.player-footer__next-card-title{font-size:1.125rem}.player-footer__related-card{width:5rem}.player-footer__related-img,.player-footer__related-fallback{width:3.75rem;height:3.75rem}.player-footer__related-title{font-size:.75rem}}.player-drawer__hint-icon{color:#057855;background:#ecfdf5;border:1px solid #a7f3d08c;border-radius:.5rem;flex-shrink:0;justify-content:center;align-items:center;width:1.75rem;height:1.75rem;margin-top:0;display:inline-flex}.info-hint-chip__icon{vertical-align:-.125rem;width:.875rem;height:.875rem;margin-right:.125rem;display:inline-block}@media (prefers-reduced-motion:reduce){.sim-touch-hint{animation:none}.player-chrome,.player-drawer,.player-drawer-backdrop,.player-related-card,.player-footer{transition:none;animation:none}.player-chrome__tooltip{animation:none}.player-chrome--hidden{opacity:1;pointer-events:auto;transform:none}.player-related-card:hover{transform:none}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}:root{--c-blue-900:#1a3d5c;--c-blue-700:#4a7ab5;--c-blue-500:#6ba3d6;--c-blue-300:#a8cce8;--c-blue-100:#e3f0fa;--c-mint-500:#5fad8c;--c-mint-300:#9fd4b8;--c-mint-100:#e5f7ee;--c-sage-500:#7a9e82;--c-sage-200:#c5dcc9;--c-sage-100:#edf5ef;--c-indigo-900:var(--c-blue-900);--c-indigo-700:var(--c-blue-700);--c-indigo-500:var(--c-blue-500);--c-indigo-300:var(--c-blue-300);--c-indigo-100:var(--c-blue-100);--c-teal-500:var(--c-mint-500);--c-teal-200:var(--c-mint-300);--c-teal-100:var(--c-mint-100);--c-amber-500:#d4a84b;--c-amber-200:#f5e0a8;--c-amber-100:#faf4e3;--c-green-500:var(--c-sage-500);--c-green-200:var(--c-sage-200);--c-green-100:var(--c-sage-100);--c-coral-500:#e88a7a;--c-coral-200:#f5cfc8;--c-coral-100:#fdf0ee;--c-white:#fff;--c-gray-50:#f6faf8;--c-gray-100:#e8f2ec;--c-gray-200:#cdded4;--c-gray-500:#6b7f75;--c-gray-800:#2a3d34;--c-gray-900:#1a2b24;--color-bg:var(--c-gray-50);--color-surface:var(--c-white);--color-text:var(--c-gray-900);--color-muted:var(--c-gray-500);--color-border:var(--c-gray-200);--color-primary:var(--c-blue-500);--color-primary-dark:var(--c-blue-700);--font-display:"Nunito", system-ui, sans-serif;--font-body:"Space Grotesk", system-ui, sans-serif;--radius-sm:8px;--radius-md:14px;--radius-lg:20px;--radius-xl:28px;--radius-pill:999px;--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--ease-smooth:cubic-bezier(.4, 0, .2, 1);--duration-fast:.12s;--duration-base:.22s;--duration-slow:.4s;--museum-btn-font:var(--btn-font-family,var(--font-body));--museum-btn-radius:var(--btn-radius,.5rem);--museum-btn-radius-sm:var(--btn-radius-sm,.375rem);--museum-btn-radius-tab:var(--btn-radius-tab,.4375rem)}.bg-app{background:linear-gradient(165deg, var(--c-blue-100) 0%, var(--c-mint-100) 42%, #faf8f2 100%)}.museum-layout main{max-width:1200px;padding-top:0;padding-bottom:0}.museum-header{z-index:100;border-bottom:1px solid var(--c-gray-100);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transition:box-shadow var(--duration-base) var(--ease-smooth);background:#ffffffe6;position:sticky;top:0}.museum-header--scrolled{box-shadow:0 4px 24px #1a3d5c14}.museum-header__inner{justify-content:space-between;align-items:center;gap:1rem;max-width:1200px;margin:0 auto;padding:.625rem 1.25rem;display:flex}.museum-header__brand{color:var(--c-gray-900);align-items:center;min-width:0;text-decoration:none;display:flex}.museum-header__brand .brand-logo--compact{min-width:0}.museum-header__nav{align-items:center;gap:.25rem;display:none}@media (width>=900px){.museum-header__nav{display:flex}}.museum-nav-pill{border-radius:var(--museum-btn-radius-tab);color:var(--c-gray-800);font-family:var(--museum-btn-font);font-size:var(--btn-font-size,.8125rem);font-weight:var(--btn-font-weight-nav,500);letter-spacing:var(--btn-letter-spacing,.01em);cursor:pointer;transition:var(--btn-transition);background:0 0;border:none;align-items:center;gap:.375rem;padding:.4375rem .875rem;text-decoration:none;display:inline-flex}.museum-nav-pill:hover{background:var(--btn-hover-bg,var(--c-blue-100));color:var(--btn-hover-color,var(--c-blue-700))}.museum-nav-pill:focus-visible{outline:2px solid var(--btn-focus-outline,#6ba3d6);outline-offset:2px}.museum-nav-pill--active{background:var(--c-blue-500);color:#fff}.museum-header__actions{align-items:center;gap:.5rem;display:flex}.museum-btn-random{min-height:var(--btn-min-height,2.25rem);padding:var(--btn-padding-y,.375rem) var(--btn-padding-x,.75rem);border:1px solid var(--btn-primary-border,var(--c-mint-500));border-radius:var(--museum-btn-radius-sm);background:var(--btn-primary-bg,var(--c-mint-500));color:var(--btn-primary-color,white);font-family:var(--museum-btn-font);font-size:var(--btn-font-size-sm,.75rem);font-weight:var(--btn-font-weight,600);letter-spacing:var(--btn-letter-spacing,.01em);cursor:pointer;transition:var(--btn-transition);align-items:center;gap:.375rem;display:inline-flex}.museum-btn-random:hover{background:var(--btn-primary-hover-bg,#4a9474);border-color:var(--btn-primary-hover-bg,#4a9474)}.museum-btn-random:focus-visible{outline:2px solid var(--btn-focus-outline,#3b82f6);outline-offset:2px}.museum-btn-icon{width:var(--btn-min-height,2.25rem);height:var(--btn-min-height,2.25rem);border:1px solid var(--btn-border,var(--c-gray-200));border-radius:var(--museum-btn-radius-sm);background:var(--btn-bg,white);color:var(--btn-color,var(--c-gray-800));font-family:var(--museum-btn-font);cursor:pointer;transition:var(--btn-transition);justify-content:center;align-items:center;display:inline-flex}.museum-btn-icon:hover{background:var(--btn-hover-bg,var(--c-gray-50));border-color:var(--btn-hover-border,var(--c-gray-300))}.museum-btn-icon:focus-visible{outline:2px solid var(--btn-focus-outline,#3b82f6);outline-offset:2px}.museum-header__menu-btn{display:inline-flex}@media (width>=900px){.museum-header__menu-btn{display:none}}.museum-mobile-drawer{border-top:1px solid var(--c-gray-100);flex-direction:column;gap:.375rem;padding:.75rem 1.25rem 1rem;display:flex}@media (width>=900px){.museum-mobile-drawer{display:none}}.museum-hero{background:linear-gradient(135deg,#ffffffc7 0%,#e3f0fa9e 42%,#e5f7ee7a 100%),url(../../../brand/hero-background.png) 50%/cover no-repeat;align-items:center;min-height:calc(100dvh - 4rem);padding:2rem 1.25rem 3rem;display:grid;position:relative;overflow:hidden}.museum-hero:before{content:"";z-index:0;pointer-events:none;background:linear-gradient(95deg,#ffffffe0 0%,#ffffffb8 42%,#ffffff47 72%,#0000 100%);position:absolute;inset:0}@media (width>=900px){.museum-hero{grid-template-columns:1fr;gap:2rem;max-width:1200px;margin:0 auto;padding:3rem 1.25rem 4rem}}.museum-hero__particles{z-index:0;pointer-events:none;opacity:.35;position:absolute;inset:0}@media (width<=899px){.museum-hero__particles{opacity:.25}}.museum-hero__content{z-index:1;max-width:36rem;position:relative}.museum-hero__eyebrow{font-family:var(--font-body);letter-spacing:.08em;text-transform:uppercase;color:var(--c-mint-500);margin:0 0 1rem;font-size:.8125rem;font-weight:600}.museum-hero__title{font-family:var(--font-display);color:var(--c-gray-900);text-shadow:0 1px 2px #ffffffa6;margin:0 0 1.25rem;font-size:clamp(2.25rem,6vw,3.25rem);font-weight:900;line-height:1.1}.museum-hero__body{font-family:var(--font-body);color:var(--c-gray-500);max-width:30rem;margin:0 0 1.75rem;font-size:1.0625rem;line-height:1.6}.museum-hero__ctas{flex-wrap:wrap;gap:.75rem;margin-bottom:1.75rem;display:flex}.museum-btn-primary{min-height:var(--btn-min-height,2.25rem);padding:var(--btn-padding-y,.375rem) 1rem;border:1px solid var(--btn-primary-border,var(--c-blue-500));border-radius:var(--museum-btn-radius);background:var(--btn-primary-bg,var(--c-blue-500));color:var(--btn-primary-color,white);font-family:var(--museum-btn-font);font-weight:var(--btn-font-weight,600);font-size:var(--btn-font-size,.8125rem);letter-spacing:var(--btn-letter-spacing,.01em);line-height:var(--btn-line-height,1.25);cursor:pointer;transition:var(--btn-transition);align-items:center;gap:.5rem;text-decoration:none;display:inline-flex}.museum-btn-primary:hover{background:var(--btn-primary-hover-bg,var(--c-blue-700));border-color:var(--btn-primary-hover-bg,var(--c-blue-700))}.museum-btn-primary:focus-visible{outline:2px solid var(--btn-focus-outline,#3b82f6);outline-offset:2px;box-shadow:var(--btn-focus-ring)}.museum-btn-secondary{min-height:var(--btn-min-height,2.25rem);padding:var(--btn-padding-y,.375rem) 1rem;border:1px solid var(--btn-border,var(--c-gray-200));border-radius:var(--museum-btn-radius);background:var(--btn-bg,transparent);color:var(--btn-color,var(--c-gray-800));font-family:var(--museum-btn-font);font-weight:var(--btn-font-weight,600);font-size:var(--btn-font-size,.8125rem);letter-spacing:var(--btn-letter-spacing,.01em);line-height:var(--btn-line-height,1.25);cursor:pointer;transition:var(--btn-transition);align-items:center;text-decoration:none;display:inline-flex}.museum-btn-secondary:hover{border-color:var(--btn-hover-border,var(--c-mint-300));background:var(--btn-hover-bg,var(--c-mint-100));color:var(--btn-hover-color,var(--c-sage-500))}.museum-btn-secondary:focus-visible{outline:2px solid var(--btn-focus-outline,#3b82f6);outline-offset:2px}.museum-hero__stats{font-family:var(--font-body);color:var(--c-gray-500);font-size:.875rem}.museum-hero__stats strong{font-family:var(--font-display);color:var(--c-blue-500);font-weight:700}.museum-hero__visual{display:none}.museum-filter-bar{z-index:90;background:var(--c-white);border-bottom:1px solid var(--c-gray-100);padding:.75rem 1.25rem;position:sticky;top:3.25rem}.museum-filter-bar__inner{flex-direction:column;gap:.75rem;max-width:1200px;margin:0 auto;display:flex}@media (width>=768px){.museum-filter-bar__inner{flex-direction:row;justify-content:space-between;align-items:center}}.museum-chips{scrollbar-width:none;flex-wrap:nowrap;gap:.5rem;padding-bottom:2px;display:flex;overflow-x:auto}.museum-chips::-webkit-scrollbar{display:none}.museum-chip{min-height:1.75rem;padding:var(--btn-padding-compact-y,.3125rem) var(--btn-padding-compact-x,.5rem);border-radius:var(--museum-btn-radius-sm);border:1px solid var(--btn-border,var(--c-gray-200));background:var(--btn-bg,var(--c-gray-50));color:var(--btn-color,var(--c-gray-800));font-family:var(--museum-btn-font);font-size:var(--btn-font-size-xs,.6875rem);font-weight:var(--btn-font-weight,600);letter-spacing:var(--btn-letter-spacing,.01em);cursor:pointer;transition:var(--btn-transition);flex-shrink:0;align-items:center;gap:.375rem;display:inline-flex}.museum-chip:hover:not(.museum-chip--active){background:var(--btn-hover-bg,var(--c-blue-100));border-color:var(--btn-hover-border,var(--c-blue-300));color:var(--btn-hover-color,var(--c-blue-700))}.museum-chip:focus-visible{outline:2px solid var(--btn-focus-outline,#3b82f6);outline-offset:2px}.museum-chip--active{border-color:#0000}.museum-chip--active[data-accent=indigo]{background:var(--c-blue-100);color:var(--c-blue-700)}.museum-chip--active[data-accent=teal]{background:var(--c-mint-100);color:var(--c-mint-500)}.museum-chip--active[data-accent=amber]{background:var(--c-amber-100);color:var(--c-amber-500)}.museum-chip--active[data-accent=green]{background:var(--c-green-100);color:var(--c-green-500)}.museum-chip--active[data-accent=coral]{background:var(--c-coral-100);color:var(--c-coral-500)}.museum-filters-row{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.museum-select,.museum-search{font-family:var(--font-body);border:1px solid var(--c-gray-200);border-radius:var(--radius-md);color:var(--c-gray-800);background:#fff;padding:.5rem .75rem;font-size:.875rem}.museum-search{flex:1;min-width:10rem}.museum-section-header{align-items:center;gap:.75rem;max-width:1200px;margin:0 auto;padding:2rem 1.25rem 1rem;display:flex}.museum-section-header h2{font-family:var(--font-display);color:var(--c-gray-900);margin:0;font-size:1.5rem;font-weight:900}.museum-section-icon{font-size:1.75rem;line-height:1}.museum-section-count{font-family:var(--font-body);color:var(--c-gray-500);background:var(--c-gray-100);border-radius:var(--radius-pill);padding:.1875rem .625rem;font-size:.8125rem}.museum-grid-wrap{max-width:1200px;margin:0 auto;padding:0 1.25rem 2.5rem}.museum-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.25rem;display:grid}.museum-card{background:var(--c-white);border-radius:var(--radius-xl);border:1.5px solid var(--c-gray-100);cursor:pointer;color:inherit;transition:transform var(--duration-base) var(--ease-spring), box-shadow var(--duration-base) var(--ease-smooth), border-color var(--duration-base) var(--ease-smooth);flex-direction:column;text-decoration:none;display:flex;overflow:hidden}.museum-card:hover{border-color:var(--c-blue-300);transform:translateY(-6px)scale(1.01);box-shadow:0 16px 40px #1a3d5c1a}.museum-card:active{transform:translateY(-2px)scale(.99)}.museum-card:focus-visible{outline:2px solid var(--c-blue-500);outline-offset:3px}.museum-card__preview{justify-content:center;align-items:center;height:180px;display:flex;position:relative;overflow:hidden}.museum-card__preview img{object-fit:cover;width:100%;height:100%;transition:transform var(--duration-base) var(--ease-spring)}.museum-card:hover .museum-card__preview img{transform:scale(1.05)}.museum-card__emoji{transition:transform var(--duration-base) var(--ease-spring);font-size:4.5rem;line-height:1}.museum-card:hover .museum-card__emoji{transform:scale(1.08)}.museum-card__body{flex-direction:column;flex:1;padding:1rem 1rem 0;display:flex}.museum-card__badges{flex-wrap:wrap;gap:.375rem;margin-bottom:.625rem;display:flex}.museum-pill{font-family:var(--font-display);border-radius:var(--radius-pill);padding:.1875rem .625rem;font-size:.75rem;font-weight:700}.museum-pill--category[data-accent=teal]{background:var(--c-teal-100);color:var(--c-teal-500)}.museum-pill--category[data-accent=amber]{background:var(--c-amber-100);color:var(--c-amber-500)}.museum-pill--category[data-accent=green]{background:var(--c-green-100);color:var(--c-green-500)}.museum-pill--category[data-accent=coral]{background:var(--c-coral-100);color:var(--c-coral-500)}.museum-pill--category[data-accent=indigo]{background:var(--c-blue-100);color:var(--c-blue-700)}.museum-pill--age{background:var(--c-gray-100);color:var(--c-gray-800)}.museum-card__title{font-family:var(--font-display);color:var(--c-gray-900);margin:0 0 .375rem;font-size:1.125rem;font-weight:800;line-height:1.3}.museum-card__desc{font-family:var(--font-body);color:var(--c-gray-500);-webkit-line-clamp:2;-webkit-box-orient:vertical;flex:1;margin:0;font-size:.875rem;line-height:1.45;display:-webkit-box;overflow:hidden}.museum-card__footer{border-top:1px solid var(--c-gray-100);justify-content:space-between;align-items:center;gap:.5rem;margin-top:.75rem;padding:.75rem 1rem;display:flex}.museum-card__duration{font-family:var(--font-body);color:var(--c-gray-500);align-items:center;gap:.25rem;font-size:.8125rem;display:inline-flex}.museum-card__play{border-radius:var(--radius-pill);background:var(--c-blue-500);color:#fff;font-family:var(--font-display);pointer-events:none;border:none;padding:.375rem 1rem;font-size:.8125rem;font-weight:700}.museum-featured{border-radius:var(--radius-xl);background:linear-gradient(135deg, var(--c-blue-700) 0%, var(--c-mint-500) 100%);color:#fff;min-height:16rem;transition:transform var(--duration-base) var(--ease-spring);grid-column:1/-1;grid-template-columns:1fr;text-decoration:none;display:grid;overflow:hidden}@media (width>=900px){.museum-featured{grid-column:span 2;grid-template-columns:55fr 45fr}}.museum-featured:hover{transform:translateY(-4px)}.museum-featured__content{flex-direction:column;justify-content:center;padding:1.75rem;display:flex}.museum-featured__badge{font-family:var(--font-display);letter-spacing:.06em;text-transform:uppercase;border-radius:var(--radius-pill);background:#ffffff26;align-self:flex-start;margin-bottom:.75rem;padding:.25rem .625rem;font-size:.6875rem;font-weight:800}.museum-featured__title{font-family:var(--font-display);margin:0 0 .75rem;font-size:1.625rem;font-weight:900;line-height:1.2}.museum-featured__desc{font-family:var(--font-body);opacity:.88;-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0 0 1.25rem;font-size:.9375rem;line-height:1.55;display:-webkit-box;overflow:hidden}.museum-featured__visual{background:#00000026;justify-content:center;align-items:center;font-size:6rem;display:flex}.museum-empty{text-align:center;max-width:28rem;margin:0 auto;padding:5rem 1.25rem}.museum-empty h3{font-family:var(--font-display);color:var(--c-gray-900);margin:1rem 0 .5rem;font-size:1.25rem;font-weight:800}.museum-empty p{font-family:var(--font-body);color:var(--c-gray-500);margin:0 0 1.25rem;font-size:.9375rem}.museum-footer{background:linear-gradient(160deg, var(--c-blue-900) 0%, #1a3d32 100%);color:#fff;margin-top:auto;padding:3rem 1.25rem 1.5rem}.museum-footer__grid{gap:2rem;max-width:1200px;margin:0 auto;display:grid}@media (width>=768px){.museum-footer__grid{grid-template-columns:repeat(3,1fr)}}.museum-footer__brand{font-family:var(--font-display);font-size:1.125rem;font-weight:800}.museum-footer__tagline{font-family:var(--font-body);opacity:.75;margin:.5rem 0 0;font-size:.875rem}.museum-footer__links{flex-direction:column;gap:.5rem;display:flex}.museum-footer__links a{color:#ffffffd9;font-family:var(--font-body);font-size:.875rem;text-decoration:none}.museum-footer__links a:hover{color:#fff}.museum-footer__copy-btn{min-height:var(--btn-min-height,2.25rem);padding:var(--btn-padding-y,.375rem) var(--btn-padding-x,.75rem);border-radius:var(--museum-btn-radius-sm);color:#fff;font-family:var(--museum-btn-font);font-size:var(--btn-font-size-sm,.75rem);font-weight:var(--btn-font-weight,600);letter-spacing:var(--btn-letter-spacing,.01em);cursor:pointer;transition:var(--btn-transition);background:0 0;border:1px solid #ffffff40;align-items:center;gap:.375rem;margin-top:.75rem;display:inline-flex}.museum-footer__copy-btn:hover{background:#ffffff14;border-color:#fff6}.museum-footer__copy-btn:focus-visible{outline:2px solid var(--btn-focus-outline,#3b82f6);outline-offset:2px}.museum-footer__bar{max-width:1200px;font-family:var(--font-body);opacity:.65;text-align:center;border-top:1px solid #ffffff1a;margin:2rem auto 0;padding-top:1.25rem;font-size:.75rem}.game-modal{z-index:200;background:var(--c-gray-900);animation:game-modal-in var(--duration-slow) var(--ease-smooth);flex-direction:column;display:flex;position:fixed;inset:0}@keyframes game-modal-in{0%{opacity:0}to{opacity:1}}.game-modal__header{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0009;flex-shrink:0;justify-content:space-between;align-items:center;gap:1rem;min-height:3.5rem;padding:0 1rem;display:flex}.game-modal__title{font-family:var(--font-display);color:#fff;text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:1rem;font-weight:700;overflow:hidden}.game-modal__back,.game-modal__share{min-height:var(--btn-min-height,2.25rem);padding:var(--btn-padding-y,.375rem) var(--btn-padding-compact-x,.5rem);border-radius:var(--museum-btn-radius-sm);color:#fff;font-family:var(--museum-btn-font);font-size:var(--btn-font-size-sm,.75rem);font-weight:var(--btn-font-weight,600);letter-spacing:var(--btn-letter-spacing,.01em);cursor:pointer;transition:var(--btn-transition);background:#ffffff0f;border:1px solid #ffffff1f;align-items:center;gap:.375rem;display:inline-flex}.game-modal__back:hover,.game-modal__share:hover{background:#ffffff1f;border-color:#fff3}.game-modal__back:focus-visible,.game-modal__share:focus-visible{outline:2px solid var(--btn-focus-outline,#3b82f6);outline-offset:2px}.game-modal__frame{background:var(--c-gray-900);border:none;flex:1;width:100%}.player-root--embed,.player-stage--embed{min-height:100dvh}@media (prefers-reduced-motion:reduce){.museum-card:hover,.museum-featured:hover{transform:none}.game-modal{animation:none}}.dark{--color-bg:#0b1929;--color-surface:#0f2a48;--color-text:#f1f5f9;--color-muted:#94a3b8;--color-border:#38649659;--color-primary:#60a5fa;--color-primary-dark:#3b82f6;--btn-primary-bg:#2563eb;--btn-primary-border:#2563eb;--btn-primary-hover-bg:#1d4ed8}.dark .bg-app{background:#0b1929}.dark .museum-header{background:#0f172af2;border-bottom-color:#334155}.dark .museum-header--scrolled{box-shadow:0 4px 24px #00000059}.dark .museum-hero{background:linear-gradient(135deg,#0b1929d1 0%,#0f2a48b8 50%,#0b1929a6 100%),url(../../../brand/hero-background.png) 50%/cover no-repeat}.dark .museum-hero:before{background:linear-gradient(95deg,#0b1929eb 0%,#0b1929c7 45%,#0b19298c 72%,#0b192959 100%)}.dark .museum-hero__title{color:var(--color-text);text-shadow:0 1px 3px #00000059}.dark .museum-hero__body,.dark .museum-hero__stats{color:var(--color-muted)}.dark .museum-header__brand{color:var(--color-text)}.dark .museum-mobile-drawer{background:var(--color-surface);border-top-color:var(--color-border)}.dark .museum-nav-pill{color:var(--color-text,#e2e8f0)}.dark .museum-nav-pill:hover{color:var(--btn-hover-color,#93c5fd);background:#1e293ba6}.dark .museum-nav-pill--active{background:var(--btn-primary-bg,#2563eb);color:#fff}.dark .museum-btn-icon{border-color:var(--btn-border);background:var(--btn-bg);color:var(--btn-color)}.dark .museum-btn-icon:hover{background:var(--btn-hover-bg);border-color:var(--btn-hover-border)}.dark .museum-btn-primary{background:var(--btn-primary-bg);border-color:var(--btn-primary-border)}.dark .museum-btn-secondary{background:var(--btn-bg);border-color:var(--btn-border);color:var(--btn-color)}.dark .museum-btn-secondary:hover{background:var(--btn-hover-bg);border-color:var(--btn-hover-border);color:var(--btn-hover-color)}.dark .museum-chip{background:var(--btn-bg);border-color:var(--btn-border);color:var(--btn-color)}.dark .museum-chip:hover:not(.museum-chip--active){background:var(--btn-hover-bg);border-color:var(--btn-hover-border);color:var(--btn-hover-color)}
