/* ============================================================
   ALTO CONTRASTE (data-theme="hc") — WCAG AAA compliance
   Ativado pelo botão de acessibilidade do topbar.
   Estratégia: fundo PRETO puro + texto BRANCO + AMARELO pra destaque/focus.
   ============================================================ */

[data-theme="hc"] body.public,
[data-theme="hc"] .public {
    background: #000 !important;
    color: #FFF !important;
}

/* Skip link */
[data-theme="hc"] .public .skip-link { background: #FFFF00; color: #000; }

/* Topbar e header — força preto sólido */
[data-theme="hc"] .public .pub-topbar,
[data-theme="hc"] .public .pub-header,
[data-theme="hc"] .public .pub-nav {
    background: #000 !important;
    color: #FFF !important;
    border-color: #FFF !important;
}
[data-theme="hc"] .public .pub-topbar a,
[data-theme="hc"] .public .pub-topbar button,
[data-theme="hc"] .public .pub-topbar-stat,
[data-theme="hc"] .public .pub-topbar-stat strong,
[data-theme="hc"] .public .pub-topbar-stat-info,
[data-theme="hc"] .public .pub-header-titles,
[data-theme="hc"] .public .pub-header-pretitle,
[data-theme="hc"] .public .pub-header-subtitle {
    color: #FFF !important;
    background: transparent !important;
}
[data-theme="hc"] .public .pub-topbar h1,
[data-theme="hc"] .public .pub-header h1 { color: #FFF !important; }
[data-theme="hc"] .public .pub-topbar-stat--btn:hover,
[data-theme="hc"] .public .pub-topbar a:hover { color: #FFFF00 !important; }

/* Busca no header */
[data-theme="hc"] .public .pub-header-search input,
[data-theme="hc"] .public input[type="search"],
[data-theme="hc"] .public input[type="text"],
[data-theme="hc"] .public input[type="email"],
[data-theme="hc"] .public textarea,
[data-theme="hc"] .public select {
    background: #000 !important;
    color: #FFF !important;
    border: 2px solid #FFF !important;
}
[data-theme="hc"] .public input::placeholder,
[data-theme="hc"] .public textarea::placeholder { color: #DDD !important; }

/* Acesso rápido */
[data-theme="hc"] .public .pub-quick,
[data-theme="hc"] .public .pub-quick-tile {
    background: #000 !important;
    color: #FFF !important;
    border: 2px solid #FFF !important;
}
[data-theme="hc"] .public .pub-quick-tile:hover,
[data-theme="hc"] .public .pub-quick-tile:focus-visible {
    background: #000 !important;
    color: #FFFF00 !important;
    border-color: #FFFF00 !important;
    transform: none !important;
}
[data-theme="hc"] .public .pub-quick-tile-icon { color: #FFFF00 !important; }
[data-theme="hc"] .public .pub-quick-count {
    color: #000 !important; background: #FFFF00 !important;
}

/* Categorias colapsáveis */
[data-theme="hc"] .public .pub-categories,
[data-theme="hc"] .public .pub-category,
[data-theme="hc"] .public .pub-category > summary,
[data-theme="hc"] .public .pub-category-body {
    background: #000 !important;
    color: #FFF !important;
    border: 2px solid #FFF !important;
}
[data-theme="hc"] .public .pub-category > summary:hover {
    background: #1a1a1a !important;
    color: #FFFF00 !important;
}
[data-theme="hc"] .public .pub-category-icon,
[data-theme="hc"] .public .pub-category-icon.cyan,
[data-theme="hc"] .public .pub-category-icon.magenta {
    background: #000 !important;
    color: #FFFF00 !important;
    border: 2px solid #FFFF00 !important;
}
[data-theme="hc"] .public .pub-category-title { color: #FFF !important; }
[data-theme="hc"] .public .pub-category-updated { color: #DDD !important; }
[data-theme="hc"] .public .pub-category-chevron { color: #FFFF00 !important; }
[data-theme="hc"] .public .pub-category-item {
    background: #000 !important;
    color: #FFF !important;
    border: 1px solid #FFF !important;
}
[data-theme="hc"] .public .pub-category-item:hover,
[data-theme="hc"] .public .pub-category-item:focus-visible {
    background: #FFFF00 !important;
    color: #000 !important;
    border-color: #FFFF00 !important;
    transform: none !important;
}
[data-theme="hc"] .public .pub-category-item.is-disabled {
    color: #999 !important;
    border-color: #999 !important;
}

/* Hero principal — sem gradientes */
[data-theme="hc"] .public .pub-hero,
[data-theme="hc"] .public [class*="pub-hero"] {
    background: #000 !important;
    color: #FFF !important;
}

/* Botões */
[data-theme="hc"] .public button:not(.pub-modal-close):not([data-a11y]),
[data-theme="hc"] .public .btn,
[data-theme="hc"] .public .pub-btn,
[data-theme="hc"] .public .pub-modal-btn-secondary {
    background: #000 !important;
    color: #FFF !important;
    border: 2px solid #FFF !important;
}
[data-theme="hc"] .public button:hover:not(.pub-modal-close),
[data-theme="hc"] .public .btn:hover,
[data-theme="hc"] .public .pub-btn:hover {
    background: #FFFF00 !important;
    color: #000 !important;
    border-color: #FFFF00 !important;
}

/* Modal */
[data-theme="hc"] .public .pub-modal::backdrop { background: rgba(0,0,0,.92); }
[data-theme="hc"] .public .pub-modal-box {
    background: #000 !important;
    color: #FFF !important;
    border: 3px solid #FFF !important;
}
[data-theme="hc"] .public .pub-modal-head,
[data-theme="hc"] .public .pub-modal-foot {
    background: #000 !important;
    border-color: #FFF !important;
}
[data-theme="hc"] .public .pub-modal-head h2 { color: #FFF !important; }
[data-theme="hc"] .public .pub-modal-head-icon {
    background: #000 !important;
    color: #FFFF00 !important;
    border: 2px solid #FFFF00 !important;
}
[data-theme="hc"] .public .pub-modal-close {
    background: #000 !important;
    color: #FFFF00 !important;
    border: 2px solid #FFFF00 !important;
}
[data-theme="hc"] .public .pub-modal-close:hover {
    background: #FFFF00 !important;
    color: #000 !important;
}

/* Stats cards */
[data-theme="hc"] .public .pub-acessos-card {
    background: #000 !important;
    color: #FFF !important;
    border: 2px solid #FFF !important;
}
[data-theme="hc"] .public .pub-acessos-card:hover { border-color: #FFFF00 !important; }
[data-theme="hc"] .public .pub-acessos-card-label { color: #DDD !important; }
[data-theme="hc"] .public .pub-acessos-card-value { color: #FFFF00 !important; }
[data-theme="hc"] .public .pub-acessos-chart-canvas-wrap {
    background: #000 !important;
    border: 2px solid #FFF !important;
}

/* Anexos / chips / badges */
[data-theme="hc"] .public .pub-anexo-chip {
    background: #000 !important;
    color: #FFF !important;
    border: 1px solid #FFF !important;
}
[data-theme="hc"] .public .pub-anexo-chip:hover {
    background: #FFFF00 !important;
    color: #000 !important;
}
[data-theme="hc"] .public .pub-anexo-badge,
[data-theme="hc"] .public .pub-anexo-badge--red,
[data-theme="hc"] .public .pub-anexo-badge--blue,
[data-theme="hc"] .public .pub-anexo-badge--green,
[data-theme="hc"] .public .pub-anexo-badge--orange,
[data-theme="hc"] .public .pub-anexo-badge--amber,
[data-theme="hc"] .public .pub-anexo-badge--purple,
[data-theme="hc"] .public .pub-anexo-badge--cyan,
[data-theme="hc"] .public .pub-anexo-badge--pink,
[data-theme="hc"] .public .pub-anexo-badge--rose,
[data-theme="hc"] .public .pub-anexo-badge--gray {
    background: #FFFF00 !important;
    color: #000 !important;
    font-weight: 800;
}

/* Doc list (modais COVID) */
[data-theme="hc"] .public .pub-doc-item-block,
[data-theme="hc"] .public .pub-doc-list,
[data-theme="hc"] .public .pub-doc-empty {
    background: #000 !important;
    color: #FFF !important;
    border-color: #FFF !important;
}
[data-theme="hc"] .public .pub-doc-year-title { color: #FFFF00 !important; }
[data-theme="hc"] .public .pub-doc-list-intro { color: #FFF !important; }
[data-theme="hc"] .public .pub-doc-list-intro strong { color: #FFFF00 !important; }

/* Footer */
[data-theme="hc"] .public .pub-footer,
[data-theme="hc"] .public .pub-footer * {
    background: #000 !important;
    color: #FFF !important;
}
[data-theme="hc"] .public .pub-footer a {
    color: #FFFF00 !important;
    text-decoration: underline !important;
}
[data-theme="hc"] .public .pub-footer a:hover {
    background: #FFFF00 !important;
    color: #000 !important;
}
[data-theme="hc"] .public .pub-footer h2,
[data-theme="hc"] .public .pub-footer h3,
[data-theme="hc"] .public .pub-footer strong { color: #FFF !important; }

/* Links genéricos */
[data-theme="hc"] .public a {
    color: #FFFF00 !important;
    text-decoration: underline !important;
    text-underline-offset: 3px;
}
[data-theme="hc"] .public a:hover,
[data-theme="hc"] .public a:focus-visible {
    background: #FFFF00 !important;
    color: #000 !important;
    text-decoration: none !important;
}

/* Focus AAA — amarelo bem visível em fundo preto */
[data-theme="hc"] .public *:focus-visible {
    outline: 4px solid #FFFF00 !important;
    outline-offset: 3px !important;
    border-radius: 2px;
}

/* Skeletons sem shimmer (poluição visual em HC) */
[data-theme="hc"] .public .pub-skeleton-line,
[data-theme="hc"] .public .pub-skeleton-block {
    background: #444 !important;
    animation: none !important;
}

/* Botões A11Y do topbar */
[data-theme="hc"] .public .pub-topbar-a11y button {
    background: #000 !important;
    color: #FFFF00 !important;
    border: 2px solid #FFFF00 !important;
}
[data-theme="hc"] .public .pub-topbar-a11y button:hover,
[data-theme="hc"] .public .pub-topbar-a11y button:focus-visible {
    background: #FFFF00 !important;
    color: #000 !important;
}

/* Logo branca (img) — adiciona um leve brilho pra destacar em fundo preto */
[data-theme="hc"] .public .pub-header-logo { filter: brightness(1.1) contrast(1.1); }

/* Reset radical: zera TODOS os gradientes, sombras e text-shadows na home */
[data-theme="hc"] .public * {
    background-image: none !important;
    box-shadow: none !important;
    text-shadow: none !important;
}
