@import url("https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,300;0,9..40,400;0,9..40,500;0,9..40,600;1,9..40,400&family=DM+Serif+Display:ital@0;1&display=swap");:root{--green:#1d9e75;--green-light:#e1f5ee;--green-mid:#0f6e56;--green-dark:#085041;--coral:#d85a30;--surface:#fafaf8;--card:#fff;--border:rgba(0,0,0,.08);--border-mid:rgba(0,0,0,.14);--text:#1a1a18;--text-2:#5a5a56;--text-3:#9a9a94;--radius:10px;--radius-lg:14px;--shadow:0 1px 3px rgba(0,0,0,.06),0 1px 2px rgba(0,0,0,.04);--shadow-md:0 4px 12px rgba(0,0,0,.08),0 2px 4px rgba(0,0,0,.04)}*{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased}body{font-family:DM Sans,sans-serif;background:var(--surface);color:var(--text);line-height:1.6}a{color:inherit;text-decoration:none}button{cursor:pointer}button,input,select,textarea{font-family:DM Sans,sans-serif}.btn{display:inline-flex;align-items:center;gap:6px;padding:9px 18px;border-radius:var(--radius);font-size:14px;font-weight:500;border:1px solid var(--border-mid);background:var(--card);color:var(--text);cursor:pointer;transition:all .15s;white-space:nowrap}.btn:hover{background:#f0f0ee;border-color:rgba(0,0,0,.2)}.btn-primary{background:var(--green);color:#fff;border-color:var(--green)}.btn-primary:hover{background:var(--green-mid);border-color:var(--green-mid)}.btn-ghost{border-color:transparent;background:transparent}.btn-ghost:hover{background:rgba(0,0,0,.05);border-color:transparent}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow)}.badge{display:inline-flex;align-items:center;padding:3px 10px;border-radius:999px;font-size:11px;font-weight:600;letter-spacing:.02em;text-transform:uppercase}.badge-green{background:var(--green-light);color:var(--green-mid)}.badge-coral{background:#faece7;color:#993c1d}.badge-gray{background:#f1efe8;color:#5f5e5a}.input{width:100%;padding:10px 14px;border:1px solid var(--border-mid);border-radius:var(--radius);font-size:14px;background:var(--card);color:var(--text);transition:border-color .15s;outline:none}.input:focus{border-color:var(--green);box-shadow:0 0 0 3px rgba(29,158,117,.1)}.input::placeholder{color:var(--text-3)}select.input{cursor:pointer}.label{display:block;font-size:13px;font-weight:500;color:var(--text-2);margin-bottom:6px}.form-group{margin-bottom:18px}@keyframes fadeUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.fade-up{animation:fadeUp .3s ease both}