/* === Pastel maroon minimal theme (CSS-only patch) === */
:root{
  --bg:#faf8f9;
  --text:#2d2428;
  --muted:#7b5d66;
  --brand:#c97a8c;
  --brand-dark:#a15e70;
  --card:#fff;
  --border:#eadde1;
}

*{box-sizing:border-box}
html,body{height:100%;margin:0}
body{
  font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  color:var(--text);
  background:var(--bg);
  line-height:1.4;
}

/* Containers */
.hidden{display:none}
.topbar{
  position:sticky;top:0;
  display:flex;align-items:center;justify-content:space-between;
  padding:12px 16px;background:var(--card);border-bottom:1px solid var(--border);
}
.brand{font-weight:600;color:var(--brand-dark)}
.whoami{color:var(--muted)}
.container{max-width:520px;margin:24px auto;padding:0 16px}
.card{background:var(--card);border:1px solid var(--border);border-radius:16px;padding:24px;box-shadow:0 6px 24px rgba(0,0,0,.05)}

/* Labels */
label span{display:block;font-size:13px;color:var(--muted);margin-bottom:6px}

/* Inputs: text/number/select unified height; DO NOT affect radios/checkboxes */
input:not([type=radio]):not([type=checkbox]),
select{
  width:100%;padding:12px 14px;font-size:16px;
  border:1px solid var(--border);border-radius:12px;background:#fff;color:var(--text);
  height:48px;appearance:none;
}

/* Stack Description & Amount vertically */
.grid{display:flex;flex-direction:column;gap:16px}

/* Radios: keep native look; just space them nicely */
fieldset.modes{display:flex;flex-wrap:wrap;gap:20px;border:none;padding:0;margin:18px 0}
fieldset.modes label{display:flex;align-items:center;gap:8px}
fieldset.modes input[type=radio]{width:auto;height:auto}

/* Buttons */
.btn{border:0;padding:12px 18px;border-radius:12px;cursor:pointer;font-size:16px}
.btn.primary{background:var(--brand);color:#fff}
.btn.primary:hover{background:var(--brand-dark)}
.btn.link{background:transparent;color:var(--muted)}
.actions{display:flex;align-items:center;gap:12px;margin-top:18px}
.status{font-size:13px;color:var(--muted)}

/* Mobile tweaks (iPhone 13 width ~390px) */
@media (max-width: 600px){
  .container{padding:0 12px}
  .card{padding:20px 16px}
  input:not([type=radio]):not([type=checkbox]), select{font-size:15px;height:44px}
  .btn{width:100%}
  .actions{flex-direction:column;align-items:stretch}
}
