.saas-tenants-page .saas-stat-card {
  background: #fff;
  border-radius: 14px;
  border: 1px solid #e9ecef;
  border-left-width: 4px;
  min-height: 92px;
  padding: 18px;
  display: flex;
  align-items: center;
  gap: 14px;
  box-shadow: 0 8px 18px rgba(15, 23, 42, .04);
}

.saas-tenants-page .stat-icon {
  width: 42px;
  height: 42px;
  border-radius: 12px;
  background: #f8fafc;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
}

.saas-tenants-page .stat-label {
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: .04em;
  color: #6c757d;
  font-weight: 700;
}

.saas-tenants-page .stat-value {
  font-size: 26px;
  font-weight: 800;
  color: #0f172a;
  line-height: 1.1;
}

.saas-tenants-page .border-left-info { border-left-color: #17a2b8 !important; }
.saas-tenants-page .border-left-success { border-left-color: #28a745 !important; }
.saas-tenants-page .border-left-primary { border-left-color: #007bff !important; }
.saas-tenants-page .border-left-warning { border-left-color: #ffc107 !important; }

.saas-tenants-page code {
  color: #0f172a;
  background: #f1f5f9;
  padding: 2px 6px;
  border-radius: 6px;
}



/* TRAZION_SAAS_SWEETALERT_INICIO
   SweetAlert compacto del panel Superadministrador SaaS. */

.swal2-popup.trazion-swal-soporte,
.swal2-popup.trazion-swal-estado,
.trazion-swal-soporte,
.trazion-swal-estado {
    width: 390px !important;
    max-width: calc(100vw - 30px) !important;
    padding: 1.35rem 1.4rem 1.2rem !important;
    border-radius: 16px !important;
}

.trazion-swal-soporte .swal2-icon,
.trazion-swal-estado .swal2-icon {
    width: 54px !important;
    height: 54px !important;
    margin: 0 auto 0.7rem !important;
    font-size: 0.82rem !important;
}

.trazion-swal-soporte .swal2-title,
.trazion-swal-estado .swal2-title {
    margin: 0 0 0.45rem !important;
    padding: 0 !important;
    color: #0f172a !important;
    font-size: 1.22rem !important;
    line-height: 1.25 !important;
}

.trazion-swal-soporte .swal2-content,
.trazion-swal-estado .swal2-content {
    color: #475569 !important;
    font-size: 0.88rem !important;
}

.trazion-swal-soporte .swal2-textarea,
.trazion-swal-estado .swal2-textarea {
    width: 100% !important;
    min-height: 88px !important;
    margin: 0.75rem 0 0 !important;
    padding: 0.7rem 0.8rem !important;
    color: #1e293b !important;
    font-size: 0.88rem !important;
    line-height: 1.4 !important;
    border: 1px solid #cbd5e1 !important;
    border-radius: 8px !important;
    box-shadow: none !important;
}

.trazion-swal-soporte .swal2-textarea:focus,
.trazion-swal-estado .swal2-textarea:focus {
    border-color: #2563eb !important;
    box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.12) !important;
}

.trazion-swal-soporte .swal2-actions,
.trazion-swal-estado .swal2-actions {
    display: flex !important;
    justify-content: center !important;
    gap: 9px !important;
    width: 100% !important;
    margin: 1rem 0 0 !important;
}

.trazion-swal-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    min-width: 112px !important;
    max-width: 170px !important;
    min-height: 40px !important;
    margin: 0 !important;
    padding: 0.55rem 0.9rem !important;
    color: #ffffff !important;
    font-size: 0.86rem !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    white-space: normal !important;
    border: 1px solid transparent !important;
    border-radius: 8px !important;
    box-shadow: none !important;
}

.trazion-swal-btn-primary {
    background: #2563eb !important;
    border-color: #2563eb !important;
}

.trazion-swal-btn-secondary {
    color: #334155 !important;
    background: #ffffff !important;
    border-color: #cbd5e1 !important;
}

.trazion-swal-btn-danger {
    background: #dc3545 !important;
    border-color: #dc3545 !important;
}

.trazion-swal-btn-success {
    background: #16a34a !important;
    border-color: #16a34a !important;
}

.trazion-swal-btn:hover {
    filter: brightness(1.06) !important;
    transform: translateY(-1px) !important;
}

.trazion-swal-btn:focus {
    outline: 3px solid rgba(37, 99, 235, 0.18) !important;
    outline-offset: 2px !important;
}

@media (max-width: 480px) {
    .trazion-swal-soporte .swal2-actions,
    .trazion-swal-estado .swal2-actions {
        flex-direction: column-reverse !important;
    }

    .trazion-swal-btn {
        width: 100% !important;
        max-width: none !important;
    }
}

/* TRAZION_SAAS_SWEETALERT_FIN */

/* TRAZION_SAAS_ICONOS_ALERTA_INICIO
   Tamaño equilibrado para los iconos de soporte y estado. */

.trazion-swal-soporte .swal2-icon,
.trazion-swal-estado .swal2-icon {
    width: 66px !important;
    height: 66px !important;
    margin: 0 auto 0.8rem !important;
    font-size: 2rem !important;
    line-height: 66px !important;
}

/*
 * Compatibilidad con diferentes versiones de SweetAlert2.
 */
.trazion-swal-soporte .swal2-icon .swal2-icon-text,
.trazion-swal-estado .swal2-icon .swal2-icon-text,
.trazion-swal-soporte .swal2-icon .swal2-icon-content,
.trazion-swal-estado .swal2-icon .swal2-icon-content {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    height: 100% !important;
    font-size: 2rem !important;
    font-weight: 500 !important;
    line-height: 1 !important;
}

/* Ícono informativo de soporte */
.trazion-swal-soporte .swal2-icon.swal2-info {
    color: #0891b2 !important;
    border-color: rgba(8, 145, 178, 0.45) !important;
}

/* Advertencia de suspensión */
.trazion-swal-suspender .swal2-icon.swal2-warning {
    color: #d97706 !important;
    border-color: rgba(217, 119, 6, 0.48) !important;
}

/* Confirmación de activación */
.trazion-swal-activar .swal2-icon.swal2-question {
    color: #16a34a !important;
    border-color: rgba(22, 163, 74, 0.45) !important;
}

/* TRAZION_SAAS_ICONOS_ALERTA_FIN */
/* ==========================================================
   TRAZION_C7_1_BOXES_TABLES_START
   Panel SaaS — cajas y DataTable
   ========================================================== */

.saas-tenants-page .saas-stat-card.trz-metric-card {
    min-height: 104px;
    padding: 18px 20px;
    border: 1px solid var(--trz-border, #e2e8f0);
    border-left-width: 4px;
    border-radius: var(--trz-radius-lg, 16px);
    background: #fff;
    box-shadow: var(--trz-shadow-sm, 0 8px 24px rgba(15,23,42,.06));
}

.saas-tenants-page .saas-stat-card .trz-metric-card__icon {
    width: 44px;
    height: 44px;
    flex: 0 0 44px;
    border-radius: 12px;
    background: #f8fafc;
}

.saas-tenants-page .saas-stat-card .trz-metric-card__label {
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .04em;
    text-transform: uppercase;
    color: #64748b;
}

.saas-tenants-page .saas-stat-card .trz-metric-card__value {
    font-size: 28px;
    font-weight: 800;
    line-height: 1.05;
    color: var(--trazion-navy, #0f172a);
}

.saas-tenants-page .trz-card {
    border: 1px solid var(--trz-border, #e2e8f0);
    border-radius: var(--trz-radius-lg, 16px);
    box-shadow: var(--trz-shadow-sm, 0 8px 24px rgba(15,23,42,.06));
    overflow: hidden;
}

.saas-tenants-page .trz-card__header {
    padding: 16px 20px;
    border-bottom: 1px solid var(--trz-border, #e2e8f0);
    background: #fff;
}

.saas-tenants-page .trz-card__title {
    margin: 0;
    color: var(--trazion-navy, #0f172a);
    font-weight: 800;
}

.saas-tenants-page .trz-card__body {
    padding: 18px 20px 20px;
}

.saas-tenants-page .trz-table-shell {
    border: 1px solid var(--trz-border, #e2e8f0);
    border-radius: 14px;
    overflow: hidden;
    background: #fff;
}

.saas-tenants-page .trz-table-container {
    margin: 0;
}

.saas-tenants-page #tablaSaasTenants {
    margin-bottom: 0 !important;
}

.saas-tenants-page #tablaSaasTenants thead th {
    vertical-align: middle;
    white-space: nowrap;
}

.saas-tenants-page #tablaSaasTenants tbody td {
    vertical-align: middle;
}

@media (max-width: 767.98px) {

    .saas-tenants-page .saas-stat-card.trz-metric-card {
        min-height: 92px;
        padding: 14px;
    }

    .saas-tenants-page .trz-card__body {
        padding: 14px;
    }
}

/* ==========================================================
   TRAZION_C7_1_BOXES_TABLES_END
   ========================================================== */


/* ==========================================================
   TRAZION_C7_1B_TABLE_ACTIONS_START
   Panel SaaS — acciones DataTable normalizadas V2
   ========================================================== */

.saas-tenants-page #tablaSaasTenants .acciones-tabla {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    flex-wrap: wrap;
}

.saas-tenants-page #tablaSaasTenants .trz-action--icon {
    margin: 0;
}

.saas-tenants-page #tablaSaasTenants .btnEstadoTenant.trz-action--danger {
    color: #fff;
}

.saas-tenants-page #tablaSaasTenants .btnSoporteTenant:disabled {
    cursor: not-allowed;
    opacity: .48;
    filter: grayscale(.15);
}

/* ==========================================================
   TRAZION_C7_1B_TABLE_ACTIONS_END
   ========================================================== */
