/* ORION 1.0 — folha única. Sem framework: menos peso, menos surpresas em cPanel. */
:root{
  --paper:#EDF0ED; --card:#FFFFFF; --tint:#F3F8F3; --ink:#101A15; --slate:#26362D;
  --forest:#47704C; --forest-dk:#3A5C3E; --forest-lt:#E6F0E7;
  --amber:#9A6B1E; --amber-bg:#FDF4E3; --coral:#B4453C; --coral-bg:#FAEDEC;
  --graphite:#58665D; --line:#D5DDD7; --line-soft:#E8EDE9;
  --sans:'IBM Plex Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',system-ui,sans-serif;
  --cond:'IBM Plex Sans Condensed',var(--sans);
  --mono:'IBM Plex Mono',ui-monospace,'SF Mono',monospace;
  --r:3px; --shadow:0 1px 2px rgba(16,26,21,.06); --barra:66px;
  --safe-b:env(safe-area-inset-bottom,0px);
}
[data-tema="escuro"]{
  --paper:#0E1613; --card:#18241E; --tint:#1E2C25; --ink:#E8EDE9; --slate:#C7D6CB;
  --forest:#7FA985; --forest-dk:#96BE9B; --forest-lt:#1F3324;
  --amber:#E5B568; --amber-bg:#332811; --coral:#F19088; --coral-bg:#3A1E1B;
  --graphite:#93A499; --line:#2C3E34; --line-soft:#243228;
  --shadow:0 1px 2px rgba(0,0,0,.4);
}
*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;overflow-x:hidden}
body{font-family:var(--sans);background:var(--paper);color:var(--ink);font-size:15px;line-height:1.5;
  -webkit-font-smoothing:antialiased;padding-bottom:calc(66px + var(--safe-b))}
@media(min-width:1000px){body{padding-bottom:0}}
a{color:var(--forest-dk);text-decoration:none}
a:hover{text-decoration:underline}
:focus-visible{outline:2px solid var(--forest);outline-offset:2px}

/* ============ Estrutura ============ */
.app{display:grid;grid-template-columns:1fr;min-height:100vh}
.app>div{min-width:0}
@media(min-width:1000px){.app{grid-template-columns:236px 1fr}}

/* ---- Barra lateral (secretária) ---- */
.lateral{display:none;background:var(--ink);color:#D5E0D8;padding:18px 0;position:sticky;top:0;
  height:100vh;overflow-y:auto}
@media(min-width:1000px){.lateral{display:block}}
.logo{display:flex;align-items:center;gap:10px;padding:0 18px 18px;border-bottom:1px solid #2A3B32}
.logo-mark{width:34px;height:34px;background:var(--forest);border-radius:6px;display:grid;place-items:center;
  font-family:var(--cond);font-weight:700;color:#fff;font-size:15px;letter-spacing:.02em}
.logo-txt{font-family:var(--cond);font-weight:700;font-size:17px;letter-spacing:.1em;color:#fff}
.logo-ver{font-family:var(--mono);font-size:9.5px;color:#7E9285;letter-spacing:.08em}
.nav-grupo{padding:16px 18px 5px;font-family:var(--mono);font-size:9.5px;letter-spacing:.14em;
  text-transform:uppercase;color:#6C8175}
.nav a{display:flex;align-items:center;gap:11px;padding:9px 18px;color:#C2D2C6;font-size:14px;
  border-left:3px solid transparent}
.nav a:hover{background:#1A2A22;text-decoration:none;color:#fff}
.nav a[aria-current]{background:#1F3327;border-left-color:var(--forest);color:#fff;font-weight:600}
.nav .ic{width:22px;font-family:var(--mono);font-size:10px;text-align:center;opacity:.8}

/* ---- Cabeçalho ---- */
.topo{position:sticky;top:0;z-index:40;background:var(--card);border-bottom:1px solid var(--line);
  display:flex;align-items:center;gap:12px;padding:11px 16px;min-height:58px}
.topo h1{font-family:var(--cond);font-weight:700;font-size:19px;letter-spacing:.01em;flex:1;
  min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.topo .volta{font-family:var(--mono);font-size:18px;color:var(--graphite);padding:4px 8px;
  border:1px solid var(--line);border-radius:var(--r);background:none;cursor:pointer;line-height:1}
.icone-btn{width:36px;height:36px;border:1px solid var(--line);border-radius:var(--r);background:none;
  cursor:pointer;display:grid;place-items:center;color:var(--graphite);font-size:15px;flex-shrink:0}
.icone-btn:hover{border-color:var(--forest);color:var(--forest)}
main{padding:18px 16px 26px;max-width:1180px}
@media(min-width:1000px){main{padding:24px 28px 40px}}

/* ---- Barra inferior (telemóvel) ---- */
.barra{position:fixed;bottom:0;left:0;right:0;z-index:50;background:var(--card);
  border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(5,1fr);
  padding-bottom:var(--safe-b)}
@media(min-width:1000px){.barra{display:none}}
.barra a{display:flex;flex-direction:column;align-items:center;gap:2px;padding:9px 2px;
  font-size:10.5px;color:var(--graphite)}
.barra a:hover{text-decoration:none}
.barra a[aria-current]{color:var(--forest);font-weight:600}
.barra .ic{font-family:var(--mono);font-size:11px;font-weight:600}
.barra .destaque{background:var(--forest);color:#fff;border-radius:12px;margin:5px 8px;
  padding:7px 2px;box-shadow:0 2px 8px rgba(71,112,76,.35)}
.barra .destaque .ic,.barra .destaque{color:#fff}

/* ============ Componentes ============ */
.cartao{background:var(--card);border:1px solid var(--line);border-radius:var(--r);
  box-shadow:var(--shadow);margin-bottom:14px;overflow:hidden}
.cartao-cab{padding:13px 16px;border-bottom:1px solid var(--line-soft);display:flex;
  align-items:baseline;gap:10px;flex-wrap:wrap}
.cartao-corpo{padding:16px}
.eyebrow{font-family:var(--mono);font-size:9.5px;letter-spacing:.13em;text-transform:uppercase;
  color:var(--forest);font-weight:500}
h2{font-family:var(--cond);font-weight:700;font-size:20px;letter-spacing:.01em}
h3{font-family:var(--cond);font-weight:600;font-size:14px;letter-spacing:.05em;
  text-transform:uppercase;color:var(--slate);margin-bottom:9px}
.lead{color:var(--graphite);font-size:13.5px}

/* Métricas */
.metricas{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1px;
  background:var(--line);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;
  margin-bottom:14px}
.metrica{background:var(--card);padding:12px 14px}
.metrica .r{font-family:var(--mono);font-size:9.5px;letter-spacing:.1em;text-transform:uppercase;
  color:var(--graphite)}
.metrica .v{font-family:var(--cond);font-weight:700;font-size:27px;line-height:1.15;
  font-variant-numeric:tabular-nums;white-space:nowrap}
.metrica .v small{font-size:13px;font-weight:600;color:var(--graphite)}
.metrica .n{font-size:11.5px;color:var(--graphite);margin-top:1px}
.v-al{color:var(--coral)} .v-am{color:var(--amber)} .v-ok{color:var(--forest)}

/* Botões */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;font-family:var(--sans);
  font-size:14px;font-weight:600;padding:10px 17px;border-radius:var(--r);border:1px solid transparent;
  cursor:pointer;background:var(--forest);color:#fff;min-height:42px;text-align:center}
.btn:hover{background:var(--forest-dk);text-decoration:none;color:#fff}
.btn[disabled],.btn.off{background:var(--line);color:var(--graphite);cursor:not-allowed}
.btn-sec{background:none;color:var(--slate);border-color:var(--line)}
.btn-sec:hover{background:var(--tint);color:var(--ink);border-color:var(--forest)}
.btn-perigo{background:var(--coral);color:#fff}
.btn-perigo:hover{background:#93362E;color:#fff}
.btn-mini{font-size:12.5px;padding:6px 11px;min-height:34px}
.btn-largo{width:100%}
.botoes{display:flex;flex-wrap:wrap;gap:9px}
.lote-tabela{overflow-x:auto;margin:16px 0;max-width:100%}
.lote-tabela table{min-width:520px}

/* Chapas de estado */
.chapa{display:inline-flex;align-items:center;gap:4px;font-family:var(--mono);font-size:10px;
  font-weight:600;padding:2px 7px;border-radius:2px;letter-spacing:.04em;white-space:nowrap}
.ch-ok{background:var(--forest-lt);color:var(--forest-dk)}
.ch-am{background:var(--amber-bg);color:var(--amber)}
.ch-al{background:var(--coral-bg);color:var(--coral)}
.ch-n{background:var(--line-soft);color:var(--graphite)}

/* Formulários */
.campo{margin-bottom:14px}
.campo label{display:block;font-size:12.5px;color:var(--graphite);margin-bottom:5px;font-weight:500}
.campo input,.campo select,.campo textarea{width:100%;font-family:var(--sans);font-size:15px;
  padding:10px 12px;border:1px solid var(--line);border-radius:var(--r);background:var(--card);
  color:var(--ink);min-height:44px}
.campo textarea{min-height:88px;resize:vertical}
.campo input:focus,.campo select:focus,.campo textarea:focus{border-color:var(--forest);outline:none;
  box-shadow:0 0 0 3px var(--forest-lt)}
.campo .ajuda{font-size:12px;color:var(--graphite);margin-top:4px}
.grelha2{display:grid;grid-template-columns:1fr;gap:0 14px}
@media(min-width:620px){.grelha2{grid-template-columns:1fr 1fr}}
.grelha3{display:grid;grid-template-columns:1fr;gap:0 14px}
@media(min-width:620px){.grelha3{grid-template-columns:repeat(3,1fr)}}

/* Avisos */
.aviso{padding:13px 15px;border-radius:var(--r);border-left:3px solid var(--forest);
  background:var(--tint);font-size:13.5px;margin-bottom:14px}
.aviso.am{border-color:var(--amber);background:var(--amber-bg)}
.aviso.al{border-color:var(--coral);background:var(--coral-bg)}
.aviso .t{font-family:var(--cond);font-weight:700;font-size:13px;letter-spacing:.04em;
  text-transform:uppercase;margin-bottom:3px}

/* Tabelas → cartões no telemóvel */
.tab{overflow-x:auto;border:1px solid var(--line);border-radius:var(--r);background:var(--card)}
table{border-collapse:collapse;width:100%;font-size:13px}
th{background:var(--forest);color:#fff;text-align:left;padding:8px 11px;font-weight:500;
  font-size:10px;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}
td{padding:9px 11px;border-bottom:1px solid var(--line-soft);vertical-align:top}
tr:last-child td{border-bottom:0}
td.n{text-align:right;font-variant-numeric:tabular-nums;font-family:var(--mono);white-space:nowrap}
.vazio{padding:34px 16px;text-align:center;color:var(--graphite);font-size:13.5px}
.vazio .t{font-family:var(--cond);font-weight:700;font-size:16px;color:var(--slate);margin-bottom:4px}

/* ============ Sala de Revisão ============ */
.vaos{display:grid;grid-template-columns:1fr;gap:12px}
@media(min-width:760px){.vaos{grid-template-columns:1fr 1fr}}
@media(min-width:1320px){.vaos{grid-template-columns:1fr 1fr 1fr}}
.vao{background:var(--card);border:1px solid var(--line);border-left:4px solid var(--line);
  border-radius:var(--r);box-shadow:var(--shadow);overflow:hidden}
.vao.crit{border-left-color:var(--coral)}
.vao.alto{border-left-color:var(--amber)}
.vao.ok{border-left-color:var(--forest)}
.vao-cab{padding:11px 14px;display:flex;align-items:center;gap:9px;flex-wrap:wrap;
  border-bottom:1px solid var(--line-soft)}
.vao-ref{font-family:var(--mono);font-weight:600;font-size:15px}
.vao-qtd{font-family:var(--mono);font-size:12px;color:var(--graphite);margin-left:auto}
.vao-glifo{background:var(--slate);padding:14px;display:grid;place-items:center;min-height:150px}
[data-tema="escuro"] .vao-glifo{background:#101A15}
.vao-glifo svg{max-width:100%;height:auto}
.glifo .traco{fill:none;stroke:#C7D6CB;stroke-width:2}
.glifo .vidro{fill:rgba(143,210,154,.08);stroke:none}
.glifo .abertura{fill:none;stroke:#E5B568;stroke-width:1.4;stroke-dasharray:5 4}
.glifo .seta{fill:none;stroke:#E5B568;stroke-width:1.6}
.glifo .cota{stroke:#7E9285;stroke-width:.9}
.glifo .cota-txt{fill:#9DB0A4;font-family:var(--mono);font-size:11px}
.glifo .caixa{fill:rgba(229,181,104,.14);stroke:#E5B568;stroke-width:1.2}
.vao-dados{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line-soft)}
.vao-dados div{background:var(--card);padding:7px 11px}
.vao-dados .r{font-family:var(--mono);font-size:9px;letter-spacing:.08em;text-transform:uppercase;
  color:var(--graphite)}
.vao-dados .d{font-size:13px;font-weight:500;word-break:break-word}
.vao-dados .falta .d{color:var(--coral);font-style:italic}
.vao-achados{padding:11px 14px;border-top:1px solid var(--line-soft);font-size:12.5px}
.vao-achados li{list-style:none;padding:4px 0 4px 0;display:flex;gap:7px;align-items:baseline}
.vao-acoes{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line-soft);
  border-top:1px solid var(--line-soft)}
.vao-acoes button,.vao-acoes a{background:var(--card);border:0;padding:11px;font-family:var(--sans);
  font-size:13.5px;font-weight:600;cursor:pointer;color:var(--slate);text-align:center;min-height:44px}
.vao-acoes .aprovar{color:var(--forest)} .vao-acoes .aprovar:hover{background:var(--forest-lt)}
.vao-acoes .rever:hover{background:var(--tint)}

/* Filtros */
.filtros{display:flex;gap:7px;overflow-x:auto;padding-bottom:4px;margin-bottom:14px;
  -webkit-overflow-scrolling:touch}
.filtros a{flex-shrink:0;font-family:var(--mono);font-size:12px;padding:6px 12px;
  border:1px solid var(--line);border-radius:99px;color:var(--graphite);background:var(--card)}
.filtros a:hover{text-decoration:none;border-color:var(--forest)}
.filtros a[aria-current]{background:var(--ink);color:#fff;border-color:var(--ink)}

/* Barra de aprovação fixa */
.acao-fixa{position:sticky;bottom:calc(66px + var(--safe-b));z-index:30;background:var(--card);
  border:1px solid var(--line);border-radius:var(--r);box-shadow:0 -2px 12px rgba(16,26,21,.1);
  padding:12px 14px;margin-top:16px;display:flex;gap:10px;align-items:center;flex-wrap:wrap}
@media(min-width:1000px){.acao-fixa{bottom:16px}}
.acao-fixa .txt{flex:1;min-width:180px;font-size:13px}
.acao-fixa .txt b{font-family:var(--cond);font-size:15px;display:block}

/* Flash */
.flash{padding:12px 16px;border-radius:var(--r);margin-bottom:14px;font-size:14px;font-weight:500}
.flash.ok{background:var(--forest-lt);color:var(--forest-dk)}
.flash.erro{background:var(--coral-bg);color:var(--coral)}
.flash.aviso{background:var(--amber-bg);color:var(--amber)}

/* Barra de progresso */
.prog{height:6px;background:var(--line-soft);border-radius:99px;overflow:hidden}
.prog i{display:block;height:100%;background:var(--forest);border-radius:99px}
.prog.al i{background:var(--coral)} .prog.am i{background:var(--amber)}

code,kbd{font-family:var(--mono);font-size:12.5px;background:var(--tint);padding:2px 5px;
  border-radius:2px;word-break:break-all}
pre{font-family:var(--mono);font-size:12px;background:var(--ink);color:#D5E0D8;padding:13px;
  border-radius:var(--r);overflow-x:auto;line-height:1.65}
.mono{font-family:var(--mono)}
.silencio{color:var(--graphite)}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

/* ============================================================
   ADIÇÕES 3.0.2 — tema, movimento e navegação
   ============================================================ */

/* ---- Transição só no instante da troca de tema ----
   Animar sempre tornaria cada navegação pesada; animar nunca
   faria o ecrã saltar de branco para preto. Só na troca. */
html.a-trocar-tema,
html.a-trocar-tema body,
html.a-trocar-tema .cartao,
html.a-trocar-tema .topo,
html.a-trocar-tema .lateral,
html.a-trocar-tema .barra,
html.a-trocar-tema .lista,
html.a-trocar-tema .metricas div{
  transition:background-color .28s ease, color .28s ease, border-color .28s ease;
}

.icone-btn{width:38px;height:38px;flex:0 0 auto;border:1px solid var(--line);
  border-radius:var(--raio,3px);background:var(--card);color:var(--graphite);
  display:inline-flex;align-items:center;justify-content:center;cursor:pointer;
  transition:border-color .16s, color .16s, transform .16s}
.icone-btn:hover{border-color:var(--forest);color:var(--forest)}
.icone-btn:active{transform:scale(.94)}
.icone-btn[aria-pressed="true"] svg circle{fill:currentColor}
.so-movel{display:inline-flex}
@media(min-width:1000px){.so-movel{display:none}}

/* ---- Véu por trás do menu no telemóvel ---- */
.veu{position:fixed;inset:0;background:rgba(16,26,21,.5);opacity:0;pointer-events:none;
  z-index:45;transition:opacity .22s ease;backdrop-filter:blur(2px)}
.veu.visivel{opacity:1;pointer-events:auto}

@media(max-width:999px){
  .lateral{display:flex;position:fixed;inset:0 auto 0 0;width:min(84vw,290px);z-index:60;
    transform:translateX(-100%);transition:transform .26s cubic-bezier(.4,0,.2,1);
    overflow-y:auto}
  .lateral.aberta{transform:translateX(0)}
}

/* ---- Mensagens ---- */
.flash{position:relative;padding-right:40px;animation:entra-cima .3s cubic-bezier(.4,0,.2,1)}
.flash.a-sair{animation:sai-cima .25s ease forwards}
.flash-x{position:absolute;top:8px;right:9px;width:26px;height:26px;border:0;background:none;
  color:inherit;opacity:.5;font-size:19px;line-height:1;cursor:pointer;border-radius:3px}
.flash-x:hover{opacity:1;background:rgba(0,0,0,.06)}
@keyframes entra-cima{from{opacity:0;transform:translateY(-9px)}to{opacity:1;transform:none}}
@keyframes sai-cima{to{opacity:0;transform:translateY(-9px)}}

/* ---- Aparecer ao entrar no ecrã ---- */
[data-surge]{opacity:0;transform:translateY(12px)}
[data-surge].visivel{opacity:1;transform:none;
  transition:opacity .42s cubic-bezier(.4,0,.2,1), transform .42s cubic-bezier(.4,0,.2,1)}

/* ---- Barra de progresso da navegação ---- */
.progresso-nav{position:fixed;top:0;left:0;height:2px;width:0;z-index:100;
  background:linear-gradient(90deg,var(--forest),#8FD29A);opacity:0}
.progresso-nav.ativa{opacity:1;width:88%;transition:width 9s cubic-bezier(.1,.7,.2,1)}

/* ---- Cartões de vão ---- */
[data-vao] .vao-corpo{display:none}
[data-vao].aberto .vao-corpo{display:block;animation:abre .24s cubic-bezier(.4,0,.2,1)}
@keyframes abre{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:none}}
[data-vao-cab]{cursor:pointer;user-select:none}
[data-vao-cab]::after{content:"⌄";margin-left:auto;color:var(--graphite);font-size:15px;
  transition:transform .22s}
[data-vao].aberto [data-vao-cab]::after{transform:rotate(180deg)}

/* ---- Botões com resposta ao toque ---- */
.btn{transition:background-color .16s, border-color .16s, transform .12s}
.btn:active:not([disabled]){transform:scale(.985)}

/* ---- Alvos de toque adequados ao telemóvel ---- */
@media(max-width:700px){
  .btn,.icone-btn,.barra a{min-height:44px}
}

/* ---- Quem prefere menos movimento, tem menos movimento ---- */
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;
    transition-duration:.01ms!important;scroll-behavior:auto!important}
  [data-surge]{opacity:1;transform:none}
}

/* ============================================================
   NAVEGAÇÃO PRINCIPAL — correção 3.0.3
   O menu no telemóvel herdava display:flex sem direção definida,
   o que deitava logótipo, navegação e rodapé lado a lado. Daí o
   logótipo aparecer em baixo e o texto desalinhado à direita.
   ============================================================ */
.lateral{
  display:flex;                 /* explícito, e sempre em coluna */
  flex-direction:column;
  background:var(--ink);color:#D5E0D8;
  padding:0;                    /* o espaçamento vive em cada bloco */
  height:100dvh;overflow:hidden;
}
@media(max-width:999px){
  .lateral{position:fixed;inset:0 auto 0 0;width:min(86vw,300px);z-index:60;
    transform:translateX(-100%);transition:transform .26s cubic-bezier(.4,0,.2,1);
    box-shadow:0 0 40px rgba(0,0,0,.35)}
  .lateral.aberta{transform:translateX(0)}
}
@media(min-width:1000px){
  /* Na secretária a lateral é a PRIMEIRA COLUNA da grelha .app, não um
     elemento fixo. Torná-la fixa tirava-a da grelha e a coluna do conteúdo
     colapsava para a largura mínima — o painel de gestão ficava numa tira. */
  .lateral{position:sticky;top:0;left:auto;width:auto;transform:none;
    height:100vh;box-shadow:none}
}

/* ---- Cabeça: logótipo SEMPRE no topo, nunca rola ---- */
.lateral .logo{
  flex:0 0 auto;
  display:flex;align-items:center;gap:11px;
  padding:18px 18px 16px;
  border-bottom:1px solid #2A3B32;
  padding-top:calc(18px + env(safe-area-inset-top));
}
.logo-mark{width:36px;height:36px;flex:0 0 auto;background:var(--forest);border-radius:8px;
  display:grid;place-items:center;font-family:var(--cond);font-weight:700;color:#fff;
  font-size:15px;letter-spacing:.02em}
.logo-txt{font-family:var(--cond);font-weight:700;font-size:18px;letter-spacing:.13em;
  color:#fff;line-height:1.1}
.logo-ver{font-family:var(--mono);font-size:9.5px;color:#7E9285;letter-spacing:.06em;
  margin-top:2px;white-space:nowrap}

/* ---- Navegação: ocupa o espaço livre e rola se preciso ---- */
.lateral .nav{flex:1 1 auto;overflow-y:auto;padding:6px 0 14px;
  -webkit-overflow-scrolling:touch}

.nav-grupo{padding:16px 18px 6px;font-family:var(--mono);font-size:9.5px;letter-spacing:.15em;
  text-transform:uppercase;color:#6C8175}
.nav-grupo:first-child{padding-top:12px}

.lateral .nav a{
  display:flex;align-items:center;gap:12px;
  padding:11px 18px;
  color:#C2D2C6;font-size:14.5px;line-height:1.25;
  text-align:left;                /* impede a herança de alinhamentos */
  border-left:3px solid transparent;
  text-decoration:none;
  transition:background-color .14s, color .14s;
}
.lateral .nav a:hover{background:#1A2A22;color:#fff;text-decoration:none}
.lateral .nav a[aria-current]{background:#1F3327;border-left-color:var(--forest);
  color:#fff;font-weight:600}

/* A sigla é um quadrado fixo: alinha com rótulos de uma ou duas linhas. */
.lateral .nav .ic,.nav-sair .ic{
  width:26px;height:22px;flex:0 0 auto;
  display:inline-flex;align-items:center;justify-content:center;
  font-family:var(--mono);font-size:9.5px;letter-spacing:.04em;
  border:1px solid #34473C;border-radius:3px;color:#8FB097;
}
.lateral .nav a[aria-current] .ic{border-color:var(--forest);color:#fff;background:#2A4230}

/* ---- Rodapé: sessão colada ao fundo ---- */
.nav-rodape{flex:0 0 auto;border-top:1px solid #2A3B32;padding:10px 0;
  padding-bottom:calc(10px + env(safe-area-inset-bottom))}
.nav-sair{display:flex;align-items:center;gap:12px;padding:10px 18px;
  color:#A6BCAC;font-size:14px;text-decoration:none}
.nav-sair:hover{background:#1A2A22;color:#fff;text-decoration:none}
.nav-sair-txt{display:flex;flex-direction:column;line-height:1.2}
.nav-sair-txt small{font-family:var(--mono);font-size:10px;color:#6C8175;margin-top:1px}

/* ============================================================
   AGENTE DE APOIO
   ============================================================ */
.agente-btn{--agente-extra:0px;position:fixed;right:16px;z-index:70;width:52px;height:52px;border-radius:26px;
  border:0;background:var(--forest);color:#fff;cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 4px 16px rgba(16,26,21,.28);
  bottom:calc(var(--barra) + 14px + env(safe-area-inset-bottom) + var(--agente-extra));
  transition:transform .18s, opacity .18s, background-color .16s, bottom .18s}
@media(min-width:1000px){.agente-btn{bottom:calc(22px + var(--agente-extra))}}
.agente-btn:hover{background:var(--forest-dk);transform:translateY(-2px)}
.agente-btn:active{transform:scale(.94)}
.agente-btn.escondido{opacity:0;pointer-events:none;transform:scale(.8)}

.agente{position:fixed;right:0;left:0;z-index:71;background:var(--card);
  border:1px solid var(--line);border-radius:12px 12px 0 0;
  display:flex;flex-direction:column;
  bottom:0;height:min(78dvh,620px);
  transform:translateY(102%);transition:transform .28s cubic-bezier(.4,0,.2,1);
  box-shadow:0 -6px 32px rgba(16,26,21,.22)}
.agente.aberto{transform:translateY(0)}
@media(min-width:700px){
  .agente{left:auto;right:16px;width:400px;bottom:16px;border-radius:12px;
    height:min(72dvh,600px)}
}

.agente-topo{display:flex;align-items:center;gap:10px;padding:13px 15px;
  border-bottom:1px solid var(--line);background:var(--ink);color:#fff;
  border-radius:12px 12px 0 0}
.agente-topo strong{font-family:var(--cond);font-size:15px;letter-spacing:.05em;
  text-transform:uppercase;display:block}
.agente-topo small{font-size:11.5px;color:#8FB097}
.agente-topo div{flex:1;min-width:0}
.agente-x{background:none;border:0;color:#A6BCAC;font-size:24px;line-height:1;cursor:pointer;
  width:32px;height:32px;border-radius:4px}
.agente-x:hover{background:rgba(255,255,255,.1);color:#fff}

.agente-corpo{flex:1 1 auto;overflow-y:auto;padding:14px 15px;display:flex;
  flex-direction:column;gap:11px;-webkit-overflow-scrolling:touch}
.agente-msg{max-width:88%;padding:10px 13px;border-radius:12px;font-size:14px;line-height:1.55}
.agente-msg.eu{align-self:flex-end;background:var(--forest);color:#fff;border-bottom-right-radius:3px}
.agente-msg.assistente{align-self:flex-start;background:var(--tint);color:var(--ink);
  border:1px solid var(--line);border-bottom-left-radius:3px}
.agente-msg.erro{background:var(--coral-bg);border-color:#E4B8B3;color:#8A322B}
.agente-msg code{font-family:var(--mono);font-size:12.5px;background:rgba(0,0,0,.06);
  padding:1px 4px;border-radius:3px}
.agente-fontes{margin-top:7px;padding-top:6px;border-top:1px solid var(--line);
  font-family:var(--mono);font-size:10px;color:var(--graphite);line-height:1.5}
.agente-pontos{display:inline-flex;gap:4px;align-items:center;padding:2px 0}
.agente-pontos i{width:6px;height:6px;border-radius:50%;background:var(--graphite);
  animation:pulsa 1.2s infinite ease-in-out}
.agente-pontos i:nth-child(2){animation-delay:.16s}
.agente-pontos i:nth-child(3){animation-delay:.32s}
@keyframes pulsa{0%,60%,100%{opacity:.28;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}

.agente-sug{display:flex;flex-wrap:wrap;gap:6px;padding:0 15px 10px}
.agente-chip{font:inherit;font-size:12.5px;padding:7px 11px;border:1px solid var(--line);
  background:var(--card);color:var(--graphite);border-radius:16px;cursor:pointer;text-align:left}
.agente-chip:hover{border-color:var(--forest);color:var(--forest);background:var(--tint)}

.agente-form{display:flex;gap:8px;align-items:flex-end;padding:11px 15px;
  border-top:1px solid var(--line);
  padding-bottom:calc(11px + env(safe-area-inset-bottom))}
.agente-form textarea{flex:1;min-height:44px;max-height:120px;resize:none;font:inherit;
  font-size:15px;padding:11px 12px;border:1px solid var(--line);border-radius:8px;
  background:var(--card);color:var(--ink)}
.agente-form button{width:44px;height:44px;flex:0 0 auto;border:0;border-radius:8px;
  background:var(--forest);color:#fff;font-size:18px;cursor:pointer}
.agente-form button:hover{background:var(--forest-dk)}

@media print{.agente,.agente-btn,.orionbot-dock{display:none!important}}

.entrar-ajuda{text-align:center;margin-top:14px;font-size:13.5px}
.entrar-ajuda a{color:var(--graphite)}
.entrar-ajuda a:hover{color:var(--forest)}

/* ---- Sino de alertas ---- */
.icone-btn.sino{position:relative;text-decoration:none}
.sino-conta{position:absolute;top:-5px;right:-5px;min-width:18px;height:18px;padding:0 5px;
  border-radius:9px;background:var(--coral);color:#fff;font-family:var(--mono);font-size:10px;
  font-weight:600;display:flex;align-items:center;justify-content:center;line-height:1;
  border:2px solid var(--card)}
.sino-conta.calmo{background:var(--amber)}

/* ---- Cartões de alerta ---- */
.cartao.alerta-crit{border-left:4px solid var(--coral)}
.cartao.alerta-alto{border-left:4px solid var(--amber)}
.cartao.alerta-medio{border-left:4px solid var(--graphite)}
.cartao.alerta-ok{border-left:4px solid var(--forest)}

/* ---- Gráficos do painel de gestão ---- */
.grafico{width:100%;height:auto;display:block;margin-top:8px;overflow:visible}
.g-valor{fill:var(--slate);font-family:var(--mono);font-size:10px;font-weight:600}
.g-eixo{fill:var(--graphite);font-family:var(--mono);font-size:9.5px}
.g-linha{stroke:var(--line);stroke-width:1}

.barras-h{display:flex;flex-direction:column;gap:9px;margin-top:10px}
.bh{display:grid;grid-template-columns:1fr;gap:3px}
@media(min-width:620px){.bh{grid-template-columns:150px 1fr 96px;align-items:center;gap:10px}}
.bh-rot{font-size:12.5px;color:var(--slate);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.bh-trilho{height:9px;background:var(--line-soft);border-radius:5px;overflow:hidden;display:block}
.bh-trilho i{display:block;height:100%;border-radius:5px;transition:width .5s cubic-bezier(.4,0,.2,1)}
.bh-val{font-family:var(--mono);font-size:11.5px;color:var(--graphite);text-align:right;
  font-variant-numeric:tabular-nums}
@media(max-width:619px){.bh-val{text-align:left}}

.cartao .desc{font-size:12.5px;color:var(--graphite);margin:-4px 0 4px}
@media print{.grafico{page-break-inside:avoid}}

/* ---- Progresso da análise ---- */
.analise-progresso{border-left:4px solid var(--forest)}
.analise-progresso.an-ok{border-left-color:var(--forest);background:var(--tint)}
.analise-progresso.an-erro{border-left-color:var(--coral)}
.analise-progresso.an-offline,.analise-progresso.an-atrasada{border-left-color:var(--amber)}
.analise-progresso.an-sem-worker{border-left-color:var(--brand-orange);background:color-mix(in srgb,var(--card) 94%,#fff1db)}
.an-msg{font-size:14px;color:var(--slate);margin:2px 0 10px}
.an-trilho{height:8px;background:var(--line-soft);border-radius:4px;overflow:hidden}
.an-trilho i{display:block;height:100%;width:3%;border-radius:4px;
  background:linear-gradient(90deg,var(--forest),#8FD29A);
  transition:width .6s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}
.an-indeterminado .an-trilho i::after{content:"";position:absolute;inset:0;width:46%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.72),transparent);
  animation:an-heartbeat 1.35s ease-in-out infinite}
.an-live-meta{display:flex;align-items:center;gap:8px;margin:12px 0 0;color:var(--graphite)}
.an-live-meta::before{content:"";width:7px;height:7px;border-radius:50%;flex:0 0 auto;
  background:var(--forest);box-shadow:0 0 0 4px color-mix(in srgb,var(--forest) 13%,transparent)}
.an-offline .an-live-meta::before,.an-atrasada .an-live-meta::before,.an-sem-worker .an-live-meta::before{
  background:var(--brand-orange);box-shadow:0 0 0 4px color-mix(in srgb,var(--brand-orange) 16%,transparent)}
.an-erro .an-trilho i{background:var(--coral)}
@keyframes an-heartbeat{from{transform:translateX(-120%)}to{transform:translateX(260%)}}
@media(prefers-reduced-motion:reduce){.an-indeterminado .an-trilho i::after{animation:none;display:none}}

.rev-caixa{margin-top:12px;padding:14px;border:1px solid var(--line);
  border-radius:var(--raio,4px);background:var(--tint)}

/* ============================================================
   DESENHO DO VÃO
   A plataforma redesenha o que leu. Um desenho absurdo denuncia
   uma leitura errada num segundo — que é o objetivo.
   ============================================================ */
.glifo{width:100%;height:auto;display:block;overflow:visible}
.glifo-cartao{max-width:240px}
.glifo-grande{max-width:520px;margin:0 auto}

.g-parede{fill:var(--tint);stroke:var(--line);stroke-width:1}
.g-vidro{fill:#DCE8F0;opacity:.55}
.g-aro{fill:none;stroke:var(--ink);stroke-width:2.4}
.g-montante{stroke:var(--ink);stroke-width:1.8}
.g-caixa{fill:var(--line-soft);stroke:var(--ink);stroke-width:1.4}
.g-lamina{stroke:var(--graphite);stroke-width:.6;opacity:.5}

.g-abertura{fill:none;stroke:var(--forest);stroke-width:1.3;
  stroke-dasharray:4 3;stroke-linejoin:round}
.g-oscilo{stroke:var(--amber)}
.g-harmonio{fill:none;stroke:var(--forest);stroke-width:1.6;stroke-linejoin:round}
.g-seta{fill:none;stroke:var(--forest);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.g-pivo{fill:var(--forest)}
.g-arco{fill:none;stroke:var(--forest);stroke-width:1.1;stroke-dasharray:3 3}

.g-cota line{stroke:var(--graphite);stroke-width:.9}
.g-cota .g-tick{stroke-width:1.2}
.g-medida{fill:var(--slate);font-family:var(--mono);font-size:10px;font-weight:600}
.g-nota{fill:var(--graphite);font-family:var(--mono);font-size:9px}
.g-area{fill:var(--slate);font-family:var(--mono);font-size:10px;font-weight:600}
.g-area-fundo{fill:var(--card);opacity:.82}

.g-pessoa line,.g-pessoa circle{stroke:var(--graphite);stroke-width:1.1;fill:none;opacity:.55}
.g-pessoa .g-chao{stroke-width:1.4;opacity:.7}
.g-escala{fill:var(--graphite);font-family:var(--mono);font-size:8.5px;opacity:.75}
.g-alerta{fill:var(--coral);font-family:var(--mono);font-size:9px;font-weight:600}

.glifo-vazio{text-align:center;color:var(--graphite);border:1px dashed var(--line);
  border-radius:var(--raio,4px);background:var(--tint)}

/* Leitura ampliada */
.glifo-abrir{cursor:zoom-in;border:0;background:none;padding:0;width:100%;display:block}
.glifo-abrir:hover .glifo{filter:drop-shadow(0 2px 6px rgba(16,26,21,.14))}
.lupa{position:fixed;inset:0;z-index:90;background:rgba(16,26,21,.62);
  display:flex;align-items:center;justify-content:center;padding:18px;
  opacity:0;pointer-events:none;transition:opacity .2s}
.lupa.visivel{opacity:1;pointer-events:auto}
.lupa-caixa{background:var(--card);border-radius:8px;padding:20px;max-width:640px;
  width:100%;max-height:92dvh;overflow-y:auto;box-shadow:0 12px 48px rgba(0,0,0,.3)}
.lupa-topo{display:flex;align-items:flex-start;gap:12px;margin-bottom:14px}
.lupa-topo h3{flex:1;margin:0;font-size:17px}
.lupa-x{border:0;background:none;font-size:26px;line-height:1;color:var(--graphite);
  cursor:pointer;width:34px;height:34px;border-radius:4px}
.lupa-x:hover{background:var(--tint);color:var(--ink)}
.lupa-dados{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));
  gap:10px;margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}
.lupa-dados div{font-size:13px}
.lupa-dados .r{font-family:var(--mono);font-size:9.5px;letter-spacing:.1em;
  text-transform:uppercase;color:var(--graphite);display:block;margin-bottom:2px}

@media print{
  .glifo{max-width:none;page-break-inside:avoid}
  .lupa{display:none!important}
}

/* ============================================================
   PASSAPORTE DO VÃO
   Página pública, aberta a partir do QR colado no aro.
   ============================================================ */
body.passaporte{background:var(--paper);padding:0;margin:0}
body.passaporte main{max-width:520px;margin:0 auto;background:var(--card);min-height:100dvh}
.pp-topo{background:var(--ink);color:#fff;padding:22px 20px;
  padding-top:calc(22px + env(safe-area-inset-top))}
.pp-marca{font-family:var(--mono);font-size:10px;letter-spacing:.16em;
  text-transform:uppercase;color:#8FB097;margin-bottom:6px}
.pp-topo h1{margin:0;font-size:26px;font-weight:600;letter-spacing:-.01em}
.pp-topo p{margin:4px 0 0;color:#A6BCAC;font-size:14px}
.pp-desenho{padding:20px 16px;border-bottom:1px solid var(--line)}
.pp-dados{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));
  gap:14px;padding:20px 16px}
.pp-dados div{font-size:14.5px;color:var(--ink)}
.pp-dados .r{display:block;font-family:var(--mono);font-size:9.5px;letter-spacing:.11em;
  text-transform:uppercase;color:var(--graphite);margin-bottom:3px}
.pp-rodape{padding:18px 16px 30px;border-top:1px solid var(--line);
  padding-bottom:calc(30px + env(safe-area-inset-bottom))}
.pp-rodape p{margin:0 0 6px;font-size:13.5px;color:var(--slate)}

/* ---- Folha de etiquetas ---- */
body.etiquetas{background:#fff;margin:0;padding:0}
.et-barra{display:flex;align-items:center;gap:12px;padding:12px 16px;
  border-bottom:1px solid var(--line);position:sticky;top:0;background:#fff;z-index:5}
.et-barra div{flex:1;font-size:14px}
.et-folha{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));
  gap:6px;padding:10px}
.etiqueta{display:flex;align-items:center;gap:9px;padding:8px;
  border:1px dashed #BBB;border-radius:3px;break-inside:avoid}
.et-qr{flex:0 0 auto;line-height:0}
.et-qr svg{display:block}
.et-txt{min-width:0;display:flex;flex-direction:column;gap:1px}
.et-txt b{font-size:13px;letter-spacing:.01em}
.et-txt span{font-size:10.5px;color:#444;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.et-txt small{font-family:var(--mono);font-size:8.5px;color:#888;margin-top:2px}

@media print{
  .et-barra{display:none}
  .et-folha{grid-template-columns:repeat(3,1fr);gap:0;padding:8mm}
  .etiqueta{border-color:#DDD;padding:5mm 3mm}
  @page{margin:8mm}
}

/* Número interno do projeto: identifica-o sem ambiguidade quando dois
   partilham nome, e é o que se diz ao telefone. */
.num-projeto{font-family:var(--mono);font-size:10.5px;color:var(--graphite);
  background:var(--tint);border:1px solid var(--line);border-radius:3px;
  padding:2px 6px;margin-right:7px;letter-spacing:.02em}

/* ---- Historial de conversas ---- */
.conv-msg{padding:12px 0;border-bottom:1px solid var(--line)}
.conv-msg:last-child{border-bottom:0}
.conv-quem{font-family:var(--mono);font-size:9.5px;letter-spacing:.11em;text-transform:uppercase;
  color:var(--graphite);margin-bottom:5px;display:flex;gap:8px;align-items:center}
.conv-modo{background:var(--tint);border:1px solid var(--line);border-radius:3px;
  padding:1px 5px;letter-spacing:.04em;text-transform:none}
.conv-txt{font-size:14.5px;line-height:1.6;color:var(--ink)}
.conv-eu .conv-txt{color:var(--slate);font-weight:500}
.conv-fontes{margin-top:6px;font-family:var(--mono);font-size:10px;color:var(--graphite)}

/* ============================================================
   NAVEGAÇÃO — hierarquia por destaque
   O que se consulta todos os dias fica visível; o que se
   configura uma vez fica agrupado no fim, separado.
   ============================================================ */
.lateral .nav a.nav-destaque{position:relative;margin:0;font-weight:600}

/* Painel de gestão: a leitura de quem decide, no topo */
.lateral .nav a.nav-gestao{background:linear-gradient(90deg,#2A4230,#1F3327);
  border-left-color:var(--forest);color:#fff;margin-bottom:2px;
  padding-top:14px;padding-bottom:14px}
.lateral .nav a.nav-gestao .ic{border-color:#4E7A55;color:#B8D6BE;background:#1A2A22}
.lateral .nav a.nav-gestao:hover{background:linear-gradient(90deg,#345239,#26402F)}

/* Alertas: o que pede ação */
.lateral .nav a.nav-alertas{background:rgba(168,122,43,.14);border-left-color:var(--amber)}
.lateral .nav a.nav-alertas:hover{background:rgba(168,122,43,.22)}
.nav-conta{margin-left:auto;min-width:19px;height:19px;padding:0 6px;border-radius:10px;
  background:var(--coral);color:#fff;font-family:var(--mono);font-size:10px;font-weight:600;
  display:inline-flex;align-items:center;justify-content:center;line-height:1}
.nav-conta[hidden],.sino-conta[hidden]{display:none!important}

/* Sistema: fundo claro, separado do resto — configura-se uma vez */
.nav-sistema{margin-top:auto;background:#F4F6F4;border-top:1px solid #2A3B32;padding-bottom:6px}
.nav-sistema .nav-grupo{color:#6C8175}
.lateral .nav-sistema a{color:#3A473E}
.lateral .nav-sistema a:hover{background:#E6EBE7;color:var(--ink)}
.lateral .nav-sistema a[aria-current]{background:#DCE4DE;color:var(--ink);
  border-left-color:var(--forest)}
.nav-sistema .ic{border-color:#C3CDC6;color:#58665D;background:#fff}
.lateral .nav{display:flex;flex-direction:column}

/* ============================================================
   RESPIRAÇÃO
   O conteúdo estava colado às margens dos cartões. Densidade
   não é o mesmo que aproveitamento: um número encostado à
   borda lê-se pior e passa uma impressão de improviso.
   ============================================================ */
.cartao{padding:20px 22px}
.cartao + .cartao{margin-top:14px}
.cartao h3{margin:0 0 4px;font-size:15.5px;letter-spacing:-.005em}
.cartao .desc{margin:0 0 14px;line-height:1.6}
@media(max-width:700px){.cartao{padding:16px 16px}}

.metricas{gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--raio,4px);
  overflow:hidden}
.metricas > div{background:var(--card);padding:16px 18px}
.metricas .r{margin-bottom:6px}
.metricas .v{line-height:1.1}
.metricas .n{margin-top:5px;line-height:1.45}

.tab table{border-collapse:collapse;width:100%}
.tab th,.tab td{padding:11px 14px;text-align:left;vertical-align:top;line-height:1.45}
.tab th:first-child,.tab td:first-child{padding-left:2px}
.tab th:last-child,.tab td:last-child{padding-right:2px}
.tab th{font-family:var(--mono);font-size:9.5px;letter-spacing:.11em;text-transform:uppercase;
  color:var(--graphite);border-bottom:1px solid var(--line);font-weight:600}
.tab td{border-bottom:1px solid var(--line-soft)}
.tab tr:last-child td{border-bottom:0}
.tab td.n,.tab th.n{text-align:right;font-variant-numeric:tabular-nums}

.lista .item{padding:13px 2px;gap:12px;align-items:flex-start}
.item-t{line-height:1.45}
.item-s{margin-top:3px;line-height:1.5}

.grafico{margin-top:14px;margin-bottom:4px}
.barras-h{margin-top:14px;gap:11px}
.bh-rot{padding-right:4px}
.bh-val{padding-left:4px}

.campo{margin-bottom:16px}
.campo label{display:block;margin-bottom:6px}
.campo .ajuda{margin-top:6px;line-height:1.55}
.linha-2{display:grid;grid-template-columns:1fr;gap:0 16px}
@media(min-width:640px){.linha-2{grid-template-columns:1fr 1fr}}

.grupo-btn{display:flex;flex-wrap:wrap;gap:9px;align-items:center}
h2{margin:0 0 4px;letter-spacing:-.015em}
.lead{margin:0 0 18px;color:var(--graphite);font-size:14px;line-height:1.6}
.eyebrow{margin-bottom:3px}

/* ---- Seleção múltipla ---- */
.barra-seleccao{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:10px;
  flex-wrap:wrap;padding:11px 14px;margin-bottom:12px;background:var(--ink);color:#fff;
  border-radius:var(--raio,4px);box-shadow:0 2px 10px rgba(16,26,21,.16)}
.barra-seleccao .opcao{color:#D5E0D8;font-size:13.5px}
.sel-conta{flex:1;font-family:var(--mono);font-size:11.5px;color:#8FB097;letter-spacing:.04em}
.barra-seleccao .bt{background:#2A4230;border-color:#3E5C46;color:#fff;padding:7px 13px;font-size:13px}
.barra-seleccao .bt:hover{background:#345239}
.barra-seleccao .bt:disabled{opacity:.42;cursor:not-allowed;transform:none;background:#24392A}
.sel-caixa{display:inline-flex;align-items:center;margin-right:9px;cursor:pointer}
.sel-caixa input{width:17px;height:17px;accent-color:var(--forest);cursor:pointer}
.filtro-aplicado{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:-2px 0 14px;
  padding:9px 12px;border:1px solid #E3BC83;border-radius:var(--raio,4px);background:#FFF6E8;
  color:#6E4B13;font-size:12.5px}.filtro-aplicado a{color:#8B5100;font-weight:700}
.projetos-filtros .btn{white-space:nowrap}
.pesquisa-projetos{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px}.pesquisa-projetos .btn{min-height:42px}
@media(max-width:700px){.sel-conta{flex-basis:100%;order:-1}}
@media(max-width:700px){.projetos-filtros{display:grid;grid-template-columns:1fr 1fr}.projetos-filtros .btn{text-align:center}.filtro-aplicado{align-items:flex-start;flex-direction:column}.pesquisa-projetos{grid-template-columns:minmax(0,1fr) auto}.pesquisa-projetos .btn:last-child{grid-column:1/-1;text-align:center}}

/* ============================================================
   CARTÃO DE VÃO — estado em cima, ação em baixo
   O estado diz o que É; as ações dizem o que FAZER.
   ============================================================ */
.vao-cab{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-bottom:12px}
.vao-ref{font-family:var(--mono);font-size:14px;font-weight:600;letter-spacing:.02em}
.vao-qtd{font-family:var(--mono);font-size:12px;color:var(--graphite)}

.balao{margin-left:auto;padding:5px 12px;border-radius:14px;font-size:11.5px;font-weight:600;
  letter-spacing:.01em;white-space:nowrap;border:1px solid transparent}
.bl-ok{background:#E3F0E6;color:#245C30;border-color:#A9CDB2}
.bl-crit{background:#FBE6E4;color:#8A322B;border-color:#E4B0AA}
.bl-alto{background:#FAF0DC;color:#7A5411;border-color:#DCC188}
.bl-espera{background:var(--tint);color:var(--graphite);border-color:var(--line)}
.bl-fora{background:#ECEFF1;color:#4A5560;border-color:#C7D0D6}

/* ---- O passo seguinte, escrito ---- */
.vao-proximo{padding:9px 12px;border-radius:var(--raio,4px);font-size:13px;line-height:1.5;
  margin:12px 0 10px;border-left:3px solid transparent}
.vp-crit{display:block;background:#FBE6E4;border-left-color:var(--coral);color:#8A322B}
.vp-alto{display:block;background:#FAF0DC;border-left-color:var(--amber);color:#7A5411}
.vp-pronto{display:block;background:var(--tint);border-left-color:var(--forest);color:var(--slate)}
.vp-ok{display:block;background:#E3F0E6;border-left-color:var(--forest);color:#245C30;font-weight:600}
.vp-fora{display:block;background:#ECEFF1;border-left-color:#8A968D;color:#4A5560}

/* ---- Ações: a principal domina, as outras recuam ---- */
.vao-acoes{display:flex;gap:8px;align-items:stretch;margin-top:12px}
.ac{display:inline-flex;align-items:center;justify-content:center;gap:7px;flex:1;
  padding:11px 14px;border-radius:var(--raio,4px);font-size:14px;font-weight:600;
  border:1px solid var(--line);background:var(--card);color:var(--slate);
  cursor:pointer;text-decoration:none;font-family:inherit;
  transition:background-color .14s,border-color .14s,transform .1s}
.ac:hover{text-decoration:none;border-color:var(--forest);color:var(--forest)}
.ac:active:not([disabled]){transform:scale(.985)}
.ac-i{font-size:14px;line-height:1}

.ac-aprovar{background:var(--forest);border-color:var(--forest);color:#fff}
.ac-aprovar:hover{background:var(--forest-dk);border-color:var(--forest-dk);color:#fff}
.ac-aprovar[disabled]{background:var(--line-soft);border-color:var(--line);color:#9AA69E;
  cursor:not-allowed}
.ac-aprovar[disabled]:hover{background:var(--line-soft);border-color:var(--line);color:#9AA69E}
.ac-reabrir{flex:1}
.ac-mais{flex:0 0 46px;font-size:17px;letter-spacing:.08em;color:var(--graphite)}

/* ---- Ações secundárias, escondidas até serem pedidas ---- */
.vao-mais{margin-top:9px;border:1px solid var(--line);border-radius:var(--raio,4px);
  overflow:hidden;animation:abre .2s cubic-bezier(.4,0,.2,1)}
.vao-mais form{margin:0}
.ac-linha{display:block;width:100%;text-align:left;padding:12px 14px;border:0;
  background:var(--card);cursor:pointer;font-family:inherit;
  border-bottom:1px solid var(--line-soft)}
.vao-mais form:last-child .ac-linha{border-bottom:0}
.ac-linha:hover{background:var(--tint)}
.ac-linha strong{display:block;font-size:13.5px;color:var(--ink);margin-bottom:2px}
.ac-linha small{display:block;font-size:12px;color:var(--graphite);line-height:1.5}
.ac-perigo strong{color:var(--coral)}
.ac-perigo:hover{background:var(--coral-bg)}

/* Campos em falta, assinalados onde estão */
.vao-dados .falta .d{color:var(--coral);font-style:italic}
.vao-dados .falta .r::after{content:" ●";color:var(--coral);font-size:8px;vertical-align:2px}

/* ---- Sugestões aprendidas: a evidência vem antes da ação ---- */
.sugestoes-aprendidas{border-left:4px solid var(--forest)}
.sugestao-item{display:flex;align-items:center;justify-content:space-between;gap:24px;
  padding:15px 0;border-bottom:1px solid var(--line-soft)}
.sugestao-item:first-child{padding-top:0}
.sugestao-item:last-child{padding-bottom:0;border-bottom:0}
.sugestao-texto{min-width:0;flex:1}
.sugestao-campo{font-family:var(--mono);font-size:9.5px;letter-spacing:.11em;
  text-transform:uppercase;color:var(--graphite);margin-bottom:5px}
.sugestao-mudanca{display:flex;align-items:center;gap:9px;flex-wrap:wrap;font-size:16px}
.sugestao-mudanca strong{color:var(--forest)}
.sugestao-texto p{margin:6px 0 0;color:var(--graphite);font-size:13px;line-height:1.5}
.sugestao-texto details{margin-top:8px;font-size:12.5px;color:var(--graphite)}
.sugestao-texto summary{cursor:pointer;color:var(--forest);font-weight:600}
.sugestao-texto ul{margin:7px 0 0;padding-left:19px;line-height:1.6}
.sugestao-item form{flex:0 0 auto}
@media(max-width:700px){
  .sugestao-item{align-items:stretch;flex-direction:column;gap:13px}
  .sugestao-item form,.sugestao-item .btn{width:100%}
}

/* ---- Pré-triagem explicável ---- */
.triagem-resumo{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;
  margin:0 0 14px;background:var(--line);border:1px solid var(--line);border-radius:var(--raio,4px);
  overflow:hidden}
.triagem-resumo>div{display:flex;flex-direction:column;gap:4px;padding:11px 13px;background:var(--card)}
.triagem-resumo b{font-size:12.5px}.triagem-resumo span{font-family:var(--mono);font-size:10.5px;color:var(--graphite)}
.triagem-resumo p{grid-column:1/-1;margin:0;padding:8px 13px;background:var(--tint);
  color:var(--graphite);font-size:12px;line-height:1.45}
.triagem-nota{margin:-3px 0 12px;padding:7px 9px;border-radius:3px;font-size:11.5px;line-height:1.45}
.tr-attention{background:#FBE6E4;color:#8A322B;border-left:3px solid var(--coral)}
.tr-normal{background:#FAF0DC;color:#7A5411;border-left:3px solid var(--amber)}
.tr-quick{background:#E3F0E6;color:#245C30;border-left:3px solid var(--forest)}
@media(max-width:700px){.triagem-resumo{grid-template-columns:1fr}.triagem-resumo p{grid-column:1}}

/* ---- Ponte para o configurador do fabricante ---- */
.validacao-fabricante{border-left:4px solid #2D6780}
.validacao-selo{display:flex;flex-direction:column;gap:10px;padding:12px 14px;background:var(--tint);
  border:1px solid var(--line);border-radius:var(--raio,4px)}
.validacao-selo>div:first-child{display:flex;justify-content:space-between;gap:12px;align-items:center}
.validacao-selo span{font-size:12px;color:var(--graphite)}
.validacao-selo code{font-family:var(--mono);font-size:11px;color:var(--ink)}
.validacao-cobertura{display:flex;flex-wrap:wrap;gap:6px}
.validacao-ultima{display:flex;flex-direction:column;gap:4px;margin-top:12px;padding:10px 12px;
  border-radius:3px;font-size:12.5px;line-height:1.5}
.validacao-ultima.atual{background:#E3F0E6;color:#245C30;border-left:3px solid var(--forest)}
.validacao-ultima.antiga{background:#FAF0DC;color:#7A5411;border-left:3px solid var(--amber)}
.validacao-form,.validacao-historico{margin-top:14px}
.validacao-form>summary,.validacao-historico>summary{cursor:pointer;color:var(--forest);font-weight:700}
.validacao-form form{margin-top:14px}.validacao-tipos{border:0;padding:0;margin:0 0 16px}
.validacao-tipos legend{font-size:12px;font-weight:700;margin-bottom:7px}
.validacao-tipos label{display:inline-flex;align-items:center;gap:6px;margin:0 16px 8px 0;font-size:13px}
.validacao-tipos input{accent-color:var(--forest)}
.validacao-historico ul{padding-left:19px;font-size:12.5px;line-height:1.7;color:var(--graphite)}
@media(max-width:700px){.validacao-selo>div:first-child{align-items:flex-start;flex-direction:column}}

/* ---- Dossier Open BIM ---- */
.bim-hero .cartao-cab{align-items:center}.bim-score{width:104px;height:104px;border-radius:50%;
  border:9px solid #cfe7df;background:#f4fbf8;display:flex;flex-direction:column;align-items:center;
  justify-content:center;flex:0 0 auto}.bim-score strong{font-size:27px;line-height:1;color:var(--forest)}
.bim-score span{font-size:11px;text-transform:uppercase;letter-spacing:.06em;margin-top:5px}
.bim-limite{background:#f7f9fb;border-top:1px solid var(--line-soft);font-size:13px;color:var(--graphite)}
.bim-workflows{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:16px 0}
.bim-workflow{padding:15px}.bim-workflow-top{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}
.bim-workflow p{font-size:12.5px;color:var(--muted);margin:7px 0 0}.bim-percentagem{height:6px;border-radius:99px;
  background:#e8edf0;overflow:hidden;margin-top:13px}.bim-percentagem i{display:block;height:100%;background:var(--forest);border-radius:inherit}
.bim-workflow-score{font-size:21px;font-weight:750;margin-top:7px}.bim-resumo{margin-bottom:16px}
.bim-numero{font-size:30px;font-weight:780;color:var(--ink);margin-top:4px}.bim-numero small{font-size:13px;color:var(--muted)}
.bim-resumo p{margin:3px 0 0;color:var(--muted);font-size:13px}.bim-impedimentos{border-left:4px solid var(--coral)}
.bim-avisos{border-left:4px solid var(--amber)}.bim-lista{margin:0 0 14px;padding-left:19px}
.bim-lista li{margin:6px 0;font-size:13px}.bim-lista-curta{columns:2;column-gap:24px}
.bim-tabela small{display:block;margin-top:3px;color:var(--muted)}.bim-id{font-size:11px;overflow-wrap:anywhere}
.bim-hash{font-size:11px;overflow-wrap:anywhere;color:var(--muted);margin-bottom:13px}
.bim-gerar{border-top:3px solid var(--forest)}.check-linha{display:flex;align-items:flex-start;gap:8px;font-size:13px;margin:12px 0}
.check-linha input{margin-top:2px}
@media(max-width:900px){.bim-workflows{grid-template-columns:repeat(2,minmax(0,1fr))}.bim-lista-curta{columns:1}}
@media(max-width:560px){.bim-hero .cartao-cab{align-items:flex-start}.bim-score{width:78px;height:78px;border-width:7px}
  .bim-score strong{font-size:21px}.bim-score span{font-size:9px}.bim-workflows{grid-template-columns:1fr}
  .bim-workflow{padding:13px}.bim-tabela{min-width:760px}}

/* ---- Pré-orçamentação e contrato do software ---- */
.leitura-documental{border-left:4px solid var(--forest)}
.leitura-documental-linha,.integracao-resumo{display:flex;gap:12px 24px;flex-wrap:wrap;font-size:13px}
.leitura-documental-linha span,.integracao-resumo span{display:flex;gap:6px;align-items:baseline}
.leitura-ok{color:var(--forest)}.leitura-pendente{color:#7A5411}
.leitura-cadeia{margin:10px 0 0;padding:8px 10px;background:var(--tint);border-radius:3px;font-size:12px}
.cobertura-referencias{display:flex;flex-direction:column;gap:3px;margin-top:14px;padding:11px 13px;
  border-radius:3px;font-size:13px}
.cobertura-referencias.completa,.cobertura-projeto.completa{background:#E3F0E6;border-color:var(--forest)}
.cobertura-referencias.incompleta,.cobertura-projeto.incompleta{background:var(--coral-bg);border-color:var(--coral)}
.integracao-estado.confirmada{border-top:4px solid var(--forest)}
.integracao-estado.pendente{border-top:4px solid var(--amber)}
.integracao-resumo{margin-bottom:14px}.integracao-confirmar .tab{margin:14px 0;max-height:560px;overflow:auto}
.integracao-confirmar select{min-width:210px}.check-centro{display:flex;align-items:center;justify-content:center;gap:6px}
.integracao-opcao{display:flex;align-items:center;gap:8px;margin:14px 0;font-weight:600}
.integracao-artigo{margin-bottom:14px}.campo-check{display:flex;align-items:flex-end}
.campo-check label{display:flex;gap:8px;align-items:center;min-height:42px}
@media(max-width:700px){
  .integracao-confirmar .tab,.integracao-estado .cartao-corpo{overflow-x:auto}
  .leitura-documental-linha,.integracao-resumo{flex-direction:column;gap:7px}
}

/* ---- Declaração de Desempenho ---- */
.pagina-cab{display:flex;align-items:flex-start;justify-content:space-between;gap:22px;margin:0 0 18px}
.pagina-cab h1{margin:2px 0 6px}.pagina-cab .lead{margin:0}.eyebrow{text-transform:uppercase;
  letter-spacing:.09em;font-size:10.5px;font-weight:750;color:var(--forest)}
.aviso-info,.aviso-ok,.aviso-erro{margin:0 0 16px;padding:13px 15px;border-radius:4px;
  border-left:4px solid #2d6780;background:#eef6fa;font-size:13px;line-height:1.55}
.aviso-ok{border-left-color:var(--forest);background:#e3f0e6}.aviso-erro{border-left-color:var(--coral);background:var(--coral-bg)}
.aviso-erro ul{margin:7px 0 0;padding-left:20px}.dop-form{overflow:hidden}.form-grid{display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 18px}.campo-largo{grid-column:1/-1}
.dop-form .campo{display:flex;flex-direction:column;gap:6px}.dop-form .campo>span{font-size:12px;font-weight:700}
.dop-form textarea{resize:vertical}.dop-confirmacao{border-top:1px solid var(--line-soft);background:var(--tint);
  display:flex;flex-direction:column;gap:11px;align-items:flex-start}.check-legal{display:flex;align-items:flex-start;
  gap:9px;font-size:12.8px;line-height:1.45}.check-legal input{width:auto;flex:0 0 auto;margin-top:3px;accent-color:var(--forest)}
.dop-metricas{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0 0 16px}
.dop-metricas>div{background:var(--card);border:1px solid var(--line);border-radius:4px;padding:12px 14px;
  display:flex;flex-direction:column;gap:4px}.dop-metricas span{font-size:11px;color:var(--muted)}
.dop-metricas b{font-size:20px}.dop-produtos{display:flex;flex-direction:column}.dop-produto{display:grid;
  grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:14px;padding:12px 16px;
  border-top:1px solid var(--line-soft)}.dop-produto>div{display:flex;flex-direction:column;gap:2px}
.dop-produto>div span{font-size:12.5px}.dop-produto small,.dop-recibo small{font-size:11px;color:var(--muted)}
.dop-produto.ok{border-left:3px solid var(--forest)}.dop-produto.pendente{border-left:3px solid var(--amber)}
.dop-emissao{border-top:4px solid var(--forest)}.dop-emissao form{display:flex;flex-direction:column;gap:13px;align-items:flex-start}
.dop-recibo{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:12px 16px;
  border-top:1px solid var(--line-soft)}.dop-recibo>div{display:flex;flex-direction:column;gap:3px}.dop-recibo span{font-size:12px}
.dop-performance-table{overflow-x:auto;padding:0 16px 16px}.dop-performance-head,.dop-performance-row{
  min-width:920px;display:grid;grid-template-columns:1.35fr .7fr .45fr 1fr 1fr;gap:1px;background:var(--line)}
.dop-performance-head{font-size:11px;font-weight:750}.dop-performance-head span{padding:9px;background:var(--tint)}
.dop-performance-row label{display:flex;align-items:center;background:var(--card);padding:6px}
.dop-performance-row label:first-child{font-size:12px;font-weight:650}.dop-performance-row input{min-width:0;width:100%}
.dop-desenho-preview{display:grid;grid-template-columns:minmax(180px,.65fr) minmax(260px,1fr);gap:20px;
  margin-top:15px;padding:15px;border:1px solid var(--line);background:var(--tint);border-radius:4px;align-items:center}
.dop-desenho-preview p{font-size:12px;color:var(--muted)}.dop-desenho-preview .glifo{max-height:290px;width:100%}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;
  overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
@media(max-width:760px){.pagina-cab{flex-direction:column}.form-grid,.dop-metricas{grid-template-columns:1fr}
  .campo-largo{grid-column:auto}.dop-produto{grid-template-columns:1fr auto}.dop-produto .btn{grid-column:1/-1}
  .dop-recibo{align-items:flex-start;flex-direction:column}.dop-desenho-preview{grid-template-columns:1fr}}

/* Manual integrado: a mesma base operacional do chatbot, legível sem conversa. */
.manual-cab{align-items:flex-end}.manual-principio{margin-bottom:16px}.manual-indice{margin-bottom:26px}
.manual-indice-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px}
.manual-indice-links a{display:flex;justify-content:space-between;gap:10px;padding:10px 12px;border:1px solid var(--line);
  border-radius:4px;background:var(--tint);font-size:13px;font-weight:650}.manual-indice-links span{font-family:var(--mono);
  color:var(--graphite);font-size:11px}.manual-secao{margin:26px 0}.manual-secao>.eyebrow{margin-bottom:9px}
.manual-topico{scroll-margin-top:74px}.manual-topico h3{margin-bottom:10px}.manual-resposta{font-size:14px;line-height:1.65}
.manual-resposta code{font-family:var(--mono);font-size:12px;padding:1px 4px;background:var(--tint);border:1px solid var(--line-soft)}
.manual-topo{display:inline-block;margin-top:12px;font-size:11.5px;color:var(--graphite)}
@media(max-width:760px){.manual-indice-links{grid-template-columns:1fr}.manual-cab{align-items:flex-start}}

/* ============================================================
   ORION 1.0 · SISTEMA VISUAL CORPORATIVO BENEPVC
   Verde BenePVC e laranja BenePVC são as cores principais.
   Grafite, marfim e azul informativo garantem contraste,
   hierarquia e leitura profissional em todos os ecrãs.
   ============================================================ */
:root{
  --paper:#F6F8F2;--card:#FFFFFF;--tint:#F2F7EC;--ink:#182118;--slate:#324032;
  --forest:#5B9230;--forest-dk:#3E6D1F;--forest-lt:#ECF6E4;
  --success:#2F9953;--success-dk:#1F7040;--success-bg:#EAF7EF;
  --amber:#B75E00;--amber-bg:#FFF2DF;--coral:#C84C3E;--coral-bg:#FFF0EC;
  --graphite:#667064;--line:#D9E2D3;--line-soft:#E9EEE5;
  --brand-navy:#1C2B1A;--brand-blue:#F28900;--brand-green:#78BA4C;--brand-orange:#F28900;
  --sans:'Plus Jakarta Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',system-ui,sans-serif;
  --cond:'Plus Jakarta Sans',var(--sans);--mono:'IBM Plex Mono',ui-monospace,'SF Mono',monospace;
  --r:14px;--raio:14px;--shadow:0 10px 30px rgba(28,43,26,.065),0 2px 8px rgba(28,43,26,.035);
  --shadow-hover:0 18px 42px rgba(28,43,26,.12),0 3px 10px rgba(28,43,26,.055);
  --barra:72px;
}
[data-tema="escuro"]{
  --paper:#111A10;--card:#1A2618;--tint:#21301E;--ink:#F6F8F1;--slate:#E0E8DA;
  --forest:#8BC85D;--forest-dk:#A5D77D;--forest-lt:#2A4224;
  --success:#64C982;--success-dk:#8CDEA5;--success-bg:#193422;
  --amber:#FFAE42;--amber-bg:#402B12;--coral:#FF8B7E;--coral-bg:#3D201C;
  --graphite:#ADB9A8;--line:#344430;--line-soft:#2A3927;
  --shadow:0 14px 38px rgba(0,0,0,.28);--shadow-hover:0 20px 50px rgba(0,0,0,.4);
}

body{font-size:15px;line-height:1.62;background:
  radial-gradient(circle at 78% -15%,rgba(120,186,76,.13),transparent 34rem),
  radial-gradient(circle at 18% 105%,rgba(242,137,0,.06),transparent 28rem),var(--paper)}
a{color:var(--forest);font-weight:600;text-underline-offset:3px}
:focus-visible{outline:3px solid rgba(242,137,0,.48);outline-offset:3px}

/* Estrutura ampla e consistente */
@media(min-width:1000px){.app{grid-template-columns:272px minmax(0,1fr)}}
.app>div{min-width:0}
main{width:100%;max-width:1480px;margin:0 auto;padding:26px 22px 56px}
@media(min-width:1200px){main{padding:34px 40px 64px}}
.topo{min-height:68px;padding:12px 22px;background:color-mix(in srgb,var(--card) 88%,transparent);
  border-bottom:1px solid color-mix(in srgb,var(--line) 72%,transparent);backdrop-filter:blur(16px);box-shadow:0 4px 20px rgba(28,43,26,.035)}
.topo h1{font-family:var(--sans);font-size:20px;font-weight:750;letter-spacing:-.025em}
.icone-btn,.topo .volta{width:42px;height:42px;border-radius:12px;background:var(--card);border-color:var(--line);
  box-shadow:0 2px 8px rgba(28,43,26,.035)}
.icone-btn:hover,.topo .volta:hover{background:var(--forest-lt);border-color:rgba(91,146,48,.48);text-decoration:none;transform:translateY(-1px)}

/* Navegação BenePVC: escura, luminosa e mais legível */
.lateral{background:linear-gradient(172deg,#1C2B1A 0%,#243A1F 58%,#2C481F 100%);color:#F0F5EC}
.lateral .logo{padding:23px 20px 21px;border-bottom:1px solid rgba(255,255,255,.1)}
.logo-mark{position:relative;width:56px;height:56px;flex:0 0 56px;padding:5px;border-radius:15px;background:#fff;
  border:1px solid rgba(120,186,76,.48);box-shadow:0 10px 25px rgba(8,18,7,.27),inset 0 -3px 0 rgba(242,137,0,.18);overflow:hidden}
.logo-mark img{display:block;width:100%;height:100%;object-fit:contain}
.logo-mark::after{display:none}
.logo-txt{font-family:var(--sans);font-size:18px;font-weight:800;letter-spacing:.14em}
.logo-release{display:inline-flex;vertical-align:2px;margin-left:3px;padding:3px 5px;border:1px solid rgba(242,137,0,.5);border-radius:6px;
  color:#FFAD3D;background:rgba(242,137,0,.1);font-size:8px;letter-spacing:.04em}
.logo-ver{font-family:var(--sans);font-size:10px;color:#A9C59A;letter-spacing:.035em;margin-top:3px}
.lateral .nav{padding:9px 10px 18px;scrollbar-width:thin;scrollbar-color:#4D693F transparent}
.nav-grupo{padding:19px 12px 7px;font-family:var(--sans);font-size:10px;font-weight:700;letter-spacing:.14em;color:#8FAE80}
.lateral .nav a{min-height:46px;padding:8px 10px;border:1px solid transparent;border-left:0;border-radius:12px;
  gap:11px;color:#D6E3D0;font-size:14.5px;font-weight:600;transition:background .18s,color .18s,transform .18s,border-color .18s}
.lateral .nav a:hover{background:rgba(255,255,255,.075);color:#fff;transform:translateX(2px);text-decoration:none}
.lateral .nav a[aria-current]{background:linear-gradient(110deg,rgba(120,186,76,.27),rgba(120,186,76,.1));
  color:#fff;border-color:rgba(139,200,93,.3);box-shadow:inset 3px 0 var(--brand-orange)}
.lateral .nav .ic{width:31px;height:31px;display:grid;place-items:center;border-radius:9px;font-size:9.5px;
  color:#B8D3AA;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08)}
.lateral .nav a[aria-current] .ic{background:var(--forest);border-color:#91C96C;color:#fff;box-shadow:0 5px 14px rgba(55,109,31,.3)}
.nav-rodape{border-top-color:rgba(255,255,255,.1);padding:11px 10px}
.nav-sair{min-height:48px;border-radius:12px;color:#C7D9BE;padding:8px 11px}.nav-sair:hover{background:rgba(255,255,255,.07)}
.nav-sair-txt small{color:#91AD84}
.nav-sistema{margin-top:auto;background:transparent;border-top:1px solid rgba(255,255,255,.1);padding-bottom:6px}
.nav-sistema .nav-grupo{color:#8FAE80}.lateral .nav-sistema a{color:#D6E3D0}.lateral .nav-sistema a:hover{background:rgba(255,255,255,.075);color:#fff}
.lateral .nav-sistema a[aria-current]{background:linear-gradient(110deg,rgba(120,186,76,.27),rgba(120,186,76,.1));color:#fff;border-color:rgba(139,200,93,.3)}
.nav-sistema .ic{border-color:rgba(255,255,255,.08);color:#B8D3AA;background:rgba(255,255,255,.06)}
.lateral .nav a.nav-gestao{background:linear-gradient(110deg,rgba(242,137,0,.2),rgba(120,186,76,.08));border-color:rgba(242,137,0,.24);color:#fff}
.lateral .nav a.nav-gestao:hover{background:linear-gradient(110deg,rgba(242,137,0,.29),rgba(120,186,76,.14))}
.lateral .nav a.nav-gestao .ic{border-color:rgba(242,137,0,.4);color:#FFF1DC;background:rgba(242,137,0,.16)}
.lateral .nav a.nav-alertas{background:rgba(200,76,62,.1);border-color:rgba(200,76,62,.18)}.lateral .nav a.nav-alertas:hover{background:rgba(200,76,62,.17)}

/* Tipografia e superfícies */
h2{font-family:var(--sans);font-size:clamp(21px,2vw,27px);font-weight:750;letter-spacing:-.035em;line-height:1.2}
h3{font-family:var(--sans);font-size:15px;font-weight:750;letter-spacing:-.012em;text-transform:none;color:var(--slate)}
.eyebrow,.sobre{font-family:var(--sans);font-size:10px;font-weight:800;letter-spacing:.14em;color:var(--forest)}
.lead{font-size:14px;line-height:1.65}.pagina{margin-bottom:24px}.pagina h2{font-size:clamp(27px,3vw,38px);margin:3px 0 7px}
.pagina p{font-size:15px;color:var(--graphite);max-width:790px}
.cartao{border:1px solid var(--line-soft);border-radius:var(--r);box-shadow:var(--shadow);margin-bottom:18px;
  transition:box-shadow .22s ease,border-color .22s ease,transform .22s ease}
.cartao:hover{border-color:color-mix(in srgb,var(--line) 58%,var(--forest));box-shadow:var(--shadow-hover)}
.cartao-cab{padding:20px 22px;align-items:flex-start;justify-content:space-between;border-bottom-color:var(--line-soft)}
.cartao-corpo{padding:22px}.cartao .desc{font-size:13.5px;line-height:1.6}
.pagina-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:22px;padding:8px 2px 2px}
.hero-sinal{display:flex;align-items:center;gap:10px;min-width:150px;padding:12px 15px;border:1px solid var(--line);
  border-radius:14px;background:var(--card);box-shadow:var(--shadow)}
.hero-sinal-ponto{width:11px;height:11px;border-radius:50%;background:var(--amber);box-shadow:0 0 0 5px var(--amber-bg)}
.hero-sinal.sinal-ok .hero-sinal-ponto{background:var(--success);box-shadow:0 0 0 5px var(--success-bg)}
.hero-sinal small,.hero-sinal strong{display:block}.hero-sinal small{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--graphite)}
.hero-sinal strong{font-size:14px;color:var(--slate)}
.cockpit-acao{background:linear-gradient(125deg,#1C2B1A,#2B4B22 68%,#426F27);color:#F3F8EF;border-color:#3D632D;overflow:visible}
.cockpit-acao:hover{border-color:#659C43}.cockpit-acao .eyebrow{color:#FFB24A}.cockpit-acao h2{color:#fff;margin:5px 0 7px}.cockpit-acao p{color:#C9D9C1;font-size:13.5px}
.btn.btn-claro{background:#fff;color:#1C2B1A;border-color:#fff;box-shadow:0 8px 20px rgba(0,0,0,.18)}.btn.btn-claro:hover{background:#F2F7EC;color:#1C2B1A}
.btn.btn-contorno{background:transparent;color:#F3F8EF;border-color:#7C9B6D;box-shadow:none}.btn.btn-contorno:hover{background:rgba(255,255,255,.09);color:#fff;border-color:#B6D3A7}

/* Botões uniformizados — inclui a API antiga .bt e a nova .btn */
.bt,.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:11px 18px;
  border:1px solid transparent;border-radius:11px;background:linear-gradient(135deg,#4F8128,var(--forest-dk));color:#fff;
  font-family:var(--sans);font-size:14.5px;font-weight:750;line-height:1.2;letter-spacing:-.01em;cursor:pointer;
  box-shadow:0 7px 17px rgba(62,109,31,.2);transition:transform .16s ease,box-shadow .16s ease,background .16s ease,border-color .16s ease}
.bt:hover,.btn:hover{background:linear-gradient(135deg,#568B2B,#315C18);color:#fff;text-decoration:none;transform:translateY(-1px);
  box-shadow:0 10px 23px rgba(62,109,31,.28)}
.bt:active,.btn:active{transform:translateY(0) scale(.985)}
.bt.sec,.btn-sec{background:var(--card);color:var(--slate);border-color:var(--line);box-shadow:0 3px 10px rgba(28,43,26,.04)}
.bt.sec:hover,.btn-sec:hover{background:var(--forest-lt);color:var(--forest-dk);border-color:rgba(91,146,48,.44)}
.bt.perigo,.btn-perigo{background:var(--coral);box-shadow:0 7px 17px rgba(200,76,62,.16)}
.bt.pq,.btn-mini{min-height:38px;padding:8px 13px;font-size:13px;border-radius:9px}
.bt.total,.btn-largo{width:100%}.bt[disabled],.btn[disabled],.btn.off{opacity:.55;box-shadow:none;cursor:not-allowed;transform:none}
.grupo-btn,.botoes{gap:10px}

/* Formulários de trabalho */
.campo{margin-bottom:17px}.campo label{font-size:12.5px;font-weight:700;color:var(--slate);margin-bottom:7px}
.campo input,.campo select,.campo textarea,.dop-form input,.dop-form select,.dop-form textarea{
  min-height:48px;border:1px solid var(--line);border-radius:11px;background:var(--card);font-family:var(--sans);font-size:15px;
  color:var(--ink);padding:11px 13px;transition:border-color .16s,box-shadow .16s,background .16s}
.campo input:hover,.campo select:hover,.campo textarea:hover{border-color:#AFC3A4}
.campo input:focus,.campo select:focus,.campo textarea:focus,.dop-form input:focus,.dop-form select:focus,.dop-form textarea:focus{
  border-color:var(--forest);box-shadow:0 0 0 4px rgba(91,146,48,.14);outline:0}
.campo .ajuda,.ajuda{font-size:12.5px;line-height:1.55;color:var(--graphite)}
input[type="checkbox"],input[type="radio"]{accent-color:var(--forest)}

/* Métricas, avisos e estados com semântica por cor */
.metricas{gap:12px;background:transparent;border:0;overflow:visible;margin-bottom:18px}
.metrica{border:1px solid var(--line-soft);border-radius:14px;padding:17px 18px;box-shadow:var(--shadow);position:relative;overflow:hidden}
.metrica::after{content:"";position:absolute;right:-26px;top:-26px;width:75px;height:75px;border-radius:50%;background:rgba(120,186,76,.1)}
.metrica .r{font-family:var(--sans);font-size:10px;font-weight:800;letter-spacing:.1em}.metrica .v{font-family:var(--sans);font-size:31px;font-weight:800;letter-spacing:-.05em}
.metrica .n{font-size:12px}.v-ok{color:var(--success-dk)}
.chapa,.rot{min-height:26px;padding:5px 9px;border-radius:999px;font-family:var(--sans);font-size:10.5px;font-weight:750;letter-spacing:.01em}
.ch-ok,.rot.ok{background:var(--success-bg);color:var(--success-dk)}.ch-warn,.ch-am,.rot.am{background:var(--amber-bg);color:var(--amber)}
.ch-al,.rot.al{background:var(--coral-bg);color:var(--coral)}.ch-n{background:var(--line-soft);color:var(--graphite)}
.aviso{padding:15px 17px;border:1px solid rgba(91,146,48,.18);border-left:4px solid var(--forest);border-radius:12px;
  background:var(--forest-lt);font-size:13.5px;box-shadow:0 4px 14px rgba(28,43,26,.025)}
.aviso .t{font-family:var(--sans);font-size:12.5px;text-transform:none;letter-spacing:-.01em}
.flash{padding:14px 48px 14px 17px;border-radius:12px;box-shadow:var(--shadow)}
.flash.ok{background:var(--success-bg);color:var(--success-dk)}
.vao.ok{border-left-color:var(--success)}.vao.crit{border-left-color:var(--coral)}.vao.alto{border-left-color:var(--amber)}

/* Tabelas, filtros e listas */
.tab,.tabela{border-radius:12px;border-color:var(--line);box-shadow:0 3px 12px rgba(28,43,26,.025)}
table{font-size:13.5px}th{background:var(--brand-navy);padding:11px 13px;font-family:var(--sans);font-size:10px;font-weight:750;letter-spacing:.08em}
td{padding:12px 13px}.filtros{gap:8px}.filtros a{min-height:38px;display:inline-flex;align-items:center;padding:8px 13px;border-radius:999px;
  font-family:var(--sans);font-size:12px;font-weight:700}.filtros a[aria-current]{background:var(--forest);border-color:var(--forest)}
.vazio{padding:44px 20px}.vazio .t{font-family:var(--sans);font-size:18px}

/* Centro de preparação: três decisões operacionais */
.centro-preparacao{overflow:visible;border-top:4px solid var(--forest)}
.preparacao-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:18px 20px 21px}
.preparacao-passo{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:16px;
  min-height:112px;border:1px solid var(--line);border-radius:13px;background:var(--card);color:var(--ink);font-weight:500}
.preparacao-passo:hover{background:var(--tint);border-color:rgba(91,146,48,.42);text-decoration:none;transform:translateY(-2px);box-shadow:var(--shadow)}
.preparacao-passo .passo-num{width:36px;height:36px;border-radius:11px;display:grid;place-items:center;background:var(--amber-bg);color:var(--amber);font-weight:800}
.preparacao-passo.feito .passo-num{background:var(--success-bg);color:var(--success-dk)}
.preparacao-passo small,.preparacao-passo strong,.preparacao-passo em{display:block}.preparacao-passo small{font-size:9.5px;text-transform:uppercase;letter-spacing:.09em;color:var(--graphite)}
.preparacao-passo strong{font-size:14px;margin:2px 0}.preparacao-passo em{font-size:11.5px;font-style:normal;color:var(--graphite);line-height:1.4}.preparacao-passo>b{color:var(--forest)}

/* Cópias automáticas */
.destaque-config{border-top:4px solid var(--forest)}
.switch-grande{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:17px 18px;margin-bottom:19px;border:1px solid var(--line);
  border-radius:14px;background:linear-gradient(110deg,var(--tint),var(--card));cursor:pointer}.switch-grande span{flex:1}.switch-grande strong,.switch-grande small{display:block}
.switch-grande strong{font-size:15px}.switch-grande small{font-size:12px;color:var(--graphite);margin-top:2px}.switch-grande input{position:absolute;opacity:0;pointer-events:none}
.switch-grande i{position:relative;width:58px;height:32px;flex:0 0 auto;border-radius:18px;background:#AEB9AA;box-shadow:inset 0 1px 3px rgba(28,43,26,.18);transition:.2s}
.switch-grande i::after{content:"";position:absolute;left:4px;top:4px;width:24px;height:24px;border-radius:50%;background:#fff;box-shadow:0 2px 6px rgba(28,43,26,.25);transition:.2s}
.switch-grande input:checked+i{background:var(--success)}.switch-grande input:checked+i::after{transform:translateX(26px)}
.opcao-card{display:flex;align-items:flex-start;gap:11px;min-height:80px;padding:13px;border:1px solid var(--line);border-radius:11px;background:var(--card);cursor:pointer}
.opcao-card input{margin-top:4px}.opcao-card strong,.opcao-card small{display:block}.opcao-card strong{font-size:13px}.opcao-card small{font-size:11.5px;color:var(--graphite);line-height:1.45;margin-top:2px}
.config-campos{align-items:start}.cron-guia{display:grid;grid-template-columns:auto 1fr;gap:14px;padding:18px;margin-top:21px;border-top:1px solid var(--line-soft)}
.cron-num{width:34px;height:34px;display:grid;place-items:center;border-radius:11px;background:var(--forest);color:#fff;font-weight:800}.cron-guia p{font-size:12.5px;color:var(--graphite);margin:3px 0 10px}
.cmd{border-radius:10px;background:var(--brand-navy);color:#F2F7EC;border:1px solid #3C5C35;font-size:11.5px}
.estado-execucao{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:13px;margin-top:14px;padding:15px 17px;border:1px solid var(--line);border-radius:13px;background:var(--tint)}
.estado-icone{width:36px;height:36px;border-radius:11px;display:grid;place-items:center;background:var(--line);color:var(--graphite);font-weight:800}.estado-icone.ok{background:var(--success-bg);color:var(--success-dk)}
.estado-execucao strong{font-size:13px}.estado-execucao p{font-size:11.5px;color:var(--graphite);margin-top:2px}.secao-titulo{display:flex;align-items:flex-end;justify-content:space-between;gap:15px;margin:31px 0 14px}.secao-titulo h2{margin-top:2px}
.lista-copias{display:grid;gap:10px}.copia-item{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:13px;padding:14px 16px;margin:0;overflow:visible}
.copia-selo{width:36px;height:36px;border-radius:11px;display:grid;place-items:center;background:var(--success-bg);color:var(--success-dk);font-weight:800}.copia-selo.aviso{background:var(--amber-bg);color:var(--amber)}
.copia-info{min-width:0}.copia-info strong,.copia-info span{display:block}.copia-info strong{font-size:11px;word-break:break-all}.copia-info span{font-size:11.5px;color:var(--graphite);margin-top:3px}.copia-acoes{display:flex;gap:8px;align-items:center}

/* Análise em direto e colaboração do assistente */
.analise-live{position:relative;overflow:hidden;border:1px solid rgba(91,146,48,.3);border-left:0;background:
  radial-gradient(circle at 100% 0,rgba(120,186,76,.15),transparent 22rem),var(--card);animation:live-entrada .45s cubic-bezier(.2,.8,.2,1)}
.analise-live::before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:linear-gradient(var(--forest),var(--brand-orange),var(--success))}
.an-cab{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:15px;padding:20px 22px 13px}.an-cab h3{font-size:18px;margin:1px 0 2px}.an-cab .an-msg{margin:0;font-size:13px}
.an-percent{font-size:24px;font-weight:800;letter-spacing:-.05em;color:var(--forest)}
.an-orbita{position:relative;width:48px;height:48px;border-radius:50%;border:1px solid rgba(91,146,48,.24);background:var(--forest-lt)}
.an-orbita::before,.an-orbita::after{content:"";position:absolute;border:1px solid rgba(91,146,48,.45);border-radius:50%;inset:7px}.an-orbita::after{inset:15px;background:var(--forest);border:0;box-shadow:0 0 18px rgba(91,146,48,.5)}
.an-orbita i{position:absolute;width:7px;height:7px;border-radius:50%;background:var(--brand-orange);left:20px;top:-4px;transform-origin:4px 28px;animation:orion-orbita 2.1s linear infinite}
.analise-live .an-trilho{height:9px;margin:0 22px;border-radius:8px;background:var(--line-soft)}.analise-live .an-trilho i{background:linear-gradient(90deg,var(--forest),#91C96C,var(--brand-orange));background-size:180% 100%;animation:live-fluxo 2s linear infinite}
.an-etapas{display:grid;grid-template-columns:repeat(5,1fr);gap:7px;padding:10px 22px 13px}.an-etapas span{font-size:9.5px;font-weight:700;text-align:center;color:var(--graphite);padding:5px;border-radius:7px}
.an-etapas span.ativo{background:var(--forest-lt);color:var(--forest-dk)}.an-etapas span.feito{color:var(--success-dk)}
.an-assistente{display:flex;gap:12px;margin:0 22px 12px;padding:15px 16px;border:1px solid var(--line);border-radius:14px;background:color-mix(in srgb,var(--tint) 72%,var(--card))}
.an-avatar{width:35px;height:35px;flex:0 0 auto;border-radius:11px;display:grid;place-items:center;background:var(--brand-navy);color:#fff;font-weight:800;box-shadow:0 5px 12px rgba(28,43,26,.18)}
.an-assistente small,.an-assistente p,.an-assistente em{display:block}.an-assistente small{font-size:9.5px;text-transform:uppercase;letter-spacing:.1em;color:var(--forest);font-weight:800}.an-assistente p{font-size:13px;line-height:1.55;margin:3px 0}.an-assistente em{font-size:11.5px;color:var(--graphite);font-style:normal}
.analise-live .an-nota{padding:0 22px 17px}.analise-live.an-ok::before{background:var(--success)}.analise-live.an-ok{background:var(--success-bg);border-color:rgba(46,173,20,.25)}
@keyframes orion-orbita{to{transform:rotate(360deg)}}@keyframes live-fluxo{to{background-position:-180% 0}}@keyframes live-entrada{from{opacity:0;transform:translateY(-12px) scale(.99)}to{opacity:1;transform:none}}

/* Assistente permanente e navegação móvel */
.agente-btn{width:58px;height:58px;border-radius:19px;background:linear-gradient(145deg,#78BA4C,#477923);box-shadow:0 12px 30px rgba(62,109,31,.35)}
.agente-btn:hover{background:linear-gradient(145deg,#8ACA5E,#355F1A)}.agente{border-radius:18px 18px 0 0;box-shadow:0 24px 70px rgba(28,43,26,.28)}
.agente-topo{padding:16px 17px;background:linear-gradient(120deg,#1C2B1A,#345626);border-radius:18px 18px 0 0}.agente-topo strong{font-family:var(--sans);font-size:15px;text-transform:none;letter-spacing:-.01em}.agente-topo small{color:#BFD6B3}
.agente-msg{font-size:14px;border-radius:15px}.agente-msg.eu{background:var(--forest)}.agente-form textarea{border-radius:11px}.agente-form button{border-radius:11px;background:var(--forest)}
.barra{min-height:72px;border-top-color:var(--line);box-shadow:0 -8px 24px rgba(28,43,26,.08);padding:6px 5px var(--safe-b)}
.barra a{font-size:10px;font-weight:700;border-radius:11px}.barra .destaque{background:linear-gradient(145deg,#F5A129,#E98200);border-radius:14px;box-shadow:0 7px 16px rgba(183,94,0,.28)}
.barra .destaque,.barra .destaque .ic{color:#1C2B1A}

/* Acesso: marca institucional e produto apresentados como uma única família. */
.auth-body{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:24px;
  background:radial-gradient(circle at 12% 12%,rgba(120,186,76,.18),transparent 26rem),
    radial-gradient(circle at 90% 88%,rgba(242,137,0,.12),transparent 24rem),var(--paper)}
.auth-shell{width:100%;max-width:430px}
.auth-brand{text-align:center;margin-bottom:24px}.auth-brand>img{display:block;width:min(270px,76vw);height:96px;object-fit:contain;margin:0 auto 10px}
.auth-product{display:flex;align-items:center;justify-content:center;gap:9px;color:var(--ink)}
.auth-product span{font-size:27px;font-weight:800;letter-spacing:.14em}.auth-product b{padding:5px 8px;border-radius:8px;
  background:var(--amber-bg);color:var(--amber);font-size:10px;letter-spacing:.05em}
.auth-brand p{color:var(--graphite);font-size:14px;margin-top:5px}.auth-shell>.cartao{border-top:4px solid var(--brand-orange)}
.auth-shell>.cartao form,.auth-shell>form.cartao{padding:22px}.auth-foot{text-align:center;color:var(--graphite);font-size:12px;margin-top:15px}

/* O laranja assinala ações de criação e avanço; o verde mantém as ações
   operacionais e de validação. */
.btn-primario-laranja,.bt.laranja{background:linear-gradient(135deg,#F5A129,#E98200);color:#1C2B1A;box-shadow:0 7px 17px rgba(183,94,0,.22)}
.btn-primario-laranja:hover,.bt.laranja:hover{background:linear-gradient(135deg,#EE930F,#D97600);color:#1C2B1A;box-shadow:0 10px 23px rgba(183,94,0,.3)}

/* Configurador técnico: decisão assistida, mas sempre confirmada pelo operador. */
.campo-obrigatorio{color:var(--coral);font-weight:900;font-size:1.08em}
.aviso-campo{margin:0 0 16px;padding:9px 12px;border:1px solid color-mix(in srgb,var(--amber) 24%,var(--line));
  border-radius:10px;background:color-mix(in srgb,var(--amber-bg) 62%,var(--card));color:var(--graphite);font-size:12.5px}
.preenchimento-assistido{margin:0 0 16px;padding:16px 17px;border:1px solid color-mix(in srgb,var(--forest) 27%,var(--line));
  border-radius:14px;background:linear-gradient(120deg,color-mix(in srgb,var(--forest-lt) 84%,var(--card)),var(--card))}
.preenchimento-assistido-cab{display:flex;align-items:center;justify-content:space-between;gap:16px}
.preenchimento-assistido-cab b{display:block;font-size:14px;margin-top:2px}.preenchimento-percentagem{font-size:22px;font-weight:850;color:var(--forest);letter-spacing:-.05em}
.preenchimento-assistido progress{display:block;width:100%;height:9px;margin:11px 0 8px;border:0;border-radius:9px;overflow:hidden;background:var(--line-soft)}
.preenchimento-assistido progress::-webkit-progress-bar{background:var(--line-soft);border-radius:9px}.preenchimento-assistido progress::-webkit-progress-value{background:linear-gradient(90deg,var(--forest),var(--brand-orange));border-radius:9px}
.preenchimento-assistido progress::-moz-progress-bar{background:linear-gradient(90deg,var(--forest),var(--brand-orange));border-radius:9px}
.preenchimento-assistido p{font-size:12.5px;color:var(--slate);margin:0}.preenchimento-assistido small{display:block;color:var(--graphite);font-size:11.5px;margin-top:4px}
.form-vao-assistido [data-required-for-approval]:valid{border-color:color-mix(in srgb,var(--success) 45%,var(--line));
  background:color-mix(in srgb,var(--success-bg) 28%,var(--card))}
.form-vao-assistido [data-required-for-approval].por-decidir{border-color:color-mix(in srgb,var(--coral) 54%,var(--line));
  background:color-mix(in srgb,var(--coral-bg) 48%,var(--card))}
.validacao-atalhos{display:flex;gap:7px;flex-wrap:wrap;margin:0 0 10px}.validacao-atalhos .btn{width:auto}

/* Estado de cada revisão: cor suave em toda a ficha, não apenas na margem. */
.vao.estado-aprovado{background:color-mix(in srgb,var(--success-bg) 76%,var(--card));border-color:color-mix(in srgb,var(--success) 34%,var(--line));
  box-shadow:0 10px 28px rgba(47,153,83,.08)}
.vao.estado-pendente{background:color-mix(in srgb,var(--coral-bg) 66%,var(--card));border-color:color-mix(in srgb,var(--coral) 28%,var(--line));
  box-shadow:0 10px 28px rgba(200,76,62,.065)}
.vao.estado-excluido{background:color-mix(in srgb,var(--line-soft) 62%,var(--card))}
.vao.estado-aprovado .vao-dados>div,.vao.estado-aprovado .vao-proximo,.vao.estado-aprovado .vao-mais,
.vao.estado-aprovado .vao-acoes .ac{background:color-mix(in srgb,var(--success-bg) 55%,var(--card))}
.vao.estado-pendente .vao-dados>div,.vao.estado-pendente .vao-proximo,.vao.estado-pendente .vao-mais,
.vao.estado-pendente .vao-acoes .ac{background:color-mix(in srgb,var(--coral-bg) 44%,var(--card))}
.vao.estado-aprovado:hover{border-color:color-mix(in srgb,var(--success) 54%,var(--line))}
.vao.estado-pendente:hover{border-color:color-mix(in srgb,var(--coral) 44%,var(--line))}

/* Responsividade real, sem esmagar textos ou ações */
@media(max-width:999px){.lateral{width:min(88vw,330px)}main{padding-top:22px}.topo{padding-left:15px;padding-right:15px}}
@media(max-width:820px){.preparacao-grid{grid-template-columns:1fr}.preparacao-passo{min-height:92px}.config-campos{grid-template-columns:1fr}.estado-execucao{grid-template-columns:auto 1fr}.estado-execucao form{grid-column:1/-1}.estado-execucao .bt{width:100%}
  .copia-item{grid-template-columns:auto 1fr auto}.copia-acoes{grid-column:1/-1}.copia-acoes,.copia-acoes .bt,.copia-acoes form{flex:1}.copia-acoes .bt{width:100%}}
@media(max-width:620px){main{padding:18px 13px 42px}.topo h1{font-size:17px}.pagina-hero{align-items:flex-start;flex-direction:column}.hero-sinal{width:100%}
  .cartao-cab,.cartao-corpo{padding:17px}.pagina h2{font-size:27px}.bt,.btn{width:100%;font-size:14px}.botoes .bt,.botoes .btn{width:auto;flex:1 1 150px}
  .secao-titulo{align-items:stretch;flex-direction:column}.an-cab{grid-template-columns:auto 1fr;padding:17px 16px 12px}.an-percent{grid-column:2}.analise-live .an-trilho{margin:0 16px}.an-etapas{padding:9px 16px;gap:2px}.an-etapas span{font-size:8px;padding:4px 1px}.an-assistente{margin:0 16px 11px;padding:13px}.analise-live .an-nota{padding:0 16px 15px}
  .cron-guia{padding:17px 0}.cmd{font-size:10.5px}.copia-item{grid-template-columns:auto 1fr}.copia-item>.chapa{grid-column:2}.copia-acoes{display:grid;grid-template-columns:1fr 1fr;width:100%}.copia-acoes form{width:100%}
  .auth-body{padding:18px}.auth-brand>img{height:82px}.auth-product span{font-size:24px}.auth-shell>form.cartao{padding:18px}}

@media(max-width:620px){.preenchimento-assistido{padding:14px}.preenchimento-assistido-cab{align-items:flex-start}.preenchimento-percentagem{font-size:19px}}

@media(prefers-reduced-motion:reduce){.an-orbita i,.analise-live .an-trilho i{animation:none}.cartao:hover,.preparacao-passo:hover{transform:none}}
@media print{body{background:#fff}.lateral,.topo,.barra,.agente,.agente-btn,.orionbot-dock{display:none!important}.app{display:block}main{max-width:none;padding:0}.cartao{box-shadow:none}}

/* Configuração base — aplicação rápida por família com salvaguarda das exceções. */
.base-hero{display:grid;gap:22px;padding:26px 28px;background:linear-gradient(135deg,#F5FAF1 0%,#FFF7EA 100%);border-color:#D7E8CB}
.base-hero h2{font-size:clamp(25px,3vw,38px);margin:4px 0 9px;color:var(--ink)}
.base-hero .lead{max-width:820px;margin:0}.base-fluxo{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.base-fluxo span{display:inline-flex;align-items:center;gap:7px;padding:8px 11px;border:1px solid #D4E3CA;border-radius:999px;background:#fff;font-size:12px;font-weight:700;color:var(--slate)}
.base-fluxo b{display:grid;place-items:center;width:21px;height:21px;border-radius:50%;background:var(--forest);color:#fff;font-family:var(--mono);font-size:10px}
.base-fluxo i{font-style:normal;color:var(--brand-orange);font-weight:900}.base-standard{border-left:5px solid var(--brand-orange)}
.base-standard.standard-pronta{border-left-color:var(--forest)}.standard-linha{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}.standard-linha p{margin:0}
.base-familias{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:start}
.base-familia{margin:0!important;overflow:hidden}.base-familia .cartao-cab{min-height:146px;background:linear-gradient(180deg,#FBFDF9,#fff)}
.base-contagem{text-align:right;font-family:var(--mono);font-size:10px;color:var(--graphite);white-space:nowrap}.base-contagem b{font-size:23px;color:var(--forest-dk)}
.base-campos{display:grid;grid-template-columns:1fr;gap:0}.base-campos .campo{margin-bottom:13px}.base-campos .base-destaque label{color:var(--forest-dk)}
.base-campos input,.base-campos select{background:#FCFDFB}.base-alcance{margin-top:18px;border-top:4px solid var(--forest)}
.base-opcao{display:flex;gap:13px;align-items:flex-start;padding:14px;border:1px solid var(--line-soft);border-radius:12px;margin-bottom:11px;background:#FBFCFA;cursor:pointer}
.base-opcao:hover{border-color:#B9D1AB;background:#F7FBF4}.base-opcao input{width:19px;height:19px;flex:0 0 auto;margin-top:2px;accent-color:var(--forest)}
.base-opcao span{display:flex;flex-direction:column;gap:3px}.base-opcao b{font-size:14px;color:var(--ink)}.base-opcao small{font-size:12.5px;line-height:1.5;color:var(--graphite)}
.base-opcao.standard-opcao{border-color:#F0CF98;background:#FFF9EF}.base-opcao.confirmar-opcao{border-color:#A9C998;background:#F5FAF1}.base-acoes{justify-content:flex-end;margin-top:18px}
.base-atalho{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:17px 19px;margin:0 0 14px;border:1px solid #D7E8CB;border-left:5px solid var(--brand-orange);border-radius:var(--r);background:linear-gradient(100deg,#F5FAF1,#FFF8EC);box-shadow:var(--shadow)}
.base-atalho>div{display:grid;grid-template-columns:auto 1fr;gap:5px 10px;align-items:center}.base-atalho b{font-size:15px}.base-atalho small{grid-column:1/-1;color:var(--graphite);line-height:1.45}
@media(max-width:1050px){.base-familias{grid-template-columns:1fr}.base-familia .cartao-cab{min-height:0}.base-campos{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}}
@media(max-width:700px){.base-campos{grid-template-columns:1fr}.base-hero{padding:20px}.base-fluxo i{display:none}.base-atalho{align-items:stretch;flex-direction:column}.base-atalho .btn,.standard-linha form,.standard-linha .btn{width:100%}.base-contagem{text-align:left}.base-familia .cartao-cab{flex-direction:column}}

/* OrionBot — presença operacional e atividade em direto. */
.orionbot-dock{--agente-extra:0px;position:fixed;right:16px;z-index:70;bottom:calc(var(--barra) + 14px + env(safe-area-inset-bottom) + var(--agente-extra));display:flex;flex-direction:column;align-items:flex-end;gap:7px;pointer-events:none;transition:bottom .18s,opacity .2s,transform .2s}
@media(min-width:1000px){.orionbot-dock{bottom:calc(22px + var(--agente-extra))}}
.orionbot-dock.escondido{opacity:0;pointer-events:none;transform:translateY(12px) scale(.94)}
.orionbot-palco{position:relative;width:112px;height:112px;padding:0;border:0;background:transparent;cursor:pointer;pointer-events:auto;isolation:isolate;overflow:visible}
.orionbot-palco::after{content:"";position:absolute;z-index:-1;left:27%;right:18%;bottom:3px;height:10px;border-radius:50%;background:rgba(28,43,26,.18);filter:blur(5px);animation:orionbot-sombra 4.2s ease-in-out infinite}
.orionbot-palco:focus-visible{outline:3px solid var(--brand-orange);outline-offset:3px;border-radius:24px}
.orionbot-avatar{position:relative;z-index:3;display:block;width:112px;height:112px;object-fit:contain;filter:drop-shadow(0 13px 13px rgba(28,43,26,.18));transform-origin:58% 74%;pointer-events:none;animation:orionbot-idle 4.2s cubic-bezier(.45,0,.35,1) infinite;will-change:transform}
.orionbot-palco:hover .orionbot-avatar{animation:orionbot-cumprimenta .72s ease-in-out infinite alternate;filter:drop-shadow(0 16px 15px rgba(28,43,26,.23))}
.orionbot-palco:active .orionbot-avatar{transform:translateY(4px) scale(.94)}
.orionbot-halo,.orionbot-scan{position:absolute;z-index:1;inset:13%;border-radius:50%;pointer-events:none;opacity:0}
.orionbot-halo{background:radial-gradient(circle,rgba(120,186,76,.22),rgba(120,186,76,0) 68%);transform:scale(.7)}
.orionbot-scan{border:2px solid rgba(242,137,0,.55);box-shadow:0 0 16px rgba(242,137,0,.2)}
.orionbot-particula{position:absolute;z-index:4;width:7px;height:7px;border-radius:2px;background:var(--brand-orange);box-shadow:0 0 9px rgba(242,137,0,.7);opacity:0;pointer-events:none}
.orionbot-particula.p1{left:10px;top:46px}.orionbot-particula.p2{right:5px;top:33px;background:var(--forest)}.orionbot-particula.p3{right:14px;bottom:19px;width:5px;height:5px;background:#65D7E4}
.orionbot-dock.a-trabalhar .orionbot-avatar{animation:orionbot-trabalha 1.05s ease-in-out infinite}
.orionbot-dock.a-trabalhar .orionbot-halo{animation:orionbot-halo 1.8s ease-in-out infinite}
.orionbot-dock.a-trabalhar .orionbot-scan{animation:orionbot-scan 2.1s ease-out infinite}
.orionbot-dock.a-trabalhar .orionbot-particula{animation:orionbot-bit 1.35s ease-out infinite}.orionbot-dock.a-trabalhar .p2{animation-delay:.42s}.orionbot-dock.a-trabalhar .p3{animation-delay:.84s}
.orionbot-dock.concluido .orionbot-avatar{animation:orionbot-celebra 1.35s cubic-bezier(.2,.8,.25,1) both}
.orionbot-dock.concluido .orionbot-halo{animation:orionbot-sucesso 1.25s ease-out both;background:radial-gradient(circle,rgba(120,186,76,.38),rgba(120,186,76,0) 70%)}
.orionbot-dock.concluido .orionbot-particula{animation:orionbot-confete 1.2s ease-out both}.orionbot-dock.concluido .p2{animation-delay:.08s}.orionbot-dock.concluido .p3{animation-delay:.16s}
.orionbot-dock.concluido .agente-btn{animation:orionbot-botao-sucesso .8s ease-out}
.orionbot-dock .agente-btn{position:relative!important;right:auto!important;bottom:auto!important;pointer-events:auto;margin-right:4px;flex:0 0 auto}
.orionbot-atividade{position:relative;width:min(290px,calc(100vw - 32px));padding:12px 13px;display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;color:var(--ink);background:color-mix(in srgb,var(--card) 94%,var(--forest-lt));border:1px solid color-mix(in srgb,var(--forest) 28%,var(--line));border-radius:15px 15px 4px 15px;box-shadow:0 15px 38px rgba(28,43,26,.19);pointer-events:none;animation:orionbot-entrada .24s ease-out}
.orionbot-atividade[hidden]{display:none}.orionbot-atividade small,.orionbot-atividade strong,.orionbot-atividade span{display:block}
.orionbot-atividade small{font:700 9px/1.2 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--forest)}
.orionbot-atividade strong{font-size:13px;line-height:1.35;margin:3px 0 2px;color:var(--ink)}
.orionbot-atividade span{font-size:11px;line-height:1.4;color:var(--graphite)}.orionbot-atividade i{font-style:normal}.orionbot-atividade time{font-family:var(--mono);font-style:normal;color:var(--brand-orange);font-weight:700}
.orionbot-pulso{width:10px;height:10px!important;margin-top:4px;border-radius:50%;background:var(--success);box-shadow:0 0 0 0 rgba(91,146,48,.45);animation:orionbot-pulso 1.6s infinite}
.agente-avatar{width:48px;height:48px;object-fit:contain;filter:drop-shadow(0 4px 5px rgba(0,0,0,.2));margin:-7px 1px -4px -3px;animation:orionbot-mini 3.4s ease-in-out infinite;transform-origin:55% 75%}
.an-avatar{overflow:hidden;background:linear-gradient(145deg,var(--forest-lt),#fff)!important;border:1px solid color-mix(in srgb,var(--forest) 30%,var(--line))}
.an-avatar img{width:46px;height:46px;object-fit:contain;transform:translate(-6px,-5px)}
@keyframes orionbot-idle{0%,100%{transform:translateY(0) rotate(0) scale(1)}18%{transform:translateY(-2px) rotate(-1deg) scale(1.008)}50%{transform:translateY(-6px) rotate(1deg) scale(1.015)}72%{transform:translateY(-4px) rotate(0) scale(1.008)}}
@keyframes orionbot-sombra{0%,100%{transform:scaleX(1);opacity:.8}50%{transform:scaleX(.72);opacity:.42}}
@keyframes orionbot-cumprimenta{from{transform:translateY(-3px) rotate(-2deg) scale(1.02)}to{transform:translateY(-7px) rotate(3.5deg) scale(1.035)}}
@keyframes orionbot-trabalha{0%,100%{transform:translateY(0) rotate(-1.5deg) scale(1)}45%{transform:translateY(-7px) rotate(2.5deg) scale(1.025)}70%{transform:translateY(-4px) rotate(-1deg) scale(1.01)}}
@keyframes orionbot-halo{0%,100%{opacity:.2;transform:scale(.7)}50%{opacity:1;transform:scale(1.12)}}
@keyframes orionbot-scan{0%{opacity:0;transform:scale(.45)}25%{opacity:.8}100%{opacity:0;transform:scale(1.35)}}
@keyframes orionbot-bit{0%{opacity:0;transform:translate(0,8px) rotate(0)}35%{opacity:1}100%{opacity:0;transform:translate(-4px,-22px) rotate(135deg)}}
@keyframes orionbot-celebra{0%{transform:translateY(0) rotate(0) scale(1)}20%{transform:translateY(4px) rotate(-4deg) scale(.96,1.04)}48%{transform:translateY(-18px) rotate(6deg) scale(1.08,.96)}70%{transform:translateY(-5px) rotate(-3deg) scale(.99,1.04)}88%{transform:translateY(-9px) rotate(2deg) scale(1.03)}100%{transform:translateY(0) rotate(0) scale(1)}}
@keyframes orionbot-sucesso{0%{opacity:0;transform:scale(.4)}38%{opacity:1}100%{opacity:0;transform:scale(1.45)}}
@keyframes orionbot-confete{0%{opacity:0;transform:translate(0,10px) rotate(0) scale(.4)}28%{opacity:1}100%{opacity:0;transform:translate(-12px,-38px) rotate(260deg) scale(1.2)}}
@keyframes orionbot-botao-sucesso{0%,100%{box-shadow:0 12px 30px rgba(62,109,31,.35)}45%{box-shadow:0 0 0 9px rgba(120,186,76,.18),0 15px 35px rgba(62,109,31,.4)}}
@keyframes orionbot-mini{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-3px) rotate(2deg)}}
@keyframes orionbot-pulso{70%{box-shadow:0 0 0 8px rgba(91,146,48,0)}100%{box-shadow:0 0 0 0 rgba(91,146,48,0)}}
@keyframes orionbot-entrada{from{opacity:0;transform:translateY(7px) scale(.98)}to{opacity:1;transform:none}}

/* Delta de revisão — alterações comerciais isoladas sem reorçamentar tudo. */
.delta-revisao{overflow:hidden;border-left:5px solid var(--forest)}.delta-revisao.reorcamentar{border-left-color:var(--brand-orange)}
.delta-cab{align-items:center;background:linear-gradient(120deg,color-mix(in srgb,var(--forest-lt) 72%,var(--card)),color-mix(in srgb,var(--amber-bg) 38%,var(--card)))}
.delta-metricas{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px}.delta-metricas>div{padding:12px 13px;border:1px solid var(--line-soft);border-radius:12px;background:var(--paper)}
.delta-metricas b,.delta-metricas span{display:block}.delta-metricas b{font-size:21px;line-height:1;color:var(--ink)}.delta-metricas span{margin-top:5px;font-size:10px;text-transform:uppercase;letter-spacing:.07em;color:var(--graphite);font-weight:700}
.delta-metricas .novo b{color:var(--success-dk)}.delta-metricas .alterado b{color:var(--amber)}.delta-metricas .removido b{color:var(--coral)}
.delta-detalhe{margin-top:15px;border-top:1px solid var(--line-soft);padding-top:13px}.delta-detalhe>summary{cursor:pointer;color:var(--forest-dk);font-weight:750;font-size:13px}
.delta-lista{display:grid;gap:9px;margin-top:12px}.delta-item{padding:13px 14px;border:1px solid var(--line);border-left:4px solid var(--amber);border-radius:11px;background:var(--card)}
.delta-item.estado-added{border-left-color:var(--success)}.delta-item.estado-removed{border-left-color:var(--coral)}.delta-item-cab{display:flex;justify-content:space-between;gap:10px;align-items:center}.delta-item-cab>b{font:700 13px var(--mono)}
.delta-item-cab span{font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--graphite)}.delta-item p{font-size:12px;color:var(--graphite);margin:5px 0 0}.delta-item ul{margin:9px 0 0;padding-left:18px}.delta-item li{font-size:11.5px;margin:4px 0}.delta-item del{color:var(--coral)}.delta-item ins{color:var(--success-dk);text-decoration:none;font-weight:700}
.delta-vazio{display:flex;gap:8px;align-items:center;margin-top:14px;padding:13px;border-radius:11px;background:var(--success-bg);color:var(--success-dk)}.delta-vazio span{font-size:12px;color:var(--graphite)}
@media(max-width:700px){.orionbot-palco,.orionbot-avatar{width:88px;height:88px}.orionbot-dock{right:12px;gap:5px}.orionbot-atividade{width:min(260px,calc(100vw - 24px))}.delta-metricas{grid-template-columns:repeat(2,minmax(0,1fr))}.delta-cab{align-items:flex-start}.delta-cab>.chapa{align-self:flex-start}}
@media(prefers-reduced-motion:reduce){.orionbot-avatar,.orionbot-palco::after,.orionbot-halo,.orionbot-scan,.orionbot-particula,.orionbot-pulso,.agente-avatar,.orionbot-dock.concluido .agente-btn{animation:none!important}.orionbot-palco:hover .orionbot-avatar{transform:none}}

/* =====================================================================
   ORIONBOT COMPANHEIRO · cabeça expressiva + conselho contextual
   ===================================================================== */
.orionbot-dock{width:310px;right:18px;align-items:stretch;gap:0;filter:drop-shadow(0 18px 34px rgba(28,43,26,.22))}
.orionbot-cartao{position:relative;pointer-events:auto;padding:58px 12px 12px;border:1px solid rgba(255,255,255,.22);border-radius:24px 24px 18px 18px;background:linear-gradient(145deg,#315D20 0%,#5B9230 58%,#77B642 100%);box-shadow:inset 0 1px rgba(255,255,255,.24),0 16px 42px rgba(28,43,26,.22);isolation:isolate}
.orionbot-cartao::before{content:"";position:absolute;inset:0;border-radius:inherit;z-index:-1;background:radial-gradient(circle at 50% -10%,rgba(255,255,255,.30),transparent 42%),linear-gradient(115deg,transparent 55%,rgba(242,139,0,.14));pointer-events:none}
.orionbot-palco{position:absolute;left:50%;top:-59px;width:174px;height:116px;transform:translateX(-50%);overflow:visible}
.orionbot-palco::after{left:25%;right:25%;bottom:4px;height:8px;background:rgba(20,40,14,.35)}
.orionbot-avatar{width:174px;height:116px;object-fit:contain;transform-origin:50% 68%;filter:drop-shadow(0 11px 12px rgba(18,37,14,.28));animation:orionbot-idle 4.2s cubic-bezier(.45,0,.35,1) infinite}
.orionbot-palco:focus-visible{border-radius:45%;outline-color:#fff}
.orionbot-halo{inset:-3px 12px 0}.orionbot-scan{inset:14px 27px 7px}
.orionbot-particula.p1{left:13px;top:28px}.orionbot-particula.p2{right:12px;top:31px}.orionbot-particula.p3{right:26px;bottom:18px}
.orionbot-olhos{--olho-x:0px;--olho-y:0px;position:absolute;z-index:5;left:31%;top:42%;width:38%;height:31%;display:flex;align-items:center;justify-content:center;gap:18px;pointer-events:none;filter:drop-shadow(0 0 5px rgba(101,231,241,.65))}
.orionbot-olho{position:relative;display:block;width:16px;height:11px;border-radius:50%;background:#66F2F3;box-shadow:0 0 9px #00D7E8,inset 0 -2px rgba(0,95,116,.30);transform:translate(var(--olho-x),var(--olho-y));transform-origin:center;animation:orionbot-pisca 5.6s ease-in-out infinite;transition:width .2s,height .2s,border-radius .2s,background .2s,transform .14s}
.orionbot-olho.direito{animation-delay:.08s}.orionbot-olho b{position:absolute;width:4px;height:4px;left:6px;top:3px;border-radius:50%;background:#EFFFFF;opacity:.85}
.orionbot-dock.expressao-feliz .orionbot-olho{height:9px;border-radius:50% 50% 62% 62%}
.orionbot-dock.expressao-atento .orionbot-olho{width:14px;height:14px}
.orionbot-dock.expressao-alerta .orionbot-olho{width:18px;height:7px;border-radius:4px;background:#FFAA35;box-shadow:0 0 10px #F28B00;animation:orionbot-alerta-olhos 1.25s ease-in-out infinite}
.orionbot-dock.expressao-tecnico .orionbot-olho{width:18px;height:6px;border-radius:2px;animation:orionbot-tecnico-olhos 2.1s ease-in-out infinite}
.orionbot-dock.a-pensar .orionbot-olho.esquerdo{height:3px;transform:translate(var(--olho-x),calc(var(--olho-y) + 3px)) rotate(-7deg)}
.orionbot-dock.a-trabalhar .orionbot-olho{width:21px;height:5px;border-radius:2px;animation:orionbot-processa-olhos .9s ease-in-out infinite alternate}
.orionbot-dock.concluido .orionbot-olho{height:9px;border-radius:50% 50% 15% 15%;transform:translateY(2px) rotate(8deg);animation:none}
.orionbot-dock.concluido .orionbot-olho.direito{transform:translateY(2px) rotate(-8deg)}
.orionbot-dock.agradeceu .orionbot-olho.esquerdo{height:2px;transform:rotate(-9deg)}
.orionbot-conselho{position:relative;padding:12px 12px 9px;border:1px solid rgba(255,255,255,.42);border-radius:15px;background:color-mix(in srgb,var(--card) 96%,#F3FAEF);color:var(--ink);box-shadow:0 8px 24px rgba(31,62,20,.16);min-height:151px}
.orionbot-conselho[hidden]{display:none}.orionbot-conselho-topo{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px}.orionbot-conselho-topo small{font:700 10px/1.2 var(--mono);letter-spacing:.05em;text-transform:uppercase;color:var(--forest)}
.orionbot-conselho-topo>div{display:flex;gap:3px}.orionbot-conselho-topo button{display:grid;place-items:center;width:25px;height:25px;padding:0;border:1px solid var(--line);border-radius:8px;background:var(--card);color:var(--graphite);font-size:16px;cursor:pointer}.orionbot-conselho-topo button:hover{border-color:var(--forest);color:var(--forest)}
.orionbot-dica-titulo{display:block;padding-right:2px;font-size:13.5px;line-height:1.35;color:var(--ink)}.orionbot-dica-texto{margin:4px 0 8px;font-size:11.5px;line-height:1.42;color:var(--graphite);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.orionbot-contexto-extra{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin-top:7px}.orionbot-mini-card{min-width:0;display:flex;align-items:center;gap:6px;padding:6px 7px;border:1px solid var(--line-soft);border-radius:9px;background:var(--surface);color:var(--ink);text-align:left;text-decoration:none;cursor:pointer;overflow:hidden}.orionbot-mini-card>span:first-child{display:grid;place-items:center;flex:0 0 21px;width:21px;height:21px;border-radius:7px;background:#FFF1D8;color:#B86200;font:800 11px/1 var(--mono)}.orionbot-mini-card.tempo>span:first-child{background:#E8F6DD;color:var(--forest)}.orionbot-mini-card>span:last-child{min-width:0}.orionbot-mini-card strong,.orionbot-mini-card small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.orionbot-mini-card strong{font-size:9.5px}.orionbot-mini-card small{font-size:8.5px;color:var(--graphite);margin-top:1px}
.orionbot-conselho-acoes{display:flex;align-items:center;gap:5px;padding-right:45px;margin-top:8px}.orionbot-conselho-acoes button{min-height:27px;padding:5px 8px;border:1px solid var(--line);border-radius:8px;background:var(--card);color:var(--graphite);font:700 9px/1 var(--sans);cursor:pointer}.orionbot-conselho-acoes .orionbot-dica-acao{background:var(--forest);border-color:var(--forest);color:#fff}.orionbot-conselho-acoes button:hover{transform:translateY(-1px)}
.orionbot-dock .agente-btn{position:absolute!important;right:20px!important;bottom:20px!important;width:36px;height:36px;border-radius:11px;margin:0;z-index:8;box-shadow:0 7px 17px rgba(41,84,24,.30)}
.orionbot-minimizar{position:absolute;z-index:9;right:9px;top:9px;display:grid;place-items:center;width:25px;height:25px;padding:0;border:1px solid rgba(255,255,255,.48);border-radius:8px;background:rgba(25,66,18,.72);color:#fff;font:800 17px/1 var(--sans);cursor:pointer;box-shadow:0 4px 10px rgba(22,52,17,.18)}
.orionbot-minimizar:hover{background:var(--brand-orange)}
.orionbot-dock.minimizado{width:146px}.orionbot-dock.minimizado .orionbot-cartao{height:84px;min-height:84px;padding:0;border-radius:18px}.orionbot-dock.minimizado .orionbot-palco{top:-45px;width:132px;height:88px}.orionbot-dock.minimizado .orionbot-avatar{width:132px;height:88px}.orionbot-dock.minimizado .orionbot-conselho,.orionbot-dock.minimizado .orionbot-preferencias,.orionbot-dock.minimizado .orionbot-atividade{display:none!important}.orionbot-dock.minimizado .agente-btn{right:8px!important;bottom:8px!important;width:32px;height:32px}.orionbot-dock.minimizado .orionbot-minimizar{left:8px;right:auto;top:auto;bottom:8px}
.orionbot-atividade{width:auto;margin:0 0 7px;padding:9px 10px;border-color:rgba(255,255,255,.34);border-radius:12px;background:rgba(255,255,255,.94);box-shadow:0 6px 15px rgba(27,53,18,.15)}.orionbot-atividade strong{font-size:12px}.orionbot-atividade span{font-size:10px}
.orionbot-preferencias{display:grid;gap:7px;padding:12px;border-radius:15px;background:var(--card);color:var(--ink)}.orionbot-preferencias[hidden]{display:none}.orionbot-preferencias>strong{font-size:13px}.orionbot-preferencias label{display:grid;gap:3px;font-size:10px;font-weight:700}.orionbot-preferencias input[type=text],.orionbot-preferencias input:not([type]){height:32px;padding:6px 8px;font-size:11px}.orionbot-preferencias .orionbot-check{display:flex;align-items:center;gap:7px;font-size:10.5px}.orionbot-preferencias .orionbot-check input{width:15px;height:15px}.orionbot-preferencias>div{display:flex;gap:6px}.orionbot-preferencias button{padding:7px 9px;border:0;border-radius:8px;background:var(--forest);color:#fff;font-size:10px;font-weight:700;cursor:pointer}.orionbot-preferencias button+button{background:var(--surface);color:var(--graphite)}
.agente-avatar-wrap{display:grid;place-items:center;width:52px;height:42px;overflow:visible;flex:0 0 auto}.agente-avatar{width:58px;height:39px;object-fit:contain;margin:0;transform-origin:50% 70%}
.an-avatar img{width:48px;height:32px;object-fit:contain;transform:none}
@keyframes orionbot-pisca{0%,42%,46%,78%,82%,100%{transform:translate(var(--olho-x),var(--olho-y)) scaleY(1)}44%,80%{transform:translate(var(--olho-x),var(--olho-y)) scaleY(.08)}}
@keyframes orionbot-alerta-olhos{0%,100%{opacity:.72}50%{opacity:1;filter:brightness(1.35)}}
@keyframes orionbot-tecnico-olhos{0%,100%{transform:translate(calc(var(--olho-x) - 2px),var(--olho-y))}50%{transform:translate(calc(var(--olho-x) + 2px),var(--olho-y))}}
@keyframes orionbot-processa-olhos{from{transform:translate(-3px,var(--olho-y));filter:brightness(.8)}to{transform:translate(3px,var(--olho-y));filter:brightness(1.45)}}

/* Centro Fabril */
.factory-hero{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(270px,.55fr);gap:24px;align-items:center;padding:28px;background:linear-gradient(135deg,#F0F8EB,#FFF6E8);border-left:5px solid var(--forest)}.factory-hero h2{margin:4px 0 8px;font-size:clamp(28px,4vw,44px)}.factory-guard{display:flex;align-items:center;gap:12px;padding:15px;border:1px solid #E8C384;border-radius:14px;background:rgba(255,255,255,.82)}.factory-guard>span{display:grid;place-items:center;width:43px;height:43px;border-radius:12px;background:#FFF0D4;color:#B86100;font-size:25px}.factory-guard strong,.factory-guard small{display:block}.factory-guard strong{font-size:13px}.factory-guard small{margin-top:3px;font-size:10.5px;line-height:1.4;color:var(--graphite)}
.factory-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px}.factory-kpis article{padding:16px;border:1px solid var(--line);border-radius:14px;background:var(--card);box-shadow:var(--shadow)}.factory-kpis small,.factory-kpis span{display:block}.factory-kpis small{font:700 9px/1.3 var(--mono);letter-spacing:.05em;text-transform:uppercase;color:var(--graphite)}.factory-kpis strong{display:block;margin:5px 0;font-size:29px;color:var(--forest-dk)}.factory-kpis span{font-size:10px;color:var(--graphite)}.factory-cnc-kpi{border-color:#F1BE77!important}.factory-cnc-kpi strong{color:var(--brand-orange)!important}
.factory-modules{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.factory-module{display:grid;grid-template-columns:36px 1fr auto;gap:10px;align-items:start;padding:13px;border:1px solid var(--line-soft);border-radius:12px;background:var(--surface)}.factory-module>span{display:grid;place-items:center;width:32px;height:32px;border-radius:9px;background:#EAF4E4;color:var(--forest);font:700 10px/1 var(--mono)}.factory-module strong{font-size:13px}.factory-module p{margin:3px 0 0;font-size:10.5px;line-height:1.4;color:var(--graphite)}.factory-module em{align-self:center;padding:5px 7px;border-radius:999px;background:#E8F5E0;color:var(--forest);font:700 8px/1 var(--mono);font-style:normal;text-transform:uppercase}.factory-module.factory-protegido em{background:#FFF0D8;color:#A95800}
.factory-orders,.factory-candidates{display:grid;gap:9px}.factory-order,.factory-candidates>article{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:12px;align-items:center;padding:13px;border:1px solid var(--line-soft);border-radius:12px;background:var(--surface)}.factory-order>div:first-child,.factory-candidates article>div:first-child{min-width:0}.factory-order small,.factory-order strong,.factory-order span,.factory-candidates small,.factory-candidates strong,.factory-candidates span{display:block}.factory-order small,.factory-candidates small{font:700 9px/1.2 var(--mono);color:var(--forest)}.factory-order strong,.factory-candidates strong{margin:3px 0;font-size:13px}.factory-order>div>span,.factory-candidates>article>div>span{font-size:10.5px;color:var(--graphite)}.factory-status-form{display:flex;gap:6px}.factory-status-form select{height:34px;padding:5px 26px 5px 8px;font-size:10px}.factory-status-form .bt{min-height:34px;padding:7px 10px;font-size:10px}.factory-candidate-state{display:flex;align-items:center;gap:8px}.factory-candidate-state form{margin:0}.factory-candidate-state .bt{font-size:10px;white-space:nowrap}.factory-status-draft{background:#EDF1EB}.factory-status-released,.factory-status-in_production{background:#FFF0D8;color:#A95800}.factory-status-completed{background:#E5F5DC;color:var(--forest)}.factory-boundary{margin-top:16px}

@media(max-width:900px){.factory-hero{grid-template-columns:1fr}.factory-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.factory-modules{grid-template-columns:1fr}}
@media(max-width:700px){.orionbot-dock{width:min(286px,calc(100vw - 20px));right:10px}.orionbot-cartao{padding:45px 9px 9px;border-radius:20px}.orionbot-palco{width:138px;height:92px;top:-47px}.orionbot-avatar{width:138px;height:92px}.orionbot-olhos{gap:14px}.orionbot-olho{width:13px;height:8px}.orionbot-conselho{min-height:132px;padding:9px}.orionbot-dica-texto{-webkit-line-clamp:2}.orionbot-contexto-extra{grid-template-columns:1fr}.orionbot-mini-card.noticia{display:none}.orionbot-dock .agente-btn{right:16px!important;bottom:15px!important}.factory-kpis{grid-template-columns:1fr 1fr}.factory-order,.factory-candidates>article{grid-template-columns:1fr}.factory-candidate-state{justify-content:space-between}.factory-status-form{width:100%}.factory-status-form select{flex:1}}
@media(prefers-reduced-motion:reduce){.orionbot-olho{animation:none!important;transition:none}.orionbot-dock .orionbot-olho{transform:none!important}}

.factory-order-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:25px;background:linear-gradient(135deg,#F1F8ED,#FFF7E9);border-left:5px solid var(--brand-orange)}.factory-order-hero h2{margin:4px 0;font-size:32px}.factory-hash{display:flex;flex-direction:column;gap:5px;max-width:350px;padding:11px;border:1px solid var(--line);border-radius:11px;background:rgba(255,255,255,.76)}.factory-hash small{font:700 9px/1.2 var(--mono);text-transform:uppercase;color:var(--graphite)}.factory-hash code{font-size:9px;overflow-wrap:anywhere}.factory-hash span{font-size:10px;color:var(--forest);font-weight:700}.factory-order-nav{position:sticky;top:calc(var(--topo) + 4px);z-index:9;display:flex;gap:4px;overflow-x:auto;margin:0 0 15px;padding:6px;border:1px solid var(--line);border-radius:12px;background:color-mix(in srgb,var(--card) 92%,transparent);backdrop-filter:blur(12px)}.factory-order-nav a{padding:7px 10px;border-radius:8px;color:var(--graphite);font-size:10px;font-weight:700;text-decoration:none;white-space:nowrap}.factory-order-nav a:hover{background:#EDF6E7;color:var(--forest)}.factory-confirm-form{display:grid;gap:10px;margin-top:13px;padding:12px;border:1px solid #EAC47F;border-radius:11px;background:#FFF8EC}.factory-confirm-form .opcao{font-size:11px}.factory-confirm-form .bt{justify-self:start}
.factory-operation-list{display:grid;gap:7px}.factory-operation{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px;border:1px solid var(--line-soft);border-radius:11px;background:var(--surface)}.factory-sequence{display:grid;place-items:center;width:37px;height:37px;border-radius:9px;background:#E8F3E1;color:var(--forest);font:700 10px/1 var(--mono)}.factory-operation strong,.factory-operation small{display:block}.factory-operation strong{font-size:12px}.factory-operation small{margin-top:2px;font-size:9px;color:var(--forest)}.factory-operation p{margin:3px 0 0;font-size:9.5px;color:var(--graphite)}.factory-operation form{display:flex;gap:5px}.factory-operation select{height:32px;padding:5px 24px 5px 7px;font-size:9px}.factory-operation .bt{min-height:32px;padding:6px 8px;font-size:9px}.factory-op-completed{border-color:#BFD9AF;background:#F3FAEF}.factory-op-in_progress{border-color:#F0C578;background:#FFF8E9}.factory-op-blocked{border-color:#E9A8A1;background:#FFF3F1}
.factory-cut-form{max-width:680px;padding:13px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.factory-cut-plans{display:grid;gap:8px;margin-top:13px}.factory-cut-plans>article{display:grid;grid-template-columns:1fr auto;gap:8px;padding:12px;border:1px solid var(--line-soft);border-radius:11px}.factory-cut-plans strong,.factory-cut-plans span{display:block}.factory-cut-plans strong{font-size:12px}.factory-cut-plans span{margin-top:2px;font-size:9.5px;color:var(--graphite)}.factory-bars{grid-column:1/-1;display:flex;gap:5px;flex-wrap:wrap}.factory-bars code{padding:5px 7px;border-radius:7px;background:#EDF4E8;color:var(--forest-dk);font-size:9px}.factory-cut-plans form{grid-column:1/-1}.factory-quality-list{display:grid;gap:6px}.factory-quality{display:grid;grid-template-columns:minmax(200px,1fr) 120px 130px minmax(140px,1fr) auto;gap:6px;align-items:center;padding:8px;border:1px solid var(--line-soft);border-radius:10px;background:var(--surface)}.factory-quality strong,.factory-quality small{display:block}.factory-quality strong{font-size:10.5px}.factory-quality small{font-size:8.5px;color:var(--graphite)}.factory-quality select,.factory-quality input{height:32px;padding:5px 7px;font-size:9px}.factory-quality .bt{min-height:32px;padding:6px 8px;font-size:9px}.factory-quality-passed{border-color:#BFD9AF;background:#F4FAF0}.factory-quality-failed{border-color:#E9A8A1;background:#FFF2F0}
@media(max-width:900px){.factory-quality{grid-template-columns:1fr 110px}.factory-quality input{grid-column:span 1}.factory-quality .bt{grid-column:2}.factory-order-hero{flex-direction:column}.factory-hash{max-width:none;width:100%}}
@media(max-width:700px){.factory-operation{grid-template-columns:38px 1fr}.factory-operation form{grid-column:1/-1}.factory-operation form select{flex:1}.factory-quality{grid-template-columns:1fr}.factory-quality .bt,.factory-quality input{grid-column:1}.factory-order-nav{top:66px}}
.fonte-ligada{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;padding:13px 0;border-bottom:1px solid var(--line-soft)}
.fonte-ligada:last-child{border-bottom:0}.fonte-ligada b{font-size:12.5px}.fonte-ligada .silencio{font-size:13px;line-height:1.5;margin:3px 0}.fonte-ligada small{font:10px var(--mono);color:var(--forest)}
@media(max-width:620px){.fonte-ligada{grid-template-columns:1fr}.fonte-ligada .btn{width:100%}}

/* Centro Fabril — recursos operacionais V1.0 */
.factory-resource-nav{display:flex;gap:8px;flex-wrap:wrap;position:sticky;top:72px;z-index:5;padding:12px 16px}.factory-resource-nav a{padding:9px 13px;border-radius:999px;background:var(--surface-2,#f4f7f2);font-weight:750;font-size:.84rem;color:var(--ink,#173022)}
.factory-resource-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);gap:24px;align-items:start}.factory-resource-form{border:1px solid var(--line,#dce6db);border-radius:18px;padding:18px;background:linear-gradient(145deg,#fbfdf9,#f3f8ef)}.factory-resource-form h3{margin:0 0 4px}.factory-resource-form .bt{margin-top:12px}
.factory-data-list{display:grid;gap:9px}.factory-data-list>article{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:12px 14px;border:1px solid var(--line,#dce6db);border-radius:14px;background:var(--surface,#fff)}.factory-data-list>article>div:first-child{display:grid;gap:3px;min-width:0}.factory-data-list span{font-size:.8rem;color:var(--muted,#68756b)}.factory-data-list.compact{margin-top:18px;max-height:420px;overflow:auto}.factory-check{display:flex;gap:8px;align-items:center;margin:10px 0;font-weight:700}
.factory-settings{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px;margin-bottom:15px}.factory-settings article{display:grid;grid-template-columns:1fr auto;gap:5px 10px;padding:12px;border:1px solid var(--line,#dce6db);border-radius:13px}.factory-settings code{grid-column:1/-1;color:var(--muted,#68756b);font-size:.74rem}.factory-settings strong{overflow-wrap:anywhere}
.factory-table-wrap{overflow:auto;border:1px solid var(--line,#dce6db);border-radius:15px}.factory-table{width:100%;border-collapse:collapse;min-width:850px}.factory-table th,.factory-table td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--line,#e3eae2);font-size:.82rem}.factory-table th{position:sticky;top:0;background:#f1f7ee;color:#47614e;text-transform:uppercase;font-size:.7rem;letter-spacing:.05em}.factory-row-low{background:#fff7f2}
.factory-details{margin-top:16px;border:1px dashed #91ae87;border-radius:15px;padding:12px}.factory-details>summary{cursor:pointer;font-weight:800;color:#315d32}.factory-details[open]>summary{margin-bottom:12px}.factory-inline-form{display:grid;grid-template-columns:minmax(210px,2fr) 1fr .7fr 1fr 1fr auto;gap:10px;align-items:end}.factory-inline-form .bt{margin-bottom:1px}.factory-purchase-actions{display:flex!important;flex-direction:row!important;gap:6px!important;align-items:center;flex-wrap:wrap}.factory-purchase-actions form{margin:0}.factory-purchase-actions .bt{min-height:34px;padding:7px 10px;font-size:.76rem}
.factory-defaults-form{grid-template-columns:minmax(210px,1fr) minmax(210px,1fr) minmax(250px,1.2fr) auto;margin:12px 0 16px;padding:13px;border:1px solid #d8e7d2;border-radius:14px;background:#f7fbf4}.factory-defaults-form .factory-check{align-self:center;margin-bottom:9px}
.factory-homologation{border:1px solid #e8b96d;background:#fff9ed;border-radius:14px;padding:12px;margin-top:12px}.factory-operation-strip{display:flex;gap:10px;overflow:auto;padding-bottom:7px}.factory-operation-strip article{min-width:155px;display:grid;gap:4px;padding:12px;border:1px solid var(--line,#dce6db);border-radius:14px;background:#f8fbf6}.factory-operation-strip span{color:#ef8b00;font-weight:900}.factory-operation-strip small{color:var(--muted,#68756b)}
.factory-shortages{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:8px;margin:0 0 18px}.factory-shortages article{display:grid;grid-template-columns:1fr auto;gap:3px 10px;padding:11px 12px;border:1px solid #edc47e;border-radius:12px;background:#fff9ed}.factory-shortages strong{grid-column:1/-1;font-size:.78rem}.factory-shortages span,.factory-shortages small{font-size:.68rem;color:var(--muted,#68756b)}.factory-shortages b{color:#a85d00;font-size:.75rem}.factory-shortages small{text-align:right}
@media(max-width:1050px){.factory-inline-form{grid-template-columns:repeat(3,1fr)}.factory-defaults-form{grid-template-columns:1fr 1fr}.factory-resource-grid{grid-template-columns:1fr}.factory-resource-nav{position:static}}
@media(max-width:680px){.factory-inline-form{grid-template-columns:1fr 1fr}.factory-inline-form .campo:first-of-type{grid-column:1/-1}.factory-data-list>article{align-items:flex-start;flex-direction:column}.factory-purchase-actions{width:100%}.factory-settings{grid-template-columns:1fr}.factory-resource-form{padding:14px}}

/* Tipologias/unidades introduzidas sem documentos. */
.entrada-manual{overflow:hidden;border-left:5px solid var(--forest)}
.entrada-manual.sem-documentos{border-left-color:var(--brand-orange);box-shadow:0 16px 38px rgba(68,92,54,.14)}
.entrada-manual .cartao-cab{align-items:flex-start;background:linear-gradient(120deg,color-mix(in srgb,var(--forest-lt) 76%,var(--card)),color-mix(in srgb,#fff1d8 44%,var(--card)))}
.manual-seguranca{display:flex;align-items:flex-start;gap:10px;margin-bottom:17px;padding:12px 14px;border:1px solid #c8dfba;border-radius:12px;background:#f2f9ed;color:var(--forest-dk)}
.manual-seguranca>span{display:grid;place-items:center;flex:0 0 25px;width:25px;height:25px;border-radius:8px;background:var(--forest);color:#fff;font-weight:900}
.manual-seguranca p{margin:1px 0 0;font-size:12px;line-height:1.5}.manual-seguranca strong{color:var(--ink)}
.form-manual .grelha3{align-items:end}.manual-acoes{margin-top:8px}.manual-acoes .btn{min-height:42px}
.vao-cab .chapa{margin-right:auto;white-space:nowrap}
@media(min-width:1100px){.form-manual{padding-right:300px}.form-manual .grelha3{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.entrada-manual .cartao-cab{gap:8px}.form-manual .grelha3{grid-template-columns:1fr}.manual-acoes{display:grid}.manual-acoes .btn{width:100%}}

/* ============================================================
   PESQUISA GLOBAL · paleta, página e resultados
   ============================================================ */
.topo-pesquisa{height:38px;min-width:210px;max-width:310px;padding:0 10px;border:1px solid var(--line);
  border-radius:10px;background:var(--paper);color:var(--graphite);display:flex;align-items:center;gap:8px;
  font:600 12px/1 var(--sans);cursor:pointer;transition:border-color .16s,background .16s,box-shadow .16s}
.topo-pesquisa:hover{border-color:var(--forest);background:var(--card);box-shadow:0 4px 14px rgba(16,26,21,.08)}
.topo-pesquisa span{flex:1;text-align:left}.topo-pesquisa kbd,.pesquisa-atalho kbd,.pesquisa-paleta-rodape kbd{
  border:1px solid var(--line);border-bottom-width:2px;border-radius:5px;background:var(--card);color:var(--graphite);
  font:600 10px/1 var(--mono);padding:4px 6px;white-space:nowrap}
.pesquisa-modal[hidden]{display:none!important}.pesquisa-modal{position:fixed;inset:0;z-index:300;display:grid;
  align-items:start;justify-items:center;padding:9vh 18px 18px}.pesquisa-modal-fundo{position:absolute;inset:0;
  background:rgba(8,18,12,.58);backdrop-filter:blur(7px)}
body.pesquisa-aberta{overflow:hidden}.pesquisa-paleta{position:relative;width:min(720px,100%);max-height:min(76vh,720px);
  display:flex;flex-direction:column;background:var(--card);border:1px solid color-mix(in srgb,var(--forest) 42%,var(--line));
  border-radius:18px;box-shadow:0 28px 80px rgba(8,18,12,.3);overflow:hidden;animation:pesquisa-entrada .18s ease-out}
@keyframes pesquisa-entrada{from{opacity:0;transform:translateY(-10px) scale(.985)}to{opacity:1;transform:none}}
.pesquisa-paleta-cab{padding:12px;border-bottom:1px solid var(--line)}.pesquisa-paleta-cab form{
  display:flex;align-items:center;gap:10px;color:var(--forest)}.pesquisa-paleta-cab input{flex:1;min-width:0;height:46px;
  border:0;outline:0;background:transparent;color:var(--ink);font:600 16px/1.3 var(--sans)}
.pesquisa-paleta-cab input::placeholder{color:var(--graphite);font-weight:500}.pesquisa-fechar{border:1px solid var(--line);
  border-radius:7px;background:var(--paper);color:var(--graphite);padding:6px 8px;font:600 10px var(--mono);cursor:pointer}
.pesquisa-paleta-corpo{overflow:auto;padding:8px;min-height:150px;overscroll-behavior:contain}
.pesquisa-paleta-grupo+.pesquisa-paleta-grupo{margin-top:8px}.pesquisa-paleta-grupo-titulo{padding:7px 10px 5px;
  color:var(--graphite);font:700 9.5px/1 var(--mono);text-transform:uppercase;letter-spacing:.11em}
.pesquisa-paleta-item{display:grid;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:10px;
  padding:9px 10px;border-radius:10px;color:var(--ink);text-decoration:none}.pesquisa-paleta-item:hover,
.pesquisa-paleta-item.selecionado{background:var(--forest-lt);color:var(--ink);text-decoration:none}
.pesquisa-paleta-icone,.pesquisa-resultado-icone{width:34px;height:34px;border-radius:9px;background:var(--paper);
  border:1px solid var(--line);display:grid;place-items:center;color:var(--forest);font:700 10px var(--mono)}
.pesquisa-paleta-texto{min-width:0;display:grid;gap:2px}.pesquisa-paleta-texto strong{font-size:13px;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pesquisa-paleta-texto small{color:var(--graphite);font-size:11.5px;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pesquisa-paleta-badge,.pesquisa-badge{color:var(--forest);
  background:var(--forest-lt);border-radius:20px;padding:4px 7px;font:700 9px var(--mono);white-space:nowrap}
.pesquisa-paleta-vazio,.pesquisa-paleta-carregar{min-height:140px;display:grid;place-content:center;text-align:center;
  gap:5px;color:var(--graphite);padding:22px}.pesquisa-paleta-vazio strong{color:var(--ink);font-size:14px}
.pesquisa-paleta-todos{display:block;margin:8px;padding:10px;text-align:center;border-radius:9px;background:var(--paper);
  color:var(--forest);font-weight:700;font-size:12px}.pesquisa-paleta-rodape{display:flex;align-items:center;gap:14px;
  padding:10px 14px;border-top:1px solid var(--line);color:var(--graphite);font-size:10px}.pesquisa-paleta-rodape span{
  display:flex;align-items:center;gap:4px}.pesquisa-paleta-rodape a{margin-left:auto;font-weight:700}
.pesquisa-cab{align-items:flex-end}.pesquisa-atalho{display:flex;align-items:center;gap:5px;color:var(--graphite);
  font-size:11px}.pesquisa-pagina-form{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;
  gap:10px;margin:18px 0;padding:10px 10px 10px 15px;background:var(--card);border:1px solid var(--line);
  border-radius:15px;box-shadow:0 12px 30px rgba(16,26,21,.07);color:var(--forest)}
.pesquisa-pagina-form:focus-within{border-color:var(--forest);box-shadow:0 0 0 3px var(--forest-lt),0 12px 30px rgba(16,26,21,.08)}
.pesquisa-pagina-form input{width:100%;min-width:0;height:45px;border:0;outline:0;background:transparent;color:var(--ink);
  font:600 16px var(--sans)}.pesquisa-limpar{color:var(--graphite);font-size:12px;font-weight:700}
.pesquisa-resumo{display:flex;align-items:baseline;gap:6px;margin:2px 0 18px;color:var(--graphite);font-size:13px}
.pesquisa-resumo strong{color:var(--ink);font:800 20px var(--mono)}.pesquisa-resumo span{margin-left:auto;font:500 10px var(--mono)}
.pesquisa-principio{margin:2px 0 18px}.pesquisa-grupos{display:grid;gap:18px}.pesquisa-grupo{min-width:0}
.pesquisa-grupo-cab{display:flex;align-items:center;gap:8px;margin-bottom:7px}.pesquisa-grupo-cab h3{margin:0;
  text-transform:none;font-size:16px;letter-spacing:-.01em}.pesquisa-grupo-cab span{min-width:22px;height:22px;border-radius:12px;
  display:grid;place-items:center;background:var(--forest-lt);color:var(--forest);font:700 10px var(--mono)}
.pesquisa-lista{background:var(--card);border:1px solid var(--line);border-radius:13px;overflow:hidden;box-shadow:var(--shadow)}
.pesquisa-resultado{display:grid;grid-template-columns:38px minmax(0,1fr) auto 12px;align-items:center;gap:11px;
  padding:12px 14px;color:var(--ink);text-decoration:none;border-bottom:1px solid var(--line-soft)}
.pesquisa-resultado:last-child{border-bottom:0}.pesquisa-resultado:hover{background:var(--tint);text-decoration:none}
.pesquisa-resultado-texto{min-width:0;display:grid;gap:2px}.pesquisa-resultado-texto strong{font-size:13.5px;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pesquisa-resultado-texto small{font-size:11.5px;color:var(--graphite);
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pesquisa-seta{color:var(--forest);font-size:22px}
.pesquisa-vazio{margin-top:18px}.estado-vazio-icone{font-size:30px;color:var(--forest)}
@media(max-width:760px){.topo-pesquisa{min-width:38px;width:38px;padding:0;justify-content:center}.topo-pesquisa span,
  .topo-pesquisa kbd{display:none}.pesquisa-modal{padding:8px;align-items:start}.pesquisa-paleta{max-height:calc(100dvh - 16px);
  border-radius:14px}.pesquisa-paleta-rodape span{display:none}.pesquisa-pagina-form{grid-template-columns:auto minmax(0,1fr) auto;
  padding:8px 8px 8px 12px}.pesquisa-pagina-form .btn{grid-column:1/-1;width:100%}.pesquisa-limpar{padding:8px}
  .pesquisa-resultado{grid-template-columns:36px minmax(0,1fr) 10px;padding:11px}.pesquisa-resultado .pesquisa-badge{display:none}
  .pesquisa-paleta-badge{display:none}.pesquisa-paleta-item{grid-template-columns:34px minmax(0,1fr)}.pesquisa-resumo span{display:none}}
