/* EEVJURIS — UI FINAL v1.6.3
 * Fonte de verdade para paleta e componentes de estado.
 * Carregada via PanelsRenderHook::STYLES_AFTER, depois do CSS nativo Filament.
 */

:root {
    /* Institucional */
    --eev-brown-950: #33251d;
    --eev-brown-900: #3f2b20;
    --eev-brown-800: #4a3322;
    --eev-brown-700: #5b4436;

    /* Paleta pastel permitida — referência visual aprovada */
    --eev-pastel-foam: #e2dfd7;
    --eev-pastel-biscuit: #e7ddcc;
    --eev-pastel-butter: #efe4d6;
    --eev-pastel-neutral: #e5e0db;
    --eev-pastel-yellow: #f8efcf;
    --eev-pastel-mint: #dce8d7;
    --eev-pastel-aqua: #d2e6d8;
    --eev-pastel-blue: #cfe4ea;
    --eev-pastel-baby-blue: #b8d9e4;
    --eev-pastel-peach: #f1d0be;
    --eev-pastel-rose: #efd1d1;
    --eev-pastel-danger: #f2d7d7;

    --eev-border-soft: #d8d1c9;
    --eev-text: #292522;
    --eev-muted: #675f59;
}

/* -------------------------------------------------------------------------
   BOTÕES — marrom institucional + estados exclusivamente pastéis
   ------------------------------------------------------------------------- */
.fi-btn,
button.fi-btn,
a.fi-btn,
.fi-icon-btn {
    border-radius: 10px !important;
}

/* Nunca azul em botões/links-botão. */
a.fi-btn,
a.fi-btn:visited,
a.fi-btn:hover,
a.fi-btn:focus,
a.fi-btn:active,
.fi-btn .fi-btn-label,
.fi-btn .fi-icon,
.fi-btn svg {
    text-decoration: none !important;
}

/* Neutro */
.fi-btn.fi-color-gray,
.fi-btn[data-color="gray"],
.fi-btn.fi-color-secondary,
.fi-btn[data-color="secondary"] {
    background: #f7f4f0 !important;
    border-color: var(--eev-border-soft) !important;
    color: var(--eev-text) !important;
}

/* Sucesso */
.fi-btn.fi-color-success,
.fi-btn[data-color="success"],
.fi-ac-btn-action.fi-color-success {
    background: var(--eev-pastel-mint) !important;
    border-color: #bfd3ba !important;
    color: var(--eev-text) !important;
}

/* Informação */
.fi-btn.fi-color-info,
.fi-btn[data-color="info"],
.fi-ac-btn-action.fi-color-info {
    background: var(--eev-pastel-blue) !important;
    border-color: #b8d3dc !important;
    color: var(--eev-text) !important;
}

/* Aviso */
.fi-btn.fi-color-warning,
.fi-btn[data-color="warning"],
.fi-ac-btn-action.fi-color-warning {
    background: var(--eev-pastel-yellow) !important;
    border-color: #e5d7aa !important;
    color: var(--eev-text) !important;
}

/* Perigo */
.fi-btn.fi-color-danger,
.fi-btn[data-color="danger"],
.fi-ac-btn-action.fi-color-danger {
    background: var(--eev-pastel-danger) !important;
    border-color: #dfbcbc !important;
    color: var(--eev-text) !important;
}

/* Todo conteúdo dos botões semânticos acompanha texto escuro. */
.fi-btn.fi-color-gray *,
.fi-btn[data-color="gray"] *,
.fi-btn.fi-color-secondary *,
.fi-btn[data-color="secondary"] *,
.fi-btn.fi-color-success *,
.fi-btn[data-color="success"] *,
.fi-btn.fi-color-info *,
.fi-btn[data-color="info"] *,
.fi-btn.fi-color-warning *,
.fi-btn[data-color="warning"] *,
.fi-btn.fi-color-danger *,
.fi-btn[data-color="danger"] * {
    color: var(--eev-text) !important;
    stroke: currentColor !important;
}

/* Exceções institucionais já aprovadas: conteúdo branco. */
.fi-btn.fi-color-primary:not(.eev-action-secondary),
.fi-btn.fi-color-primary:not(.eev-action-secondary) *,
.fi-btn.eev-action-edit,
.fi-btn.eev-action-edit *,
.eev-button-white-content,
.eev-button-white-content * {
    color: #fff !important;
    stroke: currentColor !important;
}

/* Visualizar permanece secundário claro/marrom. */
.fi-btn.eev-action-secondary,
a.fi-btn.eev-action-secondary,
button.fi-btn.eev-action-secondary {
    background: #fff !important;
    border-color: var(--eev-border-soft) !important;
    color: var(--eev-brown-800) !important;
}
.fi-btn.eev-action-secondary * {
    color: var(--eev-brown-800) !important;
    stroke: currentColor !important;
}

/* -------------------------------------------------------------------------
   BADGES / ESTADOS — mesma paleta
   ------------------------------------------------------------------------- */
.fi-badge.fi-color-success,
.fi-badge[data-color="success"] {
    background: var(--eev-pastel-mint) !important;
    color: var(--eev-text) !important;
}
.fi-badge.fi-color-info,
.fi-badge[data-color="info"] {
    background: var(--eev-pastel-blue) !important;
    color: var(--eev-text) !important;
}
.fi-badge.fi-color-warning,
.fi-badge[data-color="warning"] {
    background: var(--eev-pastel-yellow) !important;
    color: var(--eev-text) !important;
}
.fi-badge.fi-color-danger,
.fi-badge[data-color="danger"] {
    background: var(--eev-pastel-danger) !important;
    color: var(--eev-text) !important;
}

/* -------------------------------------------------------------------------
   SWITCHES — forma aprovada + ativo institucional discreto
   ------------------------------------------------------------------------- */
.fi-toggle,
.fi-toggle-track,
.fi-toggle > span,
.fi-toggle > :first-child,
button.fi-toggle,
[role="switch"].fi-toggle,
.fi-toggle .fi-toggle-thumb,
.fi-toggle > span > span,
.fi-toggle > :first-child > span {
    border-radius: 9999px !important;
}

/* -------------------------------------------------------------------------
   NOTIFICAÇÕES FILAMENT 4 — seletores REAIS do componente instalado
   ------------------------------------------------------------------------- */
.fi-no-notification:not(.fi-inline) {
    width: min(340px, calc(100vw - 28px)) !important;
    max-width: 340px !important;
    padding: 11px 13px !important;
    gap: 9px !important;
    border-radius: 12px !important;
    border: 1px solid var(--eev-border-soft) !important;
    box-shadow: 0 10px 24px rgba(51, 37, 29, .12) !important;
    color: var(--eev-text) !important;
}

.fi-no-notification .fi-no-notification-main {
    margin-top: 0 !important;
    gap: 5px !important;
    align-content: center !important;
}

.fi-no-notification .fi-no-notification-text {
    gap: 3px !important;
}

/* Este é o h3 real gerado por Filament\Notifications\Notification. */
.fi-no-notification h3.fi-no-notification-title,
.fi-no-notification .fi-no-notification-title {
    font-size: 13px !important;
    line-height: 1.22 !important;
    font-weight: 600 !important;
    letter-spacing: 0 !important;
    margin: 0 !important;
    color: var(--eev-text) !important;
}

.fi-no-notification .fi-no-notification-body,
.fi-no-notification .fi-no-notification-body p,
.fi-no-notification .fi-no-notification-date {
    font-size: 12px !important;
    line-height: 1.4 !important;
    font-weight: 400 !important;
    color: var(--eev-muted) !important;
}

.fi-no-notification .fi-no-notification-icon {
    width: 16px !important;
    height: 16px !important;
    flex: 0 0 16px !important;
}

.fi-no-notification .fi-no-notification-close-btn {
    width: 30px !important;
    height: 30px !important;
    border-radius: 8px !important;
    color: var(--eev-brown-700) !important;
}

.fi-no-notification .fi-no-notification-close-btn svg {
    width: 14px !important;
    height: 14px !important;
}

/* O Filament 4 gera fi-status-{status}; estes são os seletores corretos. */
.fi-no-notification.fi-status-success:not(.fi-inline) {
    background: var(--eev-pastel-mint) !important;
    border-color: #bfd3ba !important;
}
.fi-no-notification.fi-status-info:not(.fi-inline) {
    background: var(--eev-pastel-blue) !important;
    border-color: #b8d3dc !important;
}
.fi-no-notification.fi-status-warning:not(.fi-inline) {
    background: var(--eev-pastel-yellow) !important;
    border-color: #e5d7aa !important;
}
.fi-no-notification.fi-status-danger:not(.fi-inline) {
    background: var(--eev-pastel-danger) !important;
    border-color: #dfbcbc !important;
}

.fi-no-notification.fi-status-success .fi-no-notification-icon {
    color: #527a5c !important;
}
.fi-no-notification.fi-status-info .fi-no-notification-icon {
    color: #58798a !important;
}
.fi-no-notification.fi-status-warning .fi-no-notification-icon {
    color: #8a7540 !important;
}
.fi-no-notification.fi-status-danger .fi-no-notification-icon {
    color: #936464 !important;
}

/* Nenhum texto azul em notificações ou ações. */
.fi-no-notification a,
.fi-no-notification a:visited,
.fi-no-notification a:hover,
.fi-no-notification a:focus {
    color: var(--eev-brown-800) !important;
    text-decoration: none !important;
}

/* Tipografia global é aplicada dinamicamente no BODY_END pelo
   EevJurisUiFinalServiceProvider, após Filament e AdminLTE. */

/* -------------------------------------------------------------------------
   ESTADOS VAZIOS — texto discreto e proporcional em todas as tabelas
   Filament 4: .fi-ta-empty-state-heading
   ------------------------------------------------------------------------- */
.fi-ta-empty-state-heading,
.fi-ta-empty-state .fi-ta-empty-state-heading {
    font-size: 14px !important;
    line-height: 1.3 !important;
    font-weight: 600 !important;
    letter-spacing: 0 !important;
    color: var(--eev-text) !important;
}

.fi-ta-empty-state-description,
.fi-ta-empty-state .fi-ta-empty-state-description {
    font-size: 12px !important;
    line-height: 1.45 !important;
    color: var(--eev-muted) !important;
}

.fi-ta-empty-state-icon-bg {
    width: 38px !important;
    height: 38px !important;
}

.fi-ta-empty-state-icon-bg svg {
    width: 18px !important;
    height: 18px !important;
}
