:root{--sand:#fdf8f2;--cream:#faf3eb;--terracotta:#c5532b;--terracotta-hover:#a84524;--terracotta-light:#c5532b14;--sage:#7a9b7e;--sage-light:#7a9b7e1f;--golden:#d4a56a;--golden-light:#d4a56a26;--brown-dark:#2c1810;--brown-mid:#5c4a3e;--brown-light:#8b7d72;--border:#e8ddd4;--border-light:#f0e8e0;--card:#fff;--card-hover:#faf5ef;--error:#d1554e;--error-bg:#d1554e14;--success:#6b8f5e;--success-bg:#6b8f5e1a;--shadow:0 1px 3px #2c18100f, 0 4px 12px #2c18100a;--shadow-lg:0 4px 16px #2c181014;--radius:10px;--radius-sm:6px;--font:"Inter", system-ui, -apple-system, sans-serif;--font-mono:"JetBrains Mono", "Fira Code", monospace}*{box-sizing:border-box}body{font-family:var(--font);background:var(--sand);color:var(--brown-dark);-webkit-font-smoothing:antialiased;margin:0;font-size:15px;line-height:1.5}h1,h2,h3,h4{color:var(--brown-dark);letter-spacing:-.02em;margin:0;font-weight:600}h2{font-size:1.35rem}h3{font-size:1.1rem}a{color:var(--terracotta);text-decoration:none}a:hover{text-decoration:underline}input,select,textarea{font-family:var(--font);font-size:.95rem}.btn{border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;border:none;justify-content:center;align-items:center;gap:.4rem;padding:.55rem 1.1rem;font-size:.85rem;font-weight:600;transition:all .15s;display:inline-flex}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--terracotta);color:#fff}.btn-primary:hover:not(:disabled){background:var(--terracotta-hover)}.btn-secondary{background:var(--sage);color:#fff}.btn-secondary:hover:not(:disabled){background:#68906c}.btn-ghost{color:var(--brown-mid);border:1px solid var(--border);background:0 0}.btn-ghost:hover:not(:disabled){background:var(--cream);border-color:var(--golden)}.btn-sm{padding:.35rem .75rem;font-size:.8rem}.error-msg{background:var(--error-bg);color:var(--error);border-radius:var(--radius-sm);border:1px solid #d1554e4d;margin-bottom:1rem;padding:.6rem .75rem;font-size:.85rem}.success-msg{background:var(--success-bg);color:var(--success);border-radius:var(--radius-sm);border:1px solid #6b8f5e4d;margin-bottom:1rem;padding:.6rem .75rem;font-size:.85rem}.field{margin-bottom:1rem}.field label{color:var(--brown-mid);margin-bottom:.35rem;font-size:.85rem;font-weight:500;display:block}.field input,.field select{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;color:var(--brown-dark);outline:none;padding:.6rem .75rem;font-size:.95rem;transition:border-color .2s}.field input:focus,.field select:focus{border-color:var(--terracotta);box-shadow:0 0 0 3px var(--terracotta-light)}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.25rem}.badge{text-transform:uppercase;letter-spacing:.04em;border-radius:4px;align-items:center;padding:.15rem .5rem;font-size:.7rem;font-weight:600;display:inline-flex}.badge-free{background:var(--sage-light);color:var(--sage)}.badge-starter{background:var(--golden-light);color:#8b7c3c}.badge-growth{background:var(--terracotta-light);color:var(--terracotta)}.badge-business{color:#fff;background:#1f3a2e}.progress-bar{background:var(--border-light);border-radius:3px;height:6px;overflow:hidden}.progress-bar .fill{border-radius:3px;height:100%;transition:width .3s}.progress-bar .fill.safe{background:var(--sage)}.progress-bar .fill.warn{background:var(--golden)}.progress-bar .fill.danger{background:var(--error)}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton{background:linear-gradient(90deg, var(--border-light) 25%, var(--cream) 50%, var(--border-light) 75%);border-radius:var(--radius-sm);background-size:200% 100%;animation:1.5s infinite shimmer}
