body { background: #f5f7fb; }
.recovery-shell { width: min(520px, calc(100% - 2rem)); margin: 7vh auto; }
.recovery-card { background: #fff; border: 1px solid #dfe5ef; border-radius: 20px; padding: 2rem; box-shadow: 0 18px 50px rgba(30, 45, 75, .1); }
.recovery-card h1 { margin: 0 0 .75rem; }
.recovery-card p { color: #526078; line-height: 1.6; }
.recovery-form { display: grid; gap: 1rem; margin-top: 1.5rem; }
.recovery-form label { display: grid; gap: .45rem; font-weight: 700; }
.recovery-form input { border: 1px solid #c9d2e1; border-radius: 10px; padding: .85rem 1rem; font: inherit; }
.recovery-message { margin-top: 1rem; padding: .8rem 1rem; border-radius: 10px; background: #eef4ff; color: #23436c; }
.recovery-message--error { background: #fff0f0; color: #9b2525; }
.recovery-links { margin-top: 1.25rem; text-align: center; }
