/* CONSULT 2026 — sistema visual institucional aplicado ao Commerce */
@font-face{font-family:Montserrat;src:url('/fonts/montserrat-latin-400-normal.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Montserrat;src:url('/fonts/montserrat-latin-500-normal.woff2') format('woff2');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:Montserrat;src:url('/fonts/montserrat-latin-600-normal.woff2') format('woff2');font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:Montserrat;src:url('/fonts/montserrat-latin-700-normal.woff2') format('woff2');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:Montserrat;src:url('/fonts/montserrat-latin-800-normal.woff2') format('woff2');font-weight:800 900;font-style:normal;font-display:swap}
@font-face{font-family:'Open Sans';src:url('/fonts/open-sans-latin-400-normal.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Open Sans';src:url('/fonts/open-sans-latin-500-normal.woff2') format('woff2');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:'Open Sans';src:url('/fonts/open-sans-latin-600-normal.woff2') format('woff2');font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:'Open Sans';src:url('/fonts/open-sans-latin-700-normal.woff2') format('woff2');font-weight:700 800;font-style:normal;font-display:swap}
:root{
  --consult-ink:#0b0b0c;
  --consult-paper:#f6f5f1;
  --consult-white:#fff;
  --consult-grid:rgba(11,11,12,.045);
  --consult-cyan:#18ace3;
  --consult-yellow:#ffc914;
  --consult-red:#ef1d27;
  --consult-graphite:#505050;
  --consult-line:#d8d8d3;
  --consult-display:"Montserrat",Arial,sans-serif;
  --consult-text:"Open Sans",Arial,sans-serif;
}

html,body{background-color:var(--consult-paper)}
body{
  font-family:var(--consult-text);
  background-image:
    linear-gradient(var(--consult-grid) 1px,transparent 1px),
    linear-gradient(90deg,var(--consult-grid) 1px,transparent 1px);
  background-size:60px 60px;
}

/* Tipografia CONSULT: reta, sem itálico ou fontes decorativas. */
body,button,input,select,textarea,a,label,small,span,p,td,th{
  font-family:var(--consult-text)!important;
  font-style:normal!important;
}
h1,h2,h3,h4,h5,h6,.eyebrow,.panel-title strong,.section-head strong{
  font-family:var(--consult-display)!important;
  font-style:normal!important;
}

h1,h2,h3,.hero h2,.metric strong,.kpi>strong,.brand-title,
.section-head h2,.panel-heading h3,.module-grid strong{
  font-family:var(--consult-display);
  font-weight:900;
  letter-spacing:-.045em;
}

main{background:transparent}
main:after{
  width:430px!important;
  height:430px!important;
  right:-95px!important;
  bottom:-115px!important;
  opacity:.045!important;
}

.sidebar{
  color:#fff;
  background:var(--consult-ink)!important;
  box-shadow:none!important;
  border-right:1px solid #292929;
}
.sidebar:after{
  width:245px!important;
  height:245px!important;
  left:-132px!important;
  bottom:-92px!important;
  opacity:.95!important;
  background:transparent!important;
  border:37px solid var(--consult-cyan);
}
.brand{
  min-height:126px!important;
  padding:15px 18px!important;
  background:transparent!important;
  box-shadow:none!important;
}
.brand:after{
  height:5px!important;
  background:linear-gradient(90deg,var(--consult-cyan) 0 34%,var(--consult-yellow) 34% 62%,var(--consult-red) 62% 82%,var(--consult-graphite) 82%)!important;
}
.brand img{
  width:90%!important;
  max-height:84px!important;
  margin:auto!important;
  padding:4px!important;
  background:transparent!important;
  object-fit:contain!important;
}
.nav-section-label{color:#7f7f7f!important;letter-spacing:.2em!important}
.sidebar nav button,.nav-route,.settings-link{border-radius:0!important}
.sidebar nav button.active{
  color:var(--consult-ink)!important;
  background:var(--consult-cyan)!important;
  box-shadow:none!important;
}
.sidebar nav button.active .menu-icon{
  color:var(--consult-ink)!important;
  border-color:rgba(0,0,0,.18)!important;
  background:rgba(255,255,255,.3)!important;
}
.sidebar nav button.active:after{background:var(--consult-yellow)!important;box-shadow:none!important}
.menu-icon,.settings-gear{border-radius:0!important}
.version-pill,.back-mvp{border-radius:0!important}

header{
  height:82px!important;
  border-bottom:1px solid var(--consult-line)!important;
  background:rgba(246,245,241,.94)!important;
  box-shadow:none!important;
}
header:before{
  height:4px!important;
  background:linear-gradient(90deg,var(--consult-cyan) 0 36%,var(--consult-yellow) 36% 62%,var(--consult-red) 62% 80%,var(--consult-graphite) 80%)!important;
}
header>div>span,.header-title span,.eyebrow{
  color:var(--consult-ink)!important;
  font-weight:900!important;
  letter-spacing:.18em!important;
}
header h1{font-size:20px!important;text-transform:uppercase}
.content{padding-top:32px!important}

.hero{
  border:1px solid var(--consult-line)!important;
  border-radius:0!important;
  background:
    radial-gradient(circle at 84% 30%,var(--consult-yellow) 0 78px,transparent 79px),
    radial-gradient(circle at 90% 58%,var(--consult-red) 0 68px,transparent 69px),
    var(--consult-paper)!important;
  box-shadow:none!important;
}
.hero h2{font-size:clamp(29px,3.2vw,48px)!important;line-height:1.04!important}
.section-head h2{font-size:27px!important;line-height:1.15!important}
.auth-brand h1{font-size:clamp(34px,4vw,58px)!important}
.auth-card h2{font-size:25px!important}

/* Elementos institucionais permanecem atrás do conteúdo do menu. */
.sidebar:after{z-index:0!important;pointer-events:none!important}
.sidebar>.brand,.sidebar>.version-pill,.sidebar>nav,.sidebar>.back-mvp,
.sidebar>.settings-link,.sidebar>.sidebar-bottom,.sidebar>.sidebar-close{
  position:relative;
  z-index:2;
}
.avatar{
  border-radius:50%!important;
  display:grid!important;
  place-items:center!important;
  flex:0 0 auto;
  letter-spacing:.04em;
}
.hero:before{
  content:"";
  position:absolute;
  left:auto!important;
  top:auto!important;
  width:142px;
  height:142px;
  right:11%;
  bottom:-56px;
  border:34px solid var(--consult-cyan);
  border-radius:50%;
  opacity:.9;
}
.hero h2{
  color:var(--consult-ink)!important;
  font-size:clamp(36px,4.25vw,67px)!important;
  line-height:.94!important;
  text-transform:uppercase;
}
.hero h2 em{color:var(--consult-cyan)!important;font-style:normal!important}
.hero p{max-width:680px!important;color:#585858!important}
.hero>img{opacity:.1!important;filter:grayscale(1) contrast(1.3)}

.panel,.metric,.kpi,.module-grid>button,.store-summary article,.integration-card,
.role-grid article,.alert-card,.auth-note,.source-banner{
  border-color:var(--consult-line)!important;
  border-radius:0!important;
  box-shadow:none!important;
}
.metric,.kpi,.module-grid>button,.panel,.store-summary article,.integration-card,.alert-card{
  background:rgba(255,255,255,.94)!important;
}
.metric:before,.kpi:before{height:5px!important}
.module-grid>button{transition:transform .16s ease,border-color .16s ease!important}
.module-grid>button:hover{transform:translateY(-3px)!important;border-color:var(--consult-ink)!important}
.module-grid>button>b,.kpi>div,.store-icon,.upload-icon,.file-icon{
  border-radius:0!important;
}

button,.primary,.secondary,.primary-button,.secondary-button,.outline-button,
.link-button,.institutional-login,input,select,.search,.toolbar label,
.store-selector,.store-switcher,.connection,.operator-lock,.connection-status{
  border-radius:0!important;
}
.primary,.primary-button{
  color:var(--consult-ink)!important;
  background:var(--consult-yellow)!important;
  box-shadow:none!important;
  font-weight:900!important;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.primary:hover,.primary-button:hover{background:#ffd63e!important;transform:translateY(-2px)}
.secondary,.secondary-button,.outline-button{
  border-color:var(--consult-ink)!important;
  background:var(--consult-paper)!important;
}
.hero .secondary{color:var(--consult-ink)!important;background:var(--consult-paper)!important;border-color:var(--consult-ink)!important}
.sidebar-bottom{border-radius:0!important}

.page-footer{
  border-top:1px solid var(--consult-line);
  padding-top:18px;
}
.consultlabs-credit img{filter:none!important}
.store-logout{
  height:40px;
  padding:0 12px;
  border:1px solid #e7aeb2;
  border-radius:0;
  color:#a71922;
  background:#fff;
  cursor:pointer;
  font:800 8px var(--consult-display);
  letter-spacing:.04em;
  text-transform:uppercase;
}
.store-logout:hover{color:#fff;background:var(--consult-red)}
.connection{cursor:pointer}
.profile-menu{position:relative;flex:0 0 auto}
.operator-profile{max-width:170px;display:flex;flex-direction:column;align-items:flex-end;text-align:right;line-height:1.15}
.operator-profile strong{max-width:170px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--consult-black);font:700 12px var(--consult-display)}
.operator-profile small{margin-top:4px;color:#778087;font:600 10px var(--consult-text)}
.profile-menu .avatar{display:grid;place-items:center}
.profile-dropdown{
  width:230px;
  position:absolute;
  top:calc(100% + 10px);
  right:0;
  z-index:80;
  border:1px solid var(--consult-line);
  background:#fff;
  box-shadow:0 18px 45px rgba(17,19,21,.16);
}
.profile-dropdown-head{padding:14px 15px;border-bottom:1px solid var(--consult-line)}
.profile-dropdown-head strong,.profile-dropdown-head small{display:block}
.profile-dropdown-head strong{font:800 10px var(--consult-display);letter-spacing:.03em}
.profile-dropdown-head small{margin-top:4px;color:#778087;font-size:8px}

/* Identificação compacta: nome, função e autenticação ficam recolhidos no perfil. */
.header-actions .operator-lock,
.header-actions .operator-profile{display:none!important}
.profile-dropdown-head strong{font-size:9.6px!important}
.profile-dropdown-head small{font-size:8px!important}
.profile-action{
  width:100%;
  min-height:58px;
  padding:11px 15px;
  border:0;
  border-bottom:1px solid var(--consult-line);
  display:block;
  color:var(--consult-ink);
  background:#fff;
  text-align:left;
  cursor:pointer;
}
.profile-action:last-child{border-bottom:0}
.profile-action span,.profile-action strong{display:block}
.profile-action span{margin-bottom:4px;color:#7a838a;font-size:8px}
.profile-action strong{font:800 9px var(--consult-display);letter-spacing:.035em;text-transform:uppercase}
.profile-action:hover{background:#f5f7f8}
.profile-action.danger-action strong{color:#a71922}
.profile-action.danger-action:hover{background:#fff1f2}
.profile-action[hidden]{display:none!important}

/* Menu lateral — hierarquia, leitura e elementos abaixo do texto */
.sidebar nav{
  position:relative;
  z-index:2;
}
.sidebar .nav-section-label{
  margin:17px 12px 8px!important;
  color:#f4f4f2!important;
  font-family:var(--consult-display)!important;
  font-size:8px!important;
  font-weight:900!important;
  line-height:1.25!important;
  letter-spacing:.13em!important;
  text-transform:uppercase;
}
.sidebar .nav-section-label:first-child{margin-top:4px!important}
.sidebar nav button,
.sidebar nav .nav-route{
  min-height:46px;
  padding:7px 11px!important;
  position:relative;
  isolation:isolate;
  display:flex;
  align-items:center;
  gap:11px;
  color:#d4d8db!important;
  overflow:hidden;
}
.sidebar nav button span,
.sidebar nav .nav-route span{
  position:relative;
  z-index:2;
  color:inherit;
  font-family:var(--consult-text)!important;
  font-size:11px!important;
  font-weight:400!important;
  line-height:1.35!important;
  letter-spacing:.005em!important;
}
.sidebar nav button.active span{
  color:var(--consult-ink)!important;
  font-weight:700!important;
}
.sidebar nav button:hover,
.sidebar nav .nav-route:hover{
  color:#fff!important;
  background:rgba(255,255,255,.075)!important;
  transform:none!important;
}
.sidebar nav button.active:hover{
  color:var(--consult-ink)!important;
  background:var(--consult-cyan)!important;
}
.sidebar .menu-icon{
  position:relative;
  z-index:1;
  opacity:.72;
  color:#9da8ae!important;
  background:rgba(255,255,255,.035)!important;
}
.sidebar nav button:hover .menu-icon,
.sidebar nav .nav-route:hover .menu-icon{opacity:1;color:#fff!important}
.sidebar nav button.active .menu-icon{opacity:.9;color:var(--consult-ink)!important}
.sidebar nav button>i{
  position:relative;
  z-index:1;
}
.sidebar:after,
.sidebar .menu-icon,
.sidebar nav button>i{
  pointer-events:none;
}
.sidebar nav button span,
.sidebar nav .nav-route span,
.sidebar .nav-section-label,
.settings-link span,
.sidebar-bottom div{
  position:relative;
  z-index:3;
}
.settings-link strong{
  font-family:var(--consult-display)!important;
  font-weight:900!important;
}
.settings-link small,
.sidebar-bottom span,
.version-pill,
.back-mvp{
  font-family:var(--consult-text)!important;
  font-weight:400!important;
}

@media(max-width:800px){
  body{background-size:38px 38px}
  header{height:72px!important}
  header h1{font-size:17px!important}
  .content{padding-top:20px!important}
  .hero{padding:28px 22px!important}
  .hero h2{font-size:34px!important}
  .hero:before{width:95px;height:95px;border-width:24px;right:-35px;bottom:-32px}
  .profile-dropdown{position:fixed;top:66px;right:12px;width:min(260px,calc(100vw - 24px))}
  .operator-profile{display:none}
  .sidebar nav button span,.sidebar nav .nav-route span{font-size:11.5px!important}
}

/* Revisão executiva de usabilidade e legibilidade */
.sidebar nav{padding-top:10px!important;overflow-y:auto;scrollbar-width:thin}
.sidebar .nav-section-label{
  margin:19px 13px 7px!important;
  padding-bottom:6px;
  border-bottom:1px solid rgba(255,255,255,.12);
  color:#fff!important;
  font-size:9px!important;
  font-weight:900!important;
  letter-spacing:.11em!important;
}
.sidebar nav button,.sidebar nav .nav-route{min-height:45px!important;margin-bottom:3px!important}
.sidebar nav button span,.sidebar nav .nav-route span{
  font-size:12.5px!important;
  line-height:1.3!important;
  font-weight:650!important;
}
.sidebar nav .nav-submenu{
  min-height:38px!important;
  margin:-1px 0 5px 44px!important;
  padding:5px 10px!important;
  width:calc(100% - 44px)!important;
  border-left:2px solid rgba(255,255,255,.2)!important;
}
.sidebar nav .nav-submenu span{font-size:12px!important;font-weight:400!important}
.sidebar nav button.active span,.sidebar nav .nav-route.active span{font-weight:850!important}
.sidebar .menu-icon{position:absolute!important;left:8px!important;z-index:0!important;opacity:.18!important}
.sidebar nav button>span,.sidebar nav .nav-route>span{padding-left:35px}
.sidebar nav .nav-submenu>span{padding-left:0}
.sidebar nav button:hover .menu-icon,.sidebar nav .nav-route:hover .menu-icon{opacity:.3!important}
.sidebar nav button.active .menu-icon{opacity:.24!important}
.module-title p,.section-head p,.operation-intro,.audit-intro,.commerce-hero p,
.panel p,.source-banner p,.empty-state p,.financial-card small,.executive-totals small,
.metric small,.kpi small,.module-grid small,.integration-card small,.role-grid small{
  font-family:var(--consult-text)!important;
  font-size:13px!important;
  line-height:1.55!important;
}
.module-title p,.section-head p{max-width:760px;color:#56616a!important}
.panel-heading h3,.section-head h2,.module-title h2,.financial-title h3{
  font-family:var(--consult-display)!important;
  font-weight:900!important;
}
.panel h3,.panel-title h3,.category-controls h3,.category-results h3,
.editor-head h3,.category-insights h3,.bulk-config h3{
  font-size:16px!important;
  line-height:1.3!important;
}
.section-head p,.module-title p{font-size:14px!important;line-height:1.6!important}
.eyebrow{font-size:10px!important;line-height:1.35!important}
.panel-title>span,.panel-title>small{font-size:12px!important}
.form-grid label>span,.form-stack label>span,.field>span{font-size:12px!important}
.profile-dropdown-head strong{font-size:12px!important}
.profile-dropdown-head small,.profile-action span{font-size:10px!important}
.profile-action strong{font-size:11px!important}
button,input,select{min-height:42px}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{
  outline:3px solid var(--consult-yellow)!important;
  outline-offset:2px!important;
}
@media(max-width:800px){
  .sidebar nav button span,.sidebar nav .nav-route span{font-size:13px!important}
  .module-title p,.section-head p,.operation-intro,.audit-intro,.commerce-hero p,.panel p{font-size:13.5px!important}
}
html.auth-pending body{visibility:hidden}
.lgpd-sidebar-badge{margin:7px 12px;padding:9px 11px;border:1px solid rgba(105,213,247,.25);border-radius:9px;background:rgba(0,169,223,.08);display:flex;flex-direction:column;gap:3px;color:#fff}
.lgpd-sidebar-badge strong{font:800 8px/1.25 var(--consult-display);letter-spacing:.07em;color:#79d9f4}
.lgpd-sidebar-badge span{font:400 9px/1.35 var(--consult-text);color:#b8c4ca}
.sidebar-collapsed .lgpd-sidebar-badge{display:none}
@media(max-width:900px){.sidebar-collapsed .lgpd-sidebar-badge{display:flex}}
.lgpd-context-note{margin:0 0 18px;padding:12px 15px;border:1px solid rgba(0,169,223,.22);border-radius:10px;background:#f1fbfe;display:flex;align-items:center;gap:10px;color:#33434c}
.lgpd-context-note strong{font:850 9px/1.25 var(--consult-display);letter-spacing:.07em;color:#007fa8}
.lgpd-context-note span{font:400 12px/1.45 var(--consult-text)}
.lgpd-context-note a{margin-left:auto;color:#007fa8;font:750 11px var(--consult-display);white-space:nowrap}
@media(max-width:700px){.lgpd-context-note{align-items:flex-start;flex-direction:column}.lgpd-context-note a{margin-left:0}}
/* Sistema visual CONSULT 2026 — elementos periféricos e ícones funcionais */
:root{
  --consult-yellow:#ffe500;
  --consult-red:#ed1c24;
  --consult-cyan:#00aeeF;
  --consult-graphite:#4e4e4e;
}

/* O antigo círculo cromático atravessava os conteúdos inferiores da lateral. */
.sidebar:after{display:none!important}
.sidebar{isolation:isolate}
.sidebar:before{
  content:"";
  position:absolute;
  right:-54px;
  bottom:-54px;
  width:138px;
  height:138px;
  z-index:0;
  border:1px solid rgba(255,255,255,.09);
  border-radius:50%;
  pointer-events:none;
  opacity:.7;
  box-shadow:0 0 0 17px rgba(0,174,239,.025),0 0 0 34px rgba(255,229,0,.018);
}
.sidebar>*,.sidebar nav{position:relative;z-index:1}

/* Linhas de movimento, pontilhado e círculos concêntricos ficam nas bordas. */
.content:before{
  content:"";
  position:fixed;
  right:20px;
  top:104px;
  width:92px;
  height:54px;
  z-index:-1;
  pointer-events:none;
  opacity:.22;
  background:
    radial-gradient(circle,#4e4e4e 1px,transparent 1.5px) 0 0/10px 10px;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000);
  mask-image:linear-gradient(90deg,transparent,#000);
}

.panel,.kpi,.metric,.module-grid>button,.role-grid article,.integration-card,.automation-card{
  position:relative;
}
.panel:after,.metric:after,.module-grid>button:after,.role-grid article:after,.integration-card:after,.automation-card:after{
  content:"";
  position:absolute;
  top:10px;
  right:10px;
  width:20px;
  height:20px;
  border:1px solid color-mix(in srgb,var(--accent,var(--panel-accent,var(--consult-cyan))) 25%,transparent);
  border-radius:50%;
  pointer-events:none;
  opacity:.42;
  box-shadow:0 0 0 4px color-mix(in srgb,var(--accent,var(--panel-accent,var(--consult-cyan))) 5%,transparent);
}

/* Ícones: desenho reto, leve e com cor funcional única por contexto. */
.menu-icon,.settings-gear,.kpi>div,.module-grid b,.alert-card>b,.integration-card>div>b,.role-grid b,.security-flow b{
  font-family:Montserrat,Arial,sans-serif!important;
  font-style:normal!important;
  text-shadow:none!important;
}
.menu-icon,.settings-gear{
  border-color:rgba(255,255,255,.12)!important;
  background:rgba(255,255,255,.045)!important;
}
.settings-gear{color:#7adcf7!important}

/* Mantém todo grafismo fora das áreas de leitura e ação. */
.sidebar-bottom,.settings-link,.lgpd-sidebar-badge,.panel-title,.panel-heading,
.panel>p,.panel>div,.kpi>*,.metric>*,.module-grid>button>*{
  position:relative;
  z-index:1;
}

@media(max-width:900px){
  .content:before{display:none}
  .sidebar:before{right:-72px;bottom:-72px;opacity:.45}
}

/* CONSULT Commerce — tipografia institucional e ritmo executivo global */
@font-face{font-family:"Montserrat";src:url("/fonts/montserrat-latin-400-normal.woff2") format("woff2");font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:"Montserrat";src:url("/fonts/montserrat-latin-500-normal.woff2") format("woff2");font-style:normal;font-weight:500;font-display:swap}
@font-face{font-family:"Montserrat";src:url("/fonts/montserrat-latin-600-normal.woff2") format("woff2");font-style:normal;font-weight:600;font-display:swap}
@font-face{font-family:"Montserrat";src:url("/fonts/montserrat-latin-700-normal.woff2") format("woff2");font-style:normal;font-weight:700;font-display:swap}
@font-face{font-family:"Montserrat";src:url("/fonts/montserrat-latin-800-normal.woff2") format("woff2");font-style:normal;font-weight:800 900;font-display:swap}
@font-face{font-family:"Open Sans";src:url("/fonts/open-sans-latin-400-normal.woff2") format("woff2");font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:"Open Sans";src:url("/fonts/open-sans-latin-500-normal.woff2") format("woff2");font-style:normal;font-weight:500;font-display:swap}
@font-face{font-family:"Open Sans";src:url("/fonts/open-sans-latin-600-normal.woff2") format("woff2");font-style:normal;font-weight:600;font-display:swap}
@font-face{font-family:"Open Sans";src:url("/fonts/open-sans-latin-700-normal.woff2") format("woff2");font-style:normal;font-weight:700;font-display:swap}

:root{--consult-display:"Montserrat",Arial,sans-serif;--consult-text:"Open Sans",Arial,sans-serif}
html,body,button,input,select,textarea,a,label,p,small,span,td,th{font-family:var(--consult-text)!important}
h1,h2,h3,h4,h5,h6,strong,.eyebrow,.nav-section-label,.unified-nav-parent>span,
.panel-title strong,.section-head strong,.module-grid strong,.primary,.secondary,
.primary-button,.secondary-button,.outline-button,.institutional-login{
  font-family:var(--consult-display)!important;
  font-style:normal!important;
}
h1,h2,h3,h4,h5,h6{font-weight:800!important;letter-spacing:-.025em!important}
.eyebrow,.nav-section-label{font-weight:700!important;letter-spacing:.13em!important}

/* Lateral: mais respiro, agrupamento e área de clique sem perder densidade. */
.sidebar nav.executive-navigation,.sidebar nav.unified-navigation{padding:12px 12px 22px!important}
.unified-nav-group{margin:0 0 9px!important}
.sidebar nav .unified-nav-parent{
  min-height:50px!important;
  padding:0 12px!important;
  gap:12px!important;
  border-radius:10px!important;
}
.unified-nav-parent .menu-icon{
  width:32px!important;height:32px!important;flex-basis:32px!important;
  border-radius:9px!important;opacity:1!important;position:relative!important;left:auto!important;
  font-family:var(--consult-display)!important;font-size:14px!important;font-weight:700!important;
}
.unified-nav-parent>span{font-size:12px!important;font-weight:700!important;line-height:1.25!important}
.unified-nav-children{padding:4px 0 8px 15px!important;margin-left:16px;border-left:1px solid rgba(105,213,247,.2)}
.sidebar nav .unified-nav-children>a,.sidebar nav .unified-nav-children>button{
  min-height:41px!important;margin:2px 0!important;padding:8px 11px 8px 24px!important;
  border-radius:8px!important;font-family:var(--consult-text)!important;font-size:11.5px!important;
  font-weight:500!important;line-height:1.35!important;
}
.sidebar nav .unified-nav-children>a:before,.sidebar nav .unified-nav-children>button:before{left:7px!important;width:10px!important}
.sidebar nav .unified-nav-children>a.active,.sidebar nav .unified-nav-children>button.active{font-weight:700!important}
.sidebar .sidebar-collapse-toggle{top:12px!important;right:12px!important;border-radius:9px!important}

/* Elementos e ícones sutis em todas as áreas: cor com função, nunca sobre o texto. */
.section-head>div:first-child,.module-title,.financial-title>div:first-child{position:relative;padding-left:54px}
.section-head>div:first-child:before,.module-title:before,.financial-title>div:first-child:before{
  content:"";position:absolute;left:0;top:2px;width:36px;height:36px;border:2px solid var(--consult-cyan);
  border-radius:50%;box-shadow:8px 8px 0 -6px var(--consult-yellow),-6px 12px 0 -7px var(--consult-red);
  background:radial-gradient(circle at center,transparent 0 7px,var(--consult-cyan) 8px 9px,transparent 10px);
}
.panel-heading>div:first-child,.panel-title>div:first-child{position:relative}
.panel-heading>div:first-child:after,.panel-title>div:first-child:after{
  content:"";display:inline-block;width:30px;height:3px;margin-top:8px;
  background:linear-gradient(90deg,var(--consult-yellow) 0 33%,var(--consult-red) 33% 66%,var(--consult-cyan) 66%);
}
.kpi>div,.metric:before,.module-grid>button>b,.insight>b,.security-flow b,.smart-benefits b{
  transition:transform .18s ease,box-shadow .18s ease!important;
}
.kpi:hover>div,.module-grid>button:hover>b,.insight:hover>b{transform:translateY(-2px) scale(1.04)}
header h1:after{content:"";display:inline-block;width:22px;height:5px;margin-left:10px;vertical-align:middle;background:linear-gradient(90deg,var(--consult-yellow) 0 33%,var(--consult-red) 33% 66%,var(--consult-cyan) 66%)}

@media(max-width:900px){
  .section-head>div:first-child,.module-title,.financial-title>div:first-child{padding-left:0}
  .section-head>div:first-child:before,.module-title:before,.financial-title>div:first-child:before{display:none}
  .sidebar nav .unified-nav-parent{min-height:48px!important}
  .sidebar nav .unified-nav-children>a,.sidebar nav .unified-nav-children>button{min-height:43px!important;font-size:12px!important}
}
/* Estoque: zero sempre vermelho; qualquer quantidade positiva sempre verde. */
.stock-zero{color:#c51e27!important;font-weight:800}.stock-ok{color:#08745b!important;font-weight:800}

/* Contexto obrigatório para SEO: diálogo curto, legível e orientado à revisão. */
.ai-context-overlay{position:fixed;inset:0;z-index:100000;display:grid;place-items:center;padding:22px;background:rgba(4,12,16,.78);backdrop-filter:blur(5px)}
.ai-context-dialog{width:min(780px,calc(100vw - 32px));max-height:calc(100vh - 40px);overflow:auto;background:#fff;border-top:7px solid var(--consult-cyan);box-shadow:0 28px 90px rgba(0,0,0,.38);color:#101719}.ai-context-dialog:before{content:"";display:block;height:5px;background:linear-gradient(90deg,var(--consult-cyan) 0 34%,var(--consult-yellow) 34% 59%,var(--consult-red) 59% 81%,#444 81%)}
.ai-context-dialog>header{display:flex;align-items:flex-start;gap:20px;padding:28px 32px 20px;border-bottom:1px solid #d9e2e6}.ai-context-symbol{display:grid;place-items:center;flex:0 0 52px;height:52px;border:3px solid var(--consult-cyan);border-radius:50%;font-size:25px;color:#007fa8;box-shadow:7px 7px 0 -4px var(--consult-yellow)}
.ai-context-dialog header small,.ai-context-dialog aside strong{display:block;color:#008cb9;font:800 9px/1.2 var(--consult-display);letter-spacing:.17em}.ai-context-dialog h3{margin:6px 0 9px;font:850 28px/1.08 var(--consult-display);color:#101719}.ai-context-dialog header p{max-width:590px;margin:0;color:#52656d;font:400 14px/1.55 var(--consult-text)}
.ai-context-dialog>label{display:block;padding:22px 32px 14px;font:750 13px/1.3 var(--consult-display)}.ai-context-dialog textarea{display:block;width:100%;min-height:170px;margin-top:10px;padding:16px;border:2px solid #afc2ca;border-radius:4px;resize:vertical;font:400 14px/1.55 var(--consult-text);color:#101719}.ai-context-dialog textarea:focus{outline:4px solid rgba(0,174,239,.18);border-color:var(--consult-cyan)}.ai-context-dialog label small{display:block;margin-top:8px;text-align:right;color:#65757c;font:600 10px var(--consult-text)}
.ai-context-dialog>aside{margin:0 32px;padding:15px 17px;border-left:5px solid var(--consult-yellow);background:#fff8d8}.ai-context-dialog aside span{display:block;margin-top:6px;font:800 14px var(--consult-display)}
.ai-context-dialog>footer{display:flex;justify-content:flex-end;gap:12px;padding:22px 32px 30px}.ai-context-dialog footer button{min-height:48px;padding:0 22px;border:1px solid #172125;background:#fff;color:#172125;font:800 11px var(--consult-display);text-transform:uppercase}.ai-context-dialog footer [data-ai-context-confirm]{border-color:#ffd400;background:#ffd400;box-shadow:4px 4px 0 #00aeea}.ai-context-dialog footer button:hover{transform:translateY(-1px)}
@media(max-width:600px){.ai-context-overlay{padding:10px}.ai-context-dialog>header{padding:20px 18px 15px}.ai-context-dialog>label{padding:18px}.ai-context-dialog>aside{margin:0 18px}.ai-context-dialog>footer{padding:18px;flex-direction:column-reverse}.ai-context-dialog footer button{width:100%}}
