main {
  flex: 1;
  padding: 80px 0 100px;
  background:
    radial-gradient(1000px 420px at 80% -10%, rgba(123,182,217,0.30), transparent 60%),
    radial-gradient(800px 500px at -10% 30%, rgba(30,123,200,0.10), transparent 60%),
    linear-gradient(180deg, #FFFFFF 0%, #F4F8FC 100%);
  display: flex; align-items: center; justify-content: center;
}

.reset-card {
  width: 100%; max-width: 480px;
  background: #fff; border: 1px solid var(--rx-line);
  border-radius: var(--rx-radius-lg); padding: 48px 44px;
  box-shadow: var(--shadow-lg);
}
@media (max-width: 540px) { .reset-card { padding: 36px 24px; } }

.reset-card .eyebrow { font-family: 'JetBrains Mono', monospace; font-size: 11px; font-weight: 600; letter-spacing: 0.18em; text-transform: uppercase; color: var(--rx-primary); margin-bottom: 14px; display: block; }
.reset-card h1 { margin-bottom: 6px; }
.reset-card .sub { color: var(--rx-ink-soft); font-size: 16px; margin-bottom: 28px; }

/* Field — same pattern as Login and Account */
.field { margin-bottom: 16px; }
.field label { display: block; font-size: 13px; font-weight: 600; color: var(--rx-ink); margin-bottom: 6px; letter-spacing: .01em; }
.field .input { width: 100%; background: #fff; border: 1px solid var(--rx-line); border-radius: 12px; padding: 13px 16px; font-size: 16px; color: var(--rx-ink); transition: border-color .15s, box-shadow .15s; font-family: inherit; box-sizing: border-box; }
.field .input:focus { outline: none; border-color: var(--rx-primary); box-shadow: 0 0 0 4px rgba(30,123,200,0.12); }
.field .input::placeholder { color: var(--rx-muted); }

.submit { width: 100%; padding: 14px; font-size: 16px; }
.validation-msg { font-size: 13px; }
.form-footer { margin-top: 16px; text-align: center; font-size: 13px; }

.success-notice { background: #F0FDF4; border: 1px solid #BBF7D0; border-radius: var(--rx-radius); padding: 16px 20px; color: #166534; font-size: 15px; }
.auth-error { background: #FFF5F5; border: 1px solid #FECACA; border-radius: var(--rx-radius); padding: 12px 16px; color: #991B1B; font-size: 14px; margin-bottom: 16px; }
