/**
 * Calisa Formularios — ajustes de estilo del formulario de nuevos clientes (form 2).
 *
 * Contexto del CSS del sitio, que explica varias reglas de este archivo:
 *  - Los inputs se estilan con ".gform_wrapper .gfield.calisa-text input[...]" con
 *    !important y alta especificidad. Para ganarle hay que usar el ID del campo.
 *  - El formulario NO usa el grid de 12 columnas de Gravity Forms: el sitio lo pasa a
 *    flex con ".gfield { flex: 0 0 calc(50% - 8px) }". Los anchos del editor no
 *    tienen efecto; se definen acá.
 *  - NUNCA usar display con !important sobre un .gfield: Gravity Forms oculta los
 *    campos condicionales con style="display:none" y lo pisaría.
 */

/* ---------- Avisos en vivo ---------- */
.calisa-aviso{color:#c02b0a;font-size:13px;line-height:1.4;margin-top:6px;display:block}
.calisa-aviso--ok{color:#1a7f37}

/* ---------- Número de calle bloqueado ("Sin número") ---------- */
#field_2_72 input.calisa-bloqueado,
.gform_wrapper .gfield.calisa-text input[type="text"].calisa-bloqueado{background-color:#EFEDE9!important;color:#8B8478!important;-webkit-text-fill-color:#8B8478!important;border-color:#C9C4BA!important;cursor:not-allowed;font-style:italic}

/* ---------- input url / number: el CSS del sitio solo cubre text, tel y email ---------- */
.gform_wrapper .gfield.calisa-text input[type="url"],
.gform_wrapper .gfield.calisa-text input[type="number"]{font-family:inherit!important;font-size:15px!important;font-weight:400!important;color:#1f2124!important;-webkit-text-fill-color:#1f2124!important;opacity:1!important;background-color:#fff!important;border:1px solid #69727d!important;border-radius:16px!important;padding:0 16px!important;width:100%!important;box-sizing:border-box!important}
.gform_wrapper .gfield.calisa-text input[type="url"]::placeholder,
.gform_wrapper .gfield.calisa-text input[type="number"]::placeholder{color:#a0a0a0!important;-webkit-text-fill-color:#a0a0a0!important;opacity:1!important}
.gform_wrapper .gfield.calisa-text input[type="url"]:focus,
.gform_wrapper .gfield.calisa-text input[type="number"]:focus{outline:none!important;border-color:#111!important}

/* ---------- Consentimiento: el checkbox no debe estirarse ---------- */
#field_2_60 .ginput_container_consent{display:flex!important;align-items:flex-start;gap:9px;width:100%!important}
#field_2_60 .ginput_container_consent input[type="checkbox"]{width:18px!important;min-width:18px!important;max-width:18px!important;height:18px!important;min-height:18px!important;flex:0 0 18px!important;margin:2px 0 0 0!important;padding:0!important;border-radius:4px!important;box-sizing:border-box!important;appearance:auto!important;-webkit-appearance:checkbox!important}
#field_2_60 .gfield_consent_label{display:inline!important;font-size:14px!important;line-height:1.5!important;margin:0!important;max-width:none!important}
.calisa-legal-open,#field_2_60 .calisa-legal-open{text-decoration:underline!important;font-weight:600!important;color:inherit!important;cursor:pointer}
.calisa-legal-open:hover{opacity:.7}

/* ---------- Casilla "Sin número" junto al campo Número ---------- */
#field_2_73{align-self:end}
#field_2_73 .ginput_container{padding-bottom:10px}
@media (min-width:641px){
	#field_2_72{flex:0 0 calc(20% - 8px)!important;max-width:calc(20% - 8px)!important}
	#field_2_73{flex:0 0 calc(30% - 8px)!important;max-width:calc(30% - 8px)!important}
	#field_2_73 .gform-field-label{white-space:nowrap;font-size:13.5px!important}
}
#field_2_73 .gfield_checkbox,#field_2_73 .gchoice{display:flex!important;align-items:center;gap:9px}
#field_2_73 input[type="checkbox"]{width:18px!important;min-width:18px!important;max-width:18px!important;height:18px!important;min-height:18px!important;flex:0 0 18px!important;margin:0!important;padding:0!important;border-radius:4px!important;box-sizing:border-box!important;appearance:auto!important;-webkit-appearance:checkbox!important}
#field_2_73 .gform-field-label{font-size:14px!important;line-height:1.4!important;margin:0!important;font-weight:400!important}
@media (max-width:640px){#field_2_73 .ginput_container{padding-bottom:0}}

/* ---------- Modal legal ---------- */
.calisa-modal[hidden]{display:none!important}
.calisa-modal{position:fixed;inset:0;z-index:999999;display:flex;align-items:center;justify-content:center;padding:20px}
.calisa-modal__backdrop{position:absolute;inset:0;background:rgba(0,0,0,.65)}
.calisa-modal__box{position:relative;background:#fff;max-width:560px;width:100%;max-height:82vh;overflow:auto;border-radius:18px;padding:32px 30px 26px;box-shadow:0 20px 60px rgba(0,0,0,.35)}
.calisa-modal__box h3{margin:0 0 14px;font-size:20px;line-height:1.25;color:#000}
.calisa-modal__box p{margin:0 0 12px;font-size:14px;line-height:1.6;color:#333}
.calisa-modal__box p.calisa-modal__legal{font-size:12px;color:#777;border-top:1px solid #eee;padding-top:12px;margin-top:16px}
.calisa-modal__box p.calisa-modal__legal a{color:#777;text-decoration:underline}
.calisa-modal .calisa-modal__x{position:absolute!important;top:8px!important;right:12px!important;border:0!important;background:none!important;background-color:transparent!important;box-shadow:none!important;font-size:30px!important;line-height:1!important;cursor:pointer;color:#999!important;padding:0!important;margin:0!important;width:36px!important;height:36px!important;min-width:0!important;min-height:0!important;border-radius:50%!important;font-weight:400!important;letter-spacing:normal!important}
.calisa-modal .calisa-modal__x:hover{color:#000!important;background:#f2f2f2!important}
.calisa-modal .calisa-modal__ok{margin-top:10px!important;background:#000!important;color:#fff!important;border:0!important;border-radius:30px!important;padding:11px 26px!important;font-size:14px!important;font-weight:600!important;cursor:pointer;width:auto!important}
.calisa-modal .calisa-modal__ok:hover{opacity:.85}
@media (max-width:600px){.calisa-modal__box{padding:26px 20px 22px;border-radius:14px}}
