/* HEADER + SIDEBARS + BUSCA
   Cores da paleta/tema vêm de temas.css (--faixa-topo, --base1..base5, --header-*,
   --link...). Paleta + literais fixos (--sidebar-*, --header-topo-hover,
   --header-menu-sombra, --busca-linha-suave) vêm do temas.css. */
#header                 {position:fixed;inset:0 0 auto;z-index:1000;font:400 14px/1.45 'Roboto',Arial,sans-serif;color:var(--header-texto)}
#header *,#header *::before,#header *::after {box-sizing:border-box}
#header button,#header input {font:inherit}
#header button          {cursor:pointer}
#header a               {text-decoration:none}
#header [hidden]        {display:none!important}

/* ---- FAIXA DE CIMA ---- */
#header .header_topo    {position:relative;z-index:3;background-color:var(--base3);background-image:var(--faixa-topo);color:var(--base-texto)}
#header .header_topo .content {min-height:40px;display:flex;justify-content:flex-end;align-items:center;gap:5px}
#header .header_topo a,#header .header_topo button {display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:5px 9px;border:0;border-radius:6px;background:transparent;color:inherit}
#header .header_topo a:hover,#header .header_topo button:hover,#header .header_topo button[aria-expanded=true] {background:var(--header-topo-hover)}
#header .header_topo .header_drop > button {min-height:26px;padding:3px 7px;font-size:12px;font-weight:500}
#header .header_topo .header_icone {width:38px;min-height:36px;padding:5px;font-size:18px}
#header .header_topo .header_drop > button[aria-label="Acessibilidade"] {width:38px;min-height:36px;padding:5px;font-size:19px}

/* ---- DROPDOWNS ---- */
#header .header_drop    {position:relative}
#header .header_drop_menu {position:absolute;right:0;top:100%;z-index:1200;min-width:180px;padding:6px;border:1px solid var(--header-linha);border-radius:9px;background:var(--header-fundo);box-shadow:var(--header-menu-sombra)}
#header .header_drop_menu a,#header .header_drop_menu button {display:flex;width:100%;justify-content:flex-start;gap:9px;white-space:nowrap;text-align:left;color:var(--header-texto);padding:9px 11px}
#header .header_drop_menu a:hover,#header .header_drop_menu button:hover {background:var(--header-hover)}

/* ---- BARRA PRINCIPAL ---- */
#header .header_barra   {position:relative;z-index:1;background:var(--header-fundo);border-bottom:1px solid var(--header-linha);box-shadow:var(--header-sombra)}
#header .header_barra .content {min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:20px}
#header .header_marca   {min-width:0;flex-shrink:0;display:flex;align-items:center;color:var(--header-texto)}
#header .header_marca img {display:block;width:auto;height:auto;max-width:min(360px,32vw);max-height:64px;object-fit:contain}
#header .header_marca .header_logo_dark {display:none}
html[data-theme="dark"] #header .header_marca .header_logo_light {display:none}
html[data-theme="dark"] #header .header_marca .header_logo_dark {display:block}
#header .header_nav     {display:flex;align-items:center;gap:6px;margin-left:auto}
#header .header_btn     {display:inline-flex;align-items:center;gap:8px;padding:10px 13px;border:1px solid var(--header-linha);border-radius:8px;background:var(--header-suave);color:var(--header-texto);font-size:12px;font-weight:700;text-transform:uppercase;white-space:nowrap}
#header .header_btn i   {width:1em;flex:0 0 auto;color:var(--link);text-align:center}
#header .header_btn:hover,#header .header_btn[aria-expanded=true] {background:var(--header-hover)}
#header .header_acoes   {display:flex;align-items:center;gap:8px;margin-left:8px}
#header .header_acao    {display:grid;place-items:center;width:42px;height:42px;padding:0;border:1px solid var(--header-linha);border-radius:12px;background:var(--header-fundo);color:var(--header-texto);font-size:18px}
#header .header_acao:hover {background:var(--header-hover)}
#header .header_sol,html[data-theme="dark"] #header .header_lua {display:none}
html[data-theme="dark"] #header .header_sol {display:inline}
#header :focus-visible {outline:2px solid var(--link);outline-offset:2px}
#header .header_mobile_btn {display:none;width:42px;height:42px;padding:0;align-items:center;justify-content:center;border:1px solid var(--header-linha);border-radius:12px;background:var(--header-fundo);color:var(--header-texto);font-size:19px}
#header .header_mobile_btn i {width:1em;flex:0 0 auto;text-align:center}

/* ---- SIDEBAR (GAVETAS) ---- */
#header .header_sidebar {position:fixed;top:0;bottom:0;left:0;z-index:1200;width:min(380px,100vw);padding:0 0 24px;background:var(--base5);color:var(--base-texto);box-shadow:var(--sidebar-sombra);overflow-y:auto;scrollbar-color:var(--base4) var(--base5);transform:translateX(-105%);visibility:hidden;transition:transform .4s ease,visibility 0s linear .4s}
#header .header_sidebar::-webkit-scrollbar {width:8px}
#header .header_sidebar::-webkit-scrollbar-track {background:var(--base5)}
#header .header_sidebar::-webkit-scrollbar-thumb {background:var(--base4);border-radius:999px}
#header .header_sidebar::-webkit-scrollbar-thumb:hover {background:var(--base3)}
#header .header_sidebar.ativa {transform:translateX(0);visibility:visible;transition:transform .4s ease,visibility 0s}
#header .header_sidebar_topo {position:sticky;top:0;z-index:1;display:flex;align-items:center;justify-content:flex-start;gap:12px;padding:19px 20px;font-size:18px;font-weight:700}
#header .header_sidebar_topo,#header .header_sidebar_topo.ttsidebar {color:var(--base-texto);border-bottom:2px solid var(--base4);background:var(--base5);margin:0}
#header .header_sidebar_topo.ttsidebar::before {content:"\f009";font-family:"Font Awesome 6 Free";font-weight:900;font-size:16px;line-height:1}
#header .header_sidebar_fechar {width:34px;height:34px;margin-left:auto;border:0;border-radius:7px;background:var(--sidebar-suave);color:var(--base-texto)}
#header .header_sidebar_corpo {padding:20px}
#header .header_sidebar_atalho {display:block;margin-bottom:20px;padding:11px 14px;border-radius:8px;background:var(--base3);color:var(--base-texto);font-weight:700;text-align:center}
#header .header_sidebar_atalho:hover {filter:brightness(.92)}
#header .header_grupo {margin:0 0 18px}
#header .header_grupo_titulo,#header .header_grupo_titulo.ttsidebar {display:flex;align-items:center;justify-content:flex-start;gap:9px;margin:0 0 8px;padding:10px 12px;border:0;border-left:3px solid var(--base2);border-radius:0 6px 6px 0;color:var(--base-texto);background:var(--sidebar-suave);font:700 15px/1.4 Roboto,Arial,sans-serif;text-transform:none}
#header .header_grupo_titulo::before {content:none}
#header .header_grupo_titulo i {width:17px;text-align:center;color:var(--base-texto)}
#header .header_grupo a {display:block;padding:9px 11px;border-radius:6px;color:var(--base-texto)}
#header .header_grupo a:hover {background:var(--sidebar-hover)}
#header .header_acordeao {border-bottom:1px solid var(--sidebar-linha)}
#header .header_acordeao_botao {display:flex;align-items:center;gap:9px;width:100%;margin:8px 0;padding:12px;border:0;border-left:3px solid var(--base2);border-radius:0 6px 6px 0;background:var(--sidebar-suave);color:var(--base-texto);text-align:left;font:700 15px/1.4 Roboto,Arial,sans-serif}
#header .header_acordeao_botao:hover {background:var(--sidebar-hover)}
#header .header_seta {margin-left:auto;transition:transform .2s}
#header [aria-expanded=true] .header_seta {transform:rotate(180deg)}
#header .header_acordeao_painel {padding:0 0 14px 8px}
#header .header_acordeao_painel .header_grupo {margin:0 0 10px}

/* ---- BUSCA (OVERLAY) ---- */
#header .header_busca {position:fixed;inset:0;z-index:1300;background:var(--busca-fundo);backdrop-filter:blur(12px);visibility:hidden;opacity:0;pointer-events:none;transition:opacity .25s ease,visibility 0s linear .25s}
#header .header_busca.aberta {visibility:visible;opacity:1;pointer-events:auto;transition:opacity .25s ease,visibility 0s}
#header .header_busca_caixa {width:min(850px,calc(100% - 44px));margin:12vh auto 0;color:var(--busca-texto)}
#header .header_busca_topo {display:flow-root}
#header .header_busca_topo h2 {margin:70px 0 25px;font-size:clamp(34px,5vw,56px);line-height:1.15;color:var(--busca-texto)}
#header .header_busca_topo button {float:right;width:45px;height:45px;border:1px solid var(--busca-linha-suave);border-radius:50%;background:transparent;color:var(--busca-texto);font-size:17px}
#header .header_busca_form {display:flex;border-bottom:2px solid var(--busca-linha)}
#header .header_busca_form input[type=search] {width:100%;min-width:0;padding:18px 0;border:0;outline:0;background:transparent;color:var(--busca-texto);font-size:20px}
#header .header_busca_form button {padding:0 6px;border:0;background:transparent;color:var(--busca-destaque);font-size:22px}
#header .header_busca_opcoes {display:flex;flex-wrap:wrap;gap:9px;margin-top:25px}
#header .header_busca_opcoes a {padding:9px 13px;border:1px solid var(--busca-linha-suave);border-radius:999px;color:var(--busca-suave);font-size:12px}
#header .header_busca_opcoes a:hover {border-color:var(--busca-suave);color:var(--busca-texto)}

/* ---- RESPONSIVO ---- */
@media(max-width:1100px) {#header .header_nav {gap:3px}#header .header_btn {padding:9px;font-size:11px}}
@media(max-width:850px) {#header .header_nav {display:none}#header .header_mobile_btn {display:inline-flex}#header .header_barra .content {min-height:66px}#header .header_marca img {max-width:min(240px,45vw);max-height:48px}}
@media(max-width:550px) {#header .header_topo .content {justify-content:flex-end;padding:3px 12px}#header .header_topo .header_drop:first-child {display:none}#header .header_barra .content {padding:8px 12px}#header .header_busca_caixa {margin-top:8vh}}
@media(prefers-reduced-motion:reduce) {#header .header_sidebar,#header .header_seta {transition:none}}