/* Forgot password pop-up: email, PIN, new password */
.pin-box{display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--accent-soft);color:var(--accent);border-radius:14px;padding:12px 14px 12px 18px;margin:0 0 6px}
.modal-card .pin-box .btn{width:auto;flex:none}
.pin-box b{font-family:"Bricolage Grotesque",sans-serif;font-size:1.85rem;letter-spacing:.28em;font-variant-numeric:tabular-nums}
#fpModal [data-fp]{flex:1;display:flex;flex-direction:column;min-height:0}
#fpModal [data-fp] form{flex:1;display:flex;flex-direction:column}
#fpModal [data-fp] form .btn{margin-top:auto}
#fpModal [data-fp="4"]{justify-content:center}
.fp-meta{display:flex;justify-content:space-between;align-items:center;color:var(--muted);font-size:.84rem;margin:0 0 18px}
.fp-meta .linkbtn{font-size:.84rem;padding:0}
.pin-inp{letter-spacing:.35em;font-variant-numeric:tabular-nums;font-weight:700;font-size:1.1rem}
/* Same look as the login box: green side with the steps, form on the right.
   Wide and short, one fixed size on every step; the page behind is blurred and an outside click
   does not close it (use × or Esc) */
#fpModal{background:rgba(8,14,18,.32);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
#fpModal .fp-card{max-width:780px;height:min(410px,calc(100vh - 32px));padding:0;display:grid;grid-template-columns:.85fr 1.15fr;overflow:hidden}
.fp-side{background:var(--accent);color:var(--accent-ink);padding:30px 32px;display:flex;flex-direction:column;justify-content:center}
.fp-side .brand{color:inherit;font-size:1.1rem}
.fp-side .brand-logo{width:36px;height:36px;border-radius:11px;box-shadow:0 0 0 2px rgba(255,255,255,.35)}
.fp-pitch{margin-top:24px}
.fp-side h3{font-size:1.5rem;font-weight:800;letter-spacing:-.01em;margin-bottom:16px}
.fp-list{list-style:none;padding:0;margin:0;display:grid;gap:12px}
.fp-list li{display:flex;align-items:center;gap:10px;font-size:.92rem;opacity:.7}
.fp-list li::before{content:attr(data-n);flex:none;width:24px;height:24px;border-radius:50%;border:1.5px solid currentColor;display:grid;place-items:center;font-size:.75rem;font-weight:700}
.fp-list li.on{opacity:1;font-weight:700}
.fp-list li.done{opacity:.9}
.fp-list li.done::before{content:"✓";background:var(--accent-ink);border-color:var(--accent-ink);color:var(--accent)}
.fp-main{position:relative;min-height:0;overflow:auto;padding:26px 28px 24px;display:flex;flex-direction:column}
.fp-main [data-fp]{flex:1;display:flex;flex-direction:column}
.fp-main .sub{margin-bottom:14px}
@media (max-width:700px){#fpModal .fp-card{grid-template-columns:1fr;height:min(420px,calc(100vh - 32px));max-width:420px}.fp-side{display:none}}
