/* ─────────────────────────────────────────────────────────────
   HNEX · v2 — camada de direção visual
   Papel, areia, vidro e bronze. Carrega DEPOIS de hnex.css e
   admin.css: redefine os tokens e reescreve a pele de cada
   componente. Nenhuma classe nova é obrigatória — as telas
   existentes ganham a aparência v2 só por carregar este arquivo.
   ───────────────────────────────────────────────────────────── */

:root{
  /* superfícies — papel quente */
  --p:#E9E2D4;
  --p-2:#E1D9C8;
  --c:rgba(255,255,255,.80);
  --c-solido:#FFFFFF;
  --c2:rgba(246,241,230,.92);
  --c3:#EFE8D9;
  --i:#171511;
  --i2:#4E4938;
  --i3:#665E4E;

  --ln:rgba(28,24,14,.14);
  --ln2:rgba(28,24,14,.085);

  /* acento — oliva de ateliê */
  --ac:#5F5C21;
  --ac-deco:#B9B05A;
  --ac-2:#D9D3A4;
  --ac-ink:#FCFAEF;
  --ac-soft:#F1EEDA;

  /* segundo acento — bronze */
  --metal:#775C33;
  --metal-deco:#B08A4E;
  --metal-soft:#F5EDDE;

  /* semânticos */
  --warn:#A03B22;
  --warn-soft:#FAEAE2;
  --ok:#3C6B4F;
  --ok-soft:#E8F0E6;

  /* casca */
  --shell:#171511;
  --shell-2:#1E1B15;
  --shell-3:#272318;
  --shell-line:#3A3527;
  --shell-txt:#F4EFE3;
  --shell-mut:#ADA595;

  /* forma */
  --r:28px;
  --r-s:24px;
  --r-xs:16px;
  --r-pill:999px;

  /* elevação — luz difusa, sem borda dura */
  --sh-1:0 1px 2px rgba(58,46,24,.05), 0 12px 26px -18px rgba(58,46,24,.45);
  --sh-2:0 2px 4px rgba(58,46,24,.06), 0 28px 56px -30px rgba(58,46,24,.55);
  --sh-3:0 4px 10px rgba(58,46,24,.07), 0 60px 110px -48px rgba(58,46,24,.6);
  --sh-glass:inset 0 1px 0 rgba(255,255,255,.85), 0 1px 2px rgba(58,46,24,.05), 0 22px 44px -30px rgba(58,46,24,.5);

  /* tipo */
  --display:"Instrument Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
  --body:"Instrument Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
  --mono:"IBM Plex Mono",ui-monospace,"SF Mono",Menlo,monospace;
}

/* ── fundo: papel, foto e grão ────────────────────────────── */
html{background-color:var(--p)}
body{
  background-color:var(--p);
  color:var(--i);
  font-family:var(--body);
}

.v2-fundo{
  position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden;
  background-color:var(--p);
}
.v2-fundo i{position:absolute;display:block;border-radius:50%;font-style:normal}
.v2-fundo .b1{
  top:-22vmax;left:-14vmax;width:72vmax;height:72vmax;
  background:radial-gradient(circle at 45% 45%, rgba(255,252,242,.95), rgba(255,252,242,0) 62%);
}
.v2-fundo .b2{
  bottom:-30vmax;right:-18vmax;width:84vmax;height:84vmax;
  background:radial-gradient(circle at 55% 45%, rgba(214,209,166,.62), rgba(214,209,166,0) 66%);
}
.v2-fundo .b3{
  top:36%;left:48%;width:56vmax;height:56vmax;
  background:radial-gradient(circle at 50% 50%, rgba(203,168,124,.34), rgba(203,168,124,0) 64%);
}
.v2-fundo .b4{
  bottom:-16vmax;left:-10vmax;width:52vmax;height:52vmax;
  background:radial-gradient(circle at 50% 50%, rgba(164,158,116,.30), rgba(164,158,116,0) 68%);
}
/* foto de ambiente, em opacidade baixa */
.v2-fundo .foto{
  position:absolute;inset:-6% -6% auto -6%;height:112%;
  background-image:url("../assets/nex-objeto-900.jpg");
  background-size:cover;background-position:center 32%;
  opacity:.32;filter:blur(1px) saturate(1.05);
  -webkit-mask-image:radial-gradient(90% 78% at 62% 26%,#000 0,rgba(0,0,0,.45) 52%,transparent 82%);
          mask-image:radial-gradient(90% 78% at 62% 26%,#000 0,rgba(0,0,0,.45) 52%,transparent 82%);
  will-change:transform;
}
/* grão fino */
.v2-fundo .grao{
  position:absolute;inset:0;opacity:.42;mix-blend-mode:multiply;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='140' height='140'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.82' numOctaves='3' stitchTiles='stitch'/><feColorMatrix type='saturate' values='0'/></filter><rect width='140' height='140' filter='url(%23n)' opacity='.22'/></svg>");
}
.v2-fundo .veu{
  position:absolute;inset:0;
  background:linear-gradient(180deg, rgba(255,253,247,.42) 0%, rgba(233,226,212,.06) 34%, rgba(206,196,170,.30) 100%);
}

.v2.hx,.v2 .hx{position:relative;z-index:1;background-color:transparent}
.v2.pub,.v2 .pub{position:relative;z-index:1;background-color:transparent}

/* ── casca: trilha flutuante de vidro ─────────────────────── */
.v2.hx,.v2 .hx{
  grid-template-columns:286px minmax(0,1fr);
  padding:18px 18px 18px 18px;
  gap:16px;
}
.v2 .hx-rail{
  position:sticky;top:18px;height:calc(100dvh - 36px);
  padding:16px 14px;gap:4px;
  background-color:rgba(255,255,255,.74);
  -webkit-backdrop-filter:blur(22px) saturate(1.25);
          backdrop-filter:blur(22px) saturate(1.25);
  border:1px solid rgba(255,255,255,.85);
  border-radius:var(--r-s);
  box-shadow:var(--sh-glass);
  color:var(--i);
  overflow:auto;
  scrollbar-width:thin;
}
.v2 .hx-brand{padding:6px 8px 20px}
.v2 .hx-mark{
  width:40px;height:40px;border-radius:13px;
  background-color:var(--i);color:#F7F1E3;
  font-family:var(--body);font-size:14px;font-weight:600;letter-spacing:.02em;
  box-shadow:0 8px 18px -10px rgba(23,21,17,.85);
}
.v2 .hx-bm b{color:var(--i);font-size:17px;font-weight:600;letter-spacing:-.015em}
.v2 .hx-rail .hx-bm b{color:var(--i)}
.v2 .hx-bm span,
.v2 .hx-rail .hx-bm span{color:var(--i3);font-size:12px;letter-spacing:.11em}

.v2 .hx-nav{gap:2px;display:flex;flex-direction:column}
.v2 .hx-navgrp{
  font-family:var(--mono);font-size:12px;letter-spacing:.15em;
  color:var(--i3);padding:16px 10px 7px;
}
.v2 .hx-nav a{
  display:flex;align-items:center;gap:10px;min-height:46px;
  padding:0 12px;border-radius:var(--r-pill);
  color:var(--i2);font-size:14.5px;font-weight:500;
  transition:background-color var(--dur-state) var(--ease-out),color var(--dur-state) var(--ease-out),transform var(--dur-state) var(--ease-out);
}
.v2 .hx-nav a:hover{background-color:rgba(246,241,230,.9);color:var(--i);text-decoration:none;transform:translateX(2px)}
.v2 .hx-nav a[aria-current="page"]{
  background-color:#F1EBD8;color:var(--i);font-weight:600;box-shadow:none;
}
.v2 .hx-dot{
  width:7px;height:7px;border-radius:2px;background-color:rgba(28,24,14,.22);
  transition:background-color var(--dur-state) var(--ease-out),transform var(--dur-state) var(--ease-out);
}
.v2 .hx-nav a:hover .hx-dot{transform:scale(1.15)}
.v2 .hx-nav a[aria-current="page"] .hx-dot{background-color:var(--ac-deco)}
.v2 .hx-nav .hx-n{
  font-family:var(--mono);font-size:12px;color:var(--i3);
  background-color:rgba(28,24,14,.055);border-radius:var(--r-pill);padding:2px 7px;
}
.v2 .hx-rail-fim{border-top:1px solid var(--ln2);padding-top:12px;margin-top:14px}
.v2 .hx-me{
  background-color:rgba(255,255,255,.7);border:1px solid rgba(255,255,255,.9);
  border-radius:18px;padding:9px;box-shadow:var(--sh-1);
}
.v2 .hx-me b{color:var(--i)}
.v2 .hx-me .hx-me-sub{color:var(--i3)}
.v2 .adm .hx-me b,.v2 .hx-me b{color:var(--i)}

/* marca administrativa em oliva */
.v2 .adm-mark{background-color:var(--ac);color:var(--ac-ink)}
.v2 .adm-av,.v2 .hx-av{background-color:#E7DFC9;color:var(--i);background-image:none}

/* ── barra de topo ────────────────────────────────────────── */
.v2 .hx-top{
  position:relative;top:auto;
  padding:4px 16px 16px 16px;
  background-color:transparent;
  -webkit-backdrop-filter:none;backdrop-filter:none;
  border-bottom:0;
}
.v2 .hx-crumb{font-size:13px;color:var(--i3);font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase}
.v2 .hx-crumb b{color:var(--i);font-weight:500}
.v2 .hx-busca{
  min-height:46px;border-radius:var(--r-pill);
  background-color:rgba(255,255,255,.82);border:1px solid rgba(255,255,255,.9);
  color:var(--i3);font-size:14px;box-shadow:var(--sh-1);
  -webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);
}
.v2 .hx-busca:hover{border-color:rgba(255,255,255,.95);box-shadow:0 0 0 4px rgba(185,176,90,.22),var(--sh-1);color:var(--i2)}
.v2 .hx-busca kbd{background-color:rgba(246,241,230,.9);border-color:var(--ln);color:var(--i3)}
.v2 .hx-ic{
  width:46px;height:46px;
  background-color:rgba(255,255,255,.82);border:1px solid rgba(255,255,255,.9);
  color:var(--i2);box-shadow:var(--sh-1);
}
.v2 .hx-ic:hover{background-color:#fff;color:var(--i);border-color:#fff}
/* piso de toque: qualquer controle pequeno clicável chega a 46px */
.v2 button.hx-chip{min-height:46px;padding:0 15px}
.v2 button.hx-prf-tag{min-height:46px;padding:0 14px}
.v2 .k-nda input{width:46px;height:46px}
.v2 .entra-lembra input{width:20px;height:20px;margin:0}

/* ── corpo e cabeçalho de página ──────────────────────────── */
.v2 .hx-main{padding:8px 16px 34px 16px;gap:22px}
.v2 .hx-ph{align-items:flex-start;gap:20px}
.v2 .hx-ph h1{
  font-family:var(--display);
  font-size:clamp(34px,4.1vw,58px);
  line-height:1.02;letter-spacing:-.038em;font-weight:500;
  margin-top:10px;color:var(--i);text-wrap:balance;
}
.v2 .hx-ph p{color:var(--i2);font-size:15.5px;max-width:64ch;margin-top:12px;line-height:1.6}
.v2 .hx-ph .acoes{gap:8px;align-items:center}

/* etiqueta de contexto — vira a linha mono acima do título */
.v2 .adm-etq,.v2 .eyebrow{
  display:inline-flex;align-items:center;gap:8px;min-height:0;padding:0;
  background-color:transparent;border:0;border-radius:0;
  font-family:var(--mono);font-size:12px;letter-spacing:.15em;color:var(--i3);
}
.v2 .adm-etq::before{content:"";width:6px;height:6px;border-radius:50%;background-color:var(--ac-deco)}
.v2 .eyebrow{letter-spacing:.15em;color:var(--i3)}

/* ── botões ───────────────────────────────────────────────── */
.v2 .hx-btn{
  min-height:46px;padding:0 20px;border-radius:var(--r-pill);
  background-color:rgba(255,255,255,.9);color:var(--i);
  border:1px solid rgba(255,255,255,.95);
  font-size:14.5px;font-weight:600;letter-spacing:-.005em;
  box-shadow:0 1px 2px rgba(58,46,24,.06),0 10px 22px -16px rgba(58,46,24,.5);
  transition:transform var(--dur-state) var(--ease-out),box-shadow var(--dur-state) var(--ease-out),
             background-color var(--dur-state) var(--ease-out),color var(--dur-state) var(--ease-out);
}
.v2 .hx-btn:hover{transform:translateY(-1px);box-shadow:0 2px 4px rgba(58,46,24,.08),0 18px 30px -18px rgba(58,46,24,.6);background-color:#fff}
.v2 .hx-btn--p{
  background-color:var(--i);color:#FBF6EA;border-color:var(--i);
  box-shadow:0 2px 6px rgba(23,21,17,.2),0 18px 32px -18px rgba(23,21,17,.8);
}
.v2 .hx-btn--p:hover{background-color:#221F18;border-color:#221F18;box-shadow:0 4px 10px rgba(23,21,17,.22),0 24px 40px -20px rgba(23,21,17,.85)}
.v2 .hx-btn--m{background-color:var(--ac);color:var(--ac-ink);border-color:var(--ac);box-shadow:0 16px 30px -18px rgba(110,108,44,.9)}
.v2 .hx-btn--m:hover{background-color:#7C7A33;border-color:#7C7A33}
.v2 .hx-btn--g{background-color:rgba(255,255,255,.55);color:var(--i);border-color:rgba(28,24,14,.14)}
.v2 .hx-btn--g:hover{background-color:#fff;border-color:rgba(28,24,14,.2)}
.v2 .hx-btn--s{background-color:var(--ac-soft);color:#4F4D18;border-color:#E4DFC4}
.v2 .hx-btn--s:hover{background-color:#EAE5CC}
.v2 .hx-btn--d{background-color:var(--warn-soft);color:var(--warn);border-color:#F0D8CB}
.v2 .hx-btn--ghost{background-color:transparent;color:var(--i2);border-color:transparent;box-shadow:none}
.v2 .hx-btn--ghost:hover{background-color:rgba(255,255,255,.6);color:var(--i)}
.v2 .hx-btn--p.hx-lustro::after{background:linear-gradient(100deg,transparent 20%,rgba(255,255,255,.42) 45%,transparent 68%)}

/* ── cartões de vidro ─────────────────────────────────────── */
.v2 .hx-card{
  position:relative;
  background-color:var(--c);
  border:1px solid rgba(255,255,255,.86);
  border-radius:var(--r-s);
  box-shadow:var(--sh-glass);
  padding:22px;
  -webkit-backdrop-filter:blur(18px) saturate(1.15);
          backdrop-filter:blur(18px) saturate(1.15);
  transition:transform var(--dur-state) var(--ease-out),box-shadow var(--dur-state) var(--ease-out),border-color var(--dur-state) var(--ease-out);
}
.v2 .hx-card:hover{transform:translateY(-2px);box-shadow:inset 0 1px 0 rgba(255,255,255,.95),0 2px 6px rgba(58,46,24,.06),0 34px 60px -34px rgba(58,46,24,.6)}
.v2 .hx-card--h::before{
  height:100%;top:0;border-radius:var(--r-s);
  background:radial-gradient(220px 160px at var(--mx,50%) var(--my,0%),rgba(185,176,90,.20),transparent 70%);
  opacity:0;transform:none;transition:opacity var(--dur-state) var(--ease-out);
}
.v2 .hx-card--h:hover::before{opacity:1;transform:none}
.v2 .hx-card--livre{background-color:rgba(241,238,218,.88);border-color:#E6E1C6}
.v2 .hx-card--escuro{
  background-color:var(--shell-2);border-color:rgba(255,255,255,.06);color:var(--shell-txt);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 30px 60px -34px rgba(23,21,17,.9);
}
.v2 .hx-card--escuro .hx-card-tit{color:var(--shell-txt)}
.v2 .hx-card--escuro .hx-meta,.v2 .hx-card--escuro p{color:var(--shell-mut)}
.v2 .hx-card-tit{font-size:16px;font-weight:600;letter-spacing:-.015em;line-height:1.3}
.v2 .hx-card-top{margin-bottom:16px;align-items:baseline}
.v2 .hx-meta{font-family:var(--mono);font-size:12px;letter-spacing:.08em;color:var(--i3);text-transform:uppercase}
.v2 .hx-card--escuro .hx-meta{color:#ADA595}

.v2 .hx-grid{gap:14px}
.v2 .hx-grid--4{gap:14px}
.v2 .hx-split{gap:16px}
.v2 .hx-num{
  font-family:var(--display);font-size:clamp(30px,2.6vw,38px);
  font-weight:500;letter-spacing:-.045em;line-height:1;color:var(--i);
}
.v2 .hx-num span{font-family:var(--mono);font-size:13px;color:var(--i3);font-weight:400;letter-spacing:0;margin-left:3px}
.v2 .hx-num span[data-conta]{font-size:inherit;color:inherit;font-weight:inherit;letter-spacing:inherit;margin:0}
.v2 .hx-card--escuro .hx-num{color:var(--shell-txt)}
.v2 .hx-delta{background-color:rgba(232,240,230,.85);color:var(--ok);font-size:12px;padding:3px 9px;border:1px solid #D7E4D5}
.v2 .hx-delta--baixo{background-color:var(--warn-soft);color:var(--warn);border-color:#F0D8CB}
.v2 .hx-hint{font-size:13px;color:var(--i3);line-height:1.55}

/* ── selos ────────────────────────────────────────────────── */
.v2 .hx-chip{
  min-height:28px;padding:0 11px;border-radius:var(--r-pill);
  background-color:rgba(255,255,255,.85);border:1px solid rgba(28,24,14,.12);
  color:var(--i2);font-size:12.5px;font-weight:500;letter-spacing:-.005em;
}
.v2 .hx-chip--on{background-color:var(--i);border-color:var(--i);color:#FBF6EA}
.v2 .hx-chip--ok{background-color:var(--ok-soft);border-color:#D3E3D1;color:var(--ok)}
.v2 .hx-chip--warn{background-color:var(--warn-soft);border-color:#F0D8CB;color:var(--warn)}
.v2 .hx-chip--metal{background-color:var(--metal-soft);border-color:#EADCC4;color:#7A5C2E}
.v2 .hx-card--escuro .hx-chip{background-color:rgba(255,255,255,.08);border-color:rgba(255,255,255,.14);color:var(--shell-txt)}
.v2 .hx-pill-live::before{background-color:#8FA65B}
@keyframes pulso{0%,100%{box-shadow:0 0 0 0 rgba(143,166,91,.55)}50%{box-shadow:0 0 0 6px rgba(143,166,91,0)}}

/* ── formulário ───────────────────────────────────────────── */
.v2 .hx-field label{font-size:12.5px;font-weight:600;color:var(--i2);letter-spacing:.04em;text-transform:uppercase;font-family:var(--mono)}
.v2 .hx-input,.v2 .hx-select,.v2 .hx-area,.v2 .hx-busca{
  background-color:rgba(255,255,255,.86);
  border:1px solid rgba(28,24,14,.13);
  border-radius:var(--r-xs);
  color:var(--i);font-size:14.5px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 1px 2px rgba(58,46,24,.04);
}
.v2 .hx-input:hover,.v2 .hx-select:hover,.v2 .hx-area:hover{border-color:rgba(28,24,14,.22)}
.v2 .hx-input:focus,.v2 .hx-select:focus,.v2 .hx-area:focus,.v2 .hx-busca:focus{
  border-color:var(--ac);box-shadow:0 0 0 4px rgba(185,176,90,.26),inset 0 1px 0 rgba(255,255,255,.9);
}
.v2 .hx-input::placeholder,.v2 .hx-area::placeholder{color:#8A8172}
.v2 :focus-visible{outline:3px solid var(--ac);outline-offset:3px;border-radius:8px}

/* ── segmentado: pílula escura no ativo ───────────────────── */
.v2 .hx-seg{
  background-color:rgba(255,255,255,.6);border:1px solid rgba(255,255,255,.9);
  border-radius:var(--r-pill);padding:4px;gap:2px;box-shadow:var(--sh-1);
}
.v2 .hx-seg button{
  min-height:46px;padding:0 15px;border-radius:var(--r-pill);border:0;
  background-color:transparent;color:var(--i2);font-size:13.5px;font-weight:600;
  transition:background-color var(--dur-state) var(--ease-out),color var(--dur-state) var(--ease-out);
}
.v2 .hx-seg button:hover{color:var(--i)}
.v2 .hx-seg button[aria-pressed="true"]{
  background-color:var(--i);color:#FBF6EA;box-shadow:0 8px 18px -12px rgba(23,21,17,.9);
}
.v2 .adm .hx-seg button{min-height:46px}

/* ── filtros ──────────────────────────────────────────────── */
.v2 .adm-filtros{
  background-color:rgba(255,255,255,.62);border:1px solid rgba(255,255,255,.85);
  border-radius:var(--r-s);box-shadow:var(--sh-1);
  -webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);
  padding:11px;
}
.v2 .adm-sel,.v2 .adm-campo{
  min-height:46px;border-radius:var(--r-pill);
  background-color:rgba(255,255,255,.92);border:1px solid rgba(28,24,14,.12);
  color:var(--i);font-size:13.5px;
}
.v2 .adm-campo{color:var(--i3)}
.v2 .adm-sel:hover,.v2 .adm-campo:hover{border-color:rgba(28,24,14,.24)}
.v2 .adm-chip{
  min-height:46px;border-radius:var(--r-pill);
  background-color:rgba(255,255,255,.8);border:1px solid rgba(28,24,14,.12);
  color:var(--i2);font-size:13.5px;
}
.v2 .adm-chip:hover{background-color:#fff;color:var(--i)}
.v2 .adm-chip[aria-pressed="true"]{background-color:var(--i);border-color:var(--i);color:#FBF6EA}
.v2 .adm-chip b{font-family:var(--mono);font-size:12px}

/* ── tabelas ──────────────────────────────────────────────── */
.v2 .adm-tab-w,.v2 .hx-tab-w{
  border:1px solid rgba(255,255,255,.85);border-radius:var(--r-s);
  background-color:rgba(255,255,255,.5);overflow:auto;
}
.v2 .adm-tab thead th,.v2 .hx-tab th{
  background-color:transparent;border-bottom:1px solid var(--ln);
  font-family:var(--mono);font-size:12px;letter-spacing:.11em;color:var(--i3);
  height:46px;padding:0 16px;
}
.v2 .adm-tab td,.v2 .hx-tab td{
  padding:14px 16px;border-bottom:1px solid var(--ln2);font-size:14px;color:var(--i);
}
.v2 .adm-tab tbody tr,.v2 .hx-tab tbody tr{transition:background-color var(--dur-micro) var(--ease-out)}
.v2 .adm-tab tbody tr:hover,.v2 .hx-tab tbody tr:hover{background-color:rgba(246,241,230,.85)}
.v2 .adm-tab tbody tr:last-child td{border-bottom:0}
.v2 .adm-quem b{font-size:14px}
.v2 .adm-quem small{color:var(--i3);font-size:12px}
.v2 .adm-acao{
  min-height:46px;border-radius:var(--r-pill);
  background-color:rgba(255,255,255,.9);border:1px solid rgba(28,24,14,.12);
  color:var(--i);font-size:13px;
}
.v2 .adm-acao:hover{background-color:var(--ac-soft);border-color:#E0DBBE;color:#4F4D18}
.v2 .adm-acao--perigo:hover{background-color:var(--warn-soft);border-color:#F0D8CB;color:var(--warn)}
.v2 .adm-pg{
  min-width:46px;min-height:46px;border-radius:12px;background-color:rgba(255,255,255,.9);border:1px solid rgba(28,24,14,.12);
  color:var(--i2);
}
.v2 .adm-pg[aria-current="page"]{background-color:var(--i);border-color:var(--i);color:#FBF6EA}

/* ── gráficos ─────────────────────────────────────────────── */
.v2 .adm-col-i i{
  background-image:linear-gradient(180deg,var(--ac-deco),#EAE5C4);
  border:0;border-radius:10px 10px 4px 4px;
}
.v2 .adm-col-i.on i{background-image:linear-gradient(180deg,#6E6C2C,#B9B05A);box-shadow:0 12px 26px -14px rgba(110,108,44,.9)}
.v2 .adm-col-i span{color:var(--i3);font-size:12px}
.v2 .adm-col-i b{color:var(--i);font-size:12px}

.v2 .adm-bar i{background-image:linear-gradient(90deg,#B9B05A,#8B8A44);border-radius:var(--r-pill)}
.v2 .adm-bar i.m{background-image:linear-gradient(90deg,#C6A472,#8A6B3B)}
.v2 .adm-bar p{color:var(--i2);font-size:13.5px}
.v2 .adm-bar b{color:var(--i)}

.v2 .adm-donut{
  background-image:conic-gradient(#6E6C2C 0 46%, #B08A4E 46% 72%, #B9B05A 72% 88%, #DCD5BE 88% 100%);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.6),0 18px 34px -26px rgba(58,46,24,.6);
}
.v2 .adm-donut::after{background-color:#FBF8F0}
.v2 .adm-donut b{color:var(--i)}
.v2 .adm-legenda li{color:var(--i2);font-size:13px}
.v2 .adm-legenda i{border-radius:3px}
.v2 .adm-legenda i.c1{background-color:#6E6C2C}
.v2 .adm-legenda i.c2{background-color:#B08A4E}
.v2 .adm-legenda i.c3{background-color:#B9B05A}
.v2 .adm-legenda i.c4{background-color:#DCD5BE}

.v2 .adm-mapa i{background-color:rgba(28,24,14,.06);border-radius:5px}
.v2 .adm-mapa i.n1{background-color:#EFEACC}
.v2 .adm-mapa i.n2{background-color:#DFD8A8}
.v2 .adm-mapa i.n3{background-color:#C2BB70}
.v2 .adm-mapa i.n4{background-color:#6E6C2C}

.v2 .adm-coorte td{background-color:rgba(246,241,230,.9);border-radius:8px;color:var(--i);font-size:12px}
.v2 .adm-coorte th{color:var(--i3);font-size:12px}
.v2 .adm-coorte td:first-child{color:var(--i2)}
.v2 .adm-coorte td.k0{background-color:rgba(28,24,14,.04);color:var(--i3)}
.v2 .adm-coorte td.k1{background-color:#F3EEDC}
.v2 .adm-coorte td.k2{background-color:#E7E0BE}
.v2 .adm-coorte td.k3{background-color:#D5CD92}
.v2 .adm-coorte td.k4{background-color:#ABA354;color:var(--i)}
.v2 .adm-coorte td.k5{background-color:#6E6C2C;color:#FCFAEF}

/* SVG inline das séries — cores por atributo, sem tocar no HTML */
.v2 svg [stroke="#2150F0"]{stroke:#6E6C2C}
.v2 svg [stroke="#CFD7E3"]{stroke:#D8D2C0}
.v2 svg [stroke="#E4E9F1"]{stroke:#EAE3D3}
.v2 svg [fill="#2150F0"]{fill:#6E6C2C}
.v2 svg [fill="#525B6E"]{fill:var(--i3)}
.v2 svg [fill="#4C5566"]{fill:#635B4C}
.v2 svg [fill="#0D1220"]{fill:#171511}
.v2 svg [fill="#0B6E62"]{fill:#8A6B3B}
.v2 svg [fill="#E4EAFF"]{fill:#F1EEDA}
.v2 svg [fill="#F5F8FF"]{fill:#FCFAEF}
.v2 svg stop[stop-color="#2150F0"]{stop-color:#B9B05A}
.v2 svg stop[stop-color="#0D1220"]{stop-color:#171511}

/* ── peças de estado ──────────────────────────────────────── */
.v2 .adm-sw{width:56px;height:48px}
.v2 .adm-sw i{width:48px;height:28px;background-color:rgba(28,24,14,.16)}
.v2 .adm-sw[aria-checked="true"] i{background-color:var(--ac)}
.v2 .adm-sw i::after{box-shadow:0 1px 3px rgba(58,46,24,.3)}
.v2 .adm-linha{border-bottom:1px solid var(--ln2);min-height:64px}
.v2 .adm-linha .grow b{font-size:14px}
.v2 .adm-linha .grow small{color:var(--i3)}
.v2 .adm-tl-i{border-bottom:1px solid var(--ln2)}
.v2 .adm-tl-i time{color:var(--i3)}
.v2 .adm-tl-p::before{background-color:var(--ln)}
.v2 .adm-tl-p i{background-color:var(--ac-deco)}
.v2 .adm-tl-p i.m{background-color:var(--metal-deco)}
.v2 .adm-tl-p i.w{background-color:var(--warn)}
.v2 .adm-tl-tx b{font-size:14px}
.v2 .adm-tl-tx small{color:var(--i3)}

.v2 .adm-mat th{background-color:transparent;color:var(--i3);border-bottom:1px solid var(--ln)}
.v2 .adm-mat td{border-bottom:1px solid var(--ln2);font-size:14px}
.v2 .adm-mat tbody tr:hover{background-color:rgba(246,241,230,.8)}
.v2 .adm-on{color:var(--ok)}
.v2 .adm-off{color:var(--i3)}
.v2 .adm-par{color:#7A5C2E}

.v2 .adm-etapa u{background-color:rgba(255,255,255,.9);border-color:rgba(28,24,14,.14);color:var(--i3)}
.v2 .adm-etapa.on u{background-color:var(--i);border-color:var(--i);color:#FBF6EA}
.v2 .adm-etapa.ok u{background-color:var(--ok-soft);border-color:#D3E3D1;color:var(--ok)}
.v2 .adm-risco{background-color:rgba(28,24,14,.16)}

.v2 .adm-abas{border-bottom:1px solid var(--ln)}
.v2 .adm-aba{min-height:46px;color:var(--i2);font-size:14px}
.v2 .adm-aba[aria-selected="true"]{color:var(--i);border-bottom-color:var(--i)}
.v2 .adm-aba[aria-selected="true"]::after{content:""}

.v2 .adm-lote{background-color:var(--ac-soft);border-color:#E4DFC4;border-radius:var(--r-xs)}
.v2 .adm-lote p{color:#3F3D12}
.v2 .adm-perigo{background-color:var(--warn-soft);border-color:#F0D8CB}
.v2 .adm-perigo .hx-card-tit{color:var(--warn)}
.v2 .adm-perigo p{color:#7A2B1A}
.v2 .adm-pilha b{font-family:var(--body);letter-spacing:-.02em}
.v2 .adm-pilha small{color:var(--i3)}
.v2 .adm-rail-sub{color:var(--i3)}

/* ── listas, medidores, avatares ──────────────────────────── */
.v2 .hx-li{border-bottom:1px solid var(--ln2);padding:13px 0}
.v2 .hx-li b{font-size:14.5px}
.v2 .hx-meter{background-color:rgba(28,24,14,.09);height:8px}
.v2 .hx-meter i{background-image:linear-gradient(90deg,#B9B05A,#6E6C2C)}
.v2 .hx-meter--metal i{background-image:linear-gradient(90deg,#C6A472,#8A6B3B)}
.v2 .hx-av{box-shadow:0 0 0 2px rgba(255,255,255,.9)}
.v2 .hx-card--escuro .hx-av{box-shadow:0 0 0 2px var(--shell-2)}
.v2 .hx-nxt-l li{font-size:14px;color:var(--i2)}
.v2 .hx-card--escuro .hx-nxt-l li{color:var(--shell-mut)}
.v2 .hx-card--escuro .hx-nxt-l li.ok{color:#C9DDB0}
.v2 .hx-vazio{background-color:rgba(255,255,255,.55);border:1px dashed rgba(28,24,14,.18);border-radius:var(--r-s)}
.v2 .hx-opo,.v2 .hx-mtc{
  background-color:rgba(255,255,255,.82);border:1px solid rgba(255,255,255,.9);
  border-radius:var(--r-s);box-shadow:var(--sh-glass);
}
.v2 .hx-opo:hover,.v2 .hx-mtc:hover{box-shadow:0 2px 6px rgba(58,46,24,.06),0 34px 60px -34px rgba(58,46,24,.6)}
.v2 .hx-opo-tipo{color:var(--i3)}
.v2 .hx-opo-niv i{background-color:rgba(28,24,14,.1)}
.v2 .hx-opo-niv i.on{background-color:var(--ac-deco)}
.v2 .hx-censura{background-color:rgba(28,24,14,.12)}
.v2 .hx-opo-veu{background-color:rgba(251,248,240,.7)}
.v2 .hx-toast{border-radius:var(--r-pill);box-shadow:var(--sh-2)}
.v2 .hx-toast--ok{background-color:var(--ok)}
.v2 .hx-toast--erro{background-color:var(--warn)}

/* ── cartão de decisão: nada de azul sobrando ─────────────── */
.v2 .hx-nxt{background-color:var(--shell-2);box-shadow:var(--sh-2)}
.v2 .hx-nxt::after{background-color:rgba(138,107,59,.45)}
.v2 .hx-nxt-etq,.v2 .hx-nxt-rot{color:#C9BFA0}
.v2 .hx-nxt-l li{color:#D9D3C2}
.v2 .hx-nxt-l li::before{border-color:#6B6350}
.v2 .hx-nxt-serie i{background-color:#332E22}
.v2 .hx-nxt-cta{background-color:var(--ac);color:var(--ac-ink)}
.v2 .hx-nxt-cta:hover{box-shadow:0 14px 30px -12px rgba(110,108,44,.85)}
.v2 .hx-mark{box-shadow:0 0 0 1px rgba(255,255,255,.14) inset,0 8px 20px -10px rgba(58,46,24,.55)}
.v2 .hx-card--livre{border-color:#E2DDC8}
.v2 .hx-btn--m{box-shadow:0 14px 28px -16px rgba(110,108,44,.8)}
.v2 .hx-btn--s:hover{background-color:#F3EFE2}
@keyframes anel{0%,100%{box-shadow:0 0 0 0 rgba(185,176,90,.5)}50%{box-shadow:0 0 0 7px rgba(185,176,90,0)}}

/* ── telas públicas (login em diante) ─────────────────────── */
.v2.pub,.v2 .pub{color:var(--i)}
.v2 .pub-top{background-color:transparent;border-bottom:0}
.v2 .entra-form,.v2 .pub .hx-card{
  background-color:rgba(255,255,255,.82);border:1px solid rgba(255,255,255,.9);
  border-radius:var(--r);box-shadow:var(--sh-glass);
  -webkit-backdrop-filter:blur(22px) saturate(1.15);
          backdrop-filter:blur(22px) saturate(1.15);
}
.v2 .entra-form{padding:40px 42px}
.v2 .entra-campos{max-width:100%}
.v2 .entra-pe{max-width:100%}
.v2 .entra h1{font-size:clamp(32px,3.6vw,46px);letter-spacing:-.035em;font-weight:500;line-height:1.05}
.v2 .entra-sub{color:var(--i2)}
.v2 .entra-lembra input{width:20px;height:20px;margin:0}
.v2 .entra-link{min-height:46px}
.v2 .hx-brand .hx-mark{background-color:var(--i);color:#F7F1E3;border-radius:13px}

/* ── capa de abertura (herói) ─────────────────────────────── */
.v2-hero{
  position:relative;overflow:hidden;
  background-color:#14120C;
  border-radius:var(--r);border:1px solid rgba(255,255,255,.5);
  min-height:270px;display:flex;align-items:flex-end;
  box-shadow:var(--sh-2);isolation:isolate;
}
.v2-hero img{
  position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 40%;
  z-index:-2;transform:scale(1.02);transition:transform 1.2s var(--ease-out);
}
.v2-hero:hover img{transform:scale(1.06)}
.v2-hero::after{
  content:"";position:absolute;inset:0;z-index:-1;
  background:linear-gradient(105deg,rgba(19,17,12,.72) 0%,rgba(19,17,12,.42) 46%,rgba(19,17,12,.10) 100%);
}
.v2-hero-tx{padding:26px 28px;color:#F8F3E6;max-width:60%}
.v2-hero-tx .v2-hero-etq{
  display:inline-flex;align-items:center;gap:8px;min-height:30px;padding:0 13px;
  border-radius:var(--r-pill);background-color:rgba(248,243,230,.16);
  border:1px solid rgba(248,243,230,.28);color:#F8F3E6;
  font-family:var(--mono);font-size:12px;letter-spacing:.13em;
  -webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);
}
.v2-hero-etq::before{content:"";width:6px;height:6px;border-radius:50%;background-color:#BFD48B;animation:pulso 2.4s var(--ease-in-out) infinite}
.v2-hero-tx h2{font-size:clamp(24px,2.6vw,34px);font-weight:500;letter-spacing:-.035em;line-height:1.1;margin-top:14px;color:#FBF6EA}
.v2-hero-tx p{margin-top:8px;font-size:14px;color:rgba(248,243,230,.82);max-width:44ch}
.v2-hero-nums{
  position:absolute;right:26px;bottom:26px;display:flex;flex-direction:column;gap:8px;
}
.v2-hero-nums span{
  display:flex;align-items:center;gap:10px;min-height:44px;padding:0 16px;border-radius:var(--r-pill);
  background-color:rgba(19,17,12,.66);border:1px solid rgba(248,243,230,.18);
  color:#F8F3E6;font-family:var(--mono);font-size:12px;letter-spacing:.1em;
  -webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);
}
.v2-hero-nums b{font-family:var(--display);font-size:18px;font-weight:500;letter-spacing:-.02em}

/* ── movimento ────────────────────────────────────────────── */
.v2 .r,.v2 .r-e{
  opacity:0;transform:translateY(16px) scale(.995);
  transition:opacity 620ms var(--ease-out),transform 620ms var(--ease-out);
  transition-delay:var(--d,0ms);
}
.v2 .r.in,.v2 .r-e.in{opacity:1;transform:none}

@keyframes v2-flutua{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(0,-10px,0)}}
.v2-fundo .b2{animation:v2-flutua 26s var(--ease-in-out) infinite}
.v2-fundo .b3{animation:v2-flutua 34s var(--ease-in-out) infinite reverse}
.v2-fundo .b4{animation:v2-flutua 42s var(--ease-in-out) infinite}

/* fio de luz que percorre os cartões de destaque */
.v2 .hx-card--escuro::after{
  content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;
  background:linear-gradient(120deg,transparent 30%,rgba(255,255,255,.07) 50%,transparent 70%);
  background-size:220% 100%;background-position:180% 0;
  animation:v2-fio 9s linear infinite;
}
@keyframes v2-fio{0%{background-position:180% 0}55%,100%{background-position:-80% 0}}

/* ── responsivo ──────────────────────────────────────────── */
@media (max-width:1180px){
  .v2 .hx-grid--4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .v2 .hx-split{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:980px){
  .v2.hx,.v2 .hx{grid-template-columns:minmax(0,1fr);padding:12px;gap:12px}
  .v2 .hx-rail{
    position:relative;top:0;height:auto;max-height:none;
    flex-direction:row;flex-wrap:wrap;align-items:center;gap:6px;padding:12px;
    border-radius:var(--r-s);
  }
  .v2 .hx-brand{padding:0 6px 0 0}
  .v2 .hx-nav{flex-direction:row;flex-wrap:wrap;gap:4px}
  .v2 .hx-navgrp{display:none}
  .v2 .hx-nav a{min-height:46px;padding:0 12px;font-size:13.5px;background-color:rgba(255,255,255,.6)}
  .v2 .hx-rail-fim{margin-top:0;padding-top:0;border-top:0;margin-left:auto}
  .v2 .hx-me{background-color:transparent;border:0;box-shadow:none;padding:0}
  .v2 .hx-me-tx{display:none}
  .v2 .hx-main{padding:6px 6px 28px 6px}
  .v2 .hx-top{padding:0 6px 12px 6px;flex-wrap:wrap;gap:10px}
  .v2 .hx-ph h1{font-size:clamp(30px,7.2vw,44px)}
  .v2 .hx-ph .acoes{width:100%}
  .v2-hero{min-height:230px}
  .v2-hero-tx{max-width:100%;padding:22px}
  .v2-hero-nums{position:static;padding:0 22px 22px;flex-direction:row;flex-wrap:wrap}
}
@media (max-width:760px){
  .v2 .hx-grid--4,.v2 .hx-grid--3,.v2 .hx-grid--2{grid-template-columns:minmax(0,1fr)}
  .v2 .hx-card{padding:18px;border-radius:20px}
  .v2 .adm-tab{min-width:720px}
  .v2 .hx-ph h1{letter-spacing:-.032em}
  .v2 .hx-top .hx-busca{flex:1 1 auto;min-width:44px}
  .v2-fundo .foto{opacity:.22}
  .v2 .entra-form{padding:24px 20px;border-radius:20px}
}

/* conforto: quem pediu menos movimento recebe a tela estática */
@media (prefers-reduced-motion:reduce){
  .v2 .r,.v2 .r-e{opacity:1;transform:none;transition:none}
  .v2-fundo .b2,.v2-fundo .b3,.v2-fundo .b4,.v2 .hx-card--escuro::after{animation:none}
  .v2 .hx-card:hover,.v2-hero img,.v2 .hx-nav a:hover{transform:none}
}

/* ── caixa de diálogo v2 ─────────────────────────────────── */
.v2 .hx-veu{background-color:rgba(23,21,17,.36);backdrop-filter:blur(8px)}
.v2 .hx-modal{
  background-color:var(--c-solido);border:1px solid var(--ln);border-radius:var(--r);
  box-shadow:0 40px 90px -40px rgba(23,21,17,.7);
}
.v2 .hx-modal .hx-card-tit{font-size:18px;letter-spacing:-.02em}
