:root{--color-primary-50: #f0f3f5;--color-primary-100: #d4dce3;--color-primary-200: #b8c5d1;--color-primary-300: #8da3b5;--color-primary-400: #4A5D6F;--color-primary-500: #2D3E50;--color-primary-600: #263546;--color-primary-700: #1f2b39;--color-primary-800: #17202b;--color-primary-900: #0f161d;--color-accent-50: #fdf5f3;--color-accent-100: #fbe8e3;--color-accent-200: #f5cfc6;--color-accent-300: #F2C4BA;--color-accent-400: #E8A598;--color-accent-500: #D4897A;--color-accent-600: #c07060;--color-accent-700: #a05848;--color-accent-800: #804535;--color-accent-900: #603525;--color-gray-50: #FAFAF9;--color-gray-100: #F5F5F4;--color-gray-200: #E7E5E4;--color-gray-300: #D6D3D1;--color-gray-400: #A8A29E;--color-gray-500: #78716C;--color-gray-600: #57534E;--color-gray-700: #44403C;--color-gray-800: #292524;--color-gray-900: #1C1917;--color-success-50: #f0fdf4;--color-success-100: #dcfce7;--color-success-500: #22c55e;--color-success-600: #16a34a;--color-success-700: #15803d;--color-warning-50: #fffbeb;--color-warning-100: #fef3c7;--color-warning-500: #f59e0b;--color-warning-600: #d97706;--color-warning-700: #b45309;--color-error-50: #fef2f2;--color-error-100: #fee2e2;--color-error-500: #ef4444;--color-error-600: #dc2626;--color-error-700: #b91c1c;--color-info-50: #f0f9ff;--color-info-100: #e0f2fe;--color-info-500: #0ea5e9;--color-info-600: #0284c7;--bg-page: #FAF7F5;--bg-primary: #ffffff;--bg-secondary: #F8F6F4;--bg-tertiary: var(--color-gray-200);--bg-inverse: var(--color-primary-800);--bg-overlay: rgba(0, 0, 0, .3);--bg-overlay-light: rgba(45, 62, 80, .06);--text-primary: var(--color-gray-900);--text-secondary: var(--color-gray-600);--text-tertiary: var(--color-gray-500);--text-muted: var(--color-gray-400);--text-inverse: #ffffff;--text-link: var(--color-primary-500);--text-link-hover: var(--color-primary-600);--border-default: var(--color-gray-200);--border-strong: var(--color-gray-300);--border-focus: var(--color-primary-500);--border-error: var(--color-error-500);--interactive-primary: var(--color-primary-500);--interactive-primary-hover: var(--color-primary-600);--interactive-primary-active: var(--color-primary-700);--interactive-accent: var(--color-accent-400);--interactive-accent-hover: var(--color-accent-500);--font-family-base: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-family-mono: "SF Mono", Monaco, "Courier New", monospace;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-size-4xl: 2.25rem;--font-size-5xl: 3rem;--font-weight-light: 300;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.25;--line-height-snug: 1.375;--line-height-normal: 1.5;--line-height-relaxed: 1.625;--line-height-loose: 2;--letter-spacing-tight: -.025em;--letter-spacing-normal: 0;--letter-spacing-wide: .025em;--letter-spacing-wider: .05em;--space-0: 0;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--space-24: 6rem;--shadow-xs: 0 1px 2px rgba(45, 62, 80, .04);--shadow-sm: 0 1px 3px rgba(45, 62, 80, .06), 0 1px 2px rgba(45, 62, 80, .04);--shadow-md: 0 4px 6px -1px rgba(45, 62, 80, .08), 0 2px 4px -1px rgba(45, 62, 80, .04);--shadow-lg: 0 10px 15px -3px rgba(45, 62, 80, .08), 0 4px 6px -2px rgba(45, 62, 80, .04);--shadow-xl: 0 20px 25px -5px rgba(45, 62, 80, .08), 0 10px 10px -5px rgba(45, 62, 80, .03);--shadow-2xl: 0 25px 50px -12px rgba(45, 62, 80, .15);--shadow-primary: 0 4px 14px rgba(45, 62, 80, .25);--shadow-primary-lg: 0 8px 24px rgba(45, 62, 80, .3);--shadow-accent: 0 4px 14px rgba(232, 165, 152, .3);--glow-primary: 0 4px 12px rgba(45, 62, 80, .15);--glow-primary-intense: 0 6px 16px rgba(45, 62, 80, .2);--glow-accent: 0 4px 12px rgba(232, 165, 152, .2);--glow-accent-intense: 0 6px 16px rgba(232, 165, 152, .25);--glow-success: 0 4px 12px rgba(34, 197, 94, .2);--glow-mixed: 0 6px 16px rgba(45, 62, 80, .15);--shadow-focus: 0 0 0 3px rgba(45, 62, 80, .15);--shadow-focus-error: 0 0 0 3px rgba(239, 68, 68, .15);--gradient-primary: linear-gradient(135deg, var(--color-primary-500) 0%, var(--color-primary-700) 100%);--gradient-accent: linear-gradient(135deg, var(--color-accent-400) 0%, var(--color-accent-600) 100%);--gradient-mixed: linear-gradient(135deg, var(--color-primary-500) 0%, var(--color-accent-400) 100%);--gradient-mixed-reverse: linear-gradient(135deg, var(--color-accent-400) 0%, var(--color-primary-500) 100%);--gradient-hero: linear-gradient(135deg, var(--color-primary-700) 0%, var(--color-primary-500) 100%);--gradient-dark: linear-gradient(135deg, var(--color-primary-900) 0%, var(--color-primary-700) 100%);--gradient-glass: linear-gradient(135deg, rgba(255,255,255,.1) 0%, rgba(255,255,255,.05) 100%);--gradient-shimmer: linear-gradient(90deg, transparent 0%, rgba(255,255,255,.4) 50%, transparent 100%);--gradient-border: linear-gradient(90deg, var(--color-primary-500), var(--color-accent-400), var(--color-primary-500));--gradient-text: linear-gradient(135deg, var(--color-primary-500) 0%, var(--color-accent-400) 100%);--glass-bg: rgba(255, 255, 255, .95);--glass-bg-dark: rgba(45, 62, 80, .95);--glass-border: rgba(255, 255, 255, .5);--glass-blur: none;--radius-none: 0;--radius-sm: .25rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-2xl: 1.5rem;--radius-full: 9999px;--duration-instant: 0ms;--duration-fast: .15s;--duration-normal: .2s;--duration-slow: .3s;--duration-slower: .4s;--ease-linear: linear;--ease-in: cubic-bezier(.4, 0, 1, 1);--ease-out: cubic-bezier(0, 0, .2, 1);--ease-in-out: cubic-bezier(.4, 0, .2, 1);--ease-bounce: cubic-bezier(.34, 1.56, .64, 1);--transition-fast: all var(--duration-fast) var(--ease-out);--transition-normal: all var(--duration-normal) var(--ease-out);--transition-slow: all var(--duration-slow) var(--ease-out);--transition-colors: color var(--duration-fast) var(--ease-out), background-color var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out);--transition-transform: transform var(--duration-normal) var(--ease-out);--transition-shadow: box-shadow var(--duration-normal) var(--ease-out);font-family:var(--font-family-base);line-height:var(--line-height-normal);font-weight:var(--font-weight-normal);color:var(--text-primary);background-color:var(--bg-primary);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;min-width:320px;min-height:100vh;background-color:var(--bg-page)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes bounce{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}@keyframes wiggle{0%,to{transform:rotate(0)}25%{transform:rotate(-2deg)}75%{transform:rotate(2deg)}}.app{min-height:100vh;background-color:#f3f4f6}*{box-sizing:border-box}
