/* ═══ Barra de navegação — DERIVADO de public/index.html ═════════════════════
   Gerado por scratchpad/gen-nav.py. Ao mexer na barra da landing, regenere.

   🚨 DUAS LIÇÕES ESTÃO EMBUTIDAS NESTE ARQUIVO, e as duas custaram bug em produção:

   1. A geração usa TOKENIZADOR, não regex. A versão a regex tratava trecho de COMENTÁRIO como
      seletor, cortava o `/*` de abertura, e o texto solto virava prelude de at-rule inválida que
      ENGOLIA as `@media` seguintes (CSSOM: `not all`). Resultado medido: mobile sem burger e as
      pílulas de idioma/tema debaixo da barra em toda largura <= 1520px. Aqui os comentários da
      origem são REMOVIDOS por inteiro — nunca emitidos pela metade.

   2. As variáveis de TEMA (--page-bg/--fg/--muted…) NÃO saem daqui. Este arquivo é carregado
      DEPOIS do <style> da página, e um `:root{--page-bg:#232120}` vence por ORDEM o
      `[data-theme="light"]{…}` dela (mesma especificidade 0,1,0) — o tema claro morria, com texto
      escuro sobre fundo escuro a 1.72:1. Daqui só saem --nav-h/--nav-pad/--maxw/--gutter, que a
      barra precisa e a página não declara. */
:root{--maxw:clamp(1120px,90vw,1760px);--gutter:clamp(22px,4.5vw,72px);--nav-h: 58px;--nav-pad: 8px}
@media (max-height:1100px){
:root{--nav-h: 48px;--nav-pad: 7px}
}
@media (max-height:920px){
:root{--nav-h: 45px;--nav-pad: 6px}
}
@media (max-height:780px){
:root{--nav-h: 42px;--nav-pad: 5px}
}
[data-logo] svg{display:block;height:100%;width:auto}
.container{width:100%;max-width:var(--maxw);margin-inline:auto;padding-inline:var(--gutter)}
.btn{display:inline-flex;align-items:center;gap:0.6em;font:inherit;font-weight:700;font-size:0.9375rem;padding:0.9333em 1.7333em;border-radius:999px;cursor:pointer;border:1px solid transparent;transition:.2s}
.btn.primary{background:linear-gradient(140deg,var(--primary),var(--primary-2));color:#fff;box-shadow:0 10px 30px rgba(227,82,39,.36)}
.btn.primary:hover{transform:translateY(-2px);box-shadow:0 16px 40px rgba(227,82,39,.5)}
.btn.ghost{background:rgba(255,255,255,.04);border-color:var(--hair-strong);color:var(--fg);backdrop-filter:blur(10px)}
.btn.ghost:hover{border-color:var(--primary);background:rgba(227,82,39,.10);color:var(--primary-2)}
.btn .ic{width:18px;height:18px}
header.nav{position:fixed;top:16px;left:0;right:0;z-index:90;transition:.3s;pointer-events:none}
.nav .container{pointer-events:auto;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:0;max-width:min(1120px,94vw);height:var(--nav-h);padding:0 var(--nav-pad) 0 calc(var(--nav-pad) * 2);background:linear-gradient(180deg,rgba(42,38,34,.6),rgba(28,25,23,.5));backdrop-filter:blur(22px) saturate(1.7);border:1px solid rgba(255,255,255,.12);border-radius:16px;box-shadow:0 18px 50px rgba(0,0,0,.4),inset 0 1px 0 rgba(255,255,255,.09)}
.nav.scrolled .container{background:linear-gradient(180deg,rgba(30,27,24,.84),rgba(22,20,18,.8));box-shadow:0 14px 40px rgba(0,0,0,.52),inset 0 1px 0 rgba(255,255,255,.06)}
.nav .container{transition:transform .4s cubic-bezier(.4,0,.2,1),opacity .3s ease,background .3s,box-shadow .3s}
.nav.nav-hide .container{transform:translateY(-170%);opacity:0;pointer-events:none}
.logo-link{display:flex;align-items:center;height:min(34px, calc(var(--nav-h) - var(--nav-pad) * 2))}
.logo-link [data-logo]{height:min(34px, calc(var(--nav-h) - var(--nav-pad) * 2))}
:root[data-theme="light"] .logo-link,:root[data-theme="light"] .foot-smi{color:#232120}
.nav-links{width:100%;display:flex;align-items:center;justify-content:space-evenly;gap:0;padding:0}
.nav-links>a,.nav-links>.capmenu>a{position:relative;display:inline-flex;align-items:center;
  color:var(--muted);font-size:0.9062rem;font-weight:600;transition:color .18s;
  padding:0.55em 0.85em;letter-spacing:.01em}
.nav-links>a::after,.nav-links>.capmenu>a::after{content:"";position:absolute;left:0.85em;right:0.85em;bottom:0.1em;height:2px;border-radius:2px;background:var(--primary-2);transform:scaleX(0);transform-origin:center;transition:transform .22s cubic-bezier(.4,0,.2,1)}
.nav-links>a:hover,.nav-links>.capmenu>a:hover{color:var(--fg)}
.nav-links>a:hover::after,.nav-links>.capmenu>a:hover::after,.nav-links a.active::after{transform:scaleX(1)}
.nav-links a.active{color:var(--fg)}
.nav-actions{display:flex;align-items:center;justify-self:end;gap:0.45em}
.nav-actions .btn{min-width:5.8em;height:calc(var(--nav-h) - var(--nav-pad) * 2);justify-content:center;
  padding:0 1em;font-size:0.8438rem;line-height:1}
.nav-actions .btn.ghost{background:rgba(255,255,255,.05);border-color:var(--hair-strong);color:var(--fg)}
.nav-actions .btn.ghost:hover{border-color:var(--primary);background:rgba(227,82,39,.10);color:var(--primary-2)}
.nav .btn.primary{box-shadow:0 6px 18px rgba(227,82,39,.28)}
.capmenu{position:relative;display:inline-flex;z-index:2}
.capmenu-pop{position:absolute;top:100%;left:50%;translate:-50% 0;padding-top:10px;
  display:grid;grid-template-columns:1fr 1fr;gap:2px;width:max-content;min-width:22em;
  opacity:0;visibility:hidden;transform:translateY(-4px);transition:opacity .18s ease,transform .18s ease,visibility .18s}
.capmenu:hover .capmenu-pop,.capmenu:focus-within .capmenu-pop{opacity:1;visibility:visible;transform:translateY(0)}
.capmenu-pop::before{content:"";position:absolute;inset:10px 0 0;border-radius:16px;z-index:-1;
  

  
  background:#1b1918;border:1px solid var(--hair-strong);box-shadow:var(--shadow),var(--sheen)}
:root[data-theme="light"] .capmenu-pop::before{background:#f7f4ef}
.capmenu-item{display:flex;align-items:center;gap:0.55em;padding:0.5em 0.7em;border-radius:10px;
  font-size:0.875rem;color:var(--fg);white-space:nowrap;transition:background .15s}
.capmenu-item:first-of-type{margin-top:10px}
.capmenu-item .ic{width:1.15em;height:1.15em;flex:0 0 auto;color:var(--primary-2)}
.capmenu-item .s{font-size:0.6875rem;color:var(--muted-2);letter-spacing:.04em}
.capmenu-item:hover{background:rgba(227,82,39,.12)}
.capmenu-item::after,.capmenu-all::after{display:none!important}
.capmenu-all{grid-column:1 / -1;margin:2px 0 10px;padding:0.55em 0.7em;border-top:1px solid var(--hair);
  font-size:0.75rem;font-weight:700;color:var(--primary-2)}
@media(max-width:900px){
.capmenu-pop{grid-template-columns:1fr;min-width:15em}
}
.nav .btn.primary:hover{transform:translateY(-1px);box-shadow:0 10px 26px rgba(227,82,39,.42)}
@media(max-width:860px){
.nav-links,.nav-actions .btn.ghost{display:none}
}
.nav-burger{display:none;flex:0 0 auto;width:var(--burger-s);height:var(--burger-s);
  --burger-s:calc(var(--nav-h) - var(--nav-pad) * 2);
  align-items:center;justify-content:center;border-radius:12px;cursor:pointer;
  border:1px solid var(--hair-strong);background:rgba(255,255,255,.05);color:var(--fg);
  transition:border-color .2s,background .2s,color .2s}
@media(hover:hover){
.nav-burger:hover{border-color:var(--primary);background:rgba(227,82,39,.10);color:var(--primary-2)}
}
.nav-burger i{position:absolute;width:17px;height:2px;border-radius:2px;background:currentColor;
  transition:transform .28s cubic-bezier(.2,.7,.2,1),opacity .18s ease}
.nav-burger i:nth-child(1){transform:translateY(-5px)}
.nav-burger i:nth-child(3){transform:translateY(5px)}
.nav-burger[aria-expanded="true"] i:nth-child(1){transform:rotate(45deg)}
.nav-burger[aria-expanded="true"] i:nth-child(2){opacity:0}
.nav-burger[aria-expanded="true"] i:nth-child(3){transform:rotate(-45deg)}
@media(max-width:860px){
:root{--nav-h:56px;--nav-pad:6px}
.nav-burger{display:inline-flex;position:relative}
.nav-actions .btn{white-space:nowrap;padding:0 0.85em;font-size:0.8125rem;min-width:0;flex:0 1 auto}
.logo-link,.logo-link [data-logo]{height:min(30px, calc(var(--nav-h) - var(--nav-pad) * 2))}
}
html.mnav-lock,html.mnav-lock body{overflow:hidden}
html.mnav-lock header.nav .container{transform:translateY(-170%);opacity:0;pointer-events:none}
.mnav{position:fixed;inset:0;z-index:92;display:none;--mnav-bg:#181514}
:root[data-theme="light"] .mnav{--mnav-bg:#faf8f4}
.mnav.mnav-show{display:block}
.mnav-veil{position:absolute;inset:0;background:rgba(0,0,0,.58);opacity:0;transition:opacity .32s ease;
  backdrop-filter:blur(4px) saturate(.9);
  
  touch-action:none}
.mnav.open .mnav-veil{opacity:1}
.mnav-panel{position:absolute;top:0;right:0;height:100%;width:min(360px,88vw);
  display:flex;flex-direction:column;
  background:var(--glass-strong);border-left:1px solid var(--hair-strong);
  backdrop-filter:blur(26px) saturate(1.5);
  box-shadow:-24px 0 60px rgba(0,0,0,.5),var(--sheen);
  transform:translateX(100%);transition:transform .38s cubic-bezier(.2,.7,.2,1);
  overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
.mnav.open .mnav-panel{transform:none}
.mnav-panel{background:color-mix(in srgb, var(--mnav-bg) 92%, transparent)}
.mnav-head{display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:14px 14px 14px 20px;border-bottom:1px solid var(--hair);
  
  position:sticky;top:0;z-index:2;background:var(--mnav-bg)}
.mnav-head .logo-link{height:auto;min-height:44px;padding-right:8px}
.mnav-head .logo-link [data-logo]{height:26px}
.mnav-x{flex:0 0 auto;width:44px;height:44px;display:grid;place-items:center;border-radius:12px;
  border:1px solid var(--hair-strong);background:rgba(255,255,255,.04);color:var(--muted);
  cursor:pointer;transition:.15s}
@media(hover:hover){
.mnav-x:hover{color:var(--fg);border-color:var(--primary);background:rgba(227,82,39,.1)}
}
.mnav-x svg{width:18px;height:18px}
.mnav-list{display:flex;flex-direction:column;padding:10px 12px}
.mnav-item{display:flex;align-items:center;gap:12px;min-height:52px;padding:0 12px;
  border-radius:12px;font:inherit;font-size:1.0625rem;font-weight:600;color:var(--fg);
  background:none;border:0;width:100%;text-align:left;cursor:pointer;transition:background .15s,color .15s}
.mnav-item:focus-visible{background:rgba(227,82,39,.10);color:var(--primary-2)}
@media(hover:hover){
.mnav-item:hover{background:rgba(227,82,39,.10);color:var(--primary-2)}
}
.mnav-item .cr{flex:0 0 auto;margin-left:auto;width:18px;height:18px;color:var(--muted);transition:transform .28s cubic-bezier(.2,.7,.2,1),color .15s}
.mnav-item[aria-expanded="true"] .cr{transform:rotate(180deg);color:var(--primary-2)}
.mnav-item[aria-expanded="true"]{color:var(--primary-2)}
.mnav-sub[hidden]{display:none}
.mnav-sub{display:flex;flex-direction:column;gap:2px;margin:2px 0 8px;padding:6px 0 6px 10px;
  border-left:1px solid var(--hair);margin-left:12px}
.mnav-sub a{display:flex;align-items:center;gap:10px;min-height:46px;padding:0 10px;border-radius:10px;
  font-size:0.9375rem;font-weight:600;color:var(--fg);transition:background .15s,color .15s}
.mnav-sub a:focus-visible{background:rgba(227,82,39,.10);color:var(--primary-2)}
@media(hover:hover){
.mnav-sub a:hover{background:rgba(227,82,39,.10);color:var(--primary-2)}
}
.mnav-sub a .ic{width:18px;height:18px;flex:0 0 auto;color:var(--primary-2)}
.mnav-sub a .s{margin-left:auto;font-size:0.6875rem;font-weight:700;letter-spacing:.06em;color:var(--muted-2)}
.mnav-sub .mnav-all{margin-top:4px;border-top:1px solid var(--hair);border-radius:0 0 10px 10px;
  font-size:0.8125rem;font-weight:700;color:var(--primary-2)}
.mnav-sub .mnav-all .s{display:none}
.mnav-foot{margin-top:auto;display:flex;flex-direction:column;gap:10px;
  padding:16px 20px;border-top:1px solid var(--hair)}
.mnav-foot .btn{width:100%;justify-content:center;min-height:48px}
.mnav-tools{display:flex;align-items:center;gap:10px;border-top:1px solid var(--hair);
  padding:12px 20px calc(12px + env(safe-area-inset-bottom))}
.mnav-tools:empty{display:none}
.mnav-tools .lang-switcher,.mnav-tools #theme-toggle{position:relative!important;top:auto!important;right:auto!important;
  opacity:1;z-index:auto}
.mnav-tools .lang-switcher{flex:1 1 auto}
.mnav-tools .lang-trigger{width:100%;height:44px;justify-content:center}
.mnav-tools #theme-toggle{flex:0 0 auto;width:44px;height:44px}
.mnav-tools .lang-menu{top:auto;bottom:calc(100% + 8px);left:0;right:0}
.mnav-gyro{margin-top:auto;padding:14px 20px;border-top:1px solid var(--hair)}
.mnav-gyro .btn{width:100%;justify-content:center;min-height:48px}
.mnav-gyro[hidden]{display:none}
.mnav-gyro:not([hidden]) + .mnav-foot{margin-top:0}
@media(prefers-reduced-motion:reduce){
.mnav-panel,.mnav-veil,.nav-burger i,.mnav-item .cr{transition:none}
}
.jr-dest .btn{margin-top:18px;font-size:0.875rem;padding:0.9em 1.5em;white-space:nowrap}
.foot-base .foot-smi [data-logo]{height:26px}
.lang-switcher{--lang-primary:#E35227;--lang-primary-2:#F0824E;--lang-fg:#f1f3f4;--lang-hair:rgba(255,255,255,.12);--lang-hair-strong:rgba(255,255,255,.18);position:fixed;top:18px;right:20px;display:inline-block;z-index:70}
.lang-switcher,#theme-toggle{opacity:.5;transition:opacity .22s ease}
.lang-switcher:hover,.lang-switcher:focus-within,#theme-toggle:hover,#theme-toggle:focus-visible{opacity:1}
.lang-trigger{display:inline-flex;align-items:center;gap:8px;height:38px;padding:0 12px;border-radius:999px;border:1px solid var(--lang-hair-strong);background:rgba(255,255,255,.06);color:var(--lang-fg);font:600 13px/1 var(--font);letter-spacing:.01em;cursor:pointer;backdrop-filter:blur(20px) saturate(1.6);transition:background .18s,border-color .18s}
.lang-trigger:hover{background:rgba(255,255,255,.12)}
.lang-trigger:focus-visible{outline:2px solid var(--lang-primary-2);outline-offset:2px}
.lang-globe{width:16px;height:16px;opacity:.8;flex:0 0 auto}
.lang-current{font-weight:600;letter-spacing:.02em}
.lang-caret{width:14px;height:14px;opacity:.6;flex:0 0 auto;transition:transform .2s ease}
.lang-trigger[aria-expanded="true"] .lang-caret{transform:rotate(180deg)}
.lang-menu{position:absolute;top:calc(100% + 8px);right:0;min-width:184px;display:flex;flex-direction:column;gap:2px;padding:6px;border-radius:14px;border:1px solid var(--lang-hair);background:rgba(28,26,25,.94);backdrop-filter:blur(22px) saturate(1.5);box-shadow:0 20px 50px rgba(0,0,0,.5),inset 0 1px 0 rgba(255,255,255,.06);transform-origin:top right;animation:lang-pop .16s cubic-bezier(.2,.7,.2,1)}
.lang-menu[hidden]{display:none}
.lang-item{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;height:38px;padding:0 12px;border:0;border-radius:9px;background:none;color:var(--lang-fg);font:500 13.5px/1 var(--font);text-align:left;cursor:pointer;transition:background .14s}
.lang-item:hover{background:rgba(255,255,255,.06)}
.lang-item:focus-visible{outline:none;background:rgba(255,255,255,.09)}
.lang-item[aria-checked="true"]{font-weight:600}
.lang-check{width:16px;height:16px;color:var(--lang-primary);opacity:0;flex:0 0 auto}
.lang-item[aria-checked="true"] .lang-check{opacity:1}
@media(prefers-reduced-motion:reduce){
.lang-menu{animation:none}
.lang-caret{transition:none}
}
#theme-toggle{position:fixed;top:18px;right:138px;z-index:70;width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;border:1px solid var(--lang-hair-strong,rgba(255,255,255,.18));background:rgba(255,255,255,.06);color:var(--lang-fg,#f1f3f4);cursor:pointer;backdrop-filter:blur(20px) saturate(1.6);transition:background .18s,border-color .18s}
#theme-toggle:hover{background:rgba(255,255,255,.12)}
#theme-toggle:focus-visible{outline:2px solid var(--lang-primary-2,#F0824E);outline-offset:2px}
.theme-ico{position:absolute;display:inline-flex;width:17px;height:17px;transition:opacity .35s ease,transform .45s cubic-bezier(.2,.7,.2,1)}
.theme-ico svg{width:100%;height:100%;display:block}
.theme-ico-sun{opacity:1;transform:none}
.theme-ico-moon{opacity:0;transform:rotate(-90deg) scale(.6)}
:root[data-theme="light"] .theme-ico-sun{opacity:0;transform:rotate(90deg) scale(.6)}
:root[data-theme="light"] .theme-ico-moon{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){
.theme-ico{transition:opacity .15s ease}
}
@media(max-width:1519px){
.lang-switcher,#theme-toggle{top:calc(var(--nav-h) + 30px)}
}
:root[data-theme="light"] #theme-toggle,
:root[data-theme="light"] .lang-trigger{background:rgba(255,255,255,.55);border-color:rgba(35,33,32,.16);color:#232120}
:root[data-theme="light"] #theme-toggle:hover,
:root[data-theme="light"] .lang-trigger:hover{background:rgba(255,255,255,.85)}
:root[data-theme="light"] .lang-menu{background:rgba(255,255,255,.96);border-color:rgba(35,33,32,.1);box-shadow:0 20px 50px rgba(35,33,32,.18),inset 0 1px 0 rgba(255,255,255,.7)}
:root[data-theme="light"] .lang-item{color:#232120}
:root[data-theme="light"] .lang-item:hover{background:rgba(35,33,32,.05)}
:root[data-theme="light"] .lang-item:focus-visible{background:rgba(35,33,32,.08)}
:root[data-theme="light"] .nav .container{background:linear-gradient(180deg,rgba(255,255,255,.78),rgba(255,255,255,.62));border-color:rgba(35,33,32,.1);box-shadow:0 18px 50px rgba(35,33,32,.12),inset 0 1px 0 rgba(255,255,255,.7)}
:root[data-theme="light"] .nav.scrolled .container{background:linear-gradient(180deg,rgba(255,255,255,.9),rgba(255,255,255,.82));box-shadow:0 14px 40px rgba(35,33,32,.16),inset 0 1px 0 rgba(255,255,255,.7)}
:root[data-theme="light"] .btn.ghost,
:root[data-theme="light"] .nav-actions .btn.ghost{background:rgba(35,33,32,.045)}
@media (hover: none){
.btn.primary:hover,
  .nav .btn.primary:hover,
  .domain:hover,
  .domain:hover .ic,
  .chat-input .send:hover,
  .tile:hover,
  .tile:hover .ic-box,
  .cap:hover,
  .cap:hover .ic-box,
  .sec-item:hover,
  .sec-item:hover .ic-box,
  .player:hover .play,
  .fxp-ico:hover,
  .fxp-ico2:hover,
  .fxp-create-btn:hover svg,
  .fxp-send:hover,
  .fxp-send:hover svg,
  .fx-book-btn:hover,
  .fx-send:hover,
  .fx-send:hover svg,
  .mod2-tile:hover .ic,
  .mnav-item:hover,
  .mnav-sub a:hover{transform: none !important}
}

/* 🚨 O LOGO tem o fill CRAVADO no SVG da DSG, e por isso precisa de override por tema.
   O desenho vem com `fill="#232120"` (escuro) e a landing o reescreve para claro no dark. Nas
   páginas que carregam só este arquivo, sem as duas regras abaixo o logo fica CLARO sobre a cápsula
   CLARA no tema light e some — medido em 1.41:1. O `capabilities.css` já tinha o override; o
   nav.css não, e era a única coisa que faltava para o tema claro fechar.
   Escopado com `:root[data-theme=...]` (0,2,0) de propósito: precisa vencer o `[data-logo] svg`
   genérico e não pode depender da ordem de carregamento — foi exatamente por depender de ordem que
   o tema claro quebrou da primeira vez. */
/* ⚠️ O fill das LETRAS é `#F1F3F4`, não `#232120`. Medido no DOM, não suposto: o SVG tem 11 paths
   `#E35227` (o símbolo, laranja nos dois temas) e 7 paths `#F1F3F4` (a palavra). No tema claro eles
   precisam virar escuros — na página de capacidade isso já acontecia (`capabilities.css`), e era a
   única peça que faltava aqui. Minha primeira tentativa mirou `#232120` e não pintou nada. */
:root[data-theme="light"] [data-logo="intellifix"] svg [fill="#F1F3F4"],
:root[data-theme="light"] [data-logo="smi"] svg [fill="#F1F3F4"]{fill:#232120}

/* Reset de link da BARRA, escopado. A landing tem `a{text-decoration:none}` no reset global, então
   `.nav a` nunca precisou declarar; a página jurídica só tem `a{color:inherit}` e o sublinhado do
   navegador risca a barra inteira. NUNCA global: no corpo de um documento jurídico o sublinhado é o
   que distingue um link do texto. */
.nav a,.nav .btn,.lang-switcher a,.lang-trigger,.lang-item,#theme-toggle,
.capmenu-item,.capmenu-all{text-decoration:none}

/* As pílulas são cromo de tela: não vão para o papel. O @media print da página esconde `.lang`/
   `.theme`, classes da barra ANTIGA que já não existe. */
@media print{
#lang-switcher,#theme-toggle,.nav,header.nav{display:none !important}
}
