/* LiverCare AI — Forgot Your Password? (Doctor + Patient)
   Values in reference px (approved design scaled to a 720 px canvas). */

.dr-page { --card-w: 549; --ref-h: 640; }

.fp-card {
  padding: calc(150 * var(--au)) calc(47 * var(--au)) calc(63 * var(--au));
  text-align: center;
}

.fp-title { font-size: calc(36 * var(--au)); }

.fp-sub {
  margin-top: calc(16 * var(--au));
  font-size: calc(17 * var(--au));
  color: var(--sub);
}

.fp-form { margin-top: calc(50 * var(--au)); text-align: left; }

.fp-label { margin-bottom: calc(8 * var(--au)); font-size: calc(16 * var(--au)); }

.fp-field { --fh: 58; border-radius: calc(11 * var(--au)); }
.fp-field .dr-ico { width: calc(24 * var(--au)); height: calc(24 * var(--au)); margin-left: calc(18 * var(--au)); }
.fp-field input { font-size: calc(16.5 * var(--au)); padding-left: calc(20 * var(--au)); }

.fp-submit { margin-top: calc(32 * var(--au)); }

.fp-btn { height: calc(55 * var(--au)); font-size: calc(19 * var(--au)); font-weight: 600; border-radius: calc(11 * var(--au)); }

.fp-rule {
  display: block;
  height: 1px;
  margin-top: calc(34 * var(--au));
  background: var(--line);
}

.fp-back { margin-top: calc(36 * var(--au)); }

.fp-back__link {
  display: inline-flex;
  align-items: center;
  gap: calc(14 * var(--au));
  padding: calc(4 * var(--au)) calc(6 * var(--au));
  border-radius: calc(8 * var(--au));
  font-size: calc(17 * var(--au));
  font-weight: 600;
  color: var(--blue);
  text-decoration: none;
  transition: background-color 260ms var(--ease);
}

.fp-back__arrow {
  width: calc(21 * var(--au));
  height: calc(21 * var(--au));
  transition: transform 300ms var(--ease);
}

.fp-back__link:hover,
.fp-back__link:focus-visible { background: rgba(22, 112, 240, 0.07); }

.fp-back__link:hover .fp-back__arrow,
.fp-back__link:focus-visible .fp-back__arrow { transform: translateX(calc(-4 * var(--au))); }

.fp-back__link:focus-visible { outline: 2px solid rgba(22, 112, 240, 0.6); outline-offset: 2px; }

@media (max-width: 640px) {
  .fp-card { padding-top: 56px; padding-bottom: 40px; }
  .fp-title { font-size: 28px; }
  .fp-sub { font-size: 15px; }
  .fp-form { margin-top: 32px; }
}
