﻿.binas-empty-state,
.empty-state,
.rb-empty-state,
.rd-empty-state,
.org-empty-state,
.cd-empty-state,
.rel-empty-state,
.provider-empty-state,
.binas-panel-empty,
.form-placeholder,
.sitemap-empty {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: var(--es-padding);
    max-width: var(--es-max-width);
    margin: 0 auto;
}
.binas-empty-state-icon,
.empty-state-icon,
.binas-empty-state > i:first-child,
.empty-state > i:first-child,
.rb-empty-state > i:first-child,
.rd-empty-state > i:first-child,
.org-empty-state > i:first-child,
.cd-empty-state > i:first-child,
.rel-empty-state > i:first-child,
.provider-empty-state > i:first-child,
.binas-panel-empty > i:first-child,
.form-placeholder > i:first-child,
.sitemap-empty > i:first-child {
    font-size: var(--es-icon-size);
    color: var(--es-icon-color);
    opacity: var(--es-icon-opacity);
    margin-bottom: var(--es-gap);
    line-height: 1;
    display: block;
}
.binas-empty-state h5,
.empty-state h5,
.rb-empty-state h5,
.rd-empty-state h5,
.org-empty-state h5,
.cd-empty-state h5,
.provider-empty-state h5,
.binas-panel-empty h5 {
    font-size: var(--es-title-size);
    font-weight: var(--font-weight-semibold, 600);
    color: var(--outlook-text-secondary, var(--gray-700));
    margin: 0 0 var(--es-gap);
}
.binas-empty-state p,
.empty-state p,
.rb-empty-state p,
.rd-empty-state p,
.org-empty-state p,
.cd-empty-state p,
.provider-empty-state p,
.binas-panel-empty p,
.form-placeholder p,
.sitemap-empty p {
    font-size: var(--es-desc-size);
    color: var(--outlook-text-tertiary, var(--color-gray-500));
    line-height: 1.5;
    margin: 0 0 var(--spacing-3, 0.75rem);
    max-width: 400px;
}
.binas-empty-state .btn,
.empty-state .btn {
    margin-top: var(--spacing-2, 0.5rem);
}
@keyframes binasEmptyPulse {
    0%, 100% { opacity: 0.4; }
    50% { opacity: 0.15; }
}
.binas-empty-state--error,
.error-state {
    --es-icon-color: var(--color-red-500, var(--chakra-red-500));
    --es-icon-opacity: 0.6;
}
.binas-empty-state--error h5,
.error-state h5 {
    color: var(--color-red-700, var(--heatmap-low-fg));
}
@media (max-width: 575.98px) {
    .binas-empty-state,
    .empty-state,
    .rb-empty-state,
    .rd-empty-state,
    .org-empty-state,
    .cd-empty-state,
    .rel-empty-state,
    .provider-empty-state,
    .binas-panel-empty {
        --es-padding: var(--spacing-4, 1rem);
        --es-max-width: 100%;
    }
}


/* Restored from unused (classes found used in cshtml/JS) */
/* --es-* defaults apply to the full alias group so every consuming class
   (not just .binas-empty-state) is self-sufficient — required for the
   Canonical Shared Primitive Reuse consolidation (governance spec). */
.binas-empty-state,
.empty-state,
.rb-empty-state,
.rd-empty-state,
.org-empty-state,
.cd-empty-state,
.rel-empty-state,
.provider-empty-state,
.binas-panel-empty,
.form-placeholder,
.sitemap-empty {
    --es-icon-size: 2.5rem;
    --es-icon-opacity: 0.4;
    --es-icon-color: var(--outlook-text-tertiary, var(--color-gray-500));
    --es-title-size: var(--font-size-base, 1rem);
    --es-desc-size: var(--font-size-sm, 0.875rem);
    --es-padding: var(--spacing-6, 2rem) var(--spacing-4, 1rem);
    --es-gap: var(--spacing-2, 0.5rem);
    --es-max-width: 360px;
}

.binas-empty-state.compact {
    --es-icon-size: 1.8rem;
    --es-title-size: var(--font-size-sm, 0.875rem);
    --es-desc-size: var(--font-size-xs, 0.75rem);
    --es-padding: var(--spacing-4, 1rem) var(--spacing-3, 0.75rem);
    --es-max-width: 280px;
}

.binas-empty-state.large {
    --es-icon-size: 3.5rem;
    --es-title-size: var(--font-size-lg, 1.125rem);
    --es-desc-size: var(--font-size-base, 1rem);
    --es-padding: var(--spacing-8, 3rem) var(--spacing-6, 2rem);
    --es-max-width: 480px;
}

.binas-empty-state--loading > i:first-child {
    animation: binasEmptyPulse 1.5s ease-in-out infinite;
}

