:root{--color-primary: #1a365d;--color-primary-600: #2563eb;--color-primary-light: #3b82f6;--color-primary-lighter: #dbeafe;--color-primary-50: #eff6ff;--color-secondary: #1e40af;--gradient-primary: linear-gradient(135deg, #1a365d 0%, #2563eb 100%);--gradient-primary-hover: linear-gradient(135deg, #1e3a6e 0%, #3b82f6 100%);--gradient-accent: linear-gradient(135deg, #f59e0b 0%, #f97316 100%);--gradient-hero: linear-gradient(135deg, #0f172a 0%, #1e3a5f 50%, #1a365d 100%);--color-background: #f8fafc;--color-surface: #ffffff;--color-surface-alt: #f1f5f9;--color-surface-elevated: rgba(255, 255, 255, .85);--color-border: #e2e8f0;--color-border-light: #f1f5f9;--color-accent: #f59e0b;--color-accent-light: #fef3c7;--color-accent-hover: #d97706;--color-success: #22c55e;--color-success-light: #dcfce7;--color-success-dark: #15803d;--color-warning: #f97316;--color-warning-light: #ffedd5;--color-warning-dark: #c2410c;--color-error: #ef4444;--color-error-light: #fee2e2;--color-error-dark: #dc2626;--color-info: #3b82f6;--color-info-light: #dbeafe;--color-info-dark: #1d4ed8;--color-text-primary: #0f172a;--color-text-secondary: #475569;--color-text-tertiary: #94a3b8;--color-text-inverse: #ffffff;--shadow-xs: 0 1px 2px rgba(15, 23, 42, .04);--shadow-sm: 0 1px 3px rgba(15, 23, 42, .06), 0 1px 2px rgba(15, 23, 42, .04);--shadow-md: 0 4px 6px -1px rgba(15, 23, 42, .07), 0 2px 4px -2px rgba(15, 23, 42, .05);--shadow-lg: 0 10px 15px -3px rgba(15, 23, 42, .08), 0 4px 6px -4px rgba(15, 23, 42, .04);--shadow-xl: 0 20px 25px -5px rgba(15, 23, 42, .1), 0 8px 10px -6px rgba(15, 23, 42, .06);--shadow-2xl: 0 25px 50px -12px rgba(15, 23, 42, .2);--shadow-focus: 0 0 0 3px rgba(37, 99, 235, .25);--shadow-glass: 0 8px 32px rgba(15, 23, 42, .08);--radius-sm: 6px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 24px;--radius-full: 9999px;--space-0: 0;--space-px: 1px;--space-0-5: 2px;--space-1: 4px;--space-1-5: 6px;--space-2: 8px;--space-2-5: 10px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-7: 28px;--space-8: 32px;--space-9: 36px;--space-10: 40px;--space-12: 48px;--space-14: 56px;--space-16: 64px;--space-20: 80px;--space-24: 96px;--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-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--font-weight-extrabold: 800;--line-height-tight: 1.25;--line-height-snug: 1.375;--line-height-normal: 1.5;--line-height-relaxed: 1.75;--letter-spacing-tight: -.025em;--letter-spacing-normal: 0;--letter-spacing-wide: .025em;--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-base: .2s cubic-bezier(.4, 0, .2, 1);--transition-slow: .3s cubic-bezier(.4, 0, .2, 1);--transition-slower: .5s cubic-bezier(.4, 0, .2, 1);--transition-bounce: .5s cubic-bezier(.34, 1.56, .64, 1);--glass-bg: rgba(255, 255, 255, .7);--glass-border: rgba(255, 255, 255, .3);--glass-blur: blur(12px)}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;height:100%}body{font-family:-apple-system,BlinkMacSystemFont,Hiragino Kaku Gothic ProN,Hiragino Sans,Meiryo,Segoe UI,system-ui,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--color-background);color:var(--color-text-primary);line-height:var(--line-height-normal);font-size:var(--font-size-base);min-width:320px;min-height:100%;overflow-x:hidden;-webkit-overflow-scrolling:touch}#root{min-height:100vh;min-height:100dvh}code{font-family:SF Mono,Monaco,Fira Code,Consolas,monospace;font-size:var(--font-size-sm);background-color:var(--color-surface-alt);padding:2px 8px;border-radius:var(--radius-sm)}@supports (-webkit-touch-callout: none){input[type=text],input[type=email],input[type=password],input[type=tel],input[type=number],input[type=search],textarea,select{font-size:16px!important}}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:var(--radius-full);transition:background var(--transition-fast)}::-webkit-scrollbar-thumb:hover{background:var(--color-text-tertiary)}::selection{background-color:#2563eb26;color:var(--color-primary)}img{max-width:100%;height:auto}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@media (max-width: 640px){:root{--font-size-3xl: 1.5rem;--font-size-4xl: 1.875rem;--font-size-5xl: 2.25rem}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-16px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:translate(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-24px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.animate-fade-in{animation:fadeIn .3s ease-out}.animate-fade-in-up{animation:fadeInUp .4s ease-out}.animate-slide-in-right{animation:slideInRight .4s ease-out}[data-sonner-toaster]{font-family:inherit!important}
