:root{--app-width: 390px;--color-primary: #0B1845;--color-primary-dark: #050D2A;--color-primary-light: #1A2B5C;--color-primary-surface: #E8EBF3;--color-accent: #C5F230;--color-accent-dark: #A8D11A;--color-accent-surface: #F4FBDA;--color-accent-foreground:#0B1845;--color-background: #F5F6FA;--color-surface: #FFFFFF;--color-surface-2: #EEF0F5;--color-text-primary: #0F172A;--color-text-secondary: #64748B;--color-text-tertiary: #94A3B8;--color-text-disabled: #CBD5E1;--color-text-inverse: #FFFFFF;--color-border: rgba(11, 24, 69, .08);--color-border-strong: rgba(11, 24, 69, .16);--color-border-focus: #0B1845;--color-icon-default: #64748B;--color-icon-active: #0B1845;--color-icon-accent: #C5F230;--color-error: #EF4444;--color-error-surface: #FEF2F2;--color-success: #10B981;--color-success-surface: #ECFDF5;--color-warning: #F59E0B;--color-warning-surface: #FFFBEB;--color-info: #3B82F6;--color-info-surface: #EFF6FF;--gradient-hero: linear-gradient(180deg, var(--color-primary-light) 0%, var(--color-primary-surface) 45%, var(--color-background) 100%);--gradient-hero-solid: linear-gradient(180deg, var(--color-primary) 0%, var(--color-primary-light) 100%);--gradient-accent: linear-gradient(135deg, var(--color-accent) 0%, var(--color-accent-dark) 100%);--glass-blur: 16px;--glass-opacity: .92;--glass-saturate: 1.4;--glass-border: rgba(255, 255, 255, .2);--glass-background: rgba(255, 255, 255, .92);--glass-background-header: rgba(255, 255, 255, .85);--glass-background-dark: rgba(11, 24, 69, .85);--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--spacing-2xl: 48px;--spacing-3xl: 64px;--radius-xs: 8px;--radius-sm: 12px;--radius-md: 20px;--radius-lg: 28px;--radius-xl: 36px;--radius-full: 9999px;--shadow-sm: 0 1px 2px rgba(11, 24, 69, .04), 0 1px 1px rgba(11, 24, 69, .02);--shadow-md: 0 4px 8px rgba(11, 24, 69, .06), 0 2px 4px rgba(11, 24, 69, .04), 0 1px 2px rgba(11, 24, 69, .02);--shadow-lg: 0 12px 24px rgba(11, 24, 69, .08), 0 6px 12px rgba(11, 24, 69, .05), 0 2px 4px rgba(11, 24, 69, .03);--shadow-xl: 0 24px 48px rgba(11, 24, 69, .12), 0 12px 24px rgba(11, 24, 69, .06), 0 4px 8px rgba(11, 24, 69, .04);--shadow-primary: 0 8px 16px rgba(11, 24, 69, .16), 0 4px 8px rgba(11, 24, 69, .08);--shadow-accent: 0 8px 16px rgba(197, 242, 48, .32), 0 4px 8px rgba(197, 242, 48, .16);--shadow-inset: inset 0 1px 2px rgba(11, 24, 69, .04);--shadow-tab-bar: 0 -4px 12px rgba(11, 24, 69, .06), 0 -1px 2px rgba(11, 24, 69, .04);--font-family-base: "Inter", -apple-system, BlinkMacSystemFont, "SF Pro Display", system-ui, sans-serif;--font-family-display: "Inter", -apple-system, BlinkMacSystemFont, "SF Pro Display", system-ui, sans-serif;--font-family-mono: "SF Mono", "Fira Code", monospace;--font-size-xs: 11px;--font-size-sm: 13px;--font-size-base: 15px;--font-size-md: 17px;--font-size-lg: 20px;--font-size-xl: 24px;--font-size-2xl: 28px;--font-size-3xl: 34px;--font-size-4xl: 40px;--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.1;--line-height-snug: 1.25;--line-height-base: 1.45;--line-height-relaxed: 1.65;--letter-spacing-tight: -.02em;--letter-spacing-normal: 0;--letter-spacing-wide: .04em;--transition-fast: .15s ease;--transition-base: .3s cubic-bezier(.4, 0, .2, 1);--transition-slow: .5s cubic-bezier(.4, 0, .2, 1);--transition-spring: .4s cubic-bezier(.34, 1.56, .64, 1);--ease-out-strong: cubic-bezier(.16, 1, .3, 1);--ease-in-out-strong: cubic-bezier(.65, 0, .35, 1);--ease-drawer: cubic-bezier(.32, .72, 0, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--ease-snap: cubic-bezier(.5, 0, 0, 1);--screen-padding: 16px;--screen-padding-top: 18px;--section-gap: var(--spacing-xl);--header-height: 56px;--tab-bar-height: 83px;--touch-target-min: 44px;--content-max-width: 390px;--z-base: 0;--z-elevated: 10;--z-sticky: 20;--z-tab-bar: 30;--z-overlay: 40;--z-modal: 50;--z-toast: 60}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%}html{font-family:var(--font-family-base);font-size:var(--font-size-base);line-height:var(--line-height-base);color:var(--color-text-primary);background-color:var(--color-background);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{font-family:var(--font-family-base)}button{font-family:inherit;border:none;background:none;cursor:pointer;color:inherit}input,textarea,select{font-family:inherit;font-size:inherit;color:inherit}a{color:inherit;text-decoration:none}img,svg{display:block;max-width:100%}.text-display-lg{font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);letter-spacing:var(--letter-spacing-tight)}.text-display-md{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);letter-spacing:var(--letter-spacing-tight)}.text-display-sm{font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold);line-height:var(--line-height-snug);letter-spacing:var(--letter-spacing-tight)}.text-h1{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);line-height:var(--line-height-snug)}.text-h2{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);line-height:var(--line-height-snug)}.text-h3{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);line-height:var(--line-height-base)}.text-body-lg{font-size:var(--font-size-md);font-weight:var(--font-weight-regular);line-height:var(--line-height-base)}.text-body{font-size:var(--font-size-base);font-weight:var(--font-weight-regular);line-height:var(--line-height-base)}.text-body-sm{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);line-height:var(--line-height-base)}.text-caption{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase}@media (prefers-reduced-motion: reduce){*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;border-radius:var(--radius-xs)}:focus:not(:focus-visible){outline:none}@keyframes fadeInUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}
