*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--brand: #215295;--brand-dark: #173c72;--brand-light: #2d6bc4;--brand-pale: #e8f0fc;--accent: #f5a623;--accent-green: #22c55e;--accent-red: #ef4444;--bg: #f4f6fb;--surface: #ffffff;--surface2: #f8faff;--border: #dce4f0;--text: #0f1c35;--text-muted: #6b7c99;--radius: 14px;--shadow: 0 2px 16px rgba(33,82,149,.1);--shadow-lg: 0 8px 40px rgba(33,82,149,.16)}html{font-size:16px}body{font-family:Sora,sans-serif;background:var(--bg);color:var(--text);line-height:1.6;min-height:100vh}a{color:var(--brand);text-decoration:none}button{font-family:inherit;cursor:pointer}textarea,input{font-family:inherit}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.mono{font-family:DM Mono,monospace}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes shimmer{0%{background-position:-400px 0}to{background-position:400px 0}}.animate-in{animation:fadeIn .4s ease both}.animate-up{animation:slideUp .5s ease both}
