/* =====================================================================================================
   mirodeo.com.ar · «Consultanos» (4/11/2026): el cuestionario. Desde el 05/11 se abre con «Escribinos», en el pie.
   Mismos colores y letras que la tarjeta del ingreso (variables --mr-* de ingreso.css, Hereford claro u oscuro según el equipo).
   Pensado para una mano en el celular: botones de 56 a 64 px, «Siguiente» abajo (donde llega el pulgar), alto contraste.
   Solo lo carga mirodeo.com.ar (la app del cliente no lo usa).
   ===================================================================================================== */

/* ---------------------------------------------------------------- el disparador: «Escribinos» en el pie (su estilo está en tranquera.css, .mr-escribinos) */
.mr-escribinos:focus-visible { outline: 3px solid #8fbcf5; outline-offset: 3px; }
.mr-escribinos svg { display: none; }

/* ---------------------------------------------------------------- el cuadro */
.mr-consulta {
  width: min(560px, calc(100vw - 32px)); max-width: none; max-height: min(760px, calc(100dvh - 40px)); height: auto;
  margin: auto; padding: 0; border: 0; border-radius: 20px; overflow: hidden;
  background: var(--mr-sup); color: var(--mr-tinta); box-shadow: 0 24px 70px rgba(0, 0, 0, .5);
  font-family: var(--mr-f-texto); font-size: 17px; line-height: 1.35; font-feature-settings: "lnum" 1;
}
.mr-consulta[open] { display: flex; flex-direction: column; }
.mr-consulta::backdrop { background: rgba(12, 8, 5, .76); }
.mr-consulta *, .mr-consulta *::before, .mr-consulta *::after { box-sizing: border-box; }
.mr-consulta :focus-visible { outline: 3px solid var(--mr-foco); outline-offset: 2px; }
.mr-consulta [hidden] { display: none !important; }

.mrc-cab { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 8px; padding: 10px 10px 6px; flex: none; }
.mrc-icono { min-width: 56px; min-height: 56px; display: inline-flex; align-items: center; justify-content: center; gap: 6px; padding: 0 12px;
  border: 0; border-radius: 12px; background: var(--mr-in-fijo); color: var(--mr-tinta); font: 700 1.02rem var(--mr-f-texto); cursor: pointer; justify-self: start; }
.mrc-icono svg { width: 24px; height: 24px; flex: none; }
.mrc-cerrar { grid-column: 3; justify-self: end; }
.mrc-paso { grid-column: 2; margin: 0; font: 600 1rem var(--mr-f-texto); color: var(--mr-tinta-s); white-space: nowrap; }
.mrc-barra { height: 6px; margin: 0 18px; border-radius: 3px; background: var(--mr-linea); overflow: hidden; flex: none; }
.mrc-barra i { display: block; height: 100%; width: 0; background: var(--mr-pri); border-radius: 3px; transition: width .25s ease; }

.mrc-cuerpo { flex: 1 1 auto; min-height: 0; overflow-y: auto; overscroll-behavior: contain; padding: 18px 22px 10px; }
.mrc-form { display: grid; gap: 14px; margin: 0; }
.mrc-form h2 { margin: 0; font: 700 clamp(1.6rem, 6.4vw, 2rem)/1.08 var(--mr-f-titulo); letter-spacing: .005em; text-transform: uppercase; color: var(--mr-tinta); }
.mrc-form h2:focus { outline: none; }
.mrc-form h2:focus-visible { outline: 3px solid var(--mr-foco); outline-offset: 4px; border-radius: 4px; }
.mrc-ayuda { margin: -6px 0 0; color: var(--mr-tinta-s); font-size: 1.02rem; }

.mrc-campo { display: grid; gap: 6px; }
.mrc-campo label { font-weight: 700; font-size: 1.08rem; color: var(--mr-tinta); }
.mrc-campo label small { font-weight: 400; font-size: .95rem; color: var(--mr-tinta-s); }
.mrc-campo input, .mrc-campo select, .mrc-campo textarea {
  width: 100%; min-height: 56px; padding: 0 16px; margin: 0; font: 600 1.15rem var(--mr-f-texto); color: var(--mr-tinta);
  background: var(--mr-in-fondo); border: 2px solid var(--mr-in-borde); border-radius: 12px;
}
.mrc-campo select { appearance: none; padding-right: 48px; cursor: pointer;
  background-image: linear-gradient(45deg, transparent 50%, currentColor 50%), linear-gradient(135deg, currentColor 50%, transparent 50%);
  background-position: calc(100% - 26px) 50%, calc(100% - 18px) 50%; background-size: 8px 8px; background-repeat: no-repeat; }
.mrc-campo select option { color: #1e1410; background: #fff; }
.mrc-campo textarea { min-height: 96px; padding: 12px 16px; font-weight: 400; line-height: 1.35; resize: vertical; }
.mrc-campo .mr-mal, .mrc-opciones[aria-invalid="true"] .mrc-op { border: 3px solid var(--mr-peligro); }
.mrc-campo-e { margin: 0; color: var(--mr-peligro); font-weight: 700; font-size: 1rem; }

/* opciones grandes: toda la franja se toca */
.mrc-opciones { display: grid; gap: 10px; margin: 0; padding: 0; border: 0; min-width: 0; }
.mrc-opciones legend { padding: 0; margin-bottom: 8px; font-weight: 700; font-size: 1.08rem; color: var(--mr-tinta); }
.mrc-op { position: relative; display: flex; align-items: center; gap: 14px; min-height: 60px; padding: 10px 16px; cursor: pointer;
  border: 2px solid var(--mr-in-borde); border-radius: 12px; background: var(--mr-in-fondo); color: var(--mr-tinta); font: 700 1.15rem/1.2 var(--mr-f-texto); }
.mrc-op input, .mrc-acepto input { position: absolute; opacity: 0; width: 1px; height: 1px; margin: 0; pointer-events: none; }
.mrc-marca { flex: none; width: 28px; height: 28px; border: 3px solid var(--mr-in-borde); border-radius: 50%; display: grid; place-items: center; background: var(--mr-in-fondo); }
.mrc-op input[type="checkbox"] + .mrc-marca, .mrc-acepto .mrc-marca { border-radius: 7px; }
.mrc-op:has(input:checked) { border-color: var(--mr-pri); background: color-mix(in srgb, var(--mr-pri) 12%, var(--mr-in-fondo)); }
.mrc-op input:checked + .mrc-marca, .mrc-acepto input:checked + .mrc-marca { border-color: var(--mr-pri); background: var(--mr-pri); }
.mrc-op input:checked + .mrc-marca::after, .mrc-acepto input:checked + .mrc-marca::after {
  content: ''; width: 12px; height: 7px; border: solid var(--mr-sobre-pri); border-width: 0 0 3px 3px; transform: translateY(-2px) rotate(-45deg); }
.mrc-op input[type="radio"]:checked + .mrc-marca::after { width: 10px; height: 10px; border: 0; border-radius: 50%; background: var(--mr-sobre-pri); transform: none; }
.mrc-op:has(input:focus-visible), .mrc-acepto label:has(input:focus-visible) { outline: 3px solid var(--mr-foco); outline-offset: 2px; }

.mrc-acepto { display: grid; gap: 4px; padding: 12px 14px; border-radius: 12px; background: var(--mr-in-fijo); }
.mrc-acepto.mrc-mal { outline: 3px solid var(--mr-peligro); }
.mrc-acepto label { position: relative; display: flex; align-items: flex-start; gap: 12px; min-height: 44px; font-weight: 700; font-size: 1.05rem; cursor: pointer; color: var(--mr-tinta); }
.mrc-acepto label .mrc-marca { margin-top: 1px; }
.mrc-acepto a { justify-self: start; min-height: 40px; display: inline-flex; align-items: center; margin-left: 40px; color: var(--mr-pri); font-weight: 700; text-underline-offset: 4px; }

.mrc-trampa { position: absolute; left: -10000px; top: auto; width: 1px; height: 1px; overflow: hidden; }

.mrc-pie { flex: none; display: grid; gap: 10px; padding: 10px 22px calc(18px + env(safe-area-inset-bottom)); border-top: 1px solid var(--mr-linea); background: var(--mr-sup); }
.mrc-seguir { min-height: 62px; font-size: 1.35rem; }
.mrc-error:empty { display: none; }
.mrc-turnstile:empty { display: none; }

.mrc-gracias { display: grid; justify-items: center; text-align: center; gap: 16px; padding: 24px 4px 12px; }
.mrc-gracias h2 { margin: 0; font: 700 clamp(1.45rem, 5.6vw, 1.75rem)/1.25 var(--mr-f-texto); color: var(--mr-tinta); text-wrap: balance; }
.mrc-gracias h2:focus { outline: none; }
.mrc-gracias-ico svg { width: 68px; height: 68px; color: var(--mr-pri); }
.mrc-gracias .mr-btn { max-width: 320px; }
.mrc-contacto { margin: 0; color: var(--mr-tinta); font-size: 1.05rem; line-height: 1.5; }
.mrc-contacto-enlace { display: inline-flex; align-items: center; min-height: 44px; color: var(--mr-pri); font-weight: 700; text-underline-offset: 4px; overflow-wrap: anywhere; }

/* ---------------------------------------------------------------- celular: el cuadro ocupa toda la pantalla */
@media (max-width: 640px) {
  .mr-consulta { width: 100vw; height: 100dvh; max-height: none; border-radius: 0; }
  .mrc-cuerpo { padding: 16px 16px 10px; }
  .mrc-pie { padding: 10px 16px calc(14px + env(safe-area-inset-bottom)); }
}
@media (prefers-reduced-motion: reduce) { .mrc-barra i { transition: none; } }

/* ---------------------------------------------------------------- aviso de privacidad (privacidad.html) */
.mr-legal { min-height: 100%; background: #f6f0e6; color: #1e1410; font: 400 17px/1.5 'Zilla Slab', Rockwell, Georgia, serif; }
.mr-legal main { max-width: 720px; margin: 0 auto; padding: 28px 18px 48px; }
.mr-legal h1 { font: 700 clamp(2rem, 7vw, 2.8rem)/1.05 'Oswald', 'Arial Narrow', Impact, sans-serif; text-transform: uppercase; margin: 8px 0 18px; }
.mr-legal h2 { font: 700 1.35rem/1.2 'Oswald', 'Arial Narrow', Impact, sans-serif; text-transform: uppercase; margin: 28px 0 8px; color: #8a3b1e; }
.mr-legal a { color: #8a3b1e; font-weight: 700; }
.mr-legal .mr-volver { display: inline-flex; min-height: 44px; align-items: center; }
@media (prefers-color-scheme: dark) {
  .mr-legal { background: #1c1411; color: #f6ede5; }
  .mr-legal h2, .mr-legal a { color: #eea585; }
}
