:root { color-scheme: light; font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; color: #172421; background: #f7f5ed; }
* { box-sizing: border-box; }
body { margin: 0; min-height: 100vh; background: radial-gradient(circle at top left, #dff5ef, transparent 40%), #f7f5ed; }
.reset-shell { width: min(620px, calc(100% - 28px)); margin: 0 auto; padding: 32px 0 60px; }
.brand { display: inline-flex; align-items: center; gap: 10px; color: #145f55; text-decoration: none; margin-bottom: 22px; }
.brand span { display: grid; place-items: center; width: 42px; height: 42px; border-radius: 14px; background: #145f55; color: #fff; font-weight: 900; }
.reset-card { padding: clamp(24px, 6vw, 46px); border-radius: 32px; background: rgba(255,255,255,.94); box-shadow: 0 24px 70px rgba(25,70,62,.13); }
.eyebrow { margin: 0 0 8px; color: #198476; font-size: 13px; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
h1 { margin: 0; font-size: clamp(32px, 7vw, 48px); line-height: 1.02; }
.lead { color: #5c6c67; line-height: 1.55; }
form { display: grid; gap: 14px; margin-top: 24px; }
label { display: grid; gap: 7px; }
label span { color: #53645f; font-size: 13px; font-weight: 800; }
input { width: 100%; min-height: 54px; border: 1px solid #d9e4df; border-radius: 16px; padding: 12px 14px; font: inherit; }
input:focus { outline: 3px solid rgba(25,132,118,.16); border-color: #198476; }
button { min-height: 52px; border: 0; border-radius: 16px; padding: 12px 18px; background: #116c60; color: #fff; font: inherit; font-weight: 900; cursor: pointer; }
button:disabled { opacity: .62; cursor: wait; }
button.secondary { border: 1px solid #bdd7d0; background: #fff; color: #116c60; }
.status { min-height: 24px; color: #116c60; font-weight: 750; line-height: 1.45; }
.status.error { color: #b52c3b; }
.back-link { color: #116c60; font-weight: 800; }
@media (max-width: 520px) { .reset-shell { padding-top: 18px; } .reset-card { border-radius: 24px; } }
