/* ============================================================
   UTILITIES.CSS
   Utilidades, estados y aliases temporales legacy
   ============================================================ */

/* ---- 1. Display y posicionamiento ---- */
.u-flex,
.position-flex {
  display: flex;
}

.u-inline-flex {
  display: inline-flex;
}

.u-block {
  display: block;
}

.u-hidden {
  display: none !important;
}

.u-text-right,
.align-right {
  text-align: right;
}

.u-float-right,
.float-right {
  float: right;
}

/* ---- 2. Espaciado rapido ---- */
.u-mt-0 { margin-top: 0 !important; }
.u-mt-2 { margin-top: 8px !important; }
.u-mt-4 { margin-top: 16px !important; }
.u-mb-0 { margin-bottom: 0 !important; }
.u-mb-2 { margin-bottom: 8px !important; }
.u-mb-4 { margin-bottom: 16px !important; }
.u-p-0 { padding: 0 !important; }

/* ---- 3. Estados ---- */
.is-active,
.m-current {
  color: var(--color-primary);
}

.is-disabled,
.is-disabled * {
  cursor: not-allowed;
}

.is-success,
.m-success {
  color: var(--color-success);
}

.is-error,
.m-error {
  color: var(--color-error);
}

.is-warning,
.m-alert,
.m-print {
  color: var(--color-warning);
}

.is-info,
.m-info {
  color: var(--color-info);
}

/* ---- 4. Visibilidad responsive legacy ---- */
.u-hide-on-mobile {
  display: none;
}

@media handheld, only screen and (min-width: 768px) {
  .u-hide-on-mobile {
    display: block;
  }

  .u-hide-from-tablets,
  .u-hide-on-tablets {
    display: none;
  }
}

@media handheld, only screen and (min-width: 992px) {
  .u-hide-on-mobile,
  .u-hide-on-tablets {
    display: block;
  }

  .u-hide-on-desktop {
    display: none;
  }
}

@media only screen and (min-device-width: 768px) and (max-device-width: 1024px) {
  .u-hide-on-mobile.u-hide-on-tablets,
  .u-hide-on-tablets {
    display: none !important;
  }
}

/* ---- 5. Alias temporales legacy de nombres genericos ---- */
/* Mantener hasta limpiar plantillas antiguas que usan clases demasiado genericas. */
.legacy-box,
.box {
  display: block;
}

.legacy-item,
.item {
  display: block;
}

.legacy-image,
.img {
  display: block;
}

.legacy-copy,
.tipo {
  display: block;
}
