/*
 * Tema do painel Cygnus: mais tela útil e mais cor.
 *
 * O painel não tem tema compilado (sem Vite no deploy), então isto é CSS puro, carregado
 * pelo render hook HEAD_END do AdminPanelProvider. Fica fora de @layer de propósito: o CSS do
 * Filament vive em @layer e CSS sem camada vence sem precisar de !important.
 * Cores só por variáveis do Filament (--primary-*, --gray-*, --success-*...), que já trocam
 * sozinhas entre claro e escuro.
 */

:root {
    /* Densidade global: o Filament mede tudo (padding, vão, altura de botão e campo) em
       múltiplos de --spacing e as fontes em --text-*. Reduzir aqui enxuga todas as telas
       de uma vez, sem mexer tela por tela. A caixa de conversas usa rem fixo e não muda. */
    --spacing: .215rem;
    --text-xs: .72rem;
    --text-sm: .8125rem;
    --text-base: .9rem;
    --text-lg: 1.02rem;
    --text-xl: 1.12rem;
    --text-2xl: 1.3rem;
    --text-3xl: 1.6rem;
    --sidebar-width: 15.5rem;
    --collapsed-sidebar-width: 4.25rem;
    --topbar-height: 3.25rem;
}

/* ── Respiro: margens e vãos menores ─────────────────────────────── */
.fi-main { padding-inline: .75rem; }
@media (min-width: 1024px) { .fi-main { padding-inline: 1rem; } }

.fi-page-header-main-ctn { padding-block: .75rem; row-gap: .75rem; }
.fi-page-content { row-gap: .75rem; }
.fi-page-header { row-gap: .25rem; }
.fi-header-heading { font-size: 1.4rem; line-height: 1.8rem; }
.fi-breadcrumbs { font-size: .8rem; }

.fi-sidebar-nav { padding: .75rem 1rem; row-gap: .75rem; }
.fi-sidebar-nav-groups { row-gap: .5rem; }
.fi-sidebar-group-btn { padding: .35rem .5rem; }
.fi-sidebar-item-btn { padding: .4rem .5rem; column-gap: .6rem; }
.fi-sidebar-item { row-gap: 0; }
.fi-sidebar-group-items { row-gap: .1rem; }

.fi-section:not(.fi-aside) > .fi-section-header { padding: .6rem 1rem; }
.fi-section:not(.fi-aside) > .fi-section-content-ctn > .fi-section-content { padding: 1rem; }
.fi-fo-field, .fi-sc { row-gap: .75rem; }

.fi-ta-header-cell { padding-block: .5rem; }
.fi-ta-cell :is(.fi-ta-text, .fi-ta-checkbox, .fi-ta-color, .fi-ta-icon, .fi-ta-image, .fi-ta-select, .fi-ta-text-input, .fi-ta-toggle, .fi-ta-checkbox-input):not(.fi-inline) { padding-block: .45rem; }
.fi-ta-filters-above-content-ctn, .fi-ta-filters { padding: .75rem 1rem; }
.fi-ta-header-toolbar, .fi-ta-header { padding: .5rem 1rem; }
.fi-ta-header-ctn { padding: .6rem 1rem; }

.fi-wi { row-gap: .75rem; }
.fi-wi-stats-overview-stat { padding: .9rem 1rem; }

/* ── Cor: contida. O dourado marca só o que é ativo, clicável ou principal ── */

/* Barra superior: fio dourado fino, sem faixa grossa */
.fi-topbar { box-shadow: inset 0 -2px 0 color-mix(in oklab, var(--primary-500) 70%, transparent); }

/* Menu: ícones e rótulos neutros; o item ativo é o único com cor */
.fi-sidebar-group-label { font-size: .7rem; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: var(--gray-500); }
.dark .fi-sidebar-group-label { color: var(--gray-500); }
.fi-sidebar-item-btn { border-radius: .6rem; }
.fi-sidebar-item-btn:hover { background: color-mix(in oklab, var(--gray-500) 12%, transparent); }
.fi-sidebar-item.fi-active > .fi-sidebar-item-btn { background: color-mix(in oklab, var(--primary-500) 13%, transparent); }
.fi-sidebar-item.fi-active > .fi-sidebar-item-btn > .fi-icon { color: var(--primary-500); }
.fi-sidebar-item.fi-active > .fi-sidebar-item-btn .fi-sidebar-item-label { color: var(--primary-600); font-weight: 600; }
.dark .fi-sidebar-item.fi-active > .fi-sidebar-item-btn .fi-sidebar-item-label { color: var(--primary-400); }

/* Seções: cartão limpo, só o título ganha um pouco de peso */
.fi-section:not(.fi-aside) > .fi-section-header { border-radius: .75rem .75rem 0 0; }
.fi-section-header-heading { font-weight: 600; }

/* Tabelas: cabeçalho neutro e mais baixo, realce suave ao passar o mouse */
.fi-ta-header-cell { background: color-mix(in oklab, var(--gray-500) 8%, transparent); font-weight: 600; }
.fi-ta-table > tbody > tr:hover { background: color-mix(in oklab, var(--primary-500) 6%, transparent); }

/* Abas ativas e cartões de número */
.fi-tabs-item.fi-active { background: color-mix(in oklab, var(--primary-500) 13%, transparent); }
.fi-wi-stats-overview-stat { border-left: 3px solid color-mix(in oklab, var(--primary-500) 80%, transparent); }
