@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@300;400;500;600;700&display=swap";@import "https://api.fontshare.com/v2/css?f[]=clash-display@700&display=swap";:root{--color-bg:#fdfcfa;--color-bg-alt:#f5f3ef;--color-ink:#1a1a18;--color-ink-mid:#3a3a35;--color-ink-light:#5c5c55;--color-vermillion:#d32e2f;--color-vermillion-hover:#b82728;--color-surface:#fff;--color-surface-alt:#f8f6f2;--color-border:#1a18181c;--color-border-strong:#1a181838;--color-vermillion-light:#d32e2f12;--color-vermillion-border:#d32e2f2e;--color-green:#16a34a;--color-green-light:#16a34a1a;--font-sans:"DM Sans", sans-serif;--font-display:"Clash Display", "DM Sans", sans-serif;--shadow-card:0 1px 3px #1a1a180f, 0 1px 2px #1a1a180a;--shadow-card-hover:0 4px 16px #1a1a181a, 0 2px 4px #1a1a180f;--radius-card:12px;--radius-pill:100px;--radius-input:8px;--transition-fast:.13s;--transition-normal:.15s;--transition-slow:.28s}*,:before,:after{box-sizing:border-box}html,body,#root{margin:0;padding:0}html{font-family:var(--font-sans);color:var(--color-ink);background:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px;line-height:1.6}body{background:var(--color-bg);min-height:100vh}a{color:inherit;text-decoration:none}button{cursor:pointer;color:inherit;background:0 0;border:none;padding:0;font-family:inherit}input,textarea{font-family:inherit}:focus-visible{outline:2px solid var(--color-vermillion);outline-offset:2px}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--color-border-strong);border-radius:4px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInScale{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}@keyframes slideInRight{0%{opacity:0;transform:translate(120%)}to{opacity:1;transform:translate(0)}}@keyframes dotPop{0%{transform:scale(0)}60%{transform:scale(1.15)}to{transform:scale(1)}}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translate(-6px)}40%{transform:translate(6px)}60%{transform:translate(-4px)}80%{transform:translate(4px)}}
