/* =====================================================================
   Byte Telecom · padrão visual único (v1.15.0)
   Carregado por último em Portal e módulos. Define cabeçalho, títulos,
   botões, mensagens e rodapé. O conteúdo de cada tela continua no CSS
   do próprio módulo.
   ===================================================================== */

@font-face{font-family:"Inter";font-style:normal;font-weight:400;font-display:swap;src:url("/static/fontes/inter-400.woff") format("woff")}
@font-face{font-family:"Inter";font-style:normal;font-weight:500;font-display:swap;src:url("/static/fontes/inter-500.woff") format("woff")}
@font-face{font-family:"Inter";font-style:normal;font-weight:600;font-display:swap;src:url("/static/fontes/inter-600.woff") format("woff")}
@font-face{font-family:"Inter";font-style:normal;font-weight:700;font-display:swap;src:url("/static/fontes/inter-700.woff") format("woff")}

:root{
  --bt-marinho:#0b2852;      /* cabeçalho e títulos */
  --bt-marinho-2:#123766;    /* hover no cabeçalho */
  --bt-fibra:#19b9ee;        /* destaque da marca: item ativo */
  --bt-acao:#0f6cbd;         /* botões e links: um só azul */
  --bt-acao-escuro:#0b5698;
  --bt-acao-suave:#e8f2fb;
  --bt-fundo:#f2f5f8;
  --bt-superficie:#ffffff;
  --bt-texto:#16304a;
  --bt-texto-2:#5b7083;
  --bt-linha:#d9e2ea;
  --bt-perigo:#b42318; --bt-perigo-suave:#fdf0ef;
  --bt-atencao:#b54708; --bt-atencao-suave:#fff6e5;
  --bt-sucesso:#067647; --bt-sucesso-suave:#ecfbf3;
  --bt-raio:10px;
  --bt-fonte:"Inter","Segoe UI",system-ui,-apple-system,Arial,sans-serif;
}

/* ---------- base ---------- */
html{-webkit-text-size-adjust:100%;background:var(--bt-fundo)}
body{font-family:var(--bt-fonte);color:var(--bt-texto);background:var(--bt-fundo);margin:0}
input,select,textarea,button{font-family:inherit}
table td,table th,.bt-num{font-variant-numeric:tabular-nums}
a{color:var(--bt-acao)}
:focus-visible{outline:3px solid var(--bt-fibra);outline-offset:2px}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}

/* ---------- cabeçalho ---------- */
.bt-topo{background:var(--bt-marinho);color:#fff;position:relative;z-index:50;box-shadow:0 1px 0 rgba(255,255,255,.06),0 4px 14px rgba(9,30,60,.18)}
.bt-topo-linha{display:flex;align-items:center;gap:18px;min-height:64px;padding:0 24px;max-width:1600px;margin:0 auto;box-sizing:border-box}
.bt-marca{display:flex;align-items:center;flex:0 0 auto;padding:6px 0}
.bt-marca img{height:46px;width:auto;display:block}
.bt-modulo{display:flex;align-items:center;gap:10px;color:#fff;text-decoration:none;padding:6px 18px 6px 18px;border-left:1px solid rgba(255,255,255,.16);flex:0 0 auto}
.bt-modulo strong{display:block;font-size:16px;font-weight:600;line-height:1.2}
.bt-modulo small{display:block;font-size:12px;color:#a9bfd6;line-height:1.3}
.bt-nome-curto{display:none}
.bt-modulo-cor{width:10px;height:10px;border-radius:50%;background:var(--bt-cor-mod,var(--bt-fibra));box-shadow:0 0 0 3px rgba(255,255,255,.08)}
.bt-cor-financeiro{--bt-cor-mod:#34d399}.bt-cor-recibos{--bt-cor-mod:#4aa8ff}.bt-cor-orcamentos{--bt-cor-mod:#a78bfa}
.bt-cor-frota{--bt-cor-mod:#ff8a3d}.bt-cor-epi{--bt-cor-mod:#19b9ee}.bt-cor-portal{--bt-cor-mod:#9fb3c8}
.bt-painel{display:flex;align-items:center;gap:18px;flex:1 1 auto;min-width:0}
.bt-nav{display:flex;align-items:center;gap:0;flex:1 1 auto;min-width:0;flex-wrap:nowrap}
.bt-nav-item{position:relative;display:inline-flex;align-items:center;gap:6px;color:#dce8f5;background:transparent;border:0;border-radius:8px;padding:9px 11px;font:500 14px/1.2 var(--bt-fonte);text-decoration:none;cursor:pointer;white-space:nowrap}
.bt-nav-item:hover,.bt-grupo.aberto>.bt-nav-item{background:var(--bt-marinho-2);color:#fff}
.bt-nav-item.ativo{color:#fff}
.bt-nav-item.ativo::after{content:"";position:absolute;left:12px;right:12px;bottom:-11px;height:3px;border-radius:3px 3px 0 0;background:var(--bt-fibra);box-shadow:0 0 10px rgba(25,185,238,.7)}
.bt-ico{width:1.15em;height:1.15em;flex:0 0 auto;vertical-align:-.2em}
.bt-topo .bt-ico{width:18px;height:18px;vertical-align:middle}
.bt-ico-seta{width:15px;height:15px;opacity:.75;transition:transform .15s}
.bt-grupo{position:relative}
.bt-grupo.aberto .bt-ico-seta{transform:rotate(180deg)}
.bt-lista{display:none;position:absolute;top:calc(100% + 8px);left:0;min-width:240px;background:#fff;border:1px solid var(--bt-linha);border-radius:12px;box-shadow:0 14px 34px rgba(11,40,82,.18);padding:6px;z-index:60}
.bt-grupo.aberto>.bt-lista{display:block}
.bt-lista a{display:block;padding:9px 12px;border-radius:8px;color:var(--bt-texto);text-decoration:none;font-size:14.5px;white-space:nowrap}
.bt-lista a:hover,.bt-lista a:focus-visible{background:var(--bt-acao-suave);color:var(--bt-acao-escuro)}
.bt-lista a[aria-current]{font-weight:600;color:var(--bt-acao)}
.bt-lista-secao{display:block;padding:10px 12px 4px;font-size:12px;font-weight:600;color:var(--bt-texto-2);border-top:1px solid var(--bt-linha);margin-top:4px}
.bt-lista-secao:first-child{border-top:0;margin-top:0}
.bt-conta{display:flex;align-items:center;gap:6px;flex:0 0 auto}
.bt-usuario{display:inline-flex;align-items:center;gap:7px;color:#b8cbe0;font-size:14px;padding:0 10px 0 4px;margin-right:4px;border-right:1px solid rgba(255,255,255,.16);max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.bt-acao{display:inline-flex;align-items:center;gap:7px;color:#fff;text-decoration:none;font-weight:500;font-size:14px;padding:8px 12px;border-radius:8px;border:1px solid rgba(255,255,255,.22)}
.bt-acao:hover{background:var(--bt-marinho-2);border-color:rgba(255,255,255,.4)}
.bt-acao .bt-ico{width:17px;height:17px}
.bt-menu-botao{display:none;margin-left:auto;align-items:center;gap:8px;background:transparent;color:#fff;border:1px solid rgba(255,255,255,.25);border-radius:8px;padding:8px 12px;font:500 14px var(--bt-fonte);cursor:pointer}

@media (max-width:1500px){
  .bt-modulo small{display:none}
  .bt-usuario{font-size:0;gap:0;padding-right:8px}
  .bt-usuario .bt-ico{width:20px;height:20px}
}
@media (max-width:1240px){.bt-acao{font-size:0;gap:0;padding:8px 9px}.bt-acao .bt-ico{width:19px;height:19px}}
@media (max-width:1100px){
  .bt-topo-linha{flex-wrap:wrap;gap:10px;padding:0 16px;min-height:58px}
  .bt-marca img{height:38px}
  .bt-modulo{padding:4px 0 4px 12px}
  .bt-modulo small{display:block}
  .bt-menu-botao{display:inline-flex}
  .bt-painel{display:none;flex-basis:100%;flex-direction:column;align-items:stretch;gap:10px;padding:6px 0 14px;border-top:1px solid rgba(255,255,255,.12)}
  .bt-topo.aberto .bt-painel{display:flex}
  .bt-nav{flex-direction:column;align-items:stretch;gap:2px}
  .bt-nav-item{width:100%;justify-content:space-between;padding:12px}
  .bt-nav-item.ativo::after{left:0;right:auto;top:10px;bottom:10px;width:3px;height:auto;border-radius:0 3px 3px 0}
  .bt-lista{position:static;box-shadow:none;border:0;background:rgba(255,255,255,.05);margin:2px 0 6px;min-width:0}
  .bt-lista a{color:#dce8f5;white-space:normal}
  .bt-lista a:hover{background:var(--bt-marinho-2);color:#fff}
  .bt-lista-secao{color:#8fa8c2;border-top-color:rgba(255,255,255,.1)}
  .bt-conta{flex-wrap:wrap;border-top:1px solid rgba(255,255,255,.12);padding-top:10px}
  .bt-usuario{display:flex;border:0;flex:1 1 100%;max-width:none;padding:4px 0;margin:0;font-size:14px;gap:7px}
  .bt-acao{font-size:14px;gap:7px;padding:8px 12px}
}
@media (max-width:480px){
  .bt-modulo small{display:none}
  .bt-modulo{min-width:0;flex:0 1 auto;max-width:calc(100vw - 210px)}
  .bt-nome-longo{display:none}.bt-nome-curto{display:inline}
  .bt-modulo strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .bt-modulo>span:last-child{min-width:0}
  .bt-menu-botao{padding:8px 10px}
  .bt-menu-botao span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  .bt-marca img{height:34px}
}

/* Ajuste automático (byte_ui.js): quando o menu não cabe na largura (zoom do navegador, nome
   longo, muitos itens), o cabeçalho vai compactando em etapas em vez de sobrepor o texto. */
.bt-topo.aperto-1 .bt-modulo small{display:none}
.bt-topo.aperto-1 .bt-usuario{font-size:0;gap:0;padding-right:8px}
.bt-topo.aperto-1 .bt-usuario .bt-ico{width:20px;height:20px}
.bt-topo.aperto-2 .bt-acao{font-size:0;gap:0;padding:8px 9px}
.bt-topo.aperto-2 .bt-acao .bt-ico{width:19px;height:19px}
.bt-topo.aperto-2 .bt-nav-item{padding:9px 8px}
.bt-topo.recolhido .bt-topo-linha{flex-wrap:wrap;gap:10px;padding:0 16px;min-height:58px}
.bt-topo.recolhido .bt-marca img{height:38px}
.bt-topo.recolhido .bt-modulo{padding:4px 0 4px 12px}
.bt-topo.recolhido .bt-modulo small{display:block}
.bt-topo.recolhido .bt-menu-botao{display:inline-flex}
.bt-topo.recolhido .bt-painel{display:none;flex-basis:100%;flex-direction:column;align-items:stretch;gap:10px;padding:6px 0 14px;border-top:1px solid rgba(255,255,255,.12)}
.bt-topo.recolhido.aberto .bt-painel{display:flex}
.bt-topo.recolhido .bt-nav{flex-direction:column;align-items:stretch;gap:2px}
.bt-topo.recolhido .bt-nav-item{width:100%;justify-content:space-between;padding:12px}
.bt-topo.recolhido .bt-nav-item.ativo::after{left:0;right:auto;top:10px;bottom:10px;width:3px;height:auto;border-radius:0 3px 3px 0}
.bt-topo.recolhido .bt-lista{position:static;box-shadow:none;border:0;background:rgba(255,255,255,.05);margin:2px 0 6px;min-width:0}
.bt-topo.recolhido .bt-lista a{color:#dce8f5;white-space:normal}
.bt-topo.recolhido .bt-lista a:hover{background:var(--bt-marinho-2);color:#fff}
.bt-topo.recolhido .bt-lista-secao{color:#8fa8c2;border-top-color:rgba(255,255,255,.1)}
.bt-topo.recolhido .bt-conta{flex-wrap:wrap;border-top:1px solid rgba(255,255,255,.12);padding-top:10px}
.bt-topo.recolhido .bt-usuario{display:flex;border:0;flex:1 1 100%;max-width:none;padding:4px 0;margin:0;font-size:14px;gap:7px}
.bt-topo.recolhido .bt-acao{font-size:14px;gap:7px;padding:8px 12px}
/* tela inicial do Portal (sem menu de módulo): há espaço para o nome do usuário */
@media (min-width:1101px){.bt-topo:not(:has(.bt-modulo)):not(.aperto-1) .bt-usuario{font-size:14px;gap:7px}}

/* ---------- área de conteúdo: mesma largura em todos os módulos ---------- */
body>main{box-sizing:border-box;width:100%;max-width:1440px;margin:28px auto 0;padding:0 28px}
@media (max-width:700px){body>main{margin-top:18px;padding:0 16px}}

/* ---------- títulos de página ---------- */
.bt-pagina-topo{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:0 0 22px}
.bt-pagina-topo h1{margin:0;font-size:26px;line-height:1.2;font-weight:700;color:var(--bt-marinho);letter-spacing:-.01em}
.bt-pagina-topo p{margin:6px 0 0;color:var(--bt-texto-2);font-size:15px;max-width:70ch}
.bt-pagina-acoes{display:flex;gap:10px;flex-wrap:wrap}
main h1{color:var(--bt-marinho);letter-spacing:-.01em}
/* títulos dos padrões antigos de cada módulo ficam iguais ao título padrão */
.page-head h1,.pagehead h1,.page-top h1,.hero h1,.dash-head h1,.db-top h1,body>main>h1,body>main.wrap>h1{font-size:26px!important;line-height:1.2!important;font-weight:700!important;color:var(--bt-marinho)!important;margin-top:0!important}
.page-head p,.pagehead p,.page-top .sub,.hero p,.dash-head p{color:var(--bt-texto-2)!important;font-size:15px!important}
/* Etiquetas em maiúsculas acima dos títulos e o selo de perfil repetido no meio
   da página: removidos (o usuário aparece no cabeçalho). */
.eyebrow,.modules-kicker,.dash-kicker,.page-kicker,.fleet-kicker,.page-top>.user,.role-pill,.dash-role{display:none!important}

/* ---------- botões: um só azul ---------- */
button,.btn,.button,input[type=submit]{background:var(--bt-acao);color:#fff;border:1px solid var(--bt-acao);border-radius:8px;font-weight:600;font-family:var(--bt-fonte);text-decoration:none;cursor:pointer;transition:background-color .12s,border-color .12s}
button:hover,.btn:hover,.button:hover,input[type=submit]:hover{background:var(--bt-acao-escuro);border-color:var(--bt-acao-escuro);filter:none}
.btn.secondary,.secondary,.btn2,.btn.outline,.btn.light,.light.btn,.btn.ghost,.btn-cancel,.edit-btn,.btn-edit,.linkbtn{background:#fff;color:var(--bt-acao);border:1px solid #b9d3ec}
.btn.secondary:hover,.secondary:hover,.btn2:hover,.btn.outline:hover,.btn.light:hover,.btn.ghost:hover,.btn-cancel:hover,.edit-btn:hover,.btn-edit:hover,.linkbtn:hover{background:var(--bt-acao-suave);color:var(--bt-acao-escuro);border-color:#9cc2e6}
button.danger,.btn.danger,input.danger{background:#fff;color:var(--bt-perigo);border:1px solid #efc2bd}
button.danger:hover,.btn.danger:hover,input.danger:hover{background:var(--bt-perigo-suave);color:#8f1c13;border-color:#e3a39b}
button:disabled,.btn:disabled{opacity:.5;cursor:not-allowed}
/* botões do próprio cabeçalho não herdam o estilo de botão de formulário */
.bt-topo button{font-weight:500}
.bt-topo .bt-nav-item,.bt-topo .bt-nav-item:hover{border:0}

/* ---------- Frota: atalhos com ícone alinhados à esquerda ---------- */
.dash-links a,.dash-links button{justify-content:flex-start!important;gap:10px;font-size:14px!important}
.dash-links a>b,.dash-links button>b,.dash-links a>span:last-child,.dash-links button>span:last-child{margin-left:auto}
.op-stat-icon .bt-ico,.dash-metric>span .bt-ico,.cadastro-icon .bt-ico{width:22px;height:22px;color:var(--bt-acao)}

/* ---------- cartões: um só acabamento ---------- */
.card,.panel,.formpanel,.form-panel,.dash-box,.dash-metric,.dash-card,.op-stat,.op-panel,.db-box,.db-stat,.stat,.action-card,.cadastro-card,.km-card{
  background:var(--bt-superficie);border:1px solid var(--bt-linha);border-radius:12px;
  box-shadow:0 1px 2px rgba(16,40,70,.04),0 6px 18px rgba(16,40,70,.04)}
.card,.panel,.formpanel,.form-panel,.dash-box,.db-box,.action-card,.stat,.db-stat,.dash-metric,.dash-card,.op-stat{border-top:1px solid var(--bt-linha)!important}
/* o menu do cabeçalho não herda regras antigas de <nav> */
.bt-topo .bt-nav{background:transparent!important;padding:0!important;margin:0!important;box-shadow:none!important;border:0!important}

/* ---------- tabelas ---------- */
main .card>table,main .card .tablewrap>table{width:100%;border-collapse:collapse}
main .card>table th,main .card>table td,main .card .tablewrap>table th,main .card .tablewrap>table td{padding:10px 12px;text-align:left;border-bottom:1px solid #edf1f5}
main .card>table th,main .card .tablewrap>table th{background:#f4f7fa;font-size:13px}
main .card .tablewrap{overflow-x:auto}
table th{font-weight:600;color:#4b6278}
table td{color:var(--bt-texto)}
/* botões de ação dentro de tabelas: compactos e iguais em todos os módulos */
table td button,table td .btn,table td .button,table td a.btn-edit,table td .btn-edit,table td .edit-btn,table td .linkbtn,table td .btn2,table td .btn-cancel{
  display:inline-flex;align-items:center;gap:6px;padding:5px 10px!important;font-size:13px!important;font-weight:600;line-height:1.3;border-radius:7px!important;
  background:#fff!important;color:var(--bt-acao)!important;border:1px solid #b9d3ec!important;text-decoration:none!important;box-shadow:none!important;margin:2px 2px 2px 0}
table td button:hover,table td .btn:hover,table td .button:hover,table td .btn-edit:hover,table td .edit-btn:hover,table td .linkbtn:hover,table td .btn2:hover{background:var(--bt-acao-suave)!important;border-color:#9cc2e6!important}
table td .danger,table td button.danger,table td .btn.danger{color:var(--bt-perigo)!important;border-color:#efc2bd!important}
table td .danger:hover{background:var(--bt-perigo-suave)!important}

/* ---------- campos de formulário ---------- */
input:not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=button]):not([type=file]):not([type=hidden]),select,textarea{
  border:1px solid #cdd9e4;border-radius:8px;background-color:#fff;color:var(--bt-texto);font-family:var(--bt-fonte)}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--bt-acao)!important;box-shadow:0 0 0 3px rgba(15,108,189,.16)!important}
input[readonly],input:disabled,select:disabled,textarea[readonly]{background-color:#f3f6f9}
input[type=checkbox],input[type=radio]{accent-color:var(--bt-acao)}
label{color:#2c4660}

/* ---------- mensagens ---------- */
.flash,.notice{border-radius:var(--bt-raio);padding:12px 16px;margin:0 0 16px;border:1px solid #b6dcf3;background:#eef7fd;color:#0d4a75;font-weight:500}
.flash.ok,.flash.sucesso,.flash.success,.notice.ok{border-color:#a8e3c4;background:var(--bt-sucesso-suave);color:var(--bt-sucesso)}
.flash.erro,.flash.error,.flash.danger,.flash.bloqueio,.notice.error{border-color:#f1c0ba;background:var(--bt-perigo-suave);color:var(--bt-perigo)}
.flash.aviso,.flash.warning{border-color:#f5d39d;background:var(--bt-atencao-suave);color:var(--bt-atencao)}

/* ---------- logo oficial (versão para fundo escuro) sem filtros de cor ---------- */
.bt-marca img,.login-logo{filter:none!important;opacity:1!important}
.login-logo{filter:drop-shadow(0 16px 34px rgba(0,0,0,.35))!important}
.login-brand-copy .eyebrow{display:inline-block!important}

/* ---------- tela de módulos do Portal ---------- */
.clean-card .module-copy span{display:block!important;min-height:0!important;margin-top:6px!important;font-size:14px!important;line-height:1.4!important;color:#657c91!important}

/* ---------- pendências (Portal) ---------- */
.bt-pendencias{background:var(--bt-superficie);border:1px solid var(--bt-linha);border-radius:12px;padding:18px 20px;margin:22px 0 0;box-shadow:0 1px 2px rgba(16,40,70,.04),0 6px 18px rgba(16,40,70,.04)}
.modules-clean .bt-pendencias{max-width:1120px;margin-left:auto;margin-right:auto;text-align:left}
.bt-pendencias-topo{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:10px}
.bt-pendencias-topo h2{margin:0;font-size:17px;font-weight:600;color:var(--bt-marinho)}
.bt-pendencias-topo a{font-size:14px;font-weight:600;text-decoration:none}
.bt-pend-conta{font-size:13px;color:var(--bt-texto-2)}
.bt-lista-pendencias{list-style:none;margin:0;padding:0}
.bt-lista-pendencias li{border-top:1px solid #edf1f5}
.bt-lista-pendencias li:first-child{border-top:0}
.bt-lista-pendencias a{display:flex;align-items:center;gap:12px;padding:10px 4px;text-decoration:none;color:var(--bt-texto);font-size:14.5px}
.bt-lista-pendencias a:hover{background:#f6f9fc}
.bt-pend-tag{flex:0 0 auto;font-size:12px;font-weight:600;padding:3px 9px;border-radius:999px;background:var(--bt-acao-suave);color:var(--bt-acao-escuro)}
.nivel-critico .bt-pend-tag{background:var(--bt-perigo-suave);color:var(--bt-perigo)}
.nivel-atencao .bt-pend-tag{background:var(--bt-atencao-suave);color:var(--bt-atencao)}
.bt-pend-mod{flex:0 0 92px;font-size:13px;color:var(--bt-texto-2)}
.bt-pend-texto{flex:1 1 auto;min-width:0}
.bt-pendencias-vazio{margin:4px 0;color:var(--bt-sucesso);font-weight:500;display:flex;gap:8px;align-items:center}
@media (max-width:600px){.bt-pend-mod{display:none}.bt-lista-pendencias a{flex-wrap:wrap;gap:6px 10px}}

/* ---------- erros do sistema ---------- */
.bt-erros{padding:6px 0!important}
.bt-erro{border-top:1px solid #edf1f5}.bt-erro:first-child{border-top:0}
.bt-erro summary{display:flex;align-items:center;gap:12px;padding:11px 18px;cursor:pointer;list-style:none}
.bt-erro summary::-webkit-details-marker{display:none}
.bt-erro summary:hover{background:#f6f9fc}
.bt-erro-quando{flex:0 0 120px;font-size:13px;color:var(--bt-texto-2);font-variant-numeric:tabular-nums}
.bt-pend-tag.erro{background:var(--bt-perigo-suave);color:var(--bt-perigo)}
.bt-erro-novo{font-size:12px;font-weight:600;color:#fff;background:var(--bt-acao);padding:2px 8px;border-radius:999px}
.bt-erro-msg{flex:1 1 auto;min-width:0;font-size:14.5px}
.bt-erro.novo .bt-erro-msg{font-weight:600}
.bt-erro pre{margin:0 18px 14px;padding:12px 14px;background:#0f1d2e;color:#d6e4f3;border-radius:8px;font-size:12px;line-height:1.5;overflow:auto;max-height:340px;white-space:pre-wrap}

/* ---------- formulários de configuração ---------- */
.bt-secao{padding:22px 24px!important;margin-bottom:18px}
.bt-secao h2{margin:0 0 4px;font-size:18px;color:var(--bt-marinho)}
.bt-secao h3{margin:10px 0 0;font-size:15px;color:var(--bt-marinho)}
.bt-ajuda{color:var(--bt-texto-2);font-size:14px;margin:4px 0 14px;max-width:80ch}
.bt-form-grade{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px 18px;align-items:start}
.bt-form-grade label{display:flex;flex-direction:column;gap:6px;font-size:13.5px;font-weight:600}
.bt-form-grade label small{font-weight:400;color:var(--bt-texto-2);font-size:12.5px}
.bt-form-grade input:not([type=checkbox]),.bt-form-grade select{padding:9px 11px;font-size:14px;font-weight:400}
.bt-form-grade .bt-largo{grid-column:1/-1}
.bt-form-grade .bt-check{flex-direction:row;align-items:center;gap:9px;font-weight:500}
.bt-form-acoes{grid-column:1/-1;display:flex;gap:10px;flex-wrap:wrap}
.bt-form-acoes button,.bt-secao form>button{padding:10px 16px}
.bt-status{font-size:14px;margin:0 0 12px;padding:8px 12px;border-radius:8px}
.bt-status.ok{background:var(--bt-sucesso-suave);color:var(--bt-sucesso)}
.bt-status.erro{background:var(--bt-perigo-suave);color:var(--bt-perigo)}
.bt-duas-colunas{display:grid;grid-template-columns:3fr 2fr;gap:18px;align-items:start}
@media (max-width:1000px){.bt-duas-colunas{grid-template-columns:1fr}}
.bt-situacao{list-style:none;margin:6px 0 16px;padding:0;border:1px solid var(--bt-linha);border-radius:10px}
.bt-situacao li{display:flex;justify-content:space-between;gap:12px;padding:10px 14px;border-top:1px solid #edf1f5;font-size:14px}
.bt-situacao li:first-child{border-top:0}
.bt-situacao li span{color:var(--bt-texto-2)}
.bt-situacao li.ok b{color:var(--bt-sucesso)}
.bt-situacao li.erro b{color:var(--bt-perigo)}

.bt-txt-perigo{color:var(--bt-perigo);font-weight:600}.bt-txt-atencao{color:var(--bt-atencao);font-weight:600}
.bt-secao textarea{padding:9px 11px;font-size:14px;font-weight:400;font-family:var(--bt-fonte);resize:vertical}

/* ---------- relatórios gerenciais ---------- */
.bt-filtros{display:flex;gap:14px;align-items:end;flex-wrap:wrap;padding:14px 18px!important;margin-bottom:18px}
.bt-filtros label{display:flex;flex-direction:column;gap:5px;font-size:13px;font-weight:600}
.bt-filtros input{padding:8px 10px}
.bt-indicadores{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}
.bt-indicadores .card{padding:16px 18px!important;display:flex;flex-direction:column;gap:4px}
.bt-indicadores span{font-size:13px;color:var(--bt-texto-2)}
.bt-indicadores b{font-size:22px;color:var(--bt-marinho)}
.bt-indicadores small{font-size:12.5px;color:var(--bt-texto-2)}
@media (max-width:900px){.bt-indicadores{grid-template-columns:repeat(2,minmax(0,1fr))}}
.bt-barras{display:flex;align-items:flex-end;gap:6px;height:190px;padding:8px 0 4px;border-bottom:1px solid var(--bt-linha);margin-bottom:16px}
.bt-barra{flex:1 1 0;display:flex;flex-direction:column;align-items:center;gap:6px;height:100%;cursor:default}
.bt-barra-trilho{flex:1 1 auto;width:min(70%,46px);display:flex;align-items:flex-end}
.bt-barra-valor{width:100%;min-height:2px;background:var(--bt-acao);border-radius:4px 4px 0 0}
.bt-barra:hover .bt-barra-valor{background:var(--bt-acao-escuro)}
.bt-barra span{font-size:11.5px;color:var(--bt-texto-2);font-variant-numeric:tabular-nums}

/* ---------- rodapé ---------- */
.bt-rodape{text-align:center;color:#8396a8;font-size:12.5px;padding:26px 16px 30px}

/* ---------- impressão: só o conteúdo ---------- */
@media print{.bt-topo,.bt-rodape{display:none!important}body{background:#fff}}

/* Segurança do sistema */
.bt-txt-ok{color:var(--bt-sucesso);font-weight:600}
.bt-txt-ok .bt-ico{width:16px;height:16px;margin-right:4px;vertical-align:-3px}
.bt-indicadores-3{grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:700px){.bt-indicadores-3{grid-template-columns:1fr}}
.bt-seg-colunas{grid-template-columns:1fr 1fr}
.bt-seg-colunas>div>.bt-secao:last-child{margin-bottom:0}
.bt-seg-colunas .bt-situacao b{text-align:right;overflow-wrap:anywhere}
.bt-seg-arquivo{margin:8px 0 12px;overflow-wrap:anywhere}
.bt-seg-estado{margin:10px 0 4px;font-size:15px}
.bt-seg-estado .bt-ico{width:18px;height:18px;vertical-align:-4px}
.bt-nowrap{white-space:nowrap}

/* ===== Componentes de painel e listas (v1.16.2) ===== */
/* Situação (status) em pílula: ui.status('Ativo') */
.bt-status{border:0!important;box-shadow:none!important;margin:0;vertical-align:middle;display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:999px;font-size:12.5px;font-weight:600;line-height:1.5;white-space:nowrap;background:#eef2f6;color:#46566b}
.bt-status::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.8}
.bt-status.ok{background:var(--bt-sucesso-suave);color:var(--bt-sucesso)}
.bt-status.info{background:var(--bt-acao-suave);color:var(--bt-acao-escuro)}
.bt-status.atencao{background:#fff5e0;color:#8b5a00}
.bt-status.perigo{background:var(--bt-perigo-suave);color:var(--bt-perigo)}
.bt-status.neutro{background:#eef2f6;color:#5b6b7f}

/* Ações em linha de tabela: todos os botões com o mesmo tamanho */
.bt-acoes{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.bt-acoes form{display:inline;margin:0}
.bt-acoes a,.bt-acoes button,.bt-acoes .btn{display:inline-flex;align-items:center;gap:5px;height:32px;padding:0 12px;border-radius:8px;font:600 13px/1 var(--bt-fonte);background:#fff;color:var(--bt-acao);border:1px solid #c9dcef;text-decoration:none;white-space:nowrap;cursor:pointer;box-shadow:none}
.bt-acoes a:hover,.bt-acoes button:hover{background:var(--bt-acao-suave);border-color:#9cc2e6;color:var(--bt-acao-escuro)}
.bt-acoes .perigo{color:var(--bt-perigo);border-color:#efc8c3}
.bt-acoes .perigo:hover{background:var(--bt-perigo-suave);border-color:#e3a39b;color:#8f1c13}
.bt-acoes .positivo{color:var(--bt-sucesso);border-color:#b7e4cb}
.bt-acoes .positivo:hover{background:var(--bt-sucesso-suave);border-color:#8fd3ae}
.bt-acoes .bt-ico{width:15px;height:15px}
th.bt-col-acoes,td.bt-col-acoes{width:1%;white-space:nowrap}

/* Barra de lista: filtros em abas + busca */
.bt-barra-lista{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:0 0 14px}
.bt-abas{display:inline-flex;gap:4px;background:#eef3f8;padding:4px;border-radius:10px;flex-wrap:wrap}
.bt-abas a{padding:7px 14px;border-radius:7px;color:#46566b;text-decoration:none;font-size:13.5px;font-weight:600;white-space:nowrap}
.bt-abas a:hover{color:var(--bt-marinho);background:rgba(255,255,255,.6)}
.bt-abas a.ativo{background:#fff;color:var(--bt-marinho);box-shadow:0 1px 3px rgba(15,40,80,.12)}
.bt-abas a small{font-weight:500;color:#7a8a9c;margin-left:4px}
.bt-busca{display:flex;gap:8px;align-items:center;flex:0 1 420px;min-width:240px}
.bt-busca input,.bt-busca select{flex:1 1 auto;min-width:0;height:38px;padding:0 12px;border:1px solid var(--bt-linha);border-radius:8px;font:400 14px var(--bt-fonte);background:#fff}
.bt-busca select{flex:0 0 auto}
.bt-busca button{height:38px;padding:0 16px;flex:0 0 auto}

/* Painel do módulo: grade de quadros e listas compactas */
.bt-grade-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-bottom:18px;align-items:start}
@media (max-width:900px){.bt-grade-2{grid-template-columns:1fr}}
.bt-quadro{padding:20px 22px!important;margin:0!important}
.bt-quadro-topo{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:10px}
.bt-quadro-topo h2{margin:0;font-size:17px;color:var(--bt-marinho)}
.bt-quadro-topo a{font-size:13.5px;font-weight:600;color:var(--bt-acao);text-decoration:none;white-space:nowrap}
.bt-quadro-topo a:hover{text-decoration:underline}
.bt-linhas{list-style:none;margin:0;padding:0}
.bt-linhas li{display:flex;align-items:center;gap:12px;padding:10px 0;border-top:1px solid #edf1f5;font-size:14px}
.bt-linhas li:first-child{border-top:0}
.bt-linhas .bt-linhas-principal{flex:1 1 auto;min-width:0}
.bt-linhas .bt-linhas-principal b{display:block;font-weight:600;color:var(--bt-texto);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.bt-linhas .bt-linhas-principal small{display:block;color:var(--bt-texto-2);font-size:12.5px}
.bt-linhas .bt-linhas-valor{font-weight:600;white-space:nowrap;font-variant-numeric:tabular-nums}
.bt-linhas a{color:inherit;text-decoration:none}
.bt-linhas a:hover b{color:var(--bt-acao)}
.bt-vazio{display:flex;align-items:center;gap:8px;padding:12px 14px;border-radius:10px;background:#f4f8fb;color:var(--bt-texto-2);font-size:14px;margin:0}
.bt-vazio.ok{background:var(--bt-sucesso-suave);color:var(--bt-sucesso)}
.bt-vazio .bt-ico{width:17px;height:17px}
.bt-indicadores a.card{text-decoration:none;color:inherit;transition:border-color .12s,box-shadow .12s}
.bt-indicadores a.card:hover{border-color:#9cc2e6;box-shadow:0 4px 14px rgba(15,60,110,.08)}
.bt-indicadores .card.perigo b{color:var(--bt-perigo)}
.bt-indicadores .card.atencao b{color:#8b5a00}
.bt-tabela td.bt-num,.bt-tabela th.bt-num{text-align:right;font-variant-numeric:tabular-nums}
.bt-tabela td a.bt-link-forte{font-weight:600;color:var(--bt-marinho);text-decoration:none}
.bt-tabela td a.bt-link-forte:hover{color:var(--bt-acao);text-decoration:underline}
.bt-tabela td small{display:block;color:var(--bt-texto-2);font-size:12.5px}
.bt-contagem{color:var(--bt-texto-2);font-size:13.5px;font-weight:500;margin-left:6px}
.bt-atalho{display:block;text-decoration:none;color:inherit;transition:border-color .12s,box-shadow .12s}
.bt-atalho:hover{border-color:#9cc2e6;box-shadow:0 4px 14px rgba(15,60,110,.08)}
.bt-atalho h2{margin:0 0 6px;font-size:17px;color:var(--bt-marinho)}
.bt-atalho p{margin:0;color:var(--bt-texto-2);font-size:14px}
.bt-tabela td{vertical-align:middle}
.bt-tabela th.bt-num,.bt-tabela td.bt-num,main .card .tablewrap>table.bt-tabela th.bt-num{text-align:right!important}

/* ===== Tela inicial do Portal: todos os módulos visíveis sem rolar ===== */
.bt-inicio{max-width:1280px;margin:0 auto;padding:4px 0 8px}
.bt-inicio-topo{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;margin:0 0 18px}
.bt-inicio-topo h1{margin:0;font-size:26px;line-height:1.2;color:var(--bt-marinho)}
.bt-inicio-topo p{margin:4px 0 0;color:var(--bt-texto-2);font-size:14.5px}
.bt-inicio-topo .bt-inicio-data{margin:0;font-size:14px;color:var(--bt-texto-2)}
.bt-inicio-grade{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}
@media (max-width:1180px){.bt-inicio-grade{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:860px){.bt-inicio-grade{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:540px){.bt-inicio-grade{grid-template-columns:1fr}}
.bt-mod{--cor:#1173c6;--cor-fundo:#eaf3fc;position:relative;display:grid;grid-template-columns:44px 1fr;grid-template-rows:auto 1fr;column-gap:14px;row-gap:10px;padding:16px 16px 14px;background:#fff;border:1px solid var(--bt-linha);border-radius:14px;text-decoration:none;color:inherit;box-shadow:0 1px 2px rgba(16,40,70,.04);transition:border-color .15s,box-shadow .15s,transform .15s;min-height:0}
.bt-mod::before{content:"";position:absolute;left:0;top:14px;bottom:14px;width:3px;border-radius:0 3px 3px 0;background:var(--cor);opacity:0;transition:opacity .15s}
.bt-mod:hover{border-color:#b7cfe6;box-shadow:0 8px 22px rgba(15,50,95,.09);transform:translateY(-1px)}
.bt-mod:hover::before,.bt-mod:focus-visible::before{opacity:1}
.bt-mod:focus-visible{outline:2px solid var(--bt-acao);outline-offset:2px}
.bt-mod .bt-mod-icone{grid-row:1 / span 2;width:44px!important;height:44px!important;margin:0!important;border-radius:12px!important;display:flex;align-items:center;justify-content:center;background:var(--cor-fundo)!important;border:0!important;color:var(--cor)!important;box-shadow:none!important;transform:none!important}
.bt-mod .bt-mod-icone svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.bt-mod-texto{min-width:0}
.bt-mod-texto b{display:block;font-size:16px;font-weight:600;color:var(--bt-marinho);line-height:1.3}
.bt-mod-texto small{display:block;margin-top:3px;font-size:13px;line-height:1.4;color:var(--bt-texto-2)}
.bt-mod-estado{display:flex;gap:6px;flex-wrap:wrap;align-self:end;margin:0!important}
.bt-mod-financeiro{--cor:#0f8a5f;--cor-fundo:#e7f6ef}
.bt-mod-recibos{--cor:#1f6fd1;--cor-fundo:#e8f1fc}
.bt-mod-orcamentos{--cor:#7046d6;--cor-fundo:#f0ebfc}
.bt-mod-veiculos{--cor:#d4631b;--cor-fundo:#fdf0e6}
.bt-mod-epi{--cor:#0b8fc2;--cor-fundo:#e5f5fb}
.bt-mod-gestao{--cor:#0f5f9e;--cor-fundo:#e7f0f8}
.bt-mod-admin{--cor:#4b5d73;--cor-fundo:#eef2f6}
.bt-inicio .bt-pendencias{margin-top:0}
.bt-colab{display:grid;grid-template-columns:320px minmax(0,1fr);gap:18px;align-items:start}
@media (max-width:1000px){.bt-colab{grid-template-columns:1fr}}
.bt-colab .bt-secao{margin:0}
.bt-form-pilha{display:flex;flex-direction:column;gap:12px;margin-top:12px}
.bt-form-pilha label{display:flex;flex-direction:column;gap:5px;font-size:13.5px;font-weight:600;color:var(--bt-texto)}
.bt-form-pilha input:not([type=checkbox]),.bt-form-pilha select{height:40px;padding:0 12px;border:1px solid var(--bt-linha);border-radius:8px;font:400 14px var(--bt-fonte)}
.bt-form-pilha .bt-check{flex-direction:row;align-items:center;gap:9px;font-weight:500}
.bt-form-pilha .bt-check input{width:16px;height:16px;margin:0}
.bt-form-pilha button{height:42px;margin-top:4px}
.bt-acoes details.bt-estorno{position:relative}
.bt-acoes details.bt-estorno summary{list-style:none;display:inline-flex;align-items:center;height:32px;padding:0 12px;border-radius:8px;font:600 13px/1 var(--bt-fonte);background:#fff;border:1px solid #efc8c3;color:var(--bt-perigo);cursor:pointer}
.bt-acoes details.bt-estorno summary::-webkit-details-marker{display:none}
.bt-acoes details.bt-estorno[open] form{position:absolute;right:0;top:38px;z-index:20;display:flex;gap:6px;background:#fff;border:1px solid var(--bt-linha);border-radius:10px;padding:10px;box-shadow:0 10px 28px rgba(15,40,80,.16);width:340px}
.bt-acoes details.bt-estorno input{flex:1;height:32px;padding:0 10px;border:1px solid var(--bt-linha);border-radius:8px;font:400 13px var(--bt-fonte)}
.bt-grade-2>.bt-quadro{height:100%;box-sizing:border-box}
.bt-quadro+.bt-quadro,.bt-grade-2+.bt-quadro{margin-top:0!important}
main>.bt-quadro,.wrap>.bt-quadro{margin-bottom:18px!important}
.bt-col-acoes .bt-acoes{flex-wrap:nowrap}
.bt-acoes button.perigo,.bt-acoes a.perigo{color:var(--bt-perigo)!important;border-color:#efc8c3!important;background:#fff!important}
.bt-acoes button.perigo:hover,.bt-acoes a.perigo:hover{background:var(--bt-perigo-suave)!important}
.bt-acoes button.positivo{color:var(--bt-sucesso)!important;border-color:#b7e4cb!important;background:#fff!important}
.bt-acoes button.positivo:hover{background:var(--bt-sucesso-suave)!important}
.bt-acoes a,.bt-acoes button{margin:0!important;width:auto!important;min-width:0!important}
.bt-form-pilha label{margin:0!important}
.bt-form-pilha input:not([type=checkbox]){margin:0!important;width:100%;box-sizing:border-box}
.bt-tipos-doc input,.bt-tipos-doc select{height:36px;padding:0 10px;border:1px solid var(--bt-linha);border-radius:8px;font:400 14px var(--bt-fonte);background:#fff;margin:0}
.bt-tipos-doc td:first-child input{width:100%;min-width:220px;box-sizing:border-box}
.bt-campo-sufixo{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;color:var(--bt-texto-2);font-size:13.5px}
.bt-campo-sufixo input{width:76px}
.bt-historico-docs{margin-top:12px}
.bt-historico-docs summary{cursor:pointer;font-weight:600;color:var(--bt-acao);font-size:14px;padding:6px 0}
.formpanel~#documentos{max-width:1180px;box-sizing:border-box}
.bt-tipos-doc td:first-child input{width:100%!important;min-width:260px!important}
#form-documento{grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:900px){#form-documento{grid-template-columns:1fr}}

/* =====================================================================
   v1.19.0 · menu em árvore (Telas), busca Ctrl+K, telas dentro de janelas
   ===================================================================== */
/* Nome do módulo = menu de todas as telas (passar o mouse ou clicar abre a árvore). */
.bt-trocar{border-radius:10px;border-left:0;margin-left:2px;padding:6px 10px 6px 12px;position:relative;cursor:pointer}
.bt-trocar::before{content:"";position:absolute;left:-10px;top:10px;bottom:10px;width:1px;background:rgba(255,255,255,.16)}
.bt-trocar:hover,.bt-trocar[aria-expanded="true"]{background:var(--bt-marinho-2)}
.bt-trocar .bt-trocar-seta{width:16px!important;height:16px!important;opacity:.8;transition:transform .15s}
.bt-trocar[aria-expanded="true"] .bt-trocar-seta{transform:rotate(180deg)}
.bt-busca-botao kbd{font:500 11px/1 ui-monospace,Consolas,monospace;background:rgba(255,255,255,.14);border-radius:5px;padding:3px 6px;color:inherit}
.bt-busca-botao span{display:none}
.bt-paleta kbd{font:500 11px/1 ui-monospace,Consolas,monospace;border-radius:5px;padding:3px 6px}
.bt-topo.aperto-1 .bt-busca-botao kbd{display:none}
@media (max-width:1240px){.bt-busca-botao kbd{display:none}}
@media (max-width:1100px){.bt-busca-botao span{display:inline}.bt-busca-botao kbd{display:none}.bt-trocar{margin-left:0}.bt-trocar::before{display:none}}
.bt-topo.recolhido .bt-busca-botao span{display:inline}
@media (max-width:480px){.bt-trocar small{display:none}.bt-trocar{padding:6px 8px}}

.bt-cascata{position:fixed;z-index:3000;display:flex;align-items:flex-start;gap:4px;font-family:var(--bt-fonte)}
.bt-cascata-col{min-width:230px;max-width:300px;max-height:calc(100vh - 110px);overflow:auto;background:#fff;border:1px solid var(--bt-linha);border-radius:12px;box-shadow:0 16px 40px rgba(11,40,82,.22);padding:6px;box-sizing:border-box}
.bt-cascata-nivel{padding:6px 10px 6px;font-size:12px;font-weight:600;color:var(--bt-texto-2)}
.bt-cascata-item{display:flex;align-items:center;gap:10px;width:100%;box-sizing:border-box;text-align:left;background:transparent;border:0;border-radius:8px;padding:9px 10px;color:var(--bt-texto);font:500 14.5px/1.25 var(--bt-fonte);text-decoration:none;cursor:pointer}
.bt-cascata-item:hover,.bt-cascata-item:focus-visible,.bt-cascata-item.ativo{background:var(--bt-acao-suave);color:var(--bt-acao-escuro);outline:none}
.bt-cascata-item.folha{font-weight:400}
.bt-cascata-rot{flex:1 1 auto}
.bt-cascata-seta{color:var(--bt-texto-2);font-size:17px;line-height:1}
.bt-cascata-sigla{flex:0 0 auto;display:inline-grid;place-items:center;width:26px;height:22px;border-radius:6px;color:#fff;font:700 10.5px/1 var(--bt-fonte);letter-spacing:.02em}
@media (max-width:700px){
  .bt-cascata{left:8px!important;right:8px;flex-direction:column;align-items:stretch;max-height:calc(100vh - 80px);overflow:auto}
  .bt-cascata-col{max-width:none;max-height:none}
}

.bt-paleta-fundo{position:fixed;inset:0;z-index:4000;background:rgba(8,24,46,.38);display:flex;justify-content:center;align-items:flex-start;padding:11vh 16px 0;font-family:var(--bt-fonte)}
.bt-paleta{width:min(660px,100%);background:#fff;border:1px solid var(--bt-linha);border-radius:14px;box-shadow:0 24px 60px rgba(8,24,46,.35);overflow:hidden}
.bt-paleta input{display:block;width:100%;box-sizing:border-box;border:0;border-bottom:1px solid var(--bt-linha);padding:16px 18px;font:16px var(--bt-fonte);color:var(--bt-texto);outline:none;background:#fff}
.bt-paleta ul{list-style:none;margin:0;padding:6px;max-height:min(56vh,480px);overflow:auto}
.bt-paleta li{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:8px;cursor:pointer;color:var(--bt-texto)}
.bt-paleta li small{margin-left:auto;color:var(--bt-texto-2);font-size:12.5px;text-align:right;padding-left:12px}
.bt-paleta li em{font-style:normal;font-size:12px;color:var(--bt-texto-2);margin-left:6px}
.bt-paleta li.sel{background:var(--bt-acao-suave);color:var(--bt-acao-escuro)}
.bt-paleta li.vazio{cursor:default;color:var(--bt-texto-2);justify-content:center;padding:18px}
.bt-paleta-rod{display:flex;gap:16px;flex-wrap:wrap;padding:9px 16px;border-top:1px solid var(--bt-linha);font-size:12.5px;color:var(--bt-texto-2)}
.bt-paleta-rod kbd{background:var(--bt-fundo);border:1px solid var(--bt-linha);color:var(--bt-texto)}
@media (max-width:600px){.bt-paleta li small{display:none}.bt-paleta-rod{display:none}}

/* Tela aberta dentro de uma janela da Área de trabalho: sem cabeçalho e sem rodapé. */
html.bt-embutido .bt-topo,html.bt-embutido .bt-rodape{display:none!important}
html.bt-embutido body>main{margin-top:12px;padding:0 14px 16px;max-width:none}
html.bt-embutido .bt-pagina-topo{margin-bottom:12px}
html.bt-embutido .bt-pagina-topo h1{font-size:20px}

/* ---------- quadro kanban (Orçamentos, Ordens de serviço, Manutenções) ---------- */
.bt-kanban{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(220px,1fr);gap:12px;overflow-x:auto;padding-bottom:6px;align-items:start}
.bt-kanban.compacto{grid-auto-columns:minmax(168px,1fr);gap:8px}
.bt-kanban.compacto .bt-cartao{padding:9px 10px;font-size:13px}
.bt-kcol{background:#eef3f8;border:1px solid var(--bt-linha);border-radius:12px;display:flex;flex-direction:column;min-height:180px;max-height:calc(100vh - 210px)}
html.bt-embutido .bt-kcol{max-height:calc(100vh - 130px)}
.bt-kcol>header{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 12px;border-bottom:1px solid var(--bt-linha);font-weight:600;font-size:14px}
.bt-kcol>header small{font-weight:500;color:var(--bt-texto-2);font-variant-numeric:tabular-nums;white-space:nowrap}
.bt-kcol>header .bt-ktom{width:9px;height:9px;border-radius:50%;flex:0 0 auto;margin-right:2px}
.bt-kcol>header span{display:flex;align-items:center;gap:7px}
.bt-klista{flex:1 1 auto;overflow:auto;padding:8px;display:flex;flex-direction:column;gap:8px;min-height:70px}
.bt-kcol.pode{background:#e4f5fc;border-color:var(--bt-fibra)}
.bt-kcol.nao{opacity:.55}
.bt-kcol.alvo{outline:3px dashed var(--bt-fibra);outline-offset:-4px}
.bt-cartao{position:relative;background:#fff;border:1px solid var(--bt-linha);border-radius:10px;padding:10px 12px;font-size:13.5px;line-height:1.35;box-shadow:0 1px 2px rgba(11,40,82,.06);color:var(--bt-texto)}
.bt-cartao[draggable="true"]{cursor:grab}
.bt-cartao.arrastando{opacity:.45}
.bt-cartao.movendo{opacity:.6;pointer-events:none}
.bt-cartao .bt-cartao-titulo{display:block;font-weight:600;color:var(--bt-texto);text-decoration:none;padding-right:26px;font-size:14px}
.bt-cartao a.bt-cartao-titulo:hover{color:var(--bt-acao);text-decoration:underline}
.bt-cartao .bt-cartao-sub{color:var(--bt-texto-2);margin-top:2px}
.bt-cartao .bt-cartao-pe{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:6px;color:var(--bt-texto-2);font-size:12.5px}
.bt-cartao .bt-cartao-pe b{color:var(--bt-texto);font-variant-numeric:tabular-nums;white-space:nowrap}
.bt-cartao .bt-txt-perigo{color:var(--bt-perigo);font-weight:600}
.bt-cartao .bt-txt-atencao{color:var(--bt-atencao);font-weight:600}
.bt-cartao-mover{position:absolute;top:6px;right:6px;width:26px;height:26px;border:0;border-radius:6px;background:transparent;color:var(--bt-texto-2);cursor:pointer;font-size:16px;line-height:1}
.bt-cartao-mover:hover,.bt-cartao-mover[aria-expanded="true"]{background:var(--bt-acao-suave);color:var(--bt-acao)}
.bt-cartao-menu{position:absolute;top:34px;right:6px;z-index:5;min-width:200px;background:#fff;border:1px solid var(--bt-linha);border-radius:10px;box-shadow:0 12px 28px rgba(11,40,82,.2);padding:5px}
.bt-cartao-menu button{display:block;width:100%;text-align:left;background:transparent;border:0;border-radius:7px;padding:8px 10px;font:14px var(--bt-fonte);color:var(--bt-texto);cursor:pointer}
.bt-cartao-menu button:hover,.bt-cartao-menu button:focus-visible{background:var(--bt-acao-suave);color:var(--bt-acao-escuro)}
.bt-cartao-menu p{margin:4px 10px 6px;font-size:12px;color:var(--bt-texto-2)}
.bt-kvazio{color:var(--bt-texto-2);font-size:13px;text-align:center;padding:14px 6px;border:1px dashed var(--bt-linha);border-radius:9px}
.bt-kmais{font-size:13px;text-align:center;padding:4px}
.bt-kbarra{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;margin-bottom:12px}
.bt-kbarra p{margin:0;color:var(--bt-texto-2);font-size:13.5px}
.bt-alternar{display:inline-flex;border:1px solid var(--bt-linha);border-radius:9px;overflow:hidden;background:#fff}
.bt-alternar a{padding:7px 14px;font-size:14px;text-decoration:none;color:var(--bt-texto);font-weight:500}
.bt-alternar a+a{border-left:1px solid var(--bt-linha)}
.bt-alternar a[aria-current]{background:var(--bt-marinho);color:#fff}
.bt-aviso-flutuante{position:fixed;left:50%;bottom:22px;transform:translateX(-50%);z-index:5000;background:var(--bt-marinho);color:#fff;border-radius:10px;padding:10px 18px;font:14px var(--bt-fonte);box-shadow:0 12px 30px rgba(8,24,46,.3);max-width:calc(100vw - 32px)}
.bt-aviso-flutuante.erro{background:var(--bt-perigo)}

/* ---------- tela inicial: painel do dia (v1.19.1) ---------- */
.bt-inicio-acoes{display:flex;gap:10px;flex-wrap:wrap}
.bt-inicio-acoes .btn{display:inline-flex;align-items:center;gap:8px}
.bt-inicio-busca kbd{font:500 11px/1 ui-monospace,Consolas,monospace;border:1px solid var(--bt-linha);background:var(--bt-fundo);border-radius:5px;padding:3px 6px;color:var(--bt-texto-2)}
.bt-inicio-mods{display:grid;grid-template-columns:repeat(auto-fill,minmax(168px,1fr));gap:12px;margin-bottom:18px}
.bt-inicio-mods .bt-mod{grid-template-columns:38px 1fr;padding:14px 14px 12px;row-gap:8px}
.bt-inicio-mods .bt-mod .bt-mod-icone{width:38px!important;height:38px!important;border-radius:10px!important}
.bt-inicio-mods .bt-mod .bt-mod-icone svg{width:20px;height:20px}
.bt-inicio-mods .bt-mod-texto b{font-size:15px}
.bt-mod-num{display:block;margin-top:4px;font-size:20px;font-weight:700;color:var(--bt-texto);font-variant-numeric:tabular-nums;line-height:1.2}
.bt-inicio-mods .bt-mod-texto small{margin-top:1px;font-size:12.5px}
.bt-mod-gestao{--cor:#2b6f8f;--cor-fundo:#e6f1f6}
.bt-mod-admin{--cor:#4b5d73;--cor-fundo:#edf1f5}
.bt-inicio-dupla{display:grid;grid-template-columns:minmax(0,2fr) minmax(260px,1fr);gap:16px;align-items:start}
.bt-inicio-dupla .bt-pendencias{margin:0}
.bt-inicio-lado{display:flex;flex-direction:column;gap:16px}
.bt-atalhos{margin:0;padding:16px 18px}
.bt-atalhos h2{margin:0 0 8px;font-size:16px;color:var(--bt-marinho)}
.bt-atalhos ul{list-style:none;margin:0;padding:0}
.bt-atalhos li a{display:flex;align-items:center;gap:10px;padding:8px 6px;border-radius:8px;text-decoration:none;color:var(--bt-texto);font-size:14.5px}
.bt-atalhos li a:hover{background:var(--bt-acao-suave);color:var(--bt-acao-escuro)}
.bt-atalhos li a small{display:block;font-size:12px;color:var(--bt-texto-2)}
.bt-atalhos .bt-cascata-sigla svg{width:14px;height:14px;color:#fff}
@media (max-width:1000px){.bt-inicio-dupla{grid-template-columns:1fr}}
@media (max-width:540px){.bt-inicio-mods{grid-template-columns:1fr 1fr}.bt-inicio-mods .bt-mod{grid-template-columns:1fr}.bt-inicio-mods .bt-mod .bt-mod-icone{grid-row:auto}.bt-mod-estado{display:none!important}}
.bt-topo button.bt-acao{background:transparent;color:#fff;font:500 14px var(--bt-fonte);cursor:pointer;box-shadow:none;min-height:0;height:auto;line-height:normal;margin:0}
.bt-topo button.bt-acao:hover{background:var(--bt-marinho-2)}
.bt-topo.aperto-2 button.bt-acao,.bt-topo button.bt-acao{width:auto}
/* 7 cartões numa linha: ícone em cima, número em destaque */
.bt-inicio-mods .bt-mod{grid-template-columns:1fr;grid-template-rows:auto 1fr auto;row-gap:8px;padding:14px}
.bt-inicio-mods .bt-mod .bt-mod-icone{grid-row:auto;width:34px!important;height:34px!important}
.bt-inicio-mods .bt-mod .bt-mod-icone svg{width:19px;height:19px}
.bt-inicio-mods .bt-mod-num{white-space:nowrap}

/* ---------- barra de módulos (v1.19.1): passar o mouse abre as opções ---------- */
.bt-busca-campo{display:flex;align-items:center;gap:8px;flex:0 1 300px;min-width:150px;margin-left:6px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);border-radius:8px;padding:7px 10px;color:#c7d6e8;font:14px var(--bt-fonte);cursor:pointer;text-align:left}
.bt-busca-campo:hover{background:rgba(255,255,255,.14);color:#fff}
.bt-busca-campo .bt-ico{width:17px!important;height:17px!important}
.bt-busca-campo span{flex:1 1 auto;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bt-busca-campo kbd{font:500 11px/1 ui-monospace,Consolas,monospace;background:rgba(255,255,255,.14);border-radius:5px;padding:3px 6px;color:#fff}
.bt-barra-menu{background:var(--bt-marinho-2);border-top:1px solid rgba(255,255,255,.08);min-height:40px}
.bt-bm{display:flex;align-items:stretch;gap:2px;list-style:none;margin:0 auto;padding:0 24px;max-width:1600px;box-sizing:border-box;min-height:40px}
.bt-bm-mod{position:relative}
.bt-bm-topo{display:flex;align-items:center;gap:7px;height:100%;min-height:40px;background:transparent;border:0;color:#dce8f5;font:500 14px var(--bt-fonte);padding:0 13px;cursor:pointer;white-space:nowrap;position:relative}
.bt-bm-topo i{width:8px;height:8px;border-radius:50%;display:inline-block}
.bt-bm-topo svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;opacity:.75}
.bt-bm-mod:hover>.bt-bm-topo,.bt-bm-mod:focus-within>.bt-bm-topo,.bt-bm-mod.aberto>.bt-bm-topo{background:rgba(255,255,255,.12);color:#fff}
.bt-bm-mod.atual>.bt-bm-topo{color:#fff;font-weight:600}
.bt-bm-mod.atual>.bt-bm-topo::after{content:"";position:absolute;left:12px;right:12px;bottom:0;height:3px;border-radius:3px 3px 0 0;background:var(--bt-fibra)}
.bt-bm-sub{list-style:none;margin:0;padding:6px;position:absolute;top:100%;left:0;min-width:230px;background:#fff;border:1px solid var(--bt-linha);border-radius:0 0 10px 10px;box-shadow:0 14px 34px rgba(11,40,82,.2);z-index:70;visibility:hidden;opacity:0;transition:visibility 0s linear .18s,opacity .1s linear .18s}
.bt-bm-sub .bt-bm-sub{top:-7px;left:100%;border-radius:10px;margin-left:2px}
.bt-bm li{position:relative}
.bt-bm-mod:hover>.bt-bm-sub,.bt-bm-mod.aberto>.bt-bm-sub,.bt-bm-mod:focus-within>.bt-bm-sub,
.bt-bm-sub li:hover>.bt-bm-sub,.bt-bm-sub li.aberto>.bt-bm-sub,.bt-bm-sub li:focus-within>.bt-bm-sub{visibility:visible;opacity:1;transition-delay:0s}
.bt-bm-item{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:8px 11px;border-radius:7px;color:var(--bt-texto);text-decoration:none;font:14px/1.3 var(--bt-fonte);white-space:nowrap;cursor:pointer}
.tem-filhos>.bt-bm-item::after{content:"›";font-size:17px;line-height:1;color:var(--bt-texto-2)}
.bt-bm-sub li:hover>.bt-bm-item,.bt-bm-item:focus-visible,.bt-bm-sub li.aberto>.bt-bm-item{background:var(--bt-acao-suave);color:var(--bt-acao-escuro);outline:none}
.bt-bm-item[aria-current]{font-weight:600;color:var(--bt-acao)}
.bt-bm-mod.abre-esquerda>.bt-bm-sub{left:auto;right:0}
.bt-bm-mod.abre-esquerda .bt-bm-sub .bt-bm-sub{left:auto;right:100%;margin-left:0;margin-right:2px}
@media (min-width:1101px){
  .bt-topo:has(.bt-barra-menu) .bt-nav{display:none}
  .bt-topo:has(.bt-barra-menu) .bt-trocar-geral{display:none}
  .bt-topo:has(.bt-barra-menu) .bt-trocar .bt-trocar-seta{display:none}
  .bt-topo:has(.bt-barra-menu) .bt-trocar{cursor:pointer}
  .bt-topo .bt-conta .bt-busca-botao{display:none}
}
@media (max-width:1100px){.bt-barra-menu,.bt-busca-campo{display:none}}
@media print{.bt-barra-menu{display:none}}

/* v1.19.4: visual da 1.18.6 de volta; dica discreta na tela inicial */
.bt-inicio-dica{display:inline-block;margin-left:6px;font-size:13px;color:var(--bt-texto-2)}
.bt-inicio-dica kbd{font:500 11px/1 ui-monospace,Consolas,monospace;border:1px solid var(--bt-linha);background:#fff;border-radius:4px;padding:2px 5px}
@media (max-width:700px){.bt-inicio-dica{display:none}}
/* Colaboradores: situação dos documentos na lista */
.bt-doc-aviso{display:inline-flex;align-items:center;gap:5px;border-radius:999px;padding:2px 9px;font-size:12.5px;font-weight:600;text-decoration:none;white-space:nowrap}
.bt-doc-aviso::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}
.bt-doc-aviso.perigo{background:var(--bt-perigo-suave);color:var(--bt-perigo)}
.bt-doc-aviso.atencao{background:var(--bt-atencao-suave);color:var(--bt-atencao)}
.bt-doc-aviso:hover{text-decoration:underline}
.bt-doc-ok{font-size:13px;color:var(--bt-texto-2)}
.bt-txt-suave{color:var(--bt-texto-2)}
.bt-colab .bt-form-pilha small{font-weight:400;color:var(--bt-texto-2)}
.bt-col-nome{min-width:190px}.bt-col-nome small{display:block}
@media (max-width:1000px){.bt-colab{grid-template-columns:minmax(0,1fr)}.bt-colab .bt-colab-novo{order:2}}
.bt-colab>.bt-quadro{min-width:0}
/* Ambiente de teste: faixa amarela em todas as telas */
.bt-faixa-teste{background:#ffd43b;color:#3d2c00;text-align:center;font:500 13.5px/1.35 var(--bt-fonte);padding:6px 16px;border-bottom:1px solid #e0b100}
.bt-faixa-teste b{letter-spacing:.04em}
.ar-faixa{position:fixed;left:0;right:0;bottom:42px;z-index:2500;padding:3px 12px;font-size:12.5px;opacity:.95}
@media print{.bt-faixa-teste{display:none}}
.bt-faixa-teste code{font:500 12.5px ui-monospace,Consolas,monospace;background:rgba(255,255,255,.55);border-radius:4px;padding:1px 5px}
.bt-rodape-teste{color:#b54708}
/* Cargos */
.bt-cargo-tipos{display:flex;flex-wrap:wrap;gap:6px 16px;border:0;padding:0;margin:0}
.bt-cargo-tipos legend{font-weight:600;font-size:14px;margin-bottom:6px;padding:0}
.bt-cargo-tipos label{display:inline-flex!important;align-items:center;gap:6px;font-weight:500;font-size:13.5px;white-space:nowrap;margin:0!important}
.bt-cargo-tipos input{width:auto!important;height:auto!important;margin:0!important}
.bt-cargos td small{display:block;color:var(--bt-texto-2)}
.bt-cargo-dica{display:block;margin-top:4px;font-size:13px;color:var(--bt-texto-2);font-weight:500}
/* Tabela que vira cartões no celular (ex.: Consulta de Garantias usada pelo técnico em campo) */
@media (max-width:700px){
  .bt-tabela-cartoes thead{display:none}
  .bt-tabela-cartoes,.bt-tabela-cartoes tbody,.bt-tabela-cartoes tr,.bt-tabela-cartoes td{display:block;width:100%}
  .bt-tabela-cartoes tr{border:1px solid var(--bt-borda,#dbe3ec);border-radius:10px;padding:8px 12px;margin:0 0 10px;background:#fff}
  .bt-tabela-cartoes td{border:0;padding:4px 0;display:grid;grid-template-columns:100px 1fr;gap:8px;text-align:left;align-items:start}
  .bt-tabela-cartoes td .bt-status,.bt-tabela-cartoes td [class*=status]{justify-self:start}
  .bt-tabela-cartoes td::before{content:attr(data-rotulo);font-size:12px;color:var(--bt-texto-2,#64748b);font-weight:600}
  .bt-tabela-cartoes td[colspan]{display:block}
  .bt-tabela-cartoes td[colspan]::before{content:none}
  .bt-busca-garantia{display:flex;gap:8px}
  .bt-busca-garantia input{flex:1;min-width:0;font-size:16px}
}

/* Visor de documentos sobre a tela (Ver PDF / recibo) - v1.19.8 */
.bt-visor{position:fixed;inset:0;z-index:6000;background:rgba(8,24,46,.55);display:flex;align-items:center;justify-content:center;padding:24px}
.bt-visor-caixa{background:#fff;border-radius:12px;width:min(1100px,100%);height:min(92vh,1200px);display:flex;flex-direction:column;overflow:hidden;box-shadow:0 20px 60px rgba(8,24,46,.4)}
.bt-visor-barra{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;border-bottom:1px solid #dce9f3;background:#f6f9fc}
.bt-visor-barra b{font:600 15px var(--bt-fonte,sans-serif);color:#0b2852;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bt-visor-barra span{display:flex;gap:8px;flex-shrink:0}
.bt-visor-barra button,.bt-visor-barra a{font:600 13px var(--bt-fonte,sans-serif);border:1px solid #c9dcea;background:#fff;color:#0b2852;border-radius:8px;padding:7px 12px;cursor:pointer;text-decoration:none;width:auto;min-height:0}
.bt-visor-barra button[data-acao=imprimir]{background:#0b2852;color:#fff;border-color:#0b2852}
.bt-visor iframe{flex:1;width:100%;border:0;background:#525659}
.bt-linha-total td{background:#f3f7fb;border-top:2px solid #dce9f3}
