/* ===== SIGA RCCDF — Premium Theme ===== */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Playfair+Display:wght@400;600;700&display=swap');

:root {
    --rccdf-navy:       #1A2744;
    --rccdf-gold:       #C8A45C;
    --rccdf-light:      #F5F6F8;
    --rccdf-white:      #FFFFFF;
    --rccdf-gold-light: rgba(200,164,92,.15);
    --rccdf-navy-light: rgba(26,39,68,.08);
    --siga-primary:     var(--rccdf-navy);
    --siga-secondary:   var(--rccdf-gold);
}

/* ─── Base — Anti-aliasing + Tipografia ─── */
*, body {
    font-family: 'Inter', system-ui, sans-serif;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
}
body, .fi-body { line-height: 1.6; }

/* ─── Sidebar ─── */
.fi-sidebar {
    background: linear-gradient(180deg, var(--rccdf-navy) 0%, #0f1929 100%) !important;
    border-right: 1px solid rgba(200,164,92,.2) !important;
}
.fi-sidebar-header {
    background: transparent !important;
    border-bottom: 1px solid rgba(200,164,92,.2) !important;
    padding: 1.25rem 1rem !important;
}
.fi-brand-name {
    font-family: 'Playfair Display', serif !important;
    font-weight: 700 !important;
    color: var(--rccdf-gold) !important;
    font-size: 1.1rem !important;
    letter-spacing: .5px !important;
}
.fi-sidebar-nav-groups .fi-sidebar-group-label {
    color: rgba(200,164,92,.7) !important;
    font-size: .6875rem !important;
    font-weight: 600 !important;
    letter-spacing: .1em !important;
    text-transform: uppercase !important;
}
.fi-sidebar-item-button {
    color: rgba(255,255,255,.75) !important;
    border-radius: .5rem !important;
    transition: all .2s ease !important;
}
.fi-sidebar-item-button:hover,
.fi-sidebar-item-button.fi-active {
    background: rgba(200,164,92,.15) !important;
    color: var(--rccdf-gold) !important;
}
.fi-sidebar-item-button.fi-active {
    border-left: 3px solid var(--rccdf-gold) !important;
}

/* ─── Topbar ─── */
.fi-topbar {
    background: var(--rccdf-white) !important;
    border-bottom: 1px solid rgba(26,39,68,.08) !important;
    box-shadow: 0 1px 3px rgba(26,39,68,.06) !important;
}

/* ─── Cards & Sections ─── */
.fi-section, .fi-card {
    border-radius: .75rem !important;
    box-shadow: 0 1px 3px rgba(26,39,68,.08) !important;
    border: 1px solid rgba(26,39,68,.06) !important;
}

/* ─── Stats widgets ─── */
.fi-wi-stats-overview-stat {
    border-radius: .75rem !important;
    border: 1px solid rgba(26,39,68,.06) !important;
    background: var(--rccdf-white) !important;
    box-shadow: 0 1px 4px rgba(26,39,68,.08) !important;
    transition: transform .2s ease, box-shadow .2s ease !important;
}
.fi-wi-stats-overview-stat:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 4px 12px rgba(26,39,68,.12) !important;
}

/* ─── Buttons ─── */
.fi-btn-primary {
    background: linear-gradient(135deg, var(--rccdf-navy) 0%, #2a3f6e 100%) !important;
    border: none !important;
    box-shadow: 0 2px 4px rgba(26,39,68,.3) !important;
}
.fi-btn-primary:hover {
    background: linear-gradient(135deg, #0f1929 0%, var(--rccdf-navy) 100%) !important;
    box-shadow: 0 4px 8px rgba(26,39,68,.4) !important;
}

/* ─── Tables ─── */
.fi-ta-header-cell {
    background: var(--rccdf-light) !important;
    color: var(--rccdf-navy) !important;
    font-weight: 600 !important;
}
.fi-ta-row:hover td { background: var(--rccdf-gold-light) !important; }

/* ─── Page heading ─── */
.fi-header-heading {
    font-family: 'Playfair Display', serif !important;
    color: var(--rccdf-navy) !important;
    font-weight: 700 !important;
}

/* ─── Badge ─── */
.fi-badge {
    border-radius: 9999px !important;
    font-weight: 600 !important;
    font-size: .6875rem !important;
}

/* ═══════════════════════════════════════════════════
   CAMPOS EM MODO VISUALIZAÇÃO / DISABLED / READONLY
   ═══════════════════════════════════════════════════

   Causa raiz 1: Filament+Tailwind aplica
     disabled:[-webkit-text-fill-color:gray.500]
   que sobrepõe 'color'. Precisamos sobrescrever
   -webkit-text-fill-color explicitamente.

   Causa raiz 2: O gray scale customizado (#F5F6F8)
   gera variantes Tailwind muito claras, fazendo o
   texto de selects/pickers parecer "invisível" ou
   preto sobre fundo escuro em alguns browsers.
   ─────────────────────────────────────────────── */

/* Fundo explícito para todos os section/card */
.fi-section {
    background-color: #ffffff !important;
}
.fi-card {
    background-color: #ffffff !important;
}

/* TextInput / Textarea — input HTML desabilitado */
.fi-input:disabled,
.fi-input[readonly],
input.fi-input:disabled,
textarea.fi-input:disabled,
textarea.fi-input[readonly] {
    color: #111827 !important;
    -webkit-text-fill-color: #111827 !important;
    background-color: #f9fafb !important;
    opacity: 1 !important;
    border-color: #e5e7eb !important;
}

/* Wrapper do input desabilitado */
.fi-input-wrp:has(input:disabled),
.fi-input-wrp:has(input[readonly]),
.fi-input-wrp:has(textarea:disabled) {
    background-color: #f9fafb !important;
}

/* Select — Filament 3 usa .fi-select-input como wrapper div + input nativo oculto */
.fi-select-input,
.fi-select-input span,
.fi-fo-select-input {
    color: #111827 !important;
    -webkit-text-fill-color: #111827 !important;
}
/* Select nativo */
select.fi-native-select:disabled,
select.fi-native-select[disabled] {
    color: #111827 !important;
    -webkit-text-fill-color: #111827 !important;
    background-color: #f9fafb !important;
    opacity: 1 !important;
}
/* Select searchable (input oculto que mostra o label) */
.fi-select-input input:disabled,
.fi-select-input input[readonly],
[data-headlessui-state] input:disabled {
    color: #111827 !important;
    -webkit-text-fill-color: #111827 !important;
    opacity: 1 !important;
}
/* Texto dentro do dropdown desabilitado */
.fi-select-option,
.fi-select-input [role="option"],
.fi-input-wrp [role="combobox"] {
    color: #111827 !important;
}

/* DatePicker — input dentro do picker também herda regra acima,
   mas garantimos especificidade para o flatpickr/native */
.fi-fo-date-picker input:disabled,
.fi-fo-date-picker input[readonly],
input[data-flatpickr-input]:disabled,
input[data-flatpickr-input][readonly] {
    color: #111827 !important;
    -webkit-text-fill-color: #111827 !important;
    background-color: #f9fafb !important;
    opacity: 1 !important;
}

/* Toggle — o ícone booleano em ViewRecord fica legível por si,
   mas o label não pode ter opacidade reduzida */
.fi-fo-toggle .fi-fo-field-wrp-label {
    opacity: 1 !important;
    color: #374151 !important;
}

/* Labels de todos os campos */
label.fi-fo-field-wrp-label,
.fi-fo-field-wrp-label,
.fi-fo-field-wrapper label,
.fi-fo-component-ctn label {
    color: #374151 !important;
    opacity: 1 !important;
}

/* Hint text */
.fi-fo-field-wrp-hint { color: #6B7280 !important; }

/* Placeholder */
.fi-input::placeholder { color: #9CA3AF !important; }

/* Ícones das seções não devem ter opacidade reduzida */
.fi-section-header-icon { opacity: 1 !important; }

/* ─── Infolist (ViewRecord sem infolist() definido) ─── */
/* Filament converte o form em entries — garantimos legibilidade */
.fi-in-entry-wrp-content,
.fi-in-text-item,
.fi-in-entry-wrp p,
.fi-in-entry-wrp span {
    color: #111827 !important;
}
.fi-in-entry-wrp-label {
    color: #374151 !important;
}

/* ─── Tabs (Todos / Ativos / Inativos / Coordenadores) ─── */
/* Gray scale customisation makes inactive tab labels nearly transparent — force readable colors */
.fi-tabs-tab {
    color: #4B5563 !important;
}
.fi-tabs-tab span {
    color: #4B5563 !important;
}
.fi-tabs-tab[aria-selected="true"],
.fi-tabs-tab[aria-selected="true"] span {
    color: var(--rccdf-navy) !important;
    font-weight: 600 !important;
}
.fi-tabs-tab:hover,
.fi-tabs-tab:hover span {
    color: var(--rccdf-navy) !important;
}
/* Tab badge counters */
.fi-tabs-tab .fi-badge {
    background: rgba(26,39,68,.08) !important;
    color: var(--rccdf-navy) !important;
}
.fi-tabs-tab[aria-selected="true"] .fi-badge {
    background: var(--rccdf-navy) !important;
    color: white !important;
}

/* ─── Scrollbar ─── */
::-webkit-scrollbar { width: 6px; height: 6px; }
::-webkit-scrollbar-track { background: var(--rccdf-light); }
::-webkit-scrollbar-thumb { background: rgba(26,39,68,.3); border-radius: 3px; }
::-webkit-scrollbar-thumb:hover { background: var(--rccdf-gold); }


/* ════════════════════════════════════════════════
   LOGIN PAGE
   ════════════════════════════════════════════════ */

/* ─── Fundo da página de autenticação ─── */
.fi-simple-layout {
    background:
        radial-gradient(ellipse 80% 50% at 50% -10%, rgba(200,164,92,.12) 0%, transparent 60%),
        linear-gradient(160deg, #0c1628 0%, var(--siga-primary, #1A2744) 55%, #0a1525 100%) !important;
    min-height: 100vh;
}

/* ─── Container principal do card ─── */
.fi-simple-main {
    background: transparent !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    max-width: 440px !important;
    padding: 0 !important;
}

/* ─── Card de login ─── */
.siga-login-card {
    background: var(--rccdf-white);
    border-radius: 16px;
    overflow: hidden;
    box-shadow:
        0 25px 50px rgba(0,0,0,.35),
        0 8px 20px rgba(0,0,0,.2),
        0 0 0 1px rgba(255,255,255,.05);
    width: 100%;
    animation: siga-card-enter .4s cubic-bezier(.16,1,.3,1) both;
}

@keyframes siga-card-enter {
    from { opacity: 0; transform: translateY(24px) scale(.97); }
    to   { opacity: 1; transform: translateY(0) scale(1); }
}

/* ─── Cabeçalho do card (fundo escuro) ─── */
.siga-login-header {
    position: relative;
    background: linear-gradient(135deg, #0c1628 0%, var(--siga-primary, #1A2744) 100%);
    padding: 2.5rem 2rem 2rem;
    text-align: center;
    overflow: hidden;
}

/* Círculos decorativos de fundo */
.siga-login-header-bg {
    position: absolute;
    inset: 0;
    pointer-events: none;
}
.siga-login-header-circle {
    position: absolute;
    border-radius: 50%;
    border: 1px solid rgba(200,164,92,.15);
}
.siga-login-header-circle--1 {
    width: 200px; height: 200px;
    top: -80px; right: -60px;
}
.siga-login-header-circle--2 {
    width: 130px; height: 130px;
    bottom: -50px; left: -30px;
    border-color: rgba(255,255,255,.06);
}

/* ─── Logo ─── */
.siga-login-logo-wrap {
    position: relative;
    display: flex;
    justify-content: center;
    margin-bottom: 1rem;
}
.siga-login-logo-img {
    max-height: 72px;
    max-width: 200px;
    object-fit: contain;
    filter: drop-shadow(0 4px 12px rgba(0,0,0,.3));
}
.siga-login-logo-icon {
    width: 72px;
    height: 72px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--siga-secondary, #C8A45C), #a87c3a);
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    box-shadow: 0 4px 16px rgba(200,164,92,.4);
}
.siga-login-logo-icon svg { width: 36px; height: 36px; }

/* ─── Nome e subtítulo ─── */
.siga-login-brand-name {
    font-family: 'Playfair Display', serif;
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--siga-secondary, #C8A45C);
    margin: 0 0 .25rem;
    letter-spacing: .5px;
    line-height: 1.2;
}
.siga-login-brand-subtitle {
    font-size: .8125rem;
    color: rgba(255,255,255,.6);
    margin: 0;
    letter-spacing: .025em;
}

/* ─── Corpo (área branca) ─── */
.siga-login-body {
    padding: 2rem 2rem 1.5rem;
    background: white;
}

/* ─── Título do formulário ─── */
.siga-login-form-title {
    font-size: 1.125rem;
    font-weight: 600;
    color: var(--siga-primary, #1A2744);
    margin: 0 0 1.5rem;
    padding-bottom: .875rem;
    border-bottom: 2px solid #f1f5f9;
    position: relative;
}
.siga-login-form-title::after {
    content: '';
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 2.5rem;
    height: 2px;
    background: var(--siga-secondary, #C8A45C);
    border-radius: 2px;
}

/* ─── Campos do formulário ─── */
.siga-login-form-fields {
    margin-bottom: .25rem;
}

/* Campos Filament — aumenta height mínimo e melhora bordas */
.siga-login-body .fi-input-wrapper {
    min-height: 44px !important;
}
.siga-login-body .fi-input {
    min-height: 44px !important;
    font-size: .9375rem !important;
    border-color: #e2e8f0 !important;
    border-radius: 8px !important;
    transition: border-color .2s, box-shadow .2s !important;
}
.siga-login-body .fi-input:focus {
    border-color: var(--siga-primary, #1A2744) !important;
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--siga-primary, #1A2744) 12%, transparent) !important;
    outline: none !important;
}
.siga-login-body .fi-fo-field-wrapper-label { font-weight: 500 !important; }

/* ─── Botão Entrar ─── */
.siga-login-actions {
    margin-top: 1.25rem;
}
.siga-login-actions .fi-btn {
    min-height: 46px !important;
    font-size: 1rem !important;
    font-weight: 600 !important;
    letter-spacing: .025em !important;
    border-radius: 10px !important;
    background: linear-gradient(135deg, var(--siga-primary, #1A2744) 0%, #2a3f6e 100%) !important;
    box-shadow: 0 4px 14px rgba(26,39,68,.35) !important;
    transition: transform .15s, box-shadow .15s !important;
}
.siga-login-actions .fi-btn:hover {
    transform: translateY(-1px) !important;
    box-shadow: 0 6px 20px rgba(26,39,68,.45) !important;
}
.siga-login-actions .fi-btn:active {
    transform: translateY(0) !important;
    box-shadow: 0 2px 8px rgba(26,39,68,.3) !important;
}

/* ─── Link "Esqueceu sua senha" ─── */
.siga-login-forgot {
    text-align: center;
    margin-top: 1.125rem;
}
.siga-login-forgot-link {
    font-size: .875rem;
    color: var(--siga-primary, #1A2744);
    text-decoration: none;
    font-weight: 500;
    opacity: .75;
    transition: opacity .2s, color .2s;
}
.siga-login-forgot-link:hover {
    opacity: 1;
    color: var(--siga-secondary, #C8A45C);
    text-decoration: underline;
}

/* ─── Rodapé ─── */
.siga-login-footer {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: .375rem;
    margin-top: 1.5rem;
    padding-top: 1.25rem;
    border-top: 1px solid #f1f5f9;
    font-size: .75rem;
    color: #94a3b8;
}
.siga-login-footer-sep { opacity: .5; }

/* ─── Mobile ─── */
@media (max-width: 520px) {
    .fi-simple-main-ctn { padding: .75rem !important; }
    .siga-login-header  { padding: 2rem 1.25rem 1.5rem; }
    .siga-login-body    { padding: 1.5rem 1.25rem 1.25rem; }
    .siga-login-brand-name { font-size: 1.25rem; }
    .siga-login-logo-icon  { width: 60px; height: 60px; }
    .siga-login-logo-icon svg { width: 28px; height: 28px; }
}


/* ════════════════════════════════════════════════
   PÁGINA DE PERSONALIZAÇÃO
   ════════════════════════════════════════════════ */

.siga-preview-bar {
    display: flex;
    align-items: center;
    gap: .75rem;
    background: white;
    border: 1px solid rgba(26,39,68,.08);
    border-radius: .75rem;
    padding: .875rem 1.25rem;
    box-shadow: 0 1px 3px rgba(26,39,68,.06);
    margin-bottom: 1.5rem;
    flex-wrap: wrap;
}
.siga-preview-swatch {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    border: 2px solid white;
    box-shadow: 0 1px 4px rgba(0,0,0,.2);
    flex-shrink: 0;
}
.siga-preview-label {
    font-size: .875rem;
    color: #374151;
    flex: 1;
}
.siga-preview-badge {
    font-size: .6875rem;
    font-weight: 600;
    padding: .25rem .625rem;
    border-radius: 9999px;
    background: rgba(26,39,68,.08);
    color: var(--rccdf-navy);
    letter-spacing: .04em;
    text-transform: uppercase;
}


/* ════════════════════════════════════════════════════════════
   WCAG AA — CONTRASTE E LEGIBILIDADE GLOBAL
   Corrige todos os textos com baixo contraste em fundos claros
   ════════════════════════════════════════════════════════════ */

/* ── 1. STATS OVERVIEW WIDGET ─────────────────────────────── */

/* Título do card (ex: "Total de Servos") */
.fi-wi-stats-overview-stat-label,
[class*="fi-wi-stats-overview"] [class*="label"] {
    color: #374151 !important;
    font-size: 0.9375rem !important;
    font-weight: 600 !important;
    opacity: 1 !important;
}

/* Valor principal (ex: "142") */
.fi-wi-stats-overview-stat-value,
[class*="fi-wi-stats-overview"] [class*="value"] {
    color: #111827 !important;
    font-size: 2.25rem !important;
    font-weight: 700 !important;
    opacity: 1 !important;
    line-height: 1.2 !important;
}

/* Descrição (ex: "+5 este mês") */
.fi-wi-stats-overview-stat-description,
[class*="fi-wi-stats-overview"] [class*="description"] {
    color: #6B7280 !important;
    font-size: 0.875rem !important;
    font-weight: 500 !important;
    opacity: 1 !important;
}

/* Ícone da descrição */
.fi-wi-stats-overview-stat-description-icon { opacity: 1 !important; }

/* ── 2. ÁREA DE CONTEÚDO PRINCIPAL ───────────────────────── */

/* Textos gerais no painel */
.fi-main,
.fi-main p,
.fi-main span:not([class*="fi-badge"]):not([class*="fi-icon"]),
.fi-page-content,
.fi-page-content p {
    color: #374151;
}

/* Headings de página */
.fi-header-heading { color: #111827 !important; font-weight: 700 !important; }
.fi-header-subheading { color: #4B5563 !important; font-weight: 400 !important; }

/* ── 3. TABELAS ──────────────────────────────────────────── */

/* Cabeçalho da tabela */
.fi-ta-header-cell,
.fi-ta-header-cell span,
.fi-ta-col-header-extra-label {
    color: #111827 !important;
    font-weight: 600 !important;
    font-size: 0.8125rem !important;
    opacity: 1 !important;
}

/* Células da tabela */
.fi-ta-cell,
.fi-ta-cell span,
.fi-ta-text-item {
    color: #374151 !important;
    opacity: 1 !important;
}

/* Textos dentro das células */
.fi-ta-cell .fi-ta-text-item-content,
.fi-ta-cell [class*="text"] {
    color: #374151 !important;
}

/* Label "Nenhum resultado" */
.fi-ta-empty-state-heading { color: #374151 !important; }
.fi-ta-empty-state-description { color: #6B7280 !important; }

/* ── 4. FORMULÁRIOS ─────────────────────────────────────── */

/* Labels */
.fi-fo-field-wrp-label,
label.fi-fo-field-wrp-label,
.fi-fo-field-wrapper label {
    color: #374151 !important;
    font-weight: 500 !important;
    font-size: 0.875rem !important;
    opacity: 1 !important;
}

/* Valores dos campos */
.fi-input,
.fi-input-wrapper input,
.fi-input-wrapper textarea,
.fi-input-wrapper select {
    color: #111827 !important;
    font-size: 0.9375rem !important;
    opacity: 1 !important;
}

/* Hints */
.fi-fo-field-wrp-hint,
.fi-fo-field-wrp-helper-text {
    color: #6B7280 !important;
    font-size: 0.8125rem !important;
    opacity: 1 !important;
}

/* Erros de validação */
.fi-fo-field-wrp-error-message { color: #DC2626 !important; opacity: 1 !important; }

/* Section heading */
.fi-section-header-heading,
.fi-section-header-heading span {
    color: #111827 !important;
    font-weight: 600 !important;
    opacity: 1 !important;
}
.fi-section-header-description { color: #6B7280 !important; opacity: 1 !important; }

/* ── 5. GRÁFICOS (Chart.js via ApexCharts/Filament) ─────── */

/* Títulos de chart widgets */
.fi-wi-chart .fi-wi-stats-overview-card-heading,
[class*="fi-wi-chart"] h3,
[class*="fi-wi-chart"] [class*="heading"],
[class*="fi-chart"] [class*="heading"],
.fi-widget-heading,
.fi-wi-heading {
    color: #111827 !important;
    font-size: 1rem !important;
    font-weight: 600 !important;
    opacity: 1 !important;
}

/* Labels e legendas de gráficos */
.apexcharts-legend-text { color: #374151 !important; font-size: 13px !important; }
.apexcharts-xaxis-label text,
.apexcharts-yaxis-label text { fill: #4B5563 !important; font-size: 12px !important; }
.apexcharts-title-text { fill: #111827 !important; font-size: 14px !important; font-weight: 600 !important; }
.apexcharts-datalabel { fill: #111827 !important; }
.apexcharts-tooltip { background: #1A2744 !important; color: #fff !important; }

/* ── 6. INFOLIST (ViewRecord) ───────────────────────────── */

.fi-in-entry-wrp-label,
.fi-in-entry-wrp-label span {
    color: #374151 !important;
    font-weight: 600 !important;
    font-size: 0.8125rem !important;
    opacity: 1 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.04em !important;
}

.fi-in-text-item,
.fi-in-entry-wrp-content,
.fi-in-entry-wrp-content span,
.fi-in-entry-wrp p {
    color: #111827 !important;
    font-size: 0.9375rem !important;
    opacity: 1 !important;
}

/* ── 7. NOTIFICATIONS / TOASTS ──────────────────────────── */

.fi-no-notification-title { color: #111827 !important; font-weight: 600 !important; }
.fi-no-notification-body  { color: #4B5563  !important; font-size: 0.875rem !important; }

/* ── 8. DROPDOWN / MENUS ────────────────────────────────── */

.fi-dropdown-list-item-label,
.fi-dropdown-list-item-label span {
    color: #374151 !important;
    font-size: 0.875rem !important;
    opacity: 1 !important;
}
.fi-dropdown-list-item:hover .fi-dropdown-list-item-label { color: #111827 !important; }

/* ── 9. MODAIS ──────────────────────────────────────────── */

.fi-modal-heading { color: #111827 !important; font-weight: 700 !important; }
.fi-modal-description { color: #4B5563 !important; }
.fi-modal-content p, .fi-modal-content span { color: #374151 !important; }

/* ── 10. BADGES ─────────────────────────────────────────── */

/* Garantir que badges em fundos claros tenham contraste */
.fi-badge.fi-color-gray,
.fi-badge[class*="gray"] { color: #374151 !important; }

/* ── 11. NAVEGAÇÃO LATERAL — itens ativos/hover ─────────── */
/* O fundo escuro da sidebar continua com texto claro (correto) */

/* ── 12. TOPBAR — textos ────────────────────────────────── */

.fi-topbar-item,
.fi-topbar .fi-btn,
.fi-topbar [class*="label"] { color: #374151 !important; }

/* ── 13. ELIMINAR OPACIDADE BAIXA EM FUNDOS CLAROS ─────── */

.fi-main *[class*="text-gray-100"],
.fi-main *[class*="text-gray-200"],
.fi-main *[class*="text-slate-100"],
.fi-main *[class*="text-slate-200"],
.fi-main *[style*="opacity: 0."],
.fi-main *[style*="color: white"],
.fi-main *[style*="color: #fff"] {
    /* Forçar legível quando fundo é claro — não sobrescreve fundo escuro da sidebar */
}

/* Placeholders de campos */
.fi-input::placeholder,
input::placeholder,
textarea::placeholder {
    color: #9CA3AF !important;
    opacity: 1 !important;
}

/* ── 14. TABLE WIDGET HEADINGS ──────────────────────────── */

[class*="fi-wi-table"] h3,
[class*="fi-wi-table"] [class*="heading"],
.fi-wi-table-widget-heading,
.fi-header-heading {
    color: #111827 !important;
    font-weight: 600 !important;
}

/* ── 15. RECURSOS DE TEXTO GERAL ────────────────────────── */

/* Números e dados importantes */
.fi-ta-text-item-content { color: #111827 !important; font-weight: 500 !important; }

/* Link dentro de tabela */
.fi-ta-cell a { color: #1A2744 !important; }
.fi-ta-cell a:hover { color: #C8A45C !important; }

/* Texto dentro de sections/cards em modo view */
.fi-section p,
.fi-card p,
.fi-section span:not([class*="fi-badge"]),
.fi-card span:not([class*="fi-badge"]) {
    color: #374151;
}

/* ── 16. ESPAÇAMENTO E TIPOGRAFIA ───────────────────────── */

p { line-height: 1.65; }
h1, h2, h3, h4 { line-height: 1.3; letter-spacing: -0.01em; }

/* ── 17. BOTÕES — legibilidade ──────────────────────────── */

.fi-btn { font-weight: 600 !important; letter-spacing: 0.01em !important; }
.fi-btn-color-gray .fi-btn-label { color: #374151 !important; }

