:root{--color-primary:#0f2b46;--color-primary-light:#1a3c5e;--color-accent:#f97316;--color-accent-hover:#ea6c0a;--color-danger:#ef4444;--color-danger-bg:#fef2f2;--color-danger-border:#fecaca;--color-warning:#f59e0b;--color-warning-bg:#fffbeb;--color-warning-border:#fde68a;--color-success:#22c55e;--color-success-bg:#f0fdf4;--color-success-border:#bbf7d0;--color-bg:#f8fafc;--color-card:#fff;--color-border:#e2e8f0;--color-border-focus:#0f2b46;--color-text:#0f172a;--color-text-2:#64748b;--color-text-3:#94a3b8;--color-text-inverse:#fff;--color-risk-low:#22c55e;--color-risk-mid:#f59e0b;--color-risk-high:#ef4444;--font:"'DM Sans', 'Segoe UI', system-ui, sans-serif";--font-mono:"'JetBrains Mono', 'Fira Code', monospace";--r-sm:6px;--r-md:10px;--r-lg:12px;--r-xl:16px;--r-full:9999px;--shadow-xs:0 1px 2px #0000000a;--shadow-sm:0 1px 4px #0000000f;--shadow-md:0 4px 16px #00000014;--shadow-lg:0 8px 32px #0000001f;--touch:44px}*,:before,:after{box-sizing:border-box}body{background:var(--color-bg);color:var(--color-text);-webkit-font-smoothing:antialiased;margin:0;font-family:DM Sans,Segoe UI,system-ui,sans-serif}@keyframes fadeUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes shimmer{0%{background-position:-400px 0}to{background-position:400px 0}}@keyframes slideInRight{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:translate(0)}}@keyframes slideInUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.anim-fade-up{animation:.3s both fadeUp}.anim-fade-in{animation:.25s both fadeIn}.anim-slide-up{animation:.3s both slideInUp}.anim-scale-in{animation:.2s both scaleIn}.anim-fade-up:first-child{animation-delay:0s}.anim-fade-up:nth-child(2){animation-delay:40ms}.anim-fade-up:nth-child(3){animation-delay:80ms}.anim-fade-up:nth-child(4){animation-delay:.12s}.anim-fade-up:nth-child(5){animation-delay:.16s}.btn-press{transition:transform .1s,opacity .1s}.btn-press:active{opacity:.9;transform:scale(.97)}.card-hover{transition:box-shadow .2s,transform .2s}.card-hover:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.skeleton{border-radius:var(--r-md);background:linear-gradient(90deg,#e2e8f0 25%,#f1f5f9 50%,#e2e8f0 75%) 0 0/800px 100%;animation:1.4s infinite shimmer}
