@charset "utf-8";
/*
 * Identidade visual PRÓPRIA do OMNIA (SSO do hub, omnia.legadoos.com.br) —
 * o Omnia tem marca própria, distinta do Legado OS. Só é carregado por
 * includes/layout_omnia_topo.php, DEPOIS de assets/omnia.css — mesma
 * técnica de assets/admin-marca.css (painel administrativo, commit
 * 18292d08): só REDECLARA as custom properties que omnia.css já expõe
 * (--omnia-primary*), a cascata (mesma especificidade, esta regra escrita
 * depois vence) re-tinge todos os componentes que já leem essas variáveis
 * (botões, links, foco, avisos, painel de marca do login) sem reescrever
 * nenhum seletor de componente.
 *
 * Paleta Omnia (prancha em assets/marca/omnia-prancha.jpg): #005696
 * primária, #00B2E1 acento (contraste ~2,6:1 em branco — NUNCA texto sobre
 * branco, só decorativo: blobs, anel de foco), #64748B texto secundário.
 * Hover/dark calculados mais escuros que a primária (contraste ≥7:1 com
 * branco, ver tabela no commit).
 *
 * Omnia é 100% self-hosted em omnia/assets/ (CSP script-src/img-src/font-src
 * 'self', sem depender do domínio principal — ver comentário no topo de
 * layout_omnia_topo.php), por isso a fonte e o logo são cópias locais dos
 * arquivos de assets/fonts/ e assets/marca-web/, não referências cruzadas.
 *
 * Poucos valores fora de variável (blobs decorativos do painel de marca,
 * textos claros sobre o degradê escuro, box-shadow de foco) também são
 * redeclarados aqui porque no CSS de origem já eram hex direto, não var() —
 * mesmo padrão do .kpi-teal em admin-marca.css.
 */
:root{
  --omnia-primary:#005696;      /* azul Omnia — era petróleo #0a455c */
  --omnia-primary-hover:#00467a;/* era #083749 */
  --omnia-primary-dark:#003358; /* era #0a2530 */
}

/* Textos claros sobre o painel de marca escuro (degradê + véu) — mesmos
   tons de menta clara já em uso; contraste recalculado para o azul Omnia:
   ≥6,6:1 até no ponto mais claro do degradê (--omnia-primary) e ≥11:1 no
   mais escuro (--omnia-primary-dark). */
.omnia-brand-desc,
.omnia-brand-overline{color:#d6f7ef}
.omnia-brand-foot,
.omnia-brand-panel .omnia-logo-sub{color:#effbf8}

/* Blobs decorativos do painel de marca (login/cadastro sem foto) — acento
   #00B2E1 da marca Omnia como decoração (nunca como texto, ver
   .claude/rules/04-ui-ux.md), contraste 3,05:1 contra --omnia-primary e
   5,24:1 contra --omnia-primary-dark (calculado, ≥3:1 exigido). */
.omnia-brand-decor-1{background:#003358}
.omnia-brand-decor-2{background:#00b2e1}

/* Anel de foco dos campos — mesma cor primária Omnia. */
.input-ds:focus{box-shadow:0 0 0 3px rgba(0,86,150,.15)}

/* Tipografia da marca — Montserrat self-hosted, cópia local dos mesmos
   arquivos/métricas de fallback do admin (ver assets/admin-marca.css) pra
   não depender do domínio principal. Peso 300 copiado de assets/fonts/ pra
   compor o "NIA" mais leve do wordmark OMNIA (ver prancha da marca). */
@font-face{
  font-family:'Montserrat Fallback';
  src:local('Arial');
  ascent-override:75.76%;
  descent-override:19.64%;
  line-gap-override:0%;
  size-adjust:127.77%;
}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:300;font-display:swap;src:url('fonts/montserrat-300.woff2') format('woff2')}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/montserrat-400.woff2') format('woff2')}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:800;font-display:swap;src:url('fonts/montserrat-800.woff2') format('woff2')}

body{font-family:'Montserrat','Montserrat Fallback',-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif}
.omnia-brand-title,.omnia-logo-name,.hero-title-ds{font-family:'Montserrat','Montserrat Fallback',-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif; font-weight:800}
.btn-primary,.btn-secondary,.btn-ghost-ds,.btn-danger,.input-ds{font-family:inherit}

/* Wordmark OMNIA da prancha: "OM" em peso forte (herdado de .omnia-logo-name
   acima) e "NIA" em peso leve — mesmo <span> de nome, dois filhos. */
.omnia-logo-name-nia{font-weight:300}

/* Símbolo da marca Omnia (dois elos entrelaçados, extraído da prancha em
   assets/marca/omnia-prancha.jpg) no lugar do símbolo Legado OS — cópia
   local em omnia/assets/marca-web/, imagem já com as cores prontas (sem
   fundo/box), mesmo formato quadrado do recorte nativo. */
.omnia-logo-mark{width:32px; height:32px; border-radius:0; background:none; padding:0}
/* Chip branco arredondado SÓ sobre o painel de marca (fundo escuro, degradê
   #005696→#003358): o símbolo tem gradiente próprio azul (#005696→#00B2E1)
   que praticamente some sem esse contraste (usuário relatou 27/09/2026).
   Fora do painel escuro (topbar e logo mobile, ambos em fundo branco —
   --omnia-bg em omnia.css) o símbolo segue sem chip, herdando a regra acima.
   width/height crescem de 32px pra 40px mas box-sizing:border-box + padding
   4px mantêm a área útil interna em 32×32 (mesmo tamanho do <img>, que já
   declara width="32" height="32" no HTML) — sem CLS. */
.omnia-brand-panel .omnia-logo-mark{
  width:40px; height:40px; box-sizing:border-box;
  background:#fff; border-radius:10px; padding:4px;
}
.omnia-logo-mark img{display:block; width:100%; height:100%; object-fit:contain}
