/**
 * Utilidades transversales Kasalia (visibilidad, formularios inline, placeholders).
 * Sin valores de marca: los tokens viven en cada página o en tokens/.
 */

/* Visibilidad — preferir classList frente a style.display en JS */
.u-hidden {
  display: none !important;
}

.u-flex {
  display: flex !important;
}

.u-block {
  display: block !important;
}

.u-inline {
  display: inline !important;
}

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

/* Formularios en celdas de tabla / tarjetas */
.ag-form--inline {
  display: inline;
  margin: 0;
}

.ag-form--inline-flex {
  display: inline-flex;
  margin: 0;
  align-items: stretch;
}

/* Contenedor scroll horizontal de tablas */
.ag-table-scroll-wrap {
  overflow-x: auto;
  margin-bottom: 20px;
}

/* Placeholders y estados vacíos */
.ag-placeholder--borderless {
  border: none;
}

.ag-placeholder--thumb-empty {
  padding: 6px 10px;
  font-size: 11px;
  display: inline-block;
}

.ag-placeholder--thumb-fallback {
  padding: 6px 8px;
  font-size: 11px;
  display: inline-block;
}

.ag-placeholder--grid-span {
  grid-column: 1 / -1;
  padding: 16px;
  border: 1px dashed var(--ag-border);
  border-radius: 12px;
}

.ag-placeholder--left {
  text-align: left;
  padding: 12px;
}

.ag-placeholder-row {
  display: flex;
  justify-content: space-between;
  padding: 6px 0;
  border-bottom: 1px solid var(--ag-border);
}

/* Acciones destructivas (ya usan .btn-del; refuerzo visual) */
.ag-btn--danger-text {
  color: #b91c1c;
  border-color: #fecaca;
}

/* Badge premium en menús */
.badge-premium--end {
  float: right;
  font-size: 8px;
}

/* Enlace sin subrayado en tarjetas */
.ag-link-plain {
  text-decoration: none;
  line-height: 1.2;
}

.ag-sub--spaced {
  margin: 12px 0 0;
}

/* Vista cuadrícula oculta por defecto */
#ag-props-view-grid.u-hidden {
  display: none !important;
}

#ag-prop-detail-body.u-hidden {
  display: none !important;
}

#ag-notif-badge.u-hidden {
  display: none !important;
}
