/* ==========================================================================
   CEOttax · app.css
   Arquivo único de estilos da área interna.
   Ordem: 1 tokens · 2 base · 3 formulários · 4 shell (sidebar e barra) ·
          5 componentes · 6 utilitários · 7 compatibilidade (telas não migradas) ·
          8 telas (estilos específicos, sempre com escopo .pg-*)
   Regra: template de tela não tem <style>; inline só para valor dinâmico.
   ========================================================================== */

/* ----------------------------------------------------------------------------
   1. TOKENS
   -------------------------------------------------------------------------- */
:root{
  /* identidade CEOCON, tema ceocon (skill de identidade visual do grupo, seção 4.1) */
  --brand: #20282A; --brand-rgb: 32,40,42; --brand-dark: #141A1B; --brand-desc: #5A6568;
  --acc: #CC9F2D; --acc-deep: #A67E1F; --acc-ink: #20282A; --acc2: #E5C573; --acc2-rgb: 229,197,115;
  --navy:       var(--brand);
  --navy-deep:  var(--brand-dark);
  --gold:       var(--acc);
  --bg:         #F8F6F1;
  --text:       #20282A;
  --text-muted: rgba(32,40,42,0.60);

  --fill-1: rgba(32,40,42,0.04);
  --fill-2: rgba(32,40,42,0.07);
  --fill-gold: rgba(204,159,45,0.14);

  --btn-bg: var(--navy);
  --btn-fg: #FFFFFF;
  --btn-hover: #141A1B;
  --surface-solid: #FFFFFF;
  --link: var(--navy);

  /* espaçamento: 4 · 8 · 12 · 16 · 24 · 32 */
  --s-1: 4px;
  --s-2: 8px;
  --s-3: 12px;
  --s-4: 16px;
  --s-5: 24px;
  --s-6: 32px;

  --r-pill: 999px;
  --r-lg: 24px;
  --r-md: 16px;
  --r-sm: 12px;
  --r-xs: 8px;

  --fs-h1:   clamp(2.5rem, 1.5rem + 3.6vw, 4rem);
  --fs-h2:   clamp(1.75rem, 1.4rem + 1.4vw, 2.5rem);
  --fs-body: clamp(1.0625rem, 1rem + 0.25vw, 1.1875rem);
  --fs-xs: 11px;
  --fs-sm: 12.5px;
  --fs-md: 13.5px;
  --fs-base: 15px;

  --font: 'Montserrat', system-ui, sans-serif;
  --max: 1140px;
  --gutter: 24px;
  --bar-h: 52px;
  --ease: cubic-bezier(0.32, 0.72, 0, 1);
  --float-shadow: 0 1px 2px rgba(32,40,42,0.06), 0 8px 24px rgba(32,40,42,0.08);

  --field-bg: #FFFFFF;
  --field-border: rgba(32,40,42,0.12);
  --field-border-hover: rgba(32,40,42,0.22);
  --field-ring: rgba(204,159,45,0.42);
  --field-placeholder: rgba(32,40,42,0.42);

  --ok:#1f8f5a;
  --warn:#c47d18;
  --bad:#c44747;
  --ok-fg:#1f8f5a;
  --warn-fg:#c47d18;
  --bad-fg:#c44747;
  --info-fg:#8a6a2a;
  --teal:#2f9e8f;

  /* nomes legados, usados por telas antigas */
  --navy-soft: #2E3A3D;
  --navy2: var(--navy-soft);
  --blue: var(--link);
  --blue-d: var(--navy-soft);
  --ink: var(--text);
  --muted: var(--text-muted);
  --line: rgba(32,40,42,0.08);
  --card: var(--fill-1);
  --shadow: none;
  --font-display: var(--font);
  --font-body: var(--font);
  --radius: var(--r-md);
}
html[data-theme="dark"]{
  --bg: #141A1B;
  --text: #F8F6F1;
  --text-muted: rgba(248,246,241,0.58);
  --fill-1: rgba(248,246,241,0.06);
  --fill-2: rgba(248,246,241,0.10);
  --fill-gold: rgba(204,159,45,0.22);
  --btn-bg: #F8F6F1;
  --btn-fg: #20282A;
  --btn-hover: #E5C573;
  --surface-solid: #20282A;
  --link: #E5C573;
  --float-shadow: 0 1px 2px rgba(0,0,0,0.25), 0 8px 24px rgba(0,0,0,0.35);
  --line: rgba(248,246,241,0.10);
  --ink: var(--text);
  --muted: var(--text-muted);
  --blue: var(--link);
  --card: var(--fill-1);
  --field-bg: #20282A;
  --field-border: rgba(248,246,241,0.16);
  --field-border-hover: rgba(248,246,241,0.28);
  --field-ring: rgba(204,159,45,0.38);
  --field-placeholder: rgba(248,246,241,0.42);
  --ok-fg:#5fcf95;
  --warn-fg:#e6a94a;
  --bad-fg:#f08a80;
  --info-fg: var(--gold);
  color-scheme: dark;
}

/* ----------------------------------------------------------------------------
   2. BASE
   -------------------------------------------------------------------------- */
*{box-sizing:border-box}
body{
  margin:0;min-height:100vh;
  color:var(--text);font-family:var(--font);
  font-size:var(--fs-body);font-weight:450;line-height:1.65;
  background:var(--bg);-webkit-font-smoothing:antialiased;
  transition:background 200ms var(--ease), color 200ms var(--ease);
}
body.has-sidebar{display:flex;align-items:stretch;min-height:100vh}
a{color:var(--link);text-decoration:none}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--text);outline-offset:3px}
.nums{font-variant-numeric:tabular-nums}
.mono{font-variant-numeric:tabular-nums}
.muted{color:var(--text-muted)}
.muted-sm{font-size:var(--fs-sm);color:var(--text-muted);line-height:1.5}
code{font-size:.92em}
[hidden]{display:none!important}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important}
}

/* ----------------------------------------------------------------------------
   3. FORMULÁRIOS
   -------------------------------------------------------------------------- */
label.fld{display:block;margin:0 0 var(--s-4)}
label.fld .lb,.fld .lb{
  display:block;font-size:13px;font-weight:600;color:var(--text);
  margin-bottom:var(--s-2);letter-spacing:-.01em;
}
input:not([type]),input[type=text],input[type=password],input[type=email],input[type=number],
input[type=tel],input[type=url],input[type=search],input[type=date],input[type=month],
textarea,select,input.in,select.in{
  width:100%;padding:13px 15px;
  border:1px solid var(--field-border);border-radius:var(--r-sm);
  font-size:15px;font-weight:500;color:var(--text);
  background:var(--field-bg);font-family:inherit;
  font-variant-numeric:tabular-nums;color-scheme:inherit;
  box-shadow:0 1px 0 rgba(32,40,42,0.03);
  transition:border-color 200ms var(--ease), box-shadow 200ms var(--ease), background 200ms var(--ease);
}
html[data-theme="dark"] input:not([type]),html[data-theme="dark"] input[type=text],
html[data-theme="dark"] input[type=password],html[data-theme="dark"] input[type=email],
html[data-theme="dark"] input[type=number],html[data-theme="dark"] input[type=tel],
html[data-theme="dark"] input[type=url],html[data-theme="dark"] input[type=search],
html[data-theme="dark"] input[type=date],html[data-theme="dark"] input[type=month],
html[data-theme="dark"] textarea,html[data-theme="dark"] select,
html[data-theme="dark"] input.in,html[data-theme="dark"] select.in{
  box-shadow:inset 0 1px 0 rgba(255,255,255,0.04);
}
select{font-size:14.5px;cursor:pointer}
textarea{min-height:110px;resize:vertical;line-height:1.55}
input[type=radio]{width:auto;margin:0;accent-color:var(--gold)}
/* Caixa de marcar: quadrado com os cantos cortados da marca; marcada fica dourada com o visto em chumbo */
input[type=checkbox]{
  --cx-borda:rgba(var(--brand-rgb),.32);
  -webkit-appearance:none;appearance:none;flex:none;width:16px;height:16px;margin:0;padding:0;border:0;
  display:inline-grid;place-content:center;vertical-align:middle;cursor:pointer;background:var(--cx-borda);
  clip-path:polygon(4px 0,100% 0,100% calc(100% - 4px),calc(100% - 4px) 100%,0 100%,0 4px);
  transition:background .18s cubic-bezier(.22,.68,.4,1);
}
html[data-theme="dark"] input[type=checkbox]{--cx-borda:rgba(248,246,241,.35)}
input[type=checkbox]::before{content:"";grid-area:1/1;width:13px;height:13px;background:var(--surface-solid);clip-path:polygon(3px 0,100% 0,100% calc(100% - 3px),calc(100% - 3px) 100%,0 100%,0 3px);transition:background .18s cubic-bezier(.22,.68,.4,1)}
input[type=checkbox]::after{content:"";grid-area:1/1;justify-self:center;align-self:center;width:7px;height:3px;margin-top:-2px;border:solid var(--acc-ink);border-width:0 0 2px 2px;transform:rotate(-45deg) scale(0);transition:transform .18s cubic-bezier(.22,.68,.4,1)}
input[type=checkbox]:hover{background:var(--acc-deep)}
input[type=checkbox]:focus-visible{outline:none;background:var(--acc)}
input[type=checkbox]:checked,input[type=checkbox]:indeterminate{background:var(--acc-deep)}
input[type=checkbox]:checked::before,input[type=checkbox]:indeterminate::before{background:var(--acc)}
input[type=checkbox]:checked::after{transform:rotate(-45deg) scale(1)}
input[type=checkbox]:indeterminate::after{height:0;margin-top:0;border-width:0 0 2px 0;transform:none}
input[type=checkbox]:disabled{opacity:.45;cursor:default}
/* Linha de tabela marcada pela caixa da primeira coluna: fundo dourado claro e faixa à esquerda (clicar na linha marca, app.js) */
table tbody tr:has(> td:first-child > input[type=checkbox]){cursor:pointer}
table tbody tr:has(> td:first-child > input[type=checkbox]:checked) > td{background:rgba(var(--acc2-rgb),.28)}
table tbody tr:has(> td:first-child > input[type=checkbox]:checked) > td:first-child{box-shadow:inset 3px 0 0 var(--acc)}
html[data-theme="dark"] table tbody tr:has(> td:first-child > input[type=checkbox]:checked) > td{background:rgba(var(--acc2-rgb),.14)}
input[type=file]{font-family:inherit;font-size:var(--fs-md);color:var(--text)}
input::placeholder,textarea::placeholder{color:var(--field-placeholder);opacity:1;font-weight:450}
input:hover,select:hover,textarea:hover,input.in:hover,select.in:hover{border-color:var(--field-border-hover)}
input:focus,select:focus,textarea:focus,input.in:focus,select.in:focus{
  outline:none;border-color:var(--gold);background:var(--field-bg);box-shadow:0 0 0 3px var(--field-ring);
}
/* Edge/Windows ignora CSS de <option>: força select legível no escuro quando não há JS */
html[data-theme="dark"] select:not(.cselect-native){color-scheme:light;background:#F8F6F1!important;color:#20282A!important}
.fld-sm input,.fld-sm select,input.sm,select.sm{padding:8px 11px;font-size:13px;border-radius:var(--r-xs)}
.hint{font-size:13px;color:var(--text-muted);margin:calc(var(--s-1) * -1) 0 var(--s-4)}

/* Dropdown custom (substitui lista nativa ilegível no Edge) */
.cselect{position:relative;width:100%;z-index:1}
.cselect.open{z-index:80}
.cselect-native{
  position:absolute!important;left:0!important;top:0!important;
  width:100%!important;height:100%!important;margin:0!important;padding:0!important;
  border:0!important;opacity:0!important;overflow:hidden!important;
  pointer-events:none!important;appearance:none!important;font-size:0!important;z-index:-1!important;
}
.cselect-trigger{
  display:flex;align-items:center;justify-content:space-between;gap:10px;
  width:100%;padding:13px 15px;border:1px solid var(--field-border);
  border-radius:var(--r-sm);font-size:14.5px;font-weight:500;
  font-family:inherit;color:var(--text);background:var(--field-bg);
  text-align:left;cursor:pointer;line-height:1.35;
  box-shadow:0 1px 0 rgba(32,40,42,0.03);
  transition:border-color 200ms var(--ease), box-shadow 200ms var(--ease);
}
html[data-theme="dark"] .cselect-trigger{box-shadow:inset 0 1px 0 rgba(255,255,255,0.04)}
.cselect-trigger:hover{border-color:var(--field-border-hover)}
.cselect.open .cselect-trigger,.cselect-trigger:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px var(--field-ring)}
.cselect-trigger::after{
  content:"";flex:0 0 auto;width:8px;height:8px;
  border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;
  transform:rotate(45deg) translateY(-2px);opacity:.55;
}
.cselect.open .cselect-trigger::after{transform:rotate(-135deg) translateY(-2px)}
.cselect-trigger .cselect-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cselect-trigger.is-placeholder .cselect-label{color:var(--field-placeholder);font-weight:450}
.cselect-menu{
  position:absolute;z-index:90;left:0;right:0;top:calc(100% + 6px);
  margin:0;padding:6px;list-style:none;max-height:280px;overflow:auto;
  background:var(--field-bg);border:1px solid var(--field-border);
  border-radius:var(--r-sm);box-shadow:var(--float-shadow);color:var(--text);
}
.cselect-menu[hidden]{display:none!important}
.cselect-menu li{padding:10px 12px;border-radius:var(--r-xs);cursor:pointer;font-size:14px;font-weight:500;color:var(--text);line-height:1.35}
.cselect-menu li:hover,.cselect-menu li[aria-selected="true"]{background:var(--fill-2)}
html[data-theme="dark"] .cselect-menu li:hover,html[data-theme="dark"] .cselect-menu li[aria-selected="true"]{background:rgba(204,159,45,0.16)}
.cselect-menu li[aria-disabled="true"]{opacity:.45;cursor:not-allowed}
.fld-sm .cselect-trigger,.cselect.sm .cselect-trigger{padding:8px 11px;font-size:13px;border-radius:var(--r-xs)}

/* ----------------------------------------------------------------------------
   4. SHELL: sidebar, barra superior única, área de conteúdo
   -------------------------------------------------------------------------- */
.brand{
  display:flex;align-items:center;gap:10px;color:var(--text);
  font-size:16px;font-weight:700;letter-spacing:-.02em;line-height:1;
}
.brand img{height:24px;width:auto;display:block}
html[data-theme="dark"] .brand img{filter:brightness(0) invert(1)}
.brand b{font-weight:700}.brand span{font-weight:450;color:var(--text-muted)}

.theme-toggle{
  display:inline-flex;align-items:center;justify-content:center;
  width:36px;height:36px;padding:0;border:0;cursor:pointer;
  border-radius:var(--r-pill);background:var(--fill-1);color:var(--text);font-family:inherit;
  transition:background 200ms var(--ease), color 200ms var(--ease);
}
.theme-toggle:hover{background:var(--fill-2)}
.theme-toggle svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.theme-toggle .ico-sun{display:none}
html[data-theme="dark"] .theme-toggle .ico-moon{display:none}
html[data-theme="dark"] .theme-toggle .ico-sun{display:block}

/* Barra das páginas sem login */
.topbar{position:sticky;top:0;z-index:40;height:64px;background:var(--bg)}
.topbar .in{width:100%;padding:0 var(--s-6);height:100%;display:flex;align-items:center;gap:var(--s-4)}
.topbar .in > .theme-toggle{margin-left:auto}

/* Sidebar */
.sidebar{
  --sb-w: 288px;
  position:sticky;top:0;align-self:flex-start;
  width:var(--sb-w);flex:0 0 var(--sb-w);height:100vh;
  display:flex;flex-direction:column;
  background:var(--navy-deep);color:#F8F6F1;
  z-index:60;overflow:hidden;
  transition:width 240ms var(--ease), flex-basis 240ms var(--ease), opacity 180ms var(--ease);
}
html[data-theme="dark"] .sidebar{background:#0E1314}
/* Recolhida, a sidebar vira um trilho só com a logo e, embaixo dela, o botão de abrir */
body.sb-collapsed .sidebar{--sb-w:60px!important}
body .sb-head,body .sb-scroll,body .sb-user{min-width:var(--sb-w)}
body.sb-collapsed .sb-head{flex-direction:column;gap:var(--s-3);padding:28px 0 0}
body.sb-collapsed .sb-brand{flex:0 0 auto}
body.sb-collapsed .sb-brand span,
body.sb-collapsed .sb-scroll,
body.sb-collapsed .sb-user{display:none}
body.sb-collapsed .sb-pin svg{transform:scaleX(-1)}
body.sb-resizing .sidebar,body.sb-resizing .sidebar *{transition:none!important}
body.sb-resizing{cursor:col-resize;user-select:none}
body.sb-resizing .shell-main{pointer-events:none}
.sb-head{display:flex;align-items:center;gap:6px;padding:var(--s-5) var(--s-3) var(--s-4) 18px;flex:0 0 auto}
.sb-brand{display:flex;align-items:center;gap:11px;flex:1;min-width:0;color:#F8F6F1;font-size:18px;font-weight:700;letter-spacing:-.02em}
.sb-brand img{height:25px;width:auto;filter:brightness(0) invert(1);flex:0 0 auto}
.sb-brand span{font-weight:450;opacity:.55;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sb-brand b{font-weight:700}
.sb-pin{
  display:inline-flex;align-items:center;justify-content:center;
  width:34px;height:34px;flex:0 0 auto;border:0;cursor:pointer;
  border-radius:9px;background:rgba(248,246,241,.08);color:#F8F6F1;font-family:inherit;padding:0;
  transition:background 160ms var(--ease);
}
.sb-pin:hover{background:rgba(248,246,241,.16)}
.sb-pin svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.sb-resizer{position:absolute;top:0;right:0;width:6px;height:100%;cursor:col-resize;z-index:70;touch-action:none}
.sb-resizer::after{content:"";position:absolute;top:0;bottom:0;left:2px;width:2px;background:transparent;border-radius:1px;transition:background 160ms var(--ease), box-shadow 160ms var(--ease)}
.sb-resizer:hover::after,body.sb-resizing .sb-resizer::after{background:var(--gold);box-shadow:0 0 0 1px rgba(204,159,45,.35)}
body.sb-collapsed .sb-resizer{display:none}
.sb-scroll{flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;padding:var(--s-2) var(--s-3) var(--s-5);scrollbar-width:thin;scrollbar-color:rgba(248,246,241,.2) transparent}
.sb-nav{display:flex;flex-direction:column;gap:2px}
.sb-link,.sb-cat{
  display:flex;align-items:center;gap:10px;width:100%;position:relative;
  padding:13px 14px;border:0;border-radius:var(--r-sm);
  background:transparent;color:rgba(248,246,241,.8);
  font:inherit;font-size:15px;font-weight:650;letter-spacing:-.015em;line-height:1.3;
  text-align:left;cursor:pointer;text-decoration:none;
  transition:background 180ms var(--ease), color 180ms var(--ease);
}
.sb-link:hover,.sb-cat:hover{background:rgba(255,255,255,.05);color:#fff}
.sb-link.on{background:rgba(255,255,255,.08);color:#fff}
.sb-link.on::before{content:"";position:absolute;left:0;top:11px;bottom:11px;width:2px;border-radius:2px;background:var(--gold)}
.sb-cat{justify-content:space-between;user-select:none}
.sb-cat .chev{width:16px;height:16px;flex:0 0 auto;opacity:.5;transition:transform 220ms var(--ease)}
.sb-cat .chev svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.sb-group.open > .sb-cat{color:#fff}
.sb-group.open > .sb-cat .chev{transform:rotate(180deg);opacity:.9}
.sb-panel{display:grid;grid-template-rows:0fr;transition:grid-template-rows 260ms var(--ease);margin:0 0 var(--s-2)}
.sb-group.open > .sb-panel{grid-template-rows:1fr}
.sb-panel-inner{overflow:hidden;min-height:0}
.sb-group.open > .sb-panel .sb-panel-inner{padding:var(--s-1) 0 var(--s-1) 14px;margin-left:14px}
.sb-panel-inner > *{opacity:0;transform:translateY(-4px);transition:opacity 180ms var(--ease), transform 180ms var(--ease)}
.sb-group.open .sb-panel-inner > *{opacity:1;transform:none}
.sb-item{
  display:block;position:relative;padding:10px 12px;margin:2px 0;
  border-radius:var(--r-xs);
  color:rgba(248,246,241,.66);font-size:14px;font-weight:550;text-decoration:none;line-height:1.35;letter-spacing:-.01em;
  transition:background 160ms var(--ease), color 160ms var(--ease);
}
.sb-item:hover{background:rgba(255,255,255,.05);color:#fff}
.sb-item.on{background:rgba(255,255,255,.08);color:#fff;font-weight:650}
.sb-item.on::before{content:"";position:absolute;left:0;top:10px;bottom:10px;width:2px;border-radius:2px;background:var(--gold)}
.sb-user{flex:0 0 auto;padding:var(--s-3) 14px var(--s-4);display:flex;flex-direction:column;gap:var(--s-2)}
.sb-user .who{color:#F8F6F1;font-weight:600;font-size:14px;padding:10px var(--s-3);border-radius:var(--r-xs);background:rgba(248,246,241,.06)}
.sb-user .who:hover,.sb-user .who.on{background:rgba(248,246,241,.11)}
.sb-user .row{display:flex;align-items:center;gap:var(--s-2)}
.sb-user .theme-toggle{background:rgba(248,246,241,.08);color:#F8F6F1}
.sb-user .theme-toggle:hover{background:rgba(248,246,241,.14)}
/* Modo ajuda: botão das mãos ao lado do tema; ligado fica dourado. O balão aparece após 2 s com o mouse parado (app.js) */
.theme-toggle.ajuda-toggle svg{width:18px;height:18px}
.ajuda-toggle[aria-pressed="true"],.sb-user .ajuda-toggle[aria-pressed="true"]{background:var(--gold);color:var(--navy-deep)}
.ajuda-balao{
  position:fixed;z-index:2000;max-width:260px;padding:8px 12px;
  border-radius:var(--r-xs);border-top:2px solid var(--gold);background:var(--navy-deep);color:#F8F6F1;
  font-size:13px;font-weight:550;line-height:1.4;letter-spacing:-.005em;
  box-shadow:0 6px 20px rgba(20,26,27,.28);pointer-events:none;
  opacity:0;transform:translateY(3px);transition:opacity 160ms var(--ease), transform 160ms var(--ease);
}
.ajuda-balao.on{opacity:1;transform:none}
html[data-theme="dark"] .ajuda-balao{background:#2E3A3D;box-shadow:0 6px 20px rgba(0,0,0,.45)}
.sb-user .out{flex:1;text-align:center;color:rgba(248,246,241,.6);font-weight:600;font-size:13.5px;padding:10px var(--s-3);border-radius:var(--r-xs)}
.sb-user .out:hover{color:#fff;background:rgba(248,246,241,.08)}

/* Barra superior (área logada): só aparece no celular, para abrir a gaveta do menu */
.shell-main{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;min-height:100vh}
@media(min-width:901px){
  body.has-sidebar{--bar-h:0px}
  body.has-sidebar .shell-bar{display:none}
}
.shell-bar{
  display:flex;position:sticky;top:0;z-index:50;height:var(--bar-h);
  background:var(--bg);padding:0 var(--s-6) 0 var(--s-4);align-items:center;gap:var(--s-3);
  border-bottom:1px solid var(--line);
}
.shell-bar .brand{display:none}
body.sb-collapsed .shell-bar .brand{display:flex}
.sb-burger{
  display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;
  width:36px;height:36px;border:0;border-radius:10px;cursor:pointer;
  background:transparent;color:var(--text-muted);padding:0;font-family:inherit;
}
.sb-burger svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.sb-burger:hover{background:var(--fill-1);color:var(--text)}
.sb-burger .ico-open{display:none}
body.sb-collapsed .sb-burger .ico-menu{display:none}
body.sb-collapsed .sb-burger .ico-open{display:block}
.sb-overlay{display:none;position:fixed;inset:0;z-index:55;background:rgba(20,26,27,.45);backdrop-filter:blur(2px)}
body.sb-open .sb-overlay{display:block}

@media(max-width:900px){
  body.has-sidebar{display:block}
  body.has-sidebar:not(.sb-collapsed) .sidebar,
  body.has-sidebar.sb-collapsed .sidebar{
    --sb-w: min(86vw, 320px)!important;
    width:var(--sb-w)!important;flex-basis:var(--sb-w)!important;
    position:fixed;left:0;top:0;opacity:1;pointer-events:auto;
    transform:translateX(-105%);transition:transform 280ms var(--ease);
    box-shadow:8px 0 32px rgba(0,0,0,.28);
  }
  body.has-sidebar.sb-open .sidebar{transform:translateX(0)!important}
  .sb-resizer,.sb-pin{display:none}
  .shell-bar .brand{display:flex}
  .sb-burger .ico-open{display:none!important}
  .sb-burger .ico-menu{display:block!important}
}

/* Menu da área interna no visual CEOCON: chumbo, ícones dourados, item ativo em degradê,
   fundo animado (brilho, pontos subindo, hexágonos). O portal do cliente usa o mesmo menu. */
.sidebar{--sb-w:264px;background:var(--brand);color:#F8F6F1}
html[data-theme="dark"] .sidebar{background:var(--brand)}
/* Enfeites atrás do menu (z-index 0); itens clicáveis na frente (z-index 1).
   Sem a grade de pontos: atrapalhava o scroll e parecia “pixel”. */
.sidebar > *{position:relative;z-index:1}
.sidebar > .sb-fx{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none}
.sidebar > .sb-resizer{position:absolute;z-index:2}
.sb-brilho{position:absolute;left:-90px;top:-170px;width:360px;height:360px;background:radial-gradient(closest-side,rgba(var(--acc2-rgb),.17),transparent);animation:sbBrilho 16s cubic-bezier(.22,.68,.4,1) infinite alternate;pointer-events:none}
.sb-hx{position:absolute;bottom:-60px;height:auto;fill:none;stroke:var(--acc2);stroke-width:1.2;opacity:0;animation:sbSobe var(--t) linear var(--a) infinite;pointer-events:none}
.sidebar > .sb-hexgrande{position:absolute;right:-150px;bottom:40px;z-index:0;width:280px;height:320px;color:var(--acc2);pointer-events:none}
.sb-hexgrande g{fill:none;stroke:currentColor;stroke-width:1.2;transform-box:fill-box;transform-origin:center;animation:sbGira 120s linear infinite;pointer-events:none}
@keyframes sbBrilho{0%{transform:translate(0,0) scale(1);opacity:.65}50%{opacity:1}100%{transform:translate(110px,90px) scale(1.18);opacity:.75}}
@keyframes sbSobe{0%{transform:translateY(0) rotate(0);opacity:0}12%{opacity:var(--o)}80%{opacity:var(--o)}100%{transform:translateY(-110vh) rotate(120deg);opacity:0}}
@keyframes sbPontos{to{background-position:0 -240px}}
@keyframes sbGira{to{transform:rotate(360deg)}}
.sidebar .sb-head{gap:10px;padding:14px 12px 10px}
.sidebar .sb-pin{width:32px;height:32px;border-radius:0;background:rgba(var(--acc2-rgb),.10);color:var(--acc2);clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px)}
.sidebar .sb-pin:hover{background:rgba(var(--acc2-rgb),.18)}
.sidebar .sb-pin svg{width:17px;height:17px;stroke-width:1.8;transition:transform .25s cubic-bezier(.22,.68,.4,1)}
.sidebar .sb-pin:hover svg{transform:scaleX(.82)}
body.sb-collapsed .sidebar .sb-pin svg{transform:none}
.sidebar .sb-brand{gap:0;font-size:18px;font-weight:800;letter-spacing:-.4px;color:#fff}
.sidebar .sb-brand b{font-weight:800}
.sidebar .sb-brand span{font-weight:400;opacity:1;color:rgba(255,255,255,.55)}
.sb-busca{display:flex;align-items:center;gap:8px;margin:0 12px 6px;padding:0 10px;height:32px;background:rgba(var(--acc2-rgb),.10);color:rgba(255,255,255,.6);clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px)}
.sb-busca svg{width:15px;height:15px;flex:none;stroke:currentColor;fill:none;stroke-width:1.9;stroke-linecap:round}
.sb-busca input[type=search],html[data-theme="dark"] .sb-busca input[type=search]{flex:1;min-width:0;width:auto;height:30px;padding:0;border:0;border-radius:0;background:transparent;color:#fff;font-size:12px;font-weight:500;box-shadow:none}
.sb-busca input[type=search]:focus{background:transparent;box-shadow:none}
.sb-busca input::placeholder{color:rgba(255,255,255,.55)}
.sb-busca input::-webkit-search-cancel-button{display:none}
.sb-busca kbd{font-family:inherit;font-size:10px;padding:1px 5px;border:1px solid rgba(255,255,255,.2);color:rgba(255,255,255,.6)}
.sb-achados{margin:-2px 12px 8px;max-height:280px;overflow:auto;background:#fff;box-shadow:0 8px 20px rgba(0,0,0,.3)}
.sb-achados a,.sb-achados p{display:block;margin:0;padding:6px 10px;font-size:12px;font-weight:600;color:var(--brand);line-height:1.3}
.sb-achados p{font-weight:500;color:var(--brand-desc)}
.sb-achados a:hover,.sb-achados a.on{background:#F3E7C7}
.sb-achados small{display:block;font-size:10.5px;font-weight:500;color:var(--brand-desc);font-variant-numeric:tabular-nums}
.sidebar .sb-scroll{padding:0 0 10px}
.sidebar .sb-nav{gap:0}
.sidebar .sb-link,.sidebar .sb-item{display:flex;align-items:center;gap:10px;width:calc(100% - 20px);margin:1px 10px;padding:6px 10px;border-radius:0;clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px);color:rgba(255,255,255,.8);font-size:12.5px;font-weight:500;letter-spacing:0;line-height:1.3;transition:background .2s cubic-bezier(.22,.68,.4,1),transform .2s cubic-bezier(.22,.68,.4,1),color .2s}
.sidebar .sb-ico{width:16px;height:16px;flex:none;stroke:var(--acc2);fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;opacity:.8;transition:transform .25s cubic-bezier(.22,.68,.4,1)}
.sidebar .sb-link:hover,.sidebar .sb-item:hover{background:rgba(255,255,255,.07);color:#fff;transform:translateX(3px)}
.sidebar .sb-link:hover .sb-ico,.sidebar .sb-item:hover .sb-ico{opacity:1;transform:scale(1.12)}
.sidebar .sb-link.on,.sidebar .sb-item.on{background:linear-gradient(135deg,var(--acc),var(--acc-deep));color:var(--acc-ink);font-weight:700;transform:none}
.sidebar .sb-link.on .sb-ico,.sidebar .sb-item.on .sb-ico{stroke:var(--acc-ink);opacity:1;transform:none}
.sidebar .sb-link.on::before,.sidebar .sb-item.on::before{display:none}
.sidebar .sb-cat{gap:8px;width:calc(100% - 24px);margin:12px 12px 3px;padding:3px 0;border-radius:0;background:none;color:var(--acc2);font-size:10px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase}
.sidebar .sb-cat:hover{background:none;color:var(--acc2)}
.sidebar .sb-cat > i{flex:1;height:1px;background:linear-gradient(90deg,rgba(var(--acc2-rgb),.35),transparent)}
.sidebar .sb-cat .chev{width:12px;height:12px;opacity:1;transform:rotate(-90deg)}
.sidebar .sb-cat .chev svg{width:12px;height:12px;stroke-width:2}
.sidebar .sb-group.open > .sb-cat{color:var(--acc2)}
.sidebar .sb-group.open > .sb-cat .chev{transform:none;opacity:1}
.sidebar .sb-panel{margin:0}
.sidebar .sb-group.open > .sb-panel .sb-panel-inner{padding:0;margin:0}
.sidebar .sb-user{flex-direction:row;align-items:center;gap:10px;padding:12px 14px;border-top:1px solid rgba(255,255,255,.08);background:rgba(0,0,0,.20)}
.sb-av{position:relative;flex:none;width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,var(--acc),var(--acc-deep));color:var(--acc-ink);font-weight:800;font-size:13px;display:flex;align-items:center;justify-content:center;cursor:pointer}
.sb-av i{font-style:normal}
.sb-av img{width:100%;height:100%;border-radius:50%;object-fit:cover;object-position:center top}
.sb-av .sb-av-arq{position:absolute;left:-9999px;width:1px;height:1px}
.sb-av:focus-within{outline:2px solid var(--acc);outline-offset:2px}
.sb-av-mais{position:absolute;right:-3px;bottom:-3px;width:16px;height:16px;border-radius:50%;background:var(--acc2);color:var(--acc-ink);border:2px solid var(--brand);display:flex;align-items:center;justify-content:center;transition:transform .2s cubic-bezier(.22,.68,.4,1)}
.sb-av-mais svg{width:10px;height:10px;stroke:currentColor;fill:none;stroke-width:3;stroke-linecap:round}
.sb-av:hover .sb-av-mais{transform:scale(1.15)}
.sidebar .sb-user .who{flex:1;min-width:0;padding:0;border-radius:0;background:none;color:#fff;line-height:1.25;font-weight:400}
.sidebar .sb-user .who:hover,.sidebar .sb-user .who.on{background:none}
.sidebar .sb-user .who b{display:block;font-size:12.5px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sidebar .sb-user .who:hover b{color:var(--acc2)}
.sidebar .sb-user .who span{display:block;font-size:11px;color:rgba(255,255,255,.6)}
.sb-acoes{display:flex;margin-left:auto}
.sidebar .sb-acoes .theme-toggle,.sidebar .sb-acoes .out{flex:none;width:32px;height:32px;padding:0;border-radius:0;background:transparent;color:rgba(255,255,255,.7);display:flex;align-items:center;justify-content:center}
.sidebar .sb-acoes .theme-toggle:hover,.sidebar .sb-acoes .out:hover{background:transparent;color:var(--acc2)}
.sidebar .sb-acoes svg{width:17px;height:17px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.sidebar .sb-acoes .ajuda-toggle[aria-pressed="true"]{background:transparent;color:var(--acc2)}
body.sb-collapsed .sidebar .sb-brand,
body.sb-collapsed .sb-busca,body.sb-collapsed .sb-achados{display:none}
@media (prefers-reduced-motion:reduce){.sb-brilho,.sb-hx,.sb-hexgrande g,body.publico::before{animation:none}.sb-hx{display:none}}

/* Breadcrumb (na barra superior) */
.bc{display:flex;align-items:center;gap:var(--s-2);min-width:0;font-size:13px;color:var(--text-muted);white-space:nowrap;overflow:hidden}
.bc a{color:var(--text-muted)}
.bc a:hover{color:var(--text)}
.bc .sep{opacity:.5}
.bc .atual{color:var(--text);font-weight:600;overflow:hidden;text-overflow:ellipsis}

.wrap{width:100%;max-width:none;margin:0;padding:var(--s-6) var(--s-6) 64px;flex:1 0 auto}
.foot{width:100%;margin:0;padding:var(--s-2) var(--s-6) 40px;color:var(--text-muted);font-size:14px}
.flash{margin:0 0 var(--s-4);display:grid;gap:var(--s-2)}
@media(max-width:720px){
  .topbar .in,.wrap,.foot{padding-left:20px;padding-right:20px}
  .shell-bar{padding-right:20px}
}

/* ----------------------------------------------------------------------------
   5. COMPONENTES
   -------------------------------------------------------------------------- */

/* 5.1 Cabeçalho de página */
.ph{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--s-4) var(--s-5);margin:0 0 var(--s-5)}
.ph-main{flex:1 1 420px;min-width:0}
.ph-volta{display:inline-block;font-size:13px;font-weight:600;color:var(--text-muted);margin-bottom:var(--s-1)}
.ph-volta:hover{color:var(--text)}
.ph h1{margin:0;font-size:clamp(1.6rem,1.25rem + 1.2vw,2.15rem);font-weight:700;letter-spacing:-.03em;line-height:1.15;color:var(--text);text-wrap:balance}
.ph .desc{margin:var(--s-2) 0 0;max-width:680px;font-size:var(--fs-base);line-height:1.55;color:var(--text-muted)}
.ph .desc b{color:var(--text);font-weight:650}
.ph-side{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:flex-end;gap:var(--s-2);margin-left:auto}
.ph-side form{margin:0}
.ph-side .fld{margin:0;min-width:220px}
.ph + .seg{margin-top:calc(var(--s-2) * -1)}

/* 5.2 Barra de alternância (unificações) */
.seg{display:flex;flex-wrap:wrap;gap:var(--s-1);padding:var(--s-1);margin:0 0 var(--s-5);width:fit-content;max-width:100%;background:var(--fill-1);border-radius:var(--r-pill)}
.seg a{padding:var(--s-2) var(--s-4);border-radius:var(--r-pill);font-size:13.5px;font-weight:600;color:var(--text-muted);white-space:nowrap;transition:background 160ms var(--ease), color 160ms var(--ease)}
.seg a:hover{color:var(--text)}
.seg a.on{background:var(--surface-solid);color:var(--text);box-shadow:var(--float-shadow)}
.seg .seg-mais > summary{display:inline-flex;align-items:center;gap:7px;padding:var(--s-2) var(--s-4);border-radius:var(--r-pill);font-size:13.5px;font-weight:600;color:var(--text-muted);white-space:nowrap;transition:background 160ms var(--ease), color 160ms var(--ease)}
.seg .seg-mais > summary::after{content:"";width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-2px);opacity:.6}
.seg .seg-mais > summary:hover,.seg .seg-mais[open] > summary{color:var(--text)}
.seg .seg-mais > summary.on{background:var(--surface-solid);color:var(--text);box-shadow:var(--float-shadow)}
.seg .seg-mais .menu-lista{left:0;right:auto;min-width:200px}
.seg .seg-mais .menu-lista a[aria-current]{background:var(--fill-2)}
/* estrela que fixa a seção na barra (cada usuário escolhe as suas) */
.seg .aba-item{display:flex;align-items:center;gap:2px}
.seg .aba-item a{flex:1 1 auto;padding:10px 12px;border-radius:var(--r-xs);font-size:13.5px;font-weight:550;color:var(--text)}
.seg .aba-item .aba-fixar{display:grid;place-items:center;flex:none;width:34px;height:34px;padding:0;color:var(--text-muted)}
.seg .aba-item .aba-fixar:hover{color:var(--text)}
.seg .aba-item .aba-fixar[aria-pressed="true"]{color:var(--gold)}
.seg .aba-item .aba-fixar[aria-pressed="true"] svg{fill:currentColor}
.gaveta-emp .menu-lista{left:0;right:auto;min-width:200px}
.gaveta-emp .menu-lista a[aria-current]{background:var(--fill-2);font-weight:700}
/* barra lateral flutuante das telas de uma empresa: fina e alta, um ícone por função (nome na dica) */
.emp-dock{position:fixed;right:14px;top:50%;transform:translateY(-50%);z-index:95;display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 6px;border:1px solid var(--line);border-radius:999px;background:var(--surface-solid);box-shadow:var(--float-shadow)}
.emp-dock form{margin:0}
.dock-bt{position:relative;display:grid;place-items:center;width:40px;height:40px;padding:0;border:0;border-radius:50%;background:transparent;color:var(--text);cursor:pointer;list-style:none}
.dock-bt::-webkit-details-marker{display:none}
.dock-bt:hover{background:var(--fill-2)}
.dock-bt:disabled{opacity:.4;cursor:default;background:transparent}
.dock-bt.primario{background:var(--navy);color:#fff}
.dock-bt.primario:hover{filter:brightness(1.15)}
.dock-bt.primario:disabled{background:var(--navy)}
.dock-bt[data-dica]:hover::after{content:attr(data-dica);position:absolute;right:calc(100% + 12px);top:50%;transform:translateY(-50%);padding:6px 10px;border-radius:var(--r-xs);background:var(--navy);color:#fff;font-size:12.5px;font-weight:600;white-space:nowrap;pointer-events:none}
.dock-pop[open] > .dock-bt::after{display:none}
.dock-pop[open] > .dock-bt{background:var(--fill-2)}
.dock-comp{position:absolute;bottom:-3px;left:50%;transform:translateX(-50%);font-size:9.5px;font-weight:700;color:var(--gold);letter-spacing:.02em}
.dock-pop:first-child > .dock-bt{margin-bottom:8px}
.dock-n{position:absolute;top:2px;right:0;min-width:16px;height:16px;padding:0 4px;border-radius:999px;background:var(--gold);color:#fff;font-size:10px;font-weight:700;line-height:16px;text-align:center}
.dock-div{width:22px;height:1px;margin:4px 0;background:var(--line)}
.dock-pop{position:relative}
.dock-painel{position:absolute;right:calc(100% + 14px);top:50%;transform:translateY(-50%);min-width:230px;padding:14px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface-solid);box-shadow:var(--float-shadow)}
.dock-painel .lb{display:block;font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:6px}
.dock-painel select{width:100%}
.side-secoes{display:flex;flex-direction:column;gap:2px}
.side-secoes a{display:block;padding:8px 10px;border-radius:var(--r-xs);color:var(--text);font-size:13.5px;font-weight:550}
.side-secoes a:hover{background:var(--fill-2)}
.side-secoes a[aria-current]{background:var(--fill-2);font-weight:700}
.wrap:has(.emp-dock){padding-right:calc(var(--s-6) + 56px)}
/* ações da empresa logo abaixo do nome (onde ficavam as abas) */
.emp-acoes{display:flex;flex-wrap:wrap;gap:var(--s-2);margin:calc(var(--s-2) - var(--s-5)) 0 var(--s-5)}
.seg-linha{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--s-3);margin:0 0 var(--s-5)}
.seg-linha .seg{margin:0}

/* 5.3 Botões */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:var(--s-2);
  border:0;cursor:pointer;background:var(--btn-bg);color:var(--btn-fg);
  font-weight:650;font-size:14px;font-family:inherit;line-height:1.2;
  padding:11px 20px;border-radius:var(--r-pill);white-space:nowrap;
  transition:background 200ms var(--ease), color 200ms var(--ease);
}
.btn:hover{background:var(--btn-hover);color:var(--btn-fg)}
.btn.lg{padding:14px 28px;font-size:15px}
.btn.ghost,.btn.sec{background:var(--fill-2);color:var(--text)}
.btn.ghost:hover,.btn.sec:hover{background:var(--fill-1);color:var(--text)}
.btn.danger,.btn.perigo{background:rgba(196,71,71,.12);color:var(--bad-fg)}
.btn.danger:hover,.btn.perigo:hover{background:rgba(196,71,71,.2);color:var(--bad-fg)}
.btn:disabled,.btn[disabled],.mini:disabled,.mini[disabled]{opacity:.45;cursor:not-allowed}
.btn.sm{padding:8px 14px;font-size:13px}
.mini{
  display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;line-height:1.3;
  padding:7px 12px;border-radius:var(--r-pill);border:1px solid var(--line);
  background:transparent;color:var(--text);cursor:pointer;font-family:inherit;white-space:nowrap;
}
.mini:hover{background:var(--fill-1)}
.mini.on{background:var(--fill-gold);border-color:transparent}
.mini.danger{color:var(--bad-fg)}
.acoes-linha{display:flex;flex-wrap:wrap;gap:var(--s-2);align-items:center}
.acoes-linha form{margin:0}
.actions{display:flex;flex-wrap:wrap;gap:10px;margin:var(--s-5) 0 var(--s-6);padding-top:var(--s-5);border-top:1px solid var(--line)}
.actions .btn{width:auto}

/* 5.4 Menu "Mais" (details) */
.menu{position:relative}
.menu > summary{list-style:none;cursor:pointer}
.menu > summary::-webkit-details-marker{display:none}
.menu > summary.btn::after,.menu > summary.mini::after{content:"";width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-2px);opacity:.6;margin-left:2px}
.menu-lista{
  position:absolute;right:0;top:calc(100% + 6px);z-index:85;min-width:240px;
  margin:0;padding:6px;list-style:none;background:var(--surface-solid);
  border:1px solid var(--line);border-radius:var(--r-sm);box-shadow:var(--float-shadow);
}
.menu-lista a,.menu-lista button{
  display:block;width:100%;text-align:left;padding:10px 12px;border:0;border-radius:var(--r-xs);
  background:transparent;color:var(--text);font:inherit;font-size:13.5px;font-weight:550;cursor:pointer;line-height:1.35;
}
.menu-lista a small,.menu-lista button small{display:block;font-size:12px;font-weight:450;color:var(--text-muted)}
.menu-lista a:hover,.menu-lista button:hover{background:var(--fill-2)}
.menu-lista button:disabled{opacity:.45;cursor:not-allowed;background:transparent}
.menu-lista form{margin:0}
.menu-lista .div{height:1px;margin:6px 4px;background:var(--line)}
/* coluna de ações fixa (sticky): a linha com o menu aberto fica acima das linhas de baixo e do rodapé */
td:has(> details.menu[open]){z-index:30}

/* 5.5 Card, painel e seção */
.card{background:transparent;border-radius:0;box-shadow:none;border-top:1px solid var(--line)}
.card.pad,.card .pad{padding:var(--s-4) 0 var(--s-2)}
.card + .card{margin-top:var(--s-2)}
.card.caixa{border:1px solid var(--line);border-radius:var(--r-md);padding:var(--s-5)}
.pad{padding:var(--s-5)}
.panel{background:transparent;border-radius:0;padding:var(--s-5) 0 var(--s-2);margin-bottom:0;border-top:1px solid var(--line)}
.panel h2{font-size:19px;font-weight:700;letter-spacing:-.02em;margin:0 0 var(--s-4);color:var(--text)}
.panel .fld{margin-bottom:14px}
.sec{margin-top:var(--s-6)}
.sec h2{font-size:19px;font-weight:700;letter-spacing:-.02em;color:var(--text);margin:0 0 14px;padding-bottom:var(--s-3);border-bottom:1px solid var(--line)}
.sec h2 .muted-sm{font-weight:500;text-transform:none;letter-spacing:0}
.sec + .card,.sec + .tbwrap,.sec + .panel,.sec + form.card{border-top:0}
details.card summary{padding:var(--s-4) 0!important}
h2.sec,h3.sec{margin:0 0 14px;font-size:var(--fs-base);font-weight:700;letter-spacing:-.01em;color:var(--text)}
.caixa-tracejada{border:1px dashed var(--line);border-radius:var(--r-md);padding:var(--s-4);display:flex;flex-wrap:wrap;gap:var(--s-3);align-items:flex-end}
.caixa-tracejada .fld{margin:0;min-width:220px}
.grid{display:grid;gap:14px}
.g2{grid-template-columns:1fr 1fr}
.g3{grid-template-columns:1fr 1fr 1fr}
.g4{grid-template-columns:repeat(4,1fr)}
@media(max-width:720px){.g2,.g3,.g4{grid-template-columns:1fr}}

/* 5.6 KPIs */
.kpis{display:flex;flex-wrap:wrap;gap:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:0 0 var(--s-5)}
.kpi{flex:1 1 170px;padding:var(--s-4) var(--s-5);border-left:1px solid var(--line);color:inherit;position:relative;min-width:0}
.kpi:first-child{border-left:0;padding-left:0}
@media(max-width:720px){.kpi{flex:1 1 45%;border-left:0;padding-left:0;border-top:1px solid var(--line)}.kpi:first-child,.kpi:nth-child(2){border-top:0}}
.kpi .v{font-size:22px;font-weight:700;letter-spacing:-.02em;color:var(--text);line-height:1.15;white-space:nowrap}
.kpi .v.sm{font-size:14px;white-space:normal}
.kpi .v.u-fs-xs,.kpi .v.u-fs-sm,.kpi .v.u-fs-md,.kpi .v.u-fs-base,.kpi .v.u-fs-lg{white-space:normal;line-height:1.3}
.kpi .v .nums,.kpi .v.nums{font-size:21px}
@media(max-width:1100px){.kpi .v{font-size:19px}}
.kpi .l{font-size:var(--fs-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;margin-top:5px}
.kpi .sub{font-size:var(--fs-sm);color:var(--text-muted);margin-top:6px;line-height:1.45}
.kpi.best:before{content:"";position:absolute;left:0;top:18px;bottom:18px;width:3px;background:var(--gold);border-radius:2px}
.kpi:first-child.best{padding-left:var(--s-4)}
.kpi form{margin:var(--s-2) 0 0}
/* faixa de indicadores legada: mesmo desenho do .kpis */
.strip{display:flex;flex-wrap:wrap;gap:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:0 0 var(--s-5)}
.strip .cell{flex:1 1 160px;padding:var(--s-4) var(--s-5);border-left:1px solid var(--line)}
.strip .cell:first-child{border-left:0;padding-left:0}
.strip .v{font-size:24px;font-weight:700;letter-spacing:-.02em;color:var(--text)}
.strip .l{font-size:var(--fs-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;margin-top:var(--s-1)}

/* 5.7 Tabelas: cabeçalho fixo, números à direita, ações na última coluna */
.tbwrap{overflow:auto;max-height:calc(100vh - 180px)}
table.tb,table.ut{width:100%;border-collapse:separate;border-spacing:0;font-size:13.5px}
.tb th,.ut th{
  position:sticky;top:var(--bar-h);z-index:2;background:var(--bg);
  text-align:left;font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.06em;
  color:var(--text-muted);font-weight:600;padding:10px var(--s-3) 10px 0;border-bottom:1px solid var(--line);white-space:nowrap;
}
.tbwrap .tb th,.tbwrap .ut th{top:0}
.tb td,.ut td{padding:var(--s-3) var(--s-3) var(--s-3) 0;border-bottom:1px solid var(--line);color:var(--text);vertical-align:top}
.tb tr:hover td,.ut tr:hover td{background:var(--fill-1)}
.tb td.r,.tb th.r,.ut td.r,.ut th.r,.tb td.num,.tb th.num{text-align:right;font-variant-numeric:tabular-nums}
.tb td:last-child,.tb th:last-child{padding-right:0}
.tb td.acoes{text-align:right;white-space:nowrap}
.tb td.acoes form{display:inline;margin:0}
.tb tr.tot td{font-weight:700}
.tb tr.atual td{background:var(--fill-gold)}
.tb.compacta td{padding:var(--s-2) var(--s-3) var(--s-2) 0}
.tb .vmid td{vertical-align:middle}

/* 5.8 Filtros */
.filtros{display:flex;gap:var(--s-4);flex-wrap:wrap;align-items:flex-end;margin:0 0 var(--s-2)}
.filtros .fld{margin:0;min-width:200px}
.fchips{display:flex;flex-wrap:wrap;gap:6px;margin:var(--s-3) 0 var(--s-1)}
.fchips a{padding:7px 13px;border-radius:var(--r-pill);border:1px solid var(--line);font-size:var(--fs-sm);font-weight:600;color:var(--text-muted)}
.fchips a.on{background:var(--fill-gold);border-color:transparent;color:var(--text)}
.fchips a:hover{background:var(--fill-1)}
.tabs{display:flex;flex-wrap:wrap;gap:var(--s-1);padding:var(--s-1);background:var(--fill-1);border-radius:var(--r-pill);margin:var(--s-2) 0 var(--s-4);width:fit-content;max-width:100%}
.tabs a{padding:var(--s-2) 14px;border-radius:var(--r-pill);font-size:13px;font-weight:500;color:var(--text-muted);cursor:pointer}
.tabs a.on{background:var(--surface-solid);color:var(--text);font-weight:650;box-shadow:var(--float-shadow)}
.opts{display:flex;flex-wrap:wrap;gap:var(--s-2)}
.opts label{display:flex;gap:var(--s-2);align-items:center;border:1px solid var(--line);padding:9px 14px;border-radius:var(--r-pill);font-size:13.5px;font-weight:500;cursor:pointer}
.opts label:hover{background:var(--fill-1)}
.opts input{width:auto;margin:0}

/* 5.9 Badge de status */
.pill,.badge{display:inline-block;font-size:var(--fs-xs);font-weight:700;padding:3px 10px;border-radius:var(--r-pill);background:var(--fill-2);color:var(--text);letter-spacing:.01em;white-space:nowrap;line-height:1.5}
.pill.ok,.badge.ok{background:rgba(31,143,90,.14);color:var(--ok-fg)}
.pill.warn,.badge.warn{background:rgba(196,125,24,.16);color:var(--warn-fg)}
.pill.bad,.badge.bad{background:rgba(196,71,71,.16);color:var(--bad-fg)}
.pill.info,.badge.info{background:var(--fill-gold);color:var(--info-fg)}
.origem{font-size:10px;font-weight:700;padding:1px 7px;border-radius:var(--r-pill);background:var(--fill-gold);color:var(--info-fg);vertical-align:middle;margin-left:6px;letter-spacing:.03em}
.dot{display:inline-block;width:10px;height:10px;border-radius:50%;vertical-align:middle;margin-right:6px;background:var(--text-muted)}
.dot.critico,.dot.ultrapassado,.dot.alto_risco,.dot.grave,.dot.bad,.dot.erro{background:var(--bad)}
.dot.atencao,.dot.risco,.dot.revisao,.dot.medio,.dot.warn{background:var(--warn)}
.dot.preventivo{background:var(--gold)}
.dot.oportunidade{background:var(--link)}
.dot.normal,.dot.ok{background:var(--ok)}
.dot.dados_insuficientes,.dot.insuficiente{background:var(--text-muted)}
.status{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;letter-spacing:.01em;white-space:nowrap}
.status .dot{width:8px;height:8px;margin:0}
.status.ok{color:var(--ok-fg)}.status.ok .dot{background:var(--ok-fg)}
.status.bad{color:var(--bad-fg)}.status.bad .dot{background:var(--bad-fg)}
.status.warn{color:var(--warn-fg)}.status.warn .dot{background:var(--warn-fg)}
.status.muted{color:var(--text-muted)}.status.muted .dot{background:var(--text-muted)}
.status.info{color:var(--info-fg)}.status.info .dot{background:var(--info-fg)}

/* 5.10 Estado vazio */
.empty,.vazio{text-align:center;padding:40px 20px;color:var(--text-muted);font-size:14px}
.empty .big{font-size:36px;margin-bottom:10px}
.empty p{margin:0 auto;max-width:520px}

/* 5.11 Avisos */
.aviso{padding:var(--s-3) var(--s-4);border-radius:var(--r-sm);font-size:14px;line-height:1.5;background:var(--fill-1);color:var(--text);border-left:3px solid var(--text-muted)}
.aviso.erro,.erro{background:rgba(196,71,71,.08);color:#8f2e2e;border-left-color:var(--bad)}
.ok-msg{padding:var(--s-3) var(--s-4);border-radius:var(--r-sm);margin-bottom:18px;font-size:14px}
.aviso.ok,.ok-msg{background:rgba(31,143,90,.08);color:var(--ok-fg);border-left-color:var(--ok)}
.aviso.warn{background:rgba(196,125,24,.08);color:var(--warn-fg);border-left-color:var(--warn)}
.senha-temp{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s-2) var(--s-5);margin-bottom:18px}
.senha-temp > span:first-child{flex-basis:100%}
.senha-temp .st-k{color:var(--text-muted);font-size:12px;margin-right:6px}
.senha-temp b{font-family:ui-monospace,Consolas,monospace;font-size:15px;letter-spacing:.04em;color:var(--text)}
.erro{padding:var(--s-3) var(--s-4);border-radius:var(--r-sm);margin-bottom:18px;font-size:14px;border-left:3px solid var(--bad)}
html[data-theme="dark"] .aviso.erro,html[data-theme="dark"] .erro{color:#f0a8a0;background:rgba(196,71,71,.16)}
.disc{font-size:var(--fs-sm);color:var(--text-muted);margin-top:var(--s-6);padding-top:var(--s-4);border-top:1px solid var(--line);line-height:1.55}

/* 5.12 Saiba mais */
details.saiba{margin-top:var(--s-2)}
details.saiba > summary{display:inline-flex;align-items:center;gap:6px;cursor:pointer;list-style:none;font-size:var(--fs-sm);font-weight:600;color:var(--text-muted)}
details.saiba > summary::-webkit-details-marker{display:none}
details.saiba > summary::before{content:"i";display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:50%;border:1px solid currentColor;font-size:10px;font-weight:700;font-style:normal}
details.saiba[open] > summary{color:var(--text)}
details.saiba .saiba-corpo{margin-top:var(--s-2);padding:var(--s-3) var(--s-4);background:var(--fill-1);border-radius:var(--r-sm);font-size:13px;line-height:1.55;color:var(--text-muted);max-width:760px}
details.saiba .saiba-corpo p{margin:0 0 var(--s-2)}
details.saiba .saiba-corpo p:last-child{margin:0}
details.bloco{border-top:1px solid var(--line);padding:14px 0}
details.bloco > summary{cursor:pointer;font-size:15px;font-weight:700;letter-spacing:-.01em;list-style:none}
details.bloco > summary::-webkit-details-marker{display:none}
details.bloco > summary:before{content:"▸ ";color:var(--text-muted)}
details.bloco[open] > summary:before{content:"▾ "}

/* 5.13 Lista chave e valor, gráficos de barras */
.kv{display:flex;justify-content:space-between;gap:var(--s-3);font-size:13.5px;padding:9px 0;border-bottom:1px solid var(--line)}
.kv:last-child{border-bottom:0}
.chart h3{margin:0 0 14px;font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted);font-weight:600}
.bars{display:flex;align-items:flex-end;gap:10px;padding-top:18px;overflow-x:auto;border-bottom:1px solid var(--line)}
.bars .col{flex:1 0 auto;min-width:56px;display:flex;flex-direction:column;align-items:center}
.barwrap{height:140px;width:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center}
.vl{font-size:10px;color:var(--text-muted);margin-bottom:5px;white-space:nowrap;font-variant-numeric:tabular-nums}
.vbar{width:62%;max-width:34px;min-height:3px;border-radius:4px 4px 0 0;background:var(--text-muted);opacity:.85}
.vbar.navy{background:var(--text-muted)}.vbar.gold{background:var(--gold);opacity:1}.vbar.blue{background:var(--link)}.vbar.teal{background:var(--teal)}.vbar.warn{background:var(--warn)}.vbar.bad{background:var(--bad)}
.xl{font-size:10.5px;color:var(--text-muted);margin:var(--s-2) 0 6px;text-align:center;white-space:nowrap}
.lg:not(.btn),.legenda{display:flex;gap:14px;font-size:12px;color:var(--text-muted);margin-top:10px;flex-wrap:wrap}
.lg:not(.btn) i,.legenda i{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:5px;vertical-align:middle}
.legenda i.navy{background:var(--navy)}
html[data-theme="dark"] .legenda i.navy{background:var(--text-muted)}
.legenda i.gold{background:var(--gold)}
.legenda i.teal{background:var(--teal)}
.legenda i.warn{background:var(--warn)}
.range{width:100%;accent-color:var(--gold);margin:10px 0}
.loading{opacity:.55;pointer-events:none}
.adv{display:none}.avancado .adv{display:block}

/* 5.14 Área de envio de arquivos */
.envio{border:1.5px dashed var(--field-border);border-radius:var(--r-md);padding:var(--s-5);background:var(--fill-1);transition:border-color 160ms var(--ease), background 160ms var(--ease)}
.envio.over{border-color:var(--gold);background:var(--fill-gold)}
.envio-area{position:relative;display:flex;align-items:center;gap:var(--s-4);cursor:pointer}
.envio-area input[type=file]{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%}
.envio-ic{flex:0 0 auto;width:44px;height:44px;border-radius:var(--r-sm);display:flex;align-items:center;justify-content:center;background:var(--fill-gold);color:var(--navy)}
html[data-theme="dark"] .envio-ic{color:var(--gold)}
.envio-ic svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.envio-tt{font-size:16px;font-weight:700;color:var(--text);letter-spacing:-.01em}
.envio-ds{font-size:13px;color:var(--text-muted);margin-top:2px}
.envio-arquivos{list-style:none;margin:var(--s-4) 0 0;padding:0;display:grid;gap:6px}
.envio-arquivos li{display:flex;justify-content:space-between;gap:var(--s-3);font-size:13px;padding:var(--s-2) var(--s-3);background:var(--surface-solid);border-radius:var(--r-xs)}
.envio-arquivos li span:last-child{color:var(--text-muted);white-space:nowrap}
.envio-rodape{display:flex;flex-wrap:wrap;gap:var(--s-3);align-items:center;justify-content:space-between;margin-top:var(--s-4)}
.envio-rodape .fld{margin:0;min-width:240px}

/* 5.15 Janela (dialog): o que precisa ser informado antes de uma ação */
.dlg{width:min(560px,calc(100vw - 32px));max-height:calc(100vh - 48px);overflow:auto;padding:var(--s-6);border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface-solid);color:var(--text);box-shadow:var(--float-shadow);text-align:left}
.dlg::backdrop{background:rgba(20,26,27,.45);backdrop-filter:blur(2px)}
.dlg h2{margin:0 0 var(--s-4);font-family:var(--font-display);font-size:1.25rem;font-weight:700;letter-spacing:-.02em}
.dlg fieldset{border:0;border-top:1px solid var(--line);margin:0;padding:var(--s-4) 0}
.dlg legend{padding:0 var(--s-2) 0 0;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted)}
.dlg-anexo{display:flex;flex-wrap:wrap;gap:var(--s-2)}
.dlg-anexo label{cursor:pointer}
.dlg-anexo input{position:absolute;opacity:0;pointer-events:none}
.dlg-anexo span{display:inline-block;min-width:52px;padding:9px 14px;border:1px solid var(--field-border);border-radius:var(--r-xs);text-align:center;font-weight:650}
.dlg-anexo input:checked + span{border-color:var(--gold);background:var(--fill-gold)}
.dlg-anexo input:focus-visible + span{outline:2px solid var(--gold);outline-offset:2px}
.dlg-meses{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s-3)}
.dlg-meses .fld{margin:0;min-width:0}
.dlg-meses input{width:100%;text-align:right}
@media(max-width:520px){.dlg-meses{grid-template-columns:repeat(2,minmax(0,1fr))}}
.dlg-acoes{display:flex;justify-content:flex-end;gap:10px;padding-top:var(--s-4);border-top:1px solid var(--line)}
/* Confirmação de custo do SERPRO (macro custo_serpro): segurar e arrastar o pino até o fim */
.dlg-custo{width:min(460px,calc(100vw - 32px))}
.dlg-custo .custo-aviso{margin:0 0 var(--s-3);color:var(--warn-fg)}
.dlg-custo .custo-aviso b{color:inherit}
.dlg-custo .custo-linhas{margin-bottom:var(--s-2);border-top:1px solid var(--line)}
.dlg-custo .custo-linha{display:flex;justify-content:space-between;gap:var(--s-3);padding:8px 0;border-bottom:1px solid var(--line);font-size:14px;color:var(--text-muted)}
.dlg-custo .custo-linha.tot{color:var(--text);font-weight:700}
.dlg-custo .custo-linha .nums{white-space:nowrap}
.custo-trilho{position:relative;height:52px;margin:var(--s-4) 0;border:1px solid var(--line);border-radius:999px;background:var(--fill-gold);overflow:hidden;user-select:none;-webkit-user-select:none;touch-action:none;outline:none}
.custo-trilho:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.custo-fundo{position:absolute;inset:0 auto 0 0;width:0;background:var(--gold);opacity:.35}
.custo-txt{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding-left:44px;font-size:13.5px;font-weight:650;color:var(--text-muted);pointer-events:none}
.custo-pino{position:absolute;top:3px;left:3px;width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--gold);color:#0b1630;cursor:grab;box-shadow:0 2px 8px rgba(20,26,27,.25)}
.custo-trilho.is-arrastando .custo-pino{cursor:grabbing}
.custo-trilho.is-voltando .custo-pino,.custo-trilho.is-voltando .custo-fundo{transition:left .25s ease,width .25s ease}
.custo-trilho.is-ok .custo-txt{color:var(--text)}

/* Janela de carregamento (app.js): mini janela com tempo decorrido e estimativa */
.carga{position:fixed;inset:0;z-index:9000;display:flex;align-items:center;justify-content:center;padding:var(--s-4);
  background:rgba(20,26,27,.28);backdrop-filter:blur(1.5px);animation:carga-in .18s var(--ease)}
.carga[hidden]{display:none}
.carga-caixa{width:min(380px,100%);background:var(--surface-solid);color:var(--text);border:1px solid var(--line);
  border-radius:var(--r-md);box-shadow:var(--float-shadow);padding:var(--s-4) var(--s-5) var(--s-4)}
.carga-topo{display:flex;align-items:flex-start;gap:var(--s-3)}
.carga-titulo{flex:1;min-width:0;font-size:var(--fs-base);font-weight:700;letter-spacing:-.01em;line-height:1.3;overflow-wrap:anywhere}
.carga-tempo{font-size:var(--fs-sm);color:var(--text-muted);font-variant-numeric:tabular-nums}
.carga-spin{width:16px;height:16px;flex:none;margin-top:2px;border-radius:50%;border:1.8px solid var(--fill-2);border-top-color:var(--gold);animation:carga-gira .8s linear infinite}
.carga-barra{position:relative;height:6px;border-radius:var(--r-pill);background:var(--fill-2);overflow:hidden;margin:var(--s-3) 0 var(--s-2)}
.carga-barra > i{display:block;height:100%;width:0;background:var(--gold);border-radius:inherit;transition:width .5s linear}
.carga.is-indef .carga-barra > i{width:35%;position:absolute;animation:carga-vai 1.3s var(--ease) infinite}
.carga-msg{margin:0;font-size:var(--fs-sm);color:var(--text-muted);min-height:1.4em}
.carga-erro{margin:var(--s-2) 0 0;font-size:var(--fs-xs);white-space:pre-wrap;max-height:10rem;overflow:auto;background:var(--fill-1);border-radius:var(--r-xs);padding:var(--s-2)}
.carga-fechar{margin-top:var(--s-3)}
.carga.is-erro .carga-spin{animation:none;border-color:var(--bad-fg,#B3261E)}
.carga.is-erro .carga-barra > i{background:var(--bad-fg,#B3261E)}
@keyframes carga-gira{to{transform:rotate(360deg)}}
@keyframes carga-vai{0%{left:-35%}100%{left:100%}}
@keyframes carga-in{from{opacity:0}to{opacity:1}}
@media (prefers-reduced-motion:reduce){.carga,.carga-spin,.carga.is-indef .carga-barra > i{animation:none}}

/* ----------------------------------------------------------------------------
   6. UTILITÁRIOS (substituem style="" estáticos; escala 4 · 8 · 12 · 16 · 24 · 32)
   -------------------------------------------------------------------------- */
.u-m0{margin:0!important}
.u-mt0{margin-top:0!important}.u-mt1{margin-top:var(--s-1)!important}.u-mt2{margin-top:var(--s-2)!important}.u-mt3{margin-top:var(--s-3)!important}.u-mt4{margin-top:var(--s-4)!important}.u-mt5{margin-top:var(--s-5)!important}.u-mt6{margin-top:var(--s-6)!important}
.u-mb0{margin-bottom:0!important}.u-mb1{margin-bottom:var(--s-1)!important}.u-mb2{margin-bottom:var(--s-2)!important}.u-mb3{margin-bottom:var(--s-3)!important}.u-mb4{margin-bottom:var(--s-4)!important}.u-mb5{margin-bottom:var(--s-5)!important}
.u-ml-auto{margin-left:auto!important}
.u-p0{padding:0!important}
.u-flex{display:flex!important}.u-inline{display:inline!important}.u-inline-flex{display:inline-flex!important}.u-block{display:block!important}.u-grid{display:grid!important}
.u-wrap{flex-wrap:wrap!important}.u-center{align-items:center!important}.u-end{align-items:flex-end!important}.u-start{align-items:flex-start!important}.u-baseline{align-items:baseline!important}
.u-between{justify-content:space-between!important}.u-justify-end{justify-content:flex-end!important}
.u-gap1{gap:var(--s-1)!important}.u-gap2{gap:var(--s-2)!important}.u-gap3{gap:var(--s-3)!important}.u-gap4{gap:var(--s-4)!important}.u-gap5{gap:var(--s-5)!important}
.u-flex1{flex:1 1 0!important;min-width:0}
.u-full{grid-column:1/-1!important}
.u-w-auto{width:auto!important}.u-w-100{width:100%!important}
.u-minw-sm{min-width:120px!important}.u-minw-md{min-width:160px!important}.u-minw-lg{min-width:220px!important}.u-minw-xl{min-width:280px!important}
.u-w-xs{width:1%!important}.u-w-sm{width:120px!important}.u-w-md{width:140px!important}.u-w-lg{width:200px!important}
.u-right{text-align:right!important}.u-left{text-align:left!important}.u-tcenter{text-align:center!important}
.u-nowrap{white-space:nowrap!important}
.u-fs-xs{font-size:var(--fs-xs)!important}.u-fs-sm{font-size:var(--fs-sm)!important}.u-fs-md{font-size:var(--fs-md)!important}.u-fs-base{font-size:var(--fs-base)!important}.u-fs-lg{font-size:18px!important}
.u-fw4{font-weight:400!important}.u-fw5{font-weight:500!important}.u-fw6{font-weight:600!important}.u-fw7{font-weight:700!important}
.u-muted{color:var(--text-muted)!important}.u-text{color:var(--text)!important}.u-bad{color:var(--bad-fg)!important}.u-ok{color:var(--ok-fg)!important}.u-warn{color:var(--warn-fg)!important}
.u-upper-off{text-transform:none!important;letter-spacing:0!important}
.u-pointer{cursor:pointer!important}
.u-bt{border-top:1px solid var(--line)!important}.u-bb{border-bottom:1px solid var(--line)!important}.u-b0{border:0!important}
.u-bl-bad{border-left:3px solid var(--bad)!important}.u-bl-warn{border-left:3px solid var(--warn)!important}.u-bl-gold{border-left:3px solid var(--gold)!important}
.u-list{margin:var(--s-2) 0 0;padding-left:20px}
.u-fade{opacity:.7}
.u-fill{background:var(--fill-2)!important}
.u-overflow-auto{overflow:auto!important}

/* ----------------------------------------------------------------------------
   7. COMPATIBILIDADE: telas ainda não migradas (módulos ocultos)
   Mantém o desenho antigo do base.html só dentro de .legado.
   -------------------------------------------------------------------------- */
.legado .lead h1{font-size:var(--fs-h2);margin:6px 0 8px;letter-spacing:-.03em;font-weight:700;color:var(--text);line-height:1.15;text-wrap:balance}
.legado .lead p{color:var(--text-muted);margin:0 0 22px;max-width:640px;font-size:var(--fs-body)}
.legado .card{background:var(--fill-1);border:0;border-radius:var(--r-lg);box-shadow:none}
.legado .card.pad,.legado .card .pad{padding:24px}
.legado .sec{margin-top:28px}
.legado .sec h2{font-size:15px;letter-spacing:-.01em;margin:0 0 14px;padding:0;border:0;font-weight:650}
.legado .btn{font-size:15px;padding:14px 28px}
.legado .tbwrap{overflow-x:auto;max-height:none}
.legado .tb th,.legado .ut th{position:static;background:transparent}
.legado .strip{background:transparent}
.hubgrid{display:grid;grid-template-columns:1fr 1fr;gap:0;border-top:1px solid var(--line);margin-top:8px}
@media(max-width:720px){.hubgrid{grid-template-columns:1fr}}
.hubcard{display:block;padding:22px 4px 22px 0;border-bottom:1px solid var(--line);color:inherit;transition:padding .25s var(--ease)}
.hubgrid .hubcard:nth-child(odd){padding-right:22px}
.hubgrid .hubcard:nth-child(even){padding-left:22px;border-left:1px solid var(--line)}
.hubcard:hover{padding-left:8px}
.hubic{width:36px;height:36px;border-radius:var(--r-sm);margin-bottom:12px;background:var(--fill-gold);color:var(--navy);display:flex;align-items:center;justify-content:center}
html[data-theme="dark"] .hubic{color:var(--gold)}
.hubic svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.hubt{font-weight:700;color:var(--text);font-size:19px;margin:0 0 6px;letter-spacing:-.02em}
.hubd{font-size:13.5px;color:var(--text-muted);line-height:1.5;max-width:340px}

/* Correções de tema escuro herdadas, necessárias nas telas antigas */
html[data-theme="dark"] .legado .drop .tt,html[data-theme="dark"] .legado .files li,
html[data-theme="dark"] .legado .files li .nm,html[data-theme="dark"] .legado .info b,
html[data-theme="dark"] .legado .order b,html[data-theme="dark"] .legado .meta b,
html[data-theme="dark"] .legado .stepbar b,html[data-theme="dark"] .legado .kpi .v,
html[data-theme="dark"] .legado .chart h3,html[data-theme="dark"] .legado .big,
html[data-theme="dark"] .legado .fcard h4,html[data-theme="dark"] .legado .frow .it b,
html[data-theme="dark"] .legado .head h1,html[data-theme="dark"] .legado .mkpi .v,
html[data-theme="dark"] .legado .barrow .lab,html[data-theme="dark"] .legado .licao .h .t,
html[data-theme="dark"] .legado .inst .t,html[data-theme="dark"] .legado .detect,
html[data-theme="dark"] .legado .quick a,html[data-theme="dark"] .legado .sigrow{color:var(--text)}
html[data-theme="dark"] .legado .drop .ds,html[data-theme="dark"] .legado .info,
html[data-theme="dark"] .legado .order,html[data-theme="dark"] .legado .files .h{color:var(--text-muted)}
html[data-theme="dark"] .legado .drop .box,html[data-theme="dark"] .legado .files li,
html[data-theme="dark"] .legado .info,html[data-theme="dark"] .legado .detect,
html[data-theme="dark"] .legado .quick a,html[data-theme="dark"] .legado .btn-mini,
html[data-theme="dark"] .legado .tabbtn:not(.on),html[data-theme="dark"] .legado .rank,
html[data-theme="dark"] .legado .step,html[data-theme="dark"] .legado .kpi,
html[data-theme="dark"] .legado .chart,html[data-theme="dark"] .legado .mkpi,
html[data-theme="dark"] .legado .licao,html[data-theme="dark"] .legado .inst{
  background:var(--fill-2)!important;border-color:transparent!important;color:var(--text)!important;
}
html[data-theme="dark"] .legado .drop .ic{background:var(--fill-gold);color:var(--gold)}
html[data-theme="dark"] .legado .tabbtn.on{background:var(--btn-bg)!important;color:var(--btn-fg)!important;border-color:transparent!important}
html[data-theme="dark"] .legado .files li .tag{background:var(--fill-gold);color:var(--gold)}
html[data-theme="dark"] .legado .tb tr:hover td,html[data-theme="dark"] .legado .ut tr:hover td,
html[data-theme="dark"] .legado .mt tr:hover td,html[data-theme="dark"] .legado .gr tr:hover td,
html[data-theme="dark"] .legado .dv tr:hover td{background:var(--fill-2)!important;color:var(--text)!important}
html[data-theme="dark"] .legado .dl{color:var(--link)!important}
html[data-theme="dark"] .legado [style*="color:var(--navy)"],
html[data-theme="dark"] .legado [style*="color: var(--navy)"]{color:var(--text)!important}

/* ----------------------------------------------------------------------------
   8. TELAS (estilos específicos, com escopo)
   -------------------------------------------------------------------------- */

/* 8.1 Início */
.pg-home .home-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:var(--s-6);align-items:start}
@media(max-width:1100px){.pg-home .home-grid{grid-template-columns:1fr}}
.pg-home .att{list-style:none;margin:0;padding:0}
.pg-home .att li{padding:14px 0;border-bottom:1px solid var(--line)}
.pg-home .att li:last-child{border-bottom:0}
.pg-home .att .nv{font-size:var(--fs-xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase;margin-bottom:var(--s-1)}
.pg-home .att .nv.alto{color:var(--bad-fg)}.pg-home .att .nv.medio{color:var(--warn-fg)}.pg-home .att .nv.baixo{color:var(--link)}
.pg-home .att b{display:block;font-size:var(--fs-base);color:var(--text);margin-bottom:3px;font-weight:650}
.pg-home .att span{font-size:13px;color:var(--text-muted);line-height:1.45}
.pg-home .att a{display:inline-block;margin-top:6px;font-size:var(--fs-sm);font-weight:650;color:var(--link)}
.pg-home .blocos{display:grid;grid-template-columns:1fr 1fr;gap:var(--s-3)}
@media(max-width:720px){.pg-home .blocos{grid-template-columns:1fr}}
.pg-home .bloco{padding:var(--s-4);border-radius:var(--r-md);background:var(--fill-1)}
.pg-home .bloco h3{margin:0 0 10px;font-size:14px;font-weight:650;color:var(--text);letter-spacing:-.01em}
.pg-home .bloco ul{margin:0;padding:0;list-style:none}
.pg-home .bloco li{display:flex;justify-content:space-between;gap:10px;padding:5px 0;font-size:13.5px;color:var(--text-muted)}
.pg-home .bloco li .n{color:var(--text);font-weight:650}
.pg-home .bloco .go{display:inline-block;margin-top:10px;font-size:var(--fs-sm);font-weight:650;color:var(--link)}
.pg-home .empty{text-align:left;padding:var(--s-4) 0}
.pg-home .empty p{margin:0}

/* tela:painel-contador inicio (Início da equipe, modelo Sittax/Jettax) */
.pg-painel .ico,.pc-kpi-ic .ico{width:16px;height:16px;flex:0 0 auto;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.pg-painel .btn .ico{margin-right:6px;width:15px;height:15px}
.pg-painel .btn.sm{display:inline-flex;align-items:center}
.pg-painel h2{margin:0;font-size:15px;font-weight:700;letter-spacing:-.015em;color:var(--text)}

/* cabeçalho */
.pc-top{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--s-4) var(--s-5);margin:0 0 var(--s-5)}
.pc-top-main{flex:1 1 360px;min-width:0}
.pc-eyebrow{margin:0 0 2px;font-size:var(--fs-xs);font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--gold)}
.pc-top h1{margin:0;font-size:clamp(1.55rem,1.2rem + 1.1vw,2rem);font-weight:750;letter-spacing:-.03em;line-height:1.15}
.pc-meta{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0 0;font-size:13.5px;color:var(--text-muted)}
.pc-meta b{color:var(--text);font-weight:650}
.pc-meta .sep{opacity:.5}
.pc-toolbar{display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--s-3)}
.pc-lbl{display:block;font-size:var(--fs-xs);font-weight:650;color:var(--text-muted);letter-spacing:.04em;text-transform:uppercase;margin:0 0 5px}
.pc-comp{margin:0}
.pc-comp select{min-width:128px}
.pc-emp{position:relative}
.pc-emp-in,.pc-busca{position:relative}
.pc-emp-in .ico,.pc-busca .ico{position:absolute;left:11px;top:50%;transform:translateY(-50%);color:var(--text-muted);pointer-events:none}
.pc-emp-in input{padding-left:34px;width:280px;max-width:100%}
.pc-btns{display:flex;gap:var(--s-2);flex-wrap:wrap}

/* indicadores */
.pc-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:var(--s-3);margin:0 0 var(--s-5)}
@media(max-width:1280px){.pc-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:640px){.pc-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
.pc-kpi{
  --ac:var(--text-muted);
  display:flex;flex-direction:column;align-items:flex-start;gap:2px;text-align:left;
  padding:14px 16px 14px;border:1px solid var(--line);border-radius:var(--r-md);
  background:var(--surface-solid);color:var(--text);font:inherit;cursor:pointer;position:relative;overflow:hidden;
  transition:border-color 160ms var(--ease), transform 160ms var(--ease), box-shadow 160ms var(--ease);
}
html[data-theme="dark"] .pc-kpi,html[data-theme="dark"] .pc-card,html[data-theme="dark"] .pc-mod{background:rgba(248,246,241,.03)}
.pc-kpi::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--ac);opacity:.9}
.pc-kpi:hover{border-color:var(--field-border-hover);box-shadow:var(--float-shadow);color:var(--text)}
.pc-kpi.on{border-color:var(--gold);box-shadow:0 0 0 3px var(--field-ring)}
.pc-kpi.is-bad{--ac:var(--bad)}.pc-kpi.is-warn{--ac:var(--warn)}.pc-kpi.is-info{--ac:var(--gold)}
.pc-kpi-ic{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:9px;background:var(--fill-1);color:var(--ac);margin-bottom:8px}
.pc-kpi:not(.is-bad):not(.is-warn):not(.is-info) .pc-kpi-ic{color:var(--text)}
.pc-kpi-v{font-size:26px;font-weight:750;letter-spacing:-.03em;line-height:1.05}
.pc-kpi-v small{font-size:13px;font-weight:600;color:var(--text-muted);letter-spacing:0}
.pc-kpi-l{font-size:12.5px;font-weight:600;color:var(--text-muted);line-height:1.3}

/* cartões */
.pc-card{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface-solid);padding:18px 20px;min-width:0}
.pc-card-h{display:flex;align-items:center;justify-content:space-between;gap:var(--s-3);flex-wrap:wrap;margin:0 0 var(--s-4)}
.pc-card-acts{display:flex;gap:var(--s-2)}
.pc-duo{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:var(--s-4);margin:0 0 var(--s-4)}
.pc-duo-b{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);margin-top:var(--s-5)}
.pc-duo-b.so-uma{grid-template-columns:1fr}
@media(max-width:1100px){.pc-duo,.pc-duo-b{grid-template-columns:1fr}}

/* situação da competência */
.pc-totais{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s-3);margin-top:var(--s-4);padding-top:var(--s-4);border-top:1px solid var(--line)}
@media(max-width:640px){.pc-totais{grid-template-columns:1fr}}
.pc-totais div{display:flex;flex-direction:column;gap:2px;min-width:0}
.pc-totais span{font-size:var(--fs-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;font-weight:600}
.pc-totais b{font-size:17px;font-weight:750;letter-spacing:-.02em;white-space:nowrap}
.pc-totais .is-gold b{color:var(--info-fg)}

/* atenção necessária */
.pc-att-list{list-style:none;margin:0;padding:0}
.pc-att-list li + li{border-top:1px solid var(--line)}
.pc-att-row{
  display:grid;grid-template-columns:10px minmax(0,1fr) auto 36px;align-items:center;gap:12px;width:100%;
  padding:11px 6px;border:0;background:transparent;color:var(--text);font:inherit;font-size:13.5px;text-align:left;
  cursor:pointer;border-radius:var(--r-xs);transition:background 140ms var(--ease);
}
.pc-att-row:hover{background:var(--fill-1);color:var(--text)}
.pc-att-row b{text-align:right;font-size:15px;font-weight:750}
.pc-att-t{line-height:1.35}
.pc-dot{width:9px;height:9px;border-radius:50%;background:var(--text-muted)}
.pc-dot.critico{background:var(--bad);box-shadow:0 0 0 3px rgba(196,71,71,.16)}
.pc-dot.atencao{background:var(--warn);box-shadow:0 0 0 3px rgba(196,125,24,.16)}
.pc-dot.info{background:var(--gold);box-shadow:0 0 0 3px rgba(204,159,45,.2)}
.pc-tag{font-size:10.5px;font-weight:750;letter-spacing:.06em;padding:3px 7px;border-radius:6px;background:var(--fill-2);color:var(--text-muted)}
.pc-ok{display:flex;flex-direction:column;gap:4px;padding:var(--s-5) 0;text-align:center;color:var(--text-muted);font-size:13.5px}
.pc-ok b{color:var(--ok-fg);font-size:15px}

/* painel das empresas */
.pc-tabela{margin:0}
.pc-abas{display:flex;flex-wrap:wrap;gap:2px;border-bottom:1px solid var(--line);margin:0 0 var(--s-3)}
.pc-abas button{
  display:inline-flex;align-items:center;gap:7px;padding:10px 14px;margin-bottom:-1px;border:0;border-bottom:2px solid transparent;
  background:transparent;color:var(--text-muted);font:inherit;font-size:13.5px;font-weight:650;cursor:pointer;white-space:nowrap;
}
.pc-abas button:hover{color:var(--text)}
.pc-abas button.on{color:var(--text);border-bottom-color:var(--gold)}
.pc-abas button span{font-size:11.5px;font-weight:700;padding:1px 8px;border-radius:var(--r-pill);background:var(--fill-2);color:var(--text-muted)}
.pc-abas button.on span{background:var(--fill-gold);color:var(--info-fg)}
.pc-chips{display:flex;flex-wrap:wrap;gap:var(--s-2);margin:0 0 var(--s-4)}
.pc-chip{
  display:inline-flex;align-items:center;gap:8px;padding:6px 12px 6px 6px;border:1px solid var(--line);border-radius:var(--r-pill);
  background:transparent;color:var(--text);font:inherit;font-size:12.5px;font-weight:600;cursor:pointer;
  transition:background 140ms var(--ease), border-color 140ms var(--ease);
}
.pc-chip b{min-width:26px;padding:2px 7px;border-radius:var(--r-pill);background:rgba(196,71,71,.14);color:var(--bad-fg);font-size:12px;text-align:center}
.pc-chip.zero{color:var(--text-muted)}
.pc-chip.zero b{background:var(--fill-2);color:var(--text-muted)}
.pc-chip:hover{background:var(--fill-1)}
.pc-chip.on{background:var(--fill-gold);border-color:var(--gold)}
.pc-barra{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--s-3);margin:0 0 var(--s-3)}
.pc-busca{flex:0 1 360px;min-width:220px}
.pc-busca input{padding-left:34px}
.pc-filtro{display:flex;align-items:center;gap:var(--s-2);font-size:13px;color:var(--text-muted)}
.pc-filtro b{color:var(--text)}
.pc-lote{display:flex;align-items:center;gap:var(--s-2);padding:6px 6px 6px 14px;border-radius:var(--r-pill);background:var(--fill-gold);font-size:13px}
.pc-lote span{margin-right:4px}
.pc-tbwrap{max-height:none;overflow-x:auto;overflow-y:visible}
.pc-tb{font-size:13px}
.pc-tb th{padding-right:10px}.pc-tb td{padding-right:10px}
.pc-tb th{background:var(--surface-solid)}
html[data-theme="dark"] .pc-tb th{background:#1A2022}
.pc-tb th[data-sort]{cursor:pointer;user-select:none}
.pc-tb th[data-sort]:hover{color:var(--text)}
.pc-tb th.ord-asc::after{content:" ↑"}.pc-tb th.ord-desc::after{content:" ↓"}
.pc-tb td{vertical-align:middle;padding-top:10px;padding-bottom:10px}
.pc-tb .pc-ck{width:28px;padding-right:8px}
.pc-emp-c{min-width:200px;max-width:320px}
.pc-emp-c a{display:flex;flex-direction:column;color:var(--text)}
.pc-emp-c a:hover b{text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:3px}
.pc-emp-c b{font-weight:650;font-size:13.5px;line-height:1.3}
.pc-cnpj{font-size:11.5px;color:var(--text-muted);font-weight:600}
.pc-anx{display:inline-block;margin-top:3px;font-size:10.5px;font-weight:700;color:var(--text-muted);letter-spacing:.04em}
.pc-est{display:block;font-size:10.5px;font-weight:650;color:var(--warn-fg);letter-spacing:.03em}
.pc-alertas{min-width:140px;max-width:220px}
.pc-al{display:inline-block;margin:2px 4px 2px 0;padding:2px 8px;border-radius:6px;font-size:11px;font-weight:650;white-space:nowrap;background:rgba(196,125,24,.13);color:var(--warn-fg);cursor:help}
.pc-al-auditoria,.pc-al-inconsistencias,.pc-al-pgdas{background:rgba(196,71,71,.13);color:var(--bad-fg)}
.pc-al-radar,.pc-al-rbt12{background:var(--fill-gold);color:var(--info-fg)}
.pc-al-mais,.pc-al.leve{background:var(--fill-2);color:var(--text-muted)}
.pc-menu .menu-lista{min-width:210px;text-align:left}
.pc-vazio{padding:var(--s-5) 0;text-align:center;color:var(--text-muted);font-size:13.5px}
.pc-pag{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--s-3);margin-top:var(--s-3)}
.pc-pag-r{display:flex;align-items:center;gap:var(--s-2)}
.pc-pag-r select{width:auto}

/* saúde operacional */
.pc-sec{margin:0 0 var(--s-4)}
.pc-sec-h{display:flex;align-items:baseline;gap:var(--s-3);flex-wrap:wrap;margin:0 0 var(--s-3)}
.pc-saude{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s-3)}
@media(max-width:1100px){.pc-saude{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.pc-saude{grid-template-columns:1fr}}
.pc-mod{
  display:flex;flex-direction:column;gap:var(--s-3);padding:16px 18px;border:1px solid var(--line);border-radius:var(--r-md);
  background:var(--surface-solid);color:var(--text);transition:border-color 160ms var(--ease), box-shadow 160ms var(--ease);
}
.pc-mod:hover{border-color:var(--field-border-hover);box-shadow:var(--float-shadow);color:var(--text)}
.pc-mod-h{display:flex;align-items:center;gap:12px}
.pc-mod-h > div b{display:block;font-size:14px;font-weight:700;letter-spacing:-.01em}
.pc-mod-h > div span{display:block;font-size:12px;color:var(--text-muted)}
.pc-mod-ic{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:10px;background:var(--fill-gold);color:var(--info-fg);flex:0 0 auto}
.pc-mod-ic .ico{width:18px;height:18px;display:block}
.pc-mod-n{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s-2)}
.pc-mod-n div{display:flex;flex-direction:column}
.pc-mod-n b{font-size:22px;font-weight:750;letter-spacing:-.02em;line-height:1.1}
.pc-mod-n span{font-size:11.5px;color:var(--text-muted)}
.pc-barrinha{display:flex;gap:2px;height:6px;border-radius:3px;overflow:hidden;background:var(--fill-2)}
.pc-barrinha i{display:block;height:100%}
.pc-barrinha i.ok{background:var(--ok)}.pc-barrinha i.warn{background:var(--warn)}.pc-barrinha i.bad{background:var(--bad)}
.pc-mod-cert{display:flex;align-items:baseline;gap:8px}
.pc-mod-cert b{font-size:30px;font-weight:750;letter-spacing:-.03em;line-height:1}
.pc-mod-cert span{font-size:12.5px;color:var(--text-muted)}
.pc-mod-rod{margin:0;font-size:12.5px;color:var(--text-muted);line-height:1.4}
.pc-mod-go{margin-top:auto;font-size:12.5px;font-weight:650;color:var(--link)}

/* ocorrências */
.pc-oc td{vertical-align:top}
.pc-oc td b{font-weight:600}
.pc-oc-d{display:block;font-size:12px;color:var(--text-muted);line-height:1.4;margin-top:2px}
.pg-painel .pc-duo-b .tbwrap{max-height:none}
/* Início · refinamento visual (2026-09-29): mais respiro, menos contraste, tipografia com hierarquia,
   indicadores sem ícone, situação em barra segmentada, tabela limpa com ações só ao passar o mouse */
.pg-painel{--text-muted:#64748b;--pc-line:#f1f5f9;--pc-hover:#f8fafc;--pc-card:#fff;--pc-dest:rgba(204,159,45,.09)}
html[data-theme="dark"] .pg-painel{--text-muted:rgba(248,246,241,.58);--pc-line:rgba(248,246,241,.07);--pc-hover:#262F31;--pc-card:#1A2022;--pc-dest:rgba(204,159,45,.08)}
.pg-painel .ico{stroke-width:1.5}
.pg-painel h2{font-size:16px;font-weight:700;letter-spacing:-.02em}
.pg-painel .pc-top{margin-bottom:var(--s-6)}
.pg-painel .pc-top h1{font-weight:700;letter-spacing:-.03em}
.pg-painel .pc-meta{font-size:13.5px;font-weight:500}
.pg-painel .pc-meta b{font-weight:600}
.pg-painel .pc-card,.pg-painel .pc-kpi,.pg-painel .pc-mod{border-color:var(--pc-line);background:var(--pc-card)}

/* indicadores: rótulo, número forte, linha discreta; o primeiro ocupa duas colunas */
.pg-painel .pc-kpis{grid-template-columns:minmax(0,2fr) repeat(4,minmax(0,1fr));gap:var(--s-4);margin-bottom:var(--s-5)}
@media(max-width:1280px){.pg-painel .pc-kpis{grid-template-columns:repeat(4,minmax(0,1fr))}.pg-painel .pc-kpi-dest{grid-column:span 4}}
@media(max-width:640px){.pg-painel .pc-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.pg-painel .pc-kpi-dest{grid-column:span 2}}
.pg-painel .pc-kpi{gap:6px;padding:20px 22px;justify-content:flex-start}
.pg-painel .pc-kpi::before{display:none}
.pg-painel .pc-kpi:hover{border-color:var(--field-border-hover);box-shadow:none}
.pg-painel .pc-kpi.on{border-color:var(--gold);box-shadow:0 0 0 3px var(--field-ring)}
.pg-painel .pc-kpi-l{max-width:100%;font-size:13px;font-weight:600;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pg-painel .pc-kpi-v{font-size:30px;font-weight:750;letter-spacing:-.035em;line-height:1.05}
.pg-painel .pc-kpi-v small{font-size:14px}
.pg-painel .pc-kpi-s{font-size:12px;font-weight:500;color:var(--text-muted);line-height:1.4}
.pg-painel .pc-kpi.is-bad .pc-kpi-l::before,.pg-painel .pc-kpi.is-warn .pc-kpi-l::before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;margin:0 7px 1px 0;vertical-align:middle;background:var(--warn)}
.pg-painel .pc-kpi.is-bad .pc-kpi-l::before{background:var(--bad)}
.pg-painel .pc-kpi-dest{background:var(--pc-dest);border-color:rgba(204,159,45,.3)}
.pg-painel .pc-kpi-dest .pc-kpi-l{color:var(--info-fg)}
.pg-painel .pc-kpi-dest .pc-kpi-v{font-size:44px;color:var(--text)}

/* cartões com mais ar */
.pg-painel .pc-card{padding:24px 26px}
.pg-painel .pc-card-h{margin-bottom:var(--s-5)}
.pg-painel .pc-duo{gap:var(--s-5);margin-bottom:var(--s-6)}

/* situação da competência: barra única segmentada + legenda com contagem */
.pg-painel .pc-status{display:flex;flex-direction:column}
.pc-status-pct{font-size:13px;color:var(--text-muted);font-weight:500}
.pc-status-pct b{font-size:15px;font-weight:750;color:var(--text);letter-spacing:-.02em}
.pc-seg{display:flex;gap:3px;height:10px;border-radius:5px;overflow:hidden;background:var(--fill-2);margin:0 0 var(--s-4)}
.pc-seg i{display:block;height:100%;min-width:4px}
.pc-seg .ok{background:var(--ok)}.pc-seg .info{background:var(--gold)}.pc-seg .warn{background:var(--warn)}.pc-seg .none{background:#e2e8f0}
html[data-theme="dark"] .pc-seg .none{background:rgba(248,246,241,.16)}
.pc-leg{list-style:none;margin:0 0 var(--s-5);padding:0;display:grid}
.pc-leg button{
  display:grid;grid-template-columns:8px 1fr auto 44px;align-items:center;gap:12px;
  padding:11px 8px;margin:0 -8px;width:calc(100% + 16px);border:0;border-radius:var(--r-xs);
  background:transparent;color:var(--text);font:inherit;font-size:13.5px;text-align:left;cursor:pointer;
  transition:background 140ms var(--ease);
}
.pc-leg button:hover,.pc-leg button.on{background:var(--pc-hover)}
.pc-leg i{width:8px;height:8px;border-radius:50%;display:block}
.pc-leg .lg-ok{background:var(--ok)}.pc-leg .lg-info{background:var(--gold)}.pc-leg .lg-warn{background:var(--warn)}
.pc-leg .lg-none{background:#cbd5e1}.pc-leg .lg-bad{background:var(--bad)}
html[data-theme="dark"] .pc-leg .lg-none{background:rgba(248,246,241,.3)}
.pc-leg span{color:var(--text-muted);font-weight:500}
.pc-leg b{font-weight:700}
.pc-leg em{font-style:normal;text-align:right;color:var(--text-muted);font-size:12px}
.pc-leg .pc-leg-alerta{margin-top:6px;padding-top:6px;border-top:1px solid var(--pc-line)}
.pg-painel .pc-totais{margin-top:auto;padding-top:var(--s-5);border-top:1px solid var(--pc-line);gap:var(--s-4)}
.pg-painel .pc-totais span{font-size:12px;text-transform:none;letter-spacing:0;font-weight:500}
.pg-painel .pc-totais b{font-size:19px;letter-spacing:-.025em}
.pg-painel .pc-totais .pc-trend{font-size:11.5px;font-weight:500;color:var(--text-muted)}

/* atenção necessária */
.pg-painel .pc-att-list li + li{border-top-color:var(--pc-line)}
.pg-painel .pc-att-row{padding:12px 8px;gap:14px}
.pg-painel .pc-att-row:hover{background:var(--pc-hover)}
.pg-painel .pc-att-t{font-weight:500}
.pg-painel .pc-dot{width:6px;height:6px;box-shadow:none}
.pg-painel .pc-tag{padding:0;background:none;font-size:10.5px;font-weight:650;letter-spacing:.08em;color:var(--text-muted)}

/* saúde operacional: ícone fino sem moldura, números neutros e cor só na bolinha */
.pg-painel .pc-sec{margin-bottom:var(--s-6)}
.pg-painel .pc-sec-h{margin-bottom:var(--s-4)}
.pg-painel .pc-saude{gap:var(--s-4)}
.pg-painel .pc-mod{padding:20px 22px;gap:var(--s-4)}
.pg-painel .pc-mod:hover{box-shadow:none}
.pg-painel .pc-mod-ic{width:auto;height:auto;background:none;color:var(--text-muted)}
.pg-painel .pc-mod-ic .ico{width:18px;height:18px}
.pg-painel .pc-mod-n b{font-size:24px}
.pg-painel .pc-mod-n span,.pg-painel .pc-mod-cert span{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:500}
.pg-painel .pc-mod-n span::before,.pg-painel .pc-mod-cert span::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--text-muted);flex:0 0 auto}
.pg-painel .pc-mod-n .ok span::before,.pg-painel .pc-mod-cert.ok span::before{background:var(--ok)}
.pg-painel .pc-mod-n .warn span::before,.pg-painel .pc-mod-cert.warn span::before{background:var(--warn)}
.pg-painel .pc-mod-n .bad span::before,.pg-painel .pc-mod-cert.bad span::before{background:var(--bad)}
.pg-painel .pc-barrinha{height:4px;border-radius:2px}

/* tabela: só linhas horizontais suaves, hover quase imperceptível, status com bolinha */
.pg-painel .pc-tb th{border-bottom-color:var(--pc-line);background:var(--pc-card);padding-top:12px;padding-bottom:12px;font-weight:600}
.pg-painel .pc-tb td{border-bottom-color:var(--pc-line);padding-top:14px;padding-bottom:14px}
.pg-painel .pc-tb th,.pg-painel .pc-tb td{padding-right:14px}
.pg-painel .pc-tb tr:hover td{background:var(--pc-hover)}
.pg-painel .pc-tb .status{font-size:12.5px;font-weight:600;color:var(--text);gap:7px}
.pg-painel .pc-tb .status .dot{width:6px;height:6px}
.pg-painel .pc-tb .status.muted{color:var(--text-muted)}
.pg-painel .pc-emp-c b{font-weight:600}
.pg-painel .pc-cnpj{font-weight:500}
.pg-painel .pc-alertas{max-width:340px}
.pg-painel .pc-al{display:inline-flex;align-items:center;gap:6px;padding:2px 8px 2px 7px;background:var(--fill-1);color:var(--text-muted);font-weight:600}
.pg-painel .pc-al::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--warn);flex:0 0 auto}
.pg-painel .pc-al-auditoria::before,.pg-painel .pc-al-inconsistencias::before,.pg-painel .pc-al-pgdas::before{background:var(--bad)}
.pg-painel .pc-al-radar::before,.pg-painel .pc-al-rbt12::before{background:var(--gold)}
.pg-painel .pc-al-mais::before,.pg-painel .pc-al.leve::before{display:none}
/* ações: escondidas; aparecem sobre o fim da linha ao passar o mouse ou com foco do teclado */
.pg-painel .pc-tb td.acoes,.pg-painel .pc-tb th.pc-acts-h{position:relative;width:1px;padding:0}
.pc-acts{
  position:absolute;right:0;top:0;bottom:0;z-index:3;
  display:flex;align-items:center;gap:6px;padding:0 6px 0 48px;
  background:linear-gradient(to right, transparent, var(--pc-hover) 44px);
  opacity:0;visibility:hidden;transition:opacity 120ms var(--ease);
}
.pc-tb tr:hover .pc-acts,.pc-tb tr:focus-within .pc-acts,.pc-acts:has(details[open]){opacity:1;visibility:visible}
.pc-act{
  display:inline-flex;align-items:center;padding:6px 11px;border-radius:var(--r-pill);border:1px solid var(--pc-line);
  background:var(--pc-card);color:var(--text);font-size:12px;font-weight:600;line-height:1.2;white-space:nowrap;cursor:pointer;list-style:none;
}
.pc-act:hover{border-color:var(--field-border-hover);color:var(--text)}
.pc-act-mais{letter-spacing:.08em;padding:6px 10px}
.pc-act-mais::-webkit-details-marker{display:none}
@media(hover:none){
  .pg-painel .pc-tb td.acoes{width:auto;padding:0 0 0 8px}
  .pc-acts{position:static;transform:none;opacity:1;visibility:visible;background:none;padding:0}
}
/* tela:painel-contador fim */

/* tela:listas-fiscal inicio (PGDAS, Auditoria Fiscal, Central de Alertas, DeSTDA e Retroativa: mesmo desenho) */
.pg-flista{padding-top:22px}
.pg-flista .ph{align-items:center;margin:0 0 14px}
.pg-flista .ph h1{font-size:34px}
.pg-flista .ph .desc{margin:2px 0 0;font-size:13.5px}
.pg-flista .ph .btn{padding:9px 17px;font-size:13.5px}
/* abas e busca na mesma linha, com a mesma altura */
.pg-flista .fl-barra{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s-2) var(--s-3);margin:0 0 var(--s-3)}
.pg-flista .fl-barra .seg{margin:0;padding:3px}
.pg-flista .fl-barra .seg a{padding:8px 15px;font-size:13px;line-height:1.3}
.pg-flista .fl-barra input{width:220px;padding:9px 14px;font-size:13.5px;line-height:1.3;border-radius:var(--r-pill)}
/* filtro por etiqueta, ao lado da busca */
.pg-flista .fl-barra .etq-filtro summary{padding:9px 14px;font-size:13px}
.pg-flista .fl-barra .etq-filtro summary.on{background:var(--fill-gold);border-color:transparent}
.pg-flista .fl-barra .etq-filtro .menu-lista{left:0;right:auto;min-width:220px;max-height:60vh;overflow:auto}
.pg-flista .fl-barra .etq-filtro label{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:var(--r-xs);font-size:13.5px;font-weight:550;cursor:pointer}
.pg-flista .fl-barra .etq-filtro label:hover{background:var(--fill-2)}
.pg-flista .fl-barra .etq-filtro input{width:auto;padding:0}
.pg-flista .fl-barra .etq-filtro button{margin-top:4px;border-top:1px solid var(--line);border-radius:0;color:var(--text-muted)}
.pg-flista .fl-conta:empty{display:none}
.pg-flista .fl-ref{margin-left:auto}
/* indicadores no desenho dos cards do Início, deitados e ocupando a linha toda (aqui só informam, não filtram) */
.pg-flista .pc-kpis{grid-template-columns:repeat(4,minmax(0,1fr));margin:var(--s-4) 0 var(--s-5)}
.pg-flista .pc-kpis.c3{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:1100px){.pg-flista .pc-kpis,.pg-flista .pc-kpis.c3{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.pg-flista .pc-kpis,.pg-flista .pc-kpis.c3{grid-template-columns:1fr}}
.pg-flista .pc-kpi{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:12px;row-gap:1px;align-items:center;padding:11px 16px;cursor:default}
.pg-flista .pc-kpi:hover{border-color:var(--line);box-shadow:none}
.pg-flista .pc-kpi.is-ok{--ac:var(--ok)}
.pg-flista .pc-kpi.is-ok .pc-kpi-ic{color:var(--ok-fg)}
.pg-flista .pc-kpi-ic{grid-row:1 / span 2;width:32px;height:32px;margin:0}
.pg-flista .pc-kpi-v{grid-column:2;align-self:end;font-size:20px;white-space:nowrap}
.pg-flista .pc-kpi-l{grid-column:2;align-self:start;font-size:12px}
/* tabela: uma linha por empresa; o cabeçalho classifica (1º clique A a Z ou maior primeiro, 2º inverte) */
.pg-flista .fl-tb th{padding:10px 16px 10px 0;white-space:normal;vertical-align:bottom}
.pg-flista .fl-tb th:last-child{padding-right:0}
.pg-flista .fl-tb td{padding:var(--s-3) 16px var(--s-3) 0;vertical-align:baseline}
/* "Abrir" sempre à vista na direita, mesmo quando a tabela tem mais colunas do que cabem na tela */
.pg-flista .fl-tb th:last-child,.pg-flista .fl-tb td:last-child{position:sticky;right:0;background:var(--bg);padding-left:12px}
.pg-flista .fl-tb th:last-child{z-index:3}
.pg-flista .fl-tb tr:hover td:last-child{background:linear-gradient(var(--fill-1),var(--fill-1)),var(--bg)}
.pg-flista .fl-tb td:not(.fl-nome){width:1%;white-space:nowrap}
.pg-flista .fl-tb td:last-child{padding-right:0}
.pg-flista .fl-tb td.acoes{white-space:normal;min-width:84px}
.pg-flista .fl-tb td.acoes form{display:inline;margin:0}
.pg-flista .fl-tb .mini{padding:3px 12px}
.pg-flista .fl-tb td.fl-nome{min-width:200px}
.pg-flista .fl-tb td.fl-quebra{white-space:normal;min-width:150px;max-width:240px}
.pg-flista .fl-cnpj{font-size:12.5px;color:var(--text-muted)}
.pg-flista .fl-sub{display:block;font-size:12.5px;color:var(--text-muted);line-height:1.45;margin-top:2px;white-space:normal}
.pg-flista .fl-tb td:not(.fl-nome):not(.fl-quebra) .fl-sub{white-space:nowrap}
.pg-flista .fl-sort{display:inline-flex;align-items:center;gap:5px;padding:0;border:0;background:none;font:inherit;color:inherit;text-transform:inherit;letter-spacing:inherit;cursor:pointer;text-align:left}
.pg-flista .fl-sort:hover,.pg-flista th[aria-sort] .fl-sort{color:var(--text)}
.pg-flista th[aria-sort] .fl-sort::after{font-size:9px;color:var(--gold)}
.pg-flista th[aria-sort=ascending] .fl-sort::after{content:"▲"}
.pg-flista th[aria-sort=descending] .fl-sort::after{content:"▼"}
.pg-flista .fl-sec{margin:var(--s-6) 0 var(--s-2);font-size:15px;font-weight:700;letter-spacing:-.01em}
/* tela:produtos (Fiscal › Produtos: base de produtos por NCM, igual para todas as empresas) */
.pg-produtos .pr-filtros{display:flex;flex-wrap:wrap;gap:var(--s-2);align-items:center}
.pg-produtos .pr-filtros .cselect{width:auto;min-width:190px}
.pg-produtos .pr-filtros .cselect-trigger{padding:9px 14px;font-size:13.5px;border-radius:var(--r-pill)}
.pg-produtos .fl-tb .pr-oficial{max-width:240px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pg-produtos .fl-tb td.pr-baldes{min-width:150px;max-width:200px}
.pg-produtos .fl-tb td.pr-sit{min-width:130px;max-width:180px}
.pg-produtos .pill{margin:0 4px 3px 0}
.pg-produtos .pr-hist{margin-top:var(--s-6)}
.pg-produtos .pr-hist > summary{cursor:pointer;list-style:none}
.pg-produtos .pr-hist > summary::after{content:" ▸";color:var(--gold);font-size:11px}
.pg-produtos .pr-hist[open] > summary::after{content:" ▾"}
.pg-produto-ncm .pr-reapurar a{margin-left:4px}
.pg-produto-ncm .pr-ncm .pr-atual{margin:0 0 var(--s-3)}
.pg-produto-ncm .pr-form .fld{margin:0}
.pg-produto-ncm .pr-acoes{display:flex;flex-wrap:wrap;gap:var(--s-2);margin-top:var(--s-3)}
.pg-produto-ncm .pr-acoes .btn{padding:8px 16px;font-size:13px}
.pg-produto-ncm .pr-tb tr.pr-linha{cursor:pointer;scroll-margin-top:90px}
.pg-produto-ncm .pr-tb tr.pr-linha.aberta td,.pg-produto-ncm .pr-tb tr.pr-linha.aberta td:last-child{background:linear-gradient(var(--fill-1),var(--fill-1)),var(--bg);border-bottom-color:transparent}
.pg-produto-ncm .fl-tb tr.pr-edita > td,.pg-produto-ncm .fl-tb tr.pr-edita > td:last-child{width:auto;white-space:normal;position:static;padding:0 12px var(--s-4) 12px;background:var(--fill-1)}
.pg-produto-ncm .fl-tb tr.pr-edita p{margin:0 0 var(--s-3)}
.pg-produto-ncm .fl-tb td.pr-acoes-linha{white-space:nowrap;min-width:190px}
.pg-produto-ncm .fl-tb td.pr-lista{white-space:normal;min-width:72px;max-width:96px}
.pg-produto-ncm .fl-tb td.pr-acoes-linha form{margin-right:4px}
.pg-produto-ncm .pr-conf{font:inherit;font-size:12.5px;font-weight:600;padding:5px 12px;border-radius:var(--r-pill);border:1px solid var(--line);background:transparent;color:var(--text-muted);cursor:pointer;white-space:nowrap}
.pg-produto-ncm .pr-conf:hover{border-color:var(--gold);color:var(--text)}
.pg-produto-ncm .pr-conf.on{border-color:transparent;background:rgba(31,143,90,.14);color:var(--ok-fg)}
.pg-produto-ncm .pr-diverge{color:var(--warn);text-decoration:underline dotted}
/* tela:revisao-notas (PGDAS › Revisar notas) */
.pg-revisao .rv-filtros{display:flex;flex-wrap:wrap;gap:var(--s-2);align-items:center}
.pg-revisao .fl-barra .rv-filtros input{width:340px}
.pg-revisao .rv-filtros .cselect{width:auto;min-width:210px}
.pg-revisao .rv-filtros .cselect-trigger{padding:9px 14px;font-size:13.5px;border-radius:var(--r-pill)}
/* lista de notas: uma linha por nota, clicável */
.pg-revisao .rv-tb > tbody > tr.rv-nota > td{padding-top:9px;padding-bottom:9px;vertical-align:middle}
.pg-revisao .rv-tb tr.rv-nota{cursor:pointer}
.pg-revisao .rv-tb tr.rv-nota.aberta td,.pg-revisao .rv-tb tr.rv-nota.aberta td:last-child{background:linear-gradient(var(--fill-1),var(--fill-1)),var(--bg);border-bottom-color:transparent}
.pg-revisao .rv-tb td.rv-seta{width:1%;padding-right:6px}
.pg-revisao .rv-tb td.rv-num .muted-sm{margin-left:6px}
.pg-revisao .rv-abre{border:0;background:none;color:var(--text-muted);font-size:12px;padding:2px 4px;cursor:pointer}
.pg-revisao .fl-tb td.rv-outro{max-width:250px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:auto}
.pg-revisao .fl-tb td.acoes{white-space:nowrap}
.pg-revisao .mini.ghost{background:none;border-color:transparent;color:var(--text-muted)}
.pg-revisao .mini.ghost:hover{color:var(--text)}
/* itens da nota: tabela enxuta, uma linha por item */
.pg-revisao .fl-tb tr.rv-itens > td,.pg-revisao .fl-tb tr.rv-itens > td:last-child{width:auto;white-space:normal;position:static;padding:0 12px var(--s-3) 26px;background:var(--fill-1)}
.pg-revisao .rv-sub{width:100%;table-layout:fixed;font-size:12.5px}
.pg-revisao .rv-decidir{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;margin:12px 0 4px;max-width:820px}
.pg-revisao .rv-decidir label{display:inline-flex;align-items:center;gap:5px;font-size:13px}
.pg-revisao .rv-decidir input[name=fonte]{flex:1 1 260px;min-width:0}
.pg-revisao .fl-tb .rv-sub th,.pg-revisao .fl-tb .rv-sub td,.pg-revisao .fl-tb .rv-sub td:last-child,.pg-revisao .fl-tb .rv-sub th:last-child,.pg-revisao .fl-tb .rv-sub td:not(.fl-nome){position:static;padding:6px 12px 6px 0;background:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;vertical-align:middle;border-bottom:1px solid var(--line)}
.pg-revisao .fl-tb .rv-sub th{top:auto;font-size:10.5px;padding-top:8px}
.pg-revisao .rv-sub th:nth-child(1){width:30px}
.pg-revisao .rv-sub th:nth-child(3){width:82px}
.pg-revisao .rv-sub th:nth-child(4){width:76px}
.pg-revisao .rv-sub th:nth-child(5){width:56px}
.pg-revisao .rv-sub th:nth-child(6){width:80px}
.pg-revisao .rv-sub th:nth-child(7){width:64px}
.pg-revisao .rv-sub th:nth-child(8){width:88px}
.pg-revisao .rv-sub th:nth-child(9){width:32%}
.pg-revisao .rv-sub-ent th:nth-child(9),.pg-revisao .rv-sub-ent th:nth-child(10){width:88px}
.pg-revisao .fl-tb .rv-sub tr.rv-alerta td:first-child{box-shadow:inset 2px 0 var(--warn-fg);padding-left:8px}
.pg-revisao .fl-tb .rv-sub td:first-child,.pg-revisao .fl-tb .rv-sub th:first-child{padding-left:8px}
.pg-revisao .fl-tb .rv-sub tr:hover td:not(.fl-nome),.pg-revisao .fl-tb .rv-sub tr:hover td:last-child{background:var(--fill-2)}
.pg-revisao .rv-apont{font-size:12px;color:var(--warn-fg)}
.pg-revisao .rv-tb > tbody > tr.rv-nota > td.rv-trat{max-width:250px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pg-revisao .seg .rv-cont{display:inline-block;min-width:18px;margin-left:4px;padding:0 6px;border-radius:var(--r-pill);background:var(--fill-gold);color:var(--warn-fg);font-size:11px;line-height:18px;text-align:center}
.pg-revisao .rv-mais{margin-left:2px;font-size:11px;color:var(--warn-fg);cursor:help}
.pg-revisao .rv-dif{color:var(--warn-fg)}
.pg-revisao .rv-chip{display:inline-block;max-width:260px;padding:8px 14px;border-radius:var(--r-pill);background:var(--fill-2);color:var(--text);font-size:13px;text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pg-revisao .rv-chip:hover{color:var(--warn-fg)}
.pg-revisao .rv-cab{padding:8px 0 0 8px}
.pg-revisao .rv-div{display:flex;gap:8px;align-items:baseline;padding:8px 0 0 8px;font-size:12.5px}
.pg-revisao .rv-bloco{margin-top:var(--s-4)}
.pg-revisao .rv-sub-comb th:nth-child(1){width:92px}
.pg-revisao .rv-sub-comb th:nth-child(2){width:80px}
.pg-revisao .rv-sub-comb th:nth-child(3){width:60px}
.pg-revisao .rv-sub-comb th:nth-child(4){width:92px}
.pg-revisao .rv-sub-comb th:nth-child(5),.pg-revisao .rv-sub-comb th:nth-child(6){width:64px}
.pg-revisao .rv-sub-comb th:nth-child(7){width:112px}
.pg-revisao .rv-sub-comb th:nth-child(8){width:110px}
.pg-revisao .rv-sub-comb th:nth-child(9){width:auto}
.pg-revisao .rv-sub-es th:nth-child(1){width:74px}
.pg-revisao .rv-sub-es th:nth-child(3){width:90px}
.pg-revisao .rv-sub-es th:nth-child(4){width:60px}
.pg-revisao .rv-sub-es th:nth-child(5){width:96px}
.pg-revisao .rv-sub-es th:nth-child(6){width:74px}
.pg-revisao .rv-sub-es th:nth-child(7){width:130px}
.pg-revisao .rv-sub-es th:nth-child(8){width:28%}
.pg-revisao .fl-tb > thead th{white-space:nowrap}
.pg-revisao .fl-tb td.rv-outro.rv-compra,.pg-revisao .fl-tb td.rv-outro.rv-vendido{max-width:210px}
.pg-revisao .rv-confirma{display:flex;align-items:center;gap:8px;padding:10px 0 0 8px;font-size:12.5px}
.pg-revisao .rv-via{display:inline-block;margin-right:4px;padding:0 7px;border-radius:var(--r-pill);background:var(--fill-2);color:var(--text-muted);font-size:11px;line-height:18px}
.pg-revisao .rv-via.ok{background:var(--fill-gold);color:var(--text)}
.pg-revisao .fl-tb td.acoes .mini + .mini{margin-left:2px}
.pg-revisao .rv-pag{display:flex;align-items:center;justify-content:center;gap:var(--s-3);margin:var(--s-4) 0}
.pg-revisao td.fl-quebra .fl-sub{white-space:nowrap}
/* tela:listas-fiscal fim */

/* tela:pgdas-sem-movimento inicio */
.pg-sem-mov .sm-confirma{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:12px 20px;margin:var(--s-5) 0 0}
.pg-sem-mov .sm-chk{display:flex;align-items:center;gap:10px;font-size:14px;cursor:pointer}
/* tela:pgdas-sem-movimento fim */

/* tela:apuracao inicio */
.pg-apuracao .fl-barra #apurPeriodo,.pg-flista .fl-barra .fl-comp input{width:108px;text-align:center}
.pg-apuracao .apur-dado b{display:inline-block;min-width:34px;font-weight:600}
.pg-apuracao .apur-dado b.apur-das{min-width:100px}
.pg-apuracao .apur-status{min-width:92px}
/* etiquetas das empresas, entre o nome e o CNPJ */
:is(.pg-apuracao,.pg-dctfweb) .fl-tb td.apur-etq{text-align:right}
:is(.pg-apuracao,.pg-dctfweb) .apur-etq .pill{margin-left:4px}
:is(.pg-apuracao,.pg-dctfweb) .etq-mais{width:22px;height:22px;margin-left:6px;padding:0;border:1px solid var(--line);border-radius:50%;background:transparent;color:var(--text-muted);font:inherit;font-size:14px;line-height:1;cursor:pointer;vertical-align:middle}
:is(.pg-apuracao,.pg-dctfweb) .etq-mais:hover{color:var(--text);border-color:var(--text-muted)}
:is(.pg-apuracao,.pg-dctfweb) .etq-menu{position:fixed;right:auto;min-width:230px;max-height:60vh;overflow:auto}
:is(.pg-apuracao,.pg-dctfweb) .etq-menu label{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:var(--r-xs);font-size:13.5px;font-weight:550;cursor:pointer}
:is(.pg-apuracao,.pg-dctfweb) .etq-menu label:hover{background:var(--fill-2)}
:is(.pg-apuracao,.pg-dctfweb) .etq-menu .etq-x{display:inline;width:auto;padding:0 6px;font-size:16px;line-height:1;color:var(--text-muted)}
:is(.pg-apuracao,.pg-dctfweb) .etq-menu .etq-x:hover{background:none;color:var(--bad)}
:is(.pg-apuracao,.pg-dctfweb) .etq-menu form{margin-top:4px;padding:6px 4px 2px;border-top:1px solid var(--line)}
:is(.pg-apuracao,.pg-dctfweb) .etq-menu form input[type=text]{width:100%;padding:8px 12px;font-size:13.5px}
/* cor da etiqueta: chave gravada em etiquetas.cor (ETIQUETA_CORES em modules/fiscal/apuracao.py) */
:is(.pg-apuracao,.pg-dctfweb) .pill[class*="etq-"]{background:color-mix(in srgb,var(--etq) 18%,transparent);color:color-mix(in srgb,var(--etq) 62%,var(--text))}
:is(.pg-apuracao,.pg-dctfweb) .etq-azul{--etq:#2f6fdb}:is(.pg-apuracao,.pg-dctfweb) .etq-verde{--etq:#1f8f5a}:is(.pg-apuracao,.pg-dctfweb) .etq-amarelo{--etq:#c9a100}:is(.pg-apuracao,.pg-dctfweb) .etq-laranja{--etq:#d9731a}
:is(.pg-apuracao,.pg-dctfweb) .etq-vermelho{--etq:#c44747}:is(.pg-apuracao,.pg-dctfweb) .etq-roxo{--etq:#7a52c7}:is(.pg-apuracao,.pg-dctfweb) .etq-rosa{--etq:#d14d8b}:is(.pg-apuracao,.pg-dctfweb) .etq-cinza{--etq:#7b8494}
/* editar a etiqueta (nome, cor e prioridade), dentro do mesmo menu */
:is(.pg-apuracao,.pg-dctfweb) .etq-menu .etq-ed{display:inline;width:auto;margin-left:auto;padding:0 6px;font-size:12px;color:var(--text-muted)}
:is(.pg-apuracao,.pg-dctfweb) .etq-menu .etq-ed:hover{background:none;color:var(--text)}
:is(.pg-apuracao,.pg-dctfweb) .etq-menu #etqEditar:not([hidden]){display:grid;gap:10px;min-width:250px;margin:0;padding:4px;border-top:0}
:is(.pg-apuracao,.pg-dctfweb) .etq-menu .etq-cores{display:flex;flex-wrap:wrap;gap:6px}
:is(.pg-apuracao,.pg-dctfweb) .etq-menu .etq-cores label{padding:0;gap:0;border-radius:var(--r-pill)}
:is(.pg-apuracao,.pg-dctfweb) .etq-menu .etq-cores input{position:absolute;opacity:0;pointer-events:none}
:is(.pg-apuracao,.pg-dctfweb) .etq-menu .etq-cores input:checked + .pill{outline:2px solid var(--gold);outline-offset:1px}
:is(.pg-apuracao,.pg-dctfweb) .etq-menu .etq-cores input:focus-visible + .pill{outline:2px solid var(--text);outline-offset:1px}
:is(.pg-apuracao,.pg-dctfweb) .etq-menu select{width:100%;padding:8px 12px;font-size:13.5px}
:is(.pg-apuracao,.pg-dctfweb) .etq-menu .etq-erro{color:var(--bad-fg)}
:is(.pg-apuracao,.pg-dctfweb) .etq-menu .etq-acoes{display:flex;justify-content:flex-end;gap:8px}
:is(.pg-apuracao,.pg-dctfweb) .etq-menu .etq-acoes button{display:inline-block;width:auto;padding:7px 14px;border:1px solid var(--line);border-radius:var(--r-pill);font-size:13px}
:is(.pg-apuracao,.pg-dctfweb) .etq-menu .etq-acoes button.on{background:var(--fill-gold);border-color:transparent}
.pg-apuracao .menu-lista label.rel-arquivo{display:block;position:relative;overflow:hidden;padding:10px 12px;border-radius:var(--r-xs);font-size:13.5px;font-weight:550;line-height:1.35;cursor:pointer}
.pg-apuracao .menu-lista label.rel-arquivo small{display:block;font-size:12px;font-weight:450;color:var(--text-muted)}
.pg-apuracao .menu-lista label.rel-arquivo:hover{background:var(--fill-2)}
.pg-apuracao .menu-lista label.rel-arquivo input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}
/* tela:apuracao fim */

/* tela:apuracao-empresa inicio */
.pg-apuracao-empresa .apur-toolbar{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end;margin:0 0 22px;padding-bottom:18px;border-bottom:1px solid var(--line)}
.pg-apuracao-empresa .apur-toolbar .fld{margin:0}
.pg-apuracao-empresa .ap-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;margin-top:6px}
@media(max-width:980px){.pg-apuracao-empresa .ap-grid{grid-template-columns:1fr}}
.pg-apuracao-empresa .ap-card{border:1px solid var(--line);border-radius:var(--r-md);padding:22px 24px;background:var(--surface-solid);min-width:0}
html[data-theme="dark"] .pg-apuracao-empresa .ap-card{background:rgba(248,246,241,.025)}
.pg-apuracao-empresa .ap-full{grid-column:1/-1}
.pg-apuracao-empresa .ap-card-h{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:6px}
.pg-apuracao-empresa .ap-card-h h3{margin:0;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted)}
.pg-apuracao-empresa .ap-card h4{margin:22px 0 10px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted)}
.pg-apuracao-empresa .ap-hero{font-size:34px;font-weight:750;letter-spacing:-.03em;line-height:1.15;margin:4px 0 16px}
.pg-apuracao-empresa .ap-pares{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:14px}
.pg-apuracao-empresa .ap-pares div{padding:12px 0;display:flex;flex-direction:column;gap:2px}
.pg-apuracao-empresa .ap-pares div + div{border-left:1px solid var(--line);padding-left:18px}
.pg-apuracao-empresa .ap-pares span{font-size:12px;color:var(--text-muted)}
.pg-apuracao-empresa .ap-pares b{font-size:17px;font-weight:700}
.pg-apuracao-empresa .ap-pares .gold b{color:var(--gold)}
.pg-apuracao-empresa .ap-tb{width:100%;border-collapse:collapse;font-size:14px}
.pg-apuracao-empresa .ap-tb th{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);font-weight:600;text-align:left;padding:8px 0;border-bottom:1px solid var(--line)}
.pg-apuracao-empresa .ap-tb td{padding:9px 0;border-bottom:1px solid var(--line)}
.pg-apuracao-empresa .ap-tb tr:last-child td{border-bottom:0}
.pg-apuracao-empresa .ap-tb .r{text-align:right}
.pg-apuracao-empresa .ap-kv{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid var(--line);font-size:14px}
.pg-apuracao-empresa .ap-kv span{color:var(--text-muted)}
.pg-apuracao-empresa .ap-kv b{font-weight:650}
/* janela Dados para o e-CAC (fiscal/pgdas_roteiro.html): uma aba por tela do PGDAS-D; clicar no valor copia */
.pg-apuracao-empresa .dlg-ecac{width:min(760px,calc(100vw - 32px))}
.dlg-ecac .ecac-h{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:var(--s-4)}
.dlg-ecac .ecac-h h2{margin:0 0 2px}
.dlg-ecac .aviso{margin-bottom:var(--s-2)}
.dlg-ecac .ecac-avisos{margin-bottom:var(--s-3);font-size:13.5px}
.dlg-ecac .ecac-avisos summary{cursor:pointer;color:var(--warn-fg);font-weight:650}
.dlg-ecac .ecac-avisos ul{margin:8px 0 0;padding-left:18px;color:var(--text-muted)}
.dlg-ecac .ecac-avisos li{margin-bottom:6px}
.dlg-ecac .ecac-abas{margin:var(--s-3) 0 var(--s-4)}
.dlg-ecac h3{margin:var(--s-4) 0 var(--s-1);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted)}
.dlg-ecac .ecac-painel > h3:first-child,.dlg-ecac .ecac-ativ > h3:first-child{margin-top:0}
.dlg-ecac .ap-kv{align-items:center}
.dlg-ecac .ap-kv.tot span{color:var(--text);font-weight:650}
.dlg-ecac .ecac-copia{padding:4px 10px;border:1px solid var(--line);border-radius:var(--r-xs);background:transparent;color:var(--text);font:inherit;font-weight:650;cursor:copy}
.dlg-ecac .ecac-copia:hover{border-color:var(--gold)}
.dlg-ecac .ecac-copia.ok{background:var(--fill-gold);border-color:transparent}
.dlg-ecac .ecac-copia.ok::after{content:" · copiado";font-weight:500;color:var(--text-muted)}
.dlg-ecac .ecac-marcar{list-style:none;margin:0;padding:0}
.dlg-ecac .ecac-marcar li{position:relative;padding:10px 0 10px 26px;border-bottom:1px solid var(--line);font-size:14px}
.dlg-ecac .ecac-marcar li::before{content:"";position:absolute;left:2px;top:13px;width:13px;height:13px;border:1.5px solid var(--gold);border-radius:3px;background:var(--fill-gold)}
.dlg-ecac .ecac-marcar li span{display:block;margin-top:2px;font-size:13px;color:var(--text-muted)}
.dlg-ecac .ecac-estab{display:flex;align-items:center;gap:8px;margin:var(--s-4) 0 var(--s-1);font-size:14px}
.dlg-ecac .ecac-estab b{margin-left:auto}
.dlg-ecac .ecac-ativ{margin-bottom:var(--s-5)}
.dlg-ecac .ecac-ativ .ap-tb{margin:2px 0 var(--s-3);font-size:13.5px}
.dlg-ecac .ap-tb tr.tot td{border-bottom:0;font-weight:650}
.dlg-ecac .ecac-nota{margin-top:var(--s-3)}
.dlg-ecac .disc{margin-top:var(--s-4)}
.pg-apuracao-empresa .ap-link{font-size:12px;margin-left:6px}
.pg-apuracao-empresa .ap-bar{margin:0 0 12px}
.pg-apuracao-empresa .ap-bar-t{display:flex;justify-content:space-between;gap:10px;font-size:13.5px;margin-bottom:6px}
.pg-apuracao-empresa .ap-bar-t small{color:var(--text-muted);font-size:12px;margin-left:4px}
.pg-apuracao-empresa .ap-bar-t b{font-weight:650;white-space:nowrap}
.pg-apuracao-empresa .ap-bar-f{height:6px;border-radius:999px;background:var(--fill-2);overflow:hidden}
.pg-apuracao-empresa .ap-bar-f i{display:block;height:100%;border-radius:999px;background:var(--gold)}
.pg-apuracao-empresa .ap-notas{margin-top:16px;padding-top:12px;border-top:1px solid var(--line)}
.pg-apuracao-empresa .ap-checks{list-style:none;margin:8px 0 0;padding:0}
.pg-apuracao-empresa .ap-checks > li{border-bottom:1px solid var(--line)}
.pg-apuracao-empresa .ap-checks > li:last-child{border-bottom:0}
.pg-apuracao-empresa .ap-row,.pg-apuracao-empresa .ap-checks summary{display:grid;grid-template-columns:18px 220px minmax(0,1fr);gap:12px;align-items:baseline;padding:12px 0;font-size:14px}
@media(max-width:720px){.pg-apuracao-empresa .ap-row,.pg-apuracao-empresa .ap-checks summary{grid-template-columns:18px 1fr}.pg-apuracao-empresa .ap-checks .muted-sm{grid-column:2}}
.pg-apuracao-empresa .ap-checks summary{cursor:pointer;list-style:none}
.pg-apuracao-empresa .ap-checks summary::-webkit-details-marker{display:none}
.pg-apuracao-empresa .ap-checks summary .muted-sm:after{content:"  ver itens ▾";color:var(--link);font-weight:600}
.pg-apuracao-empresa .ap-checks details[open] summary .muted-sm:after{content:"  ocultar ▴"}
.pg-apuracao-empresa .ap-ico{width:10px;height:10px;border-radius:50%;background:var(--text-muted);align-self:center}
.pg-apuracao-empresa .ap-checks .ok .ap-ico{background:var(--ok-fg)}
.pg-apuracao-empresa .ap-checks .warn .ap-ico{background:var(--warn-fg)}
.pg-apuracao-empresa .ap-checks .bad .ap-ico{background:var(--bad-fg)}
.pg-apuracao-empresa .ap-checks .gold .ap-ico{background:var(--gold)}
.pg-apuracao-empresa .ap-det{padding:0 0 14px 30px}
.pg-apuracao-empresa .ap-det ul{margin:8px 0 0;padding-left:18px;font-size:13px;max-height:260px;overflow:auto}
.pg-apuracao-empresa .ap-det li{padding:2px 0}
.pg-apuracao-empresa .ap-vazio{border:1px dashed var(--line);border-radius:var(--r-md);padding:32px;margin-top:6px}
.pg-apuracao-empresa .ap-vazio h2{font-size:20px;margin:0 0 6px;letter-spacing:-.02em}
.pg-apuracao-empresa tr.on td{background:var(--fill-1)}
.pg-apuracao-empresa .x1{max-width:560px!important}
/* filial: estabelecimentos somados na apuração */
.pg-apuracao-empresa .ap-selo{display:inline-block;margin-left:8px;padding:2px 9px;border-radius:var(--r-pill);background:var(--gold);color:#20282A;font-size:11px;letter-spacing:.04em;text-transform:none;vertical-align:1px}
.pg-apuracao-empresa .ap-inclui{display:block;margin:-8px 0 12px;padding:8px 12px;border-left:3px solid var(--gold);background:var(--fill-gold);color:var(--text);font-size:13.5px;text-decoration:none;border-radius:0 var(--r-sm) var(--r-sm) 0}
.pg-apuracao-empresa .ap-inclui b{color:var(--text)}
.pg-apuracao-empresa .ap-estab{border-color:var(--gold);box-shadow:inset 3px 0 0 var(--gold)}
.pg-apuracao-empresa .ap-estab td .ap-bar-f{margin-top:6px;max-width:320px;height:4px}
.pg-apuracao-empresa .ap-estab tr.filial td{background:var(--fill-gold)}
.pg-apuracao-empresa .ap-estab tr.filial td:first-child{padding-left:8px}
.pg-apuracao-empresa .ap-estab tr.tot td{font-weight:650;border-top:1px solid var(--line)}
.pg-apuracao-empresa .ap-aviso-filial{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:0 0 18px;padding:12px 16px;border:1px solid var(--gold);border-radius:var(--r-md);background:var(--fill-gold);font-size:14px}
.pg-apuracao-empresa .ap-aviso-filial.warn{border-color:var(--warn-fg);background:rgba(196,125,24,.08)}
.pg-apuracao-empresa #filiais .inline-form{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end}
.pg-pgdas .pgd-estab tr.filial td{background:var(--fill-gold)}
.pg-apuracao-empresa .ap-importou{margin:0 0 18px;padding:12px 16px;border-left:3px solid var(--ok-fg);border-radius:0 var(--r-sm) var(--r-sm) 0;background:var(--fill-1);font-size:14px;line-height:1.55}
.pg-apuracao-empresa .ap-importou.bad{border-left-color:var(--bad-fg)}
.pg-apuracao-empresa .x2{margin:8px 0!important;padding:8px 0!important}
.pg-apuracao-empresa .x3{max-width:540px!important}
.pg-apuracao-empresa .pgd-rfb{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;margin:0 0 var(--s-5);padding:12px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:13px}
.pg-apuracao-empresa .pgd-rfb-t{font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}
.pg-apuracao-empresa .pgd-rfb .fl-sub{margin-left:6px;color:var(--text-muted)}
.pg-apuracao-empresa .pgd-rfb-acoes{display:flex;flex-wrap:wrap;gap:8px;margin-left:auto}
.pg-pgdas .pgd-confirma{display:block;margin:0 0 12px;font-size:14px}
/* tela:apuracao-empresa fim */

/* tela:apuracao-catalogo inicio */
.pg-apuracao-catalogo .notas-bar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:0 0 14px;padding-bottom:14px;border-bottom:1px solid var(--line)}
.pg-apuracao-catalogo .notas-bar .spacer{flex:1}
.pg-apuracao-catalogo .notas-papel{display:flex;flex-wrap:wrap;gap:4px;padding:4px;background:var(--fill-1);border-radius:var(--r-pill);margin:0 0 18px;width:fit-content;max-width:100%}
.pg-apuracao-catalogo .notas-papel a{padding:9px 16px;border-radius:var(--r-pill);font-size:13px;font-weight:500;color:var(--text-muted)}
.pg-apuracao-catalogo .notas-papel a.on{background:var(--surface-solid);color:var(--text);font-weight:650;box-shadow:var(--float-shadow)}
.pg-apuracao-catalogo .notas-papel a .n{font-variant-numeric:tabular-nums;opacity:.75;margin-left:4px}
.pg-apuracao-catalogo .tag-dec{font-size:11px;font-weight:600;color:var(--text-muted)}
.pg-apuracao-catalogo .cls-form{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:0}
.pg-apuracao-catalogo .cls-form label{font-size:11.5px;display:inline-flex;gap:4px;align-items:center;cursor:pointer}
.pg-apuracao-catalogo .cls-form input[type=checkbox]{width:auto;margin:0}
.pg-apuracao-catalogo .cls-form input[type=text]{width:110px;padding:4px 6px;font-size:11px}
.pg-apuracao-catalogo .x1{padding:8px 16px!important}
.pg-apuracao-catalogo .x2{margin:0 0 12px!important}
/* tela:apuracao-catalogo fim */

/* tela:apuracao-regras inicio */
.pg-apuracao-regras .x1{padding:8px!important}
.pg-apuracao-regras .x2{max-width:280px!important}
/* tela:apuracao-regras fim */

/* tela:auditoria inicio */
.pg-auditoria .up{border:1px dashed var(--line);border-radius:var(--r-md);padding:18px;display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end}
.pg-auditoria .up .fld{margin:0;min-width:220px}
.pg-auditoria .up input[type=file]{padding:10px}
.pg-auditoria .x1{min-width:auto!important}
/* tela:auditoria fim */

/* tela:auditoria-empresa inicio */
.pg-auditoria-empresa .ax-drop{display:flex;gap:14px;align-items:stretch;margin:6px 0 20px}
.pg-auditoria-empresa .ax-drop-area{flex:1;display:flex;align-items:center;gap:14px;padding:14px 18px;border:1.5px dashed var(--field-border-hover);border-radius:var(--r-md);cursor:pointer;transition:border-color .15s,background .15s;position:relative;min-width:0}
.pg-auditoria-empresa .ax-drop-area:hover,.pg-auditoria-empresa .ax-drop.over .ax-drop-area{border-color:var(--gold);background:var(--fill-gold)}
.pg-auditoria-empresa .ax-drop.has .ax-drop-area{border-style:solid;border-color:var(--gold)}
.pg-auditoria-empresa .ax-drop-area input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%}
.pg-auditoria-empresa .ax-drop-area svg{flex:0 0 38px;width:38px;height:38px;padding:9px;border-radius:50%;background:var(--fill-2);fill:none;stroke:var(--text);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.pg-auditoria-empresa .ax-drop-txt{display:flex;flex-direction:column;min-width:0}
.pg-auditoria-empresa .ax-drop-txt b{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pg-auditoria-empresa .ax-drop-txt small{font-size:12.5px;color:var(--text-muted)}
.pg-auditoria-empresa .ax-drop .btn{align-self:center;white-space:nowrap}
.pg-auditoria-empresa .ax-drop .btn:disabled{opacity:.45;cursor:not-allowed}
@media(max-width:640px){.pg-auditoria-empresa .ax-drop{flex-direction:column}}
.pg-auditoria-empresa .ax-card{border:1px solid var(--line);border-radius:var(--r-md);padding:22px 24px;background:var(--surface-solid);margin-bottom:20px}
html[data-theme="dark"] .pg-auditoria-empresa .ax-card{background:rgba(248,246,241,.025)}
.pg-auditoria-empresa .ax-card-h{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:6px}
.pg-auditoria-empresa .ax-card-h h3{margin:0;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted)}
.pg-auditoria-empresa .ax-ico{width:10px;height:10px;border-radius:50%;background:var(--text-muted);flex:0 0 10px}
.pg-auditoria-empresa .grave .ax-ico,.pg-auditoria-empresa .ax-veredito.grave .ax-ico{background:var(--bad-fg)}
.pg-auditoria-empresa .medio .ax-ico,.pg-auditoria-empresa .ax-veredito.medio .ax-ico{background:var(--warn-fg)}
.pg-auditoria-empresa .leve .ax-ico{background:var(--gold)}
.pg-auditoria-empresa .ok .ax-ico,.pg-auditoria-empresa .ax-veredito.ok .ax-ico{background:var(--ok-fg)}
.pg-auditoria-empresa .ax-veredito{display:flex;gap:14px;align-items:baseline}
.pg-auditoria-empresa .ax-veredito b{font-size:18px;letter-spacing:-.02em}
.pg-auditoria-empresa .ax-veredito .muted-sm{max-width:820px;margin-top:4px}
.pg-auditoria-empresa .ax-nums{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));margin-top:18px;border-top:1px solid var(--line)}
.pg-auditoria-empresa .ax-nums div{padding:14px 0 0;display:flex;flex-direction:column}
.pg-auditoria-empresa .ax-nums div + div{border-left:1px solid var(--line);padding-left:18px}
.pg-auditoria-empresa .ax-nums b{font-size:26px;font-weight:750;letter-spacing:-.02em;line-height:1.15}
.pg-auditoria-empresa .ax-nums span{font-size:12px;color:var(--text-muted)}
.pg-auditoria-empresa .ax-nums .ok b{color:var(--ok-fg)}.pg-auditoria-empresa .ax-nums .bad b{color:var(--bad-fg)}
.pg-auditoria-empresa .ax-nums .warn b{color:var(--warn-fg)}.pg-auditoria-empresa .ax-nums .gold b{color:var(--gold);font-size:22px}
.pg-auditoria-empresa .ax-canc{margin-top:12px}
.pg-auditoria-empresa .ax-seg{display:inline-flex;gap:2px;padding:3px;border-radius:999px;background:var(--fill-1)}
.pg-auditoria-empresa .ax-seg a{padding:6px 14px;border-radius:999px;font-size:13px;font-weight:600;color:var(--text-muted)}
.pg-auditoria-empresa .ax-seg a.on{background:var(--surface-solid);color:var(--text);box-shadow:var(--float-shadow)}
.pg-auditoria-empresa .ax-seg i{font-style:normal;font-size:11.5px;margin-left:4px;opacity:.7}
.pg-auditoria-empresa .ax-checks{list-style:none;margin:6px 0 0;padding:0}
.pg-auditoria-empresa .ax-checks > li{border-bottom:1px solid var(--line)}
.pg-auditoria-empresa .ax-checks > li:last-child{border-bottom:0}
.pg-auditoria-empresa .ax-checks summary{display:flex;align-items:center;gap:14px;padding:14px 0;cursor:pointer;list-style:none}
.pg-auditoria-empresa .ax-checks summary::-webkit-details-marker{display:none}
.pg-auditoria-empresa .ax-checks summary:hover .ax-tit b{color:var(--link)}
.pg-auditoria-empresa .ax-tit{flex:1;min-width:0;display:flex;flex-direction:column}
.pg-auditoria-empresa .ax-tit b{font-size:15px}
.pg-auditoria-empresa .ax-tit small{font-size:13px;color:var(--text-muted);line-height:1.45;margin-top:2px}
.pg-auditoria-empresa .ax-tag{display:inline-block;width:auto;color:var(--text);font-style:normal;font-size:11px;font-weight:600;padding:1px 8px;border-radius:999px;background:var(--fill-gold);margin-left:8px;vertical-align:2px}
.pg-auditoria-empresa .ax-meta{display:flex;flex-direction:column;align-items:flex-end;gap:4px;font-size:13px;white-space:nowrap}
.pg-auditoria-empresa .ax-pill{font-size:12px;font-weight:600;padding:3px 10px;border-radius:999px;background:var(--fill-2)}
.pg-auditoria-empresa .ax-chev{width:8px;height:8px;border-right:1.6px solid var(--text-muted);border-bottom:1.6px solid var(--text-muted);transform:rotate(45deg);margin:0 4px 4px 2px;transition:transform .15s}
.pg-auditoria-empresa details[open] > summary .ax-chev{transform:rotate(-135deg);margin-bottom:-2px}
.pg-auditoria-empresa .ax-det{padding:0 0 18px 24px}
.pg-auditoria-empresa .ax-det p{margin:0 0 10px;max-width:860px}
.pg-auditoria-empresa .ax-fazer{font-size:14px;padding:10px 14px;border-radius:var(--r-sm);background:var(--fill-gold);margin-bottom:12px;max-width:860px}
.pg-auditoria-empresa .ax-tb{width:100%;border-collapse:collapse;font-size:13px}
.pg-auditoria-empresa .ax-tb th{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);font-weight:600;text-align:left;padding:8px 10px 8px 0;border-bottom:1px solid var(--line);white-space:nowrap}
.pg-auditoria-empresa .ax-tb td{padding:8px 10px 8px 0;border-bottom:1px solid var(--line);vertical-align:top}
.pg-auditoria-empresa .ax-tb .r{text-align:right}
.pg-auditoria-empresa .ax-ev{display:inline-block;margin:0 10px 2px 0;color:var(--text-muted)}
.pg-auditoria-empresa .ax-ev b{color:var(--text);font-weight:650}
.pg-auditoria-empresa .ax-ev em{font-style:normal;font-size:11.5px;margin-left:5px;padding:0 6px;border-radius:999px;background:var(--fill-2)}
.pg-auditoria-empresa .ax-lista{margin:8px 0 0;padding-left:18px;font-size:13.5px}
.pg-auditoria-empresa .ax-lista li{padding:4px 0}
.pg-auditoria-empresa .ax-tec{margin-top:12px;font-size:11.5px}
.pg-auditoria-empresa .ax-vazio{border:1px dashed var(--line);border-radius:var(--r-md);padding:28px}
.pg-auditoria-empresa .ax-vazio h2{font-size:19px;margin:0 0 6px}
.pg-auditoria-empresa .ax-vazio-row{display:flex;gap:12px;align-items:center;padding:14px 0}
.pg-auditoria-empresa .x1{padding:8px 12px!important}
.pg-auditoria-empresa .x2{margin:12px 0 0!important;padding-left:24px!important}
.pg-auditoria-empresa .x3{padding:4px 0!important}
.pg-auditoria-empresa .x4{margin:8px 0 0!important}
.pg-auditoria-empresa .x5{width:220px!important}
.pg-auditoria-empresa .x6{min-width:320px!important}
.pg-auditoria-empresa .x7{padding:12px 16px!important}
/* tela:auditoria-empresa fim */

/* tela:auditoria-documento inicio */
.pg-auditoria-documento .ev{font-size:12px;color:var(--text-muted)}
.pg-auditoria-documento .ev b{color:var(--text)}
.pg-auditoria-documento .item{border-top:1px solid var(--line);padding:14px 0}
.pg-auditoria-documento .item h3{margin:0 0 6px;font-size:15px;font-weight:700}
.pg-auditoria-documento .chk{display:inline-block;font-size:11px;padding:2px 8px;border-radius:999px;margin:2px 4px 2px 0;background:var(--fill-2)}
.pg-auditoria-documento .chk.ok{background:rgba(31,143,90,.14)}
.pg-auditoria-documento .chk.bad{background:rgba(196,71,71,.16)}
.pg-auditoria-documento .chk.warn{background:rgba(196,125,24,.16)}
.pg-auditoria-documento .chk.info{background:var(--fill-gold)}
.pg-auditoria-documento .x1{padding:8px 0!important}
.pg-auditoria-documento .x2{min-width:300px!important}
.pg-auditoria-documento .x3{padding:12px 16px!important}
/* tela:auditoria-documento fim */

/* tela:alertas inicio */
.pg-alertas .fl-acao{display:block;font-size:12.5px;color:var(--text);margin-top:5px;padding-left:10px;border-left:2px solid var(--fill-gold);white-space:normal}
.pg-alertas .fl-tb td.acoes{text-align:right}
.pg-alertas .fl-tb td.fl-nome{min-width:320px}
.pg-alertas .al-filtros{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s-2) var(--s-3);margin:0 0 var(--s-3)}
.pg-alertas .al-filtros .fchips{margin:0}
.pg-alertas .al-filtros form{margin:0;min-width:260px}
.pg-alertas .al-filtros .cselect-trigger,.pg-alertas .al-filtros select{padding:8px 14px;font-size:13px;border-radius:var(--r-pill)}
.pg-alertas .vazio{padding:44px 0;text-align:center;color:var(--text-muted);border-bottom:1px solid var(--line)}
/* tela:alertas fim */

/* tela:alertas-empresa inicio */
.pg-alertas-empresa .al-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:10px}
.pg-alertas-empresa .al-actions form{margin:0;display:flex;gap:6px;align-items:center}
.pg-alertas-empresa .al-actions select{padding:7px 10px;font-size:13px;width:auto}
.pg-alertas-empresa .hist li{font-size:12.5px;color:var(--text-muted);padding:3px 0}
.pg-alertas-empresa .x1{margin:12px 0 8px!important}
.pg-alertas-empresa .x2{width:220px!important;padding:8px 12px!important}
.pg-alertas-empresa .x3{margin:8px 0 0!important;padding-left:16px!important}
/* tela:alertas-empresa fim */

/* tela:captura inicio · padrão de todas as abas de Captura (NF-e, NFC-e, NFS-e e as próximas) */
.pg-captura .ph-side{display:flex;gap:var(--s-2);align-items:center}
.pg-captura .ph-side .menu-lista{min-width:260px}
.pg-captura .cap-barra{margin-bottom:var(--s-2)}
.pg-captura .cap-filtro{margin:0}
.pg-captura .cap-per{display:inline-flex;align-items:center;gap:6px}
.pg-captura .cap-modo button{padding:8px 15px;border:0;border-radius:var(--r-pill);background:transparent;font:inherit;font-size:13px;font-weight:600;line-height:1.3;color:var(--text-muted);white-space:nowrap;cursor:pointer;transition:background 160ms var(--ease), color 160ms var(--ease)}
.pg-captura .cap-modo button:hover{color:var(--text)}
.pg-captura .cap-modo button.on{background:var(--surface-solid);color:var(--text);box-shadow:var(--float-shadow)}
.pg-captura .cap-ate{display:inline-flex;align-items:center;gap:6px}
.pg-captura .cap-ate[hidden]{display:none}
.pg-captura .fl-barra .cap-per input{width:96px;text-align:center}
/* o resultado da ação continua à vista quando a tela volta para onde estava rolada */
.pg-captura > .flash{position:sticky;top:var(--s-3);z-index:20;background:var(--bg);border-radius:var(--r-sm);box-shadow:var(--float-shadow)}
.pg-captura .fl-barra input:invalid{border-color:var(--bad)}
.pg-flista .cap-painel{display:none;margin:var(--s-4) 0 0;padding:var(--s-4) 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.pg-flista .cap-painel:target,.pg-flista .cap-painel.aberto{display:block}
.pg-flista .cap-painel-topo{display:flex;align-items:center;justify-content:space-between;margin:0 0 var(--s-3)}
.pg-flista .cap-painel-topo h2{margin:0;font-size:15px;font-weight:700;letter-spacing:-.01em}
.pg-flista .cap-painel .filtros{margin:0}
.pg-flista .cap-form{display:flex;flex-wrap:wrap;gap:var(--s-3);align-items:flex-end;justify-content:space-between;margin-top:var(--s-3)}
.pg-captura .cap-tb th.cap-marca,.pg-captura .cap-tb td.cap-marca{width:1%;padding-right:14px}
.pg-captura .cap-tb td.fl-nome{width:auto}
.pg-captura .cap-tb .status{white-space:nowrap}
.pg-captura .cap-tb td .fl-sub{max-width:280px;white-space:normal}
.pg-captura .cap-acoes{display:inline-block}
.pg-captura .cap-acoes > summary.mini{padding:3px 10px;letter-spacing:.08em}
.pg-captura .cap-acoes > summary.mini::after{display:none}
.pg-captura .cap-acoes .menu-lista{min-width:230px;text-align:left}
.pg-captura .cap-rodape{position:sticky;bottom:0;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:var(--s-3);margin:var(--s-3) 0 0;padding:var(--s-3) 0;background:var(--bg);border-top:1px solid var(--line);font-size:13.5px}
/* busca automática (link para Fiscal › Rotinas na linha do filtro) */
.pg-captura .fl-barra .cap-auto{padding:8px 15px;font-size:13px;line-height:1.3}
.pg-captura .cap-chk{display:inline-flex;align-items:center;gap:8px;font-size:13.5px;font-weight:550;cursor:pointer}
.pg-captura .cap-lote{display:flex;flex-wrap:wrap;gap:var(--s-2);margin-left:auto}
.pg-captura .cap-lote[hidden]{display:none}
.pg-captura .cap-tb th.r .fl-sort{text-align:right}
.pg-captura .cap-hist{margin-top:var(--s-5)}
.pg-captura .cap-nota{margin-top:var(--s-3)}
.pg-captura .cap-painel .tb .status{white-space:normal}
.pg-captura .cap-painel textarea{min-height:46px;height:46px}
/* tela:captura fim */

/* tela:captura-nacional inicio */
.pg-captura-nacional .dot.ativa,.pg-captura-nacional .dot.aguardando{background:var(--ok)}
.pg-captura-nacional .dot.vencendo{background:var(--gold)}
.pg-captura-nacional .dot.bloqueada,.pg-captura-nacional .dot.erro,.pg-captura-nacional .dot.certificado_vencido{background:var(--bad)}
.pg-captura-nacional .dot.sem_certificado{background:var(--text-muted)}
.pg-captura-nacional .aviso-cert{border-top:1px solid var(--line);padding:16px 0}
.pg-captura-nacional .x1{margin:8px 0 0!important;padding-left:24px!important}
/* tela:captura-nacional fim */

/* tela:captura-nacional-empresa inicio */
.pg-captura-nacional-empresa .dot.ativa,.pg-captura-nacional-empresa .dot.aguardando{background:var(--ok)}
.pg-captura-nacional-empresa .dot.vencendo{background:var(--gold)}
.pg-captura-nacional-empresa .dot.bloqueada,.pg-captura-nacional-empresa .dot.erro,.pg-captura-nacional-empresa .dot.certificado_vencido{background:var(--bad)}
.pg-captura-nacional-empresa .dot.sem_certificado{background:var(--text-muted)}
.pg-captura-nacional-empresa .pill.resumo{background:var(--fill-gold);color:#8a6a2a}
.pg-captura-nacional-empresa .pill.completo{background:rgba(31,143,90,.14);color:#1f8f5a}
.pg-captura-nacional-empresa .pill.evento{background:var(--fill-2)}
html[data-theme="dark"] .pg-captura-nacional-empresa .pill.resumo{color:var(--gold)}
html[data-theme="dark"] .pg-captura-nacional-empresa .pill.completo{color:#5fcf95}
.pg-captura-nacional-empresa .x1{width:180px!important}
/* tela:captura-nacional-empresa fim */

/* tela:relatorios inicio */
.pg-relatorios .fl-tb td.acoes{white-space:nowrap}
.pg-relatorios .rel-arquivo,.pg-apuracao-empresa .rel-arquivo{position:relative;cursor:pointer;overflow:hidden}
.pg-relatorios .rel-arquivo input[type=file],.pg-apuracao-empresa .rel-arquivo input[type=file]{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}
.pg-relatorios .rel-periodos{margin-top:var(--s-5)}
/* janela Novo relatório (componentes/relatorio_janela.html), layout denso: barra azul, quadros de borda fina */
.dlg-rel{--rj-borda:#c9ced6;--rj-fundo:#f4f5f7;--rj-rotulo:#4a5568;width:min(1000px,calc(100vw - 32px));max-height:calc(100vh - 32px);padding:0;border-radius:4px;overflow:hidden}
html[data-theme="dark"] .dlg-rel{--rj-borda:#3a4455;--rj-fundo:#1A2022;--rj-rotulo:#a9b2c1}
.dlg-rel > form{display:flex;flex-direction:column;max-height:calc(100vh - 32px);margin:0;background:var(--surface-solid);font-size:12.5px}
.dlg-rel .rj-topo{display:flex;align-items:center;justify-content:space-between;padding:7px 12px;background:var(--navy);color:#fff}
.dlg-rel .rj-topo b{font-size:14px;font-weight:700}
.dlg-rel .rj-x{border:0;background:none;color:rgba(255,255,255,.8);font-size:14px;cursor:pointer;padding:0 4px}
.dlg-rel .rj-corpo{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(260px,1fr);gap:8px;padding:8px;background:var(--rj-fundo);min-height:0;overflow:auto}
.dlg-rel .rj-q{margin:0;padding:6px 8px 8px;border:1px solid var(--rj-borda);border-radius:2px;background:var(--surface-solid);min-width:0}
.dlg-rel .rj-q legend{padding:0 4px;font-size:11.5px;font-weight:700;color:var(--rj-rotulo)}
.dlg-rel .rj-lado{display:flex;flex-direction:column;gap:8px;min-width:0}
.dlg-rel .rj-barra{display:flex;gap:4px;margin-bottom:6px}
.dlg-rel .rj-barra input{flex:1;min-width:0}
.dlg-rel input[type=search],.dlg-rel input[inputmode],.dlg-rel select{height:28px;padding:0 8px;border:1px solid var(--rj-borda);border-radius:2px;background:var(--field-bg);color:var(--text);font:inherit;font-size:12.5px}
.dlg-rel .rj-bt{height:28px;padding:0 10px;border:1px solid var(--rj-borda);border-radius:2px;background:var(--rj-fundo);color:var(--text);font:inherit;font-size:12.5px;cursor:pointer;white-space:nowrap}
.dlg-rel .rj-bt.pri{background:var(--navy);border-color:var(--navy);color:#fff}
.dlg-rel .rj-bt:disabled{opacity:.5;cursor:default}
.dlg-rel .rj-lista{max-height:min(420px,calc(100vh - 260px));overflow:auto;border:1px solid var(--rj-borda)}
.dlg-rel .rj-lista table{width:100%;border-collapse:collapse}
.dlg-rel .rj-lista th{position:sticky;top:0;z-index:1;padding:4px 6px;text-align:left;font-size:11px;font-weight:700;color:var(--rj-rotulo);background:var(--rj-fundo);border-bottom:1px solid var(--rj-borda)}
.dlg-rel .rj-lista td{padding:3px 6px;border-bottom:1px solid var(--line);vertical-align:middle;white-space:nowrap}
.dlg-rel .rj-lista td:first-child{width:1%}
.dlg-rel .rj-lista td b{font-weight:600}
.dlg-rel .rj-lista td small{display:block;font-size:11px;color:var(--text-muted)}
.dlg-rel .rj-ck input{width:15px;height:15px;accent-color:var(--gold);vertical-align:middle}
.dlg-rel .rj-vazio{padding:14px 6px;text-align:center;color:var(--text-muted)}
.dlg-rel .rj-ok{color:var(--ok)}
.dlg-rel .rj-tirar{color:var(--warn)}
.dlg-rel .rj-l{display:grid;grid-template-columns:56px minmax(0,1fr);align-items:center;gap:6px;margin:4px 0}
.dlg-rel .rj-l span{font-size:12px;color:var(--rj-rotulo)}
.dlg-rel .rj-atalhos{display:flex;gap:4px;margin:6px 0 0 62px}
.dlg-rel .rj-ck{display:flex;align-items:center;gap:6px;margin:4px 0}
.dlg-rel .rj-ck:has(input:disabled){color:var(--text-muted)}
.dlg-rel .rj-nota{margin:2px 0 4px;font-size:11.5px;color:var(--text-muted)}
.dlg-rel .rj-sub{margin-left:21px}
.dlg-rel .rj-rodape{display:flex;align-items:center;gap:6px;padding:7px 10px;border-top:1px solid var(--rj-borda)}
.dlg-rel .rj-rodape #rjResumo{margin-right:auto;color:var(--rj-rotulo)}
@media (max-width:720px){.dlg-rel .rj-corpo{grid-template-columns:minmax(0,1fr)}}
/* tela:relatorios fim */

/* tela:relatorios-revisar inicio */
.pg-relatorios-revisar .diag{border:1px solid var(--line);border-radius:var(--r-sm);overflow:hidden;margin-bottom:10px}
.pg-relatorios-revisar .diag .row{display:grid;grid-template-columns:150px 1fr;gap:12px;padding:12px;border-top:1px solid var(--line)}
.pg-relatorios-revisar .diag .row:first-child{border-top:0}
.pg-relatorios-revisar .diag .row .full{grid-column:1/-1}
.pg-relatorios-revisar .diag textarea{width:100%;padding:9px 11px;border:1px solid var(--line);border-radius:8px;font-size:14px;font-family:inherit;resize:vertical;min-height:42px;color:var(--text);background:var(--field-bg)}
.pg-relatorios-revisar .smalllb{font-size:11px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px;display:block}
.pg-relatorios-revisar .toggle{display:flex;align-items:center;gap:10px;background:var(--fill-1);border:1px solid var(--line);border-radius:var(--r-sm);padding:11px 14px;font-size:14px;margin-bottom:14px}
.pg-relatorios-revisar .toggle input{width:18px;height:18px;accent-color:var(--gold)}
.pg-relatorios-revisar .rv-apur{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s-3) var(--s-5);margin-bottom:var(--s-3)}
.pg-relatorios-revisar .rv-apur div{display:flex;flex-direction:column;gap:2px;padding-bottom:var(--s-3);border-bottom:1px solid var(--line)}
.pg-relatorios-revisar .rv-apur span{font-size:12px;color:var(--text-muted)}
.pg-relatorios-revisar .rv-apur b{font-size:17px;font-weight:700;letter-spacing:-.01em}
@media(max-width:800px){.pg-relatorios-revisar .rv-apur{grid-template-columns:1fr 1fr}}
.pg-relatorios-revisar .sticky{position:sticky;bottom:0;background:linear-gradient(180deg,transparent,var(--bg) 34%);padding:18px 0 4px;margin-top:24px;display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.pg-relatorios-revisar .legendk{font-size:12px;color:var(--muted)}
.pg-relatorios-revisar .detect{background:var(--fill-1);border:1px solid var(--line);border-radius:var(--r-sm);padding:12px 14px;margin-bottom:16px;font-size:13px;color:var(--text)}
.pg-relatorios-revisar .detect .h{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-bottom:8px}
.pg-relatorios-revisar .detect ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:5px}
.pg-relatorios-revisar .detect li{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap}
.pg-relatorios-revisar .detect .tag{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;background:var(--fill-gold);color:var(--info-fg);padding:2px 7px;border-radius:5px}
.pg-relatorios-revisar .detect .aviso{margin-top:8px;font-size:12.5px;color:var(--warn-fg)}
/* tela:relatorios-revisar fim */

/* tela:relatorios-receitas inicio */
.pg-relatorios-receitas .stepbar{display:flex;gap:8px;align-items:center;font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin-bottom:14px}
.pg-relatorios-receitas .stepbar b{color:var(--text)}
.pg-relatorios-receitas .stepbar .sep{opacity:.5}
.pg-relatorios-receitas .detect{background:var(--fill-1);border:1px solid var(--line);border-radius:var(--r-sm);padding:12px 14px;margin-bottom:16px;font-size:13px;color:var(--text)}
.pg-relatorios-receitas .detect .h{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-bottom:8px}
.pg-relatorios-receitas .detect ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:5px}
.pg-relatorios-receitas .detect li{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap}
.pg-relatorios-receitas .detect .tag{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;background:var(--fill-gold);color:var(--info-fg);padding:2px 7px;border-radius:5px}
.pg-relatorios-receitas .detect .aviso{margin-top:8px;font-size:12.5px;color:var(--warn-fg)}
.pg-relatorios-receitas .toggle{display:flex;align-items:center;gap:10px;background:var(--fill-1);border:1px solid var(--line);border-radius:var(--r-sm);padding:11px 14px;font-size:14px;margin-bottom:14px}
.pg-relatorios-receitas .toggle input{width:18px;height:18px;accent-color:var(--gold)}
.pg-relatorios-receitas .sticky{position:sticky;bottom:0;background:linear-gradient(180deg,transparent,var(--bg) 34%);padding:18px 0 4px;margin-top:24px;display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.pg-relatorios-receitas .legendk{font-size:12px;color:var(--muted)}
.pg-relatorios-receitas .totlive{font-size:15px;font-weight:700;color:var(--navy);margin:10px 0 0}
.pg-relatorios-receitas .mesbox{border:1px solid var(--line);border-radius:var(--r-sm);overflow:hidden}
.pg-relatorios-receitas .mesbox table{width:100%;border-collapse:collapse;font-size:14px}
.pg-relatorios-receitas .mesbox th{text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);padding:10px 14px;border-bottom:1px solid var(--line);background:var(--fill-1)}
.pg-relatorios-receitas .mesbox td{padding:8px 14px;border-bottom:1px solid var(--line)}
.pg-relatorios-receitas .mesbox tr.off{display:none}
.pg-relatorios-receitas .mesbox .r{text-align:right}
.pg-relatorios-receitas .mesbox input{width:140px;text-align:right}
/* tela:relatorios-receitas fim */

/* tela:relatorios-resultado inicio */
.pg-relatorios-resultado .ok-dot{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;margin-right:6px;border-radius:50%;background:rgba(31,143,90,.14);color:var(--ok-fg);font-size:16px;vertical-align:middle}
.pg-relatorios-resultado .frame{border:1px solid var(--line);border-radius:var(--r-sm);overflow:hidden;background:#525659}
.pg-relatorios-resultado .frame iframe{width:100%;height:78vh;border:0;display:block;background:#525659}
/* tela:relatorios-resultado fim */

/* tela:relatorios-lote inicio */
.pg-relatorios-lote .x1{word-break:break-all!important}
/* tela:relatorios-lote fim */

/* tela:calculadora inicio */
.pg-calculadora .filtros{display:flex;gap:12px;flex-wrap:wrap;align-items:flex-end;margin:0 0 8px}
.pg-calculadora .filtros .fld{margin:0;min-width:200px}
.pg-calculadora .kpis{display:flex;flex-wrap:wrap;gap:12px;margin:0 0 18px}
.pg-calculadora .kpi{flex:1 1 150px;background:var(--fill-1);border-radius:var(--r-md);padding:14px 16px}
.pg-calculadora .kpi .v{font-size:20px;font-weight:800;color:var(--text)}
.pg-calculadora .kpi .l{font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;margin-top:3px}
.pg-calculadora .panel{background:var(--fill-1);border-radius:var(--r-lg);padding:22px;margin-bottom:14px}
.pg-calculadora .panel h2{margin:0 0 16px;font-size:1.05rem;font-weight:650}
.pg-calculadora .panel .fld{margin-bottom:12px}
.pg-calculadora .actions{display:flex;flex-wrap:wrap;gap:10px;margin:4px 0 22px}
.pg-calculadora .actions .btn{width:auto}
.pg-calculadora .rec-row{display:grid;grid-template-columns:1fr 160px auto;gap:10px;align-items:end;margin-bottom:10px}
.pg-calculadora .rec-row .fld{margin:0}
@media(max-width:720px){.pg-calculadora .rec-row{grid-template-columns:1fr}}
.pg-calculadora .adv{display:none}
.pg-calculadora .avancado .adv{display:block}
.pg-calculadora .tb td.r,.pg-calculadora .tb th.r{text-align:right;font-variant-numeric:tabular-nums}
.pg-calculadora .tb tr.tot td{font-weight:700}
.pg-calculadora .cmp .kpi.best{outline:2px solid var(--gold)}
.pg-calculadora .cmp .kpi .sub{font-size:12.5px;color:var(--text-muted);margin-top:4px}
.pg-calculadora .lim{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media(max-width:720px){.pg-calculadora .lim{grid-template-columns:1fr}}
.pg-calculadora .bar{height:8px;background:var(--fill-2);border-radius:999px;overflow:hidden;margin:10px 0 8px}
.pg-calculadora .bar i{display:block;height:100%;border-radius:999px;background:var(--blue)}
.pg-calculadora .bar i.warn{background:var(--warn)}
.pg-calculadora .bar i.bad{background:var(--bad)}
.pg-calculadora .bar i.ok{background:var(--ok)}
.pg-calculadora .kv{display:flex;justify-content:space-between;gap:12px;font-size:13px;padding:6px 0;border-bottom:1px solid var(--line)}
.pg-calculadora .kv:last-child{border-bottom:0}
.pg-calculadora .bars{display:flex;align-items:flex-end;gap:24px;padding-top:18px;justify-content:center}
.pg-calculadora .col{flex:0 0 120px;display:flex;flex-direction:column;align-items:center}
.pg-calculadora .barwrap{height:150px;width:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center}
.pg-calculadora .vl{font-size:11px;color:var(--muted);margin-bottom:4px;white-space:nowrap;line-height:1}
.pg-calculadora .vbar{width:62%;max-width:44px;min-height:3px;border-radius:5px 5px 0 0;background:var(--blue)}
.pg-calculadora .vbar.navy{background:var(--navy)}
.pg-calculadora .vbar.gold{background:var(--gold)}
.pg-calculadora .xl{font-size:11px;color:var(--muted);margin-top:8px;white-space:nowrap;text-align:center}
.pg-calculadora .empty .big{font-size:40px;margin-bottom:10px}
.pg-calculadora .disc{font-size:12.5px;color:var(--text-muted);margin-top:26px;line-height:1.5}
.pg-calculadora .loading{opacity:.55;pointer-events:none}
.pg-calculadora .x1{grid-column:span 2!important}
.pg-calculadora .x2{text-transform:uppercase!important}
.pg-calculadora .x3{grid-column:span 2!important;padding-top:32px!important}
.pg-calculadora .x4{max-width:320px!important}
/* tela:calculadora fim */

/* tela:optante inicio */
.pg-optante .filtros{display:flex;gap:12px;flex-wrap:wrap;align-items:flex-end;margin:0 0 8px}
.pg-optante .filtros .fld{margin:0;min-width:200px}
.pg-optante .kpis{display:flex;flex-wrap:wrap;gap:12px;margin:0 0 18px}
.pg-optante .kpi{flex:1 1 150px;background:var(--fill-1);border-radius:var(--r-md);padding:14px 16px}
.pg-optante .kpi .v{font-size:20px;font-weight:800;color:var(--text)}
.pg-optante .kpi .l{font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;margin-top:3px}
.pg-optante .kpi .sub{font-size:12.5px;color:var(--text-muted);margin-top:4px}
.pg-optante .kpi.best{outline:2px solid var(--gold)}
.pg-optante .panel{background:var(--fill-1);border-radius:var(--r-lg);padding:22px;margin-bottom:14px}
.pg-optante .panel h2{margin:0 0 16px;font-size:1.05rem;font-weight:650}
.pg-optante .panel .fld{margin-bottom:12px}
.pg-optante .actions{display:flex;flex-wrap:wrap;gap:10px;margin:4px 0 22px}
.pg-optante .actions .btn{width:auto}
.pg-optante .opts{display:flex;flex-wrap:wrap;gap:8px}
.pg-optante .opts label{display:flex;gap:8px;align-items:center;background:var(--fill-2);padding:9px 14px;border-radius:var(--r-pill);font-size:13.5px;font-weight:500;cursor:pointer}
.pg-optante .opts input{width:auto;margin:0}
.pg-optante .adv{display:none}
.pg-optante .avancado .adv{display:block}
.pg-optante .tb td.r,.pg-optante .tb th.r{text-align:right;font-variant-numeric:tabular-nums}
.pg-optante .tb tr.tot td{font-weight:700}
.pg-optante .bars{display:flex;align-items:flex-end;gap:28px;padding-top:18px;justify-content:center}
.pg-optante .col{flex:0 0 140px;display:flex;flex-direction:column;align-items:center}
.pg-optante .barwrap{height:130px;width:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center}
.pg-optante .vl{font-size:11px;color:var(--muted);margin-bottom:4px;white-space:nowrap}
.pg-optante .vbar{width:62%;max-width:44px;min-height:3px;border-radius:5px 5px 0 0;background:var(--navy)}
.pg-optante .vbar.gold{background:var(--gold)}
.pg-optante .vbar.blue{background:var(--blue)}
.pg-optante .xl{font-size:11px;color:var(--muted);margin-top:8px;text-align:center}
.pg-optante .charts{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media(max-width:720px){.pg-optante .charts{grid-template-columns:1fr}}
.pg-optante .kv{display:flex;justify-content:space-between;gap:12px;font-size:13px;padding:6px 0;border-bottom:1px solid var(--line)}
.pg-optante .kv:last-child{border-bottom:0}
.pg-optante .timeline{display:flex;flex-wrap:wrap;gap:10px}
.pg-optante .tl{flex:1 1 160px;background:var(--fill-2);border-radius:var(--r-md);padding:12px 14px;font-size:13px}
.pg-optante .tl b{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}
.pg-optante .tl .d{font-weight:700;margin:4px 0}
.pg-optante .fatores li{padding:5px 0;font-size:14px}
.pg-optante .empty .big{font-size:40px;margin-bottom:10px}
.pg-optante .disc{font-size:12.5px;color:var(--text-muted);margin-top:26px;line-height:1.5}
.pg-optante .loading{opacity:.55;pointer-events:none}
.pg-optante .hidden{display:none}
.pg-optante .x1{margin:-12px 0 16px!important}
.pg-optante .x2{border-top:0!important}
.pg-optante .x3{width:34px!important}
.pg-optante .x4{padding:16px 24px!important}
.pg-optante .x5{border-top:0!important;padding-top:8px!important}
.pg-optante .x6{margin:4px 0 8px!important}
.pg-optante .x7{margin:8px 0 8px!important}
.pg-optante .x8{display:contents!important}
.pg-optante .x9{padding-top:32px!important}
.pg-optante .x10{grid-column:span 2!important}
.pg-optante .x11{text-transform:uppercase!important}
.pg-optante .x12{margin:8px 0 16px!important}
/* tela:optante fim */

/* tela:painel inicio (Fiscal › Painel: evolução das apurações, no desenho das listas do Fiscal) */
.pg-evolucao .pn-filtro{margin-bottom:0}
.pg-evolucao .pn-filtro .cselect,.pg-evolucao .pn-filtro select{width:auto;min-width:230px;max-width:320px}
.pg-evolucao .pn-filtro .cselect-trigger{padding:9px 14px;font-size:13.5px;border-radius:var(--r-pill)}
.pg-evolucao .pn-per{display:inline-flex;align-items:center;gap:6px}
.pg-evolucao .fl-barra .pn-per input{width:96px;text-align:center}
.pg-evolucao .tbwrap{max-height:none}
.pg-evolucao .fl-sec{margin-top:var(--s-6)}
.pg-evolucao .pn-tb th{white-space:nowrap}
.pg-evolucao .pn-tb th.r,.pg-evolucao .pn-tb td.r{text-align:right}
.pg-evolucao .fl-sec .muted-sm{font-weight:500;letter-spacing:0}
.pg-evolucao .pn-tb td:last-child,.pg-evolucao .pn-tb th:last-child{position:static;padding-left:0}
.pg-evolucao .pn-tb tr:hover td:last-child{background:none}
.pg-evolucao .pn-var{font-size:11.5px}
/* barra de proporção dentro da tabela: receita do mês sobre o maior mês, tributo sobre o DAS */
.pg-evolucao .fl-tb td.pn-barra{width:22%;min-width:90px;vertical-align:middle}
.pg-evolucao .pn-barra i{display:block;height:6px;min-width:2px;border-radius:3px;background:var(--gold)}
.pg-evolucao .pn-resto td{color:var(--text-muted)}
.pg-evolucao .pn-resto .pn-barra i{background:var(--text-muted);opacity:.5}
.pg-evolucao .pn-duo{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 var(--s-6)}
@media(max-width:1100px){.pg-evolucao .pn-duo{grid-template-columns:1fr}}
.pg-evolucao .pn-duo .fl-tb td.fl-nome{min-width:110px}
.pg-evolucao .pn-duo .fl-tb th,.pg-evolucao .pn-duo .fl-tb td{padding-right:12px}
.pg-evolucao .pn-duo .fl-tb th:last-child,.pg-evolucao .pn-duo .fl-tb td:last-child{padding-right:0}
.pg-evolucao .pn-sec-h{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s-3);margin:var(--s-6) 0 var(--s-2)}
.pg-evolucao .pn-sec-h .fl-sec{margin:0 auto 0 0}
.pg-evolucao .pn-sec-h input{width:220px;padding:9px 14px;font-size:13.5px;line-height:1.3;border-radius:var(--r-pill)}
/* tela:painel fim */

/* tela:monitor inicio */
.pg-monitor .bar{height:8px;background:var(--fill-2);border-radius:4px;overflow:hidden;min-width:120px}
.pg-monitor .bar i{display:block;height:100%;background:var(--navy)}
.pg-monitor .bar i.warn{background:var(--warn)}
.pg-monitor .bar i.bad{background:var(--bad)}
/* tela:monitor fim */

/* tela:monitor-empresa inicio */
.pg-monitor-empresa .prog{position:relative;height:26px;background:var(--fill-2);border-radius:13px;margin:26px 0 8px}
.pg-monitor-empresa .prog .fill{position:absolute;left:0;top:0;bottom:0;background:var(--gold);opacity:.75;border-radius:13px}
.pg-monitor-empresa .prog .proj{position:absolute;top:-22px;transform:translateX(-50%);font-size:11px;color:var(--text-muted);white-space:nowrap}
.pg-monitor-empresa .prog .proj:after{content:'';position:absolute;left:50%;top:18px;width:2px;height:30px;background:var(--gold)}
.pg-monitor-empresa .prog .lim{position:absolute;right:0;top:30px;font-size:11px;color:var(--muted)}
.pg-monitor-empresa .prog .zero{position:absolute;left:0;top:30px;font-size:11px;color:var(--muted)}
.pg-monitor-empresa .x1{margin:12px 0 4px!important}
.pg-monitor-empresa .x2{margin:0 0 4px!important;text-transform:uppercase!important;letter-spacing:.07em!important}
.pg-monitor-empresa .x3{height:22px!important}
.pg-monitor-empresa .x4{background:var(--navy)!important}
.pg-monitor-empresa .x5{background:var(--gold)!important}
.pg-monitor-empresa .x6{background:#2f9e8f!important}
.pg-monitor-empresa .x7{margin:8px 0 0!important;padding-left:24px!important}
.pg-monitor-empresa .x8{padding:4px 0!important}
.pg-monitor-empresa .x9{padding:16px 24px!important}
/* tela:monitor-empresa fim */

/* tela:parcelamentos inicio */
.pg-parcelamentos .proc{font-size:11.5px;color:var(--text-muted);margin-top:3px;line-height:1.35}
.pg-parcelamentos .proc.pdf{color:#8a6a2a}
.pg-parcelamentos .risk-ok{color:#1f8f5a}
.pg-parcelamentos .risk-atencao{color:var(--warn-fg)}
.pg-parcelamentos .risk-critico{color:var(--bad-fg)}
.pg-parcelamentos .risk-rescisao_provavel{color:#8b1a1a;font-weight:700}
.pg-parcelamentos .copybtn{border:0;background:transparent;color:var(--gold);cursor:pointer;font-size:12px;padding:0 4px;font-weight:600}
.pg-parcelamentos .x1{padding-top:0!important;border-top:0!important}
/* tela:parcelamentos fim */

/* tela:parcelamento-detalhe inicio */
.pg-parcelamento-detalhe .proc{font-size:11.5px;color:var(--text-muted);margin-top:3px}
.pg-parcelamento-detalhe .proc.pdf{color:#8a6a2a}
.pg-parcelamento-detalhe .risk-box{padding:18px 0 8px;border-bottom:1px solid var(--line);margin-bottom:18px}
.pg-parcelamento-detalhe .risk-box .nivel{font-family:var(--font-display);font-size:20px;font-weight:700;letter-spacing:-.02em}
.pg-parcelamento-detalhe .risk-box .motivo{font-size:14px;line-height:1.5;margin-top:8px;color:var(--text)}
.pg-parcelamento-detalhe .est{color:var(--text-muted);font-size:12px;border-bottom:1px dotted var(--text-muted);cursor:help}
.pg-parcelamento-detalhe .aviso-pgfn{font-size:13px;line-height:1.5;padding:12px 0;border-top:1px solid var(--line);color:var(--text-muted);margin-top:12px}
.pg-parcelamento-detalhe .copybtn{border:0;background:transparent;color:var(--gold);cursor:pointer;font-size:12px;padding:0 4px;font-weight:600}
.pg-parcelamento-detalhe .x1{max-width:140px!important}
/* tela:parcelamento-detalhe fim */

/* tela:parcelamento-importar inicio */
.pg-parcelamento-importar .miss{background:rgba(196,71,71,.10)}
.pg-parcelamento-importar .miss input,.pg-parcelamento-importar .miss select{border-color:var(--bad-fg)}
.pg-parcelamento-importar .aviso-list{font-size:13px;line-height:1.5;color:var(--text-muted);margin:0 0 16px;padding-left:18px}
.pg-parcelamento-importar .proc{font-size:12px;color:#8a6a2a;margin-bottom:12px}
.pg-parcelamento-importar .x1{width:64px!important}
/* tela:parcelamento-importar fim */

/* tela:nfse-empresa inicio */
.pg-nfse-empresa .ph-side .status{margin-right:var(--s-2)}
/* tela:nfse-empresa fim */

/* tela:dp-contratacao inicio */
.pg-dp-contratacao .x1{margin:-4px 0 12px!important}
.pg-dp-contratacao .x2{max-width:520px!important}
/* tela:dp-contratacao fim */

/* tela:dp-fator-r inicio */
.pg-dp-fator-r .x1{background:var(--navy)!important}
.pg-dp-fator-r .x2{background:var(--gold)!important}
.pg-dp-fator-r .x3{background:var(--warn)!important}
/* tela:dp-fator-r fim */

/* tela:admin-contas inicio */
.pg-admin-contas .tagp{display:inline-block;font-size:11px;font-weight:700;padding:3px 10px;border-radius:999px}
.pg-admin-contas .tagp.admin{background:var(--fill-gold);color:var(--info-fg)}
.pg-admin-contas .tagp.user{background:var(--fill-2);color:var(--text-muted)}
.pg-admin-contas .tagp.on{background:rgba(31,143,90,.14);color:var(--ok-fg)}
.pg-admin-contas .tagp.off{background:var(--fill-2);color:var(--text-muted)}
.pg-admin-contas .me{font-size:11px;color:var(--muted);font-weight:600;margin-left:6px}
.pg-admin-contas .frow{display:flex;gap:12px;align-items:flex-end;margin-bottom:12px}
.pg-admin-contas .frow .grow{flex:1}
.pg-admin-contas .grid2{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}
.pg-admin-contas .frow{flex-wrap:wrap}}
.pg-admin-contas .fld{display:flex;flex-direction:column;gap:5px}
.pg-admin-contas .fld label{font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}
.pg-admin-contas .fld input,.pg-admin-contas .fld select{width:100%;padding:10px 12px;border:1px solid var(--line);border-radius:9px;font-size:14px;font-family:inherit;background:var(--surface-solid)}
.pg-admin-contas .fld.papel{min-width:170px}
/* tela:admin-contas fim */

/* tela:admin-integracoes inicio */
.pg-admin-integracoes .int-topo{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:14px}
.pg-admin-integracoes .int-topo .fl-sub{margin-left:8px;font-size:12px;color:var(--text-muted)}
.pg-admin-integracoes .int-dados{display:grid;grid-template-columns:max-content 1fr;gap:6px 18px;margin:0 0 16px;padding:12px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:13px}
.pg-admin-integracoes .int-dados dt{font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;align-self:center}
.pg-admin-integracoes .int-dados dd{margin:0}
.pg-admin-integracoes .grid2{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}
.pg-admin-integracoes .fld{display:flex;flex-direction:column;gap:5px}
.pg-admin-integracoes .fld label{font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}
.pg-admin-integracoes .fld input{width:100%;padding:10px 12px;border:1px solid var(--line);border-radius:9px;font-size:14px;font-family:inherit;background:var(--surface-solid)}
.pg-admin-integracoes .int-acoes{display:flex;gap:10px;flex-wrap:wrap}
/* Admin › Custos */
.pg-admin-custos .cus-topo{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:14px}
.pg-admin-custos .cus-ciclo{font-size:13px;color:var(--text-muted)}
.pg-admin-custos .pc-kpis{margin-bottom:var(--s-4);grid-template-columns:repeat(4,minmax(0,1fr))}
.pg-admin-custos .cus-rolagem{overflow-x:auto}
@media(max-width:900px){.pg-admin-custos .pc-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.pg-admin-custos .cus-prox{display:none}}
.pg-admin-custos .cus-tb .cus-tot td{font-weight:700;border-top:1px solid var(--line)}
.pg-admin-custos .cus-informar{margin-top:var(--s-5);padding-top:var(--s-4);border-top:1px solid var(--line)}
.pg-admin-custos .cus-informar h3{margin:0 0 var(--s-3);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted)}
.pg-admin-custos .cus-campos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:var(--s-3);align-items:start}
.pg-admin-custos .cus-campos .fld{margin:0;min-width:0}
.pg-admin-custos .cus-campos input{width:100%;text-align:right}
.pg-admin-custos .cus-campos small{display:block;margin-top:4px;font-size:11.5px;color:var(--text-muted)}
.pg-admin-custos .cus-campos .btn{align-self:end}
.pg-admin-custos .cus-precos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s-4)}
.pg-admin-custos .cus-precos tr.is-atual td{background:var(--fill-gold);font-weight:700}
.pg-admin-custos .cus-contrato{display:grid;grid-template-columns:max-content 1fr;gap:6px 18px;margin:var(--s-4) 0 0;padding-top:12px;border-top:1px solid var(--line);font-size:13px}
.pg-admin-custos .cus-contrato dt{font-size:11px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em}
.pg-admin-custos .cus-contrato dd{margin:0}
@media(max-width:720px){.pg-admin-custos .cus-campos,.pg-admin-custos .cus-precos{grid-template-columns:1fr}.pg-admin-custos .cus-contrato{grid-template-columns:1fr}}
.pg-admin-integracoes .int-enviar{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap;margin-top:16px;padding-top:16px;border-top:1px solid var(--line)}
.pg-admin-integracoes .int-enviar .fld{width:140px}
@media (max-width:640px){.pg-admin-integracoes .grid2{grid-template-columns:1fr}}
/* tela:admin-integracoes fim */

/* tela:admin-usuario inicio */
.pg-admin-usuario .topline{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.pg-admin-usuario .tagp{display:inline-block;font-size:11px;font-weight:700;padding:3px 10px;border-radius:999px}
.pg-admin-usuario .tagp.admin{background:var(--fill-gold);color:var(--info-fg)}
.pg-admin-usuario .tagp.user{background:var(--fill-2);color:var(--text-muted)}
.pg-admin-usuario .tagp.on{background:rgba(31,143,90,.14);color:var(--ok-fg)}
.pg-admin-usuario .tagp.off{background:var(--fill-2);color:var(--text-muted)}
.pg-admin-usuario .inl{display:inline-flex;align-items:center;gap:6px;margin:0}
.pg-admin-usuario .btn.ghost{background:var(--surface-solid);color:var(--text);border:1px solid var(--line)}
.pg-admin-usuario .frow{display:flex;gap:12px;align-items:flex-end;flex-wrap:wrap}
.pg-admin-usuario .fld{display:flex;flex-direction:column;gap:5px}
.pg-admin-usuario .fld label,.pg-admin-usuario .lb{font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}
.pg-admin-usuario .fld select,.pg-admin-usuario .fld input{padding:10px 12px;border:1px solid var(--line);border-radius:9px;font-size:14px;font-family:inherit;background:var(--surface-solid);min-width:200px}
.pg-admin-usuario .access{display:flex;gap:22px;flex-wrap:wrap;align-items:flex-end}
.pg-admin-usuario .access .blk{display:flex;flex-direction:column;gap:7px}
.pg-admin-usuario .access input[type=password]{padding:8px 11px;border:1px solid var(--line);border-radius:8px;font-size:14px;min-width:170px}
.pg-admin-usuario .x1{margin-top:-4px!important}
/* tela:admin-usuario fim */

/* tela:admin-avisos inicio */
.pg-admin-avisos .newgrid{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end}
.pg-admin-avisos .newgrid .f{display:flex;flex-direction:column;gap:5px}
.pg-admin-avisos .newgrid label{font-size:11px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}
.pg-admin-avisos .newgrid input,.pg-admin-avisos .newgrid select,.pg-admin-avisos .newgrid textarea{padding:9px 11px;border:1px solid var(--line);border-radius:9px;font-size:14px;font-family:inherit;background:var(--surface-solid)}
.pg-admin-avisos .newgrid textarea{min-width:320px;min-height:70px;resize:vertical}
.pg-admin-avisos .tagp{display:inline-block;font-size:11px;font-weight:700;padding:3px 9px;border-radius:999px}
.pg-admin-avisos .tagp.on{background:rgba(31,143,90,.14);color:var(--ok-fg)}
.pg-admin-avisos .tagp.off{background:var(--fill-2);color:var(--text-muted)}
.pg-admin-avisos .inl{display:inline-flex;align-items:center;gap:6px;margin:0}
.pg-admin-avisos .acts{display:flex;gap:6px;flex-wrap:wrap}
.pg-admin-avisos .x1{flex-basis:100%!important}
.pg-admin-avisos .x2{max-width:320px!important;overflow:hidden!important;text-overflow:ellipsis!important}
/* tela:admin-avisos fim */

/* tela:admin-bloqueios inicio */
.pg-admin-bloqueios .tagp{display:inline-block;font-size:11px;font-weight:700;padding:3px 10px;border-radius:999px}
.pg-admin-bloqueios .tagp.bad{background:rgba(196,71,71,.16);color:var(--bad-fg)}
.pg-admin-bloqueios .tagp.ok{background:rgba(31,143,90,.14);color:var(--ok-fg)}
.pg-admin-bloqueios .inl{display:inline-flex;margin:0}
.pg-admin-bloqueios .acts{display:flex;gap:6px;flex-wrap:wrap}
.pg-admin-bloqueios .ladder{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}
.pg-admin-bloqueios .step{background:var(--fill-1);border:1px solid var(--line);border-radius:8px;padding:7px 11px;font-size:12px;color:var(--text);font-weight:600}
/* tela:admin-bloqueios fim */

/* tela:cadastro inicio */
.pg-cadastro .filtros{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 20px;align-items:end}
.pg-cadastro .filtros .fld{margin:0;min-width:140px}
.pg-cadastro .filtros .btn{width:auto;margin:0}
/* tela:cadastro fim */

/* tela:cadastro-ficha inicio */
.pg-cadastro-ficha .ficha-head{margin-bottom:20px}
.pg-cadastro-ficha .ficha-head .cnpj{font-size:13px;color:var(--text-muted);font-weight:600}
.pg-cadastro-ficha .panel{background:var(--fill-1);border-radius:var(--r-lg);padding:22px}
.pg-cadastro-ficha .panel h2{margin:0 0 16px;font-size:1.05rem;font-weight:650}
.pg-cadastro-ficha .actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.pg-cadastro-ficha .actions .btn{width:auto}
.pg-cadastro-ficha .inline-form{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:16px}
@media(max-width:720px){.pg-cadastro-ficha .inline-form{grid-template-columns:1fr}}
.pg-cadastro-ficha .x1{margin:8px 0 0!important}
.pg-cadastro-ficha .x2{margin:0 0 12px!important}
/* tela:cadastro-ficha fim */

/* tela:conta inicio */
.pg-conta .accwrap{max-width:440px}
.pg-conta .info{background:var(--surface-solid);border:1px solid var(--line);border-radius:12px;padding:14px 16px;margin-bottom:16px;box-shadow:var(--shadow)}
.pg-conta .info b{color:var(--text)}
.pg-conta .conta-sig{display:block;max-width:220px;max-height:90px;margin:0 0 12px}
.pg-conta .card+.card{margin-top:16px}
/* tela:conta fim */

/* tela:admin-praticas inicio */
.pg-rivalry-empresa .guiabox{
  width:100%;resize:vertical;padding:12px 14px;border:1px solid var(--line);border-radius:var(--r-sm);
  background:var(--field-bg);color:var(--text);font-family:inherit;font-size:14.5px;line-height:1.6;
}
.pg-admin-praticas .newgrid{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end}
.pg-admin-praticas .newgrid .f{display:flex;flex-direction:column;gap:5px}
.pg-admin-praticas .newgrid label{font-size:11px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em}
.pg-admin-praticas .newgrid label.chk{text-transform:none;letter-spacing:0;font-size:13.5px;font-weight:600;color:var(--text);display:flex;align-items:center;gap:8px;padding-bottom:9px}
.pg-admin-praticas .newgrid input[type=text],.pg-admin-praticas .newgrid select,.pg-admin-praticas .newgrid textarea{padding:9px 11px;border:1px solid var(--line);border-radius:9px;font-size:14px;font-family:inherit;background:var(--field-bg);color:var(--text)}
.pg-admin-praticas .newgrid textarea{width:100%;min-height:68px;resize:vertical}
.pg-admin-praticas .newgrid .help{font-size:11.5px;color:var(--text-muted);line-height:1.4;max-width:520px}
.pg-admin-praticas .newgrid .x1{flex-basis:100%}
.pg-admin-praticas .filtros .f{display:flex;flex-direction:column;gap:5px}
.pg-admin-praticas .filtros label{font-size:11px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em}
.pg-admin-praticas .filtros input,.pg-admin-praticas .filtros select{padding:8px 11px;border:1px solid var(--line);border-radius:9px;font-size:13.5px;font-family:inherit;background:var(--field-bg);color:var(--text)}
.pg-admin-praticas .tagp{display:inline-block;font-size:11px;font-weight:700;padding:3px 9px;border-radius:999px;background:var(--fill-2);color:var(--text-muted);margin-left:6px}
.pg-admin-praticas .tagp.on{background:rgba(31,143,90,.14);color:var(--ok-fg)}
.pg-admin-praticas .tagp.off{background:rgba(196,71,71,.14);color:var(--bad-fg)}
.pg-admin-praticas .cbadge{display:inline-block;background:var(--fill-gold);color:var(--info-fg);border-radius:999px;font-size:11px;font-weight:700;padding:2px 9px;margin-left:6px;vertical-align:middle}
.pg-admin-praticas .inl{display:inline-flex;align-items:center;gap:6px;margin:0}
.pg-admin-praticas .acts{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.pg-admin-praticas .table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}
.pg-admin-praticas .table-scroll > table{min-width:780px}
/* dentro de rolagem horizontal o cabeçalho fixo atrapalha em vez de ajudar */
.pg-admin-praticas .table-scroll .ut th{position:static}
@media(max-width:760px){
  .pg-admin-praticas .newgrid .f,.pg-admin-praticas .filtros .f{flex-basis:100%}
  .pg-admin-praticas .newgrid input[type=text],.pg-admin-praticas .newgrid select,
  .pg-admin-praticas .filtros input,.pg-admin-praticas .filtros select{width:100%}
}
.pg-rivalry-empresa .promptbox{
  width:100%;min-height:180px;resize:vertical;padding:14px 16px;border:1px solid var(--line);
  border-radius:var(--r-sm);background:var(--fill-1);color:var(--text);
  font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12.5px;line-height:1.6;
}
.pg-rivalry-empresa .newgrid textarea{width:100%;min-width:100%}
.pg-rivalry-empresa .newgrid .f.x1{flex-basis:100%}
.pg-rivalry-empresa .ut tr.eu td{background:var(--fill-gold)}
.pg-rivalry-empresa .var{display:inline-block;margin-left:6px;font-size:11px;font-weight:700}
.pg-rivalry-empresa .var.up{color:var(--ok-fg)}
.pg-rivalry-empresa .var.down{color:var(--bad-fg)}
.pg-rivalry-empresa .table-scroll > table{min-width:900px}
.pg-rivalry-empresa .extras{margin-top:6px}
.pg-rivalry-empresa .extras summary{font-size:11.5px;font-weight:650;color:var(--text-muted);cursor:pointer}
.pg-rivalry-empresa .extras summary:hover{color:var(--text)}
.pg-rivalry-empresa .extras dl{display:grid;grid-template-columns:auto 1fr;gap:3px 12px;margin:8px 0 0;
  font-size:12px;line-height:1.45}
.pg-rivalry-empresa .extras dt{font-weight:700;color:var(--text-muted);white-space:nowrap}
.pg-rivalry-empresa .extras dd{margin:0;color:var(--text);overflow-wrap:anywhere}
.pg-rivalry-empresa .sub{font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);margin:0 0 10px}
.pg-rivalry-empresa .estado{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:13.5px;color:var(--text-muted)}
.pg-rivalry-empresa .ut.revisar td{vertical-align:middle;overflow-wrap:anywhere}
.pg-rivalry-empresa .guiabox, .pg-rivalry-empresa .promptbox{overflow-wrap:anywhere}
.pg-rivalry-empresa tr.editando td{background:var(--fill-1)}
.pg-rivalry-empresa .itemform{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end;padding:6px 0 10px}
.pg-rivalry-empresa .itemform .f{display:flex;flex-direction:column;gap:5px;min-width:180px}
.pg-rivalry-empresa .itemform .f.sm{min-width:110px}
.pg-rivalry-empresa .itemform .f.x1{flex-basis:100%}
.pg-rivalry-empresa .itemform label{font-size:11px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em}
.pg-rivalry-empresa .itemform label.chk{text-transform:none;letter-spacing:0;font-size:13.5px;color:var(--text);display:flex;align-items:center;gap:8px;padding-bottom:9px}
.pg-rivalry-empresa .itemform input[type=text]{padding:9px 11px;border:1px solid var(--line);border-radius:9px;
  font-size:14px;font-family:inherit;background:var(--field-bg);color:var(--text);width:100%}
.pg-rivalry-empresa .itemform .help{font-size:11.5px;color:var(--text-muted);line-height:1.45}
/* tela:admin-praticas fim */

/* ==========================================================================
   9. PORTAL DO CLIENTE (mesmo visual da área interna)
   ========================================================================== */
.portal{background:var(--bg)}

/* Contagem no item do menu (malhas em aberto) */
.portal .sidebar .cbadge{flex:none;margin-left:auto;min-width:18px;height:16px;padding:0 5px;display:inline-flex;align-items:center;justify-content:center;background:rgba(232,140,140,.22);color:#F6C9C9;font-size:10px;font-weight:700;line-height:1}
.portal .sidebar .sb-item > span:not(.cbadge){flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.portal .sb-user .who b,.portal .sb-user .who > span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.portal .topbar .in{max-width:1140px;margin:0 auto;padding:0 var(--s-5)}
.portal .topbar .in > .theme-toggle{margin-left:auto}
.portal .cbadge{display:inline-block;background:rgba(196,71,71,.16);color:var(--bad-fg);border-radius:var(--r-pill);font-size:10px;font-weight:700;padding:1px 7px;margin-left:var(--s-1);vertical-align:middle}
.portal .cpanel[hidden]{display:none}
.portal .table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0 -4px;padding:0 4px}
.portal .table-scroll > table{min-width:560px}
.portal .lead h1{font-size:clamp(1.6rem,1.25rem + 1.2vw,2.15rem);margin:6px 0 var(--s-2);letter-spacing:-.03em;font-weight:700;color:var(--text);line-height:1.15}
.portal .lead p{color:var(--text-muted);margin:0 0 22px;max-width:640px;font-size:var(--fs-base)}
.portal .aviso-overlay{position:fixed;inset:0;background:rgba(20,26,27,.45);display:flex;align-items:center;justify-content:center;z-index:9999;padding:18px}
.portal .aviso-modal{background:var(--surface-solid);max-width:460px;width:100%;border-radius:var(--r-md);box-shadow:var(--float-shadow);overflow:hidden}
.portal .aviso-corpo{padding:22px 22px 6px}
.portal .aviso-eyebrow{font-size:var(--fs-xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--info-fg);margin-bottom:var(--s-2)}
.portal .aviso-titulo{font-size:20px;font-weight:700;color:var(--text);margin-bottom:var(--s-2);letter-spacing:-.02em}
.portal .aviso-img{width:100%;border-radius:var(--r-sm);margin:var(--s-2) 0}
.portal .aviso-texto{font-size:14px;color:var(--text);line-height:1.5;white-space:pre-wrap}
.portal .aviso-rodape{padding:14px 20px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:10px}
@media(max-width:760px){
  .portal .topbar .in{padding:0 14px}
  .portal .topbar .brand span{display:none}
  .portal .shell-bar{padding-left:var(--s-2);gap:var(--s-2)}
  .portal .shell-bar .brand span{display:none}
  .portal .wrap{padding:16px 14px 56px}
  .portal .foot{padding:8px 14px calc(24px + env(safe-area-inset-bottom,0px));font-size:11px}
  .portal .lead h1{font-size:1.45rem}
  .pg-area-visao-geral .filtros{flex-direction:column;align-items:stretch}
  .pg-area-visao-geral .filtros .f,.pg-area-visao-geral .mm{width:100%}
  .pg-area-visao-geral .mm select{flex:1}
  .pg-area-visao-geral .filtros .btn{width:100%}
  .pg-area-visao-geral .ph{flex-direction:column;align-items:stretch}
  /* em coluna, o flex-basis do .ph-main vira altura e abre um vão enorme */
  .portal .ph{flex-direction:column;align-items:stretch}
  .portal .ph-main{flex:0 1 auto}
  .portal .ph-side{justify-content:stretch}
  .pg-area-visao-geral .ph-side .btn{width:100%}
  .pg-area-visao-geral .aviso-malha{flex-direction:column;align-items:flex-start}
}

/* tela:area-visao-geral inicio */
.pg-area-visao-geral .status-line{margin:-8px 0 18px}
.pg-area-visao-geral .atalhos{list-style:none;margin:0;padding:0}
.pg-area-visao-geral .atalhos li{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid var(--line)}
.pg-area-visao-geral .atalhos li:last-child{border-bottom:0}
.pg-area-visao-geral .atalhos b{display:block;font-size:var(--fs-base);font-weight:650;color:var(--text);margin-bottom:3px}
.pg-area-visao-geral .atalhos span{font-size:13px;color:var(--text-muted);line-height:1.45}
.pg-area-visao-geral .atalhos a{flex:0 0 auto;font-size:var(--fs-sm);font-weight:650;color:var(--link)}
.pg-area-visao-geral .aviso-malha{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.pg-area-visao-geral .charts{display:flex;flex-wrap:wrap;gap:var(--s-5);margin:0 0 var(--s-5);padding-top:var(--s-4);border-top:1px solid var(--line)}
.pg-area-visao-geral .chart{flex:1 1 280px;min-width:0}
.pg-area-visao-geral .chart h3{margin:0 0 14px;font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);font-weight:700}
.pg-area-visao-geral .bars{display:flex;align-items:flex-end;gap:7px;padding-top:18px;overflow-x:auto}
.pg-area-visao-geral .col{flex:1 0 auto;min-width:30px;display:flex;flex-direction:column;align-items:center}
.pg-area-visao-geral .barwrap{height:120px;width:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center}
.pg-area-visao-geral .vl{font-size:9px;color:var(--text-muted);margin-bottom:4px;white-space:nowrap;line-height:1}
.pg-area-visao-geral .bar{width:62%;max-width:30px;min-height:3px;border-radius:4px 4px 0 0;background:var(--gold)}
.pg-area-visao-geral .bar.navy{background:var(--navy)}
.pg-area-visao-geral .bar.teal{background:var(--teal)}
.pg-area-visao-geral .xl{font-size:10px;color:var(--text-muted);margin-top:7px;white-space:nowrap}
.pg-area-visao-geral .npd{font-size:11px;color:var(--text-muted)}
.pg-area-visao-geral .filtros{display:flex;gap:12px;flex-wrap:wrap;align-items:flex-end}
.pg-area-visao-geral .filtros .f{display:flex;flex-direction:column;gap:5px}
.pg-area-visao-geral .filtros label{font-size:11px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em}
.pg-area-visao-geral .mm{display:flex;gap:6px}
.pg-area-visao-geral .mm select{min-width:80px}
.pg-area-visao-geral .quick{margin-top:10px;display:flex;gap:8px;flex-wrap:wrap}
.pg-area-visao-geral .filtcard{margin-bottom:18px;padding-bottom:18px;border-bottom:1px solid var(--line)}
.pg-area-visao-geral .dividas-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:10px}
.pg-area-visao-geral .dividas-head h2{padding-bottom:0;border-bottom:0}
.pg-area-visao-geral .dividas-tot{font-size:13px;color:var(--text-muted)}
.pg-area-visao-geral .dividas-tot b{color:var(--bad-fg);font-size:15px}
.pg-area-visao-geral .dv .est{color:var(--warn-fg);font-size:10px;font-weight:700;margin-left:4px}
.pg-area-visao-geral .dv .tot-aprox{color:var(--bad-fg)}
.pg-area-visao-geral .dasvenc{font-size:10px;font-weight:700;margin-top:3px;white-space:nowrap}
.pg-area-visao-geral .dasvenc.emdia{color:var(--text-muted)}
.pg-area-visao-geral .dasvenc.venc{color:var(--bad-fg)}
.pg-area-visao-geral .dados-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px 24px;padding-top:4px}
.pg-area-visao-geral .lbl{font-size:11px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:4px}
.pg-area-visao-geral .val{font-weight:650;color:var(--text);line-height:1.4}
.pg-area-visao-geral .malhas{list-style:none;margin:0;padding:0}
.pg-area-visao-geral .malhas li{padding:14px 0 14px 12px;border-bottom:1px solid var(--line);border-left:3px solid var(--bad)}
.pg-area-visao-geral .malhas li.ok{border-left-color:var(--ok)}
.pg-area-visao-geral .malhas li:last-child{border-bottom:0}
/* tela:area-visao-geral fim */

/* tela:area-tributos inicio */
.pg-area-tributos .x1{padding:16px 24px!important}
.pg-area-tributos .x2{background:var(--gold)!important}
.pg-area-tributos .x3{background:var(--navy)!important}
.pg-area-tributos .x4{background:#2f9e8f!important}
/* tela:area-tributos fim */

/* tela:area-contratacao inicio */
.pg-area-contratacao .x1{padding:16px 24px!important}
/* tela:area-contratacao fim */

/* tela:area-societario inicio */
.pg-area-societario .x1{font-size:1rem!important;margin:0 0 12px!important}
.pg-area-societario .x2{padding:8px 0!important}
.pg-area-societario .x3{border-collapse:collapse!important}
.pg-area-societario .x4{padding:8px!important;border-bottom:2px solid var(--line)!important}
.pg-area-societario .x5{padding:8px!important}
/* tela:area-societario fim */

/* tela:area-praticas inicio */
.pg-area-praticas .agenda{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.pg-area-praticas .agenda li{
  display:flex;align-items:center;justify-content:space-between;gap:var(--s-4);flex-wrap:wrap;
  background:var(--surface-solid);border:1px solid var(--line);border-left:3px solid var(--gold);
  border-radius:var(--r-sm);padding:12px 16px;
}
.pg-area-praticas .agenda li.testando{border-left-color:var(--warn-fg)}
.pg-area-praticas .agenda .txt{min-width:0;flex:1 1 260px}
.pg-area-praticas .agenda .txt b{display:block;font-size:14.5px;color:var(--text);line-height:1.35}
.pg-area-praticas .agenda .txt span{display:block;font-size:12.5px;color:var(--text-muted);margin-top:2px}
.pg-area-praticas .agenda .acoes{display:flex;align-items:center;gap:6px;flex-wrap:wrap}

.pg-area-praticas .bib{list-style:none;margin:0;padding:0;display:grid;gap:10px;
  grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}
.pg-area-praticas .bib li{
  background:var(--surface-solid);border:1px solid var(--line);border-radius:var(--r-sm);
  padding:14px 16px;display:flex;flex-direction:column;gap:8px;
}
.pg-area-praticas .bib li.contra{border-style:dashed;background:var(--fill-1)}
.pg-area-praticas .bib .cab b{display:block;font-size:14.5px;color:var(--text);line-height:1.35}
.pg-area-praticas .bib .cat{display:block;font-size:11px;font-weight:700;letter-spacing:.06em;
  text-transform:uppercase;color:var(--text-muted);margin-top:3px}
.pg-area-praticas .bib .ev{margin:0;font-size:13px;line-height:1.5;color:var(--text)}
.pg-area-praticas .bib .ev span{display:block;font-size:10.5px;font-weight:700;letter-spacing:.07em;
  text-transform:uppercase;color:var(--info-fg);margin-bottom:2px}
.pg-area-praticas .bib .pq{margin:0;font-size:13px;line-height:1.5;color:var(--text-muted)}
.pg-area-praticas .bib .rodape{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}

.pg-area-praticas .intro-sec{font-size:14px;line-height:1.6;color:var(--text-muted);margin:0 0 var(--s-4);max-width:720px}
.pg-area-praticas .sec > .intro-sec:last-child{margin-bottom:0}
.pg-area-praticas .acts{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.pg-area-praticas .inl{display:inline-flex;align-items:center;margin:0}
.pg-area-praticas .ut .pill{margin-left:6px}
.pg-area-praticas .table-scroll > table{min-width:640px}
.pg-area-praticas .table-scroll .ut th{position:static}
@media(max-width:760px){
  .pg-area-praticas .obsform .f{min-width:100%}
  .pg-area-praticas .agenda li{align-items:stretch}
}
.pg-area-praticas .guia{
  margin:0 0 var(--s-5);padding:0 0 var(--s-5);border-bottom:1px solid var(--line);
}
.pg-area-praticas .guia p{margin:0 0 10px;font-size:15.5px;line-height:1.65;color:var(--text);max-width:760px;overflow-wrap:anywhere}
.pg-area-praticas .guia p:last-child{margin-bottom:0}
.pg-area-praticas .guia .caminho{margin:18px 0 0;max-width:760px}
.pg-area-praticas .guia .caminho .rot{
  display:block;font-size:11.5px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;
  color:var(--text-muted);margin:0 0 8px;
}
.pg-area-praticas .guia .caminho .notas{display:grid;gap:12px;margin:0}
.pg-area-praticas .guia .caminho .notas li{
  background:transparent;border:0;border-left:2px solid var(--line);border-radius:0;padding:0 0 0 14px;
}
.pg-area-praticas .guia .caminho .notas b{font-size:15px;font-weight:650}
.pg-area-praticas .guia .caminho .notas p{margin:4px 0 0;font-size:14.5px}
.pg-area-praticas .rivais li.oculto{display:none}
.pg-area-praticas .rivais.tudo li.oculto{display:block}
.pg-area-praticas .mais-rivais{
  margin-top:10px;border:1px solid var(--line);background:var(--surface-solid);color:var(--text);
  font:inherit;font-size:13.5px;font-weight:650;padding:10px 18px;border-radius:var(--r-pill);cursor:pointer;
}
.pg-area-praticas .mais-rivais:hover{background:var(--fill-1)}
/* veredito: a primeira coisa que o cliente lê */
.pg-area-praticas .veredito{
  display:flex;align-items:center;gap:var(--s-5);flex-wrap:wrap;
  background:var(--navy);color:#F8F6F1;border-radius:var(--r-md);padding:22px 26px;margin:0 0 var(--s-4);
}
html[data-theme="dark"] .pg-area-praticas .veredito{background:#101516;border:1px solid rgba(248,246,241,.09)}
.pg-area-praticas .veredito .pos{
  flex:0 0 auto;font-size:40px;font-weight:800;line-height:1;letter-spacing:-.04em;color:var(--gold);
  display:flex;align-items:baseline;gap:8px;
}
.pg-area-praticas .veredito .pos span{font-size:13px;font-weight:600;color:rgba(248,246,241,.55);letter-spacing:0}
.pg-area-praticas .veredito .txt{flex:1 1 260px;min-width:0}
.pg-area-praticas .veredito .txt b{display:block;font-size:17px;font-weight:700;line-height:1.3;color:#F8F6F1;overflow-wrap:anywhere}
.pg-area-praticas .veredito .txt span{display:block;margin-top:4px;font-size:13.5px;line-height:1.55;color:rgba(248,246,241,.62)}
.pg-area-praticas .veredito .delta{flex:0 0 auto;display:flex;flex-direction:column;gap:2px;text-align:right}
.pg-area-praticas .veredito .delta span{font-size:15px;font-weight:700}
.pg-area-praticas .veredito .delta .up{color:#7BD3A5}
.pg-area-praticas .veredito .delta .down{color:#E8A0A0}
.pg-area-praticas .veredito .delta small{font-size:11.5px;color:rgba(248,246,241,.5)}
.pg-area-praticas .veredito.simples .txt b{font-size:19px}

.pg-area-praticas .veredito + h2{margin-top:var(--s-5)}
.pg-area-praticas .resumo-semana{overflow-wrap:anywhere;
  margin:0 0 var(--s-4);font-size:15px;line-height:1.6;color:var(--text);
  border-left:3px solid var(--gold);padding-left:14px;
}

/* um cartão por empresa, no lugar da tabela */
.pg-area-praticas .rivais{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.pg-area-praticas .rivais li{
  background:var(--surface-solid);border:1px solid var(--line);border-radius:var(--r-sm);padding:16px 18px;
}
.pg-area-praticas .rivais li.eu{border-color:var(--gold);box-shadow:inset 3px 0 0 var(--gold)}
.pg-area-praticas .rivais .topo{display:flex;align-items:baseline;justify-content:space-between;gap:var(--s-4);flex-wrap:wrap}
.pg-area-praticas .rivais .quem{display:flex;align-items:baseline;gap:8px;min-width:0;flex:1 1 200px}
.pg-area-praticas .rivais .quem b{font-size:16px;font-weight:700;color:var(--text);line-height:1.3;overflow-wrap:anywhere}
.pg-area-praticas .rivais .cidade{flex:0 0 auto;font-size:12px;color:var(--text-muted);font-weight:600}
.pg-area-praticas .rivais .tag-voce{
  flex:0 0 auto;font-size:10.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;
  color:var(--info-fg);background:var(--fill-gold);border-radius:999px;padding:2px 9px;
}
.pg-area-praticas .rivais .num{flex:0 0 auto;display:flex;align-items:baseline;gap:14px;font-variant-numeric:tabular-nums}
.pg-area-praticas .rivais .num .nota{font-size:20px;font-weight:800;color:var(--text);letter-spacing:-.02em}
.pg-area-praticas .rivais .num .aval{font-size:13px;color:var(--text-muted);font-weight:600}
.pg-area-praticas .rivais .num em{font-style:normal;font-size:12px;font-weight:700;margin-left:5px}
.pg-area-praticas .rivais .num em.up{color:var(--ok-fg)}
.pg-area-praticas .rivais .num em.down{color:var(--bad-fg)}
.pg-area-praticas .rivais .fez{margin:8px 0 0;font-size:14.5px;line-height:1.55;color:var(--text);overflow-wrap:anywhere}
.pg-area-praticas .rivais .ver{
  display:inline-block;margin-top:8px;font-size:12.5px;font-weight:600;color:var(--text-muted);
}
.pg-area-praticas .rivais .ver:hover{color:var(--text)}

.pg-area-praticas .evolucao{margin-top:var(--s-5);background:var(--surface-solid);border:1px solid var(--line);
  border-radius:var(--r-sm);padding:16px 18px}
.pg-area-praticas .evolucao .tit{font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;
  color:var(--text-muted);margin-bottom:14px}
.pg-area-praticas .evolucao .barras{display:flex;align-items:flex-end;gap:8px;height:130px;overflow-x:auto;padding-bottom:2px}
.pg-area-praticas .evolucao .col{flex:0 0 56px;height:100%;display:flex;flex-direction:column;
  align-items:center;justify-content:flex-end;gap:4px}
.pg-area-praticas .evolucao .col .n{font-size:11.5px;font-weight:700;color:var(--text);font-variant-numeric:tabular-nums}
.pg-area-praticas .evolucao .col .b{width:100%;max-width:38px;min-height:3px;background:var(--fill-2);border-radius:4px 4px 0 0}
.pg-area-praticas .evolucao .col:last-child .b{background:var(--gold)}
.pg-area-praticas .evolucao .col .d{font-size:10.5px;color:var(--text-muted);font-variant-numeric:tabular-nums}
@media(max-width:760px){
  .pg-area-praticas .veredito{padding:18px 18px;gap:var(--s-3)}
  .pg-area-praticas .veredito .pos{font-size:34px}
  .pg-area-praticas .veredito .delta{text-align:left;flex:1 1 100%;flex-direction:row;gap:12px;align-items:baseline;flex-wrap:wrap}
  .pg-area-praticas .veredito .delta small{flex:1 1 100%}
  .pg-area-praticas .rivais .num{width:100%;margin-top:4px}
}
.pg-area-praticas .notas{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.pg-area-praticas .notas li{background:var(--surface-solid);border:1px solid var(--line);
  border-left:3px solid var(--gold);border-radius:0 var(--r-sm) var(--r-sm) 0;padding:14px 18px}
.pg-area-praticas .notas b{display:block;font-size:15px;color:var(--text);line-height:1.35;overflow-wrap:anywhere}
.pg-area-praticas .notas p{margin:6px 0 0;font-size:14px;line-height:1.6;color:var(--text-muted);overflow-wrap:anywhere}
/* tela:area-praticas fim */

/* tela:area-cmv inicio */
.pg-area-cmv .tabs{display:flex;gap:8px;margin-bottom:18px;flex-wrap:wrap}
.pg-area-cmv .tabbtn{border:1px solid var(--line);background:var(--surface-solid);color:var(--navy);font-weight:700;font-size:14px;padding:10px 18px;border-radius:10px;cursor:pointer}
.pg-area-cmv .tabbtn.on{background:var(--navy);color:#fff;border-color:var(--navy)}
.pg-area-cmv .tab{display:none}
.pg-area-cmv .tab.on{display:block}
.pg-area-cmv .row2{display:flex;gap:16px;flex-wrap:wrap}
.pg-area-cmv .col{flex:1 1 320px}
.pg-area-cmv .lbl{font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:5px;display:block}
.pg-area-cmv input.in,.pg-area-cmv select.in{width:100%;padding:10px 12px;border:1px solid var(--line);border-radius:9px;font-size:14px;background:var(--surface-solid);font-family:inherit}
.pg-area-cmv input.in:focus,.pg-area-cmv select.in:focus{outline:0;border-color:var(--blue);box-shadow:0 0 0 3px rgba(46,107,214,.15)}
.pg-area-cmv .num{text-align:right;font-variant-numeric:tabular-nums}
.pg-area-cmv table.gr{width:100%;border-collapse:collapse;font-size:13px}
.pg-area-cmv .gr th{text-align:left;font-size:10px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-weight:700;padding:8px 8px;border-bottom:2px solid var(--line)}
.pg-area-cmv .gr td{padding:6px 8px;border-bottom:1px solid var(--line);vertical-align:middle}
.pg-area-cmv .gr td.r{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.pg-area-cmv .gr input{width:100%;padding:7px 8px;border:1px solid var(--line);border-radius:7px;font-size:13px;font-family:inherit}
.pg-area-cmv .gr input.num{text-align:right}
.pg-area-cmv .pill{display:inline-block;font-size:11px;font-weight:800;padding:3px 10px;border-radius:999px}
.pg-area-cmv .pill.ok{background:#d6f3e1;color:#0f6b3a}
.pg-area-cmv .pill.warn{background:#fbeccd;color:#8a5a12}
.pg-area-cmv .pill.bad{background:#fbdcd9;color:#9b2c20}
.pg-area-cmv .big{font-size:30px;font-weight:800;color:var(--navy);line-height:1}
.pg-area-cmv .bigsub{font-size:12px;color:var(--muted);margin-top:4px}
.pg-area-cmv .kpi{flex:1 1 160px;background:var(--surface-solid);border:1px solid var(--line);border-radius:12px;padding:14px 16px}
.pg-area-cmv .kpi .v{font-size:20px;font-weight:800;color:var(--navy)}
.pg-area-cmv .kpi .l{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin-top:3px}
.pg-area-cmv .btn-mini{font-size:12px;font-weight:700;padding:7px 12px;border-radius:8px;border:1px solid var(--line);background:var(--surface-solid);color:var(--navy);cursor:pointer}
.pg-area-cmv .btn-mini:hover{background:#f5f8fc;border-color:var(--blue)}
.pg-area-cmv .btn-mini.danger{color:var(--bad);border-color:#f1c7c7}
.pg-area-cmv .btn-mini.danger:hover{background:#fdeeee}
.pg-area-cmv .aviso{background:#eef3fc;border:1px solid #cfe0fb;border-radius:10px;padding:11px 14px;font-size:12.5px;color:#2b4a7a;line-height:1.45;margin-top:10px}
.pg-area-cmv .fcard{border:1px solid var(--line);border-radius:12px;padding:14px 16px;margin-bottom:10px}
.pg-area-cmv .fcard h4{margin:0 0 2px;font-size:15px;color:var(--navy)}
.pg-area-cmv .fmeta{font-size:12px;color:var(--muted)}
.pg-area-cmv .frow{display:flex;gap:14px;flex-wrap:wrap;align-items:center;margin-top:8px}
.pg-area-cmv .frow .it{font-size:13px}
.pg-area-cmv .frow .it b{color:var(--navy)}
.pg-area-cmv .saved{font-size:12px;color:#0f6b3a;font-weight:700;margin-left:8px}
.pg-area-cmv .bars{display:flex;align-items:flex-end;gap:8px;padding-top:18px;overflow-x:auto;position:relative}
.pg-area-cmv .colb{flex:1 0 auto;min-width:34px;display:flex;flex-direction:column;align-items:center}
.pg-area-cmv .barwrap{height:110px;width:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center}
.pg-area-cmv .vl{font-size:9px;color:var(--muted);margin-bottom:4px}
.pg-area-cmv .bar{width:60%;max-width:30px;min-height:3px;border-radius:5px 5px 0 0}
.pg-area-cmv .xl{font-size:10px;color:var(--muted);margin-top:6px}
.pg-area-cmv .x1{flex:0 1 200px!important}
.pg-area-cmv .x2{flex:0 1 180px!important}
.pg-area-cmv .x3{width:90px!important}
.pg-area-cmv .x4{width:80px!important}
.pg-area-cmv .x5{width:36px!important}
.pg-area-cmv .x6{flex:0 1 220px!important}
/* tela:area-cmv fim */

/* tela:area-construtora inicio */
.pg-area-construtora .x1{flex:0 1 220px!important}
.pg-area-construtora .x2{flex:0 1 150px!important}
.pg-area-construtora .x3{flex:0 1 280px!important}
/* tela:area-construtora fim */

/* tela:area-incorporadora inicio */
.pg-area-incorporadora .x1{width:90px!important}
.pg-area-incorporadora .x2{width:130px!important}
.pg-area-incorporadora .x3{width:36px!important}
.pg-area-incorporadora .x4{flex:0 1 280px!important}
/* tela:area-incorporadora fim */

/* tela:area-hotelaria inicio */
.pg-area-hotelaria .x1{flex:0 1 130px!important}
.pg-area-hotelaria .x2{flex:0 1 120px!important}
.pg-area-hotelaria .x3{flex:0 1 280px!important}
/* tela:area-hotelaria fim */

/* tela:publico inicio */
.publico *{box-sizing:border-box}
html,body{min-height:100%}
body{margin:0;color:var(--text);font-family:var(--font);font-size:var(--fs-body);font-weight:450;line-height:1.65;background:var(--bg);-webkit-font-smoothing:antialiased;transition:background 200ms var(--ease), color 200ms var(--ease)}
.publico a{color:var(--link);text-decoration:none}
.publico a:focus-visible,.publico button:focus-visible,.publico input:focus-visible{outline:2px solid var(--text);outline-offset:3px}
.publico .nums{font-variant-numeric:tabular-nums}
.publico .site-header{position:sticky;top:0;z-index:40;height:64px;background:var(--bg)}
.publico .site-header .in{width:100%;max-width:none;margin:0;padding:0 32px;height:100%;display:flex;align-items:center;gap:16px}
.publico .site-header .brand{font-weight:700;font-size:16px;letter-spacing:-.02em;color:var(--text)}
.publico .site-header .brand span{font-weight:450;color:var(--text-muted);margin-left:8px;font-size:14px}
.publico .theme-toggle{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:0;cursor:pointer;margin-left:auto;border-radius:var(--r-pill);background:var(--fill-1);color:var(--text);font-family:inherit;transition:background 200ms var(--ease)}
.publico .theme-toggle:hover{background:var(--fill-2)}
.publico .theme-toggle svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}
.publico .theme-toggle .ico-sun{display:none}
html[data-theme="dark"] .publico .theme-toggle .ico-moon{display:none}
html[data-theme="dark"] .publico .theme-toggle .ico-sun{display:block}
.publico .portal{min-height:calc(100vh - 64px);display:flex;flex-direction:column}
.publico .portal-inner{flex:1;width:100%;max-width:none;margin:0;padding:48px 32px;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:0 32px;align-items:center;align-content:center}
.publico .portal-hero{grid-column:1 / span 7;margin:0;padding:0;background:transparent;border:0}
.publico .portal-hero .name{margin:0;font-size:var(--fs-h1);font-weight:700;letter-spacing:-.03em;line-height:1.1;color:var(--text);text-wrap:balance}
.publico .portal-hero .name span{font-weight:450;color:var(--text-muted)}
.publico .portal-hero .tagline{margin:14px 0 0;max-width:22em;font-size:var(--fs-body);font-weight:450;line-height:1.55;color:var(--text-muted);text-wrap:pretty}
.publico .portal-hero .cta-row{display:flex;flex-wrap:wrap;align-items:center;gap:18px;margin-top:28px}
.publico .portal-hero .btn-primary{display:inline-flex;align-items:center;justify-content:center;padding:14px 28px;border-radius:var(--r-pill);border:0;background:var(--btn-bg);color:var(--btn-fg);font-family:inherit;font-size:15px;font-weight:650;letter-spacing:-.01em;cursor:pointer;transition:background 200ms var(--ease), color 200ms var(--ease)}
.publico .portal-hero .btn-primary:hover{background:var(--btn-hover);color:var(--btn-fg)}
.publico .portal-hero .btn-text{font-size:15px;font-weight:500;color:var(--text);border-bottom:1.5px solid transparent;padding-bottom:1px;transition:border-color 200ms var(--ease), color 200ms var(--ease)}
.publico .portal-hero .btn-text:hover{border-bottom-color:var(--gold);color:var(--text)}
.publico .portal-card{grid-column:8 / span 5;max-width:480px;justify-self:end;width:100%;background:var(--fill-1);border:0;border-radius:var(--r-lg);box-shadow:none;overflow:hidden;margin:0;padding:8px;display:flex;flex-direction:column;gap:8px}
.publico .ptabs{display:grid;grid-template-columns:1fr 1fr 1fr;gap:4px;padding:4px;margin:0;background:var(--fill-2);border-radius:var(--r-pill)}
.publico .ptabs a{text-align:center;padding:10px 8px;border-radius:var(--r-pill);font-size:13px;font-weight:500;color:var(--text-muted);transition:color 200ms var(--ease), background 200ms var(--ease), box-shadow 200ms var(--ease)}
.publico .ptabs a:hover{color:var(--text)}
.publico .ptabs a.on{color:var(--text);background:var(--surface-solid);font-weight:650;box-shadow:var(--float-shadow)}
.publico .ptabs a.on::after{display:none}
.publico .ppanel{margin:0;padding:24px;background:transparent;border-radius:var(--r-md)}
.publico .ppanel h1{margin:0 0 24px;font-size:1.25rem;font-weight:650;letter-spacing:-.02em;line-height:1.2;color:var(--text);text-wrap:balance}
.publico .ppanel .sub{margin:0 0 24px;color:var(--text-muted);font-size:15px;line-height:1.65;text-wrap:pretty}
.publico .ppanel form{display:flex;flex-direction:column;gap:4px}
.publico .erro{background:rgba(196,71,71,.08);border:0;border-radius:var(--r-sm);color:#8f2e2e;padding:12px 16px;margin-bottom:16px;font-size:14px;font-weight:500}
html[data-theme="dark"] .publico .erro{color:#f0a8a0;background:rgba(196,71,71,.16)}
.publico label.fld{display:block;margin:0 0 12px}
.publico label.fld .lb{display:block;margin-bottom:8px;font-size:13px;font-weight:600;color:var(--text)}
.publico label.fld .help{display:block;margin-top:8px;font-size:13px;color:var(--text-muted);font-weight:450;line-height:1.5}
.publico input[type=text],.publico input[type=password]{width:100%;padding:13px 15px;border:1px solid var(--field-border);border-radius:var(--r-sm);font-size:15px;font-weight:500;color:var(--text);background:var(--field-bg);font-family:inherit;font-variant-numeric:tabular-nums;box-shadow:0 1px 0 rgba(32,40,42,0.03);transition:border-color 200ms var(--ease), box-shadow 200ms var(--ease)}
html[data-theme="dark"] .publico input[type=text],html[data-theme="dark"] .publico input[type=password]{box-shadow:inset 0 1px 0 rgba(255,255,255,0.04)}
.publico input[type=text]::placeholder{color:var(--field-placeholder);opacity:1;font-weight:450}
.publico input[type=text]:hover,.publico input[type=password]:hover{border-color:var(--field-border-hover)}
.publico input[type=text]:focus,.publico input[type=password]:focus{outline:none;border-color:var(--gold);background:var(--field-bg);box-shadow:0 0 0 3px var(--field-ring)}
.publico .btn{display:inline-flex;align-items:center;justify-content:center;width:100%;margin-top:12px;padding:14px 28px;border-radius:var(--r-pill);border:0;background:var(--btn-bg);color:var(--btn-fg);font-family:inherit;font-size:15px;font-weight:650;cursor:pointer;box-shadow:none;transition:background 200ms var(--ease), color 200ms var(--ease)}
.publico .btn:hover{background:var(--btn-hover);color:var(--btn-fg)}
.publico .btn:disabled{opacity:.65;cursor:wait}
.publico .portal-foot{margin:0;padding:20px 32px;background:transparent;border-radius:0;border-top:1px solid var(--line);font-size:14px;font-weight:450;color:var(--text-muted);font-variant-numeric:tabular-nums;line-height:1.5}
@media(max-width:900px){
.publico .portal-inner{display:block;padding-top:40px;padding-bottom:40px}
.publico .portal-hero{margin-bottom:40px}
.publico .portal-card{max-width:none;justify-self:stretch}
.publico .site-header .brand span{display:none}}
@media (prefers-reduced-motion:reduce){.publico *,.publico *::before,.publico *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* Validar documento (aba Documento) */
.publico .drop{position:relative;display:block;cursor:pointer;margin-top:2px}
.publico .drop input{position:absolute;inset:0;opacity:0;cursor:pointer;z-index:2}
.publico .drop .box{background:var(--fill-2);border:0;border-radius:var(--r-sm);padding:28px 20px;text-align:center;transition:background 200ms var(--ease)}
.publico .drop:hover .box,.publico .drop.over .box{background:var(--fill-gold)}
.publico .drop .tt{font-weight:650;font-size:15px;color:var(--text);margin-bottom:6px}
.publico .drop .ds{font-size:14px;color:var(--text-muted);line-height:1.5;font-weight:450}
.publico .fname{margin-top:12px;font-size:13px;font-weight:600;color:var(--text);display:none;font-variant-numeric:tabular-nums}
.publico .fname.show{display:block}
.publico .resultado{margin-top:16px;border-radius:var(--r-sm);padding:16px 18px;border:0}
.publico .resultado.ok{background:rgba(31,143,90,.10)}
.publico .resultado.bad{background:rgba(196,71,71,.10)}
.publico .resultado.warn{background:var(--fill-gold)}
.publico .resultado h2{margin:0 0 6px;font-size:16px;font-weight:650;color:var(--text);letter-spacing:-.01em}
.publico .resultado.ok h2{color:#14663c}
.publico .resultado.bad h2{color:#9b2c20}
.publico .resultado p{margin:0;font-size:14px;color:var(--text);line-height:1.55;font-weight:450}
.publico .resultado .meta{margin-top:14px;display:grid;gap:8px;padding:0;background:transparent;border-radius:0}
.publico .resultado .meta .row{display:flex;gap:10px;flex-wrap:wrap;font-size:13px}
.publico .resultado .meta .k{color:var(--text-muted);min-width:96px;font-weight:500}
.publico .resultado .meta .v{font-weight:650;color:var(--text);font-variant-numeric:tabular-nums}
.publico .howto{margin-top:20px;font-size:14px;color:var(--text-muted);line-height:1.6;padding:16px 18px;background:var(--fill-2);border-radius:var(--r-sm)}
.publico .howto b{color:var(--text);font-weight:650}
/* Primeiro acesso: popup para trocar a senha temporária */
.publico .senha-overlay{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;padding:18px;background:rgba(20,26,27,.45);backdrop-filter:blur(3px)}
.publico .senha-modal{width:100%;max-width:420px;padding:28px;background:var(--surface-solid);border-radius:var(--r-lg);box-shadow:var(--float-shadow)}
.publico .senha-modal h2{margin:0 0 8px;font-size:1.25rem;font-weight:650;letter-spacing:-.02em;color:var(--text)}
.publico .senha-modal .sub{margin:0 0 20px;font-size:14px;line-height:1.55;color:var(--text-muted)}
.publico .senha-sair{display:block;margin-top:14px;text-align:center;font-size:13px;color:var(--text-muted)}
/* Entrada no visual CEOCON (2026-10-27): tela inteira no chumbo com o fundo animado do menu,
   marca e contato à esquerda, cartão de acesso à direita; no celular tudo numa coluna */
body.publico{position:relative;min-height:100vh;background:var(--brand);color:#F8F6F1}
html[data-theme="dark"] body.publico{background:var(--brand-dark)}
body.publico::before{content:"";position:fixed;inset:0;background-image:radial-gradient(rgba(var(--acc2-rgb),.10) 1px,transparent 1.4px);background-size:24px 24px;-webkit-mask-image:radial-gradient(70% 70% at 70% 10%,#000,transparent 100%);mask-image:radial-gradient(70% 70% at 70% 10%,#000,transparent 100%);animation:sbPontos 60s linear infinite;pointer-events:none}
body.publico > .sb-fx{position:fixed;inset:0;overflow:hidden;pointer-events:none}
body.publico .sb-brilho{left:auto;right:-120px;top:-180px;width:560px;height:560px}
.publico > .theme-toggle{position:fixed;top:16px;right:16px;z-index:5;width:36px;height:36px;margin:0;border-radius:0;background:var(--surface-solid);color:var(--text);clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px)}
.publico > .theme-toggle:hover{background:var(--surface-solid);color:var(--acc-deep)}
.publico > .theme-toggle svg{width:17px;height:17px;stroke-width:1.8}
.publico .portal{position:relative;min-height:100vh}
.publico .portal-inner{max-width:1080px;margin:0 auto;min-height:100vh;padding:56px clamp(22px,5vw,60px) 32px;grid-template-columns:minmax(0,1fr) 400px;gap:0 clamp(40px,8vw,120px)}
.publico .portal-hero{grid-column:1}
.publico .portal-hero .name{font-size:clamp(34px,4.4vw,54px);font-weight:800;letter-spacing:-.4px;line-height:1.04;color:#fff}
.publico .portal-hero .name span{font-weight:400;color:rgba(255,255,255,.55)}
.publico .portal-hero .tagline{max-width:420px;margin-top:12px;font-size:15px;line-height:1.7;color:rgba(255,255,255,.75);text-wrap:balance}
.publico .portal-hero .tagline strong{font-weight:800;color:#fff}
.publico .portal-hero .cta-row{gap:8px;margin-top:22px}
.publico .portal-hero .btn-primary,.publico .portal-hero .btn-text{display:inline-flex;align-items:center;gap:8px;height:36px;padding:0 14px;border:0;border-radius:0;background:rgba(var(--acc2-rgb),.10);color:var(--acc2);font-size:12.5px;font-weight:700;clip-path:polygon(10px 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%,0 10px);transition:background .2s}
.publico .portal-hero .btn-primary:hover,.publico .portal-hero .btn-text:hover{background:rgba(var(--acc2-rgb),.2);color:var(--acc2);border:0}
.publico .portal-hero .cta-row svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.publico .portal-hero .portal-foot{margin:22px 0 0;padding:0;border:0;font-size:11.5px;color:rgba(255,255,255,.5)}
.publico .portal-card{grid-column:2;justify-self:stretch;max-width:400px;padding:22px 26px 26px;gap:0;border-radius:0;background:var(--surface-solid);color:var(--text);clip-path:polygon(18px 0,100% 0,100% calc(100% - 18px),calc(100% - 18px) 100%,0 100%,0 18px);animation:entraCartao .42s cubic-bezier(.16,.84,.44,1) both}
html[data-theme="dark"] .publico .portal-card{box-shadow:inset 0 3px 0 var(--acc)}
@keyframes entraCartao{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.publico .ptabs{display:flex;gap:0;padding:0;margin:-4px 0 18px;background:none;border-radius:0;border-bottom:1px solid var(--line)}
.publico .ptabs a{padding:7px 12px;margin-bottom:-1px;border-radius:0;border-bottom:2px solid transparent;font-size:12px;font-weight:600;color:var(--text-muted)}
.publico .ptabs a.on{background:none;box-shadow:none;color:var(--text);font-weight:600;border-bottom-color:var(--acc)}
.publico .ppanel{padding:0}
.publico .ppanel h1{margin:0 0 14px;font-size:22px;font-weight:800;letter-spacing:-.3px;line-height:1.15}
.publico .ppanel .sub{margin:-8px 0 16px;font-size:12.5px;line-height:1.55}
.publico label.fld{margin:0 0 12px}
.publico label.fld .lb{margin-bottom:6px;font-size:12px;font-weight:700}
.publico label.fld .help{margin-top:5px;font-size:11.5px}
.publico input[type=text],.publico input[type=password]{height:42px;padding:0 12px;border:0;border-radius:0;background:var(--fill-2);font-size:14px;box-shadow:none;clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px)}
html[data-theme="dark"] .publico input[type=text],html[data-theme="dark"] .publico input[type=password]{box-shadow:none}
.publico input[type=text]:focus,.publico input[type=password]:focus{background:var(--fill-gold);box-shadow:inset 0 -2px 0 var(--acc)}
.publico .btn{height:42px;margin-top:4px;padding:0 20px;border-radius:0;background:linear-gradient(135deg,var(--acc),var(--acc-deep));color:var(--acc-ink);font-size:13px;font-weight:700;clip-path:polygon(10px 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%,0 10px);transition:transform .2s cubic-bezier(.22,.68,.4,1),filter .2s}
.publico .btn:hover{background:linear-gradient(135deg,var(--acc),var(--acc-deep));color:var(--acc-ink);transform:translateY(-2px);filter:brightness(1.05)}
.publico .erro{padding:12px 15px;border-radius:10px;border:1px solid rgba(196,71,71,.28);font-size:12.5px}
.publico .drop .box{border-radius:0;background:transparent;border:1px dashed var(--field-border-hover)}
.publico .senha-overlay{background:rgba(20,26,27,.55)}
/* o recorte (clip-path) e a animação do cartão prendiam e cortavam o modal de senha, que fica dentro dele */
.publico .portal-card:has(.senha-overlay){clip-path:none;animation:none}
.publico .senha-modal{border-radius:0;padding:24px 26px;clip-path:polygon(18px 0,100% 0,100% calc(100% - 18px),calc(100% - 18px) 100%,0 100%,0 18px)}
.publico .senha-modal h2{font-size:22px;font-weight:800;letter-spacing:-.3px}
@media(max-width:860px){
  .publico .portal-inner{display:flex;flex-direction:column;align-items:center;gap:18px;padding-top:48px;text-align:center}
  .publico .portal-hero{margin:0}
  .publico .portal-hero .tagline{margin-left:auto;margin-right:auto;font-size:13.5px}
  .publico .portal-hero .cta-row{justify-content:center}
  .publico .portal-hero .portal-foot{display:none}
  .publico .portal-card{width:100%;text-align:left}
}
@media (prefers-reduced-motion:reduce){body.publico::before,.publico .portal-card{animation:none}}
/* tela:publico fim */

.pg-captura-nacional .exp-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--s-2);margin:0 0 var(--s-2)}
.pg-captura-nacional .exp-empresas{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:6px;max-height:260px;overflow:auto;padding:var(--s-2);border:1px solid var(--line);border-radius:var(--r-sm)}
.pg-captura-nacional .exp-emp{display:flex;align-items:flex-start;gap:10px;padding:9px 11px;border-radius:var(--r-xs);cursor:pointer;line-height:1.3}
.pg-captura-nacional .exp-emp:hover{background:var(--fill-1)}
.pg-captura-nacional .exp-emp input{margin-top:2px;flex:0 0 auto}
.pg-captura-nacional .exp-emp b{display:block;font-size:13.5px;font-weight:600;color:var(--text)}
.pg-captura-nacional .exp-emp small{display:block;font-size:12px;color:var(--text-muted)}
.pg-captura-nacional .exp-emp.sem-doc{opacity:.45;cursor:not-allowed}
.pg-captura-nacional .exp-emp.marcada{background:var(--fill-gold)}

/* ----------------------------------------------------------------------------
   Barras de rolagem (global): finas, discretas, sem setas
   -------------------------------------------------------------------------- */
:root{--sb-thumb:rgba(32,40,42,.38);--sb-thumb-hover:rgba(32,40,42,.6)}
html[data-theme="dark"]{--sb-thumb:rgba(248,246,241,.3);--sb-thumb-hover:rgba(248,246,241,.5)}
*{scrollbar-width:thin;scrollbar-color:var(--sb-thumb) transparent}
*::-webkit-scrollbar{width:8px;height:8px}
*::-webkit-scrollbar-track,*::-webkit-scrollbar-corner{background:transparent}
*::-webkit-scrollbar-button{display:none;width:0;height:0}
*::-webkit-scrollbar-thumb{background:var(--sb-thumb);border-radius:999px;border:2px solid transparent;background-clip:padding-box}
*::-webkit-scrollbar-thumb:hover{background:var(--sb-thumb-hover);background-clip:padding-box}
*::-webkit-scrollbar-thumb:active{background:var(--acc-deep);background-clip:padding-box}
.sidebar *::-webkit-scrollbar-thumb{background:rgba(248,246,241,.3);background-clip:padding-box}
.sidebar *::-webkit-scrollbar-thumb:hover{background:rgba(var(--acc2-rgb),.45);background-clip:padding-box}

/* tela:sazonalidade inicio */
/* Admin: a tabela de revisão. A pressão é a coluna que decide o aviso. */
.pg-admin-sazonalidade .table-scroll > table{min-width:1040px}
.pg-admin-sazonalidade .table-scroll > table.vendas{min-width:760px}
.pg-admin-sazonalidade .ut tr.quente td{background:var(--fill-gold)}
.pg-admin-sazonalidade .ut.revisar td{vertical-align:middle;overflow-wrap:anywhere}
.pg-admin-sazonalidade .promptbox{
  width:100%;min-height:200px;resize:vertical;padding:14px 16px;border:1px solid var(--line);
  border-radius:var(--r-sm);background:var(--fill-1);color:var(--text);overflow-wrap:anywhere;
  font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12.5px;line-height:1.6;
}
.pg-admin-sazonalidade .guiabox{
  width:100%;resize:vertical;padding:12px 14px;border:1px solid var(--line);border-radius:var(--r-sm);
  background:var(--field-bg);color:var(--text);font-family:inherit;font-size:14.5px;line-height:1.6;
  overflow-wrap:anywhere;
}
.pg-admin-sazonalidade .newgrid textarea{width:100%;min-width:100%}
.pg-admin-sazonalidade .newgrid .f.x1{flex-basis:100%}
.pg-admin-sazonalidade .estado{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:13.5px;color:var(--text-muted)}
.pg-admin-sazonalidade tr.editando td{background:var(--fill-1)}
.pg-admin-sazonalidade .itemform{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end;padding:6px 0 10px}
.pg-admin-sazonalidade .itemform .f{display:flex;flex-direction:column;gap:5px;min-width:180px}
.pg-admin-sazonalidade .itemform .f.sm{min-width:100px}
.pg-admin-sazonalidade .itemform .f.x1{flex-basis:100%}
.pg-admin-sazonalidade .var{display:inline-block;margin-left:6px;font-size:11px;font-weight:700}
.pg-admin-sazonalidade .var.up{color:var(--ok-fg)}
.pg-admin-sazonalidade .var.down{color:var(--bad-fg)}
.pg-admin-sazonalidade .pr{display:inline-block;font-size:11px;font-weight:700;padding:3px 9px;
  border-radius:999px;background:var(--fill-2);color:var(--text-muted);white-space:nowrap}
.pg-admin-sazonalidade .pr.palta{background:rgba(196,125,24,.16);color:var(--warn-fg)}
.pg-admin-sazonalidade .pr.pmuitoalta{background:rgba(196,71,71,.16);color:var(--bad-fg)}
.pg-admin-sazonalidade .ph-side select{padding:9px 11px;border:1px solid var(--line);border-radius:9px;
  font-size:13.5px;font-family:inherit;background:var(--field-bg);color:var(--text)}

/* Cliente: uma data por cartão, da mais próxima para a mais distante. */
.pg-area-sazonalidade .guia{margin:0 0 var(--s-5);padding:0 0 var(--s-5);border-bottom:1px solid var(--line)}
.pg-area-sazonalidade .guia p{margin:0 0 10px;font-size:15.5px;line-height:1.65;color:var(--text);max-width:760px;overflow-wrap:anywhere}
.pg-area-sazonalidade .guia p:last-child{margin-bottom:0}
.pg-area-sazonalidade .guia .caminho{margin:18px 0 0;max-width:760px}
.pg-area-sazonalidade .guia .caminho .rot{display:block;font-size:11.5px;font-weight:700;letter-spacing:.09em;
  text-transform:uppercase;color:var(--text-muted);margin:0 0 8px}
.pg-area-sazonalidade .guia .caminho .notas{list-style:none;padding:0;display:grid;gap:12px;margin:0}
.pg-area-sazonalidade .guia .caminho .notas li{border-left:2px solid var(--line);padding:0 0 0 14px}
.pg-area-sazonalidade .guia .caminho .notas b{font-size:15px;font-weight:650}
.pg-area-sazonalidade .guia .caminho .notas p{margin:4px 0 0;font-size:14.5px;color:var(--text-muted);line-height:1.55}
.pg-area-sazonalidade .intro-sec{font-size:14px;line-height:1.6;color:var(--text-muted);margin:0;max-width:720px}
.pg-area-sazonalidade .resumo-semana{overflow-wrap:anywhere;margin:0 0 var(--s-4);font-size:15px;
  line-height:1.6;color:var(--text);border-left:3px solid var(--gold);padding-left:14px}

.pg-area-sazonalidade .datas{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.pg-area-sazonalidade .datas li{
  background:var(--surface-solid);border:1px solid var(--line);border-left:3px solid var(--line);
  border-radius:var(--r-sm);padding:14px 18px;
}
.pg-area-sazonalidade .datas li.pmedia{border-left-color:var(--gold)}
.pg-area-sazonalidade .datas li.palta{border-left-color:var(--warn-fg)}
.pg-area-sazonalidade .datas li.pmuitoalta{border-left-color:var(--bad-fg)}
.pg-area-sazonalidade .datas .topo{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap}
.pg-area-sazonalidade .datas .quando b{font-size:17px;font-weight:700;color:var(--text);letter-spacing:-.01em}
.pg-area-sazonalidade .datas .quando .rotulo{display:block;font-size:13px;color:var(--text-muted);margin-top:2px}
.pg-area-sazonalidade .datas .pr{flex:0 0 auto;font-size:11px;font-weight:700;letter-spacing:.06em;
  text-transform:uppercase;padding:4px 11px;border-radius:999px;background:var(--fill-2);color:var(--text-muted)}
.pg-area-sazonalidade .datas li.palta .pr{background:rgba(196,125,24,.16);color:var(--warn-fg)}
.pg-area-sazonalidade .datas li.pmuitoalta .pr{background:rgba(196,71,71,.16);color:var(--bad-fg)}
.pg-area-sazonalidade .datas .motivo{margin:10px 0 0;font-size:14px;line-height:1.55;color:var(--text)}
.pg-area-sazonalidade .datas .cidades{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:6px}
.pg-area-sazonalidade .datas .cidades li{
  background:transparent;border:0;border-radius:0;padding:0;display:flex;align-items:baseline;
  gap:10px;flex-wrap:wrap;font-size:13px;color:var(--text-muted);
}
.pg-area-sazonalidade .datas .cidades .cid{font-weight:650;color:var(--text);min-width:130px}
.pg-area-sazonalidade .datas .cidades .num{font-variant-numeric:tabular-nums;font-weight:700}
.pg-area-sazonalidade .datas .cidades .num.up{color:var(--warn-fg)}
.pg-area-sazonalidade .datas .obs{margin:12px 0 0;font-size:13px;line-height:1.5;color:var(--text-muted);
  border-top:1px solid var(--line);padding-top:10px}
.pg-area-sazonalidade .rodape-coleta{margin:var(--s-4) 0 0;font-size:12.5px;line-height:1.55;color:var(--text-muted);max-width:720px}
@media(max-width:560px){
  .pg-area-sazonalidade .datas .cidades .cid{min-width:100%}
}
/* tela:sazonalidade fim */

/* tela:sazonalidade calendario inicio */
.sazocal .meses{display:grid;gap:18px;grid-template-columns:repeat(auto-fill,minmax(270px,1fr))}
.sazocal .mes{background:var(--surface-solid);border:1px solid var(--line);border-radius:var(--r-sm);padding:12px 12px 14px}
.sazocal .mes .tit{font-size:13px;font-weight:700;letter-spacing:.02em;color:var(--text);margin:0 0 10px;text-align:center}
.sazocal .dows{display:grid;grid-template-columns:repeat(7,1fr);gap:3px;margin:0 0 5px}
.sazocal .dows span{text-align:center;font-size:10px;font-weight:700;letter-spacing:.05em;color:var(--text-muted)}
.sazocal .dias{display:grid;grid-template-columns:repeat(7,1fr);gap:3px}
.sazocal .dia{position:relative;aspect-ratio:1;border:1px solid transparent;border-radius:7px;
  background:var(--fill-1);color:var(--text);font:inherit;padding:0;cursor:pointer;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;line-height:1}
.sazocal .dia.vazio{background:transparent;border-color:transparent;cursor:default}
.sazocal .dia .n{font-size:12px;font-weight:650}
.sazocal .dia.pbaixa{background:var(--fill-1);color:var(--text-muted)}
.sazocal .dia.pmedia{background:rgba(204,159,45,.28)}
.sazocal .dia.palta{background:rgba(196,125,24,.30);color:var(--text)}
.sazocal .dia.pmuitoalta{background:rgba(196,71,71,.32);color:var(--text)}
.sazocal .dia.passado{opacity:.38}
.sazocal .dia.hoje{border-color:var(--text);box-shadow:0 0 0 1px var(--text) inset}
.sazocal .dia:hover:not(.vazio){border-color:var(--text-muted)}
/* dia sem pesquisa: a cor vem só do calendário */
.sazocal .dia.so-cal{border:1px dashed var(--text-muted)}

/* balão com a faixa por extenso, os motivos e a origem do número */
.sazocal .balao{position:absolute;bottom:calc(100% + 7px);left:50%;transform:translateX(-50%);
  z-index:40;width:232px;padding:10px 12px;border-radius:10px;background:var(--navy);color:#F8F6F1;
  box-shadow:var(--float-shadow);text-align:left;line-height:1.45;
  opacity:0;visibility:hidden;transition:opacity .12s ease;pointer-events:none}
html[data-theme="dark"] .sazocal .balao{background:#101516;border:1px solid rgba(248,246,241,.12)}
.sazocal .dia:hover .balao,.sazocal .dia:focus-visible .balao,.sazocal .dia.aberto .balao{opacity:1;visibility:visible}
.sazocal .balao b{display:block;font-size:14px;font-weight:700;color:var(--gold)}
.sazocal .balao em{display:block;font-style:normal;font-size:11px;font-weight:600;
  color:rgba(248,246,241,.6);margin:1px 0 6px;letter-spacing:.02em}
.sazocal .balao ul{list-style:none;margin:0;padding:0;display:grid;gap:3px}
.sazocal .balao li{font-size:11.5px;color:rgba(248,246,241,.9);padding-left:9px;position:relative}
.sazocal .balao li::before{content:"";position:absolute;left:0;top:6px;width:3px;height:3px;
  border-radius:50%;background:var(--gold)}
.sazocal .balao .origem{display:block;margin-top:7px;padding-top:6px;border-top:1px solid rgba(248,246,241,.14);
  font-size:10.5px;color:rgba(248,246,241,.6)}
.sazocal .balao .sempeso{display:block;margin-top:6px;font-size:10.5px;color:rgba(248,246,241,.75)}
/* nas duas primeiras colunas o balão encosta na borda, então ele desencosta */
.sazocal .dias > .dia:nth-child(7n+1) .balao,.sazocal .dias > .dia:nth-child(7n+2) .balao{left:0;transform:none}
.sazocal .dias > .dia:nth-child(7n) .balao,.sazocal .dias > .dia:nth-child(7n+6) .balao{left:auto;right:0;transform:none}

.sazocal .legenda{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:14px}
.sazocal .legenda .lg{font-size:10.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;
  padding:3px 10px;border-radius:999px;color:var(--text-muted);background:var(--fill-1)}
.sazocal .legenda .lg.pmedia{background:rgba(204,159,45,.28);color:var(--info-fg)}
.sazocal .legenda .lg.palta{background:rgba(196,125,24,.22);color:var(--warn-fg)}
.sazocal .legenda .lg.pmuitoalta{background:rgba(196,71,71,.20);color:var(--bad-fg)}
.sazocal .legenda .lg.so-cal{background:transparent;border:1px dashed var(--text-muted)}
.sazocal .legenda .tr{margin-left:auto;font-size:11.5px;color:var(--text-muted)}
@media(max-width:520px){
  .sazocal .meses{grid-template-columns:1fr}
}
/* sinais na tabela de revisão: o flex fica no div de dentro, nunca no td, senão a
   célula sai do cálculo de altura da linha e abre um vão em branco embaixo */
.pg-admin-sazonalidade .ut.revisar .col-sinais{width:30%;min-width:230px}
.pg-admin-sazonalidade .ut.revisar .sinais{display:flex;flex-direction:column;gap:4px}
.pg-admin-sazonalidade .ut.revisar .sinais .sg{font-size:11.5px;color:var(--text-muted);line-height:1.4;
  padding-left:9px;position:relative;overflow-wrap:anywhere}
.pg-admin-sazonalidade .ut.revisar .sinais .sg::before{content:"";position:absolute;left:0;top:6px;
  width:3px;height:3px;border-radius:50%;background:var(--line-forte,var(--text-muted));opacity:.5}
.pg-admin-sazonalidade .ut.revisar .sinais .sg.ing.forte{color:var(--warn-fg);font-weight:650}
.pg-admin-sazonalidade .ut.revisar .sinais .sg.conf{color:var(--info-fg)}
.pg-admin-sazonalidade .ut.revisar td.mono{white-space:nowrap}
.pg-admin-sazonalidade .ut.revisar td.cidade{overflow-wrap:normal;word-break:keep-all;min-width:96px}
.pg-admin-sazonalidade .ut.revisar .col-indice{white-space:nowrap}
.pg-admin-sazonalidade .ut.revisar .pr{display:inline-block;margin-bottom:3px}
.pg-admin-sazonalidade .ut.revisar th:first-child,.pg-admin-sazonalidade .ut.revisar td:first-child{width:26%}
/* tela:sazonalidade calendario fim */
/* tela:destda (DeSTDA, detector de omissão) */
:is(.pg-destda,.pg-reinf,.pg-retencao) .ds-comps{margin-top:0}
:is(.pg-destda,.pg-reinf,.pg-retencao) .ds-comps a{display:inline-flex;align-items:center;gap:7px}
:is(.pg-destda,.pg-reinf,.pg-retencao) .ds-comps .dot{margin:0}
:is(.pg-destda,.pg-reinf,.pg-retencao) .ds-card{border:1px solid var(--line);border-radius:var(--r-md);padding:22px 24px;background:var(--surface-solid);margin-bottom:20px}
html[data-theme="dark"] :is(.pg-destda,.pg-reinf,.pg-retencao) .ds-card{background:rgba(248,246,241,.025)}
:is(.pg-destda,.pg-reinf,.pg-retencao) .ds-veredito{display:flex;gap:14px;align-items:baseline}
:is(.pg-destda,.pg-reinf,.pg-retencao) .ds-veredito b{font-size:18px;letter-spacing:-.02em}
:is(.pg-destda,.pg-reinf,.pg-retencao) .ds-ico{width:10px;height:10px;border-radius:50%;background:var(--text-muted);flex:0 0 10px}
:is(.pg-destda,.pg-reinf,.pg-retencao) .ds-veredito.bad .ds-ico{background:var(--bad-fg)}
:is(.pg-destda,.pg-reinf,.pg-retencao) .ds-veredito.warn .ds-ico{background:var(--warn-fg)}
:is(.pg-destda,.pg-reinf,.pg-retencao) .ds-veredito.ok .ds-ico{background:var(--ok-fg)}
:is(.pg-destda,.pg-reinf,.pg-retencao) .ds-alerta{display:inline-block;margin-top:6px;font-size:12.5px;font-weight:700;color:var(--bad-fg)}
:is(.pg-destda,.pg-reinf,.pg-retencao) .ds-motivos{margin:8px 0 0;padding-left:18px;font-size:13.5px;color:var(--text-muted);line-height:1.55;max-width:900px}
:is(.pg-destda,.pg-reinf,.pg-retencao) .ds-nums{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));margin-top:18px;border-top:1px solid var(--line)}
:is(.pg-destda,.pg-reinf,.pg-retencao) .ds-nums div{padding:14px 0 0;display:flex;flex-direction:column}
:is(.pg-destda,.pg-reinf,.pg-retencao) .ds-nums div + div{border-left:1px solid var(--line);padding-left:18px}
:is(.pg-destda,.pg-reinf,.pg-retencao) .ds-nums b{font-size:26px;font-weight:750;letter-spacing:-.02em;line-height:1.15}
:is(.pg-destda,.pg-reinf,.pg-retencao) .ds-nums span{font-size:12px;color:var(--text-muted)}
:is(.pg-destda,.pg-reinf,.pg-retencao) .ds-nums .warn b{color:var(--warn-fg)}
:is(.pg-destda,.pg-reinf,.pg-retencao) .ds-nums .bad b{color:var(--bad-fg)}
:is(.pg-destda,.pg-reinf,.pg-retencao) .ds-entrega,:is(.pg-destda,.pg-reinf,.pg-retencao) .ds-decidir{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
:is(.pg-destda,.pg-reinf,.pg-retencao) .ds-entrega .cselect,:is(.pg-destda,.pg-reinf,.pg-retencao) .ds-decidir .cselect,
:is(.pg-destda,.pg-reinf,.pg-retencao) .ds-entrega select,:is(.pg-destda,.pg-reinf,.pg-retencao) .ds-decidir select{width:280px;flex:0 0 280px}
:is(.pg-destda,.pg-reinf,.pg-retencao) .ds-entrega input,:is(.pg-destda,.pg-reinf,.pg-retencao) .ds-decidir input{width:auto;flex:0 1 200px}
:is(.pg-destda,.pg-reinf,.pg-retencao) .ds-entrega .ds-obs,:is(.pg-destda,.pg-reinf,.pg-retencao) .ds-decidir .ds-obs{min-width:240px;flex:1 1 260px}
:is(.pg-destda,.pg-reinf,.pg-retencao) .tb td.r{white-space:nowrap}
:is(.pg-destda,.pg-reinf,.pg-retencao) .ds-decidir{margin-top:14px}
:is(.pg-destda,.pg-reinf,.pg-retencao) .tb .ds-ev{margin:0}
:is(.pg-destda,.pg-reinf,.pg-retencao) .ds-ev{list-style:none;margin:8px 0 0;padding:0;font-size:12.5px;line-height:1.55}
:is(.pg-destda,.pg-reinf,.pg-retencao) .ds-ev li{padding:1px 0}
:is(.pg-destda,.pg-reinf,.pg-retencao) .ds-ev span{color:var(--text-muted)}
:is(.pg-destda,.pg-reinf,.pg-retencao) .ds-ev b{font-weight:650;color:var(--text)}
:is(.pg-destda,.pg-reinf,.pg-retencao) .ds-ev em{font-style:normal;color:var(--text-muted)}
:is(.pg-destda,.pg-reinf,.pg-retencao) .ds-det summary{cursor:pointer;margin-top:4px;color:var(--link)}
:is(.pg-destda,.pg-reinf,.pg-retencao) .ds-grupo .tb td:first-child{width:38%}
@media(max-width:640px){:is(.pg-destda,.pg-reinf,.pg-retencao) .ds-nums div + div{border-left:0;padding-left:0}}
.pg-destda .ds-porque{margin-top:6px;font-size:14px;color:var(--text-muted);line-height:1.5;max-width:900px}
.pg-destda .ds-porque b{font-size:inherit;color:var(--text)}
.pg-destda .ds-decidir{margin:0 0 10px}
.pg-destda .tb td.acoes .mini + .mini{margin-left:4px}
.pg-destda .tb td.ds-entra{white-space:nowrap}
.pg-destda .ds-parcial{margin:0 0 10px;font-size:13.5px;color:var(--warn-fg)}
.pg-destda .ds-sedif input{width:120px;text-align:right}
.pg-destda .ds-sedif tfoot td{border-top:1px solid var(--line);font-weight:650}
.pg-destda .ds-dare{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;margin-top:10px;font-size:13.5px}
.pg-destda .ds-conta{font-weight:400;white-space:normal;max-width:300px;margin-left:auto}
/* Reinf: reaproveita a gramática da DeSTDA (acima) e acrescenta só isto */
.pg-retencao .rt-trib{display:flex;align-items:center;gap:8px;padding:2px 0;font-size:13px;white-space:nowrap}
.pg-retencao .rt-trib b{margin-left:auto;font-weight:650}
.pg-retencao .rt-decidir select,.pg-retencao .rt-decidir .cselect{width:auto;flex:0 1 220px;min-width:0}
.pg-retencao .ds-nums b{font-size:22px;white-space:nowrap}
.pg-retencao .tb tr.rt-prescrita td{opacity:.55}
.pg-retencao #inss .ds-entrega{flex-wrap:nowrap;gap:6px}
.pg-retencao #inss .ds-entrega input{flex:0 0 130px;width:130px}
.pg-reinf .rf-gerar{margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}
.pg-reinf .rf-cls{margin:0}
.pg-reinf .rf-cls select{flex:1 1 260px;width:auto;max-width:420px}
.pg-reinf .tb tr.rf-atual td{font-weight:650}
/* tela:destda fim */
/* tela:notas — Fiscal › Notas (emissão de NF-e) */
.pg-notas .card + .card,.pg-notas .card + .actions,.pg-notas .aviso + .card{margin-top:var(--s-4)}
.pg-notas .nt-sec{display:flex;align-items:center;gap:var(--s-3);margin:0 0 var(--s-4);font-family:var(--font-display);font-size:15px;font-weight:700;letter-spacing:-.01em;color:var(--text)}
.pg-notas .nt-sec + .filtros,.pg-notas .card .filtros:last-child{margin-bottom:0}
.pg-notas .fld.nt-largo{flex:2 1 320px}
.pg-notas .fld.nt-curto{flex:0 1 120px}
.pg-notas .fld.nt-just{flex:1 1 360px}
.pg-notas .fld.nt-linha{flex:1 1 100%}
.pg-notas .nt-busca{display:flex;gap:var(--s-2);align-items:center}
.pg-notas .nt-dados{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--s-4);margin:0}
.pg-notas .nt-dados dt{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted)}
.pg-notas .nt-dados dd{margin:4px 0 0;font-size:14px;color:var(--text)}
.pg-notas .nt-dados dd .fl-sub{display:block;margin-top:2px;font-size:12px;color:var(--text-muted)}
.pg-notas .nt-dados .nt-chave{grid-column:1 / -1}
.pg-notas .nt-dados .nt-chave dd{word-break:break-all}
.pg-notas .nt-empresas{max-height:360px;overflow:auto}
.pg-notas .seg a[aria-disabled]{opacity:.45;cursor:not-allowed}
.pg-notas .nt-acoes{display:inline-block}
.pg-notas .nt-acoes > summary.mini{padding:3px 10px;letter-spacing:.08em}
.pg-notas .nt-acoes > summary.mini::after{display:none}
.pg-notas .nt-acoes .menu-lista{min-width:220px;text-align:left}

/* janela "Emitir nota" (assistente em abas) e "Novo produto": painel com cabeçalho e rodapé fixos */
.pg-notas .dlg-nota{width:min(1180px,calc(100vw - 40px));height:min(880px,calc(100vh - 40px));max-height:none;padding:0;overflow:hidden;border-radius:var(--r-lg)}
.pg-notas .dlg-nota.dlg-produto{width:min(1000px,calc(100vw - 40px));height:min(760px,calc(100vh - 40px))}
.pg-notas .dlg-nota[open]{display:flex}
.pg-notas .dlg-nota > form{display:flex;flex-direction:column;width:100%;min-height:0;margin:0}
.pg-notas .nt-cabeca{flex:none;padding:var(--s-5) var(--s-6) 0;border-bottom:1px solid var(--line);background:var(--surface-solid)}
.pg-notas .nt-topo{display:flex;align-items:center;flex-wrap:wrap;gap:var(--s-3);margin-bottom:var(--s-5)}
.pg-notas .nt-topo h2{margin:0 auto 0 0;font-family:var(--font-display);font-size:20px;font-weight:700;letter-spacing:-.02em}
.pg-notas .nt-topo .seg{margin:0}
.pg-notas .nt-topo .seg a{padding:6px 14px;font-size:13px}
.pg-notas .nt-selo{display:inline-flex;align-items:center;gap:6px;padding:4px 11px;border-radius:var(--r-pill);background:var(--fill-gold);color:var(--text);font-size:12px;font-weight:650}
.pg-notas .nt-selo::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--gold)}
.pg-notas .nt-selo.prod{background:rgba(31,143,90,.12);color:var(--ok-fg)}
.pg-notas .nt-selo.prod::before{background:var(--ok-fg)}
.pg-notas .nt-numero{font-size:13px;color:var(--text-muted);font-variant-numeric:tabular-nums}
/* etapas: círculos numerados ligados por uma linha; feita = dourado com visto; com erro = vermelho */
.pg-notas .nt-abas{display:flex;align-items:flex-start;margin:0;padding:0 0 var(--s-4);overflow-x:auto;scrollbar-width:none}
.pg-notas .nt-abas button{position:relative;flex:1 1 0;min-width:82px;display:flex;flex-direction:column;align-items:center;gap:7px;padding:0 4px;border:0;background:none;color:var(--text-muted);font:inherit;font-size:12px;font-weight:600;line-height:1.25;text-align:center;cursor:pointer}
.pg-notas .nt-abas button::before{content:"";position:absolute;top:13px;left:calc(-50% + 20px);right:calc(50% + 20px);height:2px;border-radius:2px;background:var(--line)}
.pg-notas .nt-abas button:first-of-type::before{display:none}
.pg-notas .nt-abas button.feita::before,.pg-notas .nt-abas button[aria-selected="true"]::before{background:var(--gold)}
.pg-notas .nt-abas i{position:relative;z-index:1;display:grid;place-items:center;width:28px;height:28px;border:1.5px solid var(--line);border-radius:50%;background:var(--surface-solid);color:var(--text-muted);font-size:12px;font-style:normal;font-weight:700;transition:border-color 160ms var(--ease),background 160ms var(--ease),box-shadow 160ms var(--ease)}
.pg-notas .nt-abas button:hover{color:var(--text)}
.pg-notas .nt-abas button:hover i{border-color:var(--field-border-hover)}
.pg-notas .nt-abas button[aria-selected="true"]{color:var(--text)}
.pg-notas .nt-abas button[aria-selected="true"] i{border-color:var(--gold);background:var(--fill-gold);color:var(--text);box-shadow:0 0 0 4px var(--field-ring)}
.pg-notas .nt-abas .feita i{border-color:var(--gold);background:var(--gold);color:var(--navy);font-size:0}
.pg-notas .nt-abas .feita i::after{content:"";width:9px;height:5px;margin-top:-2px;border-left:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(-45deg)}
.pg-notas .nt-abas .tem-erro i{border-color:var(--bad-fg);background:rgba(196,71,71,.12);color:var(--bad-fg);font-size:12px}
.pg-notas .nt-abas .tem-erro i::after{display:none}
.pg-notas .nt-abas span{white-space:nowrap}
.pg-notas .nt-progresso{display:none}
/* corpo: a aba é um cartão sobre o fundo da página; blocos separados por divisórias finas */
.pg-notas .nt-corpo{flex:1 1 auto;min-height:0;overflow:auto;padding:var(--s-5) var(--s-6);background:var(--bg)}
.pg-notas .nt-aba{padding:var(--s-5) var(--s-6);border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface-solid)}
.pg-notas .nt-aba[hidden]{display:none}
.pg-notas .dlg-nota fieldset{margin:0;padding:0;border:0}
.pg-notas .dlg-nota fieldset + fieldset,.pg-notas .dlg-nota fieldset + details,.pg-notas .nt-local + .nt-local{margin-top:var(--s-5);padding-top:var(--s-5);border-top:0;background:linear-gradient(var(--line),var(--line)) top / 100% 1px no-repeat}
.pg-notas .dlg-nota fieldset + fieldset > legend{float:left;width:100%}
.pg-notas .dlg-nota fieldset + fieldset > legend + *{clear:both}
.pg-notas .dlg-nota legend{display:flex;align-items:center;gap:var(--s-2);margin:0 0 var(--s-4);padding:0;font-family:var(--font-display);font-size:15px;font-weight:700;letter-spacing:-.01em;text-transform:none;color:var(--text)}
.pg-notas .dlg-nota legend::before{content:"";width:3px;height:15px;border-radius:2px;background:var(--gold)}
/* campos numa grade de 12 colunas: padrão 3, largo 6, curto 2, linha inteira 12 */
.pg-notas .dlg-nota .filtros{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--s-4) var(--s-4);align-items:end;margin:0 0 var(--s-4)}
.pg-notas .dlg-nota .filtros:last-child{margin-bottom:0}
.pg-notas .dlg-nota .filtros > *{grid-column:span 3;min-width:0;margin:0}
.pg-notas .dlg-nota .filtros > .nt-largo{grid-column:span 6}
.pg-notas .dlg-nota .filtros > .nt-curto{grid-column:span 2}
.pg-notas .dlg-nota .filtros > .nt-c3{grid-column:span 3}
.pg-notas .dlg-nota .filtros > .nt-c4{grid-column:span 4}
.pg-notas .dlg-nota .filtros > .nt-c5{grid-column:span 5}
.pg-notas .dlg-nota .filtros > .nt-c6{grid-column:span 6}
.pg-notas .dlg-nota .filtros > .nt-c8{grid-column:span 8}
.pg-notas .dlg-nota .filtros > .nt-c9{grid-column:span 9}
.pg-notas .dlg-nota .filtros > .nt-linha,.pg-notas .dlg-nota .filtros > .nt-cert-st,.pg-notas .dlg-nota .filtros > .nt-origens{grid-column:1 / -1}
.pg-notas .dlg-nota .filtros > .btn,.pg-notas .dlg-nota .filtros > .mini{grid-column:auto / span 2;justify-self:start;height:40px}
.pg-notas .dlg-nota .filtros > .fld[hidden]{display:none}
.pg-notas .dlg-nota .fld .lb{display:flex;align-items:center;gap:6px;min-height:18px;margin-bottom:6px;font-size:12px;font-weight:600;letter-spacing:0;color:var(--text-muted)}
.pg-notas .nt-req{font-style:normal;font-weight:700;color:var(--gold)}
.pg-notas .dlg-nota input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]),.pg-notas .dlg-nota select{
  width:100%;height:40px;padding:0 12px;border:1px solid var(--field-border);border-radius:var(--r-xs);background:var(--field-bg);
  color:var(--text);font-family:inherit;font-size:14px;font-weight:500;font-variant-numeric:tabular-nums;color-scheme:inherit}
.pg-notas .dlg-nota .cselect-trigger{height:40px;padding:0 12px;border-radius:var(--r-xs);font-size:14px}
.pg-notas .nt-itens .cselect-trigger,.pg-notas .nt-dups .cselect-trigger{height:36px}
.pg-notas .dlg-nota .lb .cselect{width:auto;margin-left:auto}
.pg-notas .dlg-nota .lb .cselect-trigger{height:24px;padding:0 26px 0 10px;border-radius:var(--r-pill);font-size:11px;font-weight:600;color:var(--text-muted)}
.pg-notas .dlg-nota input[type=datetime-local]:hover{border-color:var(--field-border-hover)}
.pg-notas .dlg-nota input[type=datetime-local]:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px var(--field-ring)}
.pg-notas .dlg-nota textarea{min-height:84px;padding:10px 12px;border-radius:var(--r-xs);font-size:14px}
.pg-notas .dlg-nota input[type=file]{width:100%;height:40px;padding:4px;border:1px dashed var(--field-border);border-radius:var(--r-xs);background:var(--field-bg);font-size:13px;color:var(--text-muted)}
.pg-notas .dlg-nota input[type=file]::file-selector-button{height:30px;margin-right:var(--s-3);padding:0 14px;border:0;border-radius:var(--r-pill);background:var(--fill-2);color:var(--text);font:inherit;font-size:12.5px;font-weight:650;cursor:pointer}
.pg-notas .dlg-nota .lb .mini,.pg-notas .dlg-nota .lb .mini-sel{height:auto;margin-left:auto;padding:1px 9px;font-size:11px;font-weight:600;text-transform:none;letter-spacing:0;color:var(--text-muted)}
.pg-notas .dlg-nota .lb select.mini-sel{width:auto;height:22px;padding:0 6px;border-radius:var(--r-pill)}
.pg-notas .dlg-nota .lb .mini:hover{color:var(--text)}
.pg-notas .nt-busca{display:flex;gap:var(--s-2);align-items:center}
.pg-notas .nt-busca input{flex:1 1 auto;min-width:0}
.pg-notas .nt-busca .mini{height:40px;padding:0 14px}
.pg-notas .nt-ro{display:flex;align-items:center;height:40px;padding:0 12px;border-radius:var(--r-xs);background:var(--fill-1);font-size:14px;font-weight:650;color:var(--text)}
.pg-notas .nt-emit-nome,.pg-notas .nt-dest-info{min-height:1em;margin:calc(var(--s-2) * -1) 0 var(--s-4);font-size:12.5px;color:var(--text-muted)}
.pg-notas .nt-emit-nome:empty,.pg-notas .nt-dest-info:empty{display:none}
.pg-notas .nt-cert{margin:var(--s-2) 0 0;padding:var(--s-4);border-radius:var(--r-sm);background:var(--fill-1)}
.pg-notas .dlg-nota .nt-cert > .fld{grid-column:span 6}
.pg-notas .nt-cert-st{display:flex;align-items:center;gap:var(--s-2);font-size:13px;font-weight:600;color:var(--ok-fg)}
.pg-notas .nt-cert-st::before{content:"";flex:none;width:8px;height:8px;border-radius:50%;background:currentColor}
.pg-notas .nt-cert-st.falta{color:var(--warn-fg)}
.pg-notas .nt-form.nt-cert-ok .nt-cert > .fld,.pg-notas .nt-form.nt-cert-quieto .nt-cert{display:none}
.pg-notas .nt-cert-nota{grid-column:1 / -1;margin:0;font-size:12px;color:var(--text-muted)}
/* "Detalhado (contador)": recolhido, com seta dourada */
.pg-notas .dlg-nota .nt-det-grupo{margin:var(--s-4) 0 0;padding:0;border:1px solid var(--line);border-radius:var(--r-sm)}
.pg-notas .dlg-nota .nt-det-grupo summary{display:flex;align-items:center;gap:var(--s-2);padding:10px 14px;font-size:11.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);cursor:pointer;list-style:none}
.pg-notas .dlg-nota .nt-det-grupo summary::-webkit-details-marker{display:none}
.pg-notas .dlg-nota .nt-det-grupo summary::before{content:"";width:6px;height:6px;border-right:1.8px solid var(--gold);border-bottom:1.8px solid var(--gold);transform:rotate(-45deg);transition:transform 160ms var(--ease)}
.pg-notas .dlg-nota .nt-det-grupo[open] summary::before{transform:rotate(45deg)}
.pg-notas .dlg-nota .nt-det-grupo summary:hover{color:var(--text)}
.pg-notas .dlg-nota .nt-det-grupo > .filtros{margin:0;padding:var(--s-2) 14px var(--s-4)}
.pg-notas .dlg-nota .nt-det-grupo > .filtros + .filtros{padding-top:0}
/* mensagens de conferência */
.pg-notas .nt-erro{border-color:var(--bad-fg)!important;box-shadow:0 0 0 3px rgba(196,71,71,.14)!important}
.pg-notas .nt-erro-msg{display:block;margin-top:5px;font-size:12px;font-weight:500;line-height:1.35;letter-spacing:0;text-transform:none;color:var(--bad-fg)}
.pg-notas .nt-erro-txt{color:var(--bad-fg)}
.pg-notas .nt-ro-aviso{margin:0 0 var(--s-4);padding:var(--s-3) var(--s-4);border-radius:var(--r-sm);background:var(--fill-1);font-size:13px;color:var(--text-muted)}
.pg-notas .dlg-nota p.muted-sm{margin:0 0 var(--s-3);font-size:12.5px}
/* produtos */
.pg-notas .dlg-nota .tbwrap{border:1px solid var(--line);border-radius:var(--r-sm);box-shadow:none}
.pg-notas .nt-itens{margin:0;width:100%;min-width:960px;table-layout:fixed}
.pg-notas .nt-itens thead th:nth-child(2){width:88px}
.pg-notas .nt-itens thead th:nth-child(3){width:84px}
.pg-notas .nt-itens thead th:nth-child(4){width:120px}
.pg-notas .nt-itens thead th:nth-child(5){width:100px}
.pg-notas .nt-itens thead th:nth-child(6){width:124px}
.pg-notas .nt-itens thead th:nth-child(7){width:112px}
.pg-notas .nt-itens thead th:nth-child(8){width:118px}
.pg-notas .nt-x{width:30px;height:30px;padding:0;justify-content:center;font-size:15px;line-height:1;color:var(--text-muted)}
.pg-notas .nt-x:hover{color:var(--bad-fg)}
.pg-notas .nt-itens thead th{padding:10px 10px;background:var(--fill-1);font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}
.pg-notas .nt-itens td{padding:8px 10px;vertical-align:middle;border-top:1px solid var(--line)}
.pg-notas .nt-itens .nt-item td input{height:36px}
.pg-notas .nt-itens .nt-num{text-align:right}
.pg-notas .dlg-nota .nt-itens .nt-un{padding:0 8px}
.pg-notas .nt-itens .nt-total{white-space:nowrap;font-weight:700}
.pg-notas .nt-cfop-calc{font-size:12px;color:var(--text-muted);white-space:nowrap}
.pg-notas .nt-acoes-item{white-space:nowrap;text-align:right}
.pg-notas .nt-acoes-item .mini + .mini{margin-left:4px}
.pg-notas [data-expandir][aria-expanded="true"]{border-color:transparent;background:var(--fill-gold)}
.pg-notas .nt-item-det > td{padding:var(--s-4) var(--s-5) var(--s-5);border-top:0;background:var(--fill-1)}
.pg-notas .nt-item-det .filtros{margin-bottom:var(--s-3)}
.pg-notas .nt-item-det .nt-det-grupo{background:var(--surface-solid)}
.pg-notas .nt-motivo{margin:0 0 var(--s-3)!important;font-size:12.5px;color:var(--text)}
.pg-notas .nt-motivo:empty{display:none}
.pg-notas .nt-origens{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s-2) var(--s-4)}
.pg-notas .nt-origens > .lb{flex:1 1 100%;margin:0}
.pg-notas .nt-origem{display:flex;gap:4px}
.pg-notas .dlg-nota .nt-origem select,.pg-notas .dlg-nota .nt-origem input{width:auto;min-width:70px}
.pg-notas .nt-rodape{display:flex;align-items:center;justify-content:space-between;gap:var(--s-3);flex-wrap:wrap;margin-top:var(--s-4)}
.pg-notas .nt-rodape > span:first-child{display:flex;gap:var(--s-2)}
.pg-notas .nt-soma{display:flex;align-items:baseline;gap:var(--s-3);font-size:13px;color:var(--text-muted)}
.pg-notas .nt-soma b{font-family:var(--font-display);font-size:22px;font-weight:700;letter-spacing:-.02em;color:var(--text)}
/* cobrança, adicionais e locais */
.pg-notas .nt-dups thead th{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}
.pg-notas .dlg-nota .nt-dups input{height:36px}
.pg-notas .nt-curto-in{max-width:90px}
.pg-notas .nt-refs{display:flex;flex-direction:column;gap:var(--s-2);margin:var(--s-4) 0 0;padding-top:var(--s-4);border-top:1px solid var(--line)}
.pg-notas .nt-refs > .lb{font-size:12px;font-weight:600;color:var(--text-muted)}
.pg-notas .dlg-nota .nt-refs input{max-width:560px;letter-spacing:.02em}
.pg-notas .nt-refs .mini{align-self:flex-start}
.pg-notas .nt-check{display:flex;align-items:center;gap:var(--s-3);margin:0;font-family:var(--font-display);font-size:15px;font-weight:700;cursor:pointer}
.pg-notas .nt-check input{width:18px;height:18px}
.pg-notas .nt-local-campos{margin-top:var(--s-4)}
.pg-notas .nt-local:not(.on) .nt-local-campos{display:none}
/* revisão */
.pg-notas .nt-erros,.pg-notas .nt-avisos{margin:0 0 var(--s-4);padding:var(--s-3) var(--s-4);border-left:3px solid currentColor;border-radius:var(--r-xs);font-size:13px}
.pg-notas .nt-erros{background:rgba(196,71,71,.08);color:var(--bad-fg);border-left-color:var(--bad)}
.pg-notas .nt-erros ul{margin:var(--s-2) 0 0;padding-left:18px}
.pg-notas .nt-erros a{margin-left:4px;font-weight:650;color:inherit;text-decoration:underline}
.pg-notas .nt-avisos{background:rgba(196,125,24,.08);color:var(--warn-fg);border-left-color:var(--warn)}
.pg-notas .nt-avisos p{margin:0 0 4px}
.pg-notas .nt-avisos p:last-child{margin:0}
.pg-notas .nt-revisao{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:var(--s-4)}
.pg-notas .nt-rv{padding:var(--s-4);border:1px solid var(--line);border-radius:var(--r-sm)}
.pg-notas .nt-rv h3{margin:0 0 var(--s-3);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--gold)}
.pg-notas .nt-rv dl{display:grid;grid-template-columns:auto 1fr;gap:5px var(--s-4);margin:0;font-size:13px}
.pg-notas .nt-rv dt{color:var(--text-muted)}
.pg-notas .nt-rv dd{margin:0;word-break:break-word;color:var(--text)}
.pg-notas .nt-rv-itens{grid-column:1 / -1;padding:0;overflow:hidden}
.pg-notas .nt-rv-itens h3{padding:var(--s-4) var(--s-4) 0}
.pg-notas .nt-rv-itens table{margin:0}
.pg-notas .nt-rv-itens th{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}
.pg-notas .nt-rv-itens th:first-child,.pg-notas .nt-rv-itens td:first-child{padding-left:var(--s-4)}
.pg-notas .nt-rv-itens th:last-child,.pg-notas .nt-rv-itens td:last-child{padding-right:var(--s-4)}
/* rodapé fixo */
.pg-notas .dlg-nota .nt-acoes{flex:none;display:flex;align-items:center;gap:var(--s-2);margin:0;padding:var(--s-4) var(--s-6);border-top:1px solid var(--line);background:var(--surface-solid)}
.pg-notas .nt-acoes .nt-salvo{margin-right:auto;margin-left:var(--s-2);font-size:12px;color:var(--text-muted)}
.pg-notas .nt-acoes .btn[hidden]{display:none}
.pg-notas .dlg-produto .nt-acoes > .btn.ghost:first-child{margin-right:auto}
.pg-notas .nt-inline{display:inline-block;margin-left:var(--s-2)}
@media(max-width:900px){
  .pg-notas .dlg-nota .filtros > *{grid-column:span 6}
  .pg-notas .dlg-nota .filtros > .nt-largo,.pg-notas .dlg-nota .filtros > .nt-c8,.pg-notas .dlg-nota .filtros > .nt-c9{grid-column:1 / -1}
  .pg-notas .dlg-nota .filtros > .nt-curto,.pg-notas .dlg-nota .filtros > .nt-c3,.pg-notas .dlg-nota .filtros > .nt-c4{grid-column:span 4}
  .pg-notas .dlg-nota .filtros > .nt-c5,.pg-notas .dlg-nota .filtros > .nt-c6{grid-column:span 6}
  .pg-notas .nt-abas span{display:none}
  .pg-notas .nt-abas button{min-width:44px}
}
@media(max-width:640px){
  .pg-notas .dlg-nota{width:100vw;height:100vh;max-width:100vw;border-radius:0}
  .pg-notas .nt-cabeca,.pg-notas .nt-corpo,.pg-notas .dlg-nota .nt-acoes{padding-left:var(--s-4);padding-right:var(--s-4)}
  .pg-notas .nt-aba{padding:var(--s-4)}
  .pg-notas .dlg-nota .filtros > *,.pg-notas .dlg-nota .filtros > [class*="nt-c"],.pg-notas .dlg-nota .filtros > .nt-curto{grid-column:1 / -1}
  .pg-notas .nt-acoes{flex-wrap:wrap}
}
/* novo produto: fornecedores, opções e condicionais */
.pg-notas .nt-forn td{padding:6px 8px;vertical-align:middle}
.pg-notas .dlg-nota .nt-forn input{height:36px}
.pg-notas .nt-opcoes{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:var(--s-3) var(--s-4);margin:0 0 var(--s-4)}
.pg-notas .nt-opcao{display:flex;align-items:center;gap:var(--s-2);font-size:13.5px;color:var(--text);cursor:pointer}
.pg-notas .nt-opcao input{width:16px;height:16px}
.pg-notas .nt-opcao-valor{display:flex;align-items:center;gap:var(--s-3)}
.pg-notas .dlg-nota .nt-opcao-valor > input{width:110px;height:36px}
.pg-notas .nt-produto:not(.nt-p-cred) .nt-p-cred,.pg-notas .nt-produto:not(.nt-p-st) .nt-p-st,
.pg-notas .nt-produto.nt-p-comb .nt-p-nao-comb{display:none}
/* blocos da nota: valores, outras formas de pagamento, observações */
.pg-notas .dlg-nota .nt-valores{margin-top:var(--s-4)}
.pg-notas .dlg-nota .filtros > .nt-sub{grid-column:1 / -1;display:flex;align-items:center;gap:var(--s-2);font-size:12px;font-weight:700;color:var(--text)}
.pg-notas .nt-pags,.pg-notas .nt-obs{display:flex;flex-direction:column;gap:var(--s-2);margin:var(--s-4) 0}
.pg-notas .nt-pags > .lb,.pg-notas .nt-obs > .lb{font-size:12px;font-weight:600;color:var(--text-muted)}
.pg-notas .nt-pags .mini{align-self:flex-start}
.pg-notas .tbwrap:has(#ntDups:empty){display:none}
.pg-notas #ntPags{display:flex;flex-direction:column;gap:var(--s-2)}
.pg-notas .nt-pag,.pg-notas .nt-ob{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr) auto;gap:var(--s-2);align-items:center;max-width:640px}
.pg-notas .nt-ob{grid-template-columns:150px 180px minmax(0,1fr);max-width:none}
.pg-notas .dlg-nota .filtros > .nt-check{align-self:center;font-family:inherit;font-size:13.5px;font-weight:600}
/* campos que só aparecem quando a condição ocorre */
.pg-notas .nt-form:not(.nt-intermed) .nt-se-intermed,.pg-notas .nt-form:not(.nt-exterior) .nt-se-ex,
.pg-notas .nt-form.nt-exterior .nt-nao-ex,.pg-notas .nt-form:not(.nt-suframa) .nt-se-suframa,
.pg-notas .nt-form.nt-sem-frete .nt-com-frete,.pg-notas .nt-form.nt-inter .nt-veiculo,
.pg-notas .nt-form:not(.nt-inter) .nt-sem-veiculo,.pg-notas .nt-form.nt-devolucao .nt-cob,
.pg-notas .nt-form:not(.nt-devolucao) #ntCobDev,.pg-notas .nt-form:not(.nt-devolucao) .nt-dev-obrig,
.pg-notas .nt-item-det:not(.nt-credito) .nt-se-credito,.pg-notas .nt-item-det:not(.nt-st) .nt-se-st,
.pg-notas .nt-item-det:not(.nt-comb) .nt-se-comb,.pg-notas .nt-item-det:not(.nt-glp) .nt-se-glp,
.pg-notas .nt-item-det:not(.nt-med) .nt-se-med{display:none}
.pg-notas .nt-item-det:not(.nt-stret) .nt-se-stret,.pg-notas .nt-item-det:not(.nt-arma) .nt-se-arma,
.pg-notas .nt-item-det:not(.nt-veic) .nt-se-veic{display:none}
/* janela da NFS-e (_emitir_nfse.html): blocos lado a lado, chaves liga/desliga, ícone de ajuda, subabas do IBS/CBS */
.pg-notas .ns-lado{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s-5);margin-top:var(--s-5);padding-top:var(--s-5);background:linear-gradient(var(--line),var(--line)) top / 100% 1px no-repeat}
.pg-notas .ns-lado > fieldset + fieldset{margin:0;padding:0 0 0 var(--s-5);background:linear-gradient(var(--line),var(--line)) left / 1px 100% no-repeat}
.pg-notas .ns-info{display:inline-grid;place-items:center;flex:none;width:15px;height:15px;border:1.5px solid var(--text-muted);border-radius:50%;font-size:9.5px;font-weight:800;font-style:normal;line-height:1;color:var(--text-muted);cursor:help}
.pg-notas .ns-info:hover,.pg-notas .ns-info:focus{border-color:var(--gold);color:var(--text);outline:none}
.pg-notas .ns-chave{display:flex;align-items:center;gap:var(--s-3);font-size:13.5px;font-weight:600;color:var(--text);cursor:pointer}
.pg-notas .ns-chave input{position:absolute;opacity:0;width:1px;height:1px}
.pg-notas .ns-chave > span:first-of-type{position:relative;flex:none;width:36px;height:20px;border-radius:var(--r-pill);background:var(--fill-2);transition:background 160ms var(--ease)}
.pg-notas .ns-chave > span:first-of-type::after{content:"";position:absolute;top:3px;left:3px;width:14px;height:14px;border-radius:50%;background:var(--surface-solid);box-shadow:0 1px 2px rgba(0,0,0,.2);transition:transform 160ms var(--ease)}
.pg-notas .ns-chave input:checked + span{background:var(--gold)}
.pg-notas .ns-chave input:checked + span::after{transform:translateX(16px)}
.pg-notas .ns-chave input:focus-visible + span{box-shadow:0 0 0 3px var(--field-ring)}
.pg-notas .dlg-nota .ns-num{text-align:right}
.pg-notas .nt-ro.ns-num{justify-content:flex-end}
.pg-notas .ns-st{font-size:13px;font-weight:600;color:var(--ok-fg)}
.pg-notas .ns-st.falta{color:var(--warn-fg)}
.pg-notas .ns-st a{margin-left:4px;color:inherit;text-decoration:underline}
.pg-notas .dlg-nota input:disabled{background:var(--fill-1);color:var(--text-muted)}
.pg-notas .seg.ns-sub{margin:0 0 var(--s-4)}
.pg-notas .ns-subaba[hidden]{display:none}
.pg-notas .ns-form:not(.ns-rps) .ns-se-rps,.pg-notas .ns-form:not(.ns-ext) .ns-se-ext,.pg-notas .ns-form.ns-ext .ns-nao-ext,
.pg-notas .ns-form.ns-sem-toma .ns-com-toma,.pg-notas .ns-form:not(.ns-ret) .ns-se-ret,.pg-notas .ns-form:not(.ns-imune) .ns-se-imune{display:none}
.pg-notas .dlg-nota .ns-acoes{flex-wrap:wrap}
.pg-notas .ns-acoes #nsPrevia{margin-left:auto}
.pg-notas .nt-topo .nt-salvo{font-size:12px}
.pg-notas .ns-rascunhos{position:absolute;right:var(--s-6);bottom:76px;z-index:5;width:min(460px,calc(100% - 48px));max-height:300px;overflow:auto;padding:var(--s-3);border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface-solid);box-shadow:var(--float-shadow)}
.pg-notas .ns-rascunhos ul{margin:0;padding:0;list-style:none}
.pg-notas .ns-rascunhos li{display:flex;justify-content:space-between;gap:var(--s-3);padding:8px 10px;border-radius:var(--r-xs);font-size:13px}
.pg-notas .ns-rascunhos li:hover{background:var(--fill-1)}
.pg-notas .ns-rascunhos a{color:var(--text)}
.pg-notas .dlg-nfse > form{position:relative}
@media(max-width:900px){.pg-notas .ns-lado{grid-template-columns:1fr}.pg-notas .ns-lado > fieldset + fieldset{padding:var(--s-5) 0 0;background:linear-gradient(var(--line),var(--line)) top / 100% 1px no-repeat}}
/* janelas de emissão em layout denso (.nt-denso: NF-e, NFS-e e Novo produto), no jeito dos emissores fiscais:
   barra de título azul, abas planas numeradas, quadros de borda fina com título na borda, rótulo à esquerda do campo,
   campos baixos e botões retangulares. Sem !important: o vermelho de .nt-erro continua valendo. */
.pg-notas .dlg-nota.nt-denso{--dn-borda:#c9ced6;--dn-campo:#ffffff;--dn-rotulo:#4a5568;--dn-fundo:#f4f5f7;--dn-rot:130px;
  width:min(1240px,calc(100vw - 48px));height:min(860px,calc(100vh - 48px));border:1px solid var(--dn-borda);border-radius:6px;box-shadow:0 20px 60px rgba(32,40,42,.30)}
html[data-theme="dark"] .pg-notas .dlg-nota.nt-denso{--dn-borda:#3a4455;--dn-campo:#262F31;--dn-rotulo:#a9b2c1;--dn-fundo:#1A2022}
.pg-notas .dlg-nota.dlg-produto.nt-denso{width:min(1060px,calc(100vw - 48px));height:min(780px,calc(100vh - 48px))}
.pg-notas .dlg-nota.nt-denso > form{background:var(--surface-solid)}
/* barra de título e abas */
.pg-notas .dlg-nota.nt-denso .nt-cabeca{padding:0;border-bottom:1px solid var(--dn-borda);background:var(--dn-fundo)}
.pg-notas .dlg-nota.nt-denso .nt-topo{gap:10px;margin:0;padding:7px 12px;background:var(--navy)}
.pg-notas .dlg-nota.nt-denso .nt-topo h2{order:0;margin:0 auto 0 0;font-family:var(--font);font-size:14px;font-weight:700;letter-spacing:0;color:#fff}
.pg-notas .dlg-nota.nt-denso .nt-topo .nt-numero{order:1;font-size:12px;color:rgba(255,255,255,.72)}
.pg-notas .dlg-nota.nt-denso .nt-topo .nt-salvo{order:2;font-size:12px;color:rgba(255,255,255,.72)}
.pg-notas .dlg-nota.nt-denso .nt-topo .nt-selo{order:2;padding:2px 8px;border-radius:3px;font-size:11px;background:rgba(204,159,45,.22);color:#fff}
.pg-notas .dlg-nota.nt-denso .nt-topo .nt-selo.prod{background:rgba(31,143,90,.40)}
.pg-notas .dlg-nota.nt-denso .nt-topo .seg{order:3;padding:2px;border:1px solid rgba(255,255,255,.28);border-radius:3px;background:none}
.pg-notas .dlg-nota.nt-denso .nt-topo .seg a{padding:3px 12px;border-radius:2px;font-size:12px;color:rgba(255,255,255,.8);box-shadow:none}
.pg-notas .dlg-nota.nt-denso .nt-topo .seg a.on{background:var(--gold);color:var(--navy)}
.pg-notas .dlg-nota.nt-denso .nt-abas{padding:0 8px}
.pg-notas .dlg-nota.nt-denso .nt-abas button{flex:0 0 auto;min-width:0;flex-direction:row;gap:6px;padding:8px 12px;border-bottom:2px solid transparent;font-size:12.5px;font-weight:600}
.pg-notas .dlg-nota.nt-denso .nt-abas button::before,.pg-notas .dlg-nota.nt-denso .nt-abas i::after{display:none}
.pg-notas .dlg-nota.nt-denso .nt-abas i,.pg-notas .dlg-nota.nt-denso .nt-abas .feita i,.pg-notas .dlg-nota.nt-denso .nt-abas .tem-erro i,
.pg-notas .dlg-nota.nt-denso .nt-abas button[aria-selected="true"] i{width:auto;height:auto;border:0;background:none;box-shadow:none;font-size:12px;color:inherit}
.pg-notas .dlg-nota.nt-denso .nt-abas button[aria-selected="true"]{border-bottom-color:var(--gold);color:var(--text);background:var(--surface-solid)}
.pg-notas .dlg-nota.nt-denso .nt-abas .feita{color:var(--ok-fg)}
.pg-notas .dlg-nota.nt-denso .nt-abas .tem-erro{color:var(--bad-fg)}
/* corpo: quadros de borda fina com o título na borda */
.pg-notas .dlg-nota.nt-denso .nt-corpo{padding:10px 12px;background:var(--surface-solid)}
.pg-notas .dlg-nota.nt-denso .nt-aba{padding:0;border:0;border-radius:0;background:none}
.pg-notas .dlg-nota.nt-denso fieldset{margin:0 0 10px;padding:12px 12px 4px;border:1px solid var(--dn-borda);border-radius:4px;background:none}
.pg-notas .dlg-nota.nt-denso fieldset > legend{float:none;width:auto;margin:0 0 0 -2px;padding:0 6px;font-family:var(--font);font-size:12.5px;font-weight:700;letter-spacing:0}
.pg-notas .dlg-nota.nt-denso legend::before{display:none}
.pg-notas .dlg-nota.nt-denso .filtros{gap:6px 14px;margin:0 0 6px;align-items:center}
/* rótulo à esquerda; especificidade baixa de propósito: as regras que escondem campo (.nt-se-ex, [hidden]...) ganham */
.nt-denso .filtros > .fld{display:grid;grid-template-columns:var(--dn-rot) minmax(0,1fr);align-items:center;gap:8px}
.nt-denso .filtros > .fld:has(textarea){align-items:start}
.pg-notas .dlg-nota.nt-denso .fld .lb:has(.mini),.pg-notas .dlg-nota.nt-denso .fld .lb:has(.mini-sel){flex-wrap:wrap}
.pg-notas .dlg-nota.nt-denso .fld .lb{flex-wrap:nowrap;justify-content:flex-end;gap:2px 4px;min-height:0;margin:0;font-size:12px;font-weight:600;line-height:1.2;text-align:right;color:var(--dn-rotulo)}
.pg-notas .dlg-nota.nt-denso .fld:has(textarea) .lb{padding-top:6px}
.pg-notas .dlg-nota.nt-denso .fld .lb .mini,.pg-notas .dlg-nota.nt-denso .fld .lb .mini-sel,.pg-notas .dlg-nota.nt-denso .fld .lb .cselect{margin:2px 0 0;border-radius:3px}
.pg-notas .dlg-nota.nt-denso .fld .lb .cselect,.pg-notas .dlg-nota.nt-denso .fld .lb select.mini-sel{max-width:100%}
.nt-denso .filtros > .fld > .nt-erro-msg{grid-column:2;margin-top:0}
.pg-notas .dlg-nota.nt-denso .nt-req{color:var(--bad-fg)}
.pg-notas .dlg-nota.nt-denso input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]),.pg-notas .dlg-nota.nt-denso select,
.pg-notas .dlg-nota.nt-denso .cselect-trigger,.pg-notas .dlg-nota.nt-denso .nt-ro{height:28px;padding:0 8px;border:1px solid var(--dn-borda);border-radius:3px;background:var(--dn-campo);font-size:13px;font-weight:500;box-shadow:none}
.pg-notas .dlg-nota.nt-denso input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]):focus,.pg-notas .dlg-nota.nt-denso select:focus,
.pg-notas .dlg-nota.nt-denso textarea:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 2px var(--field-ring)}
.pg-notas .dlg-nota.nt-denso input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]):disabled{background:var(--dn-fundo);color:var(--text-muted)}
.pg-notas .dlg-nota.nt-denso .nt-ro{display:block;overflow:hidden;line-height:26px;white-space:nowrap;text-overflow:ellipsis;background:var(--dn-fundo);font-weight:600}
.pg-notas .dlg-nota.nt-denso .nt-ro.ns-num{text-align:right}
.pg-notas .dlg-nota.nt-denso textarea{min-height:56px;padding:6px 8px;border:1px solid var(--dn-borda);border-radius:3px;background:var(--dn-campo);font-size:13px}
.pg-notas .dlg-nota.nt-denso input[type=file]{height:28px;padding:2px;border-radius:3px}
.pg-notas .dlg-nota.nt-denso input[type=file]::file-selector-button{height:22px;border-radius:3px}
.pg-notas .dlg-nota.nt-denso .nt-busca .mini{height:28px;padding:0 10px;border-radius:3px}
@media(min-width:901px){
  .pg-notas .dlg-nota.nt-denso .filtros > .nt-curto{grid-column:span 3}
  .pg-notas .dlg-nota.nt-denso .filtros > .nt-c3,.pg-notas .dlg-nota.nt-denso .filtros > .nt-c4,.pg-notas .dlg-nota.nt-denso .filtros > .fld:not([class*="nt-"]){grid-column:span 4}
  .pg-notas .dlg-nota.nt-denso .filtros > .nt-c5,.pg-notas .dlg-nota.nt-denso .filtros > .nt-c6,.pg-notas .dlg-nota.nt-denso .filtros > .nt-largo{grid-column:span 6}
  .pg-notas .dlg-nota.nt-denso .filtros > .nt-c8,.pg-notas .dlg-nota.nt-denso .filtros > .nt-c9{grid-column:span 8}
}
.pg-notas .dlg-nota.nt-denso .nt-det-grupo{margin:4px 0 6px;border:0;border-top:1px dashed var(--dn-borda);border-radius:0}
.pg-notas .dlg-nota.nt-denso .nt-det-grupo summary{padding:6px 0;font-size:11px}
.pg-notas .dlg-nota.nt-denso .nt-det-grupo > .filtros{padding:4px 0 6px}
.pg-notas .dlg-nota.nt-denso .nt-emit-nome,.pg-notas .dlg-nota.nt-denso .nt-dest-info{margin:-2px 0 6px calc(var(--dn-rot) + 8px);font-size:12px}
.pg-notas .dlg-nota.nt-denso .nt-cert{margin:0 0 6px;padding:8px 10px;border-radius:3px}
.pg-notas .dlg-nota.nt-denso .ns-lado{gap:10px;margin:0;padding:0;background:none}
.pg-notas .dlg-nota.nt-denso .ns-lado > fieldset + fieldset{padding:12px 12px 4px;background:none}
.pg-notas .dlg-nota.nt-denso .ns-chave{grid-column:1 / -1;padding-left:calc(var(--dn-rot) + 8px);white-space:nowrap;font-size:12.5px}
.pg-notas .dlg-nota.nt-denso .nt-ro-aviso,.pg-notas .dlg-nota.nt-denso .nt-erros,.pg-notas .dlg-nota.nt-denso .nt-avisos{padding:6px 10px;border-radius:3px;font-size:12px}
.pg-notas .dlg-nota.nt-denso .seg.ns-sub{padding:2px;border:1px solid var(--dn-borda);border-radius:3px;background:none}
.pg-notas .dlg-nota.nt-denso .seg.ns-sub a{padding:3px 12px;border-radius:2px;font-size:12px;box-shadow:none}
.pg-notas .dlg-nota.nt-denso .seg.ns-sub a.on{background:var(--navy);color:#fff}
.pg-notas .dlg-nota.nt-denso .tbwrap,.pg-notas .dlg-nota.nt-denso .nt-rv{border-color:var(--dn-borda);border-radius:4px}
.pg-notas .dlg-nota.nt-denso .nt-revisao{gap:10px}
.pg-notas .dlg-nota.nt-denso .nt-rv{padding:10px 12px}
.pg-notas .dlg-nota.nt-denso .nt-itens thead th{padding:6px 8px}
.pg-notas .dlg-nota.nt-denso .nt-itens td{padding:4px 8px}
.pg-notas .dlg-nota.nt-denso .nt-item-det > td{padding:10px 12px}
.pg-notas .dlg-nota.nt-denso .nt-check{font-family:var(--font);font-size:13px}
.pg-notas .dlg-nota.nt-denso .nt-origens > .lb{font-size:12px;font-weight:600;color:var(--dn-rotulo)}
.pg-notas .dlg-nota.nt-denso .ns-rascunhos{bottom:52px;border-radius:4px}
/* rodapé: botões retangulares */
.pg-notas .dlg-nota.nt-denso .nt-acoes{justify-content:flex-start;gap:6px;padding:8px 12px;border-top:1px solid var(--dn-borda);background:var(--dn-fundo)}
.pg-notas .dlg-nota.nt-denso .btn{height:28px;padding:0 14px;border-radius:3px;font-size:12.5px;box-shadow:none}
.pg-notas .dlg-nota.nt-denso .mini{border-radius:3px}
.pg-notas .dlg-nota.nt-denso .nt-acoes .btn.ghost{border:1px solid var(--dn-borda);background:var(--surface-solid)}
.pg-notas .dlg-nota.nt-denso .nt-acoes .nt-salvo{margin:0 auto 0 8px}
@media(max-width:640px){
  .nt-denso .filtros > .fld{grid-template-columns:1fr;gap:4px}
  .pg-notas .dlg-nota.nt-denso .fld .lb{justify-content:flex-start;text-align:left}
  .pg-notas .dlg-nota.nt-denso .ns-chave,.pg-notas .dlg-nota.nt-denso .nt-emit-nome,.pg-notas .dlg-nota.nt-denso .nt-dest-info{padding-left:0;margin-left:0}
  .pg-notas .dlg-nota.nt-denso .nt-acoes{flex-wrap:wrap}
}
/* lista da empresa: emitidas pelo CEOttax em destaque, capturadas e importadas sem destaque */
.pg-notas .fl-barra .nt-ir-empresa{width:min(360px,100%);border-color:var(--gold)}
.pg-notas .nt-lista tr.nt-nossa td{background:color-mix(in srgb,var(--gold) 8%,transparent)}
.pg-notas .nt-lista tr.nt-nossa td:first-child{box-shadow:inset 3px 0 0 var(--gold)}
.pg-notas .nt-lista td .pill{font-size:11.5px}
.pg-notas td.acoes{white-space:nowrap}
.pg-notas td.acoes .nt-copiar{display:inline;margin:0 6px 0 0}
/* Motivo da rejeição por extenso (não cortar no meio da frase da Sefin/SEFAZ) */
.pg-notas .fl-tb td.nt-sit{min-width:180px;max-width:360px;white-space:normal}
.pg-notas .fl-tb td.nt-sit .fl-sub{white-space:normal;overflow-wrap:anywhere;max-width:360px}
/* tela:notas fim */
/* tela:rotinas — Fiscal › Rotinas (importação, apuração e relatório automáticos) */
.pg-rotinas .rtn-ultima .fl-sub{display:block;max-width:190px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.pg-rotinas .rtn-hist{margin-top:var(--s-5)}
.pg-rotinas .rtn-dlg{--dn-borda:#c9ced6;--dn-campo:#ffffff;--dn-rotulo:#4a5568;--dn-fundo:#f4f5f7;width:min(720px,calc(100vw - 32px));padding:0;border-radius:4px}
html[data-theme="dark"] .pg-rotinas .rtn-dlg{--dn-borda:#3a4455;--dn-campo:#262F31;--dn-rotulo:#a9b2c1;--dn-fundo:#1A2022}
.pg-rotinas .rtn-topo{display:flex;align-items:center;justify-content:space-between;padding:7px 12px;background:var(--navy)}
.pg-rotinas .rtn-topo h2{margin:0;font-family:var(--font);font-size:14px;font-weight:700;letter-spacing:0;color:#fff}
.pg-rotinas .rtn-topo a{color:rgba(255,255,255,.8);text-decoration:none}
.pg-rotinas .rtn-corpo{padding:10px 12px}
.pg-rotinas .rtn-dlg fieldset{margin:0 0 10px;padding:8px 12px 4px;border:1px solid var(--dn-borda);border-radius:4px}
.pg-rotinas .rtn-dlg fieldset[hidden]{display:none}
.pg-rotinas .rtn-dlg legend{padding:0 6px;font-size:12.5px;font-weight:700;text-transform:none;letter-spacing:0;color:var(--text)}
.pg-rotinas .rtn-fld{display:grid;grid-template-columns:110px minmax(0,1fr);align-items:center;gap:8px;margin:0 0 6px}
.pg-rotinas .rtn-fld[hidden]{display:none}
.pg-rotinas .rtn-fld .lb{font-size:12px;font-weight:600;text-align:right;color:var(--dn-rotulo)}
.pg-rotinas .rtn-linha{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;font-size:13px}
.pg-rotinas .rtn-linha [hidden]{display:none}
.pg-rotinas .rtn-dlg input:not([type=checkbox]):not([type=radio]):not([type=hidden]),.pg-rotinas .rtn-dlg select{width:auto;height:28px;padding:0 8px;border:1px solid var(--dn-borda);border-radius:3px;background:var(--dn-campo);font-size:13px;box-shadow:none}
.pg-rotinas .rtn-dlg input[name=nome]{width:100%}
.pg-rotinas .rtn-dlg .cselect{width:auto;min-width:150px;justify-self:start}
.pg-rotinas .rtn-dlg [data-freq] .cselect{display:inline-block;min-width:64px;vertical-align:middle}
.pg-rotinas .rtn-dlg .cselect-trigger{height:28px;padding:0 8px;border:1px solid var(--dn-borda);border-radius:3px;background:var(--dn-campo);font-size:13px;font-weight:500;box-shadow:none}
.pg-rotinas .rtn-dlg .cselect-menu li{padding:5px 10px;font-size:13px}
.pg-rotinas .rtn-chk{display:inline-flex;align-items:center;gap:6px;font-size:13px;cursor:pointer}
.pg-rotinas .rtn-emp{columns:2 220px;column-gap:16px;max-height:220px;overflow:auto;margin:0 0 6px 118px;padding:6px 8px;border:1px solid var(--dn-borda);border-radius:3px;background:var(--dn-campo)}
.pg-rotinas .rtn-emp[hidden],.pg-rotinas .rtn-emp .rtn-chk[hidden]{display:none}
.pg-rotinas .rtn-emp .rtn-chk{display:flex;padding:2px 0;break-inside:avoid}
.pg-rotinas .rtn-etq{display:flex;flex-wrap:wrap;gap:4px 14px;margin:0 0 6px 118px;padding:6px 8px;border:1px solid var(--dn-borda);border-radius:3px;background:var(--dn-campo)}
.pg-rotinas .rtn-etq[hidden]{display:none}
.pg-rotinas .rtn-custo{display:block;margin-top:2px}
.pg-rotinas .rtn-erro{margin:0 0 8px;padding:6px 10px;border-radius:3px;background:color-mix(in srgb,var(--bad) 10%,transparent);color:var(--bad-fg);font-size:12.5px}
.pg-rotinas .rtn-rodape{display:flex;justify-content:flex-end;gap:8px;padding:8px 12px;border-top:1px solid var(--dn-borda);background:var(--dn-fundo)}
.pg-rotinas .rtn-rodape .btn{padding:6px 14px;border-radius:3px;font-size:13px}
@media(max-width:600px){.pg-rotinas .rtn-fld{grid-template-columns:1fr}.pg-rotinas .rtn-fld .lb{text-align:left}.pg-rotinas .rtn-emp,.pg-rotinas .rtn-etq{margin-left:0}}
/* tela:rotinas fim */
/* tela:sucesso — Sucesso do Cliente (índice de saúde fiscal: resumo com régua, pilares com barra, quadros com divisórias) */
.pg-sucesso .sc-quadro{position:relative;margin:22px 0 0;border:1px solid var(--line);border-radius:3px;background:var(--card)}
.pg-sucesso .sc-tit{position:absolute;z-index:5;top:-9px;left:12px;margin:0;padding:0 8px;background:var(--bg);font-size:11px;line-height:17px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}
.pg-sucesso .sc-tit span{font-weight:500;text-transform:none;letter-spacing:0}
.pg-sucesso .sc-quadro>.tbwrap{margin:0;border:0;border-radius:0;background:transparent;box-shadow:none}
.pg-sucesso .sc-quadro>.empty{margin:0;border:0;padding:20px 16px 14px}
.pg-sucesso .sc-quadro>.empty p{margin:0}
.pg-sucesso .sc-grade th{padding-top:16px}
.pg-sucesso .sc-grade th:first-child,.pg-sucesso .sc-grade td:first-child{padding-left:12px}
.pg-sucesso .sc-grade td{white-space:normal}
.pg-sucesso .sc-grade th+th,.pg-sucesso .sc-grade td+td{border-left:1px solid var(--line)}
.pg-sucesso .sc-grade th.num,.pg-sucesso .sc-grade td.nums{text-align:right}
.pg-sucesso .sc-resumo{display:grid;grid-template-columns:200px 1fr 240px}
.pg-sucesso .sc-nota{padding:22px 18px 16px;border-right:1px solid var(--line)}
.pg-sucesso .sc-nota .v{font-size:40px;font-weight:800;line-height:1;color:var(--text)}
.pg-sucesso .sc-nota .v small{font-size:14px;font-weight:600;color:var(--text-muted)}
.pg-sucesso .sc-nota .f{margin-top:10px}
.pg-sucesso .sc-escala{padding:32px 22px 14px;border-right:1px solid var(--line)}
.pg-sucesso .sc-faixas{position:relative;display:flex;height:12px}
.pg-sucesso .sc-faixas span{height:100%;opacity:.75}
.pg-sucesso .sc-faixas .bad,.pg-sucesso .sc-barra .bad{background:var(--bad)}
.pg-sucesso .sc-faixas .warn,.pg-sucesso .sc-barra .warn{background:var(--warn)}
.pg-sucesso .sc-faixas .info{background:var(--info-fg)}
.pg-sucesso .sc-faixas .ok,.pg-sucesso .sc-barra .ok{background:var(--ok)}
.pg-sucesso .sc-marca{position:absolute;top:-6px;width:3px;height:24px;margin-left:-1px;background:var(--text)}
.pg-sucesso .sc-marca b{position:absolute;top:-19px;left:50%;transform:translateX(-50%);font-size:12px;font-style:normal;white-space:nowrap;color:var(--text)}
.pg-sucesso .sc-regua{position:relative;height:16px;margin-top:7px;font-size:11px;color:var(--text-muted)}
.pg-sucesso .sc-regua span{position:absolute;top:0;white-space:nowrap}
.pg-sucesso .sc-regua span:last-child{right:0}
.pg-sucesso .sc-nota-linha{margin-top:12px;padding-top:10px;border-top:1px solid var(--line);font-size:12.5px;color:var(--text-muted)}
.pg-sucesso .sc-nota-linha b{color:var(--bad-fg)}
.pg-sucesso .sc-contas{display:grid;grid-template-rows:1fr 1fr}
.pg-sucesso .sc-contas div{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;font-size:12.5px;color:var(--text-muted)}
.pg-sucesso .sc-contas div+div{border-top:1px solid var(--line)}
.pg-sucesso .sc-contas b{font-size:20px;color:var(--text)}
.pg-sucesso .sc-tb{width:100%;border-collapse:collapse;font-size:13px}
.pg-sucesso .sc-tb th{padding:18px 12px 8px;border-bottom:1px solid var(--line);text-align:left;font-size:10.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--text-muted)}
.pg-sucesso .sc-tb td{padding:10px 12px;border-bottom:1px solid var(--line);vertical-align:middle;color:var(--text)}
.pg-sucesso .sc-tb tr:last-child td{border-bottom:0}
.pg-sucesso .sc-tb th+th,.pg-sucesso .sc-tb td+td{border-left:1px solid var(--line)}
.pg-sucesso .sc-tb .r{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
.pg-sucesso .sc-tb .sc-pil{font-weight:700;white-space:nowrap}
.pg-sucesso .sc-tb .sc-sit{font-size:12.5px;color:var(--text-muted)}
.pg-sucesso .sc-tb tr.fora td{color:var(--text-muted)}
.pg-sucesso .sc-tb tr.semdado .sc-sit{color:var(--warn-fg)}
.pg-sucesso .sc-barra{position:relative;min-width:200px;height:14px;overflow:hidden;background:var(--line)}
.pg-sucesso .sc-barra i{position:absolute;inset:0 auto 0 0}
.pg-sucesso .sc-barra.fora{background:repeating-linear-gradient(45deg,var(--line) 0 5px,transparent 5px 10px)}
.pg-sucesso .sc-barra.semdado{background:transparent;border:1px dashed var(--warn)}
@media(max-width:900px){.pg-sucesso .sc-resumo{grid-template-columns:1fr}.pg-sucesso .sc-nota,.pg-sucesso .sc-escala{border-right:0;border-bottom:1px solid var(--line)}
  .pg-sucesso .sc-tb{display:block;overflow-x:auto}}
/* tela:sucesso fim */

/* ==========================================================================
   9. DESENHO DENSO CEOCON (27/10/2026)
   O mesmo desenho do protótipo aprovado, aplicado nos componentes que todas as telas usam:
   cantos cortados (chanfro) no lugar de arredondado, abas sublinhadas, botão principal dourado,
   campos baixos, indicadores em cartão e tabelas compactas. Fica no fim do arquivo para valer
   sobre os componentes; regra de tela (.pg-*) mais específica continua mandando.
   ========================================================================== */
:root{
  --r-lg:0px;--r-md:0px;--r-sm:0px;--r-xs:0px;
  --c8:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px);
  --c10:polygon(10px 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%,0 10px);
  --c12:polygon(12px 0,100% 0,100% calc(100% - 12px),calc(100% - 12px) 100%,0 100%,0 12px);
  --c16:polygon(16px 0,100% 0,100% calc(100% - 16px),calc(100% - 16px) 100%,0 100%,0 16px);
  --c18:polygon(18px 0,100% 0,100% calc(100% - 18px),calc(100% - 18px) 100%,0 100%,0 18px);
  --ease-i:cubic-bezier(.22,.68,.4,1);
  --campo:rgba(var(--brand-rgb),.06);
}
html[data-theme="dark"]{--campo:rgba(248,246,241,.07)}
body{font-size:14px;line-height:1.5}
.wrap{padding:20px 24px 48px}
.wrap:has(.emp-dock){padding-right:80px}

/* cabeçalho da tela: título e ações; a frase de descrição saiu (decisão do protótipo) */
.ph{align-items:center;gap:10px 16px;margin:0 0 14px}
.ph h1{font-size:22px;font-weight:800;letter-spacing:-.3px;line-height:1.15}
.ph .desc{display:none}
.ph-side{align-items:center;gap:6px}

/* abas: sublinhado dourado no lugar da pílula */
.seg{gap:0;padding:0;margin:0 0 14px;width:auto;background:none;border-radius:0;border-bottom:1px solid var(--line)}
.seg a,.seg .seg-mais > summary{padding:8px 12px;margin-bottom:-1px;border-radius:0;border-bottom:2px solid transparent;font-size:12.5px;font-weight:600}
.seg a.on,.seg .seg-mais > summary.on{background:none;box-shadow:none;color:var(--text);border-bottom-color:var(--acc)}
.seg .aba-item a{border-bottom:0;font-size:12.5px}

/* botões: principal em degradê dourado com tinta chumbo; secundário neutro; cantos cortados */
.btn{min-height:34px;padding:0 14px;gap:6px;border-radius:0;clip-path:var(--c10);font-size:12.5px;font-weight:700;
  background:linear-gradient(135deg,var(--acc),var(--acc-deep));color:var(--acc-ink);
  transition:transform .2s var(--ease-i),filter .2s,background .2s}
.btn:hover{background:linear-gradient(135deg,var(--acc),var(--acc-deep));color:var(--acc-ink);transform:translateY(-2px);filter:brightness(1.05)}
.btn.ghost,.btn.sec{background:var(--fill-2);color:var(--text)}
.btn.ghost:hover,.btn.sec:hover{background:var(--fill-2);color:var(--text);filter:brightness(.97)}
html[data-theme="dark"] .btn.ghost:hover,html[data-theme="dark"] .btn.sec:hover{filter:brightness(1.25)}
.btn.danger,.btn.perigo{background:rgba(196,71,71,.12);color:var(--bad-fg)}
.btn.sm{min-height:28px;padding:0 10px;font-size:12px;clip-path:var(--c8)}
.btn.lg{min-height:42px;padding:0 22px;font-size:13px}
.btn:disabled,.btn[disabled]{transform:none;filter:none}
.mini{padding:5px 10px;border:0;border-radius:0;clip-path:var(--c8);background:var(--fill-2);font-size:11.5px}
.mini:hover{background:var(--fill-2);filter:brightness(.96)}
html[data-theme="dark"] .mini:hover{filter:brightness(1.25)}
.mini.on{background:var(--fill-gold)}
.menu > summary.btn,.menu > summary.mini{list-style:none}
.menu-lista{border-radius:0;padding:4px;box-shadow:0 8px 20px rgba(var(--brand-rgb),.16)}
.menu-lista a,.menu-lista button{padding:7px 10px;font-size:12.5px}
.theme-toggle{border-radius:0;clip-path:var(--c8)}

/* campos baixos, sem borda, com o fundo de campo; foco com traço dourado embaixo */
input:not([type]),input[type=text],input[type=password],input[type=email],input[type=number],
input[type=tel],input[type=url],input[type=search],input[type=date],input[type=month],
select,input.in,select.in{min-height:34px;padding:0 10px;border:0;border-radius:0;background:var(--campo);font-size:13px;box-shadow:none;clip-path:var(--c8)}
textarea{padding:8px 10px;border:0;border-radius:0;background:var(--campo);font-size:13px;box-shadow:none;clip-path:var(--c8)}
html[data-theme="dark"] input:not([type]),html[data-theme="dark"] input[type=text],
html[data-theme="dark"] input[type=password],html[data-theme="dark"] input[type=email],
html[data-theme="dark"] input[type=number],html[data-theme="dark"] input[type=tel],
html[data-theme="dark"] input[type=url],html[data-theme="dark"] input[type=search],
html[data-theme="dark"] input[type=date],html[data-theme="dark"] input[type=month],
html[data-theme="dark"] textarea,html[data-theme="dark"] input.in{box-shadow:none}
input:hover,select:hover,textarea:hover,input.in:hover,select.in:hover{border-color:transparent}
input:focus,select:focus,textarea:focus,input.in:focus,select.in:focus{background:var(--fill-gold);box-shadow:inset 0 -2px 0 var(--acc)}
label.fld{margin:0 0 12px}
label.fld .lb,.fld .lb{margin-bottom:5px;font-size:12px;font-weight:700}
.cselect-trigger{min-height:34px;padding:0 10px;border:0;border-radius:0;background:var(--campo);font-size:13px;box-shadow:none;clip-path:var(--c8)}
.cselect-menu{border-radius:0}

/* indicadores: cartão com o rótulo em cima e o número grande */
.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;border:0;margin:0 0 14px}
.kpi{display:flex;flex-direction:column;padding:10px 14px;border:0;background:var(--surface-solid);clip-path:var(--c12)}
.kpi:first-child,.kpi:first-child.best{padding-left:14px}
.kpi .l{order:-1;margin:0 0 2px;font-size:11.5px;font-weight:600;text-transform:none;letter-spacing:0}
.kpi .v{font-size:19px;font-weight:800;letter-spacing:-.3px}
.kpi .v .nums,.kpi .v.nums{font-size:19px}
.kpi .sub{margin-top:2px;font-size:11px}
.kpi.best:before{top:0;bottom:0}
.strip{gap:10px;border:0}
.strip .cell{padding:10px 14px;border:0;background:var(--surface-solid);clip-path:var(--c12)}
.strip .cell:first-child{padding-left:14px}
.strip .l{text-transform:none;letter-spacing:0;font-size:11.5px;font-weight:600}
.pc-kpis{gap:10px}
.pc-kpi{padding:10px 14px;border:0;clip-path:var(--c12)}
.pc-kpi:hover{box-shadow:none;transform:translateY(-2px)}
.pc-kpi.on{box-shadow:inset 0 -2px 0 var(--acc)}
.pc-kpi-ic{width:26px;height:26px;border-radius:0;clip-path:var(--c8)}
.pc-kpi-v{font-size:19px;font-weight:800;letter-spacing:-.3px}
.pc-kpi-l{font-size:11.5px}

/* cartões e caixas: fundo com cantos cortados num pseudo-elemento, para menus de dentro não serem cortados */
.pc-card,.pc-mod,.card.caixa{position:relative;isolation:isolate;border:0;background:transparent;box-shadow:none}
.pc-card::after,.pc-mod::after,.card.caixa::after{content:"";position:absolute;inset:0;z-index:-1;background:var(--surface-solid);clip-path:var(--c16);pointer-events:none}
.pc-card{padding:14px 16px}
.pc-mod:hover{box-shadow:none}
.pg-apuracao-empresa .ap-card,.pg-auditoria-empresa .ax-card{position:relative;isolation:isolate;border:0;background:transparent;padding:16px 18px}
.pg-apuracao-empresa .ap-card::after,.pg-auditoria-empresa .ax-card::after{content:"";position:absolute;inset:0;z-index:-1;background:var(--surface-solid);clip-path:var(--c16);pointer-events:none}
.legado .card{border-radius:0}
.dlg{border-radius:0}

/* tabelas compactas: cabeçalho sem caixa alta, linhas baixas */
table.tb,table.ut{font-size:12.5px}
.tb th,.ut th{padding:7px 10px 7px 0;font-size:11.5px;font-weight:700;text-transform:none;letter-spacing:0}
.tb td,.ut td{padding:6px 10px 6px 0;vertical-align:middle}
.tb.compacta td{padding:4px 10px 4px 0}
.pc-tb td{padding-top:6px;padding-bottom:6px}
.pc-tb th{text-transform:none;letter-spacing:0}

/* avisos com o canto arredondado de 10 px que a identidade reserva para eles */
.aviso{border-radius:10px}
@media (prefers-reduced-motion:reduce){.btn:hover,.pc-kpi:hover{transform:none}}

/* controles em pílula de telas específicas: campos e grupos de botões seguem o chanfro; selo de status continua pílula */
.pg-flista .fl-barra input,.pg-evolucao .pn-sec-h input{min-height:34px;padding:0 10px;border-radius:0;font-size:13px}
.pg-produtos .pr-filtros .cselect-trigger,.pg-revisao .rv-filtros .cselect-trigger,.pg-alertas .al-filtros .cselect-trigger,
.pg-alertas .al-filtros select,.pg-evolucao .pn-filtro .cselect-trigger{min-height:34px;padding:0 10px;border-radius:0;font-size:13px}
.pg-flista .fl-barra .seg{padding:0}
.pg-flista .fl-barra .seg a{padding:8px 12px;font-size:12.5px}
.tabs{gap:0;padding:0;background:none;border-radius:0;border-bottom:1px solid var(--line)}
.tabs a{margin-bottom:-1px;padding:8px 12px;border-radius:0;border-bottom:2px solid transparent;font-size:12.5px;font-weight:600}
.tabs a.on,.tabs a[aria-current]{background:none;box-shadow:none;color:var(--text);border-bottom-color:var(--acc)}
.fchips a,.opts label,.pg-optante .opts label,.pg-captura .cap-modo button,.pc-chip,.pc-lote,.pc-act,
.pg-apuracao-catalogo .notas-papel,.pg-apuracao-catalogo .notas-papel a,.pg-auditoria-empresa .ax-seg,.pg-auditoria-empresa .ax-seg a,
.pg-produto-ncm .pr-conf,:is(.pg-apuracao,.pg-dctfweb) .etq-menu .etq-acoes button{border-radius:0;clip-path:var(--c8)}

/* tela:apuracao-empresa abas (27/10/2026) · faixa escura, abas numeradas e o Resumo com gráficos do protótipo aprovado */
.pg-apuracao-empresa .emp-cab{display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px;margin:-20px -80px 0 -24px;padding:14px 80px 14px 24px;background:var(--brand);color:#fff;border-bottom:2px solid var(--acc)}
.pg-apuracao-empresa .emp-cab-t{flex:1 1 320px;min-width:0}
.pg-apuracao-empresa .emp-volta{display:inline-block;margin-bottom:2px;font-size:11.5px;font-weight:600;color:rgba(255,255,255,.6)}
.pg-apuracao-empresa .emp-volta:hover{color:var(--acc2)}
.pg-apuracao-empresa .emp-cab h1{margin:0;font-size:20px;font-weight:800;letter-spacing:-.3px;line-height:1.2;color:#fff}
.pg-apuracao-empresa .emp-cab p{margin:2px 0 0;font-size:12px;color:rgba(255,255,255,.7)}
.pg-apuracao-empresa .emp-cab-acoes{display:flex;flex-wrap:wrap;gap:6px;margin-left:auto}
.btn.esc{background:var(--brand-dark);color:var(--acc2)}
.btn.esc:hover{background:var(--brand-dark);color:var(--acc2);filter:brightness(1.2)}
.pg-apuracao-empresa .emp-abas{display:flex;flex-wrap:wrap;margin:0 -80px 14px -24px;padding:0 80px 0 24px;background:var(--surface-solid);border-bottom:1px solid var(--line)}
.pg-apuracao-empresa .emp-abas a{display:flex;align-items:center;gap:6px;padding:9px 12px;margin-bottom:-1px;border-bottom:2px solid transparent;font-size:12.5px;font-weight:600;color:var(--text-muted)}
.pg-apuracao-empresa .emp-abas a i{font-style:normal;font-weight:700}
.pg-apuracao-empresa .emp-abas a:hover{color:var(--text)}
.pg-apuracao-empresa .emp-abas a.on{color:var(--text);border-bottom-color:var(--acc)}
.pg-apuracao-empresa .emp-abas a.on i{color:var(--acc-deep)}
.pg-apuracao-empresa .em-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;margin:0 0 12px}
.pg-apuracao-empresa .em-kpis > div{padding:10px 14px;background:var(--surface-solid);clip-path:var(--c12);transition:transform .25s var(--ease-i)}
.pg-apuracao-empresa .em-kpis > div:hover{transform:translateY(-2px)}
.pg-apuracao-empresa .em-kpis span{display:block;font-size:11.5px;font-weight:600;color:var(--text-muted)}
.pg-apuracao-empresa .em-kpis b{display:block;margin-top:2px;font-size:19px;font-weight:800;letter-spacing:-.3px;color:var(--text)}
.pg-apuracao-empresa .em-kpis small{font-size:11px;color:var(--text-muted)}
.pg-apuracao-empresa .em-kpis small.sobe,.pg-apuracao-empresa .em-kpis small.desce{color:var(--ok-fg)}
.pg-apuracao-empresa .em-kpis .ouro b{color:var(--acc-deep)}
html[data-theme="dark"] .pg-apuracao-empresa .em-kpis .ouro b{color:var(--acc2)}
.pg-apuracao-empresa .em-g2{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:12px;margin-bottom:12px}
.pg-apuracao-empresa .em-g3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:12px}
.pg-apuracao-empresa .em-q{position:relative;min-width:0;margin:0 0 12px;padding:12px 16px 14px;background:var(--surface-solid);clip-path:var(--c16)}
.pg-apuracao-empresa .em-g2 .em-q,.pg-apuracao-empresa .em-g3 .em-q{margin:0}
.pg-apuracao-empresa .em-q h3{margin:0 0 8px;font-size:13px;font-weight:700;letter-spacing:0;color:var(--text)}
.pg-apuracao-empresa .em-tag{margin-left:6px;padding:1px 6px;font-size:10.5px;font-weight:600;background:var(--campo);color:var(--text-muted)}
.pg-apuracao-empresa .em-gfx{display:block;width:100%;height:auto;overflow:visible}
.pg-apuracao-empresa .em-grade{stroke:var(--line);stroke-width:1}
.pg-apuracao-empresa .em-base{stroke:var(--field-border-hover);stroke-width:1}
.pg-apuracao-empresa .em-eixo{font-size:11px;fill:var(--text-muted);font-family:var(--font)}
.pg-apuracao-empresa .em-eixo.forte{fill:var(--text);font-weight:700}
.pg-apuracao-empresa .em-valor{font-size:11.5px;font-weight:800;fill:var(--text);font-family:var(--font)}
.pg-apuracao-empresa .em-alvo{fill:transparent}
.pg-apuracao-empresa .em-col-r{fill:#C9C5B9;transform-box:fill-box;transform-origin:bottom;animation:emCresce .6s cubic-bezier(.16,.84,.44,1) both;animation-delay:var(--d,0ms);transition:fill .2s}
html[data-theme="dark"] .pg-apuracao-empresa .em-col-r{fill:rgba(248,246,241,.24)}
.pg-apuracao-empresa .em-col.on .em-col-r{fill:var(--acc-deep)}
.pg-apuracao-empresa .em-col:hover .em-col-r,.pg-apuracao-empresa .em-col:focus .em-col-r{fill:var(--acc)}
.pg-apuracao-empresa .em-col:focus{outline:none}
.pg-apuracao-empresa .em-zero{stroke:var(--line);stroke-width:2}
@keyframes emCresce{from{transform:scaleY(0)}to{transform:scaleY(1)}}
@keyframes emEnche{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.pg-apuracao-empresa .em-hb{display:grid;grid-template-columns:96px minmax(0,1fr) 116px;align-items:center;gap:10px;padding:6px 0;border-bottom:1px solid var(--line)}
.pg-apuracao-empresa .em-hb-n{font-size:12px;font-weight:700}
.pg-apuracao-empresa .em-hb-t{height:10px;background:var(--campo)}
.pg-apuracao-empresa .em-hb-t i{display:block;height:100%;background:var(--acc-deep);transform-origin:left;animation:emEnche .6s cubic-bezier(.16,.84,.44,1) both;animation-delay:var(--d,0ms)}
.pg-apuracao-empresa .em-hb:hover .em-hb-t i{background:var(--acc)}
.pg-apuracao-empresa .em-hb-v{text-align:right;font-size:12px;font-weight:700}
.pg-apuracao-empresa .em-hb-v small{display:block;font-size:11px;font-weight:500;color:var(--text-muted)}
.pg-apuracao-empresa .em-hb-tot{display:flex;justify-content:space-between;align-items:baseline;padding-top:8px;font-size:12px;color:var(--text-muted)}
.pg-apuracao-empresa .em-hb-tot b{font-size:15px;color:var(--text)}
.pg-apuracao-empresa .em-sg{padding:6px 0;border-bottom:1px solid var(--line)}
.pg-apuracao-empresa .em-sg-c{display:flex;justify-content:space-between;gap:8px;font-size:12px}
.pg-apuracao-empresa .em-sg-c span{font-size:11.5px;color:var(--text-muted)}
.pg-apuracao-empresa .em-sg-t{display:flex;gap:2px;height:12px;margin:5px 0 3px;background:var(--campo)}
.pg-apuracao-empresa .em-sg-t i{display:block;height:100%;transform-origin:left;animation:emEnche .6s cubic-bezier(.16,.84,.44,1) both}
.pg-apuracao-empresa .em-sg-t i.fora,.pg-apuracao-empresa .t-1{background:var(--acc-deep)}
.pg-apuracao-empresa .t-0{background:#C9C5B9}
.pg-apuracao-empresa .t-2{background:var(--warn)}
.pg-apuracao-empresa .t-3{background:var(--brand-desc)}
.pg-apuracao-empresa .em-sg-v{display:flex;justify-content:space-between;font-size:11.5px;color:var(--text-muted)}
.pg-apuracao-empresa .em-sg-v b{color:var(--text)}
.pg-apuracao-empresa .em-comp{height:14px;background:none}
.pg-apuracao-empresa .em-leg{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;margin:8px 0 0;font-size:11px;color:var(--text-muted)}
.pg-apuracao-empresa .em-leg i{display:inline-block;width:10px;height:10px;margin-right:-6px}
.pg-apuracao-empresa .em-lim-n b{display:block;font-size:20px;font-weight:800;letter-spacing:-.3px}
.pg-apuracao-empresa .em-lim-n span{font-size:11.5px;color:var(--text-muted)}
.pg-apuracao-empresa .em-lim-t{position:relative;height:14px;margin:12px 0 4px;background:var(--campo)}
.pg-apuracao-empresa .em-lim-t i{display:block;height:100%;background:var(--acc-deep);transform-origin:left;animation:emEnche .8s cubic-bezier(.16,.84,.44,1) both}
.pg-apuracao-empresa .em-lim-t em{position:absolute;top:-4px;bottom:-4px;width:2px;background:var(--text)}
.pg-apuracao-empresa .em-lim-e{position:relative;height:16px;margin-bottom:8px;font-size:10.5px;color:var(--text-muted)}
.pg-apuracao-empresa .em-lim-e span{position:absolute;top:0;white-space:nowrap}
.pg-apuracao-empresa .em-lim-e span:nth-child(2){transform:translateX(-100%);padding-right:5px}
.pg-apuracao-empresa .em-chk{list-style:none;margin:0 0 8px;padding:0}
.pg-apuracao-empresa .em-chk li{display:grid;grid-template-columns:12px minmax(0,1fr);gap:8px;padding:6px 0;border-bottom:1px solid var(--line)}
.pg-apuracao-empresa .em-chk li:last-child{border-bottom:0}
.pg-apuracao-empresa .em-chk .dot{width:8px;height:8px;margin-top:5px;border-radius:50%;background:var(--text-muted)}
.pg-apuracao-empresa .em-chk .dot.ok{background:var(--ok)}.pg-apuracao-empresa .em-chk .dot.warn,.pg-apuracao-empresa .em-chk .dot.gold{background:var(--warn)}.pg-apuracao-empresa .em-chk .dot.bad{background:var(--bad)}
.pg-apuracao-empresa .em-chk b{display:block;font-size:12px}
.pg-apuracao-empresa .em-chk small{font-size:11.5px;color:var(--text-muted)}
.pg-apuracao-empresa .em-passos{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin:4px 0 0;padding:0;list-style:none;counter-reset:p}
.pg-apuracao-empresa .em-passos li{position:relative;padding:24px 10px 4px 0;counter-increment:p}
.pg-apuracao-empresa .em-passos li::before{content:counter(p);position:absolute;top:0;left:0;z-index:1;width:18px;height:18px;border-radius:50%;background:var(--campo);color:var(--text-muted);font-size:10.5px;font-weight:800;display:flex;align-items:center;justify-content:center}
.pg-apuracao-empresa .em-passos li::after{content:"";position:absolute;top:9px;left:22px;right:6px;height:2px;background:var(--line)}
.pg-apuracao-empresa .em-passos li:last-child::after{display:none}
.pg-apuracao-empresa .em-passos li.feito::before{content:"✓";background:var(--ok);color:#fff}
.pg-apuracao-empresa .em-passos li.feito::after{background:var(--ok)}
.pg-apuracao-empresa .em-passos li.agora::before{background:var(--acc);color:var(--acc-ink)}
.pg-apuracao-empresa .em-passos b{display:block;font-size:12px}
.pg-apuracao-empresa .em-passos span{font-size:11.5px;color:var(--text-muted)}
.pg-apuracao-empresa .em-conta{display:grid;grid-template-columns:minmax(0,1fr) 24px minmax(0,1fr) 24px minmax(0,1fr);align-items:center;margin:0 0 12px}
.pg-apuracao-empresa .em-conta > div{padding:10px 14px;background:var(--surface-solid);clip-path:var(--c12)}
.pg-apuracao-empresa .em-conta > div.fim{background:var(--brand)}
.pg-apuracao-empresa .em-conta em{font-style:normal;text-align:center;font-size:18px;font-weight:800;color:var(--text-muted)}
.pg-apuracao-empresa .em-conta span{display:block;font-size:11.5px;font-weight:600;color:var(--text-muted)}
.pg-apuracao-empresa .em-conta b{display:block;margin-top:2px;font-size:19px;font-weight:800;letter-spacing:-.3px}
.pg-apuracao-empresa .em-conta small{font-size:11px;color:var(--text-muted)}
.pg-apuracao-empresa .em-conta .ouro b{color:var(--acc-deep)}
html[data-theme="dark"] .pg-apuracao-empresa .em-conta .ouro b{color:var(--acc2)}
.pg-apuracao-empresa .em-conta .fim span,.pg-apuracao-empresa .em-conta .fim small{color:rgba(255,255,255,.65)}
.pg-apuracao-empresa .em-conta .fim b{color:var(--acc2)}
.pg-apuracao-empresa .em-potencial{margin:0 0 12px}
.pg-apuracao-empresa .em-barra{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:0 0 10px}
.pg-apuracao-empresa .em-barra .em-ref{margin-left:auto;font-size:12px;color:var(--text-muted)}
.pg-apuracao-empresa .em-chips{display:flex;flex-wrap:wrap;gap:4px}
.pg-apuracao-empresa .em-chips a,.pg-apuracao-empresa .em-chips button{display:inline-flex;align-items:center;gap:4px;height:30px;padding:0 10px;border:0;background:var(--surface-solid);color:var(--text);font:inherit;font-size:12px;font-weight:600;cursor:pointer;clip-path:var(--c8)}
.pg-apuracao-empresa .em-chips i{font-style:normal;font-weight:700;color:var(--text-muted)}
.pg-apuracao-empresa .em-chips .on{background:var(--brand);color:var(--acc2)}
.pg-apuracao-empresa .em-chips .on i{color:var(--acc)}
.pg-apuracao-empresa .em-busca{width:220px}
.pg-apuracao-empresa .em-tw{background:var(--surface-solid);padding:0 12px;clip-path:polygon(16px 0,100% 0,100% 100%,0 100%,0 16px);margin-bottom:12px}
.pg-apuracao-empresa .em-vazio{margin:0;padding:24px 0;text-align:center;color:var(--text-muted)}
.pg-apuracao-empresa .em-aviso{display:flex;align-items:center;gap:12px;margin:0 0 12px}
.pg-apuracao-empresa .em-aviso > div{flex:1}
.pg-apuracao-empresa .em-avisos{margin:0 0 12px}
.pg-apuracao-empresa .em-avisos summary{cursor:pointer;font-weight:700}
.pg-apuracao-empresa .em-avisos ul{margin:6px 0 0;padding-left:18px;color:var(--text-muted)}
.pg-apuracao-empresa .em-kv{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:5px 0;border-bottom:1px solid var(--line);font-size:12.5px}
.pg-apuracao-empresa .em-kv:last-child{border-bottom:0}
.pg-apuracao-empresa .em-kv span{color:var(--text-muted)}
.pg-apuracao-empresa .em-copia{padding:3px 8px;border:0;background:var(--campo);color:var(--text);font:inherit;font-size:12.5px;font-weight:700;cursor:copy;clip-path:var(--c8);transition:background .2s}
.pg-apuracao-empresa .em-copia:hover{background:var(--fill-gold)}
.pg-apuracao-empresa .em-copia.ok{background:rgba(70,167,88,.2)}
.pg-apuracao-empresa .em-ativ{margin-top:10px;padding-top:10px;border-top:1px solid var(--line)}
.pg-apuracao-empresa .em-ativ:first-of-type{margin-top:0;padding-top:0;border-top:0}
.pg-apuracao-empresa .em-ativ-c{display:flex;align-items:flex-start;gap:12px;margin-bottom:6px;font-size:12.5px}
.pg-apuracao-empresa .em-ativ-c > div{flex:1}
.pg-apuracao-empresa .em-ativ-c small{display:block;font-size:11.5px;color:var(--text-muted)}
.pg-apuracao-empresa .em-estab{margin:8px 0 4px;font-size:12.5px}
@media (max-width:1100px){.pg-apuracao-empresa .em-g3{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:860px){
  .pg-apuracao-empresa .em-g2,.pg-apuracao-empresa .em-g3{grid-template-columns:minmax(0,1fr)}
  .pg-apuracao-empresa .em-conta{grid-template-columns:minmax(0,1fr)}.pg-apuracao-empresa .em-conta em{display:none}.pg-apuracao-empresa .em-conta > div{margin-bottom:6px}
  .pg-apuracao-empresa .emp-cab{margin-right:-24px;padding-right:24px}.pg-apuracao-empresa .emp-abas{margin-right:-24px;padding-right:24px}
}
@media (max-width:720px){.pg-apuracao-empresa .emp-cab,.pg-apuracao-empresa .emp-abas{margin-left:-20px;padding-left:20px;margin-right:-20px;padding-right:20px}}
@media (prefers-reduced-motion:reduce){.pg-apuracao-empresa .em-col-r,.pg-apuracao-empresa .em-hb-t i,.pg-apuracao-empresa .em-sg-t i,.pg-apuracao-empresa .em-lim-t i{animation:none}}

/* tela:consulta-cnpj inicio (Fiscal › Consulta CNPJ: consulta, busca avançada, ficha e sócio; listas no desenho das listas do Fiscal) */
.pg-cnpj{--cf-borda:#c9ced6;--cf-rot:150px}
html[data-theme="dark"] .pg-cnpj{--cf-borda:#3a4455}
.pg-cnpj .cnpj-consulta{position:relative;max-width:980px;margin:var(--s-4) auto var(--s-5);padding:20px 16px 12px;border:1px solid var(--cf-borda);border-radius:4px}
.pg-cnpj .cnpj-consulta>h2{position:absolute;top:-9px;left:10px;margin:0;padding:0 6px;background:var(--bg);font-size:12.5px;font-weight:700;line-height:16px}
.pg-cnpj .cnpj-consulta form{display:flex;align-items:center;gap:10px}
.pg-cnpj .cnpj-consulta label{flex:0 0 100px;font-size:13px;color:var(--text-muted)}
.pg-cnpj .cnpj-consulta input{flex:1;min-width:0;height:46px;font-size:18px;font-weight:600;padding:0 14px}
.pg-cnpj .cnpj-consulta .btn{height:46px;padding:0 34px;font-size:15px;font-weight:700}
.pg-cnpj .cnpj-consulta form>a{font-size:13px;white-space:nowrap}
.pg-cnpj .cnpj-consulta p{margin:8px 0 0 110px;font-size:12px;color:var(--text-muted)}
@media(max-width:720px){.pg-cnpj .cnpj-consulta form{flex-wrap:wrap}.pg-cnpj .cnpj-consulta label{flex-basis:100%}.pg-cnpj .cnpj-consulta input{flex-basis:100%}.pg-cnpj .cnpj-consulta .btn{flex:1}.pg-cnpj .cnpj-consulta p{margin-left:0}}
.pg-cnpj .cnpj-linha{margin:-4px 0 var(--s-3)}
.pg-cnpj .cnpj-fonte{margin:var(--s-5) 0 0;padding-top:var(--s-3);border-top:1px solid var(--line);font-size:12px;color:var(--text-muted)}
.pg-cnpj .cnpj-pag{display:flex;align-items:center;justify-content:flex-end;gap:var(--s-3);margin:var(--s-3) 0 0}
.pg-cnpj .cnpj-tb td.num,.pg-cnpj .cnpj-tb th.num{text-align:right}
/* atividade em uma linha (nome inteiro na dica) e marca de cliente da carteira ao lado do nome */
.pg-cnpj .cnpj-tb td.cnpj-atv{max-width:210px}
.pg-cnpj .cnpj-tb td.cnpj-atv .fl-sub{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pg-cnpj .cnpj-tb td.cnpj-porte{white-space:normal;min-width:120px;max-width:170px}
.pg-cnpj .cnpj-tb td.cnpj-porte .fl-sub{white-space:normal}
.pg-cnpj .cnpj-cliente{margin-left:6px;padding:1px 6px;border:1px solid var(--gold);border-radius:3px;font-size:11px;font-weight:600;color:var(--text);vertical-align:1px}
/* filtros da busca avançada: quadro de borda fina com o título na borda, rótulo à esquerda e campos baixos */
.pg-cnpj .cnpj-filtros fieldset{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:6px 18px;margin:0 0 var(--s-4);padding:12px 14px 10px;border:1px solid var(--cf-borda);border-radius:4px}
.pg-cnpj .cnpj-filtros legend{padding:0 6px;font-size:12.5px;font-weight:700}
.pg-cnpj .cnpj-filtros label:not(.chk){display:grid;grid-template-columns:var(--cf-rot) minmax(0,1fr);align-items:center;gap:8px;margin:0;font-size:12.5px;color:var(--text-muted)}
.pg-cnpj .cnpj-filtros .cf-largo{grid-column:span 2}
@media(max-width:720px){.pg-cnpj .cnpj-filtros .cf-largo{grid-column:auto}}
.pg-cnpj .cnpj-filtros input:not([type=checkbox]),.pg-cnpj .cnpj-filtros select{height:28px;padding:3px 8px;font-size:13px;border-radius:3px}
.pg-cnpj .cnpj-filtros .cf-marcas{grid-column:1 / -1;display:flex;flex-wrap:wrap;align-items:center;gap:6px 20px;padding-top:6px;border-top:1px solid var(--line)}
.pg-cnpj .cnpj-filtros .chk{display:inline-flex;align-items:center;gap:8px;font-size:13px}
.pg-cnpj .cnpj-filtros .cf-marcas .btn{margin-left:auto;padding:5px 20px}
/* ficha */
.pg-cnpj-ficha .cnpj-trilha{margin:4px 0 2px;font-size:12.5px;color:var(--text-muted)}
.pg-cnpj-ficha .cnpj-selo{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;margin:0 0 var(--s-4);padding:9px 14px;border:1px solid var(--cf-borda);border-left:3px solid var(--ok);border-radius:4px}
.pg-cnpj-ficha .cnpj-grade{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:var(--s-4);align-items:start}
@media(max-width:1100px){.pg-cnpj-ficha .cnpj-grade{grid-template-columns:minmax(0,1fr)}}
.pg-cnpj-ficha .cnpj-col{display:grid;gap:var(--s-4)}
.pg-cnpj .cnpj-quadro{position:relative;padding:16px 14px 8px;border:1px solid var(--cf-borda);border-radius:4px}
.pg-cnpj .cnpj-quadro > h2{position:absolute;top:-9px;left:10px;margin:0;padding:0 6px;background:var(--bg);font-size:12.5px;font-weight:700;line-height:16px}
.pg-cnpj-ficha .cnpj-kv{display:grid;grid-template-columns:var(--cf-rot) minmax(0,1fr);margin:0;font-size:13px}
.pg-cnpj-ficha .cnpj-kv dt,.pg-cnpj-ficha .cnpj-kv dd{margin:0;padding:6px 0;border-bottom:1px solid var(--line)}
.pg-cnpj-ficha .cnpj-kv dt{padding-right:12px;color:var(--text-muted)}
.pg-cnpj-ficha .cnpj-kv dt:last-of-type,.pg-cnpj-ficha .cnpj-kv dd:last-of-type{border-bottom:0}
.pg-cnpj-ficha .cnpj-lista{margin:0;padding:0;list-style:none}
.pg-cnpj-ficha .cnpj-lista li{padding:1px 0}
.pg-cnpj-ficha .cnpj-socios{margin:0;padding:0;list-style:none;font-size:13px}
.pg-cnpj-ficha .cnpj-socios li{padding:6px 0;border-bottom:1px solid var(--line)}
.pg-cnpj-ficha .cnpj-socios li:last-child{border-bottom:0}
.pg-cnpj-ficha .cnpj-socios .fl-sub{display:block;margin-top:1px;font-size:12px;color:var(--text-muted)}
.pg-cnpj-ficha .cnpj-mais summary{padding:6px 0;font-size:12.5px;font-weight:600;color:var(--link);cursor:pointer}
.pg-cnpj-ficha .cnpj-aovivo.is-ok{color:var(--ok-fg)}
.pg-cnpj-ficha .cnpj-aovivo.is-bad{color:var(--bad-fg);font-weight:600}
.pg-cnpj-ficha .cnpj-publicacoes{margin-top:var(--s-5)}
.pg-cnpj-ficha .cnpj-pub-corpo{overflow-x:auto}
.pg-cnpj-ficha .cnpj-pub-tb{font-size:12.5px}
.pg-cnpj-ficha .cnpj-pub-tb td{padding:6px 10px 6px 0;vertical-align:top}
.pg-cnpj-ficha .cnpj-publicacoes .cnpj-pag{justify-content:flex-start}
.pg-cnpj-ficha .cnpj-publicacoes .cnpj-fonte{margin-top:8px;padding-top:0;border:0}
.pg-cnpj-ficha .cnpj-concorrentes{margin-top:var(--s-5)}
/* tabela da ficha usa o desenho das listas do Fiscal */
.pg-cnpj-ficha .fl-tb td:not(.fl-nome){width:1%;white-space:nowrap}
.pg-cnpj-ficha .fl-sub{display:block;font-size:12.5px;color:var(--text-muted);margin-top:2px}
.pg-cnpj-ficha .fl-sec{margin:var(--s-6) 0 var(--s-2);font-size:15px;font-weight:700}
/* mapa: colunas 3D por cidade (deck.gl) sobre os contornos do IBGE, sempre no chumbo da marca */
.pg-cnpj-mapa .cnpj-filtros fieldset{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}
.pg-cnpj-mapa .cnpj-mapa-area{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:var(--s-4);align-items:start}
@media(max-width:1100px){.pg-cnpj-mapa .cnpj-mapa-area{grid-template-columns:minmax(0,1fr)}}
.pg-cnpj-mapa .cnpj-mapa{position:relative;height:max(520px,calc(100vh - 330px));border-radius:4px;overflow:hidden;background:#1A2022}
.pg-cnpj-mapa .cnpj-mapa.carregando canvas{opacity:.6;transition:opacity .2s}
.pg-cnpj-mapa .cnpj-mapa-legenda{position:absolute;left:14px;bottom:14px;z-index:2;display:flex;align-items:center;gap:8px;font-size:11.5px;color:rgba(255,255,255,.7)}
.pg-cnpj-mapa .cnpj-mapa-legenda i{width:120px;height:8px;border-radius:2px;background:linear-gradient(90deg,#785C1E,#CC9F2D,#FFECAA)}
.pg-cnpj-mapa .cnpj-mapa-credito{position:absolute;right:8px;bottom:6px;z-index:2;padding:1px 6px;border-radius:3px;background:rgba(0,0,0,.55);font-size:11px;color:rgba(255,255,255,.75)}
.pg-cnpj-mapa .cnpj-mapa-credito a{color:inherit;text-decoration:underline}
.pg-cnpj-mapa .cnpj-mapa-dica{position:absolute;right:14px;top:12px;max-width:calc(100% - 190px);text-align:right;z-index:2;margin:0;font-size:11.5px;color:rgba(255,255,255,.5)}
.cnpj-mapa-tip{padding:6px 10px!important;border-radius:3px;background:#20282A!important;color:#F8F6F1!important;font:12.5px/1.4 var(--font)!important}
.pg-cnpj-mapa .cnpj-mapa-lado{display:grid;gap:var(--s-4)}
.pg-cnpj-mapa .ph .is-off{opacity:.45;cursor:not-allowed}
.pg-cnpj-mapa .cnpj-mapa-voltar{position:absolute;top:12px;left:12px;z-index:2;padding:5px 12px;font-size:12.5px;background:rgba(32,40,42,.85);color:#F8F6F1;border-color:rgba(229,197,115,.4)}
.pg-cnpj-mapa .cnpj-mapa-regs{display:flex;flex-direction:column;align-items:flex-start;gap:6px;margin-top:12px;padding-top:10px;border-top:1px solid var(--line)}
.pg-cnpj-mapa .cnpj-mapa-regs .mini{text-align:left;white-space:normal}
.pg-cnpj-mapa .cnpj-mapa-pts{margin:10px 0 0}
.pg-cnpj-mapa .cnpj-mapa-emp{display:flex;flex-direction:column;align-items:flex-start;gap:4px;margin-top:10px;padding:8px 10px;border-left:3px solid var(--gold);background:var(--fill-1);font-size:13px}
.pg-cnpj-mapa #mpCidade p{margin:4px 0 10px;font-size:13px}
.pg-cnpj-mapa .cnpj-mapa-n{font-size:22px;font-weight:700}
.pg-cnpj-mapa .cnpj-ranking{margin:0;padding:0 0 0 22px;font-size:13px}
.pg-cnpj-mapa .cnpj-ranking li{padding:4px 0;border-bottom:1px solid var(--line)}
.pg-cnpj-mapa .cnpj-ranking li:last-child{border-bottom:0}
.pg-cnpj-mapa .cnpj-ranking li:has(button){display:list-item}
.pg-cnpj-mapa .cnpj-ranking button{padding:0;border:0;background:none;font:inherit;color:var(--text);cursor:pointer;text-align:left}
.pg-cnpj-mapa .cnpj-ranking button:hover{color:var(--link);text-decoration:underline}
.pg-cnpj-mapa .cnpj-ranking .nums{float:right;color:var(--text-muted)}
/* painel: barras deitadas num tom só (dourado), número escrito ao lado; aberturas por ano em colunas */
.pg-cnpj-painel .pn-trilha{margin:0 0 var(--s-3);font-size:13px}
.pg-cnpj-painel .pn-grade{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s-5) var(--s-4);margin-top:var(--s-4)}
@media(max-width:1100px){.pg-cnpj-painel .pn-grade{grid-template-columns:minmax(0,1fr)}}
.pg-cnpj-painel .pn-largo{grid-column:1 / -1}
.pg-cnpj-painel .pn-barras{margin:0;padding:0;list-style:none;font-size:12.5px}
.pg-cnpj-painel .pn-barras li{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(60px,1fr) 92px;align-items:center;gap:10px;padding:4px 0}
.pg-cnpj-painel .pn-rot{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pg-cnpj-painel .pn-rot small{margin-right:6px;color:var(--text-muted)}
.pg-cnpj-painel .pn-rot a{color:var(--text)}
.pg-cnpj-painel .pn-rot a:hover{color:var(--link);text-decoration:underline}
.pg-cnpj-painel .pn-trilho{height:8px;border-radius:2px;background:var(--fill-1)}
.pg-cnpj-painel .pn-trilho i{display:block;height:100%;min-width:2px;border-radius:0 4px 4px 0;background:var(--gold)}
.pg-cnpj-painel .pn-barras li:hover .pn-trilho i{filter:brightness(1.12)}
.pg-cnpj-painel .pn-n{text-align:right;white-space:nowrap}
.pg-cnpj-painel .pn-n small{display:inline-block;width:42px;margin-left:4px;color:var(--text-muted)}
.pg-cnpj-painel .pn-anos{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:2px;align-items:end;height:190px;padding-top:6px}
.pg-cnpj-painel .pn-ano{display:flex;flex-direction:column;align-items:center;height:100%;font-size:11.5px}
.pg-cnpj-painel .pn-ano-barra{flex:1;display:flex;align-items:flex-end;width:62%;max-width:36px}
.pg-cnpj-painel .pn-ano-barra i{display:block;width:100%;min-height:2px;border-radius:4px 4px 0 0;background:var(--gold)}
.pg-cnpj-painel .pn-ano:hover .pn-ano-barra i{filter:brightness(1.12)}
.pg-cnpj-painel .pn-ano-n{margin-bottom:4px;color:var(--text-muted)}
.pg-cnpj-painel .pn-ano-rot{margin-top:6px;padding-top:4px;border-top:1px solid var(--line);width:100%;text-align:center}
/* tela:consulta-cnpj fim */

/* —— CEO › Custos (.pg-custos) —— */
.pg-custos .cus-alerta{color:var(--warn-fg);font-weight:650;font-size:var(--fs-sm)}
.pg-custos .cus-fechado{color:var(--ok-fg);font-weight:650;font-size:var(--fs-sm)}
.pg-custos .cus-pend{margin:var(--s-3) 0 0;padding-left:1.2em;font-size:var(--fs-sm)}
.pg-custos .cus-lote{margin:0 0 var(--s-3)}
.pg-custos .cus-tags{display:inline-flex;flex-wrap:wrap;gap:4px;margin-left:6px}
.pg-custos .cus-tag{font-style:normal;font-size:11px;font-weight:650;color:var(--warn-fg);border:1px solid var(--line);padding:1px 5px}
.pg-custos .cus-inline{display:inline-flex;align-items:center;gap:4px;margin:0}
.pg-custos .cus-neg{width:5.5rem}
.pg-custos .cus-form .fld{margin-bottom:var(--s-2)}
.pg-custos .cus-socios-linhas{display:flex;flex-direction:column;gap:var(--s-2);margin-top:var(--s-2)}
.pg-custos .cus-reabrir{padding:var(--s-2);min-width:14rem}
.pg-custos .u-hide{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
.pg-notas .nt-fonte{margin:calc(-1 * var(--s-3)) 0 var(--s-5)}
.pg-notas .nt-evo{background:var(--surface-solid);border:1px solid var(--line);border-radius:var(--r-sm);padding:16px 18px;margin-bottom:var(--s-5)}
.pg-notas .nt-evo .tit{font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--text-muted);margin-bottom:14px}
.pg-notas .nt-evo .barras{display:flex;align-items:stretch;gap:10px;height:180px;overflow-x:auto;padding-bottom:2px}
.pg-notas .nt-evo .col{flex:1 0 54px;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:4px}
.pg-notas .nt-evo .col .n{height:14px;font-size:11px;font-weight:700;color:var(--text);font-variant-numeric:tabular-nums;white-space:nowrap}
.pg-notas .nt-evo .col .par{flex:1 1 auto;width:100%;min-height:0;display:flex;align-items:flex-end;justify-content:center;gap:3px}
.pg-notas .nt-evo .col .b{display:block;width:100%;max-width:22px;min-height:0;border-radius:4px 4px 0 0}
.pg-notas .nt-evo .col .b.s{background:var(--gold)}
.pg-notas .nt-evo .col .b.e{background:var(--fill-2)}
.pg-notas .nt-evo .col .d{font-size:10.5px;color:var(--text-muted);font-variant-numeric:tabular-nums}
.pg-notas .nt-evo .col.atual .d{color:var(--text);font-weight:700}
.pg-notas .nt-evo .leg{display:flex;gap:var(--s-4);margin-top:12px;font-size:12px;color:var(--text-muted)}
.pg-notas .nt-evo .leg i{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:6px;vertical-align:-1px}
.pg-notas .nt-evo .leg i.s{background:var(--gold)}
.pg-notas .nt-evo .leg i.e{background:var(--fill-2);border:1px solid var(--line)}
.pg-notas .fl-barra .fl-comp{display:flex;align-items:center;gap:var(--s-2)}
.pg-notas .fl-barra .cselect{width:auto;min-width:190px}
/* portal: a emissao de NFS-e abre dentro da pagina, no espaco da tela, em vez de janela flutuante */
.pg-notas .dlg-nota.dlg-inline{position:static;inset:auto;width:100%;height:auto;min-height:620px;max-height:none;margin:0 0 var(--s-5);overflow:visible;border-radius:var(--r-md);box-shadow:none}
.pg-notas .dlg-nota.dlg-inline .nt-corpo{overflow:visible}
.pg-notas .nt-base{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s-4);align-items:start}
.pg-notas .nt-rank,.pg-notas .nt-avisos{display:grid;gap:var(--s-4);min-width:0}
.pg-notas .nt-rank .card + .card,.pg-notas .nt-avisos .aviso + .aviso{margin-top:0}
.pg-notas .nt-base > .nt-avisos{grid-column:2}
@media(max-width:900px){.pg-notas .nt-base{grid-template-columns:1fr}.pg-notas .nt-base > .nt-avisos{grid-column:1}}
/* portal: emissao de NFS-e como parte da pagina (sem barra de titulo, sem borda de janela, rotulo em cima, sem vazios) */
.pg-notas .dlg-nota.nt-denso.dlg-inline{min-height:0;max-width:1180px;border:0;border-radius:0;background:none}
.pg-notas .dlg-nota.nt-denso.dlg-inline > form{background:none}
.pg-notas .dlg-nota.nt-denso.dlg-inline .nt-cabeca{background:none;border-bottom:1px solid var(--line)}
.pg-notas .dlg-nota.nt-denso.dlg-inline .nt-topo{padding:0 0 8px;background:none;justify-content:flex-end}
.pg-notas .dlg-nota.nt-denso.dlg-inline .nt-topo h2,.pg-notas .dlg-nota.nt-denso.dlg-inline .nt-topo .seg{display:none}
.pg-notas .dlg-nota.nt-denso.dlg-inline .nt-topo .nt-numero,.pg-notas .dlg-nota.nt-denso.dlg-inline .nt-topo .nt-salvo{color:var(--text-muted)}
.pg-notas .dlg-nota.nt-denso.dlg-inline .nt-topo .nt-selo.prod{background:rgba(31,143,90,.14);color:var(--ok-fg)}
.pg-notas .dlg-nota.nt-denso.dlg-inline .nt-abas{padding:0}
.pg-notas .dlg-nota.nt-denso.dlg-inline .nt-abas button[aria-selected="true"]{background:none}
.pg-notas .dlg-nota.nt-denso.dlg-inline .nt-corpo{padding:16px 0 4px;background:none}
.pg-notas .dlg-nota.nt-denso.dlg-inline fieldset{padding:14px 14px 6px;margin-bottom:14px;border-color:var(--line);border-radius:var(--r-sm)}
.pg-notas .dlg-nota.nt-denso.dlg-inline .filtros{gap:12px 16px;margin:0 0 10px;align-items:end}
.pg-notas .dlg-nota.nt-denso.dlg-inline .filtros > .fld{grid-template-columns:minmax(0,1fr);gap:5px;align-items:stretch}
.pg-notas .dlg-nota.nt-denso.dlg-inline .fld .lb{justify-content:flex-start;text-align:left}
.pg-notas .dlg-nota.nt-denso.dlg-inline .filtros > .fld > .nt-erro-msg{grid-column:1}
.pg-notas .dlg-nota.nt-denso.dlg-inline .ns-chave,.pg-notas .dlg-nota.nt-denso.dlg-inline .nt-emit-nome,.pg-notas .dlg-nota.nt-denso.dlg-inline .nt-dest-info{padding-left:0;margin-left:0}
.pg-notas .dlg-nota.nt-denso.dlg-inline .nt-acoes{padding:12px 0 0;background:none;border-top:1px solid var(--line)}
.pg-notas .dlg-nota.nt-denso.dlg-inline .nt-acoes .btn.ghost{border-color:var(--line)}
.pg-notas .dlg-nota.nt-denso.dlg-inline .nt-fechar{display:none}
.pg-notas .dlg-nota.nt-denso.dlg-inline .nt-topo{justify-content:flex-start}
.pg-notas .dlg-nota.nt-denso.dlg-inline .nt-topo .ns-prest-linha{margin-right:auto;font-size:13px;color:var(--text-muted)}
.pg-notas .dlg-nota.nt-denso.dlg-inline .nt-topo .ns-prest-linha b{color:var(--text);font-weight:650}
.pg-custos .filtros > .cus-planos{flex:1 1 100%;grid-column:1 / -1;min-width:0;margin:0;padding:0;border:0}
.pg-custos .cus-planos legend{padding:0;margin:0 0 6px;font-size:12px;font-weight:600;color:var(--text-muted)}
.pg-custos .cus-planos .tb td,.pg-custos .cus-planos .tb th{padding:7px 10px}
.pg-custos .cus-planos .cus-pl{display:inline-flex;align-items:center;gap:8px;cursor:pointer;font-variant-numeric:tabular-nums;font-weight:600}
.pg-custos .cus-planos .tb{width:100%}
.pg-custos .cus-planos .cus-pl{justify-content:flex-end;white-space:nowrap}
.pg-custos .cus-planos .cus-pl input{margin:0;flex:none}
