/* presupuesto.css - Calculadora de presupuesto mensual. Se suma a estilos.css y calculadoras.css */
.moneda-fila { max-width: 260px; margin-bottom: 4px; }
.pres-grupo { margin-top: 4px; }
.pres-grupo .sub-grupo { color: var(--suave); font-size: .85rem; margin: 0 0 8px; }
.fila-pres { display: grid; grid-template-columns: minmax(0, 1fr) 130px 130px; gap: 8px; align-items: center; margin-bottom: 8px; }
.fila-pres .nom { font-size: .94rem; }
.fila-pres .nom-custom { display: flex; gap: 6px; }
.fila-pres .quitar { padding: 6px 10px; border-color: var(--linea); color: var(--suave); background: transparent; }
.agregar { margin-top: 4px; font-size: .9rem; padding: 6px 12px; }
.pres-resultado { font-weight: 700; }
.mini { display: block; height: 8px; border-radius: 4px; background: var(--acento); min-width: 2px; }
td.barra-celda { width: 28%; }
.mensaje { border: 1px solid var(--linea); border-left: 4px solid var(--acento); border-radius: 6px; padding: 12px 14px; margin: 14px 0; }
.mensaje p { margin: 0 0 6px; }
.mensaje p:last-child { margin-bottom: 0; }
.mensaje.sup { border-left-color: var(--ok); }
.mensaje.def { border-left-color: var(--mal); }
@media (max-width: 640px) {
  .fila-pres { grid-template-columns: 1fr 1fr; }
  .fila-pres .nom, .fila-pres .nom-custom { grid-column: 1 / -1; }
}
@media print { .agregar, .quitar { display: none; } }
.tarjetas .clave strong.ok { color: var(--ok); }
.tarjetas .clave strong.mal { color: var(--mal); }
