/* Patient PWA login refinement: presentation only, no authentication changes. */
body.patient-v3-page { background:linear-gradient(145deg,#f0f7ff,#eef7fa 55%,#f8fbff); }
.patient-v3-shell { max-width:1050px; min-height:610px; margin:clamp(12px,3vh,35px) auto; border-radius:26px; box-shadow:0 18px 55px rgba(20,64,120,.13); grid-template-columns:minmax(0,1fr) minmax(0,1fr); }
.patient-v3-visual { min-height:610px; background:linear-gradient(150deg,#104f99 0%,#1773b5 62%,#14a3bc 100%); padding:35px; }
.patient-v3-form-side { padding:34px 30px; }
.patient-v3-card { max-width:430px; width:100%; }
.patient-v3-heading h2 { letter-spacing:-.035em; }
.patient-v3-submit { box-shadow:0 10px 24px rgba(13,97,191,.22); }
.patient-v3-input:focus-within { box-shadow:0 0 0 3px rgba(33,127,223,.14); border-color:#3187d6; }
.hmz-patient-signup { margin-top:20px; display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:12px; padding:16px; border:1px solid #c9e0f5; background:linear-gradient(135deg,#eef7ff,#f4fbff); border-radius:16px; }
.hmz-patient-signup-copy { display:flex; flex-direction:column; gap:3px; min-width:160px; flex:1; }
.hmz-patient-signup-copy strong { color:#123a65; font-size:14px; }
.hmz-patient-signup-copy span { color:#59738d; font-size:12px; line-height:1.45; }
.hmz-patient-signup-link { display:inline-flex; align-items:center; justify-content:center; gap:8px; color:#fff !important; background:#146abd; border-radius:11px; padding:12px 15px; text-decoration:none !important; font-weight:700; font-size:13px; transition:background .15s ease; white-space:nowrap; }
.hmz-patient-signup-link:hover,.hmz-patient-signup-link:focus-visible { background:#0a4d96; }
.hmz-patient-email-verify { text-align:center; margin:13px 0 6px; color:#637a8f; font-size:12px; }
.hmz-patient-email-verify a { color:#1164b4; font-weight:700; margin-left:3px; }
@media(max-width:800px) {
 .patient-v3-shell { display:block; width:min(100% - 20px,520px); min-height:0; margin:10px auto 22px; border-radius:22px; }
 .patient-v3-visual { min-height:0; padding:15px 20px; background:linear-gradient(110deg,#155bac,#1686c2); }
 .patient-v3-visual-content,.patient-v3-visual-icon,.patient-v3-benefits { display:none !important; }
 .patient-v3-brand { margin:0; height:48px; }
 .patient-v3-form-side { padding:23px 22px 30px; }
 .patient-v3-mobile-brand { margin-bottom:10px; }
}
@media(max-width:430px) {
 .patient-v3-shell { width:100%; margin:0; border:0; border-radius:0; min-height:100dvh; }
 .patient-v3-visual { border-radius:0 0 18px 18px; }
 .patient-v3-form-side { padding:22px 18px 28px; }
 .patient-v3-heading h2 { font-size:1.65rem; }
 .hmz-patient-signup { flex-direction:column; align-items:stretch; }
 .hmz-patient-signup-link { width:100%; }
}
