/* Password reset — builds on /apps/css/styles.css (same tokens, light + dark). */
.rcard{
  max-width:440px; margin:10px auto 0; background:var(--card); border:1px solid var(--line);
  border-radius:var(--radius); box-shadow:var(--shadow); padding:22px 22px 20px;
}
.rcard h1{ margin:0 0 6px; font-size:18px; letter-spacing:-.3px; }
.muted{ color:var(--ink-soft); font-size:13px; margin:0 0 16px; }
.pick{ display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-bottom:14px; }
.btn{
  font:700 14px var(--font); border-radius:9px; padding:11px 12px; cursor:pointer;
  border:1px solid var(--line); background:var(--bg); color:var(--ink);
}
.btn:hover{ border-color:var(--ink-faint); }
.btn:disabled{ opacity:.6; cursor:default; }
.btn.primary{ width:100%; background:var(--red); border-color:var(--red-dark); color:#fff; }
.btn.link{ background:none; border:none; color:var(--ink-soft); font-weight:600; font-size:13px; padding:8px; width:100%; }
.field{ display:block; margin-bottom:12px; }
.field span{ display:block; font-size:12px; font-weight:700; color:var(--ink-soft); margin-bottom:5px; }
.field input{
  width:100%; font:500 15px var(--font); padding:10px 12px; border-radius:9px;
  border:1px solid var(--line); background:var(--bg); color:var(--ink);
}
.field input:focus{ outline:2px solid var(--red); outline-offset:1px; }
.msg{ font-size:13px; border-radius:9px; padding:10px 12px; margin:0 0 14px; border:1px solid var(--line); }
.msg.ok{ border-color:#2e8b57; background:rgba(46,160,90,.10); }
.msg.bad{ border-color:var(--red-dark); background:var(--red-soft); }
.back{ text-align:center; margin-top:18px; }
.rcard a, .foot a{ color:var(--red); }
