/**
 * css/utilidades.css
 * Clases pequeñas de una sola responsabilidad (márgenes, anchos, alineación).
 * Reemplazan los estilos que antes se escribían dentro del HTML (atributo style="…"),
 * para que todo el diseño viva en archivos CSS.
 * Convención: u-<propiedad><valor>. Ejemplo: u-mb16 = margin-bottom de 16 px.
 */

/* Márgenes */
.u-m0 {
  margin: 0 !important;
}
.u-mt0 {
  margin-top: 0 !important;
}
.u-mt3 {
  margin-top: 3px;
}
.u-mt6 {
  margin-top: 6px !important;
}
.u-mt8 {
  margin-top: 8px;
}
.u-mt10 {
  margin-top: 10px !important;
}
.u-mt12 {
  margin-top: 12px;
}
.u-mt14 {
  margin-top: 14px;
}
.u-mt22 {
  margin-top: 22px;
}
.u-mb6 {
  margin-bottom: 6px;
}
.u-mb8 {
  margin-bottom: 8px;
}
.u-mb10 {
  margin-bottom: 10px;
}
.u-mb12 {
  margin-bottom: 12px;
}
.u-mb14 {
  margin-bottom: 14px;
}
.u-mb16 {
  margin-bottom: 16px;
}
.u-ml14 {
  margin-left: 14px;
}
.u-my8 {
  margin-top: 8px;
  margin-bottom: 8px;
}
.u-push-left {
  margin: 0 auto 0 0 !important;
}
/* Rellenos y bordes */
.u-p20 {
  padding: 20px;
}
.u-plain {
  padding: 0 !important;
  border: 0 !important;
}
.u-bt {
  border-top: 1px solid var(--line);
}
.u-compact {
  padding: 10px 12px;
}
/* Tamaños */
.u-grow {
  flex: 1;
}
.u-minw220 {
  min-width: 220px;
}
.u-maxw90 {
  max-width: 90px;
}
.u-maxw120 {
  max-width: 120px;
}
.u-maxw180 {
  max-width: 180px;
}
.u-maxw240 {
  max-width: 240px;
}
/* Visualización y alineación */
.u-block {
  display: block;
}
.u-inline {
  display: inline !important;
}
.u-inline-block {
  display: inline-block;
}
.u-start {
  justify-content: flex-start !important;
}
.u-wrap {
  flex-wrap: wrap;
}
.u-center {
  align-items: center;
}
.u-check-row {
  display: flex;
  gap: 8px;
  align-items: flex-start;
  font-weight: 400;
}
.u-check-row.u-center {
  align-items: center;
}
/* Texto */
.u-break {
  word-break: break-all;
}
.u-nodeco {
  text-decoration: none;
}
.u-white {
  color: #fff;
}
.u-neg {
  color: var(--bad);
}
.u-pos {
  color: var(--okfg);
}

.u-mt16 {
  margin-top: 16px;
}

/* Listas de precios (caja) y cierre */
.pl-bar{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:6px 0}
.pl-bar small{color:var(--mute);margin-right:4px}
.pl-grid{max-height:50vh}
.pl-grid .inp{min-width:90px;padding:6px 8px}
.cl-wrap{margin-bottom:8px}
