/* UNIMES redesign — base (reset minimo, tipografia, foco, movimento). CSS puro, sem build. */

/* Bicyclette — fonte da marca, servida pelo projeto web do Adobe Fonts da UNIMES
   (inc/redesign-foundation.php, unimes_redesign_adobe_fonts_url()), carregado
   antes deste arquivo. Apenas os dois cortes usados na interface: Light 300 para
   titulos grandes (>= 24px) e Regular 400 para todo o resto, com
   font-display: swap. A Bicyclette nao possui os cortes 500 e 600. Os arquivos
   da fonte nao vao com o tema. */

.unimes-redesign {
  color: var(--unimes-color-neutral-900);
  font-family: var(--unimes-font-family-sans);
  font-size: var(--unimes-font-body-size);
  line-height: var(--unimes-font-body-line-height);
  text-rendering: optimizeLegibility;
}

.unimes-redesign *,
.unimes-redesign *::before,
.unimes-redesign *::after {
  box-sizing: border-box;
}

/* Controles de formulario nao herdam a fonte do documento por padrao. Sem esta
   regra, botoes, campos e selects do redesign caem no Arial do navegador --
   era o que acontecia ate aqui, porque o preflight do Tailwind estava
   desativado e nada o substituiu. Apenas a familia e herdada; tamanhos e
   pesos continuam vindo dos componentes. */
.unimes-redesign :where(button, input, select, textarea) {
  font-family: inherit;
}

/* Sem negrito na interface. A Bicyclette so distribui Light 300 e Regular 400
   aqui, entao um peso 700 herdado do navegador seria sintetizado -- um falso
   negrito, de desenho pior que o corte real. Titulos sem classe e os <strong>
   de conteudo passam a Regular; a hierarquia vem de tamanho e cor, como o
   design system determina. :where() mantem especificidade zero, para que as
   regras dos componentes continuem prevalecendo. */
.unimes-redesign :where(h1, h2, h3, h4, h5, h6),
.unimes-redesign :where(strong, b) {
  font-weight: var(--fw-regular);
}

/* Foco conforme o design system: contorno navy de 2px mais anel ciano.
   O ciano sinaliza interatividade; o contorno navy garante o contraste sobre
   fundos claros e escuros. */
.unimes-redesign :where(a, button, input, select, textarea, [tabindex]):focus-visible {
  outline: 2px solid var(--unimes-navy);
  outline-offset: 2px;
  box-shadow: var(--shadow-focus);
}

.unimes-redesign :where(button, input, select, textarea):disabled {
  cursor: not-allowed;
}

/* O contorno navy do foco desaparece sobre as faixas navy do cabecalho e do
   rodape. Nessas superficies ele vira branco; o anel ciano continua igual, e
   com isso o foco fica visivel nos dois fundos. */
.unimes-redesign-header :where(a, button, input, select, textarea, summary, [tabindex]):focus-visible,
.unimes-redesign-footer :where(a, button, input, select, textarea, summary, [tabindex]):focus-visible {
  outline-color: var(--unimes-white);
}

/* O painel de busca e um cartao branco dentro do cabecalho escuro: ali o
   contorno volta a ser navy. */
.unimes-redesign-search__panel :where(a, button, input, select, textarea, [tabindex]):focus-visible {
  outline-color: var(--unimes-navy);
}

@media (prefers-reduced-motion: reduce) {
  .unimes-redesign *,
  .unimes-redesign *::before,
  .unimes-redesign *::after {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
  }
}

body.unimes-redesign {
  margin: 0;
  overflow-x: hidden;
  background: var(--unimes-color-neutral-white);
}
