/* [project]/apps/web/app/globals.css [app-client] (css) */
:root, html[data-tema="claro"] {
  --lightningcss-light: initial;
  --lightningcss-dark: ;
  color-scheme: light;
  --cor-fundo: #f5f6f8;
  --cor-superficie: #fff;
  --cor-superficie-2: #f0f2f5;
  --cor-borda: #d9dde3;
  --cor-borda-forte: #b6bcc6;
  --cor-texto: #1b1f24;
  --cor-texto-suave: #57606a;
  --cor-primaria: #1f5fbf;
  --cor-primaria-hover: #174c9c;
  --cor-primaria-texto: #fff;
  --cor-primaria-suave: #e6eefb;
  --cor-sucesso: #1a7f37;
  --cor-sucesso-suave: #dcf3e2;
  --cor-alerta: #8a5a00;
  --cor-alerta-suave: #fbefd3;
  --cor-perigo: #c62828;
  --cor-perigo-hover: #a31f1f;
  --cor-perigo-suave: #fde4e4;
  --cor-info: #0b6a8a;
  --cor-info-suave: #def2f8;
  --cor-foco: #2f7cf6;
  --cor-backdrop: #0f141e80;
  --cor-sidebar: #16212f;
  --cor-sidebar-texto: #c9d3df;
  --cor-sidebar-ativo: #fff;
  --cor-sidebar-ativo-fundo: #ffffff1f;
  --esp-1: 3px;
  --esp-2: 6px;
  --esp-3: 10px;
  --esp-4: 14px;
  --esp-5: 20px;
  --esp-6: 28px;
  --esp-7: 40px;
  --raio-sm: 4px;
  --raio: 7px;
  --raio-lg: 10px;
  --sombra: 0 1px 2px #0000000f, 0 1px 3px #00000014;
  --sombra-lg: 0 10px 30px #0000002e;
  --fonte: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  --fonte-mono: ui-monospace, SFMono-Regular, Consolas, "Liberation Mono", monospace;
  --texto-xs: .75rem;
  --texto-sm: .85rem;
  --texto-md: .94rem;
  --texto-lg: 1.15rem;
  --texto-xl: 1.35rem;
  --largura-sidebar: 218px;
  --altura-cabecalho: 52px;
  --largura-conteudo: 1320px;
}

@media (prefers-color-scheme: dark) {
  :root:not([data-tema="claro"]) {
    --lightningcss-light: ;
    --lightningcss-dark: initial;
    color-scheme: dark;
    --cor-fundo: #0f1419;
    --cor-superficie: #171d24;
    --cor-superficie-2: #1f2730;
    --cor-borda: #2e3843;
    --cor-borda-forte: #44505d;
    --cor-texto: #e6eaef;
    --cor-texto-suave: #9aa6b2;
    --cor-primaria: #5b9bff;
    --cor-primaria-hover: #82b3ff;
    --cor-primaria-texto: #0b1220;
    --cor-primaria-suave: #1b2b44;
    --cor-sucesso: #4cc771;
    --cor-sucesso-suave: #16301f;
    --cor-alerta: #e8b64a;
    --cor-alerta-suave: #362a10;
    --cor-perigo: #ff6b6b;
    --cor-perigo-hover: #ff8f8f;
    --cor-perigo-suave: #3a1a1a;
    --cor-info: #5cc8ec;
    --cor-info-suave: #132e38;
    --cor-foco: #82b3ff;
    --cor-backdrop: #000000a6;
    --cor-sidebar: #0b1015;
    --sombra: 0 1px 2px #0006;
    --sombra-lg: 0 10px 30px #0009;
  }
}

html[data-tema="escuro"] {
  --lightningcss-light: ;
  --lightningcss-dark: initial;
  color-scheme: dark;
  --cor-fundo: #0f1419;
  --cor-superficie: #171d24;
  --cor-superficie-2: #1f2730;
  --cor-borda: #2e3843;
  --cor-borda-forte: #44505d;
  --cor-texto: #e6eaef;
  --cor-texto-suave: #9aa6b2;
  --cor-primaria: #5b9bff;
  --cor-primaria-hover: #82b3ff;
  --cor-primaria-texto: #0b1220;
  --cor-primaria-suave: #1b2b44;
  --cor-sucesso: #4cc771;
  --cor-sucesso-suave: #16301f;
  --cor-alerta: #e8b64a;
  --cor-alerta-suave: #362a10;
  --cor-perigo: #ff6b6b;
  --cor-perigo-hover: #ff8f8f;
  --cor-perigo-suave: #3a1a1a;
  --cor-info: #5cc8ec;
  --cor-info-suave: #132e38;
  --cor-foco: #82b3ff;
  --cor-backdrop: #000000a6;
  --cor-sidebar: #0b1015;
  --sombra: 0 1px 2px #0006;
  --sombra-lg: 0 10px 30px #0009;
}

html[data-tema="claro"] {
  --lightningcss-light: initial;
  --lightningcss-dark: ;
  color-scheme: light;
  --cor-fundo: #f5f6f8;
  --cor-superficie: #fff;
  --cor-superficie-2: #f0f2f5;
  --cor-borda: #d9dde3;
  --cor-borda-forte: #b6bcc6;
  --cor-texto: #1b1f24;
  --cor-texto-suave: #57606a;
  --cor-primaria: #1f5fbf;
  --cor-primaria-hover: #174c9c;
  --cor-primaria-texto: #fff;
  --cor-primaria-suave: #e6eefb;
  --cor-sucesso: #1a7f37;
  --cor-sucesso-suave: #dcf3e2;
  --cor-alerta: #8a5a00;
  --cor-alerta-suave: #fbefd3;
  --cor-perigo: #c62828;
  --cor-perigo-hover: #a31f1f;
  --cor-perigo-suave: #fde4e4;
  --cor-info: #0b6a8a;
  --cor-info-suave: #def2f8;
  --cor-foco: #2f7cf6;
  --cor-backdrop: #0f141e80;
  --cor-sidebar: #16212f;
  --cor-sidebar-texto: #c9d3df;
  --cor-sidebar-ativo: #fff;
  --cor-sidebar-ativo-fundo: #ffffff1f;
  --sombra: 0 1px 2px #0000000f, 0 1px 3px #00000014;
  --sombra-lg: 0 10px 30px #0000002e;
}

*, :before, :after {
  box-sizing: border-box;
}

html {
  -webkit-text-size-adjust: 100%;
  font-size: 15px;
}

@media (max-height: 860px) {
  html {
    font-size: 14px;
  }
}

body {
  background: var(--cor-fundo);
  min-height: 100vh;
  color: var(--cor-texto);
  font-family: var(--fonte);
  font-size: var(--texto-md);
  margin: 0;
  line-height: 1.45;
}

h1, h2, h3, p {
  margin: 0;
}

a {
  color: var(--cor-primaria);
}

a:hover {
  color: var(--cor-primaria-hover);
}

:focus-visible {
  outline: 2px solid var(--cor-foco);
  outline-offset: 2px;
}

code, pre {
  font-family: var(--fonte-mono);
  font-size: var(--texto-sm);
}

.sr-only {
  clip: rect(0 0 0 0);
  white-space: nowrap;
  border: 0;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  position: absolute;
  overflow: hidden;
}

.mono {
  font-family: var(--fonte-mono);
  font-size: var(--texto-sm);
}

.texto-suave {
  color: var(--cor-texto-suave);
}

.pilha {
  gap: var(--esp-5);
  flex-direction: column;
  display: flex;
}

.pular-conteudo {
  left: var(--esp-2);
  z-index: 100;
  padding: var(--esp-2) var(--esp-3);
  background: var(--cor-superficie);
  border-radius: var(--raio);
  position: absolute;
  top: -100px;
}

.pular-conteudo:focus {
  top: var(--esp-2);
}

.btn {
  justify-content: center;
  align-items: center;
  gap: var(--esp-2);
  min-height: 34px;
  padding: 0 var(--esp-4);
  border-radius: var(--raio);
  font: inherit;
  font-size: var(--texto-sm);
  white-space: nowrap;
  cursor: pointer;
  border: 1px solid #0000;
  font-weight: 600;
  line-height: 1;
  text-decoration: none;
  transition: background-color .15s, border-color .15s, color .15s;
  display: inline-flex;
}

.btn:disabled {
  opacity: .55;
  cursor: not-allowed;
}

.btn--sm {
  min-height: 28px;
  padding: 0 var(--esp-3);
  font-size: var(--texto-xs);
}

.btn--primario {
  background: var(--cor-primaria);
  color: var(--cor-primaria-texto);
}

.btn--primario:hover:not(:disabled) {
  background: var(--cor-primaria-hover);
  color: var(--cor-primaria-texto);
}

.btn--secundario {
  background: var(--cor-superficie);
  border-color: var(--cor-borda-forte);
  color: var(--cor-texto);
}

.btn--secundario:hover:not(:disabled) {
  background: var(--cor-superficie-2);
  color: var(--cor-texto);
}

.btn--fantasma {
  color: var(--cor-primaria);
  background: none;
}

.btn--fantasma:hover:not(:disabled) {
  background: var(--cor-primaria-suave);
}

.btn--perigo {
  background: var(--cor-perigo);
  color: #fff;
}

.btn--perigo:hover:not(:disabled) {
  background: var(--cor-perigo-hover);
  color: #fff;
}

.acoes-bpo-detalhe {
  align-items: center;
  gap: var(--esp-2);
  display: flex;
}

.btn--voltar {
  color: var(--cor-texto);
  align-items: center;
  gap: 6px;
  font-weight: 500;
  transition: all .18s;
  display: inline-flex;
}

.btn--voltar:hover {
  background: var(--cor-superficie-2);
  border-color: var(--cor-borda-forte);
  transform: translateX(-1px);
}

.btn--voltar svg {
  color: var(--cor-texto-suave);
  transition: transform .18s;
}

.btn--voltar:hover svg {
  color: var(--cor-texto);
  transform: translateX(-2px);
}

.btn-voltar-expansivo {
  border-radius: var(--raio);
  background: var(--cor-superficie);
  border: 1px solid var(--cor-borda);
  min-width: 96px;
  height: 36px;
  color: var(--cor-texto);
  cursor: pointer;
  -webkit-user-select: none;
  user-select: none;
  box-sizing: border-box;
  justify-content: center;
  align-items: center;
  padding: 0 16px;
  font-size: .86rem;
  font-weight: 500;
  text-decoration: none;
  transition: border-color .25s, box-shadow .25s, background .2s;
  display: inline-flex;
  position: relative;
  overflow: hidden;
}

.btn-voltar-expansivo:hover {
  background: var(--cor-superficie);
  border-color: var(--cor-borda-forte);
  box-shadow: 0 2px 10px #0000000d;
}

.btn-voltar-expansivo__texto {
  white-space: nowrap;
  transition: opacity .45s cubic-bezier(.16, 1, .3, 1), transform .45s cubic-bezier(.16, 1, .3, 1);
  display: inline-block;
  transform: translateX(10px);
}

.btn-voltar-expansivo:hover .btn-voltar-expansivo__texto {
  opacity: 0;
  transform: translateX(20px);
}

.btn-voltar-expansivo__icone-wrap {
  border-right: 1px solid var(--cor-borda);
  z-index: 2;
  width: 34px;
  height: 100%;
  color: var(--cor-texto-suave);
  background: #1871fe14;
  place-items: center;
  transition: width .48s cubic-bezier(.16, 1, .3, 1), background .35s, border-color .35s;
  display: grid;
  position: absolute;
  inset: 0 auto 0 0;
}

html[data-tema="escuro"] .btn-voltar-expansivo__icone-wrap, html:not([data-tema="claro"]) .btn-voltar-expansivo__icone-wrap {
  background: #ffffff0f;
  border-right-color: #ffffff1a;
}

.btn-voltar-expansivo:hover .btn-voltar-expansivo__icone-wrap {
  background: var(--cor-superficie-2);
  width: 100%;
  color: var(--cor-primaria);
  border-right-color: #0000;
}

.btn-voltar-expansivo__svg {
  flex-shrink: 0;
  transition: transform .45s cubic-bezier(.16, 1, .3, 1), color .3s;
}

.btn-voltar-expansivo:hover .btn-voltar-expansivo__svg {
  color: var(--cor-primaria);
  transform: scale(1.12);
}

.btn--editar-premium, .btn--novo-premium {
  align-items: center;
  gap: 7px;
  font-weight: 600;
  transition: transform .18s cubic-bezier(.16, 1, .3, 1), box-shadow .18s cubic-bezier(.16, 1, .3, 1), background .18s;
  display: inline-flex;
  box-shadow: 0 4px 14px #1871fe59, 0 1px 2px #00000014;
  color: #fff !important;
  background: linear-gradient(135deg, #1871fe 0%, #1555cb 60%, #114bb0 100%) !important;
  border: 1px solid #fff3 !important;
}

.btn--editar-premium:hover:not(:disabled), .btn--novo-premium:hover:not(:disabled) {
  transform: translateY(-1.5px);
  box-shadow: 0 6px 18px #1871fe73, 0 2px 4px #0000001f;
  color: #fff !important;
  background: linear-gradient(135deg, #267cff 0%, #195de0 60%, #1453c2 100%) !important;
}

.btn--editar-premium:active:not(:disabled), .btn--novo-premium:active:not(:disabled) {
  transform: translateY(0);
  box-shadow: 0 2px 8px #1871fe4d;
}

.btn--editar-premium svg, .btn--novo-premium svg {
  stroke: #fff;
  transition: transform .2s cubic-bezier(.16, 1, .3, 1);
}

.btn--editar-premium:hover:not(:disabled) svg {
  transform: scale(1.1) rotate(-6deg);
}

.btn--novo-premium:hover:not(:disabled) svg {
  transform: scale(1.14) rotate(90deg);
}

.btn--salvar-premium {
  align-items: center;
  gap: 7px;
  font-weight: 600;
  transition: transform .18s cubic-bezier(.16, 1, .3, 1), box-shadow .18s cubic-bezier(.16, 1, .3, 1), background .18s;
  display: inline-flex;
  box-shadow: 0 4px 14px #05966959, 0 1px 2px #00000014;
  color: #fff !important;
  background: linear-gradient(135deg, #059669 0%, #047857 60%, #065f46 100%) !important;
  border: 1px solid #fff3 !important;
}

.btn--salvar-premium:hover:not(:disabled) {
  transform: translateY(-1.5px);
  box-shadow: 0 6px 18px #05966973, 0 2px 4px #0000001f;
  color: #fff !important;
  background: linear-gradient(135deg, #10b981 0%, #059669 60%, #047857 100%) !important;
}

.btn--salvar-premium:active:not(:disabled) {
  transform: translateY(0);
  box-shadow: 0 2px 8px #0596694d;
}

.btn--salvar-premium svg {
  stroke: #fff;
  transition: transform .2s cubic-bezier(.16, 1, .3, 1);
}

.btn--salvar-premium:hover:not(:disabled) svg {
  transform: scale(1.12);
}

.field {
  gap: var(--esp-1);
  flex-direction: column;
  min-width: 0;
  display: flex;
}

.field__rotulo {
  font-size: var(--texto-sm);
  font-weight: 600;
}

.field__obrigatorio {
  color: var(--cor-perigo);
}

.field__dica {
  font-size: var(--texto-xs);
  color: var(--cor-texto-suave);
}

.field__erro {
  font-size: var(--texto-xs);
  color: var(--cor-perigo);
  font-weight: 600;
}

.input {
  width: 100%;
  min-height: 34px;
  padding: 6px var(--esp-3);
  border: 1px solid var(--cor-borda-forte);
  border-radius: var(--raio);
  background: var(--cor-superficie);
  color: var(--cor-texto);
  font: inherit;
  font-size: var(--texto-sm);
}

.input:disabled {
  background: var(--cor-superficie-2);
  color: var(--cor-texto-suave);
}

.input[aria-invalid="true"] {
  border-color: var(--cor-perigo);
}

.input:focus-visible {
  outline: 2px solid var(--cor-foco);
  outline-offset: 0;
  border-color: var(--cor-foco);
}

.select {
  cursor: pointer;
}

.checkbox {
  align-items: flex-start;
  gap: var(--esp-2);
  font-size: var(--texto-sm);
  display: flex;
}

.checkbox input {
  width: 16px;
  height: 16px;
  accent-color: var(--cor-primaria);
  flex-shrink: 0;
  margin: 3px 0 0;
}

.checkbox label {
  cursor: pointer;
}

.checkbox__dica {
  font-size: var(--texto-xs);
  color: var(--cor-texto-suave);
  display: block;
}

.form-grid {
  gap: var(--esp-4);
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  display: grid;
}

.form-grid > .field--largo, .form-grid > .largo {
  grid-column: 1 / -1;
}

.form-pilha {
  gap: var(--esp-4);
  flex-direction: column;
  display: flex;
}

fieldset.grupo {
  padding: var(--esp-3) var(--esp-4);
  border: 1px solid var(--cor-borda);
  border-radius: var(--raio);
  margin: 0;
}

fieldset.grupo legend {
  padding: 0 var(--esp-1);
  font-size: var(--texto-sm);
  font-weight: 600;
}

.lista-opcoes {
  gap: var(--esp-2);
  flex-direction: column;
  max-height: 240px;
  display: flex;
  overflow-y: auto;
}

.opcao-radio {
  gap: var(--esp-2);
  padding: var(--esp-3);
  border: 1px solid var(--cor-borda);
  border-radius: var(--raio);
  cursor: pointer;
  align-items: flex-start;
  display: flex;
}

.opcao-radio:has(input:checked) {
  border-color: var(--cor-primaria);
  background: var(--cor-primaria-suave);
}

.opcao-radio input {
  accent-color: var(--cor-primaria);
  margin-top: 4px;
}

.badge {
  padding: 2px var(--esp-2);
  font-size: var(--texto-xs);
  white-space: nowrap;
  background: var(--cor-superficie-2);
  color: var(--cor-texto-suave);
  border-radius: 999px;
  align-items: center;
  font-weight: 600;
  display: inline-flex;
}

.badge--sucesso {
  background: var(--cor-sucesso-suave);
  color: var(--cor-sucesso);
}

.badge--alerta {
  background: var(--cor-alerta-suave);
  color: var(--cor-alerta);
}

.badge--perigo {
  background: var(--cor-perigo-suave);
  color: var(--cor-perigo);
}

.badge--info {
  background: var(--cor-info-suave);
  color: var(--cor-info);
}

.tabela-container {
  border: 1px solid var(--cor-borda);
  border-radius: var(--raio);
  background: var(--cor-superficie);
  width: 100%;
  position: relative;
  overflow-x: auto;
}

.tabela {
  border-collapse: collapse;
  width: 100%;
  font-size: var(--texto-sm);
}

.tabela__legenda {
  padding: var(--esp-3);
  text-align: left;
  font-weight: 600;
}

.tabela th, .tabela td {
  border-bottom: 1px solid var(--cor-borda);
  text-align: left;
  vertical-align: middle;
  padding: 7px 10px;
  line-height: 1.35;
}

.tabela th {
  background: var(--cor-superficie-2);
  font-size: var(--texto-xs);
  text-transform: uppercase;
  letter-spacing: .03em;
  color: var(--cor-texto-suave);
  white-space: nowrap;
  padding: 8px 10px;
  font-weight: 700;
}

.tabela tbody tr:last-child td {
  border-bottom: 0;
}

.tabela tbody tr:hover td {
  background: var(--cor-superficie-2);
}

.tabela tbody tr.tabela__linha-clicavel {
  cursor: pointer;
  transition: background-color .15s;
}

.tabela tbody tr.tabela__linha-clicavel:hover td {
  background: var(--cor-superficie-2);
}

html:not([data-tema="claro"]) .tabela tbody tr.tabela__linha-clicavel:hover td {
  background: #ffffff0f;
}

.tabela__link-destaque {
  color: var(--cor-primaria);
  font-weight: 600;
  transition: color .15s;
}

.tabela tbody tr.tabela__linha-clicavel:hover .tabela__link-destaque {
  text-decoration: underline;
}

.tabela__acoes {
  text-align: right;
}

.tabela__acoes .acoes {
  flex-wrap: nowrap;
  justify-content: flex-end;
}

.tabela .linha-detalhe td, .tabela tbody tr.linha-detalhe:hover td {
  background: var(--cor-fundo);
}

.tabela th.tabela__col-logo, .tabela td.tabela__col-logo {
  vertical-align: middle;
  width: 40px;
  min-width: 40px;
  max-width: 44px;
  padding-right: 6px;
}

.tabela-bpo-logo {
  letter-spacing: -.02em;
  -webkit-user-select: none;
  user-select: none;
  box-sizing: border-box;
  border-radius: 6px;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 28px;
  height: 28px;
  font-family: inherit;
  font-size: .9rem;
  font-weight: 800;
  transition: transform .15s, box-shadow .15s;
  display: inline-flex;
  box-shadow: 0 1px 3px #00000014;
}

.tabela-bpo-logo__img {
  object-fit: cover;
  border-radius: 6px;
  width: 28px;
  height: 28px;
  display: block;
}

.tabela tbody tr.tabela__linha-clicavel:hover .tabela-bpo-logo {
  transform: scale(1.05);
}

.tabela__metrica-item {
  color: var(--cor-texto);
  font-variant-numeric: tabular-nums;
  align-items: center;
  gap: 7px;
  font-weight: 500;
  display: inline-flex;
}

.tabela__metrica-icone {
  color: var(--cor-texto-suave);
  flex-shrink: 0;
  transition: color .15s;
}

.tabela tbody tr.tabela__linha-clicavel:hover .tabela__metrica-icone, .tabela-bpos-recentes tbody tr:hover .tabela__metrica-icone {
  color: var(--cor-primaria);
}

.tabela__dado-icone {
  color: var(--cor-texto);
  align-items: center;
  gap: 7px;
  display: inline-flex;
}

.tabela__dado-icone-svg {
  color: var(--cor-texto-suave);
  flex-shrink: 0;
  transition: color .15s;
}

.tabela tbody tr:hover .tabela__dado-icone-svg {
  color: var(--cor-primaria);
}

.tabela__dado-link {
  color: var(--cor-primaria);
  text-decoration: none;
  transition: opacity .15s;
}

.tabela__dado-link:hover {
  text-decoration: underline;
}

.grid-cards-bpos {
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  gap: 14px;
  width: 100%;
  display: grid;
}

.card-bpo {
  background: var(--cor-superficie);
  border: 1px solid var(--cor-borda);
  cursor: pointer;
  box-sizing: border-box;
  border-radius: 10px;
  outline: none;
  flex-direction: column;
  padding: 14px 16px;
  transition: all .2s cubic-bezier(.16, 1, .3, 1);
  display: flex;
  position: relative;
  box-shadow: 0 1px 3px #0000000a, 0 2px 6px #00000005;
}

html:not([data-tema="claro"]) .card-bpo {
  background: #151e2e;
  border-color: #ffffff14;
  box-shadow: 0 4px 14px -2px #00000059;
}

.card-bpo:hover, .card-bpo:focus-visible {
  border-color: var(--cor-borda-forte);
  transform: translateY(-2px);
  box-shadow: 0 8px 24px #00000014;
}

html:not([data-tema="claro"]) .card-bpo:hover, html:not([data-tema="claro"]) .card-bpo:focus-visible {
  border-color: #3b82f666;
  box-shadow: 0 10px 28px -4px #0009, 0 0 0 1px #3b82f640;
}

.card-bpo__topo {
  justify-content: space-between;
  align-items: flex-start;
  gap: 10px;
  display: flex;
}

.card-bpo__identificacao {
  flex: 1;
  align-items: center;
  gap: 10px;
  min-width: 0;
  display: flex;
}

.card-bpo__nomes {
  flex-direction: column;
  gap: 2px;
  min-width: 0;
  display: flex;
}

.card-bpo__razao {
  color: var(--cor-texto);
  white-space: nowrap;
  text-overflow: ellipsis;
  margin: 0;
  font-size: .92rem;
  font-weight: 700;
  transition: color .15s;
  overflow: hidden;
}

.card-bpo:hover .card-bpo__razao {
  color: var(--cor-primaria);
}

.card-bpo__cnpj {
  color: var(--cor-texto-suave);
  font-size: .76rem;
  line-height: 1.2;
}

.card-bpo__divisor {
  background: var(--cor-borda);
  opacity: .7;
  height: 1px;
  margin: 12px 0 10px;
}

html:not([data-tema="claro"]) .card-bpo__divisor {
  background: #ffffff0f;
}

.card-bpo__metricas {
  grid-template-columns: 1fr 1fr;
  gap: 8px;
  margin-bottom: 12px;
  display: grid;
}

.card-bpo__metrica-item {
  background: var(--cor-superficie-2);
  border: 1px solid var(--cor-borda);
  border-radius: 7px;
  align-items: center;
  gap: 8px;
  padding: 6px 10px;
  transition: all .15s;
  display: flex;
}

html:not([data-tema="claro"]) .card-bpo__metrica-item {
  background: #ffffff08;
  border-color: #ffffff0f;
}

.card-bpo:hover .card-bpo__metrica-item {
  background: #1871fe0a;
  border-color: #1871fe26;
}

html:not([data-tema="claro"]) .card-bpo:hover .card-bpo__metrica-item {
  background: #1871fe14;
  border-color: #3b82f633;
}

.card-bpo__metrica-icone {
  border-radius: 6px;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 26px;
  height: 26px;
  display: flex;
}

.card-bpo__metrica-icone--clientes {
  color: #0891b2;
  background: #0891b21f;
}

html:not([data-tema="claro"]) .card-bpo__metrica-icone--clientes {
  color: #38bdf8;
  background: #06b6d42e;
}

.card-bpo__metrica-icone--usuarios {
  color: #059669;
  background: #10b9811f;
}

html:not([data-tema="claro"]) .card-bpo__metrica-icone--usuarios {
  color: #34d399;
  background: #10b9812e;
}

.card-bpo__metrica-info {
  flex-direction: column;
  min-width: 0;
  display: flex;
}

.card-bpo__metrica-valor {
  color: var(--cor-texto);
  font-variant-numeric: tabular-nums;
  font-size: .94rem;
  font-weight: 700;
  line-height: 1.1;
}

.card-bpo__metrica-rotulo {
  color: var(--cor-texto-suave);
  text-transform: uppercase;
  letter-spacing: .03em;
  font-size: .68rem;
  font-weight: 600;
}

.card-bpo__rodape {
  justify-content: space-between;
  align-items: center;
  gap: 8px;
  margin-top: auto;
  padding-top: 2px;
  display: flex;
}

.card-bpo__tags {
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  display: flex;
}

.card-bpo__tag-plano {
  background: var(--cor-superficie-2);
  color: var(--cor-texto-suave);
  border: 1px solid var(--cor-borda);
  text-transform: capitalize;
  border-radius: 4px;
  align-items: center;
  padding: 2px 7px;
  font-size: .72rem;
  font-weight: 600;
  display: inline-flex;
}

html:not([data-tema="claro"]) .card-bpo__tag-plano {
  color: #94a3b8;
  background: #ffffff0d;
  border-color: #ffffff14;
}

.card-bpo__data {
  color: var(--cor-texto-suave);
  white-space: nowrap;
  font-size: .74rem;
}

.grid-cards-usuarios {
  grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
  gap: 14px;
  width: 100%;
  display: grid;
}

.card-usuario {
  background: var(--cor-superficie);
  border: 1px solid var(--cor-borda);
  box-sizing: border-box;
  border-radius: 10px;
  outline: none;
  flex-direction: column;
  padding: 16px;
  transition: all .2s cubic-bezier(.16, 1, .3, 1);
  display: flex;
  position: relative;
  box-shadow: 0 1px 3px #0000000a, 0 2px 6px #00000005;
}

html:not([data-tema="claro"]) .card-usuario {
  background: #151e2e;
  border-color: #ffffff14;
  box-shadow: 0 4px 14px -2px #00000059;
}

.card-usuario:hover, .card-usuario:focus-visible {
  border-color: var(--cor-borda-forte);
  transform: translateY(-2px);
  box-shadow: 0 8px 24px #00000014;
}

html:not([data-tema="claro"]) .card-usuario:hover, html:not([data-tema="claro"]) .card-usuario:focus-visible {
  border-color: #3b82f666;
  box-shadow: 0 10px 28px -4px #0009, 0 0 0 1px #3b82f640;
}

.card-usuario__topo {
  justify-content: space-between;
  align-items: flex-start;
  gap: 10px;
  margin-bottom: 12px;
  display: flex;
}

.card-usuario__identificacao {
  flex: 1;
  align-items: center;
  gap: 12px;
  min-width: 0;
  display: flex;
}

.card-usuario__avatar {
  border-radius: 9px;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 40px;
  font-size: .95rem;
  font-weight: 700;
  display: flex;
}

.card-usuario__nomes {
  flex-direction: column;
  gap: 2px;
  min-width: 0;
  display: flex;
}

.card-usuario__nome {
  color: var(--cor-texto);
  white-space: nowrap;
  text-overflow: ellipsis;
  align-items: center;
  gap: 6px;
  font-size: .92rem;
  font-weight: 600;
  display: flex;
  overflow: hidden;
}

.card-usuario__email {
  color: var(--cor-texto-suave);
  white-space: nowrap;
  text-overflow: ellipsis;
  font-size: .78rem;
  overflow: hidden;
}

.card-usuario__cargo {
  color: var(--cor-primaria);
  white-space: nowrap;
  text-overflow: ellipsis;
  font-size: .74rem;
  font-weight: 500;
  overflow: hidden;
}

.card-usuario__corpo {
  border-top: 1px solid var(--cor-borda);
  border-bottom: 1px solid var(--cor-borda);
  flex-direction: column;
  gap: 8px;
  margin-bottom: 12px;
  padding: 10px 0;
  font-size: .82rem;
  display: flex;
}

html:not([data-tema="claro"]) .card-usuario__corpo {
  border-top-color: #ffffff0f;
  border-bottom-color: #ffffff0f;
}

.card-usuario__info-linha {
  align-items: center;
  gap: 8px;
  min-width: 0;
  display: flex;
}

.card-usuario__info-rotulo {
  color: var(--cor-texto-suave);
  flex-shrink: 0;
  min-width: 52px;
  font-size: .76rem;
}

.card-usuario__info-valor {
  color: var(--cor-texto);
  white-space: nowrap;
  text-overflow: ellipsis;
  font-weight: 500;
  overflow: hidden;
}

.card-usuario__rodape {
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: center;
  gap: 6px;
  margin-top: auto;
  display: flex;
}

.tabela-usuario-avatar {
  box-sizing: border-box;
  border-radius: 8px;
  justify-content: center;
  align-items: center;
  width: 34px;
  height: 34px;
  font-size: .85rem;
  font-weight: 700;
  transition: transform .15s;
  display: flex;
}

.tabela tr:hover .tabela-usuario-avatar {
  transform: scale(1.05);
}

.card-filial-selecao {
  border-radius: var(--raio);
  border: 1px solid var(--cor-borda);
  background: var(--cor-superficie);
  cursor: pointer;
  -webkit-user-select: none;
  user-select: none;
  align-items: center;
  gap: 12px;
  padding: 12px 14px;
  transition: all .15s;
  display: flex;
}

.card-filial-selecao:hover {
  border-color: var(--cor-borda-forte);
  background: var(--cor-superficie-2);
}

.card-filial-selecao--ativa {
  box-shadow: 0 0 0 1px var(--cor-primaria);
  border-color: var(--cor-primaria) !important;
  background: var(--cor-superficie-destaque, #1871fe0d) !important;
}

html:not([data-tema="claro"]) .card-filial-selecao--ativa {
  background: #1871fe1f !important;
}

.paginador {
  justify-content: space-between;
  align-items: center;
  gap: var(--esp-3);
  padding: var(--esp-3) 0 var(--esp-1);
  font-size: var(--texto-sm);
  color: var(--cor-texto-suave);
  flex-wrap: wrap;
  display: flex;
}

.paginador__info {
  align-items: center;
  gap: var(--esp-3);
  font-size: var(--texto-sm);
  display: flex;
}

.paginador__info strong {
  color: var(--cor-texto);
  font-weight: 600;
}

.paginador__seletor-limite {
  align-items: center;
  display: flex;
}

.paginador__seletor-container {
  display: inline-flex;
  position: relative;
}

.paginador__seletor-btn {
  border-radius: var(--raio-sm, 6px);
  border: 1px solid var(--cor-borda);
  background: var(--cor-superficie);
  height: 30px;
  color: var(--cor-texto);
  font-size: var(--texto-xs, .75rem);
  cursor: pointer;
  -webkit-user-select: none;
  user-select: none;
  outline: none;
  align-items: center;
  gap: 7px;
  padding: 0 10px;
  font-weight: 500;
  transition: all .16s cubic-bezier(.16, 1, .3, 1);
  display: inline-flex;
}

.paginador__seletor-btn:hover {
  background: var(--cor-superficie-2);
  border-color: var(--cor-borda-forte);
  color: var(--cor-texto);
}

.paginador__seletor-btn--aberto {
  background: var(--cor-superficie-2);
  color: var(--cor-texto);
  box-shadow: 0 0 0 2px #3b82f633;
  border-color: var(--cor-primaria) !important;
}

.paginador__seletor-icone {
  color: var(--cor-texto-suave);
  flex-shrink: 0;
  transition: transform .2s cubic-bezier(.16, 1, .3, 1);
}

.paginador__seletor-icone--girado {
  color: var(--cor-primaria);
  transform: rotate(180deg);
}

.paginador__seletor-popover {
  background: var(--cor-superficie);
  border: 1px solid var(--cor-borda);
  border-radius: var(--raio, 8px);
  z-index: 100;
  transform-origin: 0 100%;
  flex-direction: column;
  gap: 2px;
  min-width: 145px;
  padding: 5px;
  animation: .16s cubic-bezier(.16, 1, .3, 1) paginadorPopoverSurgir;
  display: flex;
  position: absolute;
  bottom: calc(100% + 6px);
  left: 0;
  box-shadow: 0 12px 28px -4px #0000001f, 0 4px 10px #0000000f;
}

@keyframes paginadorPopoverSurgir {
  from {
    opacity: 0;
    transform: translateY(4px) scale(.96);
  }

  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

.paginador__seletor-cabecalho {
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--cor-texto-suave);
  border-bottom: 1px solid var(--cor-borda);
  margin-bottom: 3px;
  padding: 5px 8px 3px;
  font-size: 10px;
  font-weight: 700;
}

.paginador__seletor-opcao {
  border-radius: var(--raio-sm, 5px);
  width: 100%;
  color: var(--cor-texto);
  font-size: var(--texto-xs, .75rem);
  text-align: left;
  cursor: pointer;
  background: none;
  border: 0;
  justify-content: space-between;
  align-items: center;
  padding: 7px 9px;
  font-weight: 500;
  transition: all .12s;
  display: flex;
}

.paginador__seletor-opcao:hover {
  color: var(--cor-primaria);
  background: #3b82f614;
}

.paginador__seletor-opcao--ativo {
  color: var(--cor-primaria);
  background: #3b82f61f;
  font-weight: 600;
}

.paginador__seletor-opcao svg {
  color: var(--cor-primaria);
}

html[data-tema="escuro"] .paginador__seletor-btn, html:not([data-tema="claro"]) .paginador__seletor-btn {
  color: #f1f5f9;
  background: #111827;
  border-color: #2a3447;
}

html[data-tema="escuro"] .paginador__seletor-btn:hover, html:not([data-tema="claro"]) .paginador__seletor-btn:hover {
  color: #fff;
  background: #1e293b;
  border-color: #3b4861;
}

html[data-tema="escuro"] .paginador__seletor-btn--aberto, html:not([data-tema="claro"]) .paginador__seletor-btn--aberto {
  color: #fff;
  background: #1e293b;
  box-shadow: 0 0 0 2px #1871fe40;
  border-color: var(--cor-primaria, #1871fe) !important;
}

html[data-tema="escuro"] .paginador__seletor-popover, html:not([data-tema="claro"]) .paginador__seletor-popover {
  background: #111827;
  border-color: #334155;
  box-shadow: 0 14px 32px -4px #00000080, 0 4px 12px #00000040, 0 0 0 1px #ffffff0f;
}

html[data-tema="escuro"] .paginador__seletor-cabecalho, html:not([data-tema="claro"]) .paginador__seletor-cabecalho {
  color: #64748b;
  border-bottom-color: #ffffff0f;
}

html[data-tema="escuro"] .paginador__seletor-opcao, html:not([data-tema="claro"]) .paginador__seletor-opcao {
  color: #cbd5e1;
}

html[data-tema="escuro"] .paginador__seletor-opcao:hover, html:not([data-tema="claro"]) .paginador__seletor-opcao:hover {
  color: #60a5fa;
  background: #1871fe24;
}

html[data-tema="escuro"] .paginador__seletor-opcao--ativo, html:not([data-tema="claro"]) .paginador__seletor-opcao--ativo {
  color: #38bdf8;
  background: #1871fe2e;
}

.paginador__select {
  height: 28px;
  padding: 0 var(--esp-2);
  border-radius: var(--raio-sm);
  border: 1px solid var(--cor-borda);
  background: var(--cor-superficie);
  color: var(--cor-texto);
  font-size: var(--texto-xs);
  cursor: pointer;
  outline: none;
  transition: border-color .15s;
}

.paginador__select:focus {
  border-color: var(--cor-foco);
}

.paginador__botoes {
  align-items: center;
  gap: 4px;
  display: flex;
}

.paginador__numeros {
  align-items: center;
  gap: 3px;
  display: flex;
}

.paginador__btn {
  border-radius: var(--raio-sm);
  border: 1px solid var(--cor-borda);
  background: var(--cor-superficie);
  min-height: 30px;
  color: var(--cor-texto);
  font-size: var(--texto-xs);
  cursor: pointer;
  -webkit-user-select: none;
  user-select: none;
  justify-content: center;
  align-items: center;
  gap: 6px;
  padding: 0 10px;
  font-weight: 500;
  transition: all .15s;
  display: inline-flex;
}

.paginador__btn:hover:not(:disabled) {
  background: var(--cor-superficie-2);
  border-color: var(--cor-borda-forte);
  color: var(--cor-texto);
}

.paginador__btn:disabled {
  opacity: .45;
  cursor: not-allowed;
  pointer-events: none;
}

.paginador__btn--numero {
  min-width: 30px;
  font-family: var(--fonte-mono);
  padding: 0 6px;
}

.paginador__btn--ativo {
  font-weight: 700;
  box-shadow: 0 1px 3px #00000026;
  background: var(--cor-primaria) !important;
  color: var(--cor-primaria-texto) !important;
  border-color: var(--cor-primaria) !important;
}

.paginador__reticencias {
  min-width: 20px;
  font-size: var(--texto-sm);
  color: var(--cor-texto-suave);
  justify-content: center;
  align-items: center;
  display: inline-flex;
}

@media (max-width: 640px) {
  .paginador {
    flex-direction: column;
    align-items: flex-start;
  }

  .paginador__btn-texto {
    display: none;
  }
}

.dialog {
  border: 1px solid var(--cor-borda);
  border-radius: var(--raio-lg, 14px);
  background: var(--cor-superficie);
  width: min(560px, 100vw - 32px);
  max-height: min(100vh - 48px, 88vh);
  color: var(--cor-texto);
  box-shadow: 0 25px 60px -15px #0006,
    var(--sombra-lg);
  outline: none;
  flex-direction: column;
  margin: auto;
  padding: 0;
  display: flex;
  position: fixed;
  inset: 0;
  overflow: hidden;
}

.dialog--lg {
  width: min(840px, 100vw - 32px);
}

html:not([data-tema="claro"]) .dialog {
  box-shadow: 0 25px 70px -15px #000c, 0 0 0 1px #ffffff14;
}

.dialog::backdrop {
  background: var(--cor-backdrop);
  -webkit-backdrop-filter: blur(2px);
  backdrop-filter: blur(2px);
}

.dialog > form, .dialog__form {
  flex-direction: column;
  flex: auto;
  height: 100%;
  min-height: 0;
  display: flex;
  overflow: hidden;
}

.dialog__cabecalho {
  justify-content: space-between;
  align-items: center;
  gap: var(--esp-3);
  padding: var(--esp-4) var(--esp-5) var(--esp-2);
  flex-shrink: 0;
  display: flex;
}

.dialog__titulo {
  font-size: var(--texto-lg);
  color: var(--cor-texto);
  margin: 0;
  font-weight: 600;
}

.dialog__fechar {
  border-radius: var(--raio);
  width: 32px;
  height: 32px;
  color: var(--cor-texto-suave);
  cursor: pointer;
  background: none;
  border: 0;
  justify-content: center;
  align-items: center;
  font-size: 1.5rem;
  line-height: 1;
  transition: background-color .15s, color .15s;
  display: inline-flex;
}

.dialog__fechar:hover {
  background: var(--cor-superficie-2);
  color: var(--cor-texto);
}

.dialog__descricao {
  padding: 0 var(--esp-5) var(--esp-3);
  color: var(--cor-texto-suave);
  font-size: var(--texto-sm);
  flex-shrink: 0;
  margin: 0;
}

.dialog__corpo {
  gap: var(--esp-4);
  padding: var(--esp-3) var(--esp-5) var(--esp-4);
  overscroll-behavior: contain;
  flex-direction: column;
  flex: auto;
  min-height: 0;
  display: flex;
  overflow-y: auto;
}

.dialog__corpo::-webkit-scrollbar {
  width: 6px;
}

.dialog__corpo::-webkit-scrollbar-track {
  background: none;
}

.dialog__corpo::-webkit-scrollbar-thumb {
  background: #94a3b866;
  border-radius: 9999px;
}

.dialog__corpo::-webkit-scrollbar-thumb:hover {
  background: #94a3b899;
}

.dialog__rodape {
  justify-content: flex-end;
  align-items: center;
  gap: var(--esp-3);
  padding: 14px var(--esp-5);
  border-top: 1px solid var(--cor-borda);
  background: var(--cor-superficie);
  flex-shrink: 0;
  display: flex;
}

.banner {
  justify-content: space-between;
  align-items: center;
  gap: var(--esp-4);
  border-radius: var(--raio-lg, 10px);
  font-size: var(--texto-sm);
  border: 1px solid;
  padding: 14px 18px;
  display: flex;
  box-shadow: 0 1px 3px #0000000d;
}

.banner__conteudo-com-icone {
  align-items: flex-start;
  gap: 12px;
  display: flex;
}

.banner__icone {
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  margin-top: 1px;
  display: flex;
}

.banner__textos {
  flex-direction: column;
  gap: 2px;
  display: flex;
}

.banner__titulo {
  margin: 0;
  font-size: .92rem;
  font-weight: 600;
}

.banner__mensagem {
  margin: 0;
  font-size: .85rem;
  line-height: 1.45;
}

.banner--erro {
  background: var(--cor-perigo-suave);
  color: var(--cor-texto);
  border-color: #ef444459;
}

.banner--erro .banner__titulo, .banner--erro .banner__icone {
  color: var(--cor-perigo);
}

.banner--instabilidade {
  color: var(--cor-texto);
  background: #f59e0b14;
  border-color: #f59e0b59;
}

.banner--instabilidade .banner__titulo {
  color: #d97706;
}

.banner--instabilidade .banner__icone {
  color: #f59e0b;
}

.banner--instabilidade .banner__mensagem {
  color: var(--cor-texto-suave);
}

html[data-tema="escuro"] .banner--instabilidade {
  background: #f59e0b1f;
  border-color: #f59e0b61;
}

html[data-tema="escuro"] .banner--instabilidade .banner__titulo, html[data-tema="escuro"] .banner--instabilidade .banner__icone {
  color: #fbbf24;
}

.banner--info {
  background: var(--cor-info-suave);
  border-color: var(--cor-info);
}

.banner--sucesso {
  background: var(--cor-sucesso-suave);
  border-color: var(--cor-sucesso);
}

.banner--alerta {
  background: var(--cor-alerta-suave);
  border-color: var(--cor-alerta);
}

.banner__titulo {
  font-weight: 700;
}

.vazio {
  align-items: center;
  gap: var(--esp-2);
  padding: var(--esp-7) var(--esp-4);
  border: 1px dashed var(--cor-borda-forte);
  border-radius: var(--raio);
  text-align: center;
  background: var(--cor-superficie);
  flex-direction: column;
  display: flex;
}

.vazio__titulo {
  font-weight: 600;
}

.vazio__descricao {
  max-width: 48ch;
  color: var(--cor-texto-suave);
  font-size: var(--texto-sm);
}

.carregando {
  align-items: center;
  gap: var(--esp-2);
  padding: var(--esp-4);
  color: var(--cor-texto-suave);
  font-size: var(--texto-sm);
  display: flex;
}

.carregando--tela {
  justify-content: center;
  min-height: 60vh;
}

.spinner {
  border: 2px solid var(--cor-borda-forte);
  border-top-color: var(--cor-primaria);
  border-radius: 50%;
  width: 18px;
  height: 18px;
  animation: .8s linear infinite girar;
}

.spinner--inline {
  border-color: #0000 currentColor currentColor;
  width: 14px;
  height: 14px;
}

@keyframes girar {
  to {
    transform: rotate(360deg);
  }
}

@media (prefers-reduced-motion: reduce) {
  .spinner {
    animation-duration: 2.4s;
  }

  .carregando-tela__pulso-sonar, .carregando-tela__anel-radar, .carregando-tela__anel-scanner, .carregando-tela__emblema, .carregando-tela__feixe, .carregando-bloco__anel-scanner, .carregando-bloco__emblema, .carregando-bloco__feixe {
    animation: none !important;
  }
}

.carregando-tela {
  box-sizing: border-box;
  background: radial-gradient(circle at center,
      #1871fe14 0%,
      #1871fe05 40%,
      transparent 70%),
    var(--cor-fundo);
  -webkit-user-select: none;
  user-select: none;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  min-height: 100vh;
  padding: 32px 24px;
  display: flex;
  position: relative;
  overflow: hidden;
}

html[data-tema="escuro"] .carregando-tela, html:not([data-tema="claro"]) .carregando-tela {
  background: radial-gradient(circle, #1871fe2e 0%, #00d2ff0d 45%, #0000 70%), #080f1d;
}

.acesso:has(.carregando-tela) {
  background: none;
  width: 100%;
  min-height: 100vh;
  padding: 0;
}

.carregando-tela__cartao {
  text-align: center;
  z-index: 2;
  flex-direction: column;
  align-items: center;
  width: 100%;
  max-width: 440px;
  animation: .4s cubic-bezier(.16, 1, .3, 1) fadeInCarregando;
  display: flex;
  position: relative;
}

@keyframes fadeInCarregando {
  from {
    opacity: 0;
    transform: translateY(10px) scale(.98);
  }

  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

.carregando-tela__halo {
  place-items: center;
  width: 140px;
  height: 140px;
  margin-bottom: 24px;
  display: grid;
  position: relative;
}

.carregando-tela__pulso-sonar {
  pointer-events: none;
  border: 1.5px solid #1871fe73;
  border-radius: 50%;
  animation: 2.8s cubic-bezier(.1, .7, .1, 1) infinite pulsoSonar;
  position: absolute;
  inset: -8px;
}

.carregando-tela__pulso-sonar--2 {
  animation-delay: 1.4s;
}

@keyframes pulsoSonar {
  0% {
    opacity: .8;
    transform: scale(.85);
  }

  50% {
    opacity: .35;
  }

  100% {
    opacity: 0;
    transform: scale(1.6);
  }
}

.carregando-tela__anel-radar {
  pointer-events: none;
  border: 1.5px dashed #1871fe59;
  border-radius: 50%;
  animation: 24s linear infinite girarReverso;
  position: absolute;
  inset: 0;
}

html[data-tema="escuro"] .carregando-tela__anel-radar, html:not([data-tema="claro"]) .carregando-tela__anel-radar {
  border-color: #00d2ff66;
}

@keyframes girarReverso {
  to {
    transform: rotate(-360deg);
  }
}

.carregando-tela__anel-scanner {
  pointer-events: none;
  border: 2px solid #00d2ff;
  border-color: #00d2ff #1871fe #0000 #0000;
  border-radius: 50%;
  animation: 1.8s cubic-bezier(.4, 0, .2, 1) infinite girar;
  position: absolute;
  inset: 8px;
}

.carregando-tela__emblema {
  z-index: 3;
  background: linear-gradient(145deg, #fff, #f0f6ff);
  border: 1.5px solid #1871fe4d;
  border-radius: 50%;
  place-items: center;
  width: 96px;
  height: 96px;
  animation: 3s ease-in-out infinite flutuarPiloto;
  display: grid;
  position: relative;
  box-shadow: 0 12px 28px -6px #1871fe40, inset 0 0 16px #00d2ff26;
}

html[data-tema="escuro"] .carregando-tela__emblema, html:not([data-tema="claro"]) .carregando-tela__emblema {
  background: linear-gradient(145deg, #0f172a, #080f1d);
  border-color: #00d2ff59;
  box-shadow: 0 16px 36px -8px #000c, 0 0 24px #1871fe59, inset 0 0 18px #00d2ff33;
}

@keyframes flutuarPiloto {
  0%, 100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-4px);
  }
}

.carregando-tela__logo {
  object-fit: contain;
  filter: drop-shadow(0 4px 14px #1871fe59);
  border-radius: 50%;
  width: 62px;
  height: 62px;
  transition: transform .3s;
}

.carregando-bloco__logo {
  object-fit: contain;
  filter: drop-shadow(0 2px 8px #1871fe4d);
  border-radius: 50%;
  width: 38px;
  height: 38px;
}

.carregando-tela__tag {
  color: var(--cor-primaria);
  letter-spacing: .1em;
  text-transform: uppercase;
  background: #1871fe14;
  border: 1px solid #1871fe3d;
  border-radius: 9999px;
  align-items: center;
  gap: 7px;
  margin-bottom: 12px;
  padding: 4px 14px;
  font-size: 11px;
  font-weight: 700;
  display: inline-flex;
}

html[data-tema="escuro"] .carregando-tela__tag, html:not([data-tema="claro"]) .carregando-tela__tag {
  color: #38bdf8;
  background: #1871fe2e;
  border-color: #00d2ff59;
}

.carregando-tela__dot {
  background: #22c55e;
  border-radius: 50%;
  width: 7px;
  height: 7px;
  animation: 1.4s ease-in-out infinite pulsoDot;
  box-shadow: 0 0 10px #22c55e;
}

@keyframes pulsoDot {
  0%, 100% {
    opacity: 1;
    transform: scale(1);
  }

  50% {
    opacity: .45;
    transform: scale(.8);
  }
}

.carregando-tela__titulo {
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--cor-texto);
  margin: 0 0 6px;
  font-size: 1.35rem;
  font-weight: 800;
  line-height: 1.2;
}

.carregando-tela__mensagem {
  color: var(--cor-texto);
  margin: 0 0 16px;
  font-size: 1.05rem;
  font-weight: 600;
  line-height: 1.4;
}

.carregando-tela__trilho {
  background: #1871fe1f;
  border-radius: 9999px;
  width: 240px;
  height: 4px;
  margin-bottom: 14px;
  position: relative;
  overflow: hidden;
}

html[data-tema="escuro"] .carregando-tela__trilho, html:not([data-tema="claro"]) .carregando-tela__trilho {
  background: #ffffff14;
}

.carregando-tela__feixe {
  background: linear-gradient(90deg, #0000, #00d2ff 40%, #1871fe 80%, #0000);
  border-radius: 9999px;
  width: 45%;
  animation: 1.8s ease-in-out infinite alternate feixeRadar;
  position: absolute;
  top: 0;
  bottom: 0;
  box-shadow: 0 0 12px #00d2ff;
}

@keyframes feixeRadar {
  0% {
    left: -35%;
  }

  100% {
    left: 90%;
  }
}

.carregando-tela__subtitulo {
  color: var(--cor-texto-suave);
  opacity: .82;
  letter-spacing: .03em;
  margin: 0;
  font-size: .78rem;
  font-weight: 500;
}

.carregando-bloco {
  text-align: center;
  box-sizing: border-box;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  min-height: 220px;
  padding: 32px 20px;
  display: flex;
}

.carregando-bloco__halo {
  place-items: center;
  width: 80px;
  height: 80px;
  margin-bottom: 16px;
  display: grid;
  position: relative;
}

.carregando-bloco__anel-scanner {
  border: 2px solid #00d2ff;
  border-color: #00d2ff #1871fe #0000 #0000;
  border-radius: 50%;
  animation: 1.8s cubic-bezier(.4, 0, .2, 1) infinite girar;
  position: absolute;
  inset: 0;
}

.carregando-bloco__emblema {
  background: var(--cor-superficie);
  border: 1px solid var(--cor-borda);
  border-radius: 50%;
  place-items: center;
  width: 62px;
  height: 62px;
  animation: 3s ease-in-out infinite flutuarPiloto;
  display: grid;
  box-shadow: 0 4px 14px #1871fe26;
}

.carregando-bloco__mensagem {
  color: var(--cor-texto);
  margin: 0 0 10px;
  font-size: .88rem;
  font-weight: 600;
}

.carregando-bloco__trilho {
  background: #1871fe1f;
  border-radius: 9999px;
  width: 160px;
  height: 3px;
  margin-bottom: 8px;
  position: relative;
  overflow: hidden;
}

.carregando-bloco__feixe {
  background: linear-gradient(90deg, #0000, #00d2ff, #1871fe, #0000);
  border-radius: 9999px;
  width: 40%;
  animation: 1.6s ease-in-out infinite alternate feixeRadar;
  position: absolute;
  top: 0;
  bottom: 0;
  box-shadow: 0 0 8px #00d2ff;
}

.carregando-bloco__subtitulo {
  color: var(--cor-texto-suave);
  margin: 0;
  font-size: .74rem;
}

.carregando-inline {
  align-items: center;
  gap: 6px;
  display: inline-flex;
}

.page-header {
  justify-content: space-between;
  align-items: flex-end;
  gap: var(--esp-2);
  flex-wrap: wrap;
  display: flex;
}

.page-header__titulo {
  font-size: var(--texto-xl);
  font-weight: 700;
  line-height: 1.2;
}

.page-header__descricao {
  color: var(--cor-texto-suave);
  font-size: var(--texto-sm);
  margin-top: 2px;
}

.acoes {
  align-items: center;
  gap: var(--esp-2);
  flex-wrap: wrap;
  display: flex;
}

.card {
  --card-p-x: var(--esp-5);
  --card-p-y: var(--esp-4);
  gap: var(--esp-3);
  padding: var(--card-p-y) var(--card-p-x);
  border: 1px solid var(--cor-borda);
  border-radius: var(--raio-lg);
  background: var(--cor-superficie);
  box-shadow: var(--sombra);
  flex-direction: column;
  display: flex;
  position: relative;
}

.card__cabecalho {
  justify-content: space-between;
  align-items: center;
  gap: var(--esp-2);
  border-bottom: 1px solid var(--cor-borda);
  flex-wrap: wrap;
  margin: 0;
  padding: 0 0 12px;
  display: flex;
}

.card > .card__cabecalho, .card .card__cabecalho {
  margin: calc(-1 * var(--card-p-y, var(--esp-4))) calc(-1 * var(--card-p-x, var(--esp-5))) 0;
  padding: var(--card-p-y, var(--esp-4)) var(--card-p-x, var(--esp-5)) 14px;
  border-bottom: 1px solid var(--cor-borda);
  border-top-left-radius: calc(var(--raio-lg) - 1px);
  border-top-right-radius: calc(var(--raio-lg) - 1px);
  box-sizing: border-box;
}

.card__titulos {
  flex-direction: column;
  gap: 2px;
  display: flex;
}

.card__titulo {
  font-size: var(--texto-md);
  color: var(--cor-texto);
  font-weight: 600;
}

.card__subtitulo {
  font-size: var(--texto-sm);
  color: var(--cor-texto-suave);
}

.stats {
  gap: var(--esp-4);
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  display: grid;
}

.stat {
  padding: var(--esp-4);
  border: 1px solid var(--cor-borda);
  border-radius: var(--raio-lg);
  background: var(--cor-superficie);
  box-shadow: var(--sombra);
}

.stat__rotulo {
  font-size: var(--texto-sm);
  color: var(--cor-texto-suave);
}

.stat__valor {
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.2;
}

.stat__detalhe {
  font-size: var(--texto-xs);
  color: var(--cor-texto-suave);
}

.dados {
  gap: var(--esp-3) var(--esp-5);
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  margin: 0;
  display: grid;
}

.dados__item dt {
  font-size: var(--texto-xs);
  color: var(--cor-texto-suave);
  text-transform: uppercase;
  letter-spacing: .03em;
}

.dados__item dd {
  margin: 0;
  font-weight: 500;
}

.toolbar {
  align-items: flex-end;
  gap: var(--esp-3);
  flex-wrap: wrap;
  display: flex;
}

.toolbar .field {
  min-width: 200px;
}

.atalhos {
  gap: var(--esp-3);
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  display: grid;
}

.atalho {
  padding: var(--esp-4);
  border: 1px solid var(--cor-borda);
  border-radius: var(--raio);
  background: var(--cor-superficie);
  color: var(--cor-texto);
  text-decoration: none;
  display: block;
}

.atalho:hover {
  border-color: var(--cor-primaria);
  color: var(--cor-texto);
}

.atalho strong {
  color: var(--cor-primaria);
  display: block;
}

.atalho span {
  font-size: var(--texto-sm);
  color: var(--cor-texto-suave);
}

.abas {
  background: var(--cor-superficie);
  border: 1px solid var(--cor-borda);
  border-radius: var(--raio-lg);
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  align-items: center;
  gap: 6px;
  padding: 8px 12px;
  display: flex;
  overflow-x: auto;
  box-shadow: 0 1px 3px #0000000a;
}

.abas::-webkit-scrollbar {
  display: none;
}

.page-header__acoes .abas, .acoes .abas {
  box-shadow: none;
  padding: 4px 6px;
}

.abas__aba {
  border-radius: var(--raio);
  color: var(--cor-texto-suave);
  font: inherit;
  font-size: var(--texto-sm);
  cursor: pointer;
  white-space: nowrap;
  -webkit-user-select: none;
  user-select: none;
  background: none;
  border: 1px solid #0000;
  align-items: center;
  gap: 8px;
  padding: 7px 14px;
  font-weight: 500;
  line-height: 1.4;
  text-decoration: none;
  transition: all .15s cubic-bezier(.4, 0, .2, 1);
  display: inline-flex;
}

.abas__aba svg {
  stroke-width: 2px;
  color: currentColor;
  flex-shrink: 0;
  width: 15px;
  height: 15px;
  transition: transform .15s, color .15s;
}

.abas__aba:hover {
  color: var(--cor-texto);
  background: var(--cor-superficie-2);
}

.abas__aba:hover svg {
  transform: translateY(-.5px);
}

.abas__aba[aria-selected="true"] {
  color: var(--cor-primaria);
  background: #2563eb14;
  border-color: #2563eb47;
  font-weight: 600;
  box-shadow: 0 1px 2px #2563eb0f;
}

.abas__aba[aria-selected="true"] svg {
  color: var(--cor-primaria);
}

html[data-tema="escuro"] .abas {
  background: var(--cor-superficie);
  border-color: var(--cor-borda);
  box-shadow: 0 1px 3px #00000040;
}

html[data-tema="escuro"] .abas__aba:hover {
  color: var(--cor-texto);
  background: #ffffff0f;
}

html[data-tema="escuro"] .abas__aba[aria-selected="true"] {
  color: #60a5fa;
  background: #3b82f626;
  border-color: #60a5fa59;
  box-shadow: 0 1px 2px #0000004d;
}

html[data-tema="escuro"] .abas__aba[aria-selected="true"] svg {
  color: #60a5fa;
}

.abas__aba:focus-visible {
  outline: 2px solid var(--cor-foco);
  outline-offset: 1px;
}

.auditoria-detalhe {
  padding: var(--esp-3) var(--esp-4);
  background: var(--cor-superficie);
  border-radius: var(--raio);
  border: 1px solid var(--cor-borda);
  margin: var(--esp-2) 0;
  gap: var(--esp-3);
  flex-direction: column;
  display: flex;
  box-shadow: 0 2px 8px #0000000a;
}

html[data-tema="escuro"] .auditoria-detalhe {
  background: var(--cor-superficie-2);
  border-color: #ffffff14;
}

.auditoria-detalhe__header {
  justify-content: space-between;
  align-items: center;
  gap: var(--esp-2);
  padding-bottom: var(--esp-2);
  border-bottom: 1px solid var(--cor-borda);
  flex-wrap: wrap;
  display: flex;
}

.auditoria-detalhe__titulo {
  font-size: var(--texto-sm);
  color: var(--cor-texto);
  align-items: center;
  gap: var(--esp-2);
  font-weight: 700;
  display: flex;
}

.auditoria-detalhe__meta {
  align-items: center;
  gap: var(--esp-3);
  font-size: var(--texto-xs);
  color: var(--cor-texto-suave);
  flex-wrap: wrap;
  display: flex;
}

.auditoria-diff {
  border-collapse: collapse;
  width: 100%;
  font-size: var(--texto-xs);
  border-radius: var(--raio-sm);
  border: 1px solid var(--cor-borda);
  background: var(--cor-superficie);
  overflow: hidden;
}

html[data-tema="escuro"] .auditoria-diff {
  background: var(--cor-fundo);
  border-color: #ffffff14;
}

.auditoria-diff th {
  background: var(--cor-superficie-2);
  text-transform: uppercase;
  letter-spacing: .04em;
  color: var(--cor-texto-suave);
  border-bottom: 1px solid var(--cor-borda);
  text-align: left;
  padding: 8px 12px;
  font-size: .7rem;
  font-weight: 700;
}

.auditoria-diff td {
  border-bottom: 1px solid var(--cor-borda);
  vertical-align: top;
  word-break: break-word;
  font-family: var(--fonte-mono);
  padding: 8px 12px;
}

.auditoria-diff tr:last-child td {
  border-bottom: 0;
}

.auditoria-diff__campo {
  color: var(--cor-texto);
  white-space: nowrap;
  width: 220px;
  font-weight: 600;
  font-family: var(--fonte) !important;
}

.auditoria-diff__valor--alterado {
  background: #f59e0b14;
}

html[data-tema="escuro"] .auditoria-diff__valor--alterado {
  background: #f59e0b29;
}

.auditoria-diff__valor--inserido {
  color: var(--cor-sucesso);
  background: #10b98114;
}

html[data-tema="escuro"] .auditoria-diff__valor--inserido {
  background: #10b98129;
}

.auditoria-diff__valor--excluido {
  color: var(--cor-perigo);
  background: #ef444414;
}

html[data-tema="escuro"] .auditoria-diff__valor--excluido {
  background: #ef444429;
}

.tabela__chevron-expansao {
  color: var(--cor-texto-suave);
  transition: transform .2s cubic-bezier(.16, 1, .3, 1);
}

.tabela__chevron-expansao.girado {
  color: var(--cor-primaria);
  transform: rotate(180deg);
}

.auditoria-copiar-btn {
  border-radius: var(--raio-sm);
  cursor: pointer;
  color: var(--cor-texto-suave);
  font-size: var(--texto-xs);
  background: none;
  border: none;
  align-items: center;
  gap: 4px;
  padding: 2px 6px;
  transition: all .15s;
  display: inline-flex;
}

.auditoria-copiar-btn:hover {
  background: var(--cor-superficie-2);
  color: var(--cor-primaria);
}

@keyframes log-spin {
  to {
    transform: rotate(360deg);
  }
}

.log-spin {
  animation: .9s linear infinite log-spin;
}

@keyframes log-pulse {
  0%, 100% {
    opacity: 1;
    transform: scale(1);
  }

  50% {
    opacity: .35;
    transform: scale(.85);
  }
}

.log-pulse {
  animation: 2s ease-in-out infinite log-pulse;
}

.log-seg {
  border-radius: var(--raio);
  border: 1px solid var(--cor-borda);
  background-color: var(--cor-superficie-2);
  gap: 2px;
  padding: 2px;
  display: inline-flex;
}

.log-seg button {
  font-size: var(--texto-xs);
  cursor: pointer;
  border-radius: var(--raio-sm);
  color: var(--cor-texto-suave);
  white-space: nowrap;
  background-color: #0000;
  border: none;
  padding: 6px 12px;
  font-weight: 500;
  transition: all .15s;
}

.log-seg button:hover {
  color: var(--cor-texto);
}

.log-seg button.active {
  background-color: var(--cor-superficie);
  color: var(--cor-primaria);
  font-weight: 600;
  box-shadow: 0 1px 3px #00000014;
}

html[data-tema="escuro"] .log-seg button.active {
  color: #fff;
  background-color: #ffffff1f;
}

.log-row {
  border-bottom: 1px solid var(--cor-borda);
  transition: background-color .15s;
}

.log-row:hover {
  background-color: var(--cor-superficie-2);
}

.log-console {
  border-radius: var(--raio);
  font-family: var(--fonte-mono, ui-monospace, monospace);
  color: #e2e8f0;
  background-color: #070d12;
  border: 1px solid #28b8d34d;
  padding: 16px 20px;
  font-size: 12px;
  overflow-x: auto;
  box-shadow: inset 0 2px 6px #00000073;
}

.log-console-head {
  color: #94a3b8;
  border-bottom: 1px solid #28b8d333;
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
  gap: 10px;
  margin-bottom: 12px;
  padding-bottom: 10px;
  display: grid;
}

.log-console-key {
  color: #38bdf8;
  font-weight: 600;
}

.log-console pre {
  border-radius: var(--raio-sm);
  color: #4ade80;
  background-color: #ffffff0a;
  margin: 0;
  padding: 10px 14px;
  font-size: 11.5px;
  line-height: 1.5;
  overflow-x: auto;
}

@media (max-width: 768px) {
  .log-console-head {
    grid-template-columns: 1fr;
  }
}

.diff {
  border-collapse: collapse;
  width: 100%;
  font-size: var(--texto-xs);
}

.diff th, .diff td {
  padding: var(--esp-1) var(--esp-2);
  border-bottom: 1px solid var(--cor-borda);
  text-align: left;
  vertical-align: top;
  word-break: break-word;
}

.diff td {
  font-family: var(--fonte-mono);
}

.diff tr.diff--alterado td {
  background: var(--cor-alerta-suave);
}

.shell {
  grid-template-columns: var(--largura-sidebar) 1fr;
  min-height: 100vh;
  transition: grid-template-columns .25s cubic-bezier(.4, 0, .2, 1);
  display: grid;
}

.shell--encolhido {
  grid-template-columns: 70px 1fr;
}

.sidebar {
  width: 100%;
  height: 100vh;
  padding: var(--esp-4) var(--esp-3) 0 var(--esp-3);
  background: var(--cor-sidebar);
  color: var(--cor-sidebar-texto);
  z-index: 50;
  border-right: 1px solid #ffffff14;
  flex-direction: column;
  transition: padding .25s;
  display: flex;
  position: sticky;
  top: 0;
  overflow: visible;
}

.sidebar nav {
  z-index: 2;
  scrollbar-width: none;
  -ms-overflow-style: none;
  flex: 1;
  min-height: 0;
  padding-bottom: 240px;
  position: relative;
  overflow: hidden auto;
}

.sidebar nav::-webkit-scrollbar {
  width: 0;
  height: 0;
  display: none;
}

.sidebar__topo {
  align-items: center;
  gap: 8px;
  min-height: 44px;
  display: flex;
  position: relative;
}

.sidebar__colapso-wrap {
  z-index: 100;
  justify-content: center;
  align-items: center;
  display: flex;
  position: absolute;
  top: 24px;
  right: 0;
  transform: translate(50%);
}

.sidebar__btn-colapso-emenda {
  color: #94a3b8;
  cursor: pointer;
  background: #0b1016;
  border: 1px solid #ffffff38;
  border-radius: 6px;
  justify-content: center;
  align-items: center;
  width: 22px;
  height: 22px;
  padding: 0;
  transition: all .15s;
  display: inline-flex;
  box-shadow: 0 2px 6px #00000080;
}

.sidebar__btn-colapso-emenda:hover {
  color: #fff;
  background: #1e293b;
  border-color: #ffffff80;
  transform: scale(1.15);
  box-shadow: 0 3px 10px #000000b3;
}

.sidebar__icone-chevrons {
  width: 12px;
  height: 12px;
  transition: transform .25s cubic-bezier(.4, 0, .2, 1);
}

.sidebar__icone-chevrons--invertido {
  transform: rotate(180deg);
}

.sidebar__colapso-tooltip {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  z-index: 70;
  white-space: nowrap;
  background: #181d27;
  border: 1px solid #ffffff29;
  border-radius: 7px;
  flex-direction: column;
  align-items: center;
  padding: 5px 9px;
  transition: opacity .15s, transform .15s, visibility .15s;
  display: flex;
  position: absolute;
  top: calc(100% + 6px);
  left: 50%;
  transform: translateX(-50%) translateY(-4px);
  box-shadow: 0 8px 24px #000c;
}

.sidebar__colapso-wrap:hover .sidebar__colapso-tooltip {
  opacity: 1;
  visibility: visible;
  transform: translateX(-50%) translateY(0);
}

.sidebar__colapso-tooltip-titulo {
  color: #f8fafc;
  font-size: .72rem;
  font-weight: 600;
}

.sidebar__colapso-tooltip-atalho {
  color: #64748b;
  margin-top: 2px;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  font-size: .65rem;
}

@media (max-width: 768px) {
  .sidebar__colapso-wrap {
    display: none;
  }
}

.sidebar__marca {
  padding: var(--esp-2) var(--esp-2) 10px;
  align-items: center;
  text-decoration: none;
  transition: transform .2s, opacity .2s;
  display: flex;
}

.sidebar__marca:hover {
  opacity: .95;
  transform: translateY(-1px);
}

.sidebar__marca-expandida {
  align-items: center;
  gap: 6px;
  display: flex;
}

.sidebar__marca-encolhida {
  display: none;
}

.sidebar__icone-asisto {
  object-fit: contain;
  filter: drop-shadow(0 2px 8px #00000073);
  border-radius: 50%;
  width: 30px;
  height: 30px;
  transition: transform .2s;
}

.sidebar__icone-asisto:hover {
  transform: scale(1.08);
}

.sidebar__brand-logo {
  align-items: center;
  display: flex;
}

.sidebar__logo-asisto {
  object-fit: contain;
  filter: drop-shadow(0 2px 6px #00000073);
  width: 58px;
  height: auto;
}

.sidebar__brand-bpo {
  align-items: center;
  line-height: 1;
  display: inline-flex;
}

.sidebar__logo-bpo-img {
  object-fit: contain;
  filter: drop-shadow(0 2px 8px #ffffff40) drop-shadow(0 1px 3px #0009);
  width: auto;
  max-width: 44px;
  height: 15px;
  transition: transform .2s, filter .2s;
}

.sidebar__marca:hover .sidebar__logo-bpo-img {
  filter: drop-shadow(0 3px 12px #ffffff80) drop-shadow(0 2px 5px #000000b3);
  transform: scale(1.06);
}

.sidebar__busca {
  margin-bottom: var(--esp-3);
  width: 100%;
  position: relative;
}

.sidebar__busca-icone {
  color: #64748b;
  pointer-events: none;
  width: 14px;
  height: 14px;
  position: absolute;
  top: 50%;
  left: 10px;
  transform: translateY(-50%);
}

.sidebar__busca-input {
  color: #f1f5f9;
  box-sizing: border-box;
  background: #ffffff0d;
  border: 1px solid #ffffff17;
  border-radius: 8px;
  outline: none;
  width: 100%;
  height: 34px;
  padding: 0 28px 0 32px;
  font-family: inherit;
  font-size: .8rem;
  transition: all .15s;
}

.sidebar__busca-input:focus {
  background: #ffffff14;
  border-color: #38bdf866;
  box-shadow: 0 0 0 2px #38bdf826;
}

.sidebar__busca-input::placeholder {
  color: #64748b;
  font-size: .8rem;
}

.sidebar__busca-limpar {
  color: #64748b;
  cursor: pointer;
  background: none;
  border: none;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  width: 18px;
  height: 18px;
  padding: 0;
  font-size: 15px;
  line-height: 1;
  transition: color .15s;
  display: flex;
  position: absolute;
  top: 50%;
  right: 8px;
  transform: translateY(-50%);
}

.sidebar__busca-limpar:hover {
  color: #f1f5f9;
}

#menu-principal {
  flex: 1;
  margin-right: -4px;
  padding-right: 4px;
  overflow: hidden auto;
}

#menu-principal::-webkit-scrollbar {
  width: 4px;
}

#menu-principal::-webkit-scrollbar-thumb {
  background: #ffffff26;
  border-radius: 4px;
}

.sidebar__controles {
  margin-top: 2px;
  margin-bottom: var(--esp-2);
  justify-content: flex-end;
  align-items: center;
  padding: 0 2px;
  display: flex;
}

.sidebar__btn-expandir {
  color: #94a3b8;
  cursor: pointer;
  background: #ffffff0a;
  border: 1px solid #ffffff14;
  border-radius: 6px;
  align-items: center;
  gap: 5px;
  padding: 3px 8px;
  font-size: .72rem;
  font-weight: 500;
  transition: all .15s;
  display: inline-flex;
}

.sidebar__btn-expandir:hover {
  color: #f8fafc;
  background: #ffffff17;
  border-color: #ffffff29;
}

.sidebar__btn-expandir-icone {
  stroke: currentColor;
  width: 11px;
  height: 11px;
  transition: transform .2s;
}

.sidebar__btn-expandir-icone--aberto {
  transform: rotate(180deg);
}

.menu__grupo {
  flex-direction: column;
  margin-bottom: 6px;
  display: flex;
}

.menu__grupo-cabecalho {
  color: #64748b;
  letter-spacing: .05em;
  text-transform: uppercase;
  cursor: pointer;
  -webkit-user-select: none;
  user-select: none;
  background: none;
  border: none;
  border-radius: 6px;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  padding: 6px 10px;
  font-size: .68rem;
  font-weight: 700;
  transition: all .15s;
  display: flex;
}

.menu__grupo-titulo-wrap {
  align-items: center;
  gap: 5px;
  display: inline-flex;
}

.menu__grupo-contador {
  color: #38bdf8;
  letter-spacing: 0;
  font-size: .68rem;
  font-weight: 700;
  transition: color .15s;
}

.menu__grupo-cabecalho:hover {
  color: #cbd5e1;
  background: #ffffff08;
}

.menu__grupo-cabecalho:hover .menu__grupo-contador {
  color: #7dd3fc;
}

.menu__grupo-chevron {
  stroke: currentColor;
  stroke-width: 2.2px;
  width: 12px;
  height: 12px;
  transition: transform .2s;
}

.menu__grupo-chevron--aberto {
  transform: rotate(180deg);
}

.menu__sem-resultados {
  color: #64748b;
  text-align: center;
  padding: 16px 8px;
  font-size: .78rem;
  font-style: italic;
}

.menu {
  flex-direction: column;
  gap: 2px;
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
}

.menu--topo > li:first-child {
  margin-bottom: var(--esp-4);
}

.shell--encolhido .sidebar__busca, .shell--encolhido .sidebar__controles, .shell--encolhido .menu__grupo-cabecalho {
  display: none;
}

.menu a {
  padding: var(--esp-2) var(--esp-3);
  border-radius: var(--raio);
  color: var(--cor-sidebar-texto);
  font-size: var(--texto-sm);
  align-items: center;
  gap: 10px;
  text-decoration: none;
  transition: background .15s, color .15s;
  display: flex;
}

.menu__icone {
  stroke: currentColor;
  opacity: .8;
  flex-shrink: 0;
  width: 18px;
  height: 18px;
  transition: opacity .15s, transform .15s;
}

.menu a:hover {
  background: var(--cor-sidebar-ativo-fundo);
  color: var(--cor-sidebar-ativo);
}

.menu a:hover .menu__icone {
  opacity: 1;
  transform: scale(1.08);
}

.menu a[aria-current="page"] {
  color: #fff;
  background: linear-gradient(135deg, #1871fe 0%, #1555cb 60%, #114bb0 100%);
  border: 1px solid #ffffff29;
  font-weight: 600;
  box-shadow: 0 4px 14px #1871fe61;
}

.menu a[aria-current="page"] .menu__icone {
  opacity: 1;
  stroke: #fff;
}

.menu a:focus-visible {
  outline-color: #82b3ff;
}

.shell--encolhido .sidebar {
  padding: var(--esp-4) 8px;
}

.shell--encolhido .sidebar__topo {
  justify-content: center;
}

.shell--encolhido .sidebar__marca {
  padding: var(--esp-2) 0 var(--esp-4);
  justify-content: center;
}

.shell--encolhido .sidebar__marca-expandida {
  display: none;
}

.shell--encolhido .sidebar__marca-encolhida {
  justify-content: center;
  align-items: center;
  width: 100%;
  display: flex;
}

.shell--encolhido .menu a {
  justify-content: center;
  gap: 0;
  padding: 10px 0;
}

.shell--encolhido .menu a span {
  display: none;
}

.shell--encolhido .menu__icone {
  width: 20px;
  height: 20px;
}

.sidebar__piloto {
  pointer-events: none;
  -webkit-user-select: none;
  user-select: none;
  z-index: 1;
  width: 100%;
  height: 310px;
  max-height: 40vh;
  line-height: 0;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  overflow: hidden;
}

.sidebar__piloto-img {
  object-fit: cover;
  object-position: center bottom;
  width: 100%;
  height: 100%;
  display: block;
}

.sidebar__piloto-overlay {
  z-index: 2;
  pointer-events: none;
  background: linear-gradient(to bottom,
    var(--cor-sidebar) 0%,
    #080f1de0 18%,
    #080f1d73 45%,
    #080f1d26 75%,
    #080f1d80 100%);
  position: absolute;
  inset: 0;
}

.shell--encolhido .sidebar__piloto {
  display: none;
}

@media (max-height: 860px) {
  .sidebar nav {
    padding-bottom: 190px;
  }

  .sidebar__piloto {
    height: 230px;
    max-height: 30vh;
    bottom: 0;
  }

  .conteudo {
    padding: 12px var(--esp-4);
  }

  .pilha {
    gap: 16px;
  }
}

@media (max-height: 720px) {
  .sidebar nav {
    padding-bottom: 200px;
  }

  .sidebar__piloto {
    height: 220px;
    max-height: 30vh;
    bottom: 0;
  }
}

@media (max-width: 860px) {
  .sidebar__piloto {
    display: none;
  }
}

.sidebar nav .menu a {
  z-index: 3;
  text-shadow: 0 1px 3px #000000b3;
  position: relative;
}

.sidebar nav .menu a:hover {
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
  color: #fff;
  background: #ffffff17;
}

.sidebar nav .menu a[aria-current="page"] {
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
  text-shadow: 0 1px 2px #00000040;
  border: 1px solid #ffffff29;
  font-weight: 600;
  box-shadow: 0 4px 14px #1871fe61;
  color: #fff !important;
  background: linear-gradient(135deg, #1871fe 0%, #1555cb 60%, #114bb0 100%) !important;
}

.sidebar nav .menu a[aria-current="page"]:hover {
  box-shadow: 0 5px 16px #1871fe73;
  color: #fff !important;
  background: linear-gradient(135deg, #267cff 0%, #195de0 60%, #1453c2 100%) !important;
}

.sidebar nav .menu a[aria-current="page"] .menu__icone {
  opacity: 1;
  stroke: #fff;
  color: #fff;
}

.sidebar nav .menu__grupo-cabecalho {
  z-index: 3;
  text-shadow: 0 1px 3px #000000d9;
  position: relative;
}

.principal {
  flex-direction: column;
  min-width: 0;
  display: flex;
}

.cabecalho {
  z-index: 20;
  justify-content: space-between;
  align-items: center;
  gap: var(--esp-3);
  min-height: var(--altura-cabecalho);
  padding: 2px var(--esp-5);
  border-bottom: 1px solid var(--cor-borda);
  background: var(--cor-superficie);
  flex-wrap: wrap;
  display: flex;
  position: sticky;
  top: 0;
}

.cabecalho__contexto {
  align-items: center;
  gap: var(--esp-2) var(--esp-3);
  min-width: 0;
  font-size: var(--texto-sm);
  flex-wrap: wrap;
  display: flex;
}

.cabecalho__bpo {
  font-weight: 600;
}

.cabecalho__usuario {
  align-items: center;
  gap: var(--esp-3);
  font-size: var(--texto-sm);
  margin-left: auto;
  display: flex;
}

.barra-contexto-bpo {
  top: var(--altura-cabecalho);
  z-index: 18;
  min-height: 44px;
  padding: 6px var(--esp-5);
  background: var(--cor-superficie);
  border-bottom: 1px solid var(--cor-borda);
  font-size: var(--texto-sm);
  align-items: center;
  display: flex;
  position: sticky;
}

.barra-contexto-bpo__conteudo {
  align-items: center;
  gap: var(--esp-3) var(--esp-4);
  flex-wrap: wrap;
  width: 100%;
  display: flex;
}

.barra-contexto-bpo__carteira {
  align-items: center;
  display: inline-flex;
}

@media (max-width: 768px) {
  .barra-contexto-bpo {
    padding: 8px var(--esp-3);
  }
}

.cabecalho-usuario {
  align-items: center;
  display: inline-flex;
  position: relative;
}

.cabecalho-usuario__btn {
  color: var(--cor-texto);
  cursor: pointer;
  text-align: left;
  -webkit-user-select: none;
  user-select: none;
  background: none;
  border: 1px solid #0000;
  border-radius: 8px;
  align-items: center;
  gap: 10px;
  padding: 4px 6px;
  transition: background .15s, border-color .15s;
  display: inline-flex;
}

.cabecalho-usuario__btn:hover, .cabecalho-usuario__btn--ativo {
  background: var(--cor-superficie-2);
}

.cabecalho-usuario__avatar-wrap {
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  display: flex;
  position: relative;
}

.cabecalho-usuario__avatar-img {
  object-fit: cover;
  border-radius: 50%;
  width: 36px;
  height: 36px;
  display: block;
  box-shadow: 0 1px 3px #00000014;
}

.cabecalho-usuario__avatar {
  background: linear-gradient(135deg, var(--cor-primaria), #0284c7);
  color: #fff;
  border: 1.5px solid #ffffff40;
  border-radius: 50%;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 36px;
  height: 36px;
  font-size: .9rem;
  font-weight: 700;
  display: flex;
  box-shadow: 0 1px 3px #0000001f;
}

.cabecalho-usuario__nome {
  color: var(--cor-texto);
  letter-spacing: -.01em;
  white-space: nowrap;
  font-size: .95rem;
  font-weight: 600;
}

.cabecalho-usuario__seta {
  color: var(--cor-texto-suave);
  justify-content: center;
  align-items: center;
  margin-left: 0;
  display: flex;
}

.cabecalho-usuario__chevron {
  transition: transform .2s cubic-bezier(.4, 0, .2, 1);
}

.cabecalho-usuario__chevron--invertido {
  transform: rotate(180deg);
}

.usuario-popover {
  background: var(--cor-superficie);
  border: 1px solid var(--cor-borda);
  z-index: 1000;
  border-radius: 12px;
  flex-direction: column;
  gap: 0;
  width: 240px;
  padding: 8px 10px 6px;
  animation: .18s cubic-bezier(.16, 1, .3, 1) usuarioPopoverFade;
  display: flex;
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  box-shadow: 0 16px 36px -6px #00000029, 0 4px 12px -2px #00000014;
}

.usuario-popover:before {
  content: "";
  background: var(--cor-superficie);
  border-left: 1px solid var(--cor-borda);
  border-top: 1px solid var(--cor-borda);
  z-index: 10;
  width: 11px;
  height: 11px;
  position: absolute;
  top: -6px;
  right: 86px;
  transform: rotate(45deg);
}

@keyframes usuarioPopoverFade {
  from {
    opacity: 0;
    transform: translateY(-6px) scale(.97);
  }

  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

.usuario-popover__topo {
  border-bottom: 1px solid var(--cor-borda);
  align-items: center;
  gap: 8px;
  padding: 0 2px 6px;
  display: flex;
}

.usuario-popover__avatar-wrap {
  background: var(--cor-superficie);
  box-sizing: border-box;
  border: 2px solid #3b82f6;
  border-radius: 50%;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 36px;
  height: 36px;
  padding: 1.5px;
  display: flex;
  position: relative;
}

.usuario-popover__avatar-img {
  object-fit: cover;
  border-radius: 50%;
  width: 29px;
  height: 29px;
  display: block;
}

.usuario-popover__avatar {
  background: linear-gradient(135deg, var(--cor-primaria), #0284c7);
  color: #fff;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  width: 29px;
  height: 29px;
  font-size: .8rem;
  font-weight: 700;
  display: flex;
}

.usuario-popover__info {
  flex-direction: column;
  flex: 1;
  gap: 0;
  min-width: 0;
  display: flex;
}

.usuario-popover__rotulo {
  color: var(--cor-texto-suave);
  font-size: .7rem;
  font-weight: 500;
  line-height: 1.15;
}

.usuario-popover__email {
  color: var(--cor-texto);
  white-space: nowrap;
  text-overflow: ellipsis;
  font-size: .82rem;
  font-weight: 600;
  line-height: 1.2;
  overflow: hidden;
}

.usuario-popover__corpo {
  background: none;
  border: none;
  flex-direction: column;
  gap: 2px;
  padding: 4px 0 2px;
  display: flex;
}

.usuario-popover__item {
  color: var(--cor-texto);
  cursor: pointer;
  box-sizing: border-box;
  background: none;
  border: none;
  border-radius: 6px;
  align-items: center;
  gap: 8px;
  width: 100%;
  padding: 4px 6px;
  font-size: .82rem;
  font-weight: 500;
  text-decoration: none;
  transition: background .15s, color .15s;
  display: flex;
}

.usuario-popover__item:hover {
  color: var(--cor-texto);
  background: #0000000a;
}

.usuario-popover__item-icone {
  color: var(--cor-texto);
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 18px;
  height: 18px;
  display: flex;
}

.usuario-popover__item-icone svg {
  width: 15px;
  height: 15px;
}

.usuario-popover__item-texto {
  color: var(--cor-texto);
  font-size: .82rem;
  font-weight: 500;
  line-height: 1.2;
}

.usuario-popover__item--sair, .usuario-popover__item--sair .usuario-popover__item-icone {
  color: #ef4444;
}

.usuario-popover__item--sair .usuario-popover__item-texto {
  color: #ef4444;
  font-weight: 500;
}

.usuario-popover__item--sair:hover {
  color: #ef4444;
  background: #ef444414;
}

.usuario-popover__item--sair:hover .usuario-popover__item-icone {
  color: #ef4444;
}

.usuario-popover__toggle {
  background: var(--cor-borda-forte);
  cursor: pointer;
  border: none;
  border-radius: 10px;
  align-items: center;
  width: 30px;
  height: 15px;
  margin-left: auto;
  padding: 1px;
  transition: background .2s;
  display: inline-flex;
  position: relative;
}

.usuario-popover__toggle--ativo {
  background: #0284c7;
}

.usuario-popover__toggle-knob {
  background: #fff;
  border-radius: 50%;
  width: 12px;
  height: 12px;
  transition: transform .2s cubic-bezier(.4, 0, .2, 1);
  display: block;
  transform: translateX(0);
}

.usuario-popover__toggle--ativo .usuario-popover__toggle-knob {
  transform: translateX(15px);
}

.theme-toggle {
  cursor: pointer;
  -webkit-user-select: none;
  user-select: none;
  box-sizing: border-box;
  flex-shrink: 0;
  margin-left: auto;
  transition: all .3s cubic-bezier(.4, 0, .2, 1);
  position: relative;
  border-radius: 9999px !important;
  width: 44px !important;
  height: 22px !important;
  padding: 2px !important;
  display: inline-flex !important;
}

.theme-toggle--dark {
  background-color: #0f172a !important;
  border: 1.5px solid #334155 !important;
}

.theme-toggle--light {
  box-shadow: 0 1px 3px #0000000a;
  background-color: #fff !important;
  border: 1.5px solid #cbd5e1 !important;
}

.theme-toggle__inner {
  justify-content: space-between;
  align-items: center;
  width: 100%;
  height: 100%;
  display: flex;
}

.theme-toggle__knob {
  border-radius: 9999px;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  transition: transform .25s cubic-bezier(.4, 0, .2, 1), background-color .25s;
  display: flex;
  width: 16px !important;
  height: 16px !important;
}

.theme-toggle__knob--dark {
  background-color: #3b82f6;
  transform: translateX(0);
  box-shadow: 0 1px 2px #0006;
}

.theme-toggle__knob--dark .theme-toggle__icon {
  color: #fff !important;
}

.theme-toggle__knob--light {
  background-color: #3b82f6;
  transform: translateX(22px);
  box-shadow: 0 1px 3px #3b82f659;
}

.theme-toggle__knob--light .theme-toggle__icon {
  color: #fff !important;
}

.theme-toggle__slot {
  border-radius: 9999px;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  transition: transform .25s cubic-bezier(.4, 0, .2, 1);
  display: flex;
  width: 16px !important;
  height: 16px !important;
}

.theme-toggle__slot--dark {
  background-color: #0000;
  transform: translateX(0);
}

.theme-toggle__slot--dark .theme-toggle__icon {
  color: #64748b !important;
}

.theme-toggle__slot--light {
  background-color: #0000;
  transform: translateX(-22px);
}

.theme-toggle__slot--light .theme-toggle__icon {
  color: #334155 !important;
}

.theme-toggle__icon {
  flex-shrink: 0;
  width: 10px !important;
  height: 10px !important;
}

.theme-toggle:focus-visible {
  outline: 2px solid var(--cor-foco);
  outline-offset: 2px;
}

.usuario-popover__rodape {
  border-top: 1px solid var(--cor-borda);
  justify-content: center;
  align-items: center;
  margin-top: 2px;
  padding-top: 4px;
  display: flex;
}

.usuario-popover__versao {
  color: var(--cor-texto-suave);
  letter-spacing: .04em;
  border-radius: 4px;
  padding: 1px 4px;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  font-size: .7rem;
  line-height: 1.2;
  text-decoration: none;
  transition: all .15s;
}

.usuario-popover__versao:hover {
  color: var(--cor-primaria);
  background: var(--cor-primaria-suave);
}

html[data-tema="escuro"] .usuario-popover, html:not([data-tema="claro"]) .usuario-popover {
  background: #0f172a;
  border-color: #ffffff1f;
  box-shadow: 0 20px 40px -8px #000c, 0 0 0 1px #ffffff0d;
}

html[data-tema="escuro"] .usuario-popover:before, html:not([data-tema="claro"]) .usuario-popover:before {
  background: #0f172a;
  border-top-color: #ffffff1f;
  border-left-color: #ffffff1f;
}

html[data-tema="escuro"] .usuario-popover__topo, html:not([data-tema="claro"]) .usuario-popover__topo {
  border-bottom-color: #ffffff14;
}

html[data-tema="escuro"] .usuario-popover__avatar-wrap, html:not([data-tema="claro"]) .usuario-popover__avatar-wrap {
  background: #0f172a;
}

html[data-tema="escuro"] .usuario-popover__item:hover, html:not([data-tema="claro"]) .usuario-popover__item:hover {
  color: #fff;
  background: #ffffff14;
}

html[data-tema="escuro"] .usuario-popover__rodape, html:not([data-tema="claro"]) .usuario-popover__rodape {
  border-top-color: #ffffff14;
}

@media (max-width: 640px) {
  .cabecalho-usuario__nome {
    display: none;
  }

  .cabecalho-usuario__btn {
    padding: 2px 4px;
  }
}

.seletor-filial {
  align-items: center;
  gap: var(--esp-2);
  display: flex;
}

.seletor-filial .input {
  width: auto;
  min-width: 180px;
  min-height: 32px;
  padding: var(--esp-1) var(--esp-2);
}

.menu-toggle {
  display: none;
}

.conteudo {
  width: 100%;
  max-width: var(--largura-conteudo);
  padding: 16px var(--esp-5);
  margin: 0 auto;
}

.acesso {
  min-height: 100vh;
  padding: var(--esp-4);
  place-items: center;
  display: grid;
}

.acesso__caixa {
  gap: var(--esp-4);
  width: min(400px, 100%);
  padding: var(--esp-6) var(--esp-5);
  border: 1px solid var(--cor-borda);
  border-radius: var(--raio-lg);
  background: var(--cor-superficie);
  box-shadow: var(--sombra);
  flex-direction: column;
  display: flex;
}

.acesso__marca {
  font-size: var(--texto-xl);
  font-weight: 700;
}

.acesso__marca small {
  font-size: var(--texto-sm);
  color: var(--cor-texto-suave);
  font-weight: 400;
  display: block;
}

.acesso__caixa .btn {
  width: 100%;
}

@media (max-width: 860px) {
  .shell {
    grid-template-columns: 1fr;
  }

  .sidebar {
    height: auto;
    padding: var(--esp-2) var(--esp-4);
    position: static;
  }

  .sidebar__topo {
    justify-content: space-between;
    align-items: center;
    display: flex;
  }

  .sidebar__marca {
    padding: var(--esp-2) 0;
  }

  .menu-toggle {
    border-color: var(--cor-sidebar-texto);
    color: var(--cor-sidebar-ativo);
    background: none;
    display: inline-flex;
  }

  .menu-toggle:hover:not(:disabled) {
    background: var(--cor-sidebar-ativo-fundo);
    color: var(--cor-sidebar-ativo);
  }

  .sidebar nav[data-aberto="false"] {
    display: none;
  }

  .sidebar nav {
    padding-bottom: var(--esp-2);
  }

  .cabecalho {
    padding: var(--esp-2) var(--esp-4);
    position: static;
  }

  .cabecalho__nome {
    text-align: left;
  }

  .conteudo {
    padding: var(--esp-4);
  }
}

.login-dream {
  background-color: #060c18;
  justify-content: center;
  align-items: center;
  width: 100%;
  min-height: 100vh;
  display: flex;
  position: relative;
  overflow-x: hidden;
}

.login-dream__bg {
  z-index: 0;
  pointer-events: none;
  width: 100vw;
  height: 100vh;
  position: fixed;
  inset: 0;
  overflow: hidden;
}

.login-dream__bg-img {
  object-fit: cover;
  object-position: center;
  opacity: 1;
  pointer-events: none;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0;
}

.login-dream__bg-overlay {
  background: radial-gradient(circle at 75%, #02061733 0%, #02061773 100%);
  position: absolute;
  inset: 0;
}

.login-dream__container {
  z-index: 10;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 2.5rem;
  width: 100%;
  max-width: 1560px;
  min-height: 100vh;
  margin: 0 auto;
  padding: 2.5rem 3vw;
  display: grid;
  position: relative;
}

.login-dream__pilot-spacer {
  pointer-events: none;
  min-height: 80px;
  display: block;
}

@media (max-width: 1079px) {
  .login-dream__container {
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 2rem;
    padding: 2.5rem 1.5rem;
    display: flex;
  }

  .login-dream__pilot-spacer {
    display: none;
  }
}

.login-dream__brand {
  -webkit-user-select: none;
  user-select: none;
  flex-direction: column;
  justify-self: center;
  max-width: 480px;
  display: flex;
}

@media (max-width: 1079px) {
  .login-dream__brand {
    text-align: center;
    order: 1;
    align-items: center;
    max-width: 100%;
  }

  .login-dream__card-perspective {
    order: 2;
  }
}

.login-dream__asisto-wrap {
  align-items: center;
  margin-bottom: 4px;
  display: flex;
}

@media (max-width: 1023px) {
  .login-dream__asisto-wrap {
    justify-content: center;
  }
}

.login-dream__asisto-img {
  object-fit: contain;
  filter: drop-shadow(0 4px 16px #000000b3);
  width: clamp(140px, 15vw, 180px);
  height: auto;
}

.login-dream__bpo-wrap {
  align-items: center;
  margin-top: 6px;
  margin-bottom: 2px;
  display: flex;
}

@media (max-width: 1023px) {
  .login-dream__bpo-wrap {
    justify-content: center;
  }
}

.login-dream__bpo-img {
  object-fit: contain;
  filter: drop-shadow(0 4px 18px #00a8ff73) drop-shadow(0 2px 10px #000000b3);
  width: clamp(200px, 20vw, 290px);
  height: auto;
  transition: transform .25s, filter .25s;
}

.login-dream__bpo-img:hover {
  filter: drop-shadow(0 6px 26px #00d2ffa6) drop-shadow(0 2px 12px #000c);
  transform: scale(1.02);
}

.login-dream__tagline {
  letter-spacing: .05em;
  text-transform: uppercase;
  text-shadow: 0 2px 12px #000000b3;
  margin-top: 14px;
  font-size: clamp(.95rem, 1.4vw, 1.35rem);
  font-weight: 800;
  line-height: 1.25;
}

.login-dream__tagline-white {
  color: #fff;
}

.login-dream__tagline-cyan {
  color: #00d2ff;
  text-shadow: 0 0 12px #00d2ff80;
}

.login-dream__accent-bar {
  background: #00d2ff;
  border-radius: 2px;
  width: 40px;
  height: 3.5px;
  margin-top: 22px;
  margin-bottom: 22px;
  box-shadow: 0 0 12px #00d2ffbf;
}

@media (max-width: 1023px) {
  .login-dream__accent-bar {
    margin-left: auto;
    margin-right: auto;
  }
}

.login-dream__slogan {
  letter-spacing: .08em;
  text-transform: uppercase;
  color: #fffffff2;
  text-shadow: 0 2px 10px #000000bf;
  font-size: clamp(.75rem, .9vw, .9rem);
  font-weight: 600;
  line-height: 1.6;
}

.login-dream__card-perspective {
  perspective: 1200px;
  justify-content: center;
  justify-self: center;
  width: 100%;
  max-width: 375px;
  display: flex;
}

.login-dream__card {
  width: 100%;
  transform-style: preserve-3d;
  background: linear-gradient(#081a34f7 0%, #061226fc 100%);
  border: 1.5px solid #00c3ffa6;
  border-radius: 20px;
  flex-direction: column;
  padding: 28px 26px 20px;
  transition: border-color .3s, box-shadow .3s;
  display: flex;
  position: relative;
  box-shadow: 0 0 35px #00a8ff52, 0 25px 70px #000000e0, inset 0 1px 1px #ffffff4d;
}

.login-dream__card:hover {
  border-color: #00d7ffd9;
  box-shadow: 0 0 50px #00beff73, 0 32px 85px #000000f2, inset 0 1px 1px #fff6;
}

.login-dream__glare {
  border-radius: inherit;
  pointer-events: none;
  background: radial-gradient(circle at var(--mouse-x, 50%) var(--mouse-y, 50%),
    #ffffff24 0%,
    #38bdf814 40%,
    transparent 80%);
  opacity: 0;
  z-index: 1;
  transition: opacity .3s;
  position: absolute;
  inset: 0;
}

.login-dream__card:hover .login-dream__glare {
  opacity: 1;
}

.login-dream__3d-header {
  transform-style: preserve-3d;
  transform: translateZ(26px);
}

.login-dream__3d-form {
  transform-style: preserve-3d;
  transform: translateZ(20px);
}

.login-dream__3d-button {
  transform-style: preserve-3d;
  transform: translateZ(30px);
}

.login-dream__3d-footer {
  transform-style: preserve-3d;
  margin-top: 4px;
  transform: translateZ(14px);
}

@media (max-width: 480px) {
  .login-dream__card {
    border-radius: 18px;
    padding: 24px 20px 18px;
  }
}

.login-dream__card-bar {
  background: #00d2ff;
  border-radius: 2px;
  width: 28px;
  height: 2.5px;
  margin-bottom: 12px;
  box-shadow: 0 0 10px #00d2ffcc;
}

.login-dream__card-title {
  color: #fff;
  letter-spacing: -.015em;
  text-shadow: 0 2px 14px #00000080;
  margin: 0 0 4px;
  font-size: 22px;
  font-weight: 700;
  line-height: 1.2;
}

.login-dream__card-subtitle {
  color: #e2e8f0d6;
  margin: 0 0 18px;
  font-size: 13px;
  line-height: 1.4;
}

.login-dream__form {
  flex-direction: column;
  display: flex;
}

.login-dream__field {
  margin-bottom: 12px;
  position: relative;
}

.login-dream__field-icon {
  color: #cbd5e1bf;
  pointer-events: none;
  z-index: 2;
  width: 17px;
  height: 17px;
  transition: color .2s;
  position: absolute;
  top: 22px;
  left: 14px;
  transform: translateY(-50%);
}

.login-dream__field:focus-within .login-dream__field-icon {
  color: #38bdf8;
}

.login-dream__input {
  color: #fff;
  box-sizing: border-box;
  background: #0e203cd9;
  border: 1.2px solid #38bdf852;
  border-radius: 10px;
  outline: none;
  width: 100%;
  height: 44px;
  padding: 0 42px 0 40px;
  font-family: inherit;
  font-size: 13.5px;
  transition: all .2s;
}

.login-dream__input::placeholder {
  color: #94a3b8a6;
  font-size: 13.5px;
}

.login-dream__input:focus {
  background: #102648f2;
  border-color: #00d2ff;
  box-shadow: 0 0 0 3px #00d2ff40;
}

.login-dream__input--password {
  padding-right: 44px;
}

.login-dream__input::-ms-reveal {
  width: 0 !important;
  height: 0 !important;
  display: none !important;
}

.login-dream__input::-ms-clear {
  width: 0 !important;
  height: 0 !important;
  display: none !important;
}

.login-dream__input--error {
  border-color: #f87171 !important;
  box-shadow: 0 0 0 3px #f8717138 !important;
}

.login-dream__field-error {
  color: #fca5a5;
  margin: 4px 0 0 2px;
  font-size: 11.5px;
  line-height: 1.2;
}

.login-dream__toggle-eye {
  color: #cbd5e1bf;
  cursor: pointer;
  z-index: 10;
  pointer-events: auto;
  background: none;
  border: none;
  border-radius: 6px;
  justify-content: center;
  align-items: center;
  width: 30px;
  height: 30px;
  padding: 0;
  transition: color .15s, background-color .15s;
  display: flex;
  position: absolute;
  top: 22px;
  right: 8px;
  transform: translateY(-50%) translateZ(10px);
}

.login-dream__toggle-eye svg {
  pointer-events: none;
}

.login-dream__toggle-eye:hover {
  color: #fff;
  background: #ffffff1a;
}

.login-dream__forgot-row {
  justify-content: flex-end;
  margin-top: -3px;
  margin-bottom: 16px;
  display: flex;
}

.login-dream__forgot-btn {
  color: #00d2ff;
  cursor: pointer;
  background: none;
  border: none;
  padding: 0;
  font-family: inherit;
  font-size: 11.5px;
  font-weight: 500;
  transition: color .15s, text-shadow .15s;
}

.login-dream__forgot-btn:hover {
  color: #7dd3fc;
  text-shadow: 0 0 8px #00d2ff80;
  text-decoration: underline;
}

.login-dream__alert {
  color: #fca5a5;
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  background: #ef44442e;
  border: 1px solid #ef444466;
  border-radius: 12px;
  margin-bottom: 16px;
  padding: 10px 14px;
  font-size: 12.5px;
  line-height: 1.4;
}

.login-dream__submit-btn {
  cursor: pointer;
  color: #fff;
  letter-spacing: .02em;
  background: linear-gradient(90deg, #007cf0 0%, #00b4d8 50%, #00e5ff 100%);
  border: none;
  border-radius: 12px;
  justify-content: center;
  align-items: center;
  gap: 8px;
  width: 100%;
  height: 44px;
  font-family: inherit;
  font-size: 14px;
  font-weight: 600;
  transition: transform .15s, box-shadow .15s, filter .15s;
  display: flex;
  box-shadow: 0 4px 20px #00a8ff73;
}

.login-dream__submit-btn:hover:not(:disabled) {
  filter: brightness(1.12);
  transform: translateY(-1px);
  box-shadow: 0 6px 24px #00c3ff99;
}

.login-dream__submit-btn:active:not(:disabled) {
  filter: brightness(1.05);
  transform: translateY(0);
}

.login-dream__submit-btn:disabled {
  opacity: .7;
  cursor: not-allowed;
}

.login-dream__security {
  text-align: center;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 6px;
  margin-top: 14px;
  display: flex;
}

.login-dream__security-line-wrap {
  align-items: center;
  gap: 12px;
  width: 100%;
  margin-top: 8px;
  margin-bottom: 2px;
  display: flex;
}

.login-dream__security-line {
  background: #ffffff26;
  flex: 1;
  height: 1px;
}

.login-dream__security-icon {
  color: #e2e8f0d9;
  flex-shrink: 0;
  width: 16px;
  height: 16px;
}

.login-dream__security-text {
  color: #94a3b8e0;
  letter-spacing: .03em;
  font-size: 11px;
  font-weight: 400;
}

.asisto-tree-card {
  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 1.25rem;
  width: 100%;
  padding: 2.5rem 2rem;
  overflow-x: auto;
  box-shadow: 0 4px 20px -2px #0000000d;
}

.asisto-tree-header {
  text-align: center;
  margin-bottom: 2rem;
}

.asisto-tree-title {
  color: #0f172a;
  font-size: 1.5rem;
  font-weight: 700;
}

.asisto-tree-desc {
  color: #64748b;
  margin-top: .25rem;
  font-size: .95rem;
}

.asisto-tree-viewport {
  flex-direction: column;
  align-items: center;
  min-width: 860px;
  padding: 1rem 0;
  display: flex;
}

.asisto-tree-node {
  color: #1e3a8a;
  -webkit-user-select: none;
  user-select: none;
  background: #f8faff;
  border: 2px solid #3b82f6;
  border-radius: .75rem;
  justify-content: center;
  align-items: center;
  gap: .5rem;
  padding: .75rem 1.75rem;
  font-size: 1rem;
  font-weight: 700;
  transition: all .2s;
  display: inline-flex;
  box-shadow: 0 4px 12px #3b82f61f;
}

.asisto-tree-node:hover {
  background: #eff6ff;
  border-color: #2563eb;
  transform: translateY(-2px);
  box-shadow: 0 6px 16px #2563eb33;
}

.asisto-tree-node--root {
  letter-spacing: .02em;
  background: #f0f7ff;
  border-width: 3px;
  border-color: #2563eb;
  padding: 1rem 2.5rem;
  font-size: 1.25rem;
}

.asisto-tree-node--bpo {
  border-color: #60a5fa;
  padding: .6rem 1.4rem;
  font-size: .95rem;
}

.asisto-tree-node--cliente {
  color: #1e40af;
  background: #fff;
  border-color: #93c5fd;
  padding: .5rem 1rem;
  font-size: .875rem;
  font-weight: 600;
}

.asisto-tree-node--empresa {
  color: #1e3a8a;
  background: #fff;
  border-color: #bfdbfe;
  padding: .4rem .8rem;
  font-size: .8rem;
  font-weight: 600;
}

.asisto-tree-node--modulo {
  color: #065f46;
  background: #ecfdf5;
  border: 1.5px solid #10b981;
  border-radius: .5rem;
  padding: .4rem .85rem;
  font-size: .8rem;
  font-weight: 700;
}

.asisto-tree-line-v {
  background-color: #93c5fd;
  width: 2px;
  height: 28px;
  margin: 0 auto;
}

.asisto-tree-row {
  justify-content: center;
  gap: 3.5rem;
  width: 100%;
  display: flex;
  position: relative;
}

.asisto-tree-row:before {
  content: "";
  background-color: #93c5fd;
  height: 2px;
  position: absolute;
  top: 0;
  left: 20%;
  right: 20%;
}

.asisto-tree-branch {
  flex-direction: column;
  align-items: center;
  display: flex;
}

.asisto-tree-subrow {
  justify-content: center;
  gap: 1rem;
  margin-top: .25rem;
  display: flex;
  position: relative;
}

.asisto-tree-subrow:before {
  content: "";
  background-color: #bfdbfe;
  height: 2px;
  position: absolute;
  top: 0;
  left: 15%;
  right: 15%;
}

.prazo-atrasado {
  color: var(--cor-perigo);
  font-weight: 600;
}

.grade-detalhe {
  gap: var(--esp-5);
  grid-template-columns: minmax(0, 2fr) minmax(0, 1fr);
  align-items: start;
  display: grid;
}

@media (max-width: 960px) {
  .grade-detalhe {
    grid-template-columns: minmax(0, 1fr);
  }
}

.linha-badges {
  gap: var(--esp-1);
  flex-wrap: wrap;
  align-items: center;
  display: flex;
}

.conversa {
  gap: var(--esp-3);
  margin-bottom: var(--esp-4);
  flex-direction: column;
  display: flex;
}

.mensagem {
  border: 1px solid var(--cor-borda);
  border-radius: var(--raio);
  padding: var(--esp-3) var(--esp-4);
  background: var(--cor-superficie);
  max-width: 90%;
}

.mensagem--bpo {
  align-self: flex-start;
}

.mensagem--cliente {
  background: var(--cor-primaria-suave);
  border-color: #0000;
  align-self: flex-end;
}

.mensagem--interna {
  background: var(--cor-alerta-suave);
  border-style: dashed;
  border-color: var(--cor-alerta);
}

.mensagem__cabecalho {
  gap: var(--esp-2);
  font-size: var(--texto-xs);
  color: var(--cor-texto-suave);
  margin-bottom: var(--esp-1);
  flex-wrap: wrap;
  align-items: center;
  display: flex;
}

.mensagem__corpo {
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  margin: 0;
}

.anexos {
  margin: var(--esp-2) 0 0;
  gap: var(--esp-1);
  font-size: var(--texto-sm);
  flex-direction: column;
  padding: 0;
  list-style: none;
  display: flex;
}

.timeline {
  border-left: 2px solid var(--cor-borda);
  margin: 0;
  padding: 0;
  list-style: none;
}

.timeline__item {
  padding: 0 0 var(--esp-3) var(--esp-4);
  font-size: var(--texto-sm);
  position: relative;
}

.timeline__item:before {
  content: "";
  background: var(--cor-borda-forte);
  border-radius: 50%;
  width: 10px;
  height: 10px;
  position: absolute;
  top: 4px;
  left: -6px;
}

.timeline__quando {
  font-size: var(--texto-xs);
  color: var(--cor-texto-suave);
  display: block;
}

.sino {
  align-items: center;
  gap: var(--esp-1);
  font-size: var(--texto-sm);
  display: inline-flex;
  position: relative;
}

.sino__contador {
  background: var(--cor-perigo);
  color: #fff;
  min-width: 20px;
  font-size: var(--texto-xs);
  text-align: center;
  border-radius: 10px;
  padding: 0 6px;
  font-weight: 700;
}

.notificacao--nao-lida {
  font-weight: 600;
}

.matriz select {
  min-width: 160px;
}

.novidades-pagina {
  flex-direction: column;
  gap: 2.5rem;
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding-bottom: 3rem;
  display: flex;
}

.novidades-hero {
  border: 1px solid var(--cor-borda);
  color: var(--cor-texto);
  background: linear-gradient(135deg, #fff 0%, #f8fafc 55%, #f1f5f9 100%);
  border-radius: 1.25rem;
  padding: 2.25rem 2rem;
  position: relative;
  overflow: hidden;
  box-shadow: 0 4px 20px -2px #0000000d, 0 2px 6px -1px #00000005;
}

.novidades-hero__grid-bg {
  opacity: .5;
  pointer-events: none;
  background-image: linear-gradient(#00000008 1px, #0000 1px), linear-gradient(90deg, #00000008 1px, #0000 1px);
  background-size: 32px 32px;
  position: absolute;
  inset: 0;
}

.novidades-hero__glow {
  filter: blur(40px);
  pointer-events: none;
  background: radial-gradient(circle, #0ea5e91f, #0000 70%);
  border-radius: 50%;
  width: 280px;
  height: 280px;
  position: absolute;
  top: -60px;
  right: -60px;
}

.novidades-hero__corpo {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 1.5rem;
  display: flex;
  position: relative;
}

.novidades-hero__texto {
  max-width: 650px;
}

.novidades-hero__badge-versao {
  letter-spacing: .05em;
  text-transform: uppercase;
  color: #047857;
  background: #ecfdf5;
  border: 1px solid #a7f3d0;
  border-radius: 9999px;
  align-items: center;
  gap: .5rem;
  margin-bottom: .85rem;
  padding: .35rem .85rem;
  font-size: .75rem;
  font-weight: 700;
  display: inline-flex;
}

.novidades-hero__badge-dot {
  background: #10b981;
  border-radius: 50%;
  width: 7px;
  height: 7px;
  box-shadow: 0 0 8px #10b981;
}

.novidades-hero__titulo {
  letter-spacing: -.025em;
  color: var(--cor-texto);
  margin: 0;
  font-size: clamp(1.75rem, 3vw, 2.35rem);
  font-weight: 800;
  line-height: 1.2;
}

.novidades-hero__subtitulo {
  color: var(--cor-texto-suave);
  margin-top: .65rem;
  font-size: .95rem;
  line-height: 1.6;
}

.novidades-hero__subtitulo strong {
  color: var(--cor-texto);
}

.novidades-hero__logo-img {
  opacity: .95;
  filter: none;
}

.novidades-hero__logo-img--claro {
  display: block;
}

.novidades-hero__logo-img--escuro {
  display: none;
}

.novidades-destaques {
  flex-direction: column;
  gap: 1.25rem;
  display: flex;
}

.novidades-destaques__topo {
  border-bottom: 1px solid var(--cor-borda);
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-end;
  gap: 1rem;
  padding-bottom: .75rem;
  display: flex;
}

.novidades-destaques__titulo {
  color: var(--cor-texto);
  align-items: center;
  gap: .5rem;
  margin: 0;
  font-size: 1.25rem;
  font-weight: 700;
  display: flex;
}

.novidades-destaques__sparkle {
  font-size: 1.2rem;
}

.novidades-destaques__subtitulo {
  color: var(--cor-texto-suave);
  margin-top: .25rem;
  font-size: .82rem;
}

.novidades-destaques__badge-contagem {
  letter-spacing: .06em;
  color: var(--cor-texto-suave);
  text-transform: uppercase;
  font-size: .72rem;
  font-weight: 700;
}

.novidades-cards-grid {
  grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
  gap: 1.25rem;
  display: grid;
}

.novidade-card {
  border: 1px solid var(--cor-borda);
  background: #fff;
  border-radius: 1rem;
  transition: transform .2s, border-color .2s, box-shadow .2s;
  position: relative;
  overflow: hidden;
  box-shadow: 0 4px 16px #0000000a, 0 1px 3px #00000005;
}

.novidade-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 12px 24px -4px #00000014, 0 4px 8px -2px #00000008;
}

.novidade-card__glow {
  pointer-events: none;
  border-radius: 50%;
  width: 140px;
  height: 140px;
  transition: transform .3s;
  position: absolute;
  top: -40px;
  right: -40px;
}

.novidade-card:hover .novidade-card__glow {
  transform: scale(1.3);
}

.novidade-card__conteudo {
  flex-direction: column;
  justify-content: space-between;
  gap: 1.25rem;
  height: 100%;
  padding: 1.5rem;
  display: flex;
  position: relative;
}

.novidade-card__cabecalho {
  justify-content: space-between;
  align-items: center;
  gap: .5rem;
  display: flex;
}

.novidade-card__icone {
  border-radius: .75rem;
  justify-content: center;
  align-items: center;
  width: 42px;
  height: 42px;
  transition: transform .2s;
  display: flex;
}

.novidade-card:hover .novidade-card__icone {
  transform: scale(1.05);
}

.novidade-card__tipo {
  text-transform: uppercase;
  letter-spacing: .05em;
  border: 1px solid;
  border-radius: 9999px;
  padding: .25rem .65rem;
  font-size: .68rem;
  font-weight: 800;
}

.novidade-card__info {
  flex-direction: column;
  gap: .4rem;
  display: flex;
}

.novidade-card__categoria {
  text-transform: uppercase;
  letter-spacing: .05em;
  color: #64748b;
  font-size: .7rem;
  font-weight: 700;
}

.novidade-card__nome {
  color: var(--cor-texto);
  margin: 0;
  font-size: 1.05rem;
  font-weight: 700;
  line-height: 1.35;
}

.novidade-card__desc {
  color: var(--cor-texto-suave);
  margin: 0;
  font-size: .82rem;
  line-height: 1.55;
}

.novidade-card__rodape {
  border-top: 1px solid var(--cor-borda);
  padding-top: .85rem;
}

.novidade-card__link {
  color: var(--cor-primaria);
  align-items: center;
  gap: .4rem;
  font-size: .8rem;
  font-weight: 700;
  text-decoration: none;
  transition: gap .2s, color .2s;
  display: inline-flex;
}

.novidade-card__link:hover {
  color: var(--cor-primaria-hover);
  gap: .65rem;
}

.novidade-card__seta {
  width: 14px;
  height: 14px;
}

.novidade-card--verde .novidade-card__glow {
  background: radial-gradient(circle at 100% 0, #10b98114, #0000 70%);
}

.novidade-card--verde:hover {
  border-color: #10b981;
}

.novidade-card--verde .novidade-card__icone {
  color: #047857;
  background: #ecfdf5;
  border: 1px solid #a7f3d0;
}

.novidade-card--verde .novidade-card__tipo {
  color: #047857;
  background: #ecfdf5;
  border-color: #a7f3d0;
}

.novidade-card--ciano .novidade-card__glow {
  background: radial-gradient(circle at 100% 0, #06b6d414, #0000 70%);
}

.novidade-card--ciano:hover {
  border-color: #06b6d4;
}

.novidade-card--ciano .novidade-card__icone {
  color: #0e7490;
  background: #ecfeff;
  border: 1px solid #a5f3fc;
}

.novidade-card--ciano .novidade-card__tipo {
  color: #0e7490;
  background: #ecfeff;
  border-color: #a5f3fc;
}

.novidade-card--roxo .novidade-card__glow {
  background: radial-gradient(circle at 100% 0, #a855f714, #0000 70%);
}

.novidade-card--roxo:hover {
  border-color: #a855f7;
}

.novidade-card--roxo .novidade-card__icone {
  color: #6d28d9;
  background: #faf5ff;
  border: 1px solid #e9d5ff;
}

.novidade-card--roxo .novidade-card__tipo {
  color: #6d28d9;
  background: #faf5ff;
  border-color: #e9d5ff;
}

.novidade-card--azul .novidade-card__glow {
  background: radial-gradient(circle at 100% 0, #3b82f614, #0000 70%);
}

.novidade-card--azul:hover {
  border-color: #3b82f6;
}

.novidade-card--azul .novidade-card__icone {
  color: #1d4ed8;
  background: #eff6ff;
  border: 1px solid #bfdbfe;
}

.novidade-card--azul .novidade-card__tipo {
  color: #1d4ed8;
  background: #eff6ff;
  border-color: #bfdbfe;
}

.novidade-card--ambar .novidade-card__glow {
  background: radial-gradient(circle at 100% 0, #f59e0b14, #0000 70%);
}

.novidade-card--ambar:hover {
  border-color: #f59e0b;
}

.novidade-card--ambar .novidade-card__icone {
  color: #b45309;
  background: #fffbeb;
  border: 1px solid #fde68a;
}

.novidade-card--ambar .novidade-card__tipo {
  color: #b45309;
  background: #fffbeb;
  border-color: #fde68a;
}

.novidade-card--rosa .novidade-card__glow {
  background: radial-gradient(circle at 100% 0, #f43f5e14, #0000 70%);
}

.novidade-card--rosa:hover {
  border-color: #f43f5e;
}

.novidade-card--rosa .novidade-card__icone {
  color: #be123c;
  background: #fff1f2;
  border: 1px solid #fecdd3;
}

.novidade-card--rosa .novidade-card__tipo {
  color: #be123c;
  background: #fff1f2;
  border-color: #fecdd3;
}

.novidades-timeline-secao {
  flex-direction: column;
  gap: 1.5rem;
  display: flex;
}

.novidades-timeline-header {
  border-bottom: 1px solid var(--cor-borda);
  padding-bottom: .75rem;
}

.novidades-timeline-titulo {
  color: var(--cor-texto);
  margin: 0;
  font-size: 1.25rem;
  font-weight: 700;
}

.novidades-timeline-subtitulo {
  color: var(--cor-texto-suave);
  margin-top: .25rem;
  font-size: .82rem;
}

.novidades-timeline {
  flex-direction: column;
  gap: 1.5rem;
  padding-left: 2rem;
  display: flex;
  position: relative;
}

.novidades-timeline__trilho {
  background: var(--cor-borda);
  width: 2px;
  position: absolute;
  top: 1.5rem;
  bottom: 1.5rem;
  left: 7px;
}

.novidades-versao-card {
  position: relative;
}

.novidades-versao-marcador {
  width: 16px;
  height: 16px;
  box-shadow: 0 0 0 4px var(--cor-fundo),
    0 2px 6px #0284c766;
  background: #0284c7;
  border-radius: 50%;
  position: absolute;
  top: 1.25rem;
  left: -2rem;
  transform: translateX(-1px);
}

.novidades-versao-conteudo {
  border: 1px solid var(--cor-borda);
  background: #fff;
  border-radius: 1rem;
  padding: 1.5rem;
  box-shadow: 0 4px 16px #0000000a, 0 1px 3px #00000005;
}

.novidades-versao-topo {
  flex-wrap: wrap;
  align-items: center;
  gap: .65rem;
  display: flex;
}

.novidades-versao-tag {
  color: #fff;
  letter-spacing: .02em;
  background: #0284c7;
  border-radius: 9999px;
  padding: .2rem .65rem;
  font-size: .72rem;
  font-weight: 800;
}

.novidades-versao-data {
  color: var(--cor-texto-suave);
  font-size: .82rem;
}

.novidades-versao-sep {
  color: var(--cor-borda-forte);
}

.novidades-versao-total {
  color: var(--cor-texto-suave);
  font-size: .82rem;
}

.novidades-versao-nome {
  color: var(--cor-texto);
  margin: .75rem 0 .35rem;
  font-size: 1.15rem;
  font-weight: 700;
}

.novidades-versao-resumo {
  color: var(--cor-texto-suave);
  margin: 0;
  font-size: .88rem;
  line-height: 1.55;
}

.novidades-versao-badges {
  flex-wrap: wrap;
  align-items: center;
  gap: .5rem;
  margin-top: 1rem;
  display: flex;
}

.novidades-badge-tipo {
  border: 1px solid #0000;
  border-radius: 9999px;
  align-items: center;
  gap: .35rem;
  padding: .2rem .65rem;
  font-size: .7rem;
  font-weight: 700;
  display: inline-flex;
}

.novidades-badge-dot {
  background: currentColor;
  border-radius: 50%;
  width: 6px;
  height: 6px;
}

.badge-tipo--novo {
  color: #047857;
  background: #ecfdf5;
  border-color: #a7f3d0;
}

.badge-tipo--melhoria {
  color: #0369a1;
  background: #f0f9ff;
  border-color: #bae6fd;
}

.badge-tipo--correcao {
  color: #b45309;
  background: #fffbeb;
  border-color: #fde68a;
}

.badge-tipo--seguranca {
  color: #6d28d9;
  background: #faf5ff;
  border-color: #e9d5ff;
}

.novidades-versao-grupos {
  border-top: 1px solid var(--cor-borda);
  flex-direction: column;
  gap: 1.15rem;
  margin-top: 1.25rem;
  padding-top: 1.15rem;
  display: flex;
}

.novidades-grupo-rotulo {
  text-transform: uppercase;
  letter-spacing: .05em;
  margin: 0 0 .5rem;
  font-size: .72rem;
  font-weight: 800;
  display: inline-block;
}

.novidades-grupo-lista {
  flex-direction: column;
  gap: .5rem;
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
}

.novidades-item-linha {
  color: var(--cor-texto);
  align-items: flex-start;
  gap: .55rem;
  font-size: .85rem;
  line-height: 1.5;
  display: flex;
}

.novidades-item-icone {
  color: #10b981;
  flex-shrink: 0;
  font-size: .85rem;
  font-weight: 900;
  line-height: 1.3;
}

.novidades-item-texto {
  flex: 1;
}

html[data-tema="escuro"] .novidades-hero, html:not([data-tema="claro"]) .novidades-hero {
  color: #f8fafc;
  background: #090d16;
  border: 1px solid #ffffff14;
  box-shadow: 0 10px 30px #00000080;
}

html[data-tema="escuro"] .novidades-hero__grid-bg, html:not([data-tema="claro"]) .novidades-hero__grid-bg {
  opacity: .15;
  background-image: linear-gradient(#ffffff1a 1px, #0000 1px), linear-gradient(90deg, #ffffff1a 1px, #0000 1px);
}

html[data-tema="escuro"] .novidades-hero__glow, html:not([data-tema="claro"]) .novidades-hero__glow {
  background: radial-gradient(circle, #0ea5e940, #0000 70%);
}

html[data-tema="escuro"] .novidades-hero__badge-versao, html:not([data-tema="claro"]) .novidades-hero__badge-versao {
  color: #f8fafc;
  background: #ffffff14;
  border: 1px solid #ffffff26;
}

html[data-tema="escuro"] .novidades-hero__titulo, html:not([data-tema="claro"]) .novidades-hero__titulo {
  color: #fff;
}

html[data-tema="escuro"] .novidades-hero__subtitulo, html:not([data-tema="claro"]) .novidades-hero__subtitulo {
  color: #94a3b8;
}

html[data-tema="escuro"] .novidades-hero__subtitulo strong, html:not([data-tema="claro"]) .novidades-hero__subtitulo strong {
  color: #f1f5f9;
}

html[data-tema="escuro"] .novidades-hero__logo-img--claro, html:not([data-tema="claro"]) .novidades-hero__logo-img--claro {
  display: none;
}

html[data-tema="escuro"] .novidades-hero__logo-img--escuro, html:not([data-tema="claro"]) .novidades-hero__logo-img--escuro {
  opacity: .92;
  filter: drop-shadow(0 4px 16px #00000080);
  display: block;
}

html[data-tema="escuro"] .novidades-destaques__topo, html:not([data-tema="claro"]) .novidades-destaques__topo {
  border-bottom: 1px solid #ffffff14;
}

html[data-tema="escuro"] .novidades-destaques__titulo, html:not([data-tema="claro"]) .novidades-destaques__titulo {
  color: #f8fafc;
}

html[data-tema="escuro"] .novidades-destaques__subtitulo, html:not([data-tema="claro"]) .novidades-destaques__subtitulo {
  color: #94a3b8;
}

html[data-tema="escuro"] .novidades-destaques__badge-contagem, html:not([data-tema="claro"]) .novidades-destaques__badge-contagem {
  color: #64748b;
}

html[data-tema="escuro"] .novidade-card, html:not([data-tema="claro"]) .novidade-card {
  background: #0d131f;
  border: 1px solid #ffffff12;
  box-shadow: 0 4px 15px #0000004d;
}

html[data-tema="escuro"] .novidade-card:hover, html:not([data-tema="claro"]) .novidade-card:hover {
  box-shadow: 0 10px 25px #00000080;
}

html[data-tema="escuro"] .novidade-card__nome, html:not([data-tema="claro"]) .novidade-card__nome {
  color: #f1f5f9;
}

html[data-tema="escuro"] .novidade-card__desc, html:not([data-tema="claro"]) .novidade-card__desc {
  color: #94a3b8;
}

html[data-tema="escuro"] .novidade-card__rodape, html:not([data-tema="claro"]) .novidade-card__rodape {
  border-top: 1px solid #ffffff0f;
}

html[data-tema="escuro"] .novidade-card__link, html:not([data-tema="claro"]) .novidade-card__link {
  color: #38bdf8;
}

html[data-tema="escuro"] .novidade-card__link:hover, html:not([data-tema="claro"]) .novidade-card__link:hover {
  color: #7dd3fc;
}

html[data-tema="escuro"] .novidade-card--verde .novidade-card__glow, html:not([data-tema="claro"]) .novidade-card--verde .novidade-card__glow {
  background: radial-gradient(circle at 100% 0, #10b98126, #0000 70%);
}

html[data-tema="escuro"] .novidade-card--verde:hover, html:not([data-tema="claro"]) .novidade-card--verde:hover {
  border-color: #10b98159;
}

html[data-tema="escuro"] .novidade-card--verde .novidade-card__icone, html:not([data-tema="claro"]) .novidade-card--verde .novidade-card__icone {
  color: #34d399;
  background: #10b98126;
  border: 1px solid #ffffff1a;
}

html[data-tema="escuro"] .novidade-card--verde .novidade-card__tipo, html:not([data-tema="claro"]) .novidade-card--verde .novidade-card__tipo {
  color: #34d399;
  background: #10b98126;
  border: 1px solid;
}

html[data-tema="escuro"] .novidade-card--ciano .novidade-card__glow, html:not([data-tema="claro"]) .novidade-card--ciano .novidade-card__glow {
  background: radial-gradient(circle at 100% 0, #06b6d426, #0000 70%);
}

html[data-tema="escuro"] .novidade-card--ciano:hover, html:not([data-tema="claro"]) .novidade-card--ciano:hover {
  border-color: #06b6d459;
}

html[data-tema="escuro"] .novidade-card--ciano .novidade-card__icone, html:not([data-tema="claro"]) .novidade-card--ciano .novidade-card__icone {
  color: #22d3ee;
  background: #06b6d426;
  border: 1px solid #ffffff1a;
}

html[data-tema="escuro"] .novidade-card--ciano .novidade-card__tipo, html:not([data-tema="claro"]) .novidade-card--ciano .novidade-card__tipo {
  color: #22d3ee;
  background: #06b6d426;
  border: 1px solid;
}

html[data-tema="escuro"] .novidade-card--roxo .novidade-card__glow, html:not([data-tema="claro"]) .novidade-card--roxo .novidade-card__glow {
  background: radial-gradient(circle at 100% 0, #a855f726, #0000 70%);
}

html[data-tema="escuro"] .novidade-card--roxo:hover, html:not([data-tema="claro"]) .novidade-card--roxo:hover {
  border-color: #a855f759;
}

html[data-tema="escuro"] .novidade-card--roxo .novidade-card__icone, html:not([data-tema="claro"]) .novidade-card--roxo .novidade-card__icone {
  color: #c084fc;
  background: #a855f726;
  border: 1px solid #ffffff1a;
}

html[data-tema="escuro"] .novidade-card--roxo .novidade-card__tipo, html:not([data-tema="claro"]) .novidade-card--roxo .novidade-card__tipo {
  color: #c084fc;
  background: #a855f726;
  border: 1px solid;
}

html[data-tema="escuro"] .novidade-card--azul .novidade-card__glow, html:not([data-tema="claro"]) .novidade-card--azul .novidade-card__glow {
  background: radial-gradient(circle at 100% 0, #3b82f626, #0000 70%);
}

html[data-tema="escuro"] .novidade-card--azul:hover, html:not([data-tema="claro"]) .novidade-card--azul:hover {
  border-color: #3b82f659;
}

html[data-tema="escuro"] .novidade-card--azul .novidade-card__icone, html:not([data-tema="claro"]) .novidade-card--azul .novidade-card__icone {
  color: #60a5fa;
  background: #3b82f626;
  border: 1px solid #ffffff1a;
}

html[data-tema="escuro"] .novidade-card--azul .novidade-card__tipo, html:not([data-tema="claro"]) .novidade-card--azul .novidade-card__tipo {
  color: #60a5fa;
  background: #3b82f626;
  border: 1px solid;
}

html[data-tema="escuro"] .novidade-card--ambar .novidade-card__glow, html:not([data-tema="claro"]) .novidade-card--ambar .novidade-card__glow {
  background: radial-gradient(circle at 100% 0, #f59e0b26, #0000 70%);
}

html[data-tema="escuro"] .novidade-card--ambar:hover, html:not([data-tema="claro"]) .novidade-card--ambar:hover {
  border-color: #f59e0b59;
}

html[data-tema="escuro"] .novidade-card--ambar .novidade-card__icone, html:not([data-tema="claro"]) .novidade-card--ambar .novidade-card__icone {
  color: #fbbf24;
  background: #f59e0b26;
  border: 1px solid #ffffff1a;
}

html[data-tema="escuro"] .novidade-card--ambar .novidade-card__tipo, html:not([data-tema="claro"]) .novidade-card--ambar .novidade-card__tipo {
  color: #fbbf24;
  background: #f59e0b26;
  border: 1px solid;
}

html[data-tema="escuro"] .novidade-card--rosa .novidade-card__glow, html:not([data-tema="claro"]) .novidade-card--rosa .novidade-card__glow {
  background: radial-gradient(circle at 100% 0, #f43f5e26, #0000 70%);
}

html[data-tema="escuro"] .novidade-card--rosa:hover, html:not([data-tema="claro"]) .novidade-card--rosa:hover {
  border-color: #f43f5e59;
}

html[data-tema="escuro"] .novidade-card--rosa .novidade-card__icone, html:not([data-tema="claro"]) .novidade-card--rosa .novidade-card__icone {
  color: #fb7185;
  background: #f43f5e26;
  border: 1px solid #ffffff1a;
}

html[data-tema="escuro"] .novidade-card--rosa .novidade-card__tipo, html:not([data-tema="claro"]) .novidade-card--rosa .novidade-card__tipo {
  color: #fb7185;
  background: #f43f5e26;
  border: 1px solid;
}

html[data-tema="escuro"] .novidades-timeline-header, html:not([data-tema="claro"]) .novidades-timeline-header {
  border-bottom: 1px solid #ffffff14;
}

html[data-tema="escuro"] .novidades-timeline-titulo, html:not([data-tema="claro"]) .novidades-timeline-titulo {
  color: #f8fafc;
}

html[data-tema="escuro"] .novidades-timeline-subtitulo, html:not([data-tema="claro"]) .novidades-timeline-subtitulo {
  color: #94a3b8;
}

html[data-tema="escuro"] .novidades-timeline__trilho, html:not([data-tema="claro"]) .novidades-timeline__trilho {
  background: #ffffff1a;
}

html[data-tema="escuro"] .novidades-versao-marcador, html:not([data-tema="claro"]) .novidades-versao-marcador {
  background: #38bdf8;
  box-shadow: 0 0 0 4px #090d16, 0 0 10px #38bdf899;
}

html[data-tema="escuro"] .novidades-versao-conteudo, html:not([data-tema="claro"]) .novidades-versao-conteudo {
  background: #0d131f;
  border: 1px solid #ffffff14;
  box-shadow: 0 4px 15px #0000004d;
}

html[data-tema="escuro"] .novidades-versao-data, html:not([data-tema="claro"]) .novidades-versao-data {
  color: #94a3b8;
}

html[data-tema="escuro"] .novidades-versao-sep, html:not([data-tema="claro"]) .novidades-versao-sep {
  color: #fff3;
}

html[data-tema="escuro"] .novidades-versao-total, html:not([data-tema="claro"]) .novidades-versao-total {
  color: #64748b;
}

html[data-tema="escuro"] .novidades-versao-nome, html:not([data-tema="claro"]) .novidades-versao-nome {
  color: #f8fafc;
}

html[data-tema="escuro"] .novidades-versao-resumo, html:not([data-tema="claro"]) .novidades-versao-resumo {
  color: #94a3b8;
}

html[data-tema="escuro"] .novidades-badge-tipo, html:not([data-tema="claro"]) .novidades-badge-tipo {
  border: 1px solid #ffffff1a;
}

html[data-tema="escuro"] .badge-tipo--novo, html:not([data-tema="claro"]) .badge-tipo--novo {
  color: #34d399;
  background: #10b9811f;
  border-color: #ffffff1a;
}

html[data-tema="escuro"] .badge-tipo--melhoria, html:not([data-tema="claro"]) .badge-tipo--melhoria {
  color: #38bdf8;
  background: #38bdf81f;
  border-color: #ffffff1a;
}

html[data-tema="escuro"] .badge-tipo--correcao, html:not([data-tema="claro"]) .badge-tipo--correcao {
  color: #fbbf24;
  background: #fbbf241f;
  border-color: #ffffff1a;
}

html[data-tema="escuro"] .badge-tipo--seguranca, html:not([data-tema="claro"]) .badge-tipo--seguranca {
  color: #c084fc;
  background: #a855f71f;
  border-color: #ffffff1a;
}

html[data-tema="escuro"] .novidades-versao-grupos, html:not([data-tema="claro"]) .novidades-versao-grupos {
  border-top: 1px solid #ffffff0f;
}

html[data-tema="escuro"] .novidades-item-linha, html:not([data-tema="claro"]) .novidades-item-linha {
  color: #cbd5e1;
}

.perfil-container {
  max-width: 1040px;
  padding: var(--esp-1) 0 var(--esp-6);
  flex-direction: column;
  gap: 24px;
  margin: 0 auto;
  display: flex;
}

.perfil-hero {
  border-radius: var(--raio-lg, 12px);
  background: var(--cor-superficie);
  border: 1px solid var(--cor-borda);
  box-shadow: var(--sombra, 0 4px 18px #0000000d);
  justify-content: space-between;
  align-items: center;
  gap: 24px;
  padding: 24px 28px;
  transition: all .2s;
  display: flex;
  position: relative;
  overflow: hidden;
}

.perfil-hero:before {
  content: "";
  background: linear-gradient(90deg, var(--cor-primaria) 0%, #3b82f6 50%, #10b981 100%);
  height: 4px;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
}

.perfil-hero__principal {
  align-items: center;
  gap: 22px;
  min-width: 0;
  display: flex;
}

.perfil-hero__avatar-wrap {
  flex-shrink: 0;
  position: relative;
}

.perfil-hero__avatar {
  background: linear-gradient(135deg, var(--cor-primaria, #1871fe) 0%, #1555cb 100%);
  color: #fff;
  letter-spacing: -.02em;
  border: 3px solid var(--cor-superficie);
  outline: 2px solid var(--cor-borda);
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  width: 76px;
  height: 76px;
  font-size: 1.65rem;
  font-weight: 700;
  display: flex;
  position: relative;
  box-shadow: 0 8px 24px #1871fe59;
}

.perfil-hero__status-dot {
  border: 2.5px solid var(--cor-superficie);
  background: #10b981;
  border-radius: 50%;
  width: 16px;
  height: 16px;
  position: absolute;
  bottom: 2px;
  right: 2px;
  box-shadow: 0 0 0 1px #10b98166;
}

.perfil-hero__info {
  flex-direction: column;
  gap: 6px;
  min-width: 0;
  display: flex;
}

.perfil-hero__topo {
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  display: flex;
}

.perfil-hero__nome {
  color: var(--cor-texto);
  letter-spacing: -.01em;
  margin: 0;
  font-size: 1.4rem;
  font-weight: 700;
}

.perfil-hero__email {
  color: var(--cor-texto-suave);
  align-items: center;
  gap: 6px;
  margin: 0;
  font-size: .9rem;
  display: inline-flex;
}

.perfil-hero__meta {
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  margin-top: 4px;
  display: flex;
}

.perfil-hero__pill {
  color: var(--cor-texto-suave);
  background: var(--cor-superficie-2, #0000000a);
  border: 1px solid var(--cor-borda);
  border-radius: 999px;
  align-items: center;
  gap: 6px;
  padding: 4px 10px;
  font-size: .82rem;
  display: inline-flex;
}

.perfil-hero__pill strong {
  color: var(--cor-texto);
}

.perfil-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
  display: grid;
}

@media (max-width: 820px) {
  .perfil-grid {
    grid-template-columns: 1fr;
  }
}

.perfil-card {
  margin: 0;
}

.perfil-form {
  padding: var(--esp-4) var(--esp-5);
  flex-direction: column;
  gap: 18px;
  display: flex;
}

.perfil-form__acoes {
  border-top: 1px solid var(--cor-borda);
  justify-content: flex-end;
  margin-top: 8px;
  padding-top: 14px;
  display: flex;
}

.campo-senha-wrap {
  align-items: center;
  width: 100%;
  display: flex;
  position: relative;
}

.campo-senha-wrap .input {
  width: 100%;
  padding-right: 42px;
}

.campo-senha-toggle {
  color: var(--cor-texto-suave);
  cursor: pointer;
  border-radius: var(--raio-sm);
  background: none;
  border: none;
  justify-content: center;
  align-items: center;
  padding: 6px;
  transition: color .15s, background .15s;
  display: inline-flex;
  position: absolute;
  top: 50%;
  right: 8px;
  transform: translateY(-50%);
}

.campo-senha-toggle:hover {
  color: var(--cor-texto);
  background: var(--cor-superficie-2);
}

.campo-senha-toggle:focus-visible {
  outline: 2px solid var(--cor-primaria);
}

.input--desabilitado {
  opacity: .85;
  background: var(--cor-superficie-2, #0000000a) !important;
  color: var(--cor-texto-suave) !important;
  cursor: not-allowed !important;
  border-color: var(--cor-borda) !important;
}

.perfil-filiais-lista {
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
}

.perfil-filiais-item {
  border-radius: var(--raio, 8px);
  background: var(--cor-superficie-2, #00000008);
  border: 1px solid var(--cor-borda);
  color: var(--cor-texto);
  align-items: center;
  gap: 10px;
  padding: 10px 14px;
  font-size: .88rem;
  font-weight: 500;
  transition: border-color .15s;
  display: flex;
}

.perfil-filiais-item:hover {
  border-color: var(--cor-primaria);
}

.perfil-filiais-bullet {
  color: #10b981;
  background: #10b9811f;
  border-radius: 50%;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 20px;
  height: 20px;
  font-size: 11px;
  font-weight: 700;
  display: inline-flex;
}

.grid-stats-3d {
  perspective: 1000px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin-bottom: 16px;
  display: grid;
}

.grid-stats-3d--4-cols {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

@media (max-width: 1100px) {
  .grid-stats-3d--4-cols {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 900px) {
  .grid-stats-3d:not(.grid-stats-3d--4-cols) {
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  }
}

@media (max-width: 600px) {
  .grid-stats-3d--4-cols {
    grid-template-columns: 1fr;
  }
}

.grid-stats-3d--compacto, .grid-stats-3d--4-cols {
  gap: 10px;
  margin-bottom: 14px;
}

.grid-stats-3d--compacto .card-stat-3d, .grid-stats-3d--4-cols .card-stat-3d, .card-stat-3d--compacto {
  border-radius: 8px;
}

.grid-stats-3d--compacto .card-stat-3d__barra-acento, .grid-stats-3d--4-cols .card-stat-3d__barra-acento, .card-stat-3d--compacto .card-stat-3d__barra-acento {
  height: 2.5px;
}

.grid-stats-3d--compacto .card-stat-3d__corpo, .grid-stats-3d--4-cols .card-stat-3d__corpo, .card-stat-3d--compacto .card-stat-3d__corpo {
  padding: 8px 12px 7px;
}

.grid-stats-3d--compacto .card-stat-3d__linha-topo, .grid-stats-3d--4-cols .card-stat-3d__linha-topo, .card-stat-3d--compacto .card-stat-3d__linha-topo {
  gap: 8px;
}

.grid-stats-3d--compacto .card-stat-3d__icone-badge, .grid-stats-3d--4-cols .card-stat-3d__icone-badge, .card-stat-3d--compacto .card-stat-3d__icone-badge {
  border-radius: 7px;
  width: 30px;
  height: 30px;
}

.grid-stats-3d--compacto .card-stat-3d__icone-badge svg, .grid-stats-3d--4-cols .card-stat-3d__icone-badge svg, .card-stat-3d--compacto .card-stat-3d__icone-badge svg {
  width: 15px;
  height: 15px;
}

.grid-stats-3d--compacto .card-stat-3d__rotulo, .grid-stats-3d--4-cols .card-stat-3d__rotulo, .card-stat-3d--compacto .card-stat-3d__rotulo {
  letter-spacing: -.01em;
  font-size: .72rem;
}

.grid-stats-3d--compacto .card-stat-3d__valor, .grid-stats-3d--4-cols .card-stat-3d__valor, .card-stat-3d--compacto .card-stat-3d__valor {
  font-size: 1.25rem;
}

.grid-stats-3d--compacto .card-stat-3d__detalhe-wrapper, .grid-stats-3d--4-cols .card-stat-3d__detalhe-wrapper, .card-stat-3d--compacto .card-stat-3d__detalhe-wrapper {
  margin-top: 3px;
}

.grid-stats-3d--compacto .card-stat-3d__detalhe, .grid-stats-3d--4-cols .card-stat-3d__detalhe, .card-stat-3d--compacto .card-stat-3d__detalhe {
  font-size: .68rem;
  line-height: 1.2;
}

.grid-stats-3d--compacto .card-stat-3d__sparkline, .grid-stats-3d--4-cols .card-stat-3d__sparkline, .card-stat-3d--compacto .card-stat-3d__sparkline {
  gap: 2px;
  height: 16px;
}

.grid-stats-3d--compacto .card-stat-3d__sparkline-barra, .grid-stats-3d--4-cols .card-stat-3d__sparkline-barra, .card-stat-3d--compacto .card-stat-3d__sparkline-barra {
  width: 2.5px;
}

.card-stat-3d {
  background: var(--cor-superficie);
  border: 1px solid var(--cor-borda);
  transform-style: preserve-3d;
  will-change: transform;
  border-radius: 10px;
  outline: none;
  transition: box-shadow .22s, border-color .2s, transform .2s;
  position: relative;
  overflow: hidden;
  box-shadow: 0 1px 3px #0000000a, 0 4px 14px #00000005;
}

html:not([data-tema="claro"]) .card-stat-3d {
  background: #151e2e;
  border-color: #ffffff14;
  box-shadow: 0 4px 20px -2px #00000059, 0 2px 6px -1px #0003;
}

.card-stat-3d:hover {
  box-shadow: 0 12px 30px -4px #00000014, 0 4px 10px -2px #0000000a;
}

html:not([data-tema="claro"]) .card-stat-3d:hover {
  border-color: #ffffff29;
  box-shadow: 0 16px 36px -4px #0000008c, 0 6px 14px -2px #00000059;
}

.card-stat-3d__glare {
  pointer-events: none;
  border-radius: inherit;
  z-index: 5;
  transition: opacity .3s;
  position: absolute;
  inset: 0;
}

.card-stat-3d__barra-acento {
  width: 100%;
  height: 3.5px;
}

.card-stat-3d--info .card-stat-3d__barra-acento {
  background: linear-gradient(90deg, #2563eb, #6366f1);
}

.card-stat-3d--ok .card-stat-3d__barra-acento {
  background: linear-gradient(90deg, #10b981, #059669);
}

.card-stat-3d--cyan .card-stat-3d__barra-acento {
  background: linear-gradient(90deg, #06b6d4, #0ea5e9);
}

.card-stat-3d--alerta .card-stat-3d__barra-acento {
  background: linear-gradient(90deg, #f59e0b, #d97706);
}

.card-stat-3d--perigo .card-stat-3d__barra-acento {
  background: linear-gradient(90deg, #ef4444, #dc2626);
}

.card-stat-3d--neutro .card-stat-3d__barra-acento {
  background: linear-gradient(90deg, #64748b, #475569);
}

.card-stat-3d__corpo {
  flex-direction: column;
  padding: 12px 14px 10px;
  display: flex;
}

.card-stat-3d__linha-topo {
  align-items: center;
  gap: 10px;
  display: flex;
}

.card-stat-3d__icone-badge {
  border-radius: 9px;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 36px;
  height: 36px;
  transition: transform .2s;
  display: flex;
}

.card-stat-3d__icone-badge svg {
  width: 18px;
  height: 18px;
}

.card-stat-3d--info .card-stat-3d__icone-badge {
  color: #2563eb;
  background: #eff6ff;
  border: 1px solid #dbeafe;
}

html:not([data-tema="claro"]) .card-stat-3d--info .card-stat-3d__icone-badge {
  color: #60a5fa;
  background: #2563eb29;
  border-color: #3b82f640;
}

.card-stat-3d--cyan .card-stat-3d__icone-badge {
  color: #0891b2;
  background: #ecfeff;
  border: 1px solid #cffafe;
}

html:not([data-tema="claro"]) .card-stat-3d--cyan .card-stat-3d__icone-badge {
  color: #38bdf8;
  background: #0891b229;
  border-color: #06b6d440;
}

.card-stat-3d--ok .card-stat-3d__icone-badge {
  color: #16a34a;
  background: #f0fdf4;
  border: 1px solid #dcfce7;
}

html:not([data-tema="claro"]) .card-stat-3d--ok .card-stat-3d__icone-badge {
  color: #4ade80;
  background: #16a34a29;
  border-color: #22c55e40;
}

.card-stat-3d--alerta .card-stat-3d__icone-badge {
  color: #d97706;
  background: #fffbeb;
  border: 1px solid #fef3c7;
}

html:not([data-tema="claro"]) .card-stat-3d--alerta .card-stat-3d__icone-badge {
  color: #fbbf24;
  background: #f59e0b29;
  border-color: #f59e0b40;
}

.card-stat-3d--perigo .card-stat-3d__icone-badge {
  color: #dc2626;
  background: #fef2f2;
  border: 1px solid #fee2e2;
}

html:not([data-tema="claro"]) .card-stat-3d--perigo .card-stat-3d__icone-badge {
  color: #f87171;
  background: #ef444429;
  border-color: #ef444440;
}

.card-stat-3d--neutro .card-stat-3d__icone-badge {
  color: #475569;
  background: #f8fafc;
  border: 1px solid #e2e8f0;
}

html:not([data-tema="claro"]) .card-stat-3d--neutro .card-stat-3d__icone-badge {
  color: #cbd5e1;
  background: #64748b29;
  border-color: #64748b40;
}

.card-stat-3d__info-principal {
  flex-direction: column;
  min-width: 0;
  display: flex;
}

.card-stat-3d__rotulo {
  color: var(--cor-texto-suave);
  font-size: .78rem;
  font-weight: 500;
  line-height: 1.2;
}

.card-stat-3d__valor-linha {
  align-items: baseline;
  gap: 6px;
  margin-top: 2px;
  display: flex;
}

.card-stat-3d__valor {
  letter-spacing: -.025em;
  color: var(--cor-texto);
  font-size: 1.55rem;
  font-weight: 800;
  line-height: 1;
}

.card-stat-3d__tendencia {
  color: #16a34a;
  white-space: nowrap;
  align-items: center;
  gap: 2px;
  font-size: .74rem;
  font-weight: 700;
  line-height: 1;
  display: inline-flex;
}

html:not([data-tema="claro"]) .card-stat-3d__tendencia {
  color: #4ade80;
}

.card-stat-3d__sparkline-wrap {
  flex-shrink: 0;
  align-self: center;
  margin-left: auto;
}

.card-stat-3d__sparkline {
  align-items: flex-end;
  gap: 3px;
  height: 20px;
  padding-bottom: 1px;
  display: flex;
}

.card-stat-3d__sparkline-barra {
  border-radius: 2px;
  width: 3.5px;
  transition: opacity .2s, transform .2s;
}

.card-stat-3d--info .card-stat-3d__sparkline-barra {
  background: #93c5fd;
}

html:not([data-tema="claro"]) .card-stat-3d--info .card-stat-3d__sparkline-barra {
  background: #60a5fa73;
}

.card-stat-3d--cyan .card-stat-3d__sparkline-barra {
  background: #67e8f9;
}

html:not([data-tema="claro"]) .card-stat-3d--cyan .card-stat-3d__sparkline-barra {
  background: #38bdf873;
}

.card-stat-3d--ok .card-stat-3d__sparkline-barra {
  background: #86efac;
}

html:not([data-tema="claro"]) .card-stat-3d--ok .card-stat-3d__sparkline-barra {
  background: #34d39973;
}

.card-stat-3d--alerta .card-stat-3d__sparkline-barra {
  background: #fde047;
}

.card-stat-3d--perigo .card-stat-3d__sparkline-barra {
  background: #fca5a5;
}

.card-stat-3d--neutro .card-stat-3d__sparkline-barra {
  background: #cbd5e1;
}

.card-stat-3d__skeleton {
  background: linear-gradient(90deg, #ffffff0d 25%, #ffffff26 50%, #ffffff0d 75%) 0 0 / 200% 100%;
  border-radius: 6px;
  width: 65px;
  height: 26px;
  animation: 1.5s infinite skeletonShimmer;
}

.card-stat-3d__detalhe-wrapper {
  margin-top: 6px;
  padding-top: 1px;
}

.card-stat-3d__detalhe {
  color: var(--cor-texto-suave);
  font-size: .72rem;
  line-height: 1.25;
}

.visao-plataforma {
  flex-direction: column;
  gap: 0;
  width: 100%;
  display: flex;
}

.conteudo:has(.visao-plataforma__banner-wrap) {
  max-width: 100%;
  padding: 0 0 var(--esp-5) 0;
}

.conteudo:has(.visao-plataforma__banner-wrap) > .pilha {
  gap: 0;
}

.conteudo:has(.visao-plataforma__banner-wrap) .grid-stats-3d {
  width: 100%;
  max-width: var(--largura-conteudo);
  padding-left: var(--esp-5);
  padding-right: var(--esp-5);
  margin-left: auto;
  margin-right: auto;
}

.conteudo:has(.visao-plataforma__banner-wrap) .atalhos {
  width: 100%;
  max-width: var(--largura-conteudo);
  padding-left: var(--esp-5);
  padding-right: var(--esp-5);
  margin-left: auto;
  margin-right: auto;
}

.conteudo:has(.visao-plataforma__banner-wrap) > .pilha > .alerta {
  width: 100%;
  max-width: var(--largura-conteudo);
  padding-left: var(--esp-5);
  padding-right: var(--esp-5);
  margin-left: auto;
  margin-right: auto;
}

.conteudo:has(.visao-plataforma__banner-wrap) > .pilha > .alerta-erro {
  width: 100%;
  max-width: var(--largura-conteudo);
  padding-left: var(--esp-5);
  padding-right: var(--esp-5);
  margin-left: auto;
  margin-right: auto;
}

.conteudo:has(.visao-plataforma__banner-wrap) > .alerta {
  width: 100%;
  max-width: var(--largura-conteudo);
  padding-left: var(--esp-5);
  padding-right: var(--esp-5);
  margin-left: auto;
  margin-right: auto;
}

.conteudo:has(.visao-plataforma__banner-wrap) > .alerta-erro {
  width: 100%;
  max-width: var(--largura-conteudo);
  padding-left: var(--esp-5);
  padding-right: var(--esp-5);
  margin-left: auto;
  margin-right: auto;
}

.conteudo:has(.visao-plataforma__banner-wrap) > .pilha > .card {
  width: calc(100% - (2 * var(--esp-5)));
  max-width: calc(var(--largura-conteudo) - (2 * var(--esp-5)));
  margin-left: auto;
  margin-right: auto;
  margin-bottom: var(--esp-5);
}

.conteudo:has(.visao-plataforma__banner-wrap) .atalhos {
  margin-bottom: var(--esp-5);
}

.visao-plataforma__banner-wrap {
  border: none;
  border-bottom: 1px solid var(--cor-borda);
  background: #0a1124;
  border-radius: 0;
  width: 100%;
  height: 235px;
  position: relative;
  overflow: hidden;
}

.visao-plataforma__banner-img {
  object-fit: cover;
  object-position: center 38%;
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  inset: 0;
}

.visao-plataforma__banner-overlay {
  pointer-events: none;
  background: linear-gradient(90deg, #fffffff5 0%, #ffffffe0 28%, #ffffff73 45%, #fff0 65%), linear-gradient(270deg, #030a1a99 0%, #030a1a33 25%, #0000 45%);
  position: absolute;
  inset: 0;
}

html:not([data-tema="claro"]) .visao-plataforma__banner-overlay {
  background: linear-gradient(90deg, #0a1124f2 0%, #0a1124d1 28%, #0a112473 45%, #0a112400 65%), linear-gradient(270deg, #020612bf 0%, #0206124d 25%, #0000 45%);
}

.visao-plataforma__banner-conteudo {
  z-index: 2;
  height: 100%;
  padding: 16px var(--esp-5) 60px;
  max-width: var(--largura-conteudo);
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  margin: 0 auto;
  display: flex;
  position: relative;
}

.visao-plataforma__banner-esquerda {
  flex-direction: column;
  justify-content: center;
  max-width: 440px;
  display: flex;
}

.visao-plataforma__banner-kicker {
  letter-spacing: .08em;
  color: #475569;
  text-transform: uppercase;
  margin-bottom: 4px;
  font-size: .76rem;
  font-weight: 700;
}

html:not([data-tema="claro"]) .visao-plataforma__banner-kicker {
  color: #94a3b8;
}

.visao-plataforma__banner-titulo {
  letter-spacing: -.02em;
  color: #0f172a;
  text-transform: uppercase;
  margin: 0 0 6px;
  font-size: 1.75rem;
  font-style: italic;
  font-weight: 900;
  line-height: 1.08;
}

html:not([data-tema="claro"]) .visao-plataforma__banner-titulo {
  color: #f8fafc;
}

.visao-plataforma__banner-destaque {
  color: #1d4ed8;
  font-style: italic;
}

html:not([data-tema="claro"]) .visao-plataforma__banner-destaque {
  color: #3b82f6;
  text-shadow: 0 0 16px #3b82f64d;
}

.visao-plataforma__banner-descricao {
  color: #475569;
  margin: 0;
  font-size: .84rem;
  font-weight: 500;
  line-height: 1.35;
}

html:not([data-tema="claro"]) .visao-plataforma__banner-descricao {
  color: #cbd5e1;
}

.visao-plataforma__banner-direita {
  text-align: right;
  flex-direction: column;
  align-items: flex-end;
  max-width: 260px;
  margin-top: auto;
  margin-bottom: 8px;
  display: flex;
}

.visao-plataforma__banner-citacao {
  color: #fff;
  text-shadow: 0 2px 8px #000000b3;
  margin: 0;
  font-size: .95rem;
  font-style: italic;
  font-weight: 700;
  line-height: 1.3;
}

.visao-plataforma__banner-traco-citacao {
  background: #06b6d4;
  border-radius: 2px;
  width: 32px;
  height: 3px;
  margin-top: 6px;
  display: block;
  box-shadow: 0 0 8px #06b6d499;
}

.visao-plataforma .grid-stats-3d {
  z-index: 1;
  margin-top: 0;
  margin-bottom: 0;
  position: relative;
}

:is(.visao-plataforma__banner-wrap + .grid-stats-3d, .visao-plataforma:has(.visao-plataforma__banner-wrap) .grid-stats-3d) {
  z-index: 10;
  margin-top: -30px;
  margin-bottom: 24px;
  position: relative;
}

.visao-plataforma .card-stat-3d {
  box-shadow: 0 10px 25px -5px #0000001f, 0 6px 12px -4px #00000014;
}

html:not([data-tema="claro"]) .visao-plataforma .card-stat-3d {
  box-shadow: 0 12px 30px -4px #0009, 0 4px 10px -2px #00000059;
}

@media (max-width: 768px) {
  .visao-plataforma__banner-wrap {
    height: auto;
    min-height: 250px;
  }

  .visao-plataforma__banner-conteudo {
    flex-direction: column;
    align-items: flex-start;
    padding: 16px 20px 48px;
  }

  .visao-plataforma__banner-direita {
    text-align: left;
    align-items: flex-start;
    margin-top: 12px;
  }

  :is(.visao-plataforma__banner-wrap + .grid-stats-3d, .visao-plataforma:has(.visao-plataforma__banner-wrap) .grid-stats-3d) {
    margin-top: -18px;
  }

  .conteudo:has(.visao-plataforma__banner-wrap) .grid-stats-3d {
    padding-left: var(--esp-4);
    padding-right: var(--esp-4);
  }

  .conteudo:has(.visao-plataforma__banner-wrap) .atalhos {
    padding-left: var(--esp-4);
    padding-right: var(--esp-4);
  }

  .conteudo:has(.visao-plataforma__banner-wrap) > .pilha > .alerta {
    padding-left: var(--esp-4);
    padding-right: var(--esp-4);
  }

  .conteudo:has(.visao-plataforma__banner-wrap) > .pilha > .alerta-erro {
    padding-left: var(--esp-4);
    padding-right: var(--esp-4);
  }

  .conteudo:has(.visao-plataforma__banner-wrap) > .alerta {
    padding-left: var(--esp-4);
    padding-right: var(--esp-4);
  }

  .conteudo:has(.visao-plataforma__banner-wrap) > .alerta-erro {
    padding-left: var(--esp-4);
    padding-right: var(--esp-4);
  }

  .conteudo:has(.visao-plataforma__banner-wrap) > .pilha > .card {
    width: calc(100% - (2 * var(--esp-4)));
    max-width: calc(100% - (2 * var(--esp-4)));
  }
}

.barra-filtros {
  background: var(--cor-superficie-2);
  border: 1px solid var(--cor-borda);
  border-radius: 8px;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  margin-bottom: 0;
  padding: 6px 12px;
  display: flex;
}

html:not([data-tema="claro"]) .barra-filtros {
  background: #141c28;
  border-color: #ffffff14;
}

.barra-filtros__busca {
  flex: 1;
  align-items: center;
  min-width: 240px;
  max-width: 380px;
  display: flex;
  position: relative;
}

.barra-filtros__busca-icone {
  color: var(--cor-texto-suave);
  pointer-events: none;
  justify-content: center;
  align-items: center;
  display: flex;
  position: absolute;
  left: 10px;
}

.barra-filtros__busca-input {
  border: 1px solid var(--cor-borda);
  background: var(--cor-superficie);
  width: 100%;
  height: 32px;
  color: var(--cor-texto);
  border-radius: 6px;
  outline: none;
  padding: 0 30px 0 32px;
  font-size: .84rem;
  transition: border-color .18s, box-shadow .18s;
}

html:not([data-tema="claro"]) .barra-filtros__busca-input {
  background: #182232;
  border-color: #ffffff1f;
}

.barra-filtros__busca-input:focus {
  border-color: var(--cor-primaria);
  box-shadow: 0 0 0 3px #3b82f626;
}

.barra-filtros__busca-limpar {
  color: var(--cor-texto-suave);
  cursor: pointer;
  background: none;
  border: none;
  border-radius: 4px;
  padding: 2px 4px;
  font-size: 15px;
  position: absolute;
  right: 8px;
}

.barra-filtros__busca-limpar:hover {
  color: var(--cor-texto);
}

.barra-filtros__acoes {
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  display: flex;
}

.alternador-visao {
  background: var(--cor-superficie);
  border: 1px solid var(--cor-borda);
  box-sizing: border-box;
  border-radius: 7px;
  align-items: center;
  gap: 2px;
  height: 32px;
  padding: 2px;
  display: inline-flex;
}

html:not([data-tema="claro"]) .alternador-visao {
  background: #182232;
  border-color: #ffffff1f;
}

.alternador-visao__btn {
  width: 28px;
  height: 26px;
  color: var(--cor-texto-suave);
  cursor: pointer;
  background: none;
  border: none;
  border-radius: 5px;
  justify-content: center;
  align-items: center;
  padding: 0;
  transition: all .15s;
  display: inline-flex;
}

.alternador-visao__btn:hover {
  color: var(--cor-texto);
  background: #0000000a;
}

html:not([data-tema="claro"]) .alternador-visao__btn:hover {
  color: #f1f5f9;
  background: #ffffff0f;
}

.alternador-visao__btn--ativo {
  box-shadow: 0 1px 2px #0000000f;
  background: var(--cor-superficie-2) !important;
  color: var(--cor-primaria) !important;
}

html:not([data-tema="claro"]) .alternador-visao__btn--ativo {
  border: 1px solid #3b82f64d;
  color: #60a5fa !important;
  background: #1871fe33 !important;
}

.filtro-pilula-container {
  position: relative;
}

.filtro-pilula-btn {
  background: var(--cor-superficie);
  border: 1px solid var(--cor-borda);
  height: 32px;
  color: var(--cor-texto);
  cursor: pointer;
  -webkit-user-select: none;
  user-select: none;
  border-radius: 6px;
  align-items: center;
  gap: 6px;
  padding: 0 12px;
  font-size: .82rem;
  font-weight: 400;
  transition: all .16s;
  display: inline-flex;
}

html:not([data-tema="claro"]) .filtro-pilula-btn {
  background: #182232;
  border-color: #ffffff1f;
}

.filtro-pilula-btn:hover {
  border-color: var(--cor-borda-forte);
  background: #00000008;
}

html:not([data-tema="claro"]) .filtro-pilula-btn:hover {
  background: #ffffff12;
  border-color: #fff3;
}

.filtro-pilula-btn--aberto {
  box-shadow: 0 0 0 2px #3b82f626;
  border-color: var(--cor-primaria) !important;
}

.filtro-pilula-btn__rotulo {
  color: var(--cor-texto-suave);
  font-weight: 400;
}

.filtro-pilula-btn__valor {
  color: var(--cor-texto);
  font-weight: 400;
}

.filtro-pilula-btn__chevron {
  color: var(--cor-texto-suave);
  transition: transform .2s;
}

.filtro-pilula-btn__chevron.girado {
  transform: rotate(180deg);
}

.filtro-popover {
  z-index: 50;
  background: var(--cor-superficie);
  border: 1px solid var(--cor-borda);
  border-radius: 10px;
  min-width: 190px;
  padding: 6px;
  animation: .15s ease-out popoverFadeIn;
  position: absolute;
  top: calc(100% + 6px);
  right: 0;
  box-shadow: 0 10px 25px -5px #00000026, 0 8px 10px -6px #0000001a;
}

html:not([data-tema="claro"]) .filtro-popover {
  background: #1a2332;
  border-color: #ffffff1f;
  box-shadow: 0 12px 30px -4px #0009;
}

.filtro-popover--ordenacao {
  min-width: 220px;
}

.filtro-popover__busca-wrapper {
  align-items: center;
  margin: 4px 4px 8px;
  display: flex;
  position: relative;
}

.filtro-popover__busca-icone {
  color: var(--cor-texto-suave);
  pointer-events: none;
  position: absolute;
  left: 10px;
}

.filtro-popover__busca-input {
  border: 1px solid var(--cor-borda);
  background: var(--cor-superficie-2);
  width: 100%;
  height: 32px;
  color: var(--cor-texto);
  border-radius: 6px;
  outline: none;
  padding: 0 10px 0 30px;
  font-size: .8rem;
  transition: border-color .15s;
}

html:not([data-tema="claro"]) .filtro-popover__busca-input {
  background: #ffffff0d;
  border-color: #ffffff1a;
}

.filtro-popover__busca-input:focus {
  border-color: var(--cor-primaria);
}

.filtro-popover__lista {
  max-height: 240px;
  margin: 0;
  padding: 0;
  list-style: none;
  overflow-y: auto;
}

.filtro-popover__item {
  width: 100%;
  color: var(--cor-texto);
  cursor: pointer;
  text-align: left;
  background: none;
  border: none;
  border-radius: 6px;
  justify-content: space-between;
  align-items: center;
  padding: 8px 12px;
  font-size: .84rem;
  font-weight: 500;
  transition: background .15s;
  display: flex;
}

.filtro-popover__item:hover {
  background: var(--cor-superficie-2);
}

html:not([data-tema="claro"]) .filtro-popover__item:hover {
  background: #ffffff0f;
}

.filtro-popover__item--ativo {
  color: #0b6a8a !important;
  background: #def2f8 !important;
  font-weight: 600 !important;
}

html:not([data-tema="claro"]) .filtro-popover__item--ativo {
  color: #38bdf8 !important;
  background: #0ea5e938 !important;
}

.filtro-popover__check {
  color: inherit;
  flex-shrink: 0;
}

.filtro-popover__divisor-topo {
  border-top: 1px solid var(--cor-borda);
  margin-top: 4px;
  padding-top: 4px;
}

html:not([data-tema="claro"]) .filtro-popover__divisor-topo {
  border-color: #ffffff14;
}

.filtro-popover__vazio {
  color: var(--cor-texto-suave);
  text-align: center;
  padding: 12px;
  font-size: .8rem;
}

@keyframes popoverFadeIn {
  from {
    opacity: 0;
    transform: translateY(-4px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.select-customizado-container {
  width: 100%;
  position: relative;
}

.select-customizado__trigger {
  width: 100%;
  min-height: 38px;
  padding: var(--esp-2) var(--esp-3);
  background: var(--cor-superficie);
  border: 1px solid var(--cor-borda-forte);
  border-radius: var(--raio);
  color: var(--cor-texto);
  font: inherit;
  font-size: var(--texto-sm);
  text-align: left;
  cursor: pointer;
  -webkit-user-select: none;
  user-select: none;
  justify-content: space-between;
  align-items: center;
  transition: border-color .16s, box-shadow .16s, background-color .16s;
  display: flex;
}

.select-customizado__trigger:hover:not(:disabled) {
  border-color: var(--cor-primaria);
}

.select-customizado__trigger:focus-visible, .select-customizado__trigger--aberto {
  border-color: var(--cor-primaria);
  outline: none;
  box-shadow: 0 0 0 3px #1f5fbf2e;
}

html:not([data-tema="claro"]) .select-customizado__trigger--aberto {
  box-shadow: 0 0 0 3px #5b9bff40;
}

.select-customizado__trigger--erro {
  border-color: var(--cor-perigo) !important;
}

.select-customizado__trigger--erro:focus-visible, .select-customizado__trigger--erro.select-customizado__trigger--aberto {
  box-shadow: 0 0 0 3px #c6282833 !important;
}

.select-customizado__trigger:disabled {
  background: var(--cor-superficie-2);
  color: var(--cor-texto-suave);
  cursor: not-allowed;
  opacity: .7;
}

.select-customizado__conteudo-trigger {
  align-items: center;
  gap: 8px;
  min-width: 0;
  display: inline-flex;
  overflow: hidden;
}

.select-customizado__texto-trigger {
  text-overflow: ellipsis;
  white-space: nowrap;
  font-weight: 500;
  overflow: hidden;
}

.select-customizado__placeholder {
  color: var(--cor-texto-suave);
  font-weight: 400;
}

.select-customizado__chevron {
  color: var(--cor-texto-suave);
  flex-shrink: 0;
  margin-left: 8px;
  transition: transform .22s cubic-bezier(.16, 1, .3, 1), color .18s;
}

.select-customizado__chevron.girado {
  color: var(--cor-primaria);
  transform: rotate(180deg);
}

.select-customizado__popover {
  z-index: 1000;
  background: var(--cor-superficie);
  border: 1px solid var(--cor-borda);
  border-radius: 10px;
  width: 100%;
  min-width: 180px;
  padding: 5px;
  animation: .16s cubic-bezier(.16, 1, .3, 1) selectMenuFadeIn;
  position: absolute;
  top: calc(100% + 5px);
  left: 0;
  box-shadow: 0 12px 28px -4px #00000029, 0 4px 12px -2px #00000014;
}

.select-customizado__popover--cima {
  animation: .16s cubic-bezier(.16, 1, .3, 1) selectMenuFadeInCima;
  top: auto;
  bottom: calc(100% + 5px);
}

html:not([data-tema="claro"]) .select-customizado__popover {
  background: #1a2332;
  border-color: #ffffff1f;
  box-shadow: 0 16px 36px -4px #000000a6, 0 6px 16px -2px #0006;
}

@keyframes selectMenuFadeIn {
  from {
    opacity: 0;
    transform: translateY(-6px) scale(.98);
  }

  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

@keyframes selectMenuFadeInCima {
  from {
    opacity: 0;
    transform: translateY(6px) scale(.98);
  }

  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

.select-customizado__busca-wrapper {
  align-items: center;
  margin: 3px 3px 6px;
  display: flex;
  position: relative;
}

.select-customizado__busca-icone {
  color: var(--cor-texto-suave);
  pointer-events: none;
  position: absolute;
  left: 9px;
}

.select-customizado__busca-input {
  border: 1px solid var(--cor-borda);
  background: var(--cor-superficie-2);
  width: 100%;
  height: 32px;
  color: var(--cor-texto);
  border-radius: 6px;
  outline: none;
  padding: 0 10px 0 28px;
  font-size: .8rem;
  transition: border-color .15s;
}

.select-customizado__busca-input:focus {
  border-color: var(--cor-primaria);
}

html:not([data-tema="claro"]) .select-customizado__busca-input {
  background: #ffffff0d;
  border-color: #ffffff1a;
}

.select-customizado__lista {
  scrollbar-width: thin;
  scrollbar-color: #94a3b84d transparent;
  max-height: 220px;
  margin: 0;
  padding: 0;
  list-style: none;
  overflow-y: auto;
}

.select-customizado__lista::-webkit-scrollbar {
  width: 6px;
}

.select-customizado__lista::-webkit-scrollbar-track {
  background: none;
}

.select-customizado__lista::-webkit-scrollbar-thumb {
  background: #94a3b84d;
  border-radius: 9999px;
}

.select-customizado__lista::-webkit-scrollbar-thumb:hover {
  background: #94a3b880;
}

html:not([data-tema="claro"]) .select-customizado__lista {
  scrollbar-color: #ffffff2e transparent;
}

html:not([data-tema="claro"]) .select-customizado__lista::-webkit-scrollbar-thumb {
  background: #ffffff2e;
}

html:not([data-tema="claro"]) .select-customizado__lista::-webkit-scrollbar-thumb:hover {
  background: #ffffff52;
}

.select-customizado__item {
  width: 100%;
  color: var(--cor-texto);
  cursor: pointer;
  text-align: left;
  background: none;
  border: none;
  border-radius: 6px;
  justify-content: space-between;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  font-size: .86rem;
  font-weight: 500;
  transition: background .12s, color .12s;
  display: flex;
}

.select-customizado__item:hover, .select-customizado__item--focado {
  background: var(--cor-superficie-2);
}

html:not([data-tema="claro"]) .select-customizado__item:hover, html:not([data-tema="claro"]) .select-customizado__item--focado {
  background: #ffffff0f;
}

.select-customizado__item--ativo {
  color: #0b6a8a !important;
  background: #def2f8 !important;
  font-weight: 600 !important;
}

html:not([data-tema="claro"]) .select-customizado__item--ativo {
  color: #38bdf8 !important;
  background: #0ea5e938 !important;
}

.select-customizado__item-rotulo {
  align-items: center;
  gap: 8px;
  min-width: 0;
  display: inline-flex;
}

.select-customizado__item-descricao {
  color: var(--cor-texto-suave);
  margin-left: 6px;
  font-size: .75rem;
  font-weight: 400;
}

.select-customizado__check {
  color: inherit;
  flex-shrink: 0;
}

.select-customizado__vazio {
  color: var(--cor-texto-suave);
  text-align: center;
  padding: 12px;
  font-size: .8rem;
}

.select-customizado__dot {
  border-radius: 50%;
  flex-shrink: 0;
  width: 8px;
  height: 8px;
  display: inline-block;
}

.select-customizado__dot--sucesso {
  background-color: #10b981;
  box-shadow: 0 0 6px #10b98180;
}

.select-customizado__dot--alerta {
  background-color: #f59e0b;
  box-shadow: 0 0 6px #f59e0b80;
}

.select-customizado__dot--perigo {
  background-color: #ef4444;
  box-shadow: 0 0 6px #ef444480;
}

.select-customizado__dot--info {
  background-color: #0ea5e9;
  box-shadow: 0 0 6px #0ea5e980;
}

.select-customizado__dot--neutro {
  background-color: #94a3b8;
}

.modal-conf__backdrop {
  z-index: 99999;
  -webkit-backdrop-filter: blur(8px);
  background: #030712bf;
  justify-content: center;
  align-items: center;
  padding: 16px;
  animation: .2s ease-out modalConfFadeIn;
  display: flex;
  position: fixed;
  inset: 0;
}

.modal-conf__card {
  background: #fff;
  border: 1px solid #e2e8f0e6;
  border-radius: 18px;
  width: 100%;
  max-width: 460px;
  animation: .25s cubic-bezier(.16, 1, .3, 1) modalConfScaleIn;
  position: relative;
  overflow: hidden;
  box-shadow: 0 25px 60px -15px #0f172a59, 0 0 25px -5px #ef444426;
}

html:not([data-tema="claro"]) .modal-conf__card {
  background: linear-gradient(#131b2e 0%, #0d1322 100%);
  border: 1px solid #ffffff1f;
  box-shadow: 0 30px 70px -15px #000000d9, 0 0 35px -5px #ef444440;
}

.modal-conf__faixa {
  width: 100%;
  height: 4px;
}

.modal-conf__faixa--perigo {
  background: linear-gradient(90deg, #ef4444, #f43f5e, #dc2626);
}

.modal-conf__faixa--alerta {
  background: linear-gradient(90deg, #f59e0b, #fbbf24, #d97706);
}

.modal-conf__faixa--info {
  background: linear-gradient(90deg, #3b82f6, #06b6d4, #2563eb);
}

.modal-conf__conteudo {
  flex-direction: column;
  gap: 16px;
  padding: 24px;
  display: flex;
}

.modal-conf__topo {
  align-items: flex-start;
  gap: 16px;
  display: flex;
}

.modal-conf__icone-wrapper {
  border-radius: 14px;
  flex-shrink: 0;
  place-items: center;
  width: 52px;
  height: 52px;
  display: grid;
}

.modal-conf__icone-wrapper--perigo {
  color: #dc2626;
  background: #fee2e2;
  border: 1px solid #fecaca;
  box-shadow: 0 4px 14px #dc262633;
}

html:not([data-tema="claro"]) .modal-conf__icone-wrapper--perigo {
  color: #f87171;
  background: #ef444426;
  border: 1px solid #ef44444d;
  box-shadow: 0 0 20px #ef44444d;
}

.modal-conf__icone-wrapper--alerta {
  color: #d97706;
  background: #fef3c7;
  border: 1px solid #fde68a;
  box-shadow: 0 4px 14px #d9770633;
}

html:not([data-tema="claro"]) .modal-conf__icone-wrapper--alerta {
  color: #fbbf24;
  background: #f59e0b26;
  border: 1px solid #f59e0b4d;
  box-shadow: 0 0 20px #f59e0b4d;
}

.modal-conf__icone-wrapper--info {
  color: #0284c7;
  background: #e0f2fe;
  border: 1px solid #bae6fd;
  box-shadow: 0 4px 14px #0284c733;
}

html:not([data-tema="claro"]) .modal-conf__icone-wrapper--info {
  color: #60a5fa;
  background: #3b82f626;
  border: 1px solid #3b82f64d;
  box-shadow: 0 0 20px #3b82f64d;
}

.modal-conf__titulos {
  flex: 1;
  min-width: 0;
}

.modal-conf__titulo {
  color: var(--cor-texto);
  margin: 0 0 4px;
  font-size: 1.18rem;
  font-weight: 700;
  line-height: 1.3;
}

.modal-conf__subtitulo {
  color: var(--cor-texto-suave);
  margin: 0;
  font-size: .85rem;
}

.modal-conf__descricao {
  color: var(--cor-texto);
  font-size: .92rem;
  line-height: 1.5;
}

.modal-conf__item-destaque {
  background: var(--cor-superficie-2);
  border: 1px dashed var(--cor-borda-forte);
  font-family: var(--fonte-mono);
  word-break: break-all;
  color: var(--cor-texto);
  border-radius: 10px;
  align-items: center;
  gap: 10px;
  padding: 10px 14px;
  font-size: .85rem;
  display: flex;
}

.modal-conf__item-icone {
  flex-shrink: 0;
  font-size: 1rem;
}

.modal-conf__item-texto {
  font-weight: 600;
}

.modal-conf__alerta-nota {
  border-radius: 8px;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  font-size: .82rem;
  font-weight: 500;
  display: flex;
}

.modal-conf__alerta-nota--perigo {
  color: #dc2626;
  background: #ef444414;
  border-left: 3px solid #ef4444;
}

html:not([data-tema="claro"]) .modal-conf__alerta-nota--perigo {
  color: #fca5a5;
  background: #ef44441f;
}

.modal-conf__alerta-nota--alerta {
  color: #d97706;
  background: #f59e0b14;
  border-left: 3px solid #f59e0b;
}

html:not([data-tema="claro"]) .modal-conf__alerta-nota--alerta {
  color: #fde68a;
  background: #f59e0b1f;
}

.modal-conf__rodape {
  border-top: 1px solid var(--cor-borda);
  justify-content: flex-end;
  gap: 10px;
  margin-top: 6px;
  padding-top: 16px;
  display: flex;
}

html:not([data-tema="claro"]) .modal-conf__rodape {
  border-color: #ffffff14;
}

.modal-conf__btn {
  cursor: pointer;
  border: none;
  border-radius: 10px;
  align-items: center;
  gap: 8px;
  padding: 9px 18px;
  font-size: .9rem;
  font-weight: 600;
  transition: all .15s;
  display: inline-flex;
}

.modal-conf__btn--cancelar {
  background: var(--cor-superficie-2);
  color: var(--cor-texto);
  border: 1px solid var(--cor-borda);
}

.modal-conf__btn--cancelar:hover {
  background: var(--cor-borda);
}

.modal-conf__btn--confirmar.modal-conf__btn--perigo {
  color: #fff;
  background: linear-gradient(#dc2626 0%, #b91c1c 100%);
  box-shadow: 0 4px 12px #dc262659;
}

.modal-conf__btn--confirmar.modal-conf__btn--perigo:hover {
  background: linear-gradient(#ef4444 0%, #dc2626 100%);
  transform: translateY(-1px);
  box-shadow: 0 6px 18px #dc262673;
}

.modal-conf__btn--confirmar.modal-conf__btn--alerta {
  color: #fff;
  background: linear-gradient(#d97706 0%, #b45309 100%);
  box-shadow: 0 4px 12px #d9770659;
}

.modal-conf__btn--confirmar.modal-conf__btn--alerta:hover {
  background: linear-gradient(#f59e0b 0%, #d97706 100%);
  transform: translateY(-1px);
  box-shadow: 0 6px 18px #d9770673;
}

.modal-conf__btn--confirmar.modal-conf__btn--info {
  color: #fff;
  background: linear-gradient(#2563eb 0%, #1d4ed8 100%);
  box-shadow: 0 4px 12px #2563eb59;
}

.modal-conf__btn--confirmar.modal-conf__btn--info:hover {
  background: linear-gradient(#3b82f6 0%, #2563eb 100%);
  transform: translateY(-1px);
  box-shadow: 0 6px 18px #2563eb73;
}

@keyframes modalConfFadeIn {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

@keyframes modalConfScaleIn {
  from {
    opacity: 0;
    transform: scale(.94) translateY(8px);
  }

  to {
    opacity: 1;
    transform: scale(1) translateY(0);
  }
}

.empty-state {
  text-align: center;
  background-color: var(--cor-fundo-cartao);
  border: 2px dashed var(--cor-borda);
  border-radius: 1rem;
  flex-direction: column;
  align-items: center;
  width: 100%;
  max-width: 620px;
  margin: 1.5rem auto;
  padding: 3.5rem 1.5rem;
  transition: background-color .5s cubic-bezier(.16, 1, .3, 1), border-color .5s cubic-bezier(.16, 1, .3, 1), box-shadow .5s cubic-bezier(.16, 1, .3, 1);
  display: flex;
  box-shadow: 0 4px 20px -2px #0000000a;
}

.empty-state:hover {
  background-color: var(--cor-fundo-alt);
  border-color: var(--cor-borda-forte);
  transition-duration: .2s;
  box-shadow: 0 10px 30px -4px #00000014;
}

.empty-state__icons {
  isolation: isolate;
  justify-content: center;
  align-items: center;
  margin-bottom: .5rem;
  display: flex;
  position: relative;
}

.empty-state__icon-box {
  background-color: var(--cor-fundo-cartao);
  border: 1px solid var(--cor-borda);
  width: 3.25rem;
  height: 3.25rem;
  color: var(--cor-texto-suave);
  border-radius: .85rem;
  place-items: center;
  transition: transform .5s cubic-bezier(.16, 1, .3, 1), box-shadow .5s, color .3s;
  display: grid;
  box-shadow: 0 10px 15px -3px #0000001f, 0 4px 6px -4px #00000014;
}

.empty-state:hover .empty-state__icon-box {
  color: var(--cor-primaria);
  transition-duration: .2s;
  box-shadow: 0 14px 24px -3px #0000002e, 0 6px 10px -4px #0000001a;
}

.empty-state__icon-box--left {
  z-index: 1;
  position: relative;
  top: .375rem;
  left: .625rem;
  transform: rotate(-6deg);
}

.empty-state:hover .empty-state__icon-box--left {
  transform: translateX(-1.25rem) rotate(-12deg) translateY(-.125rem);
}

.empty-state__icon-box--center {
  z-index: 10;
  position: relative;
  transform: translateY(0);
}

.empty-state:hover .empty-state__icon-box--center {
  transform: translateY(-.125rem);
}

.empty-state__icon-box--right {
  z-index: 1;
  position: relative;
  top: .375rem;
  right: .625rem;
  transform: rotate(6deg);
}

.empty-state:hover .empty-state__icon-box--right {
  transform: translateX(1.25rem) rotate(12deg) translateY(-.125rem);
}

.empty-state__icon-box--single {
  transform: translateY(0);
}

.empty-state:hover .empty-state__icon-box--single {
  transform: translateY(-.125rem);
}

.empty-state__title {
  color: var(--cor-texto);
  margin-top: 1.25rem;
  margin-bottom: .35rem;
  font-size: 1.1rem;
  font-weight: 600;
}

.empty-state__description {
  color: var(--cor-texto-suave);
  white-space: pre-line;
  max-width: 480px;
  margin-top: .25rem;
  font-size: .875rem;
  line-height: 1.5;
}

.empty-state__action {
  margin-top: 1.25rem;
}

.vazio {
  text-align: center;
  background-color: var(--cor-fundo-cartao);
  border: 2px dashed var(--cor-borda);
  width: 100%;
  max-width: 620px;
  color: var(--cor-texto-suave);
  border-radius: 1rem;
  flex-direction: column;
  align-items: center;
  margin: 1.5rem auto;
  padding: 3rem 1.5rem;
  display: flex;
}

.vazio__titulo {
  color: var(--cor-texto);
  margin-bottom: .35rem;
  font-size: 1.1rem;
  font-weight: 600;
}

.vazio__descricao {
  color: var(--cor-texto-suave);
  margin-bottom: 1rem;
  font-size: .875rem;
  line-height: 1.5;
}

.vazio__acao {
  margin-top: .5rem;
}

.badge-nome-tela {
  color: #b91c1c;
  margin-bottom: var(--esp-2);
  -webkit-user-select: none;
  user-select: none;
  background-color: #ef444414;
  border: 1px solid #ef444440;
  border-radius: 9999px;
  align-items: center;
  gap: 6px;
  width: fit-content;
  padding: 3px 10px 3px 8px;
  font-size: 11.5px;
  line-height: 1;
  transition: all .2s cubic-bezier(.16, 1, .3, 1);
  display: inline-flex;
  box-shadow: 0 1px 2px #dc26260f;
}

[data-tema="escuro"] .badge-nome-tela {
  color: #f87171;
  background-color: #ef444424;
  border-color: #ef444461;
  box-shadow: 0 1px 3px #0000004d;
}

.badge-nome-tela__dot {
  background-color: #dc2626;
  border-radius: 50%;
  flex-shrink: 0;
  width: 6px;
  height: 6px;
}

[data-tema="escuro"] .badge-nome-tela__dot {
  background-color: #ef4444;
  box-shadow: 0 0 6px #ef444499;
}

.badge-nome-tela__label {
  color: #b91c1c;
  font-weight: 600;
}

[data-tema="escuro"] .badge-nome-tela__label {
  color: #fca5a5;
}

.badge-nome-tela__valor {
  font-family: var(--fonte-mono, monospace);
  color: #991b1b;
  letter-spacing: -.01em;
  font-weight: 700;
}

[data-tema="escuro"] .badge-nome-tela__valor {
  color: #fecaca;
}

.badge-nome-tela__copiar {
  cursor: pointer;
  color: #dc2626;
  background: none;
  border: none;
  border-radius: 4px;
  justify-content: center;
  align-items: center;
  margin-left: 2px;
  padding: 2px;
  transition: all .15s;
  display: inline-flex;
}

.badge-nome-tela__copiar:hover {
  color: #991b1b;
  background-color: #ef444426;
  transform: scale(1.1);
}

[data-tema="escuro"] .badge-nome-tela__copiar {
  color: #f87171;
}

[data-tema="escuro"] .badge-nome-tela__copiar:hover {
  color: #fff;
  background-color: #ef44444d;
}

.badge-nome-tela__copiar--copiado {
  color: #10b981 !important;
}

.badge-nome-tela__icone {
  width: 12px;
  height: 12px;
}

.cockpit-pagina {
  gap: var(--esp-4);
  flex-direction: column;
  width: 100%;
  display: flex;
}

.cockpit-layout {
  align-items: start;
  gap: var(--esp-4);
  grid-template-columns: 260px 1fr;
  display: grid;
}

@media (max-width: 900px) {
  .cockpit-layout {
    grid-template-columns: 1fr;
  }
}

.cockpit-nav {
  top: calc(var(--altura-cabecalho) + 16px);
  padding: var(--esp-2);
  background-color: var(--cor-superficie);
  border: 1px solid var(--cor-borda);
  border-radius: var(--raio-lg);
  box-shadow: var(--sombra);
  z-index: 10;
  flex-direction: column;
  gap: 4px;
  display: flex;
  position: sticky;
}

.cockpit-nav__item {
  align-items: flex-start;
  gap: var(--esp-3);
  padding: var(--esp-2) var(--esp-3);
  border-radius: var(--raio);
  color: var(--cor-texto-suave);
  text-align: left;
  cursor: pointer;
  background: none;
  border: none;
  border-left: 3px solid #0000;
  transition: all .15s;
  display: flex;
}

.cockpit-nav__item:hover {
  background-color: var(--cor-superficie-2);
  color: var(--cor-texto);
}

.cockpit-nav__item--ativo {
  background-color: var(--cor-superficie-2);
  color: var(--cor-primaria);
  border-left-color: var(--cor-primaria);
  font-weight: 600;
}

.cockpit-nav__icone {
  flex-shrink: 0;
  width: 18px;
  height: 18px;
  margin-top: 2px;
}

.cockpit-nav__item--ativo .cockpit-nav__icone {
  color: var(--cor-primaria);
}

.cockpit-nav__item-texto {
  flex-direction: column;
  gap: 1px;
  display: flex;
}

.cockpit-nav__item-titulo {
  font-size: var(--texto-sm);
  font-weight: 600;
}

.cockpit-nav__item-desc {
  font-size: var(--texto-xs);
  color: var(--cor-texto-suave);
  font-weight: normal;
}

.cockpit-conteudo {
  background-color: var(--cor-superficie);
  border: 1px solid var(--cor-borda);
  border-radius: var(--raio-lg);
  min-height: 460px;
  padding: var(--esp-5);
  box-shadow: var(--sombra);
  scroll-margin-top: calc(var(--altura-cabecalho) + 20px);
}

.cockpit-secao {
  gap: var(--esp-4);
  flex-direction: column;
  display: flex;
}

.cockpit-secao__cabecalho {
  padding-bottom: var(--esp-3);
  border-bottom: 1px solid var(--cor-borda);
}

.cockpit-secao__titulo-icone {
  align-items: center;
  gap: var(--esp-2);
  display: flex;
}

.cockpit-secao__icone {
  width: 20px;
  height: 20px;
  color: var(--cor-primaria);
}

.cockpit-secao__titulo {
  font-size: var(--texto-lg);
  color: var(--cor-texto);
  font-weight: 700;
}

.cockpit-secao__descricao {
  font-size: var(--texto-sm);
  color: var(--cor-texto-suave);
  margin-top: 4px;
  line-height: 1.5;
}

.cockpit-bloco {
  gap: var(--esp-4);
  flex-direction: column;
  display: flex;
}

.cockpit-categoria {
  gap: var(--esp-3);
  margin-bottom: var(--esp-2);
  flex-direction: column;
  display: flex;
}

.cockpit-categoria__cabecalho {
  align-items: center;
  gap: var(--esp-3);
  padding-top: var(--esp-2);
  display: flex;
}

.cockpit-categoria__titulo {
  font-size: var(--texto-xs);
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--cor-texto-suave);
  white-space: nowrap;
  margin: 0;
  font-weight: 700;
}

.cockpit-categoria__linha {
  background-color: var(--cor-borda);
  flex: 1;
  height: 1px;
}

.cockpit-categoria__itens {
  gap: var(--esp-3);
  flex-direction: column;
  display: flex;
}

.cockpit-item-config {
  justify-content: space-between;
  align-items: center;
  gap: var(--esp-4);
  border: 1px solid var(--cor-borda);
  border-radius: var(--raio);
  background-color: var(--cor-superficie-2);
  padding: 10px 18px;
  transition: all .2s cubic-bezier(.16, 1, .3, 1);
  display: flex;
  box-shadow: 0 1px 2px #00000005;
}

.cockpit-item-config:hover {
  border-color: var(--cor-borda-forte);
  box-shadow: 0 2px 6px #00000008;
}

.cockpit-item-config--alterado {
  background-color: var(--cor-superficie);
  border-color: #1871fe73;
  box-shadow: 0 0 0 1px #1871fe33, 0 3px 10px #1871fe0f;
}

html[data-tema="escuro"] .cockpit-item-config--alterado, html:not([data-tema="claro"]) .cockpit-item-config--alterado {
  background-color: #171d24;
  border-color: #5b9bff73;
  box-shadow: 0 0 0 1px #5b9bff40, 0 3px 10px #00000040;
}

.cockpit-item-config__info {
  flex-direction: column;
  flex: 1;
  gap: 3px;
  min-width: 0;
  display: flex;
}

.cockpit-item-config__titulo-wrap {
  align-items: center;
  gap: var(--esp-2);
  flex-wrap: wrap;
  display: flex;
}

.cockpit-item-config__titulo {
  color: var(--cor-texto);
  font-size: .9rem;
  font-weight: 600;
  line-height: 1.25;
}

.cockpit-item-config__descricao {
  color: var(--cor-texto-suave);
  margin: 0;
  font-size: .76rem;
  line-height: 1.4;
}

.cockpit-item-config__meta {
  color: var(--cor-texto-suave);
  margin-top: 1px;
  font-size: .7rem;
  line-height: 1.35;
}

.cockpit-item-config__controle {
  flex-shrink: 0;
  justify-content: flex-end;
  align-items: center;
  gap: 8px;
  display: flex;
}

.cockpit-controle-switch {
  align-items: center;
  height: 28px;
  padding: 0 2px;
  display: inline-flex;
}

.cockpit-controle-numero-wrap {
  flex-direction: column;
  align-items: flex-end;
  display: flex;
  position: relative;
}

.cockpit-campo-numero {
  border: 1px solid var(--cor-borda-forte);
  border-radius: var(--raio-sm);
  background-color: var(--cor-superficie);
  box-sizing: border-box;
  align-items: center;
  height: 28px;
  transition: all .2s cubic-bezier(.16, 1, .3, 1);
  display: inline-flex;
  overflow: hidden;
  box-shadow: 0 1px 2px #00000008;
}

.cockpit-campo-numero:hover:not(:has(:disabled)) {
  border-color: var(--cor-texto-suave);
}

.cockpit-campo-numero:focus-within {
  border-color: var(--cor-foco);
  box-shadow: 0 0 0 2px var(--cor-primaria-suave);
}

.cockpit-campo-numero--erro {
  border-color: var(--cor-perigo) !important;
  box-shadow: 0 0 0 2px var(--cor-perigo-suave) !important;
}

.cockpit-campo-numero__input {
  width: 44px;
  height: 100%;
  color: var(--cor-texto);
  text-align: center;
  -moz-appearance: textfield;
  background: none;
  border: none;
  outline: none;
  padding: 0 4px;
  font-family: inherit;
  font-size: .84rem;
  font-weight: 600;
}

.cockpit-campo-numero__input::-webkit-outer-spin-button {
  opacity: .6;
}

.cockpit-campo-numero__input::-webkit-inner-spin-button {
  opacity: .6;
}

.cockpit-campo-numero__input:disabled {
  background-color: var(--cor-superficie-2);
  color: var(--cor-texto-suave);
  cursor: not-allowed;
}

.cockpit-campo-numero__unidade {
  height: 100%;
  color: var(--cor-texto-suave);
  background-color: var(--cor-superficie-2);
  border-left: 1px solid var(--cor-borda);
  -webkit-user-select: none;
  user-select: none;
  white-space: nowrap;
  align-items: center;
  padding: 0 8px;
  font-size: .7rem;
  font-weight: 600;
  display: inline-flex;
}

.cockpit-campo-numero__aviso {
  color: var(--cor-perigo);
  white-space: nowrap;
  margin-top: 2px;
  font-size: .68rem;
  font-weight: 600;
  position: absolute;
  top: 100%;
  right: 0;
}

.cockpit-item-config__acoes {
  align-items: center;
  gap: 6px;
  display: inline-flex;
}

.cockpit-btn-acao {
  border-radius: var(--raio-sm) !important;
  box-sizing: border-box !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 5px !important;
  height: 28px !important;
  min-height: 28px !important;
  padding: 0 10px !important;
  font-size: .76rem !important;
  font-weight: 600 !important;
  transition: all .2s cubic-bezier(.16, 1, .3, 1) !important;
  display: inline-flex !important;
}

.cockpit-btn-salvar:disabled {
  opacity: .45 !important;
  background-color: var(--cor-superficie-2) !important;
  border: 1px solid var(--cor-borda) !important;
  color: var(--cor-texto-suave) !important;
  cursor: not-allowed !important;
  box-shadow: none !important;
}

.cockpit-btn-salvar--ativo {
  background: var(--cor-primaria) !important;
  color: var(--cor-primaria-texto) !important;
  border: 1px solid #0000 !important;
  box-shadow: 0 2px 8px #1871fe4d !important;
}

.cockpit-btn-salvar--ativo:hover:not(:disabled) {
  transform: translateY(-1px);
  background: var(--cor-primaria-hover) !important;
  box-shadow: 0 4px 12px #1871fe66 !important;
}

.cockpit-btn-descartar {
  border: 1px solid var(--cor-borda-forte) !important;
  background-color: var(--cor-superficie) !important;
  color: var(--cor-texto-suave) !important;
}

.cockpit-btn-descartar:hover {
  background-color: var(--cor-superficie-2) !important;
  color: var(--cor-texto) !important;
  border-color: var(--cor-texto-suave) !important;
}

.cockpit-btn-padrao {
  color: var(--cor-primaria) !important;
  background-color: #0000 !important;
}

.cockpit-btn-padrao:hover {
  background-color: var(--cor-primaria-suave) !important;
}

@media (max-width: 860px) {
  .cockpit-item-config {
    align-items: stretch;
    gap: var(--esp-3);
    flex-direction: column;
  }

  .cockpit-item-config__controle {
    justify-content: space-between;
    width: 100%;
  }
}

.switch-container {
  cursor: pointer;
  -webkit-user-select: none;
  user-select: none;
  vertical-align: middle;
  align-items: center;
  gap: 8px;
  display: inline-flex;
}

.switch-container--desabilitado {
  opacity: .45;
  cursor: not-allowed;
  pointer-events: none;
}

.switch {
  background-color: var(--cor-borda);
  border: 1px solid var(--cor-borda-forte);
  cursor: pointer;
  border-radius: 9999px;
  outline: none;
  flex-shrink: 0;
  align-items: center;
  width: 40px;
  height: 22px;
  padding: 2px;
  transition: background-color .2s cubic-bezier(.16, 1, .3, 1), border-color .2s, box-shadow .2s;
  display: inline-flex;
  position: relative;
}

.switch:hover:not(:disabled) {
  border-color: var(--cor-texto-suave);
}

.switch:focus-visible {
  box-shadow: 0 0 0 2px var(--cor-foco);
}

.switch--ativo {
  background-color: #10b981;
  border-color: #059669;
}

.switch__knob {
  background-color: #fff;
  border-radius: 50%;
  width: 16px;
  height: 16px;
  transition: transform .2s cubic-bezier(.16, 1, .3, 1);
  display: block;
  transform: translateX(0);
  box-shadow: 0 1px 3px #00000040;
}

.switch--ativo .switch__knob {
  transform: translateX(18px);
}

.switch--sm {
  width: 36px;
  height: 20px;
  padding: 2px;
}

.switch--sm .switch__knob {
  width: 14px;
  height: 14px;
}

.switch--sm.switch--ativo .switch__knob {
  transform: translateX(16px);
}

.switch__rotulo {
  color: var(--cor-texto-suave);
  letter-spacing: .04em;
  text-transform: uppercase;
  font-size: .72rem;
  font-weight: 700;
  line-height: 1;
}

.switch__rotulo--ativo {
  color: #10b981;
}

html[data-tema="escuro"] .switch, html:not([data-tema="claro"]) .switch {
  background-color: #334155;
  border-color: #475569;
}

html[data-tema="escuro"] .switch--ativo, html:not([data-tema="claro"]) .switch--ativo {
  background-color: #10b981;
  border-color: #34d399;
}

html[data-tema="escuro"] .switch__rotulo--ativo, html:not([data-tema="claro"]) .switch__rotulo--ativo {
  color: #34d399;
}

.cockpit-switch {
  background-color: var(--cor-borda);
  cursor: pointer;
  border: none;
  border-radius: 9999px;
  flex-shrink: 0;
  width: 44px;
  height: 24px;
  padding: 2px;
  transition: background-color .25s cubic-bezier(.16, 1, .3, 1);
  position: relative;
}

.cockpit-switch--ativo {
  background-color: var(--cor-perigo);
}

.cockpit-switch__knob {
  background-color: #fff;
  border-radius: 50%;
  width: 20px;
  height: 20px;
  transition: transform .25s cubic-bezier(.16, 1, .3, 1);
  display: block;
  transform: translateX(0);
  box-shadow: 0 1px 3px #0000004d;
}

.cockpit-switch--ativo .cockpit-switch__knob {
  transform: translateX(20px);
}

.cockpit-preview-card {
  border: 1px solid var(--cor-borda);
  border-radius: var(--raio);
  background-color: var(--cor-fundo);
  flex-direction: column;
  display: flex;
  overflow: hidden;
}

.cockpit-preview-card__topo {
  padding: var(--esp-2) var(--esp-3);
  background-color: var(--cor-superficie-2);
  border-bottom: 1px solid var(--cor-borda);
  font-size: var(--texto-xs);
  justify-content: space-between;
  align-items: center;
  display: flex;
}

.cockpit-preview-card__titulo {
  color: var(--cor-texto-suave);
  font-weight: 600;
}

.cockpit-status-online {
  color: var(--cor-perigo);
  font-weight: 600;
}

.cockpit-status-offline {
  color: var(--cor-texto-suave);
}

.cockpit-preview-card__palco {
  padding: var(--esp-4);
  align-items: flex-start;
  gap: var(--esp-1);
  flex-direction: column;
  display: flex;
}

.cockpit-preview-card__mock-header {
  flex-direction: column;
  gap: 2px;
  margin-top: 2px;
  display: flex;
}

.cockpit-preview-card__mock-titulo {
  font-size: var(--texto-lg);
  color: var(--cor-texto);
  align-items: center;
  gap: var(--esp-2);
  font-weight: 700;
  display: flex;
}

.cockpit-preview-card__mock-badge {
  background-color: var(--cor-superficie-2);
  border: 1px solid var(--cor-borda);
  color: var(--cor-texto-suave);
  border-radius: 9999px;
  padding: 2px 7px;
  font-size: 11px;
  font-weight: normal;
}

.cockpit-preview-card__mock-desc {
  font-size: var(--texto-sm);
  color: var(--cor-texto-suave);
}

.cockpit-card-util {
  justify-content: space-between;
  align-items: center;
  gap: var(--esp-3);
  padding: var(--esp-3) var(--esp-4);
  background-color: var(--cor-superficie-2);
  border: 1px dashed var(--cor-borda);
  border-radius: var(--raio);
  flex-wrap: wrap;
  display: flex;
}

.cockpit-card-util__titulo {
  font-size: var(--texto-xs);
  text-transform: uppercase;
  letter-spacing: .05em;
  color: var(--cor-texto-suave);
  font-weight: 600;
}

.cockpit-card-util__acoes {
  gap: var(--esp-2);
  display: flex;
}

.cockpit-info-card {
  gap: var(--esp-3);
  padding: var(--esp-4);
  border: 1px solid var(--cor-borda);
  border-radius: var(--raio);
  background-color: var(--cor-superficie-2);
  flex-direction: column;
  display: flex;
}

.cockpit-info-card__titulo {
  font-size: var(--texto-base);
  color: var(--cor-texto);
  font-weight: 600;
}

.cockpit-info-card__desc {
  font-size: var(--texto-sm);
  color: var(--cor-texto-suave);
  line-height: 1.5;
}

.cockpit-info-card__acoes {
  margin-top: var(--esp-2);
}

.cockpit-info-grid {
  gap: var(--esp-3);
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  display: grid;
}

.cockpit-info-grid__label {
  font-size: var(--texto-xs);
  color: var(--cor-texto-suave);
  display: block;
}

.cockpit-info-grid__valor {
  font-size: var(--texto-sm);
  color: var(--cor-texto);
}

.card-titulo-com-slashes {
  color: var(--cor-texto);
  letter-spacing: -.01em;
  align-items: center;
  gap: 10px;
  font-size: 1.22rem;
  display: inline-flex;
  font-weight: 400 !important;
}

.card-titulo-com-slashes--sem-negrito {
  font-weight: 400 !important;
}

.card-titulo-com-slashes--negrito {
  font-weight: 700;
}

.tela-bpo-detalhe .card__titulo, .tela-bpo-detalhe .card-titulo-com-slashes, .tela-bpo-novo .card__titulo, .tela-bpo-novo .card-titulo-com-slashes {
  font-weight: 400 !important;
}

.slashes-azul {
  align-items: center;
  gap: 4px;
  display: inline-flex;
}

.slashes-azul__barra {
  background: #2563eb;
  border-radius: 2px;
  width: 6.5px;
  height: 18px;
  transform: skewX(-20deg);
}

.tabela-bpos-recentes {
  border-collapse: separate;
  border-spacing: 0;
  width: 100%;
}

.tabela-bpos-recentes thead tr {
  background: #f8fafc;
}

html:not([data-tema="claro"]) .tabela-bpos-recentes thead tr {
  background: #ffffff0a;
}

.tabela-bpos-recentes th {
  letter-spacing: .06em;
  text-transform: uppercase;
  color: #475569;
  border: none;
  padding: 7px 10px;
  font-size: .72rem;
  font-weight: 700;
}

html:not([data-tema="claro"]) .tabela-bpos-recentes th {
  color: #94a3b8;
}

.tabela-bpos-recentes th:first-child {
  border-top-left-radius: 8px;
  border-bottom-left-radius: 8px;
}

.tabela-bpos-recentes th:last-child {
  border-top-right-radius: 8px;
  border-bottom-right-radius: 8px;
}

.tabela-bpos-recentes td {
  vertical-align: middle;
  border-bottom: 1px solid #e2e8f0b3;
  padding: 7px 10px;
}

html:not([data-tema="claro"]) .tabela-bpos-recentes td {
  border-bottom: 1px solid #ffffff0f;
}

.tabela-bpos-recentes tbody tr:last-child td {
  border-bottom: none;
}

.tabela-bpos-recentes tbody tr {
  transition: background-color .15s;
}

.tabela-bpos-recentes tbody tr:hover {
  background-color: #f8fafc99;
}

html:not([data-tema="claro"]) .tabela-bpos-recentes tbody tr:hover {
  background-color: #ffffff05;
}

.tabela-bpos-recentes__nome {
  color: var(--cor-texto);
  font-size: .88rem;
  font-weight: 600;
  text-decoration: none;
  transition: color .15s;
}

.tabela-bpos-recentes__nome:hover {
  color: #2563eb;
}

.badge-status-bpo {
  white-space: nowrap;
  border-radius: 9999px;
  justify-content: center;
  align-items: center;
  padding: 2px 10px;
  font-size: .76rem;
  font-weight: 500;
  line-height: 1.3;
  display: inline-flex;
}

.badge-status-bpo--ativo {
  color: #15803d;
  background: #dcfce7;
}

html:not([data-tema="claro"]) .badge-status-bpo--ativo {
  color: #4ade80;
  background: #22c55e2e;
}

.badge-status-bpo--suspenso {
  color: #b91c1c;
  background: #fee2e2;
}

html:not([data-tema="claro"]) .badge-status-bpo--suspenso {
  color: #f87171;
  background: #ef44442e;
}

.badge-status-bpo--cancelado {
  color: #64748b;
  background: #f1f5f9;
}

html:not([data-tema="claro"]) .badge-status-bpo--cancelado {
  color: #94a3b8;
  background: #ffffff14;
}

.tabela-bpos-recentes__numero {
  color: var(--cor-texto);
  font-size: .9rem;
  font-weight: 500;
}

.tabela-bpos-recentes__data {
  color: #64748b;
  font-size: .85rem;
  font-weight: 500;
}

html:not([data-tema="claro"]) .tabela-bpos-recentes__data {
  color: #94a3b8;
}

.operadores-area {
  gap: var(--esp-1);
  flex-direction: column;
  min-width: 180px;
  display: flex;
}

.operadores-area__lista {
  flex-direction: column;
  gap: 2px;
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
}

.operadores-area__item {
  align-items: center;
  gap: var(--esp-1);
  font-size: var(--texto-sm);
  display: flex;
}

.toast-container {
  z-index: 100000;
  pointer-events: none;
  flex-direction: column;
  gap: 10px;
  display: flex;
  position: fixed;
  top: 24px;
  right: 24px;
}

@media (max-width: 640px) {
  .toast-container {
    top: 16px;
    left: 16px;
    right: 16px;
  }
}

.toast {
  pointer-events: auto;
  background: var(--cor-superficie);
  border: 1px solid var(--cor-borda);
  border-radius: var(--raio-lg);
  -webkit-backdrop-filter: blur(16px);
  align-items: flex-start;
  gap: 14px;
  min-width: 320px;
  max-width: 440px;
  padding: 14px 18px 16px 14px;
  animation: .3s cubic-bezier(.16, 1, .3, 1) forwards toastEntrar;
  display: flex;
  position: relative;
  overflow: hidden;
  box-shadow: 0 12px 32px -4px #00000024, 0 4px 12px -2px #00000014;
}

.toast--saindo {
  animation: .25s ease-in forwards toastSair;
}

@keyframes toastEntrar {
  from {
    opacity: 0;
    transform: translateY(-16px) scale(.96);
  }

  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

@keyframes toastSair {
  from {
    opacity: 1;
    transform: translateY(0) scale(1);
  }

  to {
    opacity: 0;
    transform: translateY(-10px) scale(.96);
  }
}

.toast--sucesso {
  border-left: 4px solid var(--cor-sucesso, #10b981);
}

.toast--sucesso:hover {
  box-shadow: 0 14px 36px -4px #10b98133, 0 4px 12px -2px #00000014;
}

.toast--erro {
  border-left: 4px solid var(--cor-perigo, #ef4444);
}

.toast--erro:hover {
  box-shadow: 0 14px 36px -4px #ef444433, 0 4px 12px -2px #00000014;
}

.toast--alerta {
  border-left: 4px solid var(--cor-alerta, #f59e0b);
}

.toast--alerta:hover {
  box-shadow: 0 14px 36px -4px #f59e0b33, 0 4px 12px -2px #00000014;
}

.toast--info {
  border-left: 4px solid var(--cor-info, #0ea5e9);
}

.toast--info:hover {
  box-shadow: 0 14px 36px -4px #0ea5e933, 0 4px 12px -2px #00000014;
}

.toast__icone-circulo {
  color: #fff;
  border-radius: 50%;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 32px;
  height: 32px;
  display: flex;
}

.toast--sucesso .toast__icone-circulo {
  background: linear-gradient(135deg, #10b981 0%, #059669 100%);
  box-shadow: 0 2px 10px #10b98166;
}

.toast--erro .toast__icone-circulo {
  background: linear-gradient(135deg, #ef4444 0%, #dc2626 100%);
  box-shadow: 0 2px 10px #ef444466;
}

.toast--alerta .toast__icone-circulo {
  background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);
  box-shadow: 0 2px 10px #f59e0b66;
}

.toast--info .toast__icone-circulo {
  background: linear-gradient(135deg, #0ea5e9 0%, #0284c7 100%);
  box-shadow: 0 2px 10px #0ea5e966;
}

.toast__corpo {
  flex: 1;
  min-width: 0;
  padding-right: 6px;
}

.toast__titulo {
  font-weight: 600;
  font-size: var(--texto-sm);
  color: var(--cor-texto);
  line-height: 1.3;
}

.toast__mensagem {
  font-size: var(--texto-xs);
  color: var(--cor-texto-suave);
  word-break: break-word;
  margin-top: 3px;
  line-height: 1.45;
}

.toast__fechar {
  border-radius: var(--raio-sm);
  color: var(--cor-texto-suave);
  cursor: pointer;
  background: none;
  border: 0;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  margin-top: -2px;
  margin-right: -4px;
  padding: 4px;
  transition: all .15s;
  display: flex;
}

.toast__fechar:hover {
  background: var(--cor-superficie-2);
  color: var(--cor-texto);
}

.toast__progresso {
  transform-origin: 0;
  width: 100%;
  height: 2.5px;
  animation: linear forwards toastProgresso;
  position: absolute;
  bottom: 0;
  left: 0;
}

.toast:hover .toast__progresso {
  animation-play-state: paused;
}

@keyframes toastProgresso {
  from {
    transform: scaleX(1);
  }

  to {
    transform: scaleX(0);
  }
}

.toast--sucesso .toast__progresso {
  background: linear-gradient(90deg, #10b981, #059669);
}

.toast--erro .toast__progresso {
  background: linear-gradient(90deg, #ef4444, #dc2626);
}

.toast--alerta .toast__progresso {
  background: linear-gradient(90deg, #f59e0b, #d97706);
}

.toast--info .toast__progresso {
  background: linear-gradient(90deg, #0ea5e9, #0284c7);
}

html[data-tema="escuro"] .toast {
  background: #181d29f0;
  border-color: #ffffff1a;
  box-shadow: 0 16px 40px -4px #00000080, 0 6px 16px -2px #0000004d;
}

.modulos-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  display: grid;
}

@media (max-width: 960px) {
  .modulos-grid {
    grid-template-columns: 1fr;
  }
}

.modulo-card {
  background: var(--cor-superficie);
  border: 1px solid var(--cor-borda);
  border-radius: var(--raio-lg);
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  padding: 18px 22px;
  transition: border-color .2s, box-shadow .2s, transform .2s;
  display: flex;
  box-shadow: 0 1px 3px #0000000a;
}

.modulo-card:hover {
  border-color: var(--cor-borda-forte);
  box-shadow: 0 4px 14px #0000000f;
}

.modulo-card__info {
  flex: 1;
  align-items: flex-start;
  gap: 14px;
  min-width: 0;
  display: flex;
}

.modulo-card__icone-box {
  border-radius: 12px;
  flex-shrink: 0;
  place-items: center;
  width: 44px;
  height: 44px;
  transition: transform .2s;
  display: grid;
}

.modulo-card:hover .modulo-card__icone-box {
  transform: scale(1.05);
}

.modulo-card__icone-box--ativo {
  color: #1f5fbf;
  background: #eef6ff;
}

html:not([data-tema="claro"]) .modulo-card__icone-box--ativo {
  color: #5b9bff;
  background: #1f5fbf33;
}

.modulo-card__icone-box--inativo {
  background: var(--cor-superficie-2);
  color: var(--cor-texto-suave);
}

.modulo-card__textos {
  flex-direction: column;
  gap: 3px;
  min-width: 0;
  display: flex;
}

.modulo-card__nome {
  color: var(--cor-texto);
  margin: 0;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.25;
}

.modulo-card__descricao {
  color: var(--cor-texto-suave);
  margin: 0;
  font-size: 12.5px;
  line-height: 1.4;
}

.modulo-card__controles {
  flex-shrink: 0;
  align-items: center;
  gap: 16px;
  display: flex;
}

.modulo-card__coluna {
  flex-direction: column;
  align-items: center;
  gap: 6px;
  display: flex;
}

.modulo-card__coluna-rotulo {
  letter-spacing: .05em;
  text-transform: uppercase;
  color: var(--cor-texto-suave);
  white-space: nowrap;
  text-align: center;
  font-size: 10px;
  font-weight: 700;
}

.modulo-card__coluna-conteudo {
  justify-content: center;
  align-items: center;
  min-height: 28px;
  display: flex;
}

.badge-status-plataforma {
  white-space: nowrap;
  border-radius: 9999px;
  align-items: center;
  gap: 6px;
  padding: 3px 10px;
  font-size: 12px;
  font-weight: 500;
  display: inline-flex;
}

.badge-status-plataforma--disponivel {
  color: #15803d;
  background: #ecfdf5;
}

html:not([data-tema="claro"]) .badge-status-plataforma--disponivel {
  color: #4cc771;
  background: #22c55e26;
}

.badge-status-plataforma--em-breve {
  color: #64748b;
  background: #f1f5f9;
}

html:not([data-tema="claro"]) .badge-status-plataforma--em-breve {
  background: var(--cor-superficie-2);
  color: var(--cor-texto-suave);
}

.badge-status-plataforma--alerta {
  color: #b45309;
  background: #fffbeb;
}

html:not([data-tema="claro"]) .badge-status-plataforma--alerta {
  color: #e8b64a;
  background: #e8b64a26;
}

.badge-dot {
  border-radius: 9999px;
  flex-shrink: 0;
  width: 6px;
  height: 6px;
  display: inline-block;
}

.badge-dot--verde {
  background: #22c55e;
}

.badge-dot--cinza {
  background: #94a3b8;
}

.badge-dot--alerta {
  background: #f59e0b;
}

.modulo-card__switch-container {
  align-items: center;
  gap: 7px;
  display: inline-flex;
}

.modulo-card__switch-rotulo {
  color: var(--cor-texto-suave);
  min-width: 24px;
  font-size: 12px;
  font-weight: 600;
}

.modulo-card__switch-rotulo--ativo {
  color: var(--cor-primaria);
}

.badge-em-uso {
  text-align: center;
  border-radius: 9999px;
  justify-content: center;
  align-items: center;
  min-width: 44px;
  padding: 3px 12px;
  font-size: 12px;
  font-weight: 500;
  display: inline-flex;
}

.badge-em-uso--sim {
  color: #15803d;
  background: #ecfdf5;
}

html:not([data-tema="claro"]) .badge-em-uso--sim {
  color: #4cc771;
  background: #22c55e26;
}

.badge-em-uso--nao {
  color: #64748b;
  background: #f1f5f9;
}

html:not([data-tema="claro"]) .badge-em-uso--nao {
  background: var(--cor-superficie-2);
  color: var(--cor-texto-suave);
}

.modulo-info-banner {
  border-radius: var(--raio-lg);
  color: #1e40af;
  font-size: var(--texto-sm);
  background: #f0f7ff;
  border: 1px solid #c7e0ff;
  align-items: center;
  gap: 16px;
  margin-top: 4px;
  padding: 12px 18px;
  line-height: 1.5;
  display: flex;
}

html:not([data-tema="claro"]) .modulo-info-banner {
  color: #c9dffc;
  background: #1f5fbf1f;
  border-color: #5b9bff40;
}

.modulo-info-banner__icone {
  color: #1f5fbf;
  border-right: 1px solid #c7e0ff;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  padding-right: 16px;
  display: flex;
}

html:not([data-tema="claro"]) .modulo-info-banner__icone {
  color: #5b9bff;
  border-right-color: #5b9bff40;
}

.modulo-info-banner__texto {
  flex: 1;
}

.usuarios-online-trigger {
  cursor: pointer;
  color: #059669;
  -webkit-user-select: none;
  user-select: none;
  background: none;
  border: none;
  border-radius: 9999px;
  align-items: center;
  gap: 8px;
  padding: 5px 10px;
  font-family: inherit;
  font-size: .86rem;
  font-weight: 500;
  transition: background .18s, color .18s;
  display: inline-flex;
}

.usuarios-online-trigger:hover {
  background: #10b98114;
}

html[data-tema="escuro"] .usuarios-online-trigger, html:not([data-tema="claro"]) .usuarios-online-trigger {
  color: #34d399;
}

html[data-tema="escuro"] .usuarios-online-trigger:hover, html:not([data-tema="claro"]) .usuarios-online-trigger:hover {
  background: #10b98126;
}

.usuarios-online-trigger__dot-wrap {
  justify-content: center;
  align-items: center;
  width: 14px;
  height: 14px;
  display: flex;
  position: relative;
}

.usuarios-online-trigger__dot-halo {
  background: #a7f3d0;
  border-radius: 50%;
  animation: 2.2s cubic-bezier(.4, 0, .6, 1) infinite pulsoHaloVerde;
  position: absolute;
  inset: 0;
}

html[data-tema="escuro"] .usuarios-online-trigger__dot-halo, html:not([data-tema="claro"]) .usuarios-online-trigger__dot-halo {
  background: #34d39959;
}

.usuarios-online-trigger__dot {
  background: #10b981;
  border-radius: 50%;
  width: 8px;
  height: 8px;
  position: relative;
}

.usuarios-online-trigger__texto {
  white-space: nowrap;
  line-height: 1;
}

@keyframes pulsoHaloVerde {
  0% {
    opacity: .85;
    transform: scale(.92);
  }

  50% {
    opacity: .35;
    transform: scale(1.18);
  }

  100% {
    opacity: .85;
    transform: scale(.92);
  }
}

.usuarios-online-modal__backdrop {
  z-index: 99999;
  -webkit-backdrop-filter: blur(5px);
  background: #03071273;
  justify-content: center;
  align-items: center;
  padding: 16px;
  animation: .18s ease-out modalConfFadeIn;
  display: flex;
  position: fixed;
  inset: 0;
}

.usuarios-online-modal__card {
  border: 1px solid var(--cor-borda);
  box-sizing: border-box;
  background: #fff;
  border-radius: 16px;
  width: 100%;
  max-width: 480px;
  padding: 22px 24px;
  animation: .22s cubic-bezier(.16, 1, .3, 1) modalConfScaleIn;
  position: relative;
  box-shadow: 0 20px 45px #00000029;
}

html[data-tema="escuro"] .usuarios-online-modal__card, html:not([data-tema="claro"]) .usuarios-online-modal__card {
  background: #0f172a;
  border-color: #ffffff1f;
  box-shadow: 0 25px 60px #000000b3;
}

.usuarios-online-modal__topo {
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  display: flex;
}

.usuarios-online-modal__titulo-wrap {
  align-items: center;
  gap: 10px;
  display: flex;
}

.usuarios-online-modal__icone {
  width: 20px;
  height: 20px;
  color: var(--cor-texto);
}

.usuarios-online-modal__titulo {
  color: var(--cor-texto);
  letter-spacing: -.01em;
  margin: 0;
  font-size: 1.08rem;
  font-weight: 600;
}

.usuarios-online-modal__fechar {
  cursor: pointer;
  width: 30px;
  height: 30px;
  color: var(--cor-texto-suave);
  background: none;
  border: none;
  border-radius: 8px;
  justify-content: center;
  align-items: center;
  padding: 0;
  transition: all .15s;
  display: flex;
}

.usuarios-online-modal__fechar:hover {
  background: var(--cor-superficie-2);
  color: var(--cor-texto);
}

.usuarios-online-modal__descricao {
  color: var(--cor-texto-suave);
  margin: 6px 0 0;
  font-size: .85rem;
  line-height: 1.4;
}

.usuarios-online-modal__lista {
  flex-direction: column;
  gap: 4px;
  max-height: 320px;
  margin-top: 18px;
  display: flex;
  overflow-y: auto;
}

.usuarios-online-item {
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  padding: 8px 4px;
  display: flex;
}

.usuarios-online-item__esquerda {
  align-items: center;
  gap: 12px;
  min-width: 0;
  display: flex;
}

.usuarios-online-item__avatar-wrap {
  flex-shrink: 0;
  position: relative;
}

.usuarios-online-item__avatar {
  color: #1d4ed8;
  -webkit-user-select: none;
  user-select: none;
  background: #dbeafe;
  border-radius: 50%;
  place-items: center;
  width: 38px;
  height: 38px;
  font-size: 15px;
  font-weight: 700;
  display: grid;
}

html[data-tema="escuro"] .usuarios-online-item__avatar, html:not([data-tema="claro"]) .usuarios-online-item__avatar {
  color: #60a5fa;
  background: #2563eb38;
}

.usuarios-online-item__status-dot {
  background: #10b981;
  border: 2px solid #fff;
  border-radius: 50%;
  width: 9px;
  height: 9px;
  position: absolute;
  bottom: 0;
  right: 0;
}

html[data-tema="escuro"] .usuarios-online-item__status-dot, html:not([data-tema="claro"]) .usuarios-online-item__status-dot {
  border-color: #0f172a;
}

.usuarios-online-item__info {
  flex-direction: column;
  gap: 2px;
  min-width: 0;
  display: flex;
}

.usuarios-online-item__linha-nome {
  align-items: baseline;
  gap: 5px;
  display: flex;
}

.usuarios-online-item__nome {
  color: var(--cor-texto);
  font-size: .92rem;
  font-weight: 600;
}

.usuarios-online-item__voce {
  color: var(--cor-texto-suave);
  font-size: .84rem;
  font-weight: 400;
}

.usuarios-online-item__email {
  color: var(--cor-texto-suave);
  white-space: nowrap;
  text-overflow: ellipsis;
  font-size: .8rem;
  overflow: hidden;
}

.usuarios-online-item__tempo {
  color: var(--cor-texto-suave);
  white-space: nowrap;
  flex-shrink: 0;
  font-size: .84rem;
}

.usuarios-online-modal__divisor {
  background: var(--cor-borda);
  height: 1px;
  margin: 18px 0 12px;
}

.usuarios-online-modal__rodape {
  color: var(--cor-texto-suave);
  margin: 0;
  font-size: .78rem;
  line-height: 1.4;
}

.seletor-unidade-sidebar {
  width: 100%;
  margin-bottom: 8px;
  position: relative;
}

.seletor-unidade-trigger {
  cursor: pointer;
  text-align: left;
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
  background: #ffffff0d;
  border: 1px solid #ffffff1f;
  border-radius: 8px;
  align-items: center;
  gap: 8px;
  width: 100%;
  padding: 4px 8px;
  transition: all .2s cubic-bezier(.16, 1, .3, 1);
  display: flex;
}

.seletor-unidade-trigger:hover {
  background: #ffffff1a;
  border-color: #ffffff3d;
  transform: translateY(-1px);
}

.seletor-unidade-sidebar--encolhido .seletor-unidade-trigger {
  border-radius: 7px;
  justify-content: center;
  width: 30px;
  height: 30px;
  margin: 0 auto;
  padding: 3px;
}

.seletor-unidade-avatar {
  color: #fff;
  background: linear-gradient(135deg, #10b981 0%, #059669 100%);
  border-radius: 6px;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 24px;
  height: 24px;
  font-size: 12px;
  font-weight: 800;
  display: flex;
  box-shadow: 0 2px 5px #10b98159;
}

.seletor-unidade-info {
  flex-direction: column;
  flex: 1;
  min-width: 0;
  display: flex;
}

.seletor-unidade-rotulo {
  letter-spacing: .07em;
  text-transform: uppercase;
  color: #34d399;
  margin-bottom: 1px;
  font-size: 8px;
  font-weight: 800;
  line-height: 1;
}

.seletor-unidade-nome {
  color: #fff;
  white-space: nowrap;
  text-overflow: ellipsis;
  font-size: 11.5px;
  font-weight: 700;
  line-height: 1.15;
  overflow: hidden;
}

.seletor-unidade-chevron {
  color: #fff9;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  transition: transform .2s;
  display: flex;
}

.seletor-unidade-popover {
  z-index: 1000;
  background: var(--cor-superficie);
  border: 1px solid var(--cor-borda);
  border-radius: 12px;
  width: 275px;
  padding: 6px 0;
  animation: .15s cubic-bezier(.16, 1, .3, 1) seletorUnidadeFadeIn;
  position: absolute;
  box-shadow: 0 16px 36px -4px #00000059, 0 6px 14px #00000026;
}

@keyframes seletorUnidadeFadeIn {
  from {
    opacity: 0;
    transform: translateY(-4px) scale(.98);
  }

  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

.seletor-unidade-popover--abaixo {
  top: calc(100% + 6px);
  left: 0;
}

.seletor-unidade-popover--lateral {
  top: 0;
  left: calc(100% + 12px);
}

.seletor-unidade-popover-cabecalho {
  letter-spacing: .08em;
  color: var(--cor-texto-suave);
  text-transform: uppercase;
  padding: 8px 14px 6px;
  font-size: 10.5px;
  font-weight: 700;
}

.seletor-unidade-lista {
  flex-direction: column;
  gap: 2px;
  max-height: 220px;
  padding: 4px 6px;
  display: flex;
  overflow-y: auto;
}

.seletor-unidade-item-vazio {
  color: var(--cor-texto-suave);
  text-align: center;
  padding: 12px 14px;
  font-size: 12px;
}

.seletor-unidade-item {
  cursor: pointer;
  text-align: left;
  background: none;
  border: none;
  border-radius: 8px;
  align-items: center;
  gap: 10px;
  width: 100%;
  padding: 8px 10px;
  transition: background .15s;
  display: flex;
}

.seletor-unidade-item:hover {
  background: var(--cor-superficie-2);
}

.seletor-unidade-item--ativo {
  background: #1871fe0f;
}

.seletor-unidade-item-avatar {
  background: var(--cor-superficie-2);
  width: 30px;
  height: 30px;
  color: var(--cor-texto);
  border: 1px solid var(--cor-borda);
  border-radius: 7px;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  font-size: 12px;
  font-weight: 700;
  display: flex;
}

.seletor-unidade-item-avatar--ativo {
  color: #042f2e;
  background: #10b981;
  border-color: #10b981;
  box-shadow: 0 2px 6px #10b9814d;
}

.seletor-unidade-item-dados {
  flex-direction: column;
  flex: 1;
  min-width: 0;
  display: flex;
}

.seletor-unidade-item-nome {
  color: var(--cor-texto);
  white-space: nowrap;
  text-overflow: ellipsis;
  font-size: 12.5px;
  font-weight: 600;
  line-height: 1.25;
  overflow: hidden;
}

.seletor-unidade-item-sub {
  color: var(--cor-texto-suave);
  margin-top: 1px;
  font-size: 10.5px;
}

.seletor-unidade-item-check {
  color: var(--cor-primaria, #1871fe);
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  display: flex;
}

.seletor-unidade-popover-rodape {
  border-top: 1px solid var(--cor-borda);
  margin-top: 4px;
  padding: 4px 6px 2px;
}

.seletor-unidade-btn-gerenciar {
  width: 100%;
  color: var(--cor-texto);
  cursor: pointer;
  background: none;
  border: none;
  border-radius: 6px;
  align-items: center;
  gap: 8px;
  padding: 8px 10px;
  font-size: 12px;
  font-weight: 500;
  transition: all .15s;
  display: flex;
}

.seletor-unidade-btn-gerenciar:hover {
  background: var(--cor-superficie-2);
  color: var(--cor-primaria);
}

.btn--laranja-arvore {
  color: #fff;
  cursor: pointer;
  background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);
  border: 1px solid #ffffff26;
  border-radius: 8px;
  align-items: center;
  gap: 8px;
  padding: 8px 16px;
  font-size: 13px;
  font-weight: 700;
  transition: all .2s cubic-bezier(.16, 1, .3, 1);
  display: inline-flex;
  box-shadow: 0 2px 8px #f59e0b59;
}

.btn--laranja-arvore:hover {
  background: linear-gradient(135deg, #fbbf24 0%, #ea580c 100%);
  transform: translateY(-1px);
  box-shadow: 0 4px 14px #f59e0b73;
}

.btn--laranja-arvore:active {
  transform: translateY(0);
  box-shadow: 0 1px 4px #f59e0b4d;
}

.arvore-painel {
  flex-direction: column;
  gap: 16px;
  width: 100%;
  display: flex;
}

.arvore-painel__barra {
  background: var(--cor-superficie);
  border: 1px solid var(--cor-borda);
  border-radius: var(--raio-lg, 12px);
  box-shadow: var(--sombra);
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  padding: 10px 16px;
  display: flex;
}

.arvore-painel__busca {
  flex: 1;
  align-items: center;
  max-width: 480px;
  display: flex;
  position: relative;
}

.arvore-painel__busca-icone {
  color: var(--cor-texto-suave);
  pointer-events: none;
  position: absolute;
  left: 12px;
}

.arvore-painel__busca-input {
  border: 1px solid var(--cor-borda);
  background: var(--cor-superficie-2);
  width: 100%;
  color: var(--cor-texto);
  border-radius: 8px;
  outline: none;
  padding: 8px 34px 8px 36px;
  font-size: 13px;
  transition: border-color .15s;
}

.arvore-painel__busca-input:focus {
  border-color: var(--cor-primaria);
}

.arvore-painel__busca-limpar {
  color: var(--cor-texto-suave);
  cursor: pointer;
  background: none;
  border: none;
  font-size: 16px;
  line-height: 1;
  position: absolute;
  right: 10px;
}

.arvore-painel__metricas {
  align-items: center;
  gap: 8px;
  display: flex;
}

.arvore-viewport {
  background: radial-gradient(circle at 50% 15%, #1871fe0a 0%, transparent 60%),
    var(--cor-superficie);
  border: 1px solid var(--cor-borda);
  border-radius: var(--raio-lg, 16px);
  width: 100%;
  box-shadow: var(--sombra);
  overscroll-behavior-x: auto;
  overscroll-behavior-y: auto;
  min-height: 480px;
  padding: 40px 25px 60px;
  overflow: auto visible;
}

.digital-serenity-container .arvore-viewport {
  box-shadow: none !important;
  background: none !important;
  border: 1px solid #94a3b81f !important;
}

.arvore-conteudo {
  flex-direction: column;
  align-items: center;
  width: 100%;
  min-width: max-content;
  padding-bottom: 30px;
  display: flex;
}

.arvore-raiz {
  text-align: center;
  z-index: 2;
  flex-direction: column;
  align-items: center;
  display: flex;
  position: relative;
}

.arvore-raiz__icone {
  color: #fff;
  background: #1e293b;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  width: 62px;
  height: 62px;
  margin-bottom: 12px;
  display: flex;
  box-shadow: 0 0 0 6px #1e293b14, 0 8px 20px #00000029;
}

html[data-tema="escuro"] .arvore-raiz__icone {
  background: #0f172a;
  border: 1px solid #334155;
  box-shadow: 0 0 0 6px #ffffff0d, 0 8px 20px #0000004d;
}

.arvore-raiz__titulo {
  color: var(--cor-texto);
  margin: 0 0 4px;
  font-size: 17px;
  font-weight: 800;
}

.arvore-raiz__tags {
  align-items: center;
  gap: 6px;
  display: flex;
}

.arvore-raiz__badge {
  letter-spacing: .07em;
  text-transform: uppercase;
  color: #334155;
  background: #e2e8f0;
  border: 1px solid #cbd5e1;
  border-radius: 12px;
  padding: 2px 10px;
  font-size: 10px;
  font-weight: 700;
  display: inline-block;
}

html[data-tema="escuro"] .arvore-raiz__badge {
  color: #f1f5f9;
  background: #334155;
  border-color: #475569;
}

.arvore-raiz__cnpj {
  color: var(--cor-texto-suave);
  margin-top: 4px;
  font-size: 11px;
}

.arvore-tronco {
  background: #cbd5e1;
  width: 2px;
  height: 32px;
  margin-top: 10px;
}

html[data-tema="escuro"] .arvore-tronco {
  background: #475569;
}

.arvore-organograma {
  justify-content: center;
  width: 100%;
  display: flex;
}

.arvore-lista-bpos {
  justify-content: center;
  gap: 28px;
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  position: relative;
}

.arvore-item-bpo {
  flex-direction: column;
  align-items: center;
  padding-top: 20px;
  display: flex;
  position: relative;
}

.arvore-item-bpo:before, .arvore-item-bpo:after {
  content: "";
  border-top: 2px solid #cbd5e1;
  width: 50%;
  height: 20px;
  position: absolute;
  top: 0;
  right: 50%;
}

.arvore-item-bpo:after {
  border-left: 2px solid #cbd5e1;
  left: 50%;
  right: auto;
}

html[data-tema="escuro"] .arvore-item-bpo:before, html[data-tema="escuro"] .arvore-item-bpo:after {
  border-color: #475569;
}

.arvore-item-bpo:only-child:before, .arvore-item-bpo:only-child:after {
  display: none;
}

.arvore-item-bpo:only-child {
  padding-top: 0;
}

.arvore-item-bpo:first-child:before {
  border: none;
}

.arvore-item-bpo:first-child:after {
  border-radius: 8px 0 0;
}

.arvore-item-bpo:last-child:after {
  border: none;
}

.arvore-item-bpo:last-child:before {
  border-right: 2px solid #cbd5e1;
  border-radius: 0 8px 0 0;
}

html[data-tema="escuro"] .arvore-item-bpo:last-child:before {
  border-color: #475569;
}

.arvore-card-bpo {
  text-align: center;
  background: var(--cor-superficie);
  border: 1px solid var(--cor-borda);
  cursor: pointer;
  border-radius: 11px;
  flex-direction: column;
  align-items: center;
  min-width: 115px;
  max-width: 140px;
  padding: 8px 12px;
  text-decoration: none;
  transition: all .2s cubic-bezier(.16, 1, .3, 1);
  display: flex;
  box-shadow: 0 4px 12px #0000000d;
}

.arvore-card-bpo:hover {
  border-color: var(--cor-primaria);
  transform: translateY(-3px);
  box-shadow: 0 8px 24px #1871fe29;
}

.arvore-card-bpo__icone {
  background: var(--cor-superficie-2);
  width: 38px;
  height: 38px;
  color: var(--cor-primaria);
  border: 2px solid #cbd5e1;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  margin-bottom: 5px;
  transition: all .2s;
  display: flex;
  box-shadow: 0 3px 8px #0000000d;
}

html[data-tema="escuro"] .arvore-card-bpo__icone {
  background: #1e293b;
  border-color: #475569;
}

.arvore-card-bpo:hover .arvore-card-bpo__icone {
  border-color: var(--cor-primaria);
  transform: scale(1.08);
  box-shadow: 0 6px 18px #1871fe40;
}

.arvore-card-bpo__nome {
  text-transform: uppercase;
  color: var(--cor-texto);
  text-overflow: ellipsis;
  white-space: nowrap;
  width: 100%;
  margin: 0 0 2px;
  font-size: 11px;
  font-weight: 800;
  overflow: hidden;
}

.arvore-card-bpo__tipo {
  letter-spacing: .05em;
  text-transform: uppercase;
  color: var(--cor-texto-suave);
  margin-bottom: 2px;
  font-size: 8px;
  font-weight: 700;
}

.arvore-card-bpo__cnpj {
  color: var(--cor-texto-suave);
  font-size: 9px;
}

.arvore-card-bpo__status {
  text-transform: uppercase;
  border-radius: 8px;
  padding: 1px 6px;
  font-size: 8px;
  font-weight: 700;
}

.arvore-card-bpo__status--ativo {
  color: #10b981;
  background: #10b9811f;
}

.arvore-card-bpo__status--inativo {
  color: #ef4444;
  background: #ef44441f;
}

.arvore-subnivel-filiais {
  margin-top: 8px;
  padding-top: 20px;
  position: relative;
}

.arvore-subnivel-filiais:before {
  content: "";
  background: #cbd5e1;
  width: 2px;
  height: 20px;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}

html[data-tema="escuro"] .arvore-subnivel-filiais:before {
  background: #475569;
}

.arvore-lista-filiais {
  justify-content: center;
  gap: 20px;
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
}

.arvore-item-filial {
  flex-direction: column;
  align-items: center;
  padding-top: 20px;
  display: flex;
  position: relative;
}

.arvore-item-filial:before, .arvore-item-filial:after {
  content: "";
  border-top: 2px solid #cbd5e1;
  width: 50%;
  height: 20px;
  position: absolute;
  top: 0;
  right: 50%;
}

.arvore-item-filial:after {
  border-left: 2px solid #cbd5e1;
  left: 50%;
  right: auto;
}

html[data-tema="escuro"] .arvore-item-filial:before, html[data-tema="escuro"] .arvore-item-filial:after {
  border-color: #475569;
}

.arvore-item-filial:only-child:before, .arvore-item-filial:only-child:after {
  display: none;
}

.arvore-item-filial:first-child:before {
  border: none;
}

.arvore-item-filial:first-child:after {
  border-radius: 6px 0 0;
}

.arvore-item-filial:last-child:after {
  border: none;
}

.arvore-item-filial:last-child:before {
  border-right: 2px solid #cbd5e1;
  border-radius: 0 6px 0 0;
}

html[data-tema="escuro"] .arvore-item-filial:last-child:before {
  border-color: #475569;
}

.arvore-card-filial {
  text-align: center;
  flex-direction: column;
  align-items: center;
  display: flex;
}

.arvore-card-filial__icone {
  background: var(--cor-superficie);
  color: #64748b;
  border: 2px solid #cbd5e1;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  width: 38px;
  height: 38px;
  margin-bottom: 6px;
  display: flex;
  box-shadow: 0 2px 8px #0000000d;
}

html[data-tema="escuro"] .arvore-card-filial__icone {
  background: #1e293b;
  border-color: #475569;
}

.arvore-card-filial__nome {
  text-transform: uppercase;
  color: var(--cor-texto);
  text-overflow: ellipsis;
  white-space: nowrap;
  max-width: 110px;
  font-size: 11px;
  font-weight: 800;
  overflow: hidden;
}

.arvore-card-filial__tipo {
  text-transform: uppercase;
  color: var(--cor-texto-suave);
  font-size: 9px;
  font-weight: 700;
}

.wl__estado, .wl__acoes {
  align-items: center;
  gap: var(--esp-3);
  flex-wrap: wrap;
  display: flex;
}

.wl__estado {
  justify-content: space-between;
}

.wl__dica {
  margin: var(--esp-2) 0 0;
  font-size: var(--texto-xs);
  color: var(--cor-texto-suave);
}

.wl__impedimentos {
  margin: var(--esp-3) 0 0;
  padding-left: var(--esp-5);
  font-size: var(--texto-sm);
  color: var(--cor-alerta);
}

.wl__cor {
  align-items: center;
  gap: var(--esp-2);
  display: flex;
}

.wl__cor input[type="color"] {
  border: 1px solid var(--cor-borda);
  border-radius: var(--raio-sm);
  background: var(--cor-superficie);
  cursor: pointer;
  flex: none;
  width: 36px;
  height: 32px;
  padding: 2px;
}

.wl__assets {
  gap: var(--esp-4);
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  display: grid;
}

.wl__asset {
  gap: var(--esp-2);
  flex-direction: column;
  display: flex;
}

.wl__asset-rotulo {
  font-size: var(--texto-sm);
  font-weight: 600;
}

.wl__asset-previa {
  height: 88px;
  padding: var(--esp-3);
  border: 1px dashed var(--cor-borda-forte);
  border-radius: var(--raio);
  background: var(--cor-superficie-2);
  place-items: center;
  display: grid;
}

.wl__asset-previa--escura {
  background: #16212f;
}

.wl__asset-previa img {
  object-fit: contain;
  max-width: 100%;
  max-height: 100%;
}

.wl-previa {
  border: 1px solid var(--cor-borda);
  border-radius: var(--raio-lg);
  grid-template-columns: 150px 1fr;
  min-height: 160px;
  display: grid;
  overflow: hidden;
}

.wl-previa__menu {
  gap: var(--esp-3);
  padding: var(--esp-4);
  font-size: var(--texto-sm);
  flex-direction: column;
  display: flex;
}

.wl-previa__menu img {
  object-fit: contain;
  object-position: left;
  max-width: 100%;
  max-height: 36px;
}

.wl-previa__conteudo {
  align-items: flex-start;
  gap: var(--esp-3);
  padding: var(--esp-5);
  flex-direction: column;
  display: flex;
}

.wl-previa__conteudo p {
  font-size: var(--texto-sm);
  margin: 0;
}

.wl-previa__botao {
  padding: var(--esp-2) var(--esp-4);
  border-radius: var(--raio);
  font-size: var(--texto-sm);
  font-weight: 600;
}

@media (max-width: 640px) {
  .wl-previa {
    grid-template-columns: 1fr;
  }
}

.wl__dominio-novo {
  align-items: flex-end;
  gap: var(--esp-3);
  margin-bottom: var(--esp-4);
  flex-wrap: wrap;
  display: flex;
}

.wl__dominio-novo > :first-child {
  flex: 260px;
}

.wl__dominio {
  gap: var(--esp-3);
  padding: var(--esp-4);
  border: 1px solid var(--cor-borda);
  border-radius: var(--raio);
  flex-direction: column;
  display: flex;
}

.wl__dns code, .wl__dominio code {
  max-width: 100%;
  padding: var(--esp-1) var(--esp-2);
  overflow-wrap: anywhere;
  border-radius: var(--raio-sm);
  background: var(--cor-superficie-2);
  font-family: var(--fonte-mono);
  font-size: var(--texto-xs);
  display: inline-block;
}

.wl__dominio-datas {
  gap: var(--esp-1) var(--esp-4);
  font-size: var(--texto-sm);
  grid-template-columns: max-content 1fr;
  margin: 0;
  display: grid;
}

.wl__dominio-datas dt {
  color: var(--cor-texto-suave);
}

.wl__dominio-datas dd {
  margin: 0;
}

.sidebar__logo-marca-bpo {
  object-fit: contain;
  object-position: left center;
  max-width: 150px;
  max-height: 34px;
  display: block;
}

.sidebar__inicial-marca-bpo {
  background: var(--cor-primaria);
  width: 30px;
  height: 30px;
  color: var(--cor-primaria-texto);
  border-radius: 50%;
  place-items: center;
  font-weight: 700;
  display: grid;
}

.login-dream__marca-bpo-img {
  object-fit: contain;
  max-width: min(320px, 80%);
  max-height: 140px;
  margin: 0 auto;
  display: block;
}

/*# sourceMappingURL=apps_web_app_globals_1lkgh9-fi_qx-.css.map*/