:root{--tinta:#14161f;--suave:#545869;--acento:#243388;--fondo:#f7f7f4;--borde:#dcdcd6;--error:#a32d2d}
*{box-sizing:border-box}
body{margin:0;font:16px/1.6 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;color:var(--tinta);background:var(--fondo)}
.caja{max-width:34rem;margin:12vh auto;padding:2rem 1.5rem;background:#fff;border:1px solid var(--borde);border-radius:12px}
.marca{display:flex;align-items:center;gap:.5rem;font-weight:600;margin:0 0 1.5rem}
.sq{display:inline-flex;flex-direction:column;gap:2px}.sq i{display:block;width:14px;height:3px;background:var(--acento)}
h1{font-size:1.5rem;line-height:1.25;margin:0 0 .75rem}
p{color:var(--suave);margin:0 0 1rem}
.boton{display:inline-block;min-height:44px;padding:.65rem 1.25rem;border:0;border-radius:8px;background:var(--acento);color:#fff;font:inherit;font-weight:600;text-decoration:none;cursor:pointer}
.boton:focus-visible,a:focus-visible{outline:3px solid #f0b400;outline-offset:2px}
.errores{color:var(--error);padding-left:1.2rem}
.volver a{color:var(--acento)}
@media (max-width:480px){.caja{margin:0;min-height:100vh;border:0;border-radius:0}}

/* Casilla de las guías en la página de confirmación: grande y fácil de pulsar en móvil (objetivo de 24 px o más) */
.casilla { display: flex; gap: .6rem; align-items: flex-start; margin: 1.25rem 0; text-align: left; }
.casilla input { width: 1.4rem; height: 1.4rem; margin-top: .1rem; flex: none; accent-color: #243388; }
.casilla label { cursor: pointer; }

/* Datos enviados, en la página de confirmación */
.datos { display: grid; grid-template-columns: max-content 1fr; gap: .35rem 1rem; margin: 1rem 0; text-align: left; }
.datos dt { font-weight: 600; }
.datos dd { margin: 0; overflow-wrap: anywhere; }
