/* © 2026 KoreStock Ledger — un proyecto de Kitsótaro · Código disponible, todos los derechos reservados (ver LICENSE).
 * APP — piezas comunes a todas las pantallas: encabezados de sección, opciones de modo,
 * documentos legales y cajas de resumen. */
.pantalla { display: grid; gap: var(--e-4); }
.encabezado-seccion { display: flex; align-items: center; justify-content: space-between; gap: var(--e-2); margin-top: var(--e-2); }
.encabezado-seccion h2 { font-size: var(--t-lg); }
.opciones-modo { display: grid; gap: var(--e-2); }
.opcion-modo { display: flex; align-items: flex-start; gap: var(--e-3); text-align: left; width: 100%; border-width: 1.5px; }
.opcion-modo > span { display: grid; gap: 2px; }
.opcion-modo .icono-lg { color: var(--primario); }
.opcion-modo[aria-pressed="true"] { border-color: var(--primario); background: var(--primario-suave); color: var(--sobre-primario-suave); }
.opcion-modo[aria-pressed="true"] .t-secundario { color: var(--sobre-primario-suave); }
.dialogo-documento { width: min(44rem, 100%); }
.documento-legal { max-height: 60dvh; overflow-y: auto; color: var(--texto-2); font-size: var(--t-sm); }
.documento-legal h1, .documento-legal h2, .documento-legal h3 { color: var(--texto); margin: var(--e-4) 0 var(--e-2); font-size: var(--t-lg); }
.documento-legal p, .documento-legal li { margin-bottom: var(--e-2); }
.documento-legal ul { list-style: disc; padding-left: var(--e-5); }
.fila-folio { display: flex; flex-wrap: wrap; align-items: center; gap: var(--e-2) var(--e-4); font-size: var(--t-sm); color: var(--texto-2); }
.fila-folio .control { min-height: var(--alto-control-sm); }
/* Los hijos de una rejilla no deben ensancharla (cintas y filas deslizables). */
.pantalla > *, .registro > *, .columna > *, .tarjeta > * { min-width: 0; }
.contenido { overflow-x: clip; }
/* Sin conexión (D27, solo lectura): lo que guarda se ve apagado; al tocarlo, un mensaje explica por qué. */
body.sin-conexion [data-accion="cobrar"], body.sin-conexion [data-accion="guardar-entrada"],
body.sin-conexion [data-accion^="anular"], body.sin-conexion [data-accion^="editar"],
body.sin-conexion .registro button[type="submit"], body.sin-conexion form button[type="submit"] { opacity: .45; }
/* Título de grupo entre tarjetas (Datos: «Protege tus datos», «Mantenimiento») */
.titulo-grupo { margin: var(--e-2) var(--e-1) 0; font-size: var(--t-xs); font-weight: var(--peso-fuerte); color: var(--texto-2); text-transform: uppercase; letter-spacing: 0.04em; }
.titulo-grupo + .tarjeta, .titulo-grupo ~ .tarjeta { margin-top: 0; }
/* Migración: unidad de conteo por producto */
.fila-unidad { display: grid; gap: var(--e-2); padding: var(--e-3) var(--e-4); border-top: 1px solid var(--borde); }
.fila-unidad .titulo { font-weight: var(--peso-fuerte); }
.fila-unidad .sub { font-size: var(--t-xs); color: var(--texto-2); }
.fila-unidad .segmentado-compra { justify-self: start; flex-wrap: wrap; }
.fila-unidad .control-n { max-width: 16rem; }
