/*! 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-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-font-weight: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-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-duration:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-white:#fff;--spacing:.25rem;--container-2xl:42rem;--container-4xl:56rem;--container-6xl:72rem;--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--font-weight-semibold:600;--font-weight-bold:700;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--radius-3xl:1.5rem;--drop-shadow-sm:0 1px 2px #00000026;--blur-sm:8px;--blur-md:12px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,: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%;-moz-tab-size:4;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;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]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance: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{.pointer-events-auto{pointer-events:auto}.visible{visibility:visible}.absolute{position:absolute}.relative{position:relative}.inset-0{top:0;right:0;bottom:0;left:0}.-top-6{top:calc(var(--spacing) * -6)}.-right-6{right:calc(var(--spacing) * -6)}.bottom-4{bottom:calc(var(--spacing) * 4)}.-left-8{left:calc(var(--spacing) * -8)}.z-0{z-index:0}.z-10{z-index:10}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.mx-auto{margin-inline:auto}.mb-8{margin-bottom:calc(var(--spacing) * 8)}.mb-12{margin-bottom:calc(var(--spacing) * 12)}.mb-16{margin-bottom:calc(var(--spacing) * 16)}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.min-h-\[90vh\]{min-height:90vh}.min-h-screen{min-height:100vh}.w-\[260px\]{width:260px}.w-full{width:100%}.max-w-2xl{max-width:var(--container-2xl)}.max-w-4xl{max-width:var(--container-4xl)}.max-w-6xl{max-width:var(--container-6xl)}.grow{flex-grow:1}.resize{resize:both}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-6{gap:calc(var(--spacing) * 6)}.overflow-hidden{overflow:hidden}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-3xl{border-radius:var(--radius-3xl)}.rounded-\[36px\]{border-radius:36px}.rounded-full{border-radius:3.40282e38px}.border{border-style:var(--tw-border-style);border-width:1px}.border-4{border-style:var(--tw-border-style);border-width:4px}.border-white\/30{border-color:#ffffff4d}@supports (color:color-mix(in lab,red,red)){.border-white\/30{border-color:color-mix(in oklab,var(--color-white) 30%,transparent)}}.border-white\/80{border-color:#fffc}@supports (color:color-mix(in lab,red,red)){.border-white\/80{border-color:color-mix(in oklab,var(--color-white) 80%,transparent)}}.bg-white\/20{background-color:#fff3}@supports (color:color-mix(in lab,red,red)){.bg-white\/20{background-color:color-mix(in oklab,var(--color-white) 20%,transparent)}}.bg-gradient-to-b{--tw-gradient-position:to bottom in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.bg-gradient-to-br{--tw-gradient-position:to bottom right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.from-\[\#4ECDC4\]{--tw-gradient-from:#4ecdc4;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.from-\[\#A55EEA\]{--tw-gradient-from:#a55eea;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.from-\[\#FF4757\]{--tw-gradient-from:#ff4757;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.from-\[\#FFD93D\]{--tw-gradient-from:#ffd93d;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-\[\#8E44AD\]{--tw-gradient-to:#8e44ad;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-\[\#45B7D1\]{--tw-gradient-to:#45b7d1;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-\[\#F5A623\]{--tw-gradient-to:#f5a623;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-\[\#FF6B81\]{--tw-gradient-to:#ff6b81;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.p-4{padding:calc(var(--spacing) * 4)}.p-6{padding:calc(var(--spacing) * 6)}.px-6{padding-inline:calc(var(--spacing) * 6)}.px-12{padding-inline:calc(var(--spacing) * 12)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-5{padding-block:calc(var(--spacing) * 5)}.py-12{padding-block:calc(var(--spacing) * 12)}.text-center{text-align:center}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.text-\[\#1A1A2E\]{color:#1a1a2e}.text-\[\#FF4757\]{color:#ff4757}.text-\[\#FFD700\]{color:gold}.text-white{color:var(--color-white)}.opacity-90{opacity:.9}.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-\[0_10px_0_\#D35400\,0_15px_30px_rgba\(0\,0\,0\,0\.3\)\]{--tw-shadow:0 10px 0 var(--tw-shadow-color,#d35400), 0 15px 30px var(--tw-shadow-color,#0000004d);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[0_10px_20px_rgba\(0\,0\,0\,0\.15\)\]{--tw-shadow:0 10px 20px var(--tw-shadow-color,#00000026);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[0_20px_50px_rgba\(0\,0\,0\,0\.28\)\]{--tw-shadow:0 20px 50px var(--tw-shadow-color,#00000047);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-inner{--tw-shadow:inset 0 2px 4px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.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,)}.drop-shadow-sm{--tw-drop-shadow-size:drop-shadow(0 1px 2px var(--tw-drop-shadow-color,#00000026));--tw-drop-shadow:drop-shadow(var(--drop-shadow-sm));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-md{--tw-backdrop-blur:blur(var(--blur-md));-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-blur-sm{--tw-backdrop-blur:blur(var(--blur-sm));-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))}.transition-shadow{transition-property:box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-300{--tw-duration:.3s;transition-duration:.3s}@media(hover:hover){.hover\:shadow-\[0_8px_0_\#D35400\,0_20px_40px_rgba\(0\,0\,0\,0\.4\)\]:hover{--tw-shadow:0 8px 0 var(--tw-shadow-color,#d35400), 0 20px 40px var(--tw-shadow-color,#0006);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}}@media(min-width:40rem){.sm\:w-\[340px\]{width:340px}}@media(min-width:48rem){.md\:w-\[420px\]{width:420px}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:gap-10{gap:calc(var(--spacing) * 10)}.md\:text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--color-brand-red:#ff4757;--color-brand-yellow:#ffd93d;--color-brand-blue:#4ecdc4;--color-brand-sky:#6c5ce7;--color-brand-dark-blue:#2d3436;--color-bg-primary:#f8fafe;--color-bg-secondary:#edf2f7;--color-bg-card:#fff;--color-bg-warm:#fff9e6;--color-bg-glass:#ffffffd9;--color-border-soft:#4ecdc433;--color-border-card:#0000000f;--color-text-primary:#1a1a2e;--color-text-secondary:#4a5568;--color-text-muted:#a0aec0;--color-text-on-color:#fff;--color-accent-red:#ff4757;--color-accent-orange:#ff6b35;--color-accent-yellow:#ffd93d;--color-accent-green:#2ed573;--color-accent-teal:#4ecdc4;--color-accent-blue:#45b7d1;--color-accent-purple:#a55eea;--color-accent-pink:#ff6b9d;--gradient-sky:linear-gradient(135deg, #667eea 0%, #764ba2 100%);--gradient-hero:linear-gradient(135deg, #ff4757 0%, #ffd93d 50%, #4ecdc4 100%);--gradient-warm:linear-gradient(135deg, #fff9e6 0%, #ffeaa7 100%);--gradient-fresh:linear-gradient(135deg, #e8f8f5 0%, #d5f5e3 100%);--gradient-cool:linear-gradient(135deg, #74b9ff 0%, #a29bfe 100%);--gradient-sunset:linear-gradient(135deg, #fd79a8 0%, #fdcb6e 100%);--gradient-ocean:linear-gradient(135deg, #00b894 0%, #00cec9 100%);--gradient-candy:linear-gradient(135deg, #fd79a8 0%, #e17055 100%);--card-red:linear-gradient(135deg, #ff6b6b 0%, #ee5a24 100%);--card-orange:linear-gradient(135deg, #ffa502 0%, #f39c12 100%);--card-yellow:linear-gradient(135deg, #feca57 0%, #f5a623 100%);--card-green:linear-gradient(135deg, #2ecc71 0%, #27ae60 100%);--card-teal:linear-gradient(135deg, #1abc9c 0%, #16a085 100%);--card-blue:linear-gradient(135deg, #3498db 0%, #2e86c1 100%);--card-indigo:linear-gradient(135deg, #5b6dcd 0%, #4834d4 100%);--card-purple:linear-gradient(135deg, #a55eea 0%, #8e44ad 100%);--card-pink:linear-gradient(135deg, #fd79a8 0%, #e84393 100%);--font-display:"Fredoka", "Outfit", sans-serif;--font-body:"Outfit", system-ui, sans-serif;--space-xs:.25rem;--space-sm:.5rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--space-2xl:3rem;--space-3xl:4rem;--space-4xl:6rem;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--radius-2xl:28px;--radius-full:9999px;--shadow-soft:0 2px 8px #0000000f;--shadow-card:0 4px 24px #00000014, 0 1px 2px #0000000a;--shadow-card-hover:0 12px 40px #0000001f, 0 4px 12px #0000000f;--shadow-colored:0 8px 32px #4ecdc44d;--shadow-btn:0 4px 20px #ff475759;--shadow-glow:0 0 30px #4ecdc466;--transition-fast:.15s cubic-bezier(.4, 0, .2, 1);--transition-base:.3s cubic-bezier(.4, 0, .2, 1);--transition-slow:.5s cubic-bezier(.4, 0, .2, 1);--transition-bounce:.6s cubic-bezier(.34, 1.56, .64, 1);color-scheme:light;--app-bg:linear-gradient(135deg, #667eea 0%, #764ba2 100%);--app-bg-blob-1:#ffd93d4d;--app-bg-blob-2:#4ecdc44d;--app-bg-blob-3:#ff475733;--surface:#ffffffd1;--surface-solid:#fffffff5;--surface-border:#fff9;--surface-hover:#fff;--input-bg:#ffffffeb;--chip-bg:linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);--header-border:#0000000f;--on-surface-strong:var(--color-text-primary)}[data-theme=dark]{color-scheme:dark;--color-text-primary:#f1f5f9;--color-text-secondary:#a3b0c2;--color-text-muted:#6b7a90;--color-bg-glass:#1a1b30c7;--app-bg:linear-gradient(135deg, #0e0f23 0%, #1a1b30 50%, #131a35 100%);--app-bg-blob-1:#ffd93d24;--app-bg-blob-2:#4ecdc429;--app-bg-blob-3:#a55eea2e;--surface:#1c1e36cc;--surface-solid:#1e2038f5;--surface-border:#ffffff1a;--surface-hover:#282b48fa;--input-bg:#101122d9;--chip-bg:linear-gradient(135deg, #232544 0%, #1a1c34 100%);--header-border:#ffffff14;--shadow-card:0 4px 24px #00000073, 0 1px 2px #0000004d;--shadow-card-hover:0 12px 40px #0000008c, 0 4px 12px #00000059;--shadow-soft:0 2px 8px #00000059}html{scroll-behavior:smooth;font-size:16px}body{font-family:var(--font-body);background:var(--app-bg);color:var(--color-text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;transition:color var(--transition-base);background-attachment:fixed;line-height:1.6;overflow-x:hidden}#root{flex-direction:column;min-height:100vh;display:flex}h1,h2,h3,h4{font-family:var(--font-display);color:var(--color-text-primary);font-weight:700;line-height:1.2}h1{font-size:clamp(2rem,5vw,3.5rem)}h2{font-size:clamp(1.5rem,3.5vw,2.5rem)}h3{font-size:clamp(1.25rem,2.5vw,1.75rem)}.container{width:100%;max-width:1200px;padding:0 var(--space-lg);margin:0 auto}.page{flex-direction:column;flex:1;display:flex}.bg-shapes{z-index:-1;pointer-events:none;background:var(--app-bg);transition:background var(--transition-slow);position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden}.bg-shapes:before{content:"";background:radial-gradient(circle at 20% 80%,var(--app-bg-blob-1) 0%,transparent 50%),radial-gradient(circle at 80% 20%,var(--app-bg-blob-2) 0%,transparent 50%),radial-gradient(circle at 40% 40%,var(--app-bg-blob-3) 0%,transparent 50%);position:absolute;top:0;right:0;bottom:0;left:0}.shape{opacity:.4;filter:blur(1px);border-radius:50%;animation:20s ease-in-out infinite float;position:absolute}.shape-1{background:radial-gradient(circle,var(--color-accent-yellow) 0%,transparent 70%);width:400px;height:400px;animation-delay:0s;top:-10%;right:-10%}.shape-2{background:radial-gradient(circle,var(--color-accent-red) 0%,transparent 70%);width:350px;height:350px;animation-delay:-7s;bottom:5%;left:-8%}.shape-3{background:radial-gradient(circle,var(--color-accent-teal) 0%,transparent 70%);width:280px;height:280px;animation-delay:-14s;top:35%;right:8%}.shape-4{background:radial-gradient(circle,var(--color-accent-purple) 0%,transparent 70%);width:200px;height:200px;animation-delay:-10s;top:15%;left:12%}@keyframes float{0%,to{transform:translate(0)rotate(0)scale(1)}25%{transform:translate(30px,-40px)rotate(8deg)scale(1.08)}50%{transform:translate(-20px,25px)rotate(-5deg)scale(.92)}75%{transform:translate(35px,30px)rotate(6deg)scale(1.05)}}.glass-card{background:var(--color-bg-glass);-webkit-backdrop-filter:blur(24px)saturate(180%);border:1px solid var(--surface-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-card);transition:all var(--transition-bounce)}.glass-card:hover{box-shadow:var(--shadow-card-hover),0 0 40px #4ecdc433;border-color:#4ecdc44d;transform:translateY(-6px)scale(1.02)}.btn{justify-content:center;align-items:center;gap:var(--space-sm);padding:var(--space-md) var(--space-xl);font-family:var(--font-display);border-radius:var(--radius-full);cursor:pointer;transition:all var(--transition-base);letter-spacing:.02em;border:none;font-size:1.05rem;font-weight:600;text-decoration:none;display:inline-flex;position:relative;overflow:hidden}.btn:after{content:"";opacity:0;transition:opacity var(--transition-fast);background:linear-gradient(135deg,#fff3,#0000 50%);position:absolute;top:0;right:0;bottom:0;left:0}.btn:hover:after{opacity:1}.btn:active{transform:scale(.96)}.btn-primary{color:#fff;background:linear-gradient(135deg,#ff4757,#ff6b81);box-shadow:0 4px 20px #ff475766}.btn-primary:hover{background:linear-gradient(135deg,#ff6b81,#ff4757);transform:translateY(-3px);box-shadow:0 8px 32px #ff475780}.btn-secondary{background:var(--surface-solid);color:var(--color-text-primary);box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:2px solid #4ecdc44d}.btn-secondary:hover{background:var(--surface-hover);border-color:var(--color-accent-teal);box-shadow:var(--shadow-card);transform:translateY(-3px)}.btn-back{background:var(--surface-solid);color:var(--color-text-secondary);padding:var(--space-sm) var(--space-lg);border:1px solid var(--surface-border);box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font-size:.95rem}.btn-back:hover{background:var(--surface-hover);color:var(--color-accent-teal);border-color:var(--color-accent-teal);transform:translateY(-2px)}.input-field{width:100%;padding:var(--space-lg) var(--space-xl);font-family:var(--font-body);color:var(--color-text-primary);background:var(--input-bg);border-radius:var(--radius-lg);transition:all var(--transition-base);letter-spacing:.2em;text-align:center;text-transform:uppercase;border:2px solid #4ecdc433;outline:none;font-size:1.3rem;font-weight:700;box-shadow:0 4px 16px #0000000f}.input-field::placeholder{color:var(--color-text-muted);letter-spacing:.05em;text-transform:none;font-size:1rem;font-weight:400}.input-field:focus{border-color:var(--color-accent-teal);background:var(--surface-hover);box-shadow:0 0 0 4px #4ecdc426,0 4px 20px #4ecdc41a}.input-error{border-color:var(--color-accent-red)}.error-text{color:var(--color-accent-red);margin-top:var(--space-sm);text-align:center;font-size:.875rem;font-weight:500}.cards-grid{gap:var(--space-lg);width:100%;padding-bottom:var(--space-3xl);grid-template-columns:repeat(auto-fill,minmax(240px,1fr));display:grid}.class-card{padding:var(--space-xl) var(--space-lg);border-radius:var(--radius-2xl);cursor:pointer;text-align:center;align-items:center;gap:var(--space-md);color:#fff;min-height:200px;transition:all var(--transition-bounce);border:2px solid #fff3;flex-direction:column;justify-content:center;text-decoration:none;display:flex;position:relative;overflow:hidden;box-shadow:0 8px 32px #00000026}.class-card:before{content:"";transition:opacity var(--transition-base);background:linear-gradient(135deg,#ffffff40,#0000 60%);position:absolute;top:0;right:0;bottom:0;left:0}.class-card:after{content:"";opacity:0;transition:opacity var(--transition-base);background:radial-gradient(circle at 30% 20%,#ffffff4d,#0000 60%);position:absolute;top:0;right:0;bottom:0;left:0}.class-card:hover{border-color:#fff6;transform:translateY(-8px)scale(1.04);box-shadow:0 16px 48px #0003}.class-card:hover:after{opacity:1}.class-card__emoji{filter:drop-shadow(0 4px 8px #0003);transition:all var(--transition-bounce);font-size:3.5rem}.class-card:hover .class-card__emoji{transform:scale(1.25)rotate(-8deg)translateY(-4px)}.class-card__name{font-family:var(--font-display);text-shadow:0 2px 4px #0003;font-size:1.4rem;font-weight:700}.class-card__age{border-radius:var(--radius-full);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);letter-spacing:.02em;background:#ffffff4d;padding:6px 16px;font-size:.85rem;font-weight:500}.game-card{padding:var(--space-2xl) var(--space-xl);border-radius:var(--radius-2xl);cursor:pointer;text-align:center;align-items:center;gap:var(--space-md);color:#fff;min-height:240px;transition:all var(--transition-bounce);border:2px solid #fff3;flex-direction:column;justify-content:center;text-decoration:none;display:flex;position:relative;overflow:hidden;box-shadow:0 8px 32px #00000026}.game-card:before{content:"";opacity:0;transition:opacity var(--transition-base);background:linear-gradient(135deg,#fff3,#0000 60%);position:absolute;top:0;right:0;bottom:0;left:0}.game-card:after{content:"";opacity:0;width:200%;height:200%;transition:opacity var(--transition-base);pointer-events:none;background:radial-gradient(circle,#ffffff1a,#0000 60%);position:absolute;top:-50%;left:-50%}.game-card:hover{border-color:#fff6;transform:translateY(-8px)scale(1.04);box-shadow:0 16px 48px #0003}.game-card:hover:before,.game-card:hover:after{opacity:1}.game-card--locked{opacity:.5;cursor:not-allowed;filter:saturate(.5)brightness(.9)}.game-card--locked:hover{transform:none;box-shadow:0 8px 32px #00000026}.game-card__emoji{transition:all var(--transition-bounce);filter:drop-shadow(0 4px 8px #0003);font-size:4rem}.game-card:hover .game-card__emoji{transform:scale(1.35)rotate(8deg)translateY(-6px)}.game-card__name{font-family:var(--font-display);text-shadow:0 2px 4px #0003;font-size:1.35rem;font-weight:700}.game-card__desc{opacity:.9;max-width:220px;font-size:.9rem;line-height:1.4}.game-card__badge{top:var(--space-md);right:var(--space-md);border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.08em;padding:6px 14px;font-size:.7rem;font-weight:700;position:absolute}.game-card__badge--live{color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:linear-gradient(135deg,#ffffff59,#ffffff26);border:1px solid #ffffff4d}.game-card__badge--soon{color:#fffc;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0000004d}.header{padding:var(--space-md) var(--space-xl);z-index:100;background:var(--surface);-webkit-backdrop-filter:blur(20px)saturate(180%);border-bottom:1px solid var(--header-border);transition:background var(--transition-base),border-color var(--transition-base);justify-content:space-between;align-items:center;display:flex;position:sticky;top:0;box-shadow:0 1px 3px #0000000d}.header__logo{align-items:center;gap:var(--space-sm);transition:transform var(--transition-base);text-decoration:none;display:flex}.header__logo:hover{transform:scale(1.05)}.header__logo img{width:auto;height:48px}.header__school{align-items:center;gap:var(--space-sm);color:var(--color-text-secondary);background:var(--chip-bg);padding:var(--space-sm) var(--space-lg);border-radius:var(--radius-full);border:1px solid var(--surface-border);letter-spacing:.01em;font-size:.9rem;font-weight:600;display:flex;box-shadow:0 2px 8px #0000000a}.page-header{text-align:center;padding:var(--space-3xl) 0 var(--space-2xl)}.page-header__title{margin-bottom:var(--space-md);color:var(--color-text-primary);text-shadow:0 2px 4px #0000000d}.page-header__subtitle{color:var(--color-text-secondary);font-size:1.15rem;font-weight:500}.landing-bg-video{z-index:-2;position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden}.landing-bg-video__el{object-fit:cover;width:100%;height:100%}.landing-bg-video__overlay{-webkit-backdrop-filter:blur(2px);background:linear-gradient(#87ceeb4d,#e8f4fd73,#e8f4fd99);position:absolute;top:0;right:0;bottom:0;left:0}.landing{text-align:center;padding:var(--space-3xl) var(--space-lg);justify-content:center;align-items:center;gap:var(--space-xl);z-index:1;flex-direction:column;flex:1;display:flex;position:relative}.landing__logo{filter:drop-shadow(0 12px 40px #0003);width:clamp(220px,38vw,360px);height:auto;transition:all var(--transition-bounce)}.landing__logo:hover{filter:drop-shadow(0 16px 48px #00000040);transform:scale(1.08)rotate(-3deg)}.landing__tagline{color:#fff;text-shadow:0 2px 12px #0000004d;max-width:520px;font-size:clamp(1.15rem,2.8vw,1.5rem);font-weight:600;line-height:1.5}.landing__features{gap:var(--space-lg);margin-top:var(--space-lg);flex-wrap:wrap;justify-content:center;display:flex}.landing__feature{align-items:center;gap:var(--space-sm);color:#fff;padding:var(--space-md) var(--space-xl);border-radius:var(--radius-full);-webkit-backdrop-filter:blur(12px);transition:all var(--transition-base);background:#ffffff26;border:1px solid #ffffff40;font-size:1rem;font-weight:600;display:flex;box-shadow:0 4px 16px #0000001a}.landing__feature:hover{background:#ffffff40;transform:translateY(-3px);box-shadow:0 8px 24px #00000026}.landing__feature-icon{font-size:1.4rem}.code-entry{padding:var(--space-3xl) var(--space-lg);justify-content:center;align-items:center;gap:var(--space-xl);flex-direction:column;flex:1;display:flex}.code-entry__card{padding:var(--space-3xl) var(--space-2xl);align-items:center;gap:var(--space-xl);background:var(--surface-solid);border-radius:var(--radius-2xl);border:1px solid var(--surface-border);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);flex-direction:column;width:100%;max-width:480px;display:flex;box-shadow:0 20px 60px #0000001a,0 4px 16px #0000000d}.code-entry__icon{filter:drop-shadow(0 4px 8px #0000001a);font-size:3.5rem}.code-entry__title{font-family:var(--font-display);color:var(--color-text-primary);text-align:center;font-size:1.6rem}.code-entry__hint{color:var(--color-text-muted);text-align:center;font-size:.9rem}.game-wrapper{padding:var(--space-xl);align-items:center;gap:var(--space-xl);flex-direction:column;flex:1;display:flex}.game-wrapper__header{width:100%;max-width:960px;padding:var(--space-md) var(--space-lg);background:var(--surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-soft);border:1px solid var(--surface-border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);justify-content:space-between;align-items:center;display:flex}.game-wrapper__title{font-family:var(--font-display);align-items:center;gap:var(--space-sm);color:var(--color-text-primary);font-size:1.4rem;display:flex}.game-wrapper__canvas{aspect-ratio:16/10;border-radius:var(--radius-2xl);background:#000;border:3px solid #ffffffe6;width:100%;max-width:960px;overflow:hidden;box-shadow:0 16px 64px #0003,0 4px 16px #0000001a}@media(max-width:768px){.cards-grid{gap:var(--space-md);grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}.class-card{padding:var(--space-lg);min-height:160px}.class-card__emoji{font-size:2.5rem}.game-card{padding:var(--space-xl) var(--space-lg);min-height:200px}.landing__features{flex-direction:column;align-items:center}.header__school{display:none}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(32px)}to{opacity:1;transform:translateY(0)}}@keyframes bounceIn{0%{opacity:0;transform:scale(.7)}60%{transform:scale(1.08)}80%{transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes slideIn{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.animate-in{animation:.7s cubic-bezier(.4,0,.2,1) forwards fadeInUp}.animate-in-delay-1{opacity:0;animation-delay:.12s}.animate-in-delay-2{opacity:0;animation-delay:.24s}.animate-in-delay-3{opacity:0;animation-delay:.36s}.animate-in-delay-4{opacity:0;animation-delay:.48s}.game-wrapper:fullscreen{background:linear-gradient(135deg,#1a1a2e,#16213e);justify-content:center;align-items:center;padding:0}.game-wrapper:fullscreen .game-wrapper__header{padding:var(--space-md) var(--space-xl);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffff1a;border-bottom:1px solid #ffffff1a;max-width:100%}.game-wrapper:fullscreen .game-wrapper__title{color:#fff}.game-wrapper:fullscreen .btn-back{color:#fff;background:#ffffff1a;border-color:#fff3}.game-wrapper:fullscreen .btn-back:hover{background:#fff3}.game-wrapper:fullscreen .game-wrapper__canvas{border:none;border-radius:0;flex:1;justify-content:center;align-items:center;max-width:100%;display:flex}.sound-toggle{bottom:var(--space-xl);right:var(--space-xl);z-index:200;-webkit-backdrop-filter:blur(16px);cursor:pointer;width:56px;height:56px;transition:all var(--transition-base);background:#fff3;border:2px solid #fff6;border-radius:50%;justify-content:center;align-items:center;font-size:1.5rem;display:flex;position:fixed;box-shadow:0 8px 32px #00000026}.sound-toggle:hover{background:#ffffff59;transform:scale(1.12);box-shadow:0 12px 40px #0003}.sound-toggle:active{transform:scale(.95)}.theme-toggle{border-radius:var(--radius-full);border:1px solid var(--surface-border);background:var(--surface-solid);width:46px;height:46px;color:var(--color-text-primary);cursor:pointer;box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(12px);transition:background var(--transition-base),color var(--transition-base),border-color var(--transition-base);justify-content:center;align-items:center;display:inline-flex}.theme-toggle:hover{border-color:var(--color-accent-teal);color:var(--color-accent-teal)}.theme-toggle--floating{top:var(--space-lg);right:var(--space-lg);z-index:200;width:52px;height:52px;position:fixed}.header__actions{align-items:center;gap:var(--space-md);display:flex}.breadcrumb{align-items:center;gap:var(--space-xs);color:var(--color-text-secondary);flex-wrap:wrap;font-size:.9rem;font-weight:600;display:inline-flex}.breadcrumb a{color:var(--color-text-secondary);border-radius:var(--radius-full);transition:all var(--transition-fast);padding:4px 10px;text-decoration:none}.breadcrumb a:hover{color:var(--color-accent-teal);background:var(--surface)}.breadcrumb__sep{opacity:.5}.breadcrumb__current{color:var(--color-text-primary)}.demo-chips{gap:var(--space-sm);flex-wrap:wrap;justify-content:center;display:flex}.demo-chip{font-family:var(--font-display);letter-spacing:.08em;border-radius:var(--radius-full);border:2px dashed var(--color-border-soft);background:var(--input-bg);color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-bounce);padding:8px 16px;font-size:.85rem;font-weight:700}.demo-chip:hover{border-style:solid;border-color:var(--color-accent-teal);color:var(--color-accent-teal);transform:translateY(-2px)scale(1.05)}.eyebrow{align-items:center;gap:var(--space-sm);border-radius:var(--radius-full);background:var(--surface);border:1px solid var(--surface-border);color:var(--color-text-secondary);letter-spacing:.04em;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:var(--shadow-soft);padding:6px 18px;font-size:.85rem;font-weight:700;display:inline-flex}.count-pill{border-radius:var(--radius-full);background:var(--surface);border:1px solid var(--surface-border);color:var(--color-text-secondary);align-items:center;gap:6px;padding:4px 14px;font-size:.8rem;font-weight:700;display:inline-flex}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translate(-10px)}40%{transform:translate(10px)}60%{transform:translate(-6px)}80%{transform:translate(6px)}}.shake{animation:.45s cubic-bezier(.36,.07,.19,.97) shake}@media(prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --tw-font-weight{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-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-duration{syntax:"*";inherits:false}
