/* Libro de Reclamaciones: solo reglas propias del componente. El aspecto del formulario y de la constancia
   (clases .form-libro, .campo, .campo-error, .mensaje-error, .constancia, .btn...) lo da el CSS del sitio. */

/* Campo trampa antispam: fuera de pantalla, sin display:none. */
.campo-trampa { position: absolute !important; left: -9999px !important; top: auto; width: 1px; height: 1px; overflow: hidden; }

/* Espacio en blanco para las observaciones del proveedor en la hoja impresa. */
.constancia-espacio { min-height: 6rem; border: 1px solid #7A828A; margin-top: .5rem; }

/* Página mínima (solo si falta _marco.html). */
.libro-minimo { margin: 0; font-family: system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif; color: #0F1E2E; background: #fff; line-height: 1.5; }
.libro-minimo main { max-width: 44rem; margin: 0 auto; padding: 1rem; }
.libro-minimo-cabecera, .libro-minimo-pie { background: #0F1E2E; color: #fff; padding: 1rem; }
.libro-minimo-cabecera a { color: #fff; font-weight: 700; }
.libro-minimo-pie { font-size: .875rem; }
.libro-minimo .campo { margin: 0 0 1rem; }
.libro-minimo label, .libro-minimo legend { display: block; font-weight: 600; }
.libro-minimo .campo-casilla label, .libro-minimo .opcion label { display: inline; }
.libro-minimo input[type=text], .libro-minimo input[type=email], .libro-minimo input[type=tel], .libro-minimo select, .libro-minimo textarea { box-sizing: border-box; width: 100%; min-height: 48px; padding: 12px 14px; font: inherit; border: 1.5px solid #7A828A; border-radius: 10px; }
.libro-minimo fieldset { border: 1px solid #E2E5E8; border-radius: 12px; padding: 1rem; margin: 0 0 1.5rem; }
.libro-minimo .mensaje-error { color: #B42318; }
.libro-minimo .resumen-errores { border-left: 4px solid #B42318; background: #FDECEA; padding: .75rem 1rem; }
.libro-minimo .btn { display: inline-block; min-height: 48px; padding: 12px 20px; border-radius: 10px; font: inherit; font-weight: 700; border: 2px solid #0F1E2E; background: #fff; color: #0F1E2E; text-decoration: none; cursor: pointer; }
.libro-minimo .btn-principal { background: #D6A43A; border-color: #D6A43A; }
.libro-minimo .constancia table { border-collapse: collapse; width: 100%; }
.libro-minimo .constancia th, .libro-minimo .constancia td { text-align: left; vertical-align: top; padding: 6px 8px; border: 1px solid #E2E5E8; }
@media print { .libro-minimo-cabecera, .libro-minimo-pie, .acciones-libro { display: none; } }
