/* Identidade do GPTPOL em todas as páginas (28/10/2026, skill ui-gptpol — regras do Léo).
   Carregada depois das outras folhas. Tira os tiques de tela gerada: eyebrow em caixa alta, seta "→" em
   todo botão, metadados com ponto do meio, cartão que cresce ao passar o mouse, animação de entrada;
   garante título balanceado, parágrafo sem viúva, números tabulares e foco visível. Não mexe no PDFPOL. */

/* texto */
h1, h2, h3, .pt-ia-titulo, .cc-cartao-nome, .catalogo-descricao h3 { text-wrap: balance; }
p, li, dd, .pt-ia-desc, .cc-cartao-desc, .catalogo-descricao p { text-wrap: pretty; }
table, td, th, .tabular, [data-tabular] { font-variant-numeric: tabular-nums; font-feature-settings: "tnum"; }

/* rótulos em caixa de frase (eyebrow/selo/seção): mantém a primeira letra maiúscula do texto original */
.gp-portal .pt-secao-topo h2,
.gp-portal .pt-novo,
.gp-portal .pt-ia-selos span,
#panel-consultas .cc-cartao-selo,
#panel-consultas .cc-kicker,
#panel-ferramentas .catalogo-categoria,
#panel-ferramentas .catalogo-destaque-rotulo,
#gp-artefatos-recentes .gp-ar-tipo,
.ic-rotulo, .gp-eyebrow, .eyebrow, .kicker { text-transform: none !important; letter-spacing: 0 !important; }
.gp-portal .pt-secao-topo h2 { font-size: 13px !important; font-weight: 600 !important; }
.gp-portal .pt-novo { font-size: 11px !important; }
#panel-consultas#panel-consultas .cc-cartao-selo { font-size: 11.5px !important; font-weight: 500 !important; }
#gp-artefatos-recentes#gp-artefatos-recentes .gp-ar-tipo { font-size: 12px !important; }

/* sem "→" pendurado em todo botão e cartão */
.gp-portal .pt-ia-abrir svg,
.gp-portal .pt-seta,
#panel-ferramentas .catalogo-acesso svg { display: none !important; }
.gp-portal .pt-ia-abrir { gap: 0 !important; }

/* metadados sem ponto do meio: viram uma lista separada por espaço e vírgula tipográfica discreta */
.gp-portal .pt-ia-selos { display: flex; flex-wrap: wrap; gap: 4px 12px; }
.gp-portal .pt-ia-selos span::before,
.gp-portal .pt-ia-selos span::after,
#panel-ferramentas .catalogo-item-meta > *::before,
#panel-ferramentas .catalogo-item-meta > *::after { content: none !important; }
#panel-ferramentas .catalogo-item-meta { display: flex !important; flex-wrap: wrap; gap: 4px 12px; }

/* sem crescer, levantar ou entrar deslizando */
.gp-portal .pt-card:hover, .gp-portal .pt-destaque:hover, .gp-portal .pt-ia:hover,
#panel-ferramentas .catalogo-item:hover, #panel-consultas .cc-cartao:hover,
.gp-ar-cartao:hover, .card:hover { transform: none !important; }
.gp-portal .pt-card, .gp-portal .pt-destaque, .gp-portal .pt-ia,
#panel-ferramentas .catalogo-item, #panel-consultas .cc-cartao, .gp-ar-cartao { box-shadow: none !important; animation: none !important; }

/* foco visível igual em toda parte */
:where(a, button, input, select, textarea, [tabindex]):focus-visible { outline: 2px solid var(--gp-focus, #f2f2f2) !important; outline-offset: 2px !important; }

/* movimento só com propósito */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; scroll-behavior: auto !important; }
}
/* 28/10 (noite): peso de letra do menu lateral vale para todo o projeto: texto corrido em 480, títulos em 620. */
body, input, textarea, select, button, p, li, td, th, small, label { font-weight: 480; font-variation-settings: "wght" 480; }
h1, h2, h3, h4, strong, b { font-weight: 620; font-variation-settings: "wght" 620; }

/* 29/10/2026: aviso de versão nova. Botão flutuante no canto inferior direito, retangular.
   O seletor triplo vence o contrato global de botões. */
#gp-atualizacao-tela#gp-atualizacao-tela#gp-atualizacao-tela {
  position: fixed;
  z-index: 80;
  top: auto;
  right: 12px;
  bottom: max(12px, env(safe-area-inset-bottom));
  left: auto;
  display: flex;
  width: max-content;
  max-width: min(280px, calc(100vw - 24px));
  margin: 0;
  padding: 4px 4px 4px 10px;
  border: 1px solid var(--gp-border-strong, #3a3a3a);
  border-radius: 12px;
  background: var(--ui-surface, var(--gp-surface, #262626));
  color: var(--ui-text, var(--gp-text, #ececec)) !important;
  box-shadow: 0 8px 24px rgb(0 0 0 / .4);
  transform: none;
  font: 480 13px/1.3 var(--ui-font, var(--gp-font));
  font-variation-settings: "wght" 480;
}
#gp-atualizacao-tela#gp-atualizacao-tela#gp-atualizacao-tela[hidden] { display: none !important; }
#gp-atualizacao-tela#gp-atualizacao-tela#gp-atualizacao-tela .gp-atualizacao-topo {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}
#gp-atualizacao-tela#gp-atualizacao-tela#gp-atualizacao-tela p {
  flex: 1 1 auto;
  min-width: 0;
  margin: 0;
  padding: 0;
  color: inherit !important;
  text-wrap: pretty;
}
#gp-atualizacao-tela#gp-atualizacao-tela#gp-atualizacao-tela .gp-atualizacao-fechar {
  display: inline-grid !important;
  place-items: center;
  flex: none;
  width: 28px;
  height: 28px;
  min-height: 28px !important;
  margin: 0;
  padding: 0 !important;
  border: 1px solid transparent !important;
  border-radius: 8px !important;
  background: transparent !important;
  color: var(--ui-text, var(--gp-text, #ececec)) !important;
  box-shadow: none !important;
  cursor: pointer;
}
#gp-atualizacao-tela#gp-atualizacao-tela#gp-atualizacao-tela .gp-atualizacao-fechar svg {
  width: 16px;
  height: 16px;
}
#gp-atualizacao-tela#gp-atualizacao-tela#gp-atualizacao-tela .gp-atualizacao-fechar:hover {
  background: var(--ui-hover, var(--gp-hover, #2a2a2a)) !important;
  border-color: transparent !important;
  transform: none;
}
#gp-atualizacao-tela#gp-atualizacao-tela#gp-atualizacao-tela .gp-atualizacao-atualizar {
  display: flex !important;
  align-items: center;
  justify-content: center;
  flex: none;
  width: auto;
  min-height: 28px !important;
  margin: 0;
  padding: 0 8px !important;
  border: 1px solid transparent !important;
  border-radius: 8px !important;
  background: var(--gp-botao-acao, var(--gp-action)) !important;
  color: #fff !important;
  box-shadow: none !important;
  font: 500 12px/1.2 var(--ui-font, var(--gp-font)) !important;
  font-variation-settings: "wght" 500;
  cursor: pointer;
  transform: none;
}
#gp-atualizacao-tela#gp-atualizacao-tela#gp-atualizacao-tela .gp-atualizacao-atualizar:hover {
  background: #3568d6 !important;
  border-color: transparent !important;
  transform: none;
}
#gp-atualizacao-tela#gp-atualizacao-tela#gp-atualizacao-tela button:focus-visible {
  outline: 2px solid var(--gp-focus, var(--ui-text)) !important;
  outline-offset: 2px !important;
}
@media (max-width: 720px) {
  #gp-atualizacao-tela#gp-atualizacao-tela#gp-atualizacao-tela {
    right: 12px;
    bottom: max(12px, env(safe-area-inset-bottom));
    left: auto;
    flex-wrap: wrap;
    width: min(280px, calc(100vw - 24px));
  }
  #gp-atualizacao-tela#gp-atualizacao-tela#gp-atualizacao-tela .gp-atualizacao-fechar {
    width: 44px;
    height: 44px;
    min-height: 44px !important;
  }
}
@media print {
  #gp-atualizacao-tela#gp-atualizacao-tela#gp-atualizacao-tela { display: none !important; }
}
