/* Ajustes específicos de la página /calculadora-hormigon/.
   Todo lo genérico vive en base.css / components.css.

   Los patrones de "paso separado por línea sutil" y "jerarquía editorial"
   son deliberadamente los mismos que en calculadora-ladrillos.css (están
   duplicados, no compartidos): esta PR evita tocar esa hoja de estilos
   para no arriesgar la calculadora ya aprobada. Si el patrón se mantiene
   estable, vale la pena promoverlo a components.css en una limpieza futura. */

.paso:not(:first-of-type) {
  border-top: 1px solid var(--color-border);
  padding-top: var(--espacio-6);
}

/* Aviso de seguridad estructural: más discreto que un .aviso normal, sin
   perder legibilidad ni dejar de mostrarse. */
#aviso-estructural .aviso {
  padding: var(--espacio-2) var(--espacio-3);
  margin-top: var(--espacio-3);
  margin-bottom: 0;
  font-size: 0.85rem;
}

/* Tarjetas de "¿Qué vas a construir?" */
.icono-elemento {
  width: 100%;
  height: 34px;
  margin-bottom: var(--espacio-1);
}

.icono-elemento__cuerpo {
  fill: var(--color-surface-strong);
  stroke: var(--color-text-muted);
  stroke-width: 1.5;
}

.icono-elemento__arista {
  stroke: var(--color-text-muted);
  stroke-width: 1;
  opacity: 0.7;
}

.tarjeta-seleccion[aria-pressed='true'] .icono-elemento__cuerpo {
  stroke: var(--color-primary);
}

.tarjeta-seleccion[aria-pressed='true'] .icono-elemento__arista {
  stroke: var(--color-primary);
}

/* Esquema del volumen */
.esquema-volumen-wrapper {
  border: 1px solid var(--color-border);
  border-radius: var(--radio-md);
  background: var(--color-bg);
  padding: var(--espacio-3);
}

.esquema-volumen {
  width: 100%;
  height: auto;
}

.esquema-volumen__frente {
  fill: var(--color-primary-surface);
  stroke: var(--color-primary);
  stroke-width: 2;
}

.esquema-volumen__tapa {
  fill: var(--color-surface-strong);
  stroke: var(--color-primary);
  stroke-width: 1.5;
}

.esquema-volumen__lateral {
  fill: var(--color-bg);
  stroke: var(--color-primary);
  stroke-width: 1.5;
}

.esquema-volumen__cota {
  stroke: var(--color-text-muted);
  stroke-width: 1;
}

.esquema-volumen__medida {
  font-size: 11px;
  fill: var(--color-text-muted);
  font-family: var(--fuente-base);
}

@media (min-width: 720px) {
  .geometria-editor {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--espacio-4);
    align-items: start;
  }
}

.geometria-editor {
  display: grid;
  gap: var(--espacio-4);
}

.campos-elemento {
  display: grid;
  gap: var(--espacio-4);
}

.campo--angosto {
  max-width: 160px;
}

@media (min-width: 480px) {
  .campos-elemento {
    grid-template-columns: repeat(3, 1fr);
  }
}

/* Editorial: mismos bloques temáticos con línea sutil que en ladrillos. */
.editorial {
  border-top: 1px solid var(--color-border);
  margin-top: var(--espacio-7);
  padding-top: var(--espacio-7);
}

.editorial__etiqueta {
  margin: 0 0 var(--espacio-2);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--color-text-muted);
}

.editorial h2 {
  font-size: 1.2rem;
  margin-top: var(--espacio-6);
}

.editorial h2:first-of-type {
  margin-top: 0;
}

/* Esta página organiza su guía en H2 (en vez de un H2 + varios H3 como
   otras calculadoras): son secciones de igual jerarquía a efectos de SEO.
   Visualmente se separan igual que los H3, mismo patrón que ya usa
   calculadora-ladrillos.css (duplicado, no compartido). */
.editorial h2:not(:first-of-type) {
  padding-top: var(--espacio-5);
  border-top: 1px solid var(--color-border);
}

.editorial p {
  max-width: 65ch;
}

.editorial h3 {
  font-size: 1rem;
  max-width: 65ch;
  margin-top: var(--espacio-7);
  padding-top: var(--espacio-5);
  border-top: 1px solid var(--color-border);
}

.editorial h3:first-of-type {
  margin-top: var(--espacio-6);
  padding-top: 0;
  border-top: none;
}

.faq-item {
  max-width: 65ch;
  border-top: 1px solid var(--color-border);
}

.faq-item:first-of-type {
  border-top: none;
}

.faq-item summary {
  cursor: pointer;
  font-weight: 700;
  padding: var(--espacio-3) 0;
}

.faq-item p {
  padding-bottom: var(--espacio-3);
}

/* Modo Pro: bloques adicionales */
.campo-ayuda-inline {
  margin-top: var(--espacio-1);
}

.campo-ayuda-inline summary {
  cursor: pointer;
  color: var(--color-primary);
  font-weight: 600;
  font-size: 0.85rem;
  list-style: none;
}

.campo-ayuda-inline summary::-webkit-details-marker {
  display: none;
}

.campo-ayuda-inline p {
  margin-top: var(--espacio-2);
  font-size: 0.85rem;
}
