.form-grid .whatsapp-choice{flex-direction:row;align-items:center;gap:9px;font-weight:700}.form-grid .whatsapp-choice input{width:18px;height:18px;margin:0}.password-control{position:relative}.password-control input{padding-right:94px}.password-toggle{position:absolute;right:8px;bottom:8px;min-height:34px;padding:5px 9px;border:1px solid var(--line);border-radius:7px;background:#fff;color:var(--blue);font-size:.8rem;font-weight:700}.login-roles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:24px}.login-role{padding:16px;border:1px solid var(--line);border-radius:14px;background:#fff}.login-role h2{margin:0 0 5px;color:var(--blue);font-size:1rem}.login-role p{margin:0;color:var(--muted);font-size:.9rem}.login-role.active{border:2px solid var(--blue);background:#f7faff}.login-role a{color:var(--blue);font-weight:700}.google-login{margin:0 0 1rem}.google-login[hidden]{display:none}.google-divider{display:flex;align-items:center;gap:.75rem;color:#667085;font-size:.875rem}.google-divider:before,.google-divider:after{content:'';height:1px;background:#d9e2ec;flex:1}.google-divider span{white-space:nowrap}.form{display:grid;gap:16px}.form label{display:flex;flex-direction:column;gap:6px;color:var(--blue);font-weight:700}.form input,.form select,.form textarea{width:100%;min-height:48px;padding:11px 12px;border:1px solid #bdc9d4;border-radius:10px;background:#fff;color:var(--texto);font:inherit}.form textarea{min-height:110px;resize:vertical}.form input:focus,.form select:focus,.form textarea:focus{border-color:var(--azul);outline:3px solid #b8ccef;outline-offset:1px}.form-status{min-height:24px;margin:0;color:var(--muted)}.form-status.error{color:#a23b3b}.form-status.ok{color:#316647}@media(max-width:600px){.login-roles{grid-template-columns:1fr}.password-toggle{min-height:38px}.form-grid .whatsapp-choice{min-height:40px}.form input,.form select,.form textarea{min-height:50px}}
.patient-profile-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:18px}.patient-profile-form label{display:flex;flex-direction:column;gap:6px;color:var(--blue);font-weight:700}.patient-profile-form input{width:100%;min-height:48px;padding:11px 12px;border:1px solid #bdc9d4;border-radius:10px;background:#fff;color:var(--texto);font:inherit}.patient-profile-form input[readonly]{background:#f1f4f7;color:var(--muted)}.patient-profile-form .field-wide{grid-column:1/-1}.patient-profile-form input:focus{border-color:var(--azul);outline:3px solid #b8ccef;outline-offset:1px}@media(max-width:760px){.patient-profile-form{grid-template-columns:1fr}.patient-profile-form .field-wide{grid-column:auto}}
.patient-health-profile-form{display:grid;gap:16px;margin-top:18px}.patient-health-profile-form label{display:flex;flex-direction:column;gap:6px;color:var(--blue);font-weight:700}.patient-health-profile-form textarea{width:100%;min-height:104px;padding:11px 12px;border:1px solid #bdc9d4;border-radius:10px;background:#fff;color:var(--texto);font:inherit;resize:vertical}.patient-health-profile-form textarea:focus{border-color:var(--azul);outline:3px solid #b8ccef;outline-offset:1px}.patient-health-profile-form small{color:var(--muted);font-weight:500}.patient-health-profile-form .health-consent{display:flex;flex-direction:row;align-items:flex-start;gap:9px;color:var(--texto);font-weight:600}.patient-health-profile-form .health-consent input{width:18px;height:18px;flex:0 0 auto;margin-top:2px}.latest-payment{display:grid;gap:4px;margin:16px 0;padding:16px;border:2px solid #b8d9c2;border-radius:14px;background:#f2faf4;color:var(--texto)}.latest-payment strong{color:#245a3b;font-size:1.05rem}.latest-payment-status{font-weight:800;color:#245a3b}.latest-payment small{color:var(--muted)}.latest-payment-item{border-color:#b8d9c2}.payment-confirmation-popup{position:fixed;inset:0;z-index:300;display:grid;place-items:center;padding:18px;background:rgba(23,35,59,.48)}.payment-confirmation-popup[hidden]{display:none}.payment-confirmation-popup__card{width:min(440px,100%);padding:24px;border-radius:18px;background:#fff;box-shadow:0 20px 60px rgba(23,35,59,.24)}.payment-confirmation-popup__card h2{margin:0 0 8px}.payment-confirmation-popup__card p:not(.eyebrow){margin:0 0 18px}@media(max-width:520px){.payment-confirmation-popup{padding:12px}.payment-confirmation-popup__card{padding:20px}}
