/* NUCLEO — lo comun a los cuatro modulos. GENERADO: no se edita a mano.
   Fuente: plugin/plantillas/nucleo.css.  Regla: aqui NO puede aparecer ninguna clase
   especifica de un modulo; el guardian de generar.js lo comprueba. */

.asc-form{margin:0 0 8px;scroll-margin-top:120px}
.asc-form .asc-f-card{border:1px solid #e6e8f0;border-radius:16px;padding:22px 18px 24px;background:#fff;box-shadow:0 2px 10px rgba(0,0,100,.06);max-width:520px;margin:0 auto}

/* --- pasos numerados: circulo con numero, etiqueta y barra (siniestro total y general) --- */
.asc-form .asc-f-steps{display:flex;align-items:flex-start;justify-content:center;margin:2px 0 20px}
.asc-form .asc-f-steps:empty{display:none}
.asc-form .asc-f-step{display:flex;flex-direction:column;align-items:center;width:92px}
.asc-form .asc-f-dot{width:34px;height:34px;border-radius:50%;border:2px solid #d8e0f5;color:#9aa3bf;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:15px;background:#fff;font-family:Roboto,Arial,sans-serif}
.asc-form .asc-f-step.on .asc-f-dot{border-color:#458BFF;color:#458BFF}
.asc-form .asc-f-step.done .asc-f-dot{background:#458BFF;border-color:#458BFF;color:#fff}
.asc-form .asc-f-lab{font-size:11px;color:#9aa3bf;margin-top:7px;text-align:center;line-height:1.25;font-family:Roboto,Arial,sans-serif}
.asc-form .asc-f-step.on .asc-f-lab{color:#458BFF;font-weight:500}
.asc-form .asc-f-bar{flex:0 0 34px;height:2px;background:#e2e6f2;margin-top:17px}
.asc-form .asc-f-bar.done{background:#458BFF}

/* --- pasos por puntos: la fila de bolitas mas el contador de texto (calculadora) --- */
.asc-form .asc-f-puntos{display:flex;align-items:center;justify-content:center;gap:7px;margin:2px 0 8px}
.asc-form .asc-f-punto{width:10px;height:10px;border-radius:50%;background:#dde5f7}
.asc-form .asc-f-punto.done{background:#458BFF}
.asc-form .asc-f-punto.on{background:#458BFF;box-shadow:0 0 0 4px rgba(69,139,255,.20)}
.asc-form .asc-f-cuenta{font-family:Roboto,Arial,sans-serif;font-size:12px;color:#9aa3bf;text-align:center;margin:0 0 16px;letter-spacing:.2px}
.asc-form .asc-f-cuenta:empty{display:none}

/* Donde se pinta el paso. No tiene aspecto propio a proposito: es el hueco, y todo lo
   que se ve dentro lo pone el modulo. Pero existe como regla porque el guardian exige
   que toda clase que imprime shortcodes.php este definida en algun CSS: una clase
   impresa y no definida es como se cuela una que nadie sabe de quien es. */
.asc-form .asc-f-zona{margin:0}

/* --- pregunta, ayuda y opciones --- */
.asc-form .asc-f-q{font-family:League Spartan,Roboto,Arial,sans-serif;font-weight:700;color:#000064;font-size:21px;line-height:1.25;text-align:center;margin:0 0 6px}
.asc-form .asc-f-ayuda{font-family:Roboto,Arial,sans-serif;font-size:13px;line-height:1.5;color:#6b7391;text-align:center;margin:0 auto 16px;max-width:440px}
.asc-form .asc-f-q + .asc-f-opts{margin-top:12px}
.asc-form .asc-f-opts{display:flex;flex-direction:column;gap:10px;max-width:400px;margin:0 auto}
.asc-form .asc-f-opt{display:block;width:100%;border:0;border-radius:10px;background:#E0ECFF;color:#12357F;font-family:Roboto,Arial,sans-serif;font-size:16px;font-weight:500;padding:15px 14px;cursor:pointer;text-align:center;line-height:1.3}
.asc-form .asc-f-opt:hover{background:#cfe1ff}
.asc-form .asc-f-opt.sel{background:#458BFF;color:#fff}

/* --- campos --- */
.asc-form .asc-f-campo{max-width:400px;margin:0 auto 14px;text-align:left}
.asc-form .asc-f-campo label{display:block}
.asc-form .asc-f-tit{display:block;font-family:Roboto,Arial,sans-serif;font-size:14px;font-weight:500;color:#000064;margin:0 0 6px}
.asc-form .asc-f-campo input[type=text],.asc-form .asc-f-campo input[type=tel],.asc-form .asc-f-campo input[type=email],.asc-form .asc-f-campo input[type=number]{width:100%;box-sizing:border-box;border:1px solid #d8e0f5;border-radius:10px;padding:13px 14px;font-family:Roboto,Arial,sans-serif;font-size:16px;color:#1a1a1a;background:#fff}
.asc-form .asc-f-campo input:focus{outline:0;border-color:#458BFF}
.asc-form .asc-f-campo.mal input{border-color:#D93025;background:#FFF7F6}
.asc-form .asc-f-err{display:none;color:#D93025;font-family:Roboto,Arial,sans-serif;font-size:13px;margin:6px 0 0}
.asc-form .asc-f-campo.mal .asc-f-err{display:block}

/* --- casilla legal --- */
.asc-form .asc-f-legal{max-width:400px;margin:4px auto 16px;display:flex;gap:10px;align-items:flex-start;text-align:left}
.asc-form .asc-f-legal input{margin:3px 0 0;width:18px;height:18px;flex:0 0 18px;accent-color:#458BFF}
.asc-form .asc-f-legal span{font-family:Roboto,Arial,sans-serif;font-size:13px;line-height:1.5;color:#4a5068}
.asc-form .asc-f-legal a{color:#458BFF}
.asc-form .asc-f-legal.mal input{outline:2px solid #D93025;outline-offset:1px}
.asc-form .asc-f-legal span.asc-f-err{color:#D93025}
.asc-form .asc-f-legal.mal .asc-f-err{display:block;margin-top:5px}

/* --- boton, captcha, aviso, salidas --- */
.asc-form .asc-f-enviar{display:block;width:100%;max-width:400px;margin:0 auto;border:0;border-radius:10px;background:#458BFF;color:#fff;font-family:Roboto,Arial,sans-serif;font-size:17px;font-weight:700;padding:16px;cursor:pointer}
.asc-form .asc-f-enviar:hover{background:#2f78f0}
.asc-form .asc-f-enviar[disabled]{background:#9dbcf5;cursor:default}
.asc-form .asc-f-captcha{max-width:400px;margin:0 auto 14px;display:flex;justify-content:center}
@media(max-width:409px){.asc-form .asc-f-captcha{transform:scale(.85);transform-origin:center top;height:70px}}
.asc-form .asc-f-volver{display:block;margin:16px auto 0;background:none;border:0;color:#9aa3bf;font-family:Roboto,Arial,sans-serif;font-size:14px;cursor:pointer;text-decoration:underline}
.asc-form .asc-f-salir{display:block;margin:12px auto 0;background:none;border:0;color:#6b7391;font-family:Roboto,Arial,sans-serif;font-size:14px;cursor:pointer;text-decoration:underline}
.asc-form .asc-f-aviso{display:none;max-width:400px;margin:14px auto 0;background:#FCE8E6;color:#B3261E;border-radius:10px;padding:12px 14px;font-family:Roboto,Arial,sans-serif;font-size:14px;line-height:1.5;text-align:center}
.asc-form .asc-f-aviso.ver{display:block}
.asc-form .asc-f-trampa{position:absolute;left:-9999px;top:-9999px;height:0;width:0;opacity:0}

/* --- nota legal al pie de la tarjeta: la pone el modulo que la necesite --- */
.asc-form .asc-f-pie{max-width:460px;margin:14px auto 0;font-family:Roboto,Arial,sans-serif;font-size:11px;line-height:1.5;color:#9aa3bf;text-align:center}
.asc-form .asc-f-pie:empty{display:none}

@media(min-width:600px){.asc-form .asc-f-card{padding:28px 32px 32px}.asc-form .asc-f-q{font-size:23px}}
