/* © 2026 KoreStock Ledger — un proyecto de Kitsótaro · Código disponible, todos los derechos reservados (ver LICENSE).
 * DASHBOARD y listas de movimientos (§17). */
/* Cada línea del ticket en su propio bloque (separa ventas de una misma factura) */
.linea-mov { display: flex; align-items: center; gap: var(--e-3); padding: var(--e-2) var(--e-3); border-radius: var(--r-md); background: var(--superficie-2); border-left: 3px solid var(--borde); }
.linea-mov + .linea-mov { margin-top: var(--e-2); }
.desplegable:has(.insignia.venta) .linea-mov { border-left-color: var(--venta); }
.desplegable:has(.insignia.entrada) .linea-mov { border-left-color: var(--primario); }
.datos-mov { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 2px var(--e-3); margin-top: 3px; font-size: var(--t-xs); color: var(--texto-2); }
.datos-mov.tenue { color: var(--texto-3); }
.dato-mov { display: flex; align-items: center; gap: 3px; min-width: 0; font-variant-numeric: tabular-nums; }
.dato-mov .icono { flex: none; }
.dato-mov > .recortar { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.linea-mov > .crece { min-width: 0; }
.linea-mov .t-fuerte { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.dato-mov .icono { width: 0.8rem; height: 0.8rem; opacity: 0.8; }
.cliente-mov { display: inline-flex; align-items: center; gap: 3px; margin-left: var(--e-1); padding: 0 var(--e-2); border-radius: var(--r-pildora); background: var(--primario-suave, var(--superficie-3)); color: var(--primario); font-weight: var(--peso-fuerte); }
.cliente-mov .icono { width: 0.8rem; height: 0.8rem; }
.linea-mov.anulada .t-fuerte, .linea-mov.anulada .cifra { text-decoration: line-through; color: var(--texto-3); }
.desplegable > summary .insignia { flex-shrink: 0; }
/* Movimientos: buscador + ajustes en una fila; panel de ajustes críticos en rojo (fase UI) */
.fila-busqueda { display: flex; align-items: center; gap: var(--e-2); }
.boton-ajustes-criticos { flex: none; border: 1px solid var(--borde); background: var(--superficie); }
.boton-ajustes-criticos[aria-expanded="true"] { background: var(--peligro); color: #fff; border-color: transparent; }
.ajustes-criticos { display: grid; gap: var(--e-3); padding: var(--e-3); border-radius: var(--r-lg); border: 1.5px solid var(--peligro); background: var(--peligro-suave); }
.ajustes-criticos-aviso { display: flex; gap: var(--e-2); align-items: flex-start; color: var(--peligro); font-size: var(--t-sm); }
.ajustes-criticos-aviso strong { color: var(--peligro); }
.ajustes-criticos .grupo-botones { display: grid; grid-template-columns: 1fr 1fr; gap: var(--e-2); }
.boton-critico { background: var(--superficie); color: var(--peligro); border: 1.5px solid var(--peligro); font-weight: var(--peso-fuerte); }
#dash-cuerpo > * + * { margin-top: var(--e-3); }
/* Encabezado de día en Movimientos */
.lista > .encabezado-dia .cifra { text-transform: none; letter-spacing: 0; color: var(--venta); }
/* Tarjeta «Hoy» (azul profundo, como la tarjeta de saldo de las referencias) */
.tarjeta-hoy { border-radius: var(--r-lg); padding: var(--e-4); background: var(--hoy-fondo); color: var(--sobre-hoy); box-shadow: var(--sombra-2); display: grid; gap: var(--e-4); }
.tarjeta-hoy-cifras { display: flex; justify-content: space-between; align-items: flex-start; gap: var(--e-3); }
.etiqueta-hoy { display: block; font-size: var(--t-xs); opacity: 0.85; text-transform: uppercase; letter-spacing: 0.04em; font-weight: var(--peso-fuerte); }
.cifra-hoy { display: block; font-size: var(--t-3xl); font-weight: var(--peso-titulo); letter-spacing: -0.02em; font-variant-numeric: tabular-nums; line-height: 1.15; }
.detalle-hoy { font-size: var(--t-xs); opacity: 0.85; }
.ganancia-hoy { text-align: right; } .ganancia-hoy strong { font-size: var(--t-lg); font-variant-numeric: tabular-nums; }
.accesos-hoy { display: grid; grid-template-columns: repeat(4, 1fr); gap: var(--e-2); }
.accesos-hoy button { display: grid; justify-items: center; gap: 4px; padding: var(--e-2) 0; border: 0; border-radius: var(--r-md); background: color-mix(in srgb, var(--sobre-hoy) 14%, transparent); color: inherit; font-size: var(--t-xs); font-weight: var(--peso-fuerte); cursor: pointer; }
.accesos-hoy button:hover { background: color-mix(in srgb, var(--sobre-hoy) 22%, transparent); }
/* Tipo de movimiento: interruptor con conteo; «Productos nuevos» aparte */
.fila-tipo-mov { display: flex; align-items: center; flex-wrap: wrap; gap: var(--e-2) var(--e-3); }
.segmentado-tipo button { display: inline-flex; align-items: center; gap: 5px; }
.segmentado-tipo button .icono { width: 0.9rem; height: 0.9rem; }
.conteo-seg { font-size: 0.6875rem; padding: 0 6px; border-radius: var(--r-pildora); background: color-mix(in srgb, currentColor 14%, transparent); font-variant-numeric: tabular-nums; }
.separador-vertical { width: 1px; align-self: stretch; min-height: 1.5rem; background: var(--borde); }
.chip-con-info { display: inline-flex; align-items: center; gap: 2px; }
/* Tarjeta de arriba con búsqueda: indica que cuenta lo filtrado */
.tarjeta-hoy.filtrada .tarjeta-hoy-cifras > div:first-child .etiqueta-hoy { display: flex; align-items: center; gap: 4px; }
.tarjeta-hoy.filtrada .etiqueta-hoy .icono { width: 0.8rem; height: 0.8rem; }
/* Resumen: tarjetas de cifras más grandes */
#dash-cuerpo .cifras { grid-template-columns: repeat(auto-fit, minmax(12rem, 1fr)); gap: var(--e-4); }
#dash-cuerpo .cifras .cifra-tarjeta { padding: var(--e-4) var(--e-5); min-height: 8.5rem; }
#dash-cuerpo .cifras .cifra-tarjeta .etiqueta { font-size: var(--t-xs); }
#dash-cuerpo .cifras .cifra-tarjeta .valor { font-size: var(--t-2xl); }
#dash-cuerpo .cifras .tarjeta-unidades { grid-column: 1 / -1; min-height: 0; }
@media (max-width: 600px) { .separador-vertical { display: none; } }
@media (max-width: 760px) { #dash-cuerpo .cifras .cifra-tarjeta:nth-child(3) { grid-column: 1 / -1; } }
@media (max-width: 600px) { .datos-mov { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
/* Casillas de la línea: botón sin aspecto de botón, dos renglones (empaque / unidad) */
button.dato-mov { border: 0; background: none; padding: 0; margin: 0; font: inherit; color: inherit; text-align: left; cursor: help; align-items: flex-start; }
button.dato-mov .icono { margin-top: 2px; }
.dato-lineas { display: flex; flex-direction: column; min-width: 0; line-height: 1.35; }
.dato-lineas .sub-dato { color: var(--texto-3); font-size: 0.6875rem; }
.datos-mov { row-gap: var(--e-1); }
/* Móvil: la línea del ticket en bloques separados (datos arriba; total y Anular abajo) */
@media (max-width: 600px) {
  .linea-mov { flex-wrap: wrap; gap: var(--e-2) var(--e-3); padding: var(--e-3); }
  .linea-mov > .crece { flex: 1 1 100%; padding-bottom: var(--e-2); border-bottom: 1px dashed var(--borde); }
  .linea-mov > .cifra { margin-left: auto; font-size: var(--t-sm); }
  .datos-mov { gap: var(--e-2) var(--e-4); margin-top: var(--e-2); }
  .datos-mov.tenue { margin-top: var(--e-2); }
  .linea-mov + .linea-mov { margin-top: var(--e-3); }
}
.desplegable:has(.insignia.ajuste) .linea-mov { border-left-color: var(--precaucion); }
