:root{--color-primary-50:#eff6ff;--color-primary-100:#dbeafe;--color-primary-200:#bfdbfe;--color-primary-300:#93c5fd;--color-primary-400:#60a5fa;--color-primary-500:#3b82f6;--color-primary-600:#1e6fd6;--color-primary-700:#1d4ed8;--color-primary-800:#1e40af;--color-primary-900:#1e3a8a;--color-sky-400:#38bdf8;--color-sky-500:#0ea5e9;--color-sky-600:#0284c7;--color-navy-700:#0d3a8e;--color-navy-800:#0a2a6e;--color-navy-900:#071d4e;--color-primary:var(--color-primary-600);--color-primary-hover:var(--color-primary-700);--color-primary-light:var(--color-primary-50);--color-accent:var(--color-sky-500);--color-accent-hover:var(--color-sky-600);--color-accent-light:#e0f2fe;--color-success:#10b981;--color-success-light:#ecfdf5;--color-danger:#ef4444;--color-danger-light:#fef2f2;--color-warning:#f59e0b;--color-warning-light:#fffbeb;--color-info:var(--color-primary-500);--color-info-light:var(--color-primary-50);--color-bg:#f4f8ff;--color-bg-subtle:#eaf2ff;--color-surface:#fff;--color-surface-raised:#fff;--color-surface-overlay:#fff;--color-border:#dde8f7;--color-border-strong:#b8cff0;--color-text-primary:#0d1b3e;--color-text-secondary:#3a5080;--color-text-muted:#7a95be;--color-text-inverse:#fff;--color-text-brand:var(--color-primary-600);--gradient-brand:linear-gradient(135deg, #1e6fd6 0%, #0ea5e9 100%);--gradient-brand-soft:linear-gradient(135deg, #eff6ff 0%, #e0f2fe 100%);--gradient-hero:linear-gradient(160deg, #1a3a8f 0%, #1e6fd6 50%, #0ea5e9 100%);--gradient-card:linear-gradient(135deg, #fff 0%, #f4f8ff 100%);--gradient-glow:radial-gradient(circle at 50% 0%, #1e6fd61f 0%, transparent 70%);--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--space-20:80px;--font-sans:"Inter", system-ui, -apple-system, sans-serif;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-4xl:2.25rem;--leading-tight:1.25;--leading-normal:1.5;--leading-relaxed:1.75;--weight-light:300;--weight-normal:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--weight-extrabold:800;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-xl:18px;--radius-2xl:24px;--radius-3xl:32px;--radius-full:9999px;--shadow-xs:0 1px 2px #0d3a8e0d;--shadow-sm:0 2px 4px #0d3a8e12, 0 1px 2px #0d3a8e0d;--shadow-md:0 4px 12px #0d3a8e17, 0 2px 4px #0d3a8e0f;--shadow-lg:0 8px 24px #0d3a8e1a, 0 4px 8px #0d3a8e0f;--shadow-xl:0 16px 40px #0d3a8e1f, 0 8px 16px #0d3a8e0f;--shadow-brand:0 4px 16px #1e6fd64d;--shadow-card:0 2px 12px #0d3a8e12, 0 0 0 1px #0d3a8e0a;--shadow-card-hover:0 8px 28px #0d3a8e21, 0 0 0 1px #1e6fd61f;--header-height:64px;--content-max-width:1320px;--content-padding:var(--space-6);--card-gap:var(--space-5);--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--transition-fast:.12s var(--ease-out);--transition-base:.2s var(--ease-out);--transition-slow:.3s var(--ease-out);--transition-slower:.4s var(--ease-out)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;font-size:16px}body{font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--color-text-primary);background-color:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img,video{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}ul,ol{list-style:none}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--color-border-strong);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-text-muted)}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;border-radius:var(--radius-sm)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.visually-hidden{clip:rect(0,0,0,0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@keyframes fadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes pulse-ring{0%{opacity:.8;transform:scale(1)}to{opacity:0;transform:scale(1.5)}}.animate-fade-in-up{animation:fadeInUp .4s var(--ease-out) both}.animate-fade-in{animation:fadeIn .3s var(--ease-out) both}.animate-scale-in{animation:scaleIn .25s var(--ease-spring) both}.stagger>:first-child{animation-delay:0s}.stagger>:nth-child(2){animation-delay:60ms}.stagger>:nth-child(3){animation-delay:.12s}.stagger>:nth-child(4){animation-delay:.18s}.stagger>:nth-child(5){animation-delay:.24s}.stagger>:nth-child(6){animation-delay:.3s}.skeleton{background:linear-gradient(90deg, var(--color-border) 25%, var(--color-primary-50) 50%, var(--color-border) 75%);border-radius:var(--radius-md);background-size:200% 100%;animation:1.5s infinite shimmer}@media (max-width:640px){.hide-mobile{display:none!important}}@media (min-width:641px){.hide-desktop{display:none!important}}
