/* ==========================================================
   VTTech 3.2.0 — tema único (carregado por último)
   Identidade aprovada: marinho + limão, Sora (títulos) e Manrope (texto).
   Corrige: fonte "Inter" inexistente, títulos invisíveis, estouros
   no celular, menu desalinhado, cabeçalho do portal estilo loja.
   ========================================================== */
:root{
  --v32-navy:#0a2540;
  --v32-navy-2:#0f3357;
  --v32-navy-3:#16436d;
  --v32-ink:#14304a;
  --v32-muted:#5f7488;
  --v32-line:#dde6ee;
  --v32-bg:#f3f6f9;
  --v32-lime:#c3f23a;
  --v32-lime-2:#a9dc16;
  --v32-lime-ink:#10240a;
  --v32-teal:#0d8a80;
  --v32-font:"Manrope",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  --v32-display:"Sora","Manrope",system-ui,sans-serif;
  --v32-head:100px;
  --v32-r:18px;
  --v32-shadow:0 18px 40px -24px rgba(10,37,64,.35);
}

/* ---------- Tipografia: uma família só (Inter nunca foi carregada) ---------- */
body.v32,
body.v32 :where(button,input,select,textarea,p,span,a,small,strong,b,em,td,th,li,label,div,article,section){
  font-family:var(--v32-font)!important;
}
body.v32 :where(h1,h2,h3,.r11-hero h1,.x-portal-hero h1,.vt2-heading h1){
  font-family:var(--v32-display)!important;
  letter-spacing:-.025em;
}
body.v32 :where(.mono,code,kbd,pre,.x-mono){font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace!important}

/* ---------- Site público: bugs de contraste e estouro ---------- */
body.v32 .x-hero h1{color:#fff!important}
body.v32 .x-hero h1 em{color:var(--v32-lime)!important}
body.v32.page-cadastro .x-rail-top h1{color:#fff!important}
body.v32.page-cadastro .x-rail-top h1 em{color:var(--v32-lime)!important}
body.v32 .v14-solutions-hero>span,
body.v32 .v14-solutions-hero h1 em{color:var(--v32-teal)!important}
body.v32 .x-show-grid,body.v32 .x-show-grid>*{min-width:0}
@media (max-width:640px){
  body.v32 .x-show-grid{grid-template-columns:minmax(0,1fr)!important}
  body.v32 .x-device,body.v32 .x-browser,body.v32 .x-show-steps{max-width:100%!important}
  body.v32 .x-home{overflow-x:clip}
}
/* Botão "?" não cobre mais os botões de avançar */
body.v32.page-cadastro .vt-floating-help,
body.v32.page-login .vt-floating-help{bottom:96px!important}
/* Login: em telas baixas o conteúdo pode rolar em vez de ser cortado */
@media (max-height:720px),(max-width:760px){
  body.v32.page-login{height:auto!important;min-height:100dvh!important;overflow:auto!important}
  body.v32.page-login .v31-auth-shell{height:auto!important;max-height:none!important;min-height:0!important}
}

/* ==========================================================
   PORTAL — cabeçalho de loja
   ========================================================== */
body.v32.is-portal{background:var(--v32-bg)!important}
.v32-store-header{
  position:sticky;top:0;z-index:60;
  background:linear-gradient(100deg,var(--v32-navy) 0%,var(--v32-navy-2) 60%,var(--v32-navy-3) 100%);
  color:#fff;box-shadow:0 10px 30px -18px rgba(5,20,40,.8);
}
.v32-store-bar{
  height:64px;display:flex;align-items:center;gap:18px;
  padding:0 clamp(14px,2.4vw,32px);box-sizing:border-box;
}
.v32-brand{display:flex;align-items:center;gap:10px;text-decoration:none;flex:none}
.v32-brand .v14-brand-name{color:#fff}
.v32-brand-store{
  font-size:10.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;
  color:var(--v32-lime-ink);background:var(--v32-lime);padding:4px 8px;border-radius:999px;
}
.v32-search{
  flex:1 1 auto;max-width:560px!important;margin:0 auto!important;position:relative;display:flex;align-items:center;
}
.v32-search svg{position:absolute;left:14px;width:18px;height:18px;color:#7f97ad;pointer-events:none}
.v32-search input{
  width:100%;height:42px;border-radius:999px;border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.08);color:#fff;padding:0 18px 0 42px;font-size:14px;outline:none;
  transition:background .15s,border-color .15s,box-shadow .15s;box-sizing:border-box;
}
.v32-search input::placeholder{color:#9db2c5}
.v32-search input:focus{background:#fff;color:var(--v32-ink);border-color:#fff;box-shadow:0 0 0 4px rgba(195,242,58,.25)}
.v32-search input:focus::placeholder{color:#8a9bab}
.v32-store-actions{display:flex;align-items:center;gap:10px;flex:none}
.v32-buy{
  position:relative;display:inline-flex;align-items:center;gap:9px;height:42px;padding:0 18px;
  border-radius:999px;background:var(--v32-lime);color:var(--v32-lime-ink);text-decoration:none;
  font-weight:800;font-size:14px;box-shadow:0 8px 22px -10px rgba(195,242,58,.9);
  transition:transform .15s,background .15s;
}
.v32-buy:hover{background:#d2fa55;transform:translateY(-1px)}
.v32-buy svg{width:19px;height:19px}
.v32-cart-count{
  position:absolute;top:-6px;right:-6px;min-width:20px;height:20px;padding:0 5px;box-sizing:border-box;
  border-radius:999px;background:#ff6b3d;color:#fff;font:800 11px/20px var(--v32-font);text-align:center;font-style:normal;
  box-shadow:0 0 0 2px var(--v32-navy);
}
.v32-account{
  display:flex;align-items:center;gap:9px;max-width:230px;padding:4px 12px 4px 4px;border-radius:999px;
  text-decoration:none;color:#fff;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.05);
}
.v32-account:hover{background:rgba(255,255,255,.1)}
.v32-avatar{
  flex:none;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;
  background:var(--v32-lime);color:var(--v32-lime-ink);font-weight:800;font-size:14px;
}
.v32-account-copy{display:grid;min-width:0;line-height:1.15}
.v32-account-copy small{font-size:10.5px;color:#9db2c5;font-weight:700}
.v32-account-copy b{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.v32-logout{margin:0}
.v32-icon-btn{
  width:42px;height:42px;border-radius:50%;display:grid;place-items:center;cursor:pointer;
  border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.05);color:#dbe7f1;padding:0;
}
.v32-icon-btn:hover{background:rgba(255,255,255,.12);color:#fff}
.v32-icon-btn svg{width:19px;height:19px}
.v32-menu-btn{display:none}
.v32-perks{
  height:36px;display:flex;align-items:center;justify-content:center;gap:clamp(14px,3vw,44px);
  border-top:1px solid rgba(255,255,255,.08);background:rgba(0,0,0,.14);
  font-size:12.5px;font-weight:700;color:#c7d6e3;white-space:nowrap;overflow:hidden;
}
.v32-perks span{display:inline-flex;align-items:center;gap:7px}
.v32-perks svg{width:15px;height:15px;color:var(--v32-lime)}

@media (max-width:1180px){
  :root{--v32-head:64px}
  .v32-perks{display:none}
  .v32-account-copy{display:none}
  .v32-account{padding:4px}
}
@media (max-width:920px){
  .v32-menu-btn{display:grid}
  .v32-brand .v14-brand-mark{display:none}
}
@media (max-width:760px){
  .v32-store-bar{gap:10px}
  .v32-search{display:none}
  .v32-brand{margin-right:auto}
  .v32-buy span{display:none}
  .v32-buy{width:42px;padding:0;justify-content:center}
  .v32-brand-store{display:none}
}

/* ==========================================================
   PORTAL — estrutura e menu lateral
   ========================================================== */
html body.v32.is-portal :is(.r11-shell,main.x-portal){
  display:grid!important;padding:0!important;margin:0!important;max-width:none!important;gap:0!important;
  grid-template-columns:268px minmax(0,1fr)!important;
  min-height:calc(100dvh - var(--v32-head))!important;background:var(--v32-bg)!important;
}
body.v32.is-portal .r11-mobile-menu{display:none!important}
html body.v32.is-portal .r11-sidebar{
  width:268px!important;max-width:none!important;
  position:sticky!important;top:var(--v32-head)!important;height:calc(100dvh - var(--v32-head))!important;
  background:linear-gradient(180deg,#0b2036 0%,#0a1a2c 100%)!important;
  border-right:0!important;padding:14px 12px 12px!important;box-sizing:border-box!important;
  display:flex!important;flex-direction:column!important;gap:6px!important;overflow:hidden!important;
}
body.v32.is-portal .r12-company-card{
  display:flex!important;align-items:center!important;gap:11px!important;
  padding:11px!important;margin:0 0 4px!important;border-radius:14px!important;
  background:rgba(255,255,255,.05)!important;border:1px solid rgba(255,255,255,.08)!important;
}
body.v32.is-portal .r12-company-avatar{
  width:40px!important;height:40px!important;flex:0 0 40px!important;border-radius:12px!important;
  display:grid!important;place-items:center!important;background:var(--v32-lime)!important;color:var(--v32-lime-ink)!important;
  font:800 16px var(--v32-display)!important;
}
body.v32.is-portal .r12-company-copy{min-width:0!important;display:grid!important;gap:2px!important}
body.v32.is-portal .r12-company-copy strong{
  color:#fff!important;font-size:13px!important;line-height:1.25!important;white-space:normal!important;
  display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important;
}
body.v32.is-portal .r12-company-copy span{color:#8ea6bb!important;font-size:11px!important}
body.v32.is-portal .r12-nav{
  flex:1 1 auto!important;min-height:0!important;overflow-y:auto!important;overflow-x:hidden!important;
  display:flex!important;flex-direction:column!important;gap:2px!important;padding:0 0 6px!important;
  scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.15) transparent;
}
body.v32.is-portal .r12-section-label{
  padding:12px 10px 5px!important;color:#6f8aa2!important;font-size:10px!important;font-weight:800!important;letter-spacing:.14em!important;
}
body.v32.is-portal .r12-nav-item,
body.v32.is-portal .r12-nav-sub{
  display:flex!important;align-items:center!important;gap:11px!important;
  min-height:42px!important;padding:0 10px!important;border-radius:12px!important;
  color:#c3d2df!important;text-decoration:none!important;font-size:14px!important;font-weight:700!important;
  line-height:1.2!important;background:transparent!important;box-shadow:none!important;border:0!important;
  transition:background .15s,color .15s!important;
}
body.v32.is-portal .r12-nav-item>span,
body.v32.is-portal .r12-nav-sub>span{flex:1 1 auto;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
body.v32.is-portal .r12-nav-item svg{
  width:32px!important;height:32px!important;flex:0 0 32px!important;padding:7px!important;box-sizing:border-box!important;
  border-radius:10px!important;background:rgba(255,255,255,.06)!important;color:#c3d2df!important;margin:0!important;
}
body.v32.is-portal .r12-nav-sub{min-height:34px!important;padding-left:22px!important;font-size:13px!important;color:#9fb3c5!important}
body.v32.is-portal .r12-nav-sub svg{width:16px!important;height:16px!important;flex:0 0 16px!important;margin:0 8px 0 0!important;color:#7f97ad!important}
body.v32.is-portal .r12-nav-item:hover,
body.v32.is-portal .r12-nav-sub:hover{background:rgba(255,255,255,.07)!important;color:#fff!important}
body.v32.is-portal .r12-nav-item.is-active,
body.v32.is-portal .r12-nav-sub.is-active{background:var(--v32-lime)!important;color:var(--v32-lime-ink)!important;box-shadow:none!important;font-weight:800!important}
body.v32.is-portal .r12-nav-item.is-active svg{background:var(--v32-lime-ink)!important;color:var(--v32-lime)!important}
body.v32.is-portal .r12-nav-sub.is-active svg{background:var(--v32-lime-ink)!important;color:var(--v32-lime)!important}
body.v32.is-portal .r12-nav-item.is-parent-active{background:transparent!important;color:#fff!important}
/* Item de compra: segue o padrão dos demais (verde só quando ativo); mantém a etiqueta PIX */
body.v32.is-portal .v32-nav-buy{
  background:transparent!important;border:0!important;color:#c3d2df!important;margin:2px 0 4px!important;
}
body.v32.is-portal .v32-nav-buy svg{background:rgba(255,255,255,.06)!important;color:#c3d2df!important}
body.v32.is-portal .v32-nav-buy em{
  font-style:normal;font-size:10px;font-weight:800;letter-spacing:.08em;padding:3px 7px;border-radius:999px;
  background:var(--v32-lime);color:var(--v32-lime-ink);
}
body.v32.is-portal .v32-nav-buy.is-active{background:var(--v32-lime)!important;color:var(--v32-lime-ink)!important}
body.v32.is-portal .v32-nav-buy.is-active svg{background:var(--v32-lime-ink)!important;color:var(--v32-lime)!important}
body.v32.is-portal .v32-nav-buy.is-active em{background:var(--v32-lime-ink);color:var(--v32-lime)}
body.v32.is-portal .r12-logout{margin:0!important;padding:8px 0 0!important;border-top:1px solid rgba(255,255,255,.08)!important;background:transparent!important}
body.v32.is-portal .r12-logout button{
  width:100%!important;display:flex!important;align-items:center!important;gap:10px!important;min-height:40px!important;
  padding:0 12px!important;border-radius:12px!important;border:0!important;background:transparent!important;color:#b2c3d2!important;
  font-weight:700!important;font-size:14px!important;cursor:pointer!important;
}
body.v32.is-portal .r12-logout button:hover{background:rgba(255,120,90,.12)!important;color:#ffb39e!important}
body.v32.is-portal .r12-logout svg{width:18px!important;height:18px!important}
.v32-nav-version{padding:4px 12px 0;color:#5f7a92;font-size:10.5px;font-weight:700;letter-spacing:.06em}

@media (max-width:920px){
  html body.v32.is-portal :is(.r11-shell,main.x-portal){display:block!important}
  html body.v32.is-portal .r11-sidebar{
    position:fixed!important;top:0!important;left:0!important;height:100dvh!important;width:min(290px,86vw)!important;
    z-index:80!important;transform:translateX(-104%)!important;transition:transform .22s ease!important;
  }
  html body.v32.is-portal .r11-sidebar.is-open{transform:none!important;box-shadow:20px 0 50px rgba(0,0,0,.35)!important}
  body.v32.is-portal .r11-overlay{z-index:75!important}
}

/* ==========================================================
   PORTAL — conteúdo (cabeçalhos de página como vitrines)
   ========================================================== */
body.v32.is-portal :is(.r11-main,.vt2-main,.x-portal-main){min-width:0!important;max-width:100%!important;box-sizing:border-box!important}
body.v32.is-portal .x-portal-main>*{min-width:0;max-width:100%}
body.v32.is-portal :is(.r11-hero,.vt2-heading,.x-portal-hero,.r11-page-head,.r12-page-head){
  position:relative!important;overflow:hidden!important;
  display:flex!important;align-items:center!important;justify-content:space-between!important;flex-wrap:wrap!important;gap:16px 20px!important;
  padding:22px 26px!important;margin:0 0 16px!important;border-radius:20px!important;border:0!important;
  background:
    radial-gradient(420px 220px at 100% 0%,rgba(195,242,58,.22),transparent 70%),
    linear-gradient(115deg,var(--v32-navy) 0%,var(--v32-navy-2) 55%,var(--v32-navy-3) 100%)!important;
  box-shadow:var(--v32-shadow)!important;color:#fff!important;
}
body.v32.is-portal :is(.r11-hero,.vt2-heading,.x-portal-hero,.r11-page-head,.r12-page-head)>div:first-child{min-width:0;flex:1 1 360px}
body.v32.is-portal :is(.r11-hero,.vt2-heading,.x-portal-hero,.r11-page-head,.r12-page-head) h1{
  color:#fff!important;font-size:clamp(22px,2.2vw,30px)!important;line-height:1.12!important;margin:4px 0 6px!important;font-weight:600!important;
}
body.v32.is-portal :is(.r11-hero,.vt2-heading,.x-portal-hero,.r11-page-head,.r12-page-head) p{color:#c2d3e2!important;font-size:14px!important;margin:0!important;max-width:720px}
body.v32.is-portal :is(.r11-hero,.vt2-heading,.x-portal-hero,.r11-page-head,.r12-page-head) :is(.r11-kicker,.x-eyebrow,.r12-kicker,.vt2-kicker,small:first-child,span:first-child:not([class*="btn"]):not([class*="pill"])){
  color:var(--v32-lime)!important;letter-spacing:.12em!important;font-size:11px!important;font-weight:800!important;text-transform:uppercase!important;
}
body.v32.is-portal :is(.r11-hero,.vt2-heading,.x-portal-hero,.r11-page-head,.r12-page-head) .x-eyebrow i{background:var(--v32-lime)!important}
body.v32.is-portal :is(.v30-version-pill){background:rgba(195,242,58,.16)!important;color:var(--v32-lime)!important;border:1px solid rgba(195,242,58,.3)!important}
body.v32.is-portal :is(.r12-head-actions,.x-hero-actions-row,.r11-head-actions){display:flex!important;flex-wrap:wrap!important;gap:8px!important;justify-content:flex-end!important;max-width:100%}
body.v32.is-portal .r12-page-head .r12-head-actions{flex:1 1 420px}
/* "Fonte: VT" e semelhantes dentro da vitrine */
body.v32.is-portal .r12-page-head>:not(div):not(h1):not(p){color:#c2d3e2!important}

/* Cartões de KPI com cara de vitrine */
body.v32.is-portal :is(.r11-metric,.x-kpis article,.r12-report-metrics>*){
  border-radius:16px!important;border:1px solid var(--v32-line)!important;background:#fff!important;
  box-shadow:0 1px 0 rgba(10,37,64,.03)!important;transition:transform .15s,box-shadow .15s!important;
}
body.v32.is-portal a.r11-metric:hover{transform:translateY(-2px)!important;box-shadow:var(--v32-shadow)!important}

/* Tabelas: rolam dentro do cartão no celular, sem empurrar a página */
body.v32.is-portal .r12-table-wrap,
body.v32.is-portal .x-table-wrap{overflow-x:auto!important;-webkit-overflow-scrolling:touch;max-width:100%}

@media (max-width:920px){
  body.v32.is-portal :is(.r11-main,.vt2-main,.x-portal-main){padding:14px 12px 28px!important;width:auto!important}
  body.v32.is-portal :is(.r11-hero,.vt2-heading,.x-portal-hero,.r11-page-head,.r12-page-head){padding:18px!important;border-radius:16px!important}
  body.v32.is-portal :is(.x-hero-actions-row,.r12-head-actions){justify-content:flex-start!important}
  body.v32.is-portal .x-kpis{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  body.v32.is-portal .x-kpis article{min-width:0!important}
  body.v32.is-portal .x-emp-table,body.v32.is-portal #colabApp table{min-width:620px}
  body.v32.is-portal #colabApp .x-panel:has(table){overflow-x:auto!important}
}
@media (max-width:420px){
  body.v32.is-portal .x-hero-actions-row>*{flex:1 1 100%!important}
}

/* Telas baixas (notebooks 768px): faixa de vantagens some e o menu compacta */
@media (max-height:820px){
  :root{--v32-head:64px}
  .v32-perks{display:none}
  body.v32.is-portal .r12-nav-item{min-height:36px!important}
  body.v32.is-portal .r12-nav-item svg{width:28px!important;height:28px!important;flex-basis:28px!important;padding:6px!important}
  body.v32.is-portal .r12-nav-sub{min-height:30px!important}
  body.v32.is-portal .r12-section-label{padding:8px 10px 3px!important}
  body.v32.is-portal .r12-company-card{padding:8px!important}
  body.v32.is-portal .r12-company-avatar{width:34px!important;height:34px!important;flex-basis:34px!important}
}
/* Relatórios: botões de exportação numa linha abaixo do título */
body.v32.is-portal .r12-page-head .v30-report-actions{flex:1 1 100%!important;justify-content:flex-start!important}
body.v32.is-portal .r12-page-head .v30-report-actions :is(a,button){min-height:38px!important;padding:0 14px!important;font-size:13px!important}
/* Tabelas no celular: rolam na horizontal dentro do próprio cartão */
@media (max-width:920px){
  body.v32.is-portal :is(.x-table-wrap,.r12-table-wrap){max-width:100%!important;width:100%!important;min-width:0!important}
  body.v32.is-portal :is(.r11-table,.r12-table,.x-table){display:block!important;overflow-x:auto!important;max-width:100%!important;-webkit-overflow-scrolling:touch;white-space:nowrap}
  body.v32.is-portal :is(.r11-panel,.x-panel,.r12-panel,.r11-card){min-width:0!important;max-width:100%!important;box-sizing:border-box!important}
  body.v32.is-portal .x-emp-table,body.v32.is-portal #colabApp table{min-width:0!important}
}
/* Chamada final da home (texto escuro sobre a foto escurecida) */
body.v32 .x-cta-photo h2{color:#fff!important}
body.v32 .x-cta-photo p{color:#d6e2ec!important}

/* ==========================================================
   3.2.1 — Título padrão de todas as telas do portal
   Uma faixa de 72px, mesma posição, mesma fonte, mesmos botões.
   ========================================================== */
html body.v32.is-portal :is(.r11-main,.vt2-main,.x-portal-main){padding:16px 22px 20px!important}
html body.v32.is-portal :is(.r11-hero,.vt2-heading,.x-portal-hero,.r11-page-head,.r12-page-head){
  height:72px!important;min-height:72px!important;max-height:72px!important;box-sizing:border-box!important;
  padding:0 20px 0 22px!important;margin:0 0 14px!important;border-radius:16px!important;
  flex-wrap:nowrap!important;align-items:center!important;gap:16px!important;
  background:
    radial-gradient(300px 140px at 100% 0%,rgba(195,242,58,.18),transparent 70%),
    linear-gradient(110deg,var(--v32-navy) 0%,var(--v32-navy-2) 60%,var(--v32-navy-3) 100%)!important;
}
html body.v32.is-portal :is(.r11-hero,.vt2-heading,.x-portal-hero,.r11-page-head,.r12-page-head)>div:first-child{
  flex:1 1 auto!important;min-width:0!important;display:grid!important;gap:1px!important;align-content:center!important;
}
html body.v32.is-portal :is(.r11-hero,.vt2-heading,.x-portal-hero,.r11-page-head,.r12-page-head) h1{
  font-size:21px!important;line-height:1.15!important;margin:0!important;
  white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;
}
html body.v32.is-portal :is(.r11-hero,.vt2-heading,.x-portal-hero,.r11-page-head,.r12-page-head) p{
  font-size:12.5px!important;line-height:1.3!important;margin:0!important;
  white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;max-width:none!important;
}
html body.v32.is-portal :is(.r11-hero,.vt2-heading,.x-portal-hero,.r11-page-head,.r12-page-head) :is(.r11-kicker,.x-eyebrow,.r12-kicker,.vt2-kicker,small:first-child,span:first-child:not([class*="btn"]):not([class*="pill"])){
  font-size:10px!important;letter-spacing:.14em!important;margin:0!important;line-height:1.2!important;
}
/* Kicker que fica dentro de uma linha própria (Meu VTTech / Loja de créditos) */
html body.v32.is-portal :is(.v30-hero-kicker-row,.vt2-heading .v30-hero-kicker-row){display:flex!important;gap:8px!important;margin:0!important}
/* Versão já aparece no menu lateral: tira do título para ficar limpo */
html body.v32.is-portal :is(.r11-hero,.vt2-heading,.x-portal-hero) .v30-version-pill{display:none!important}
/* Botões do título: todos iguais */
html body.v32.is-portal :is(.r11-hero,.vt2-heading,.x-portal-hero,.r11-page-head,.r12-page-head) :is(a,button):not(.x-tag){
  height:38px!important;min-height:38px!important;padding:0 16px!important;border-radius:999px!important;
  font-size:13px!important;font-weight:800!important;line-height:38px!important;white-space:nowrap!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;
  box-shadow:none!important;transform:none!important;width:auto!important;margin:0!important;
}
html body.v32.is-portal :is(.r11-hero,.vt2-heading,.x-portal-hero,.r11-page-head,.r12-page-head) :is(a,button) svg{width:16px!important;height:16px!important}
html body.v32.is-portal :is(.r11-hero,.vt2-heading,.x-portal-hero,.r11-page-head,.r12-page-head) :is(.r12-head-actions,.x-hero-actions-row,.r11-head-actions,.v30-report-actions,div:last-child:not(:first-child)){
  flex:0 0 auto!important;display:flex!important;flex-wrap:nowrap!important;gap:8px!important;align-items:center!important;justify-content:flex-end!important;
}
/* Relatórios: 6 botões viram uma linha compacta */
html body.v32.is-portal .r12-page-head .v30-report-actions :is(a,button){padding:0 12px!important;font-size:12.5px!important}
html body.v32.is-portal .r12-page-head .v30-report-actions{flex:0 0 auto!important}
html body.v32.is-portal .r12-page-head>:not(div):not(h1):not(p):not(header){font-size:12px!important;white-space:nowrap}
/* Caixa redundante "Relatórios VTTech x.y" some (informação já está nos botões) */
html body.v32.is-portal .v30-report-guide{display:none!important}

/* ---------- Compra: etapas e cartão mais compactos ---------- */
html body.v32.is-portal .v301-steps{gap:8px!important;margin:0 0 12px!important}
html body.v32.is-portal .v301-step{min-height:48px!important;padding:6px 12px!important;border-radius:12px!important}
html body.v32.is-portal .v301-step b{width:26px!important;height:26px!important;flex-basis:26px!important}
html body.v32.is-portal .v301-step strong{font-size:12.5px!important}
html body.v32.is-portal .v301-card{padding:16px 18px!important}
html body.v32.is-portal .v301-stage-footer{margin-top:12px!important;padding-top:12px!important}

/* ---------- Listas longas: rolam dentro do cartão, cabeçalho fixo ---------- */
@media (min-width:921px){
  html body.v32.is-portal :is(.x-emp-table,.r12-table-wrap,.v30-table-wrap,.r11-table-wrap){
    max-height:calc(100dvh - var(--v32-head) - 330px);min-height:220px;overflow:auto!important;
  }
  html body.v32.is-portal :is(.x-emp-table,.r12-table-wrap,.v30-table-wrap,.r11-table-wrap) thead th{
    position:sticky;top:0;z-index:2;background:#f6f9fb!important;box-shadow:inset 0 -1px 0 var(--v32-line);
  }
}

/* Compra usa uma terceira "casca" (.vt2-layout): mesma grade e altura das demais */
html body.v32.is-portal .vt2-layout{
  display:grid!important;grid-template-columns:268px minmax(0,1fr)!important;
  min-height:calc(100dvh - var(--v32-head))!important;background:var(--v32-bg)!important;
}
@media (max-width:920px){html body.v32.is-portal .vt2-layout{display:block!important}}

/* Colaboradores: o painel de conferência da importação só aparece na aba Importar */
html body.v32.is-portal #colabApp:has([data-pane="lista"]:not([hidden])) .vt25-import-audit{display:none!important}

/* Indicadores (KPIs) mais baixos em todas as telas */
html body.v32.is-portal :is(.x-kpis article,.r11-metric,.r12-report-card){padding:12px 16px!important;min-height:0!important}
html body.v32.is-portal :is(.x-kpis,.r11-metrics,.r12-report-metrics){gap:10px!important;margin:0 0 12px!important}
html body.v32.is-portal :is(.x-kpis article strong,.r11-metric strong,.r12-report-card strong){font-size:22px!important;line-height:1.1!important;margin:2px 0!important}
html body.v32.is-portal :is(.x-kpis article small,.r11-metric span,.r12-report-card>span){font-size:10.5px!important}
html body.v32.is-portal :is(.x-kpis article span,.r11-metric small,.r12-report-card small){font-size:11.5px!important}
html body.v32.is-portal .x-tabs-wide{margin:0 0 12px!important}

/* Pedidos: a tabela rola dentro do cartão */
@media (min-width:921px){
  html body.v32.is-portal .vt29-grid-wrap{max-height:calc(100dvh - var(--v32-head) - 230px);overflow:auto!important}
  html body.v32.is-portal .vt29-grid-wrap thead th{position:sticky;top:0;z-index:2;background:#f6f9fb!important}
}

/* Relatórios: "Pedidos recentes" e "Solicitações" lado a lado; tabelas com rolagem própria */
@media (min-width:1100px){
  html body.v32.is-portal main[data-r12-page="reports"]{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:14px;align-content:start}
  html body.v32.is-portal main[data-r12-page="reports"]>*{grid-column:1/-1;min-width:0}
  html body.v32.is-portal main[data-r12-page="reports"]>section.r12-panel:nth-of-type(n){grid-column:auto}
  html body.v32.is-portal main[data-r12-page="reports"]>section.r12-panel:last-of-type{grid-column:1/-1}
  html body.v32.is-portal main[data-r12-page="reports"] .r12-table-wrap{max-height:240px}
}
html body.v32.is-portal :is(.r12-panel,.r11-panel){padding:14px 16px!important;margin-bottom:12px!important}
html body.v32.is-portal .r12-panel-title{margin-bottom:8px!important}
html body.v32.is-portal .r12-report-grid{gap:12px!important;margin-bottom:0!important}
html body.v32.is-portal .r12-breakdown>*{padding:7px 12px!important}
@media (min-width:921px){
  html body.v32.is-portal.page-pedidos .vt297-orders-page .vt29-grid-wrap{
    max-height:calc(100dvh - var(--v32-head) - 236px)!important;overflow-y:auto!important;overflow-x:hidden!important;padding:10px!important;
  }
}
html body.v32.is-portal .vt297-orders-page .vt29-sheet-panel{margin:0!important}
html body.v32.is-portal .vt297-orders-page .vt29-sheet-head{padding:12px 18px!important}
/* Pedidos: linhas mais baixas — botões lado a lado, sem rótulo "Ações" */
html body.v32.is-portal .vt297-orders-page .vt297-orders-grid td.vt29-actions{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;justify-content:flex-start!important;gap:6px!important}
html body.v32.is-portal .vt297-orders-page .vt29-actions::before{display:none!important}
html body.v32.is-portal .vt297-orders-page .vt29-actions .x-btn{min-height:32px!important;padding:0 12px!important;font-size:11.5px!important;display:inline-flex!important;align-items:center!important}
html body.v32.is-portal .vt297-orders-page .vt297-orders-grid tbody tr{margin-bottom:8px!important}
html body.v32.is-portal .vt297-orders-page .vt297-orders-grid tbody td{padding-top:10px!important;padding-bottom:10px!important}
html body.v32.is-portal .vt297-orders-page .vt297-orders-grid :is(.x-tag,[class*="pill"],[class*="badge"]){white-space:nowrap!important}
html body.v32.is-portal .vt297-orders-page .vt297-orders-grid tbody tr{
  grid-template-columns:minmax(150px,1.3fr) minmax(125px,1fr) minmax(85px,.7fr) minmax(90px,.7fr) minmax(150px,1fr) minmax(150px,1.05fr) 196px!important;
  padding-top:4px!important;padding-bottom:4px!important;min-height:0!important;
}
html body.v32.is-portal .vt297-orders-page .vt297-orders-grid tbody td{padding:8px 10px!important}
html body.v32.is-portal .vt297-orders-page .vt297-orders-grid tbody td::before{margin-bottom:3px!important}
html body.v32.is-portal .vt25-import-audit[hidden]{display:none!important}

/* Espaço entre blocos igual em todas as telas (antes variava 12–27px) */
html body.v32.is-portal :is(.r11-main,.vt2-main,.x-portal-main){row-gap:0!important}

/* Colaboradores: indicadores em faixa baixa e lista com rolagem própria */
html body.v32.is-portal #colabApp .x-kpis article{display:grid!important;grid-template-columns:auto 1fr!important;grid-template-rows:auto auto;column-gap:12px;align-items:center;padding:10px 14px!important}
html body.v32.is-portal #colabApp .x-kpis article small{grid-column:1/-1}
html body.v32.is-portal #colabApp .x-kpis article strong{font-size:20px!important;margin:0!important}
html body.v32.is-portal #colabApp .x-kpis article span{align-self:center}
html body.v32.is-portal #colabApp .x-tabs-wide button{min-height:34px!important;padding:0 14px!important}
html body.v32.is-portal #colabApp .x-panel{padding:14px 16px!important}
html body.v32.is-portal #colabApp .x-list-tools{margin-bottom:10px!important}
@media (min-width:921px){
  html body.v32.is-portal #colabApp .x-emp-table{max-height:calc(100dvh - var(--v32-head) - 400px)!important;min-height:240px!important}
}
/* Importar: avisos e cabeçalho do assistente mais compactos */
html body.v32.is-portal #colabApp [data-pane="importar"] :is(.vt28-import-head,.x-import-head){padding:14px 16px!important;margin-bottom:10px!important}
html body.v32.is-portal #colabApp [data-pane="importar"] :is(.x-note,.vt28-note,[class*="-note"]){padding:8px 12px!important;margin:0 0 8px!important;font-size:12.5px!important}

/* Relatórios em 2 colunas, cabendo na tela */
@media (min-width:1100px){
  html body.v32.is-portal main[data-r12-page="reports"]>section.r12-panel:nth-of-type(n){grid-column:auto}
  html body.v32.is-portal main[data-r12-page="reports"]>section.r12-panel:last-of-type{grid-column:auto}
  html body.v32.is-portal main[data-r12-page="reports"]>header{grid-row:1}
  html body.v32.is-portal main[data-r12-page="reports"]>.r12-report-metrics{grid-column:1/-1!important;grid-row:2}
  html body.v32.is-portal main[data-r12-page="reports"]>.r12-report-grid{grid-column:1!important;grid-row:3}
  html body.v32.is-portal main[data-r12-page="reports"]>:nth-child(5){grid-column:2!important;grid-row:3}
  html body.v32.is-portal main[data-r12-page="reports"]>:nth-child(6){grid-column:1!important;grid-row:4}
  html body.v32.is-portal main[data-r12-page="reports"]>:nth-child(7){grid-column:2!important;grid-row:4}
  html body.v32.is-portal main[data-r12-page="reports"]>:nth-child(n+8){grid-column:1/-1!important}
  html body.v32.is-portal main[data-r12-page="reports"] .r12-report-grid{grid-template-columns:1fr 1fr!important;align-self:stretch}
  html body.v32.is-portal main[data-r12-page="reports"] .r12-report-grid .r12-panel{margin:0!important}
  html body.v32.is-portal main[data-r12-page="reports"]>:nth-child(5) .r12-table-wrap{max-height:118px!important;min-height:0!important}
  html body.v32.is-portal main[data-r12-page="reports"]>:is(:nth-child(6),:nth-child(7)) .r12-table-wrap{max-height:calc(100dvh - var(--v32-head) - 520px)!important;min-height:140px!important}
  html body.v32.is-portal main[data-r12-page="reports"] .r12-panel{margin-bottom:12px!important}
  html body.v32.is-portal main[data-r12-page="reports"] .r12-report-footnote{display:none}
}
@media (min-width:1100px){
  html body.v32.is-portal main[data-r12-page="reports"]{row-gap:12px!important}
  html body.v32.is-portal main[data-r12-page="reports"]>*{margin-bottom:0!important}
  html body.v32.is-portal main[data-r12-page="reports"]>:is(:nth-child(6),:nth-child(7)) .r12-table-wrap{max-height:calc(100dvh - var(--v32-head) - 556px)!important;min-height:120px!important}
}

/* Importar colaboradores: introdução numa linha, 3 avisos lado a lado */
@media (min-width:1000px){
  html body.v32.is-portal #colabApp .vt28-import:not([hidden]){display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:10px;row-gap:10px;align-items:stretch}
  html body.v32.is-portal #colabApp .vt28-import>*{grid-column:1/-1;margin:0!important}
  html body.v32.is-portal #colabApp .vt28-import>.vt28-alert{grid-column:auto}
}
html body.v32.is-portal #colabApp .vt28-import-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:16px!important;padding:12px 16px!important;border-radius:14px!important}
html body.v32.is-portal #colabApp .vt28-import-head .r12-eyebrow{display:none!important}
html body.v32.is-portal #colabApp .vt28-import-head h2{font-size:16px!important;margin:0 0 2px!important}
html body.v32.is-portal #colabApp .vt28-import-head p{font-size:12.5px!important;margin:0!important}
html body.v32.is-portal #colabApp .vt28-model-actions .x-btn{height:38px!important;min-height:38px!important;padding:0 16px!important;font-size:13px!important;white-space:nowrap!important;box-shadow:none!important}
html body.v32.is-portal #colabApp .vt28-alert{padding:9px 12px!important;font-size:12px!important;line-height:1.4!important;border-radius:12px!important;margin:0!important}
html body.v32.is-portal #colabApp .vt28-layout-details>summary{padding:8px 12px!important;font-size:12.5px!important}
html body.v32.is-portal #colabApp .x-imp-grid .x-drop{min-height:130px!important;height:auto!important;padding:18px!important;gap:4px!important}
html body.v32.is-portal #colabApp .x-imp-grid .x-drop svg{width:32px!important;height:32px!important}
html body.v32.is-portal #colabApp .x-imp-grid{align-items:start!important}
html body.v32.is-portal #colabApp .x-imp-grid h3,html body.v32.is-portal #colabApp .x-imp-grid h4{margin-top:0!important}
html body.v32.is-portal #colabApp:has([data-pane="importar"]:not([hidden])) .x-kpis{display:none!important}
html body.v32.is-portal #colabApp .vt28-import-head p{white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
html body.v32.is-portal #colabApp .vt28-import-head>div:first-child{min-width:0}
html body.v32.is-portal #colabApp .vt28-import.x-panel{padding:12px 14px!important}
html body.v32.is-portal #colabApp .vt28-import .x-steps,html body.v32.is-portal #colabApp .vt28-import [class*="steps"]{margin:0!important}
html body.v32.is-portal .x-portal-main{min-height:0!important}

/* Barra de rolagem: uma só (da página), fina e igual em todas as telas —
   evita o "pulo" de 8px entre Visão geral e as demais telas */
html:has(body.v32.is-portal){overflow-y:auto!important;scrollbar-gutter:stable!important;scrollbar-width:thin;scrollbar-color:#b9c7d3 transparent}
html:has(body.v32.is-portal)::-webkit-scrollbar{width:8px}
html:has(body.v32.is-portal)::-webkit-scrollbar-thumb{background:#c3d0db;border-radius:99px}
html body.v32.is-portal{overflow:visible!important;overflow-x:clip!important}
html body.v32.is-portal::-webkit-scrollbar{width:0!important;display:none}

/* Indicadores no mesmo formato baixo em todas as telas (rótulo em cima, número + legenda na linha) */
html body.v32.is-portal :is(.r11-metric,.r12-report-card){display:grid!important;grid-template-columns:auto 1fr!important;column-gap:12px!important;align-items:center!important;padding:10px 14px!important}
html body.v32.is-portal :is(.r11-metric,.r12-report-card)>span:first-child{grid-column:1/-1}
html body.v32.is-portal :is(.r11-metric,.r12-report-card) strong{font-size:20px!important;margin:0!important}
html body.v32.is-portal :is(.r11-metric,.r12-report-card) small{align-self:center;margin:0!important}
html body.v32.is-portal :is(.r11-metric,.r12-report-card,#colabApp .x-kpis article){height:60px!important;min-height:60px!important;box-sizing:border-box!important;padding:8px 14px!important;row-gap:2px!important;align-content:center!important;overflow:hidden}
html body.v32.is-portal :is(.r11-metric,.r12-report-card,#colabApp .x-kpis article) :is(small,span){line-height:1.2!important}

/* Carrinho: resumo compacto para o botão de confirmar ficar sempre visível */
html body.v32.is-portal .v301-order-summary{padding:14px 16px!important;top:76px!important}
html body.v32.is-portal .v301-order-summary h3{margin:0 0 8px!important;font-size:15px!important}
html body.v32.is-portal .v301-mode-box{gap:6px!important;margin-bottom:10px!important}
html body.v32.is-portal .v301-mode-box .vt2-mode{padding:8px 12px!important;min-height:0!important}
html body.v32.is-portal .v301-mode-box .vt2-mode small{font-size:11px!important}
html body.v32.is-portal .v301-totals{gap:5px!important;padding-top:10px!important}
html body.v32.is-portal .v301-totals .total{padding-top:8px!important}
html body.v32.is-portal .v301-totals .total strong{font-size:20px!important}
html body.v32.is-portal .v301-order-summary .v30-checkout-note{margin:8px 0!important;padding:7px 10px!important;font-size:11.5px!important}
html body.v32.is-portal .v301-order-summary :is(.vt2-btn,button.v30-checkout-btn){min-height:44px!important}
html body.v32.is-portal .v301-cart-items{min-height:120px!important}
html body.v32.is-portal .v301-cart-layout{gap:14px!important}
html body.v32.is-portal .v301-card .vt2-section-head{margin-bottom:12px!important}
@media (min-width:1001px){
  html body.v32.is-portal .v301-cart-layout + .v301-stage-footer{
    max-width:calc(100% - 374px)!important;margin-top:-50px!important;border-top:0!important;padding-top:0!important;position:relative;z-index:1
  }
}
/* Celular: o título pode quebrar em duas linhas (botões embaixo) */
@media (max-width:760px){
  html body.v32.is-portal :is(.r11-hero,.vt2-heading,.x-portal-hero,.r11-page-head,.r12-page-head){
    height:auto!important;max-height:none!important;min-height:64px!important;flex-wrap:wrap!important;padding:12px 14px!important;gap:10px!important
  }
  html body.v32.is-portal :is(.r11-hero,.vt2-heading,.x-portal-hero,.r11-page-head,.r12-page-head) p{white-space:normal!important}
  html body.v32.is-portal :is(.r11-hero,.vt2-heading,.x-portal-hero,.r11-page-head,.r12-page-head)>:not(:first-child){flex-wrap:wrap!important;justify-content:flex-start!important;width:100%}
  html body.v32.is-portal :is(.r11-metric,.r12-report-card,#colabApp .x-kpis article){height:auto!important;min-height:56px!important}
}
@media (max-width:760px){
  html body.v32.is-portal .r12-page-head .v30-report-actions,
  html body.v32.is-portal :is(.r11-hero,.vt2-heading,.x-portal-hero,.r11-page-head,.r12-page-head) :is(.r12-head-actions,.x-hero-actions-row,.r11-head-actions){flex-wrap:wrap!important;justify-content:flex-start!important;flex:1 1 100%!important}
  html body.v32.is-portal .r12-page-head .v30-report-actions :is(a,button){height:34px!important;min-height:34px!important;line-height:34px!important;padding:0 11px!important;font-size:12px!important}
  html body.v32.is-portal :is(.r11-metrics,.r12-report-metrics,.x-kpis){display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important}
  html body.v32.is-portal :is(.r11-metric,.r12-report-card,.x-kpis article){grid-template-columns:auto 1fr!important;min-width:0!important}
  html body.v32.is-portal :is(.r11-metric,.r12-report-card,.x-kpis article) small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
}
@media (max-width:760px){
  html body.v32.is-portal :is(.r11-hero,.vt2-heading,.x-portal-hero,.r11-page-head,.r12-page-head):is(header,section) > :is(.r12-head-actions,.x-hero-actions-row,.r11-head-actions,.v30-report-actions,div:last-child:not(:first-child)):not(.x-never){
    flex-wrap:wrap!important;justify-content:flex-start!important;overflow:visible!important;flex:1 1 100%!important;width:100%!important
  }
}
