/* Alta y edición de pacientes: lectura cómoda y controles estables. */
.patient-form-modal{max-height:calc(100dvh - 30px)}
.patient-form-modal .patient-form-head{min-height:118px;padding:24px 78px 24px 30px;background:#1d5a50}
.patient-form-modal .patient-form-head .eyebrow{font-size:10px;letter-spacing:.12em}
.patient-form-modal .patient-form-head h2{margin:6px 0 8px;font-size:26px;line-height:1.15}
.patient-form-modal .patient-form-head p{margin:0;font-size:13px!important;line-height:1.5!important}
.patient-form-modal .modal-close{position:absolute;top:16px;right:16px;z-index:20;display:grid;width:36px;height:36px;padding:0;place-items:center;border:1px solid rgba(255,255,255,.18);border-radius:50%;background:rgba(255,255,255,.13);color:#fff;font:500 23px/1 Arial,sans-serif;box-shadow:none;transform:none!important;overflow:visible}
.patient-form-modal .modal-close:hover,.patient-form-modal .modal-close:focus-visible{background:rgba(255,255,255,.24);border-color:rgba(255,255,255,.32);box-shadow:0 5px 14px rgba(5,35,29,.14);transform:none!important;outline:none}
.patient-create-form{padding:4px 30px 26px}
.patient-create-form>.form-grid{gap:16px 18px}
.patient-create-form .form-group{gap:7px}
.patient-create-form .form-group label{font-size:12px!important;line-height:1.35;color:#25332f}
.patient-create-form .form-group input,.patient-create-form .form-group select,.patient-create-form .form-group textarea{min-height:45px;padding:11px 13px;border-color:#d7e1dd;border-radius:10px;font-size:13px!important;line-height:1.4;background:#fff}
.patient-create-form .form-group textarea{min-height:88px}
.patient-create-form .field-help{font-size:10px!important;line-height:1.45;color:#6f7d78}
.patient-create-form .searchable-select-button{min-height:45px;padding:0 13px;font-size:13px}
.patient-create-form .searchable-select-panel{font-size:12px}
.patient-create-form .searchable-select-search input{min-height:38px;font-size:12px!important}
.patient-create-form .searchable-select-option{min-height:38px;padding:9px 11px;font-size:12px;line-height:1.35}
.patient-create-form .modal-actions{position:sticky;bottom:-26px;z-index:4;margin:18px -30px -26px;padding:14px 30px 18px;border-top:1px solid #dfe7e3;background:rgba(255,255,255,.97);box-shadow:0 -8px 20px rgba(23,60,54,.05)}

/* Autorregistro: consentimiento alineado y pie sin superponerse al botón. */
.auth-card.is-register{padding-bottom:38px}
.auth-card.is-register .auth-consent{display:grid!important;grid-template-columns:20px minmax(0,1fr);align-items:start!important;gap:10px!important;margin:2px 0 0;color:#515a54!important;font-size:12px!important;font-weight:550!important;line-height:1.5}
.auth-card.is-register .auth-consent input{width:18px!important;height:18px!important;margin:1px 0 0;padding:0;accent-color:#294735}
.auth-card.is-register .auth-submit{position:relative;z-index:1;flex:none;transform:none!important;transition:background-color .16s ease,box-shadow .16s ease,border-color .16s ease!important}
.auth-card.is-register .auth-submit:hover,.auth-card.is-register .auth-submit:focus-visible{background:#203e2a!important;box-shadow:0 8px 20px rgba(35,69,46,.18)!important;transform:none!important;outline:none}
.auth-card.is-register .auth-panel-footer{position:static;display:block;margin:22px 0 0;color:#858b85;font-size:9px;text-align:center}
.auth-card.is-register .auth-panel-footer button{display:none}
.auth-card.is-register .auth-mode-switch{margin-top:25px}

@media(max-width:760px){
  .patient-form-modal .patient-form-head{min-height:104px;padding:20px 62px 20px 18px}.patient-form-modal .patient-form-head h2{font-size:23px}.patient-form-modal .patient-form-head p{font-size:12px!important}.patient-form-modal .modal-close{top:13px;right:13px;width:34px;height:34px}
  .patient-create-form{padding:3px 14px 20px}.patient-create-form>.form-grid{gap:13px}.patient-create-form .modal-actions{bottom:-20px;margin:16px -14px -20px;padding:12px 14px 14px}
  .auth-card.is-register{padding-bottom:28px}.auth-card.is-register .auth-panel-footer{margin-top:18px}
}
