:root{--violet:#6c63ff;--violet-soft:#8b83ff;--violet-deep:#5249e0;--grass:#2ecc71;--gold:#ffc93c;--flame:#ff5630;--coral:#ff8a5b;--blue:#4c82f7;--teal:#22c7b8;--pink:#f45b9b;--grad-violet:linear-gradient(135deg, #6c63ff 0%, #8b83ff 100%);--grad-pink:linear-gradient(135deg, #f45b9b 0%, #ff8a5b 100%);--grad-blue:linear-gradient(135deg, #4c82f7 0%, #22c7b8 100%);--grad-teal:linear-gradient(135deg, #22c7b8 0%, #2ecc71 100%);--ease:cubic-bezier(.4, 0, .2, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--radius:16px;--rail:72px}:root,:root[data-theme=dark]{--bg:#0b1020;--surface:#161d33;--surface-2:#0f1528;--border:#293352;--ink:#e9ecf6;--ink-dim:#9aa3bf;--nav-active:#8b83ff2e;--track:#ffffff14}:root[data-theme=light]{--bg:#f6f5fb;--surface:#fff;--surface-2:#f1f0f7;--border:#e6e4f0;--ink:#16162a;--ink-dim:#6a6a86;--nav-active:#6c63ff1f;--track:#10162f0f}*{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;transition:background-color .24s var(--ease), color .24s var(--ease);margin:0;font-family:Plus Jakarta Sans,Inter,system-ui,sans-serif}h1,h2,h3,h4{letter-spacing:-.02em;margin:0}button{font-family:inherit}a{color:inherit;text-decoration:none}::selection{background:#6c63ff59}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);transition:background-color .24s var(--ease), border-color .24s var(--ease)}.iconbtn{width:38px;height:38px;color:var(--ink);cursor:pointer;transition:transform .18s var(--ease), background-color .18s var(--ease);background:0 0;border:none;border-radius:10px;place-items:center;display:grid}.iconbtn:hover{background:var(--track);transform:scale(1.1)}.pill{background:#ffffff2e;border-radius:999px;padding:3px 10px;font-size:12px;font-weight:700}@keyframes fadeInUp{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.enter{animation:.32s cubic-bezier(0,0,.2,1) both fadeInUp;animation-delay:var(--d,0s)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.recharts-surface{overflow:visible}.greet{display:none}@media (width>=900px){.greet{display:block}}
