:root {
  --ui-navy: #0c2c56;
  --ui-blue: #155fac;
  --ui-teal: #0c7b73;
  --ui-ink: #17324f;
  --ui-muted: #667b94;
  --ui-line: #d6e2ef;
  --ui-surface: #ffffff;
  --ui-soft: #f4f8fc;
  --ui-radius: 18px;
  --ui-shadow: 0 7px 0 rgba(20, 59, 99, .07), 0 18px 38px rgba(23, 58, 107, .08);
  --ui-page-gutter: clamp(12px, 1.45vw, 52px);
  --ui-section-gap: clamp(12px, 1vw, 22px);
}

.app-shell {
  background: radial-gradient(circle at 84% -8%, #e4edff 0, transparent 31%), #f4f7fb;
}

.shell-topbar {
  min-height: 78px;
  padding: 16px 20px;
  border-color: var(--ui-line);
  border-radius: var(--ui-radius);
  box-shadow: 0 7px 0 rgba(20, 59, 99, .05), 0 14px 30px rgba(23, 58, 107, .06);
}

.shell-topbar h1 {
  color: var(--ui-ink);
  font-size: 24px;
  letter-spacing: -.02em;
}

.modulo-host > .page-modulo,
.modulo-host > .ferramentas-modulo {
  box-sizing: border-box;
  width: 100%;
  max-width: none !important;
  margin-inline: auto !important;
}

.modulo-host,
.modulo-host > *,
.modulo-host :is(section, article, header, footer, div) {
  min-width: 0;
}

.modulo-host :is(img, svg, canvas, video) {
  max-width: 100%;
}

.modulo-host :is(table, .scroll-list, .scroll-section, .comissoes-tabela-wrap, .vchart) {
  max-width: 100%;
}

.modulo-host > .ferramentas-modulo {
  padding: 0 !important;
}

.module-hero {
  position: relative;
  isolation: isolate;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 24px !important;
  box-sizing: border-box;
  min-height: 122px;
  margin: 0 0 18px !important;
  padding: 24px 27px !important;
  overflow: hidden;
  border: 1px solid rgba(177, 209, 239, .42) !important;
  border-radius: 20px !important;
  background: linear-gradient(124deg, var(--ui-navy) 0%, var(--ui-blue) 62%, var(--ui-teal) 118%) !important;
  color: #fff !important;
  box-shadow: 0 9px 0 rgba(8, 44, 82, .10), 0 23px 42px rgba(12, 52, 94, .17) !important;
}

.module-hero::before {
  position: absolute;
  z-index: -1;
  top: -165px;
  right: 9%;
  width: 260px;
  height: 260px;
  border: 1px solid rgba(255, 255, 255, .14);
  border-radius: 50%;
  box-shadow: 0 0 0 34px rgba(255, 255, 255, .045), 0 0 0 72px rgba(255, 255, 255, .025);
  content: "";
}

.module-hero > div:first-child {
  min-width: 0;
}

.module-hero h1,
.module-hero h2 {
  margin: 5px 0 6px !important;
  color: #fff !important;
  font-size: clamp(24px, 2vw, 31px) !important;
  line-height: 1.12;
  letter-spacing: -.025em !important;
}

.module-hero > div:first-child > span,
.module-hero-kicker {
  color: #c9e1ff !important;
  font-size: 10px !important;
  font-weight: 900 !important;
  letter-spacing: .14em !important;
  text-transform: uppercase;
}

.module-hero p {
  max-width: 760px;
  margin: 0 !important;
  color: #e0edff !important;
  font-size: 12px !important;
  line-height: 1.5;
}

.module-hero-action,
.module-hero .premium-action,
.module-hero > .botao-primario {
  box-sizing: border-box;
  min-height: 40px;
  padding: 10px 14px !important;
  border: 1px solid rgba(255, 255, 255, .38) !important;
  border-radius: 10px !important;
  background: rgba(255, 255, 255, .13) !important;
  color: #fff !important;
  box-shadow: none !important;
  font: inherit;
  font-size: 11px !important;
  font-weight: 850 !important;
  text-decoration: none;
  cursor: pointer;
}

.module-hero-action:hover,
.module-hero .premium-action:hover,
.module-hero > .botao-primario:hover {
  background: rgba(255, 255, 255, .23) !important;
}

.module-hero .pedidos-exportacoes {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
  flex-wrap: wrap;
}

.modulo-host .chart-card,
.modulo-host .bottom-card,
.modulo-host .card,
.modulo-host .premium-work-card,
.modulo-host .operacoes-coluna,
.modulo-host .comissoes-card,
.modulo-host .comissoes-marcos-card,
.modulo-host .taxa-card,
.modulo-host .pix-card {
  border-color: var(--ui-line) !important;
  border-radius: 16px !important;
  background: linear-gradient(180deg, #fff, #f8fbff) !important;
  box-shadow: var(--ui-shadow) !important;
}

.modulo-host .premium-card-head,
.modulo-host .comissoes-card > header,
.modulo-host .comissoes-marcos-card > header,
.modulo-host .operacoes-coluna > header {
  border-bottom-color: #e1eaf4 !important;
  background: linear-gradient(90deg, #fff, #f5f9fe) !important;
}

.modulo-host .chart-title {
  color: #15599f !important;
  font-size: 14px !important;
  font-weight: 900 !important;
  letter-spacing: .075em !important;
  line-height: 1.35;
}

.modulo-host :is(input:not([type="checkbox"]):not([type="radio"]), select, textarea) {
  box-sizing: border-box;
  border-color: #c7d6e6 !important;
  border-radius: 10px !important;
  background-color: #fff !important;
  color: var(--ui-ink);
}

.modulo-host :is(input:not([type="checkbox"]):not([type="radio"]), select, textarea):focus {
  border-color: #2b76bd !important;
  outline: 3px solid rgba(43, 118, 189, .14) !important;
  box-shadow: none !important;
}

.modulo-host :is(.col-tabs, .taxa-modos) {
  box-sizing: border-box;
  padding: 6px !important;
  border: 1px solid var(--ui-line) !important;
  border-radius: 13px !important;
  background: #edf4fb !important;
}

.modulo-host :is(.col-tabs, .taxa-modos) button {
  border-radius: 9px !important;
}

.modulo-host :is(.col-tabs, .taxa-modos) button:is(.ativa, .ativo) {
  border-color: #1d62a8 !important;
  background: linear-gradient(135deg, #174f8c, #2377c2) !important;
  color: #fff !important;
  box-shadow: 0 4px 10px rgba(23, 79, 140, .18);
}

.modulo-host .os-kpis,
.modulo-host .kpis {
  gap: var(--ui-section-gap) !important;
  margin-bottom: 18px;
}

.modulo-host .os-kpis > *,
.modulo-host .kpis > * {
  border-radius: 15px !important;
}

.ferramentas-grade .taxa-cabecalho,
.ferramentas-grade .pix-cabecalho {
  box-sizing: border-box;
  min-height: 108px;
  padding: 18px 20px !important;
  border: 1px solid var(--ui-line) !important;
  border-radius: 16px !important;
  background: linear-gradient(135deg, #fff, #edf5fd) !important;
  color: var(--ui-ink) !important;
  box-shadow: var(--ui-shadow);
}

.ferramentas-grade .taxa-cabecalho h1,
.ferramentas-grade .pix-cabecalho h1 {
  color: var(--ui-ink) !important;
  font-size: 21px !important;
}

.ferramentas-grade .taxa-cabecalho span,
.ferramentas-grade .pix-cabecalho span {
  color: #1e66aa !important;
}

.ferramentas-grade .taxa-cabecalho p,
.ferramentas-grade .pix-cabecalho p {
  color: var(--ui-muted) !important;
}

.ferramentas-grade :is(.taxa-status, .pix-seguro) {
  border: 1px solid #d3e2f1;
  background: #e8f1fb !important;
  color: #315b84 !important;
}

@media (min-width: 1800px) {
  .module-hero {
    min-height: clamp(122px, 6.2vw, 158px);
    padding: clamp(25px, 1.5vw, 42px) !important;
  }

  .module-hero p {
    max-width: 980px;
    font-size: clamp(12px, .42vw, 15px) !important;
  }

  .modulo-host .chart-card,
  .modulo-host .bottom-card,
  .modulo-host .card,
  .modulo-host .premium-work-card,
  .modulo-host .operacoes-coluna,
  .modulo-host .comissoes-card,
  .modulo-host .comissoes-marcos-card,
  .modulo-host .taxa-card,
  .modulo-host .pix-card {
    border-radius: clamp(16px, .65vw, 22px) !important;
  }
}

@media (max-width: 900px) {
  .shell-topbar {
    min-height: auto;
    border-radius: 14px;
  }

  .module-hero {
    align-items: flex-start !important;
    flex-direction: column !important;
    min-height: 0;
    padding: 21px !important;
    border-radius: 16px !important;
  }

  .module-hero > :last-child,
  .module-hero .pedidos-exportacoes {
    width: 100%;
  }

  .module-hero-action,
  .module-hero .premium-action,
  .module-hero > .botao-primario {
    width: 100%;
  }

  .modulo-host .kpis,
  .modulo-host .os-kpis {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 520px) {
  .module-hero {
    gap: 16px !important;
    padding: 18px !important;
  }

  .module-hero h1,
  .module-hero h2 {
    font-size: 22px !important;
  }

  .modulo-host .kpis,
  .modulo-host .os-kpis {
    grid-template-columns: 1fr !important;
  }
}

@media print {
  .module-hero {
    min-height: 0;
    padding: 14px 16px !important;
    box-shadow: none !important;
  }

  .module-hero button {
    display: none !important;
  }
}
/* Cabeçalho único: o título da aba pertence ao shell. Os módulos exibem aqui somente ações contextuais. */
.module-actionbar{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:10px;
  min-height:40px;
  margin:0 0 14px;
}
.module-actionbar:empty{display:none}
.module-actionbar>*,.module-actionbar .pedidos-exportacoes{margin-left:auto}
body .module-actionbar.comissoes-head,body .module-actionbar.pedidos-head{
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  color:inherit;
}
@media(max-width:720px){
  .module-actionbar{align-items:stretch;flex-wrap:wrap}
  .module-actionbar>*,.module-actionbar .pedidos-exportacoes{width:100%;margin-left:0}
}