:root { --azul:var(--tema-fundo,#001a66); --azul2:var(--tema-menu,#062b8f); --ciano:var(--tema-rotulo,#54ffff); --amarelo:var(--tema-destaque,#fff36a); --branco:var(--tema-texto,#f3f7ff); --sombra:var(--tema-sombra,#000826); }
* { box-sizing:border-box; }
a { color:var(--amarelo); text-decoration-thickness:2px; text-underline-offset:2px; }
a:visited { color:#ffd58a; }
a:hover,a:focus { color:white; background:#1747a8; outline:1px solid var(--ciano); }
body { margin:0; min-height:100vh; background:var(--azul); color:var(--branco); font:18px/1.35 Consolas,"Courier New",monospace; padding-bottom:48px; }
.topo { height:58px; display:flex; align-items:center; justify-content:space-between; padding:0 24px; border-bottom:3px double var(--ciano); color:var(--ciano); background:#000e42; }
.topo strong { color:var(--amarelo); font-size:24px; letter-spacing:2px; }
.topo strong small { color:var(--ciano); font-size:12px; letter-spacing:0; }
.menu { display:flex; gap:4px; padding:8px 14px; background:var(--azul2); border-bottom:1px solid var(--ciano); }
.menu a,.menu span { color:var(--branco); text-decoration:none; padding:5px 10px; white-space:nowrap; }
.menu a:hover,.menu a:focus { color:#00134d; background:var(--ciano); outline:none; }
.menu a.ativo { color:#00134d; background:var(--amarelo); outline:2px solid white; font-weight:bold; }
.menu .futuro { color:#8fa3d8; }
main { padding:22px; }
.janela { max-width:1400px; margin:auto; border:2px solid var(--ciano); box-shadow:10px 10px 0 var(--sombra); background:#00227c; padding:14px; }
h1 { margin:0 0 16px; color:var(--amarelo); text-align:center; font-size:22px; }
.subtitulo { text-align:center; color:var(--ciano); }
.atalhos { max-width:700px; margin:35px auto; display:grid; gap:14px; }
.atalhos a,.atalhos div { display:grid; grid-template-columns:65px 1fr auto; gap:12px; padding:14px; border:1px solid var(--ciano); color:var(--branco); text-decoration:none; }
.atalhos a:hover,.atalhos a:focus { background:var(--ciano); color:#00134d; outline:none; }
.atalhos a.destaque { background:var(--amarelo); color:#00134d; border:2px solid white; }
.atalhos span { color:var(--amarelo); font-weight:bold; }
.mensagem { color:#00134d; background:var(--amarelo); padding:10px; text-align:center; }
.pesquisa { display:flex; align-items:center; gap:12px; margin-bottom:15px; }
input { flex:1; min-width:220px; color:var(--amarelo); background:#000b39; border:1px solid var(--ciano); padding:9px; font:inherit; }
input:focus { outline:2px solid var(--amarelo); }
button { background:var(--ciano); color:#00134d; border:0; padding:10px 18px; font:bold 16px Consolas,monospace; cursor:pointer; }
select { color:var(--amarelo); background:#000b39; border:1px solid var(--ciano); padding:9px; font:inherit; }
.botao { display:inline-block; background:var(--ciano); color:#00134d; padding:9px 14px; text-decoration:none; font-weight:bold; }
.botao.secundario { background:#8fa3d8; }
.titulo-acao { display:flex; align-items:center; justify-content:space-between; margin-bottom:14px; }
.titulo-acao h1 { margin:0; }
.flash { margin:10px 0; padding:9px; color:#00134d; background:var(--amarelo); }
.flash { transition:opacity .45s ease,transform .45s ease; }
.flash.sumindo { opacity:0; transform:translateY(-5px); }
.flash.sucesso { background:#7dffb2; }
.campo-linha { display:grid; grid-template-columns:160px 1fr; gap:12px; align-items:center; margin:15px 0; }
.itens-editaveis { margin:12px 0; }
.itens-editaveis input { width:100%; min-width:100px; }
.itens-editaveis td:first-child { width:55%; }
.remover { padding:7px 12px; color:white; background:#a5162f; }
.perigo { color:white; background:#a5162f; }
.acoes { display:flex; justify-content:flex-end; gap:12px; margin-top:22px; }
.documento-topo { display:flex; justify-content:space-between; border-bottom:3px double var(--ciano); margin-bottom:15px; }
.documento-topo h1 { text-align:left; margin-top:5px; }
.cabecalho-impresso { display:grid; grid-template-columns:190px 1fr; align-items:center; gap:26px; margin-bottom:15px; padding-bottom:12px; border-bottom:1px solid var(--ciano); }
.cabecalho-impresso img { width:180px; height:105px; object-fit:contain; background:white; }
.assinatura-page{max-width:1180px;margin:0 auto}.assinatura-page p,.assinatura-page li{line-height:1.6}.plano-basico,.cartao-modulo,.resumo-assinatura{border:1px solid var(--tema-borda,#54ffff);padding:20px;margin:18px 0}.plano-basico{border-width:2px}.recursos-basico{columns:2;column-gap:36px}.recursos-basico li{break-inside:avoid;margin-bottom:8px}.grade-modulos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.cartao-modulo{margin:0;display:flex;flex-direction:column}.cartao-modulo ul{padding-left:20px;flex:1}.cartao-modulo h3{margin-bottom:0}.selo-plano{font-size:.8em;padding:5px 10px;border:1px solid currentColor;align-self:flex-start}.contratado .selo-plano{color:var(--tema-sucesso,#7dffb2)}.preco-plano{font-weight:bold;font-size:1.15em}.preco-plano small{font-weight:normal}.resumo-assinatura strong{font-size:1.35em}@media(max-width:760px){.grade-modulos{grid-template-columns:1fr}.recursos-basico{columns:1}.assinatura-page .titulo-acao{flex-wrap:wrap;gap:12px}}
.cabecalho-impresso strong { color:var(--amarelo); font-size:24px; }
.contato-impresso { display:flex; flex-direction:column; gap:3px; font-size:17px; }
.contato-impresso span b { color:var(--ciano); }
.rodape-documento { margin-top:28px; padding:12px; border-top:1px solid var(--ciano); text-align:center; color:var(--ciano); }
.cliente-doc { margin:12px 0 20px; padding:10px; border:1px solid var(--ciano); }
.total-documento { text-align:right; color:var(--amarelo); font-size:24px; font-weight:bold; margin-top:18px; }
.resumo-venda { display:grid; grid-template-columns:180px 1fr; gap:9px; margin:15px 0 25px; padding:15px; border:1px solid var(--ciano); }
.resumo-venda span { color:var(--ciano); }
.resumo-desconto { display:flex; justify-content:flex-end; flex-wrap:wrap; gap:24px; margin-top:16px; padding:12px; border:1px solid var(--ciano); color:var(--ciano); }
.resumo-desconto b { color:var(--amarelo); }
.aviso-operacao { margin-top:18px; padding:12px; color:#00134d; background:var(--amarelo); }
.modal-alteracoes { position:fixed; z-index:1000; inset:0; display:grid; place-items:center; padding:20px; background:rgba(0,8,38,.82); }
.modal-alteracoes[hidden] { display:none; }
.modal-alteracoes-caixa { width:min(650px,96vw); padding:24px; border:3px solid var(--amarelo); background:#00227c; box-shadow:12px 12px 0 #000826; }
.modal-alteracoes-caixa h2 { margin-top:0; color:var(--amarelo); text-align:center; }
.modal-alteracoes-acoes { display:flex; justify-content:center; flex-wrap:wrap; gap:12px; margin-top:22px; }
.modal-alteracoes-acoes .secundario { background:#8fa3d8; }
.meio-pagamento { display:grid; grid-template-columns:minmax(260px,1fr) minmax(180px,1fr); gap:12px; align-items:center; margin:10px 0; padding:10px 12px; border:1px solid #3155aa; background:#00134d; }
.meio-pagamento label { display:flex; align-items:center; gap:10px; color:var(--branco); cursor:pointer; }
.meio-pagamento label input { flex:none; min-width:auto; width:22px; height:22px; }
.autocomplete { position:relative; }
.autocomplete > div { position:relative; }
.sugestoes { position:absolute; z-index:20; left:0; right:0; top:100%; max-height:260px; overflow:auto; background:#000b39; border:1px solid var(--ciano); box-shadow:6px 6px 0 var(--sombra); }
.sugestoes:empty { display:none; }
.sugestao { display:block; width:100%; padding:9px; color:var(--branco); background:#000b39; border:0; border-bottom:1px solid #3155aa; text-align:left; font-weight:normal; }
.sugestao:hover,.sugestao:focus { color:#00134d; background:var(--ciano); }
.sugestao.ativa { color:#00134d; background:var(--amarelo); }
.tabela-wrap tbody tr.selecionada { background:var(--tema-selecao-fundo,#fff36a) !important; color:var(--tema-selecao-texto,#00134d) !important; outline:2px solid var(--tema-borda,#54ffff); }
.estoque-insuficiente { background:#b00020 !important; color:#fff !important; font-weight:900 !important; animation:piscar-estoque .8s steps(2,end) infinite; }
@keyframes piscar-estoque { 50% { background:#ffeb3b !important; color:#730000 !important; } }
.sugestao-vazia { padding:9px; color:#ffadad; }
.tabela-orcamento { overflow:visible; }
.orcamento-editor .itens-editaveis { table-layout:fixed; min-width:1250px; }
.orcamento-editor .itens-editaveis th:nth-child(1){width:45px}.orcamento-editor .itens-editaveis th:nth-child(2){width:360px}.orcamento-editor .itens-editaveis th:nth-child(3){width:60px}.orcamento-editor .itens-editaveis th:nth-child(4){width:95px}.orcamento-editor .itens-editaveis th:nth-child(5){width:115px}.orcamento-editor .itens-editaveis th:nth-child(6){width:125px}.orcamento-editor .itens-editaveis th:nth-child(7){width:115px}.orcamento-editor .itens-editaveis th:nth-child(8){width:135px}.orcamento-editor .itens-editaveis th:nth-child(9){width:125px}.orcamento-editor .itens-editaveis th:nth-child(10){width:55px}
.material-celula .sugestoes { right:auto; width:720px; max-width:calc(100vw - 110px); }
.material-celula .sugestao { white-space:nowrap; overflow:hidden; text-overflow:ellipsis; padding:10px 14px; }
.orcamento-editor .unidade,.orcamento-editor .estoque,.orcamento-editor .total-item { color:var(--branco); font-weight:bold; }
.orcamento-editor .preco[readonly] { color:var(--amarelo); background:#00134d; border-color:#8fa3d8; cursor:not-allowed; opacity:1; }
.orcamento-editor tbody tr:hover .unidade,.orcamento-editor tbody tr:hover .estoque,.orcamento-editor tbody tr:hover .total-item { color:#00134d; }
.barra-itens { display:flex; justify-content:space-between; align-items:center; gap:18px; margin:12px 0; }
.barra-itens { flex-wrap:wrap; }
#preco-minimo-editor,#lucro-editor { flex:1 0 100%; width:100%; }
.preco-minimo-resumo { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px 24px; }
.preco-minimo-resumo span { white-space:nowrap; }
.preco-minimo-resumo .alerta { flex-basis:100%; color:#ffdb75; }
.total-geral { color:var(--ciano); font-size:20px; }
.total-geral b { color:var(--amarelo); font-size:24px; }
.form-cadastro { display:grid; grid-template-columns:repeat(2,minmax(240px,1fr)); gap:14px 20px; }
.form-cadastro label { color:var(--ciano); }
.form-cadastro input,.form-cadastro select { display:block; width:100%; margin-top:5px; }
.form-cadastro .largo { grid-column:1 / -1; }
.form-cadastro fieldset { display:grid; grid-template-columns:repeat(2,minmax(220px,1fr)); gap:14px 20px; margin:0; border:1px solid var(--ciano); padding:16px; }
.form-cadastro fieldset.largo { grid-column:1/-1; }

/* Configurações: índice e cartões visuais para separar assuntos extensos. */
.config-indice{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 18px;padding:12px;border:1px solid var(--tema-borda);background:color-mix(in srgb,var(--tema-contraste) 82%,transparent);position:sticky;top:0;z-index:8}
.config-indice a{padding:8px 11px;border:1px solid var(--tema-borda);background:var(--tema-campo);color:var(--tema-texto-campo);text-decoration:none;font-weight:700}
.config-indice a:hover,.config-indice a:focus{background:var(--tema-acao);color:var(--tema-contraste)}
.config-page .form-cadastro>fieldset,.config-page .config-secao{--config-accent:var(--tema-acao);border:1px solid color-mix(in srgb,var(--config-accent) 75%,var(--tema-borda));border-left:7px solid var(--config-accent);background:color-mix(in srgb,var(--tema-painel) 88%,var(--config-accent));box-shadow:0 4px 12px color-mix(in srgb,var(--tema-sombra) 70%,transparent);margin:0 0 18px;padding:16px;scroll-margin-top:82px}
.config-page .form-cadastro>fieldset:nth-of-type(5n+2),.config-page .config-cor-1{--config-accent:#ffd166}
.config-page .form-cadastro>fieldset:nth-of-type(5n+3),.config-page .config-cor-2{--config-accent:#7dffb2}
.config-page .form-cadastro>fieldset:nth-of-type(5n+4),.config-page .config-cor-3{--config-accent:#ff9fca}
.config-page .form-cadastro>fieldset:nth-of-type(5n),.config-page .config-cor-4{--config-accent:#bca7ff}
.config-page fieldset legend,.config-page .config-secao>h2{color:var(--config-accent);font-weight:800;letter-spacing:.04em}
.config-page fieldset legend{display:block;width:100%;padding:0 0 8px;font-size:1.2rem;text-transform:uppercase;border-bottom:1px solid color-mix(in srgb,var(--config-accent) 60%,transparent);margin-bottom:5px}
.config-page .config-secao>h2{margin-top:0;padding-bottom:8px;border-bottom:1px solid color-mix(in srgb,var(--config-accent) 60%,transparent)}
.config-page .config-secao .tabela-wrap{margin-top:12px}
.config-restricao{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px;margin:12px 0 18px;border:1px solid var(--config-accent);background:color-mix(in srgb,var(--tema-campo) 80%,var(--config-accent))}
.config-restricao label{display:flex;align-items:center;gap:10px;margin:0;font-weight:700}
.config-restricao input[type="checkbox"]{width:22px;height:22px;flex:0 0 auto}
.estilo-windows .config-indice{background:#eef3f8;border-color:#b6c5d4}
.estilo-windows .config-page .form-cadastro>fieldset,.estilo-windows .config-page .config-secao{background:color-mix(in srgb,#fff 94%,var(--config-accent));box-shadow:0 3px 10px #00000018}
.form-cadastro legend { color:var(--amarelo); padding:0 8px; font-weight:bold; }
.campo-botao { display:flex; }
.campo-botao input { flex:1; }
.campo-botao button { white-space:nowrap; margin-top:5px; }
.resultados-endereco { display:grid; gap:6px; }
.resultados-endereco:empty { display:none; }
.resultado-endereco { width:100%; color:var(--branco); background:#00134d; border:1px solid var(--ciano); text-align:left; font-weight:normal; }
.resultado-endereco:hover,.resultado-endereco:focus { color:#00134d; background:var(--ciano); }
.painel-manutencao { display:grid; grid-template-columns:1fr 1fr; gap:20px; margin-bottom:25px; }
.painel-manutencao > div { border:1px solid var(--ciano); padding:16px; }
.login-corpo { display:grid; place-items:center; min-height:100vh; padding:30px; }
.login-caixa { width:min(480px,94vw); padding:28px; border:2px solid var(--ciano); background:#00227c; box-shadow:10px 10px 0 var(--sombra); }
.login-caixa label { display:block; color:var(--ciano); margin:16px 0; }
.login-caixa input,.login-caixa button { display:block; width:100%; margin-top:6px; }
.receber-compra { display:flex; gap:8px; }
.receber-compra input { min-width:280px; }
.indicadores { display:grid; grid-template-columns:repeat(4,minmax(210px,1fr)); gap:12px; margin:18px 0 26px; }
.indicadores > div { padding:14px; border:1px solid var(--ciano); background:#00134d; }
.indicadores span { display:block; color:var(--ciano); font-size:15px; }
.indicadores b { display:block; margin-top:7px; color:var(--amarelo); font-size:24px; }
.grade-relatorios { display:grid; grid-template-columns:1.35fr 1fr; gap:24px; align-items:start; }
.grade-relatorios h2,.relatorios h2 { color:var(--amarelo); font-size:19px; margin-top:24px; }

/* Modelo visual Windows: sobrescreve o tema colorido sem alterar dados ou telas. */
body.estilo-windows {
  --tema-fundo:#f3f3f3;--tema-menu:#ffffff;--tema-painel:#ffffff;--tema-campo:#ffffff;
  --tema-texto:#1f1f1f;--tema-texto-campo:#1f1f1f;--tema-rotulo:#303030;--tema-destaque:#005fb8;
  --tema-acao:#e9e9e9;--tema-contraste:#1f1f1f;--tema-borda:#b8b8b8;--tema-aba-fundo:#0067c0;
  --tema-aba-texto:#ffffff;--tema-selecao-fundo:#cce8ff;--tema-selecao-texto:#111111;
  --tema-linha-alternada:#f7f7f7;--tema-linha-hover:#e5f3ff;--tema-sucesso:#dff6dd;
  --tema-erro:#fde7e9;--tema-perigo:#c42b1c;--tema-rodape:#ffffff;--tema-sombra:#d0d0d0;
  background:#f3f3f3;color:#1f1f1f;font-family:"Segoe UI",Arial,sans-serif;font-size:16px;
}
.estilo-windows a { color:#005fb8;text-decoration-thickness:1px; }
.estilo-windows a:visited { color:#005fb8; }
.estilo-windows a:hover,.estilo-windows a:focus { color:#003e73;background:#e5f3ff;outline:1px solid #60a5e5; }
.estilo-windows .menu { gap:2px;padding:5px 12px;background:#fff;border-bottom:1px solid #d1d1d1;box-shadow:0 1px 3px #00000018; }
.estilo-windows .menu a,.estilo-windows .menu span { color:#202020;padding:8px 11px;border-radius:4px; }
.estilo-windows .menu a:hover,.estilo-windows .menu a:focus { color:#202020;background:#ededed; }
.estilo-windows .menu a.ativo { color:#fff;background:#0067c0;outline:0;box-shadow:inset 0 -2px #004f91; }
.estilo-windows main { padding:18px; }
.estilo-windows .janela,.estilo-windows .login-caixa,.estilo-windows .modal-alteracoes-caixa { background:#fff;border:1px solid #c8c8c8;border-radius:8px;box-shadow:0 4px 14px #00000020; }
.estilo-windows h1,.estilo-windows h2,.estilo-windows .total-documento,.estilo-windows .total-geral b { color:#1f1f1f;font-family:"Segoe UI Semibold","Segoe UI",sans-serif;letter-spacing:0; }
.estilo-windows input,.estilo-windows select,.estilo-windows textarea { color:#1f1f1f;background:#fff;border:1px solid #8a8a8a;border-bottom:2px solid #6b6b6b;border-radius:4px;padding:8px;font-family:"Segoe UI",Arial,sans-serif; }
.estilo-windows input:focus,.estilo-windows select:focus,.estilo-windows textarea:focus { outline:2px solid #0067c0;outline-offset:1px;border-bottom-color:#0067c0; }
.estilo-windows input:disabled,.estilo-windows select:disabled { color:#777;background:#ededed;border-color:#c8c8c8; }
.estilo-windows button,.estilo-windows .botao { color:#1f1f1f;background:#f5f5f5;border:1px solid #b8b8b8;border-radius:4px;padding:8px 15px;font:bold 14px "Segoe UI",Arial,sans-serif;box-shadow:0 1px 2px #00000010; }
.estilo-windows button:hover,.estilo-windows .botao:hover { color:#111;background:#e9e9e9;border-color:#8f8f8f; }
.estilo-windows button:focus,.estilo-windows .botao:focus { outline:2px solid #0067c0;outline-offset:1px; }
.estilo-windows button[type="submit"],.estilo-windows .botao.destaque { color:#fff;background:#0067c0;border-color:#005ba8; }
.estilo-windows .perigo,.estilo-windows .remover { color:#fff;background:#c42b1c;border-color:#a52317; }
.estilo-windows .campo-linha label,.estilo-windows .form-cadastro label,.estilo-windows .filtros-consulta label,.estilo-windows .status,.estilo-windows .subtitulo,.estilo-windows .resumo-orcamento { color:#303030; }
.estilo-windows fieldset,.estilo-windows .tabela-wrap,.estilo-windows .cliente-doc,.estilo-windows .resumo-venda,.estilo-windows .resumo-desconto,.estilo-windows .despesas-orcamento,.estilo-windows .lucro-admin { border:1px solid #c8c8c8;border-radius:5px;background:#fff; }
.estilo-windows legend,.estilo-windows .form-cadastro legend { color:#1f1f1f; }
.estilo-windows table { color:#1f1f1f;background:#fff;font-family:"Segoe UI",Arial,sans-serif; }
.estilo-windows th { color:#1f1f1f;background:#f0f0f0;border-bottom:1px solid #aaa;font-weight:600; }
.estilo-windows th a { color:#005fb8; }
.estilo-windows th,.estilo-windows td { border-bottom:1px solid #dedede; }
.estilo-windows tbody tr:nth-child(even) { background:#f8f8f8; }
.estilo-windows tbody tr:hover,.estilo-windows tbody tr:focus { color:#111;background:#e5f3ff; }
.estilo-windows .sugestoes { background:#fff;border:1px solid #aaa;border-radius:4px;box-shadow:0 5px 16px #0003; }
.estilo-windows .sugestao { color:#1f1f1f;background:#fff;border-bottom:1px solid #e1e1e1;font-family:"Segoe UI",Arial,sans-serif; }
.estilo-windows .sugestao:hover,.estilo-windows .sugestao:focus,.estilo-windows .sugestao.ativa { color:#111;background:#cce8ff; }
.estilo-windows .flash { color:#1f1f1f;background:#fff4ce;border:1px solid #d6b656;border-radius:4px; }
.estilo-windows .flash.sucesso { color:#1f1f1f;background:#dff6dd;border-color:#78b878; }
.estilo-windows .flash.erro { color:#1f1f1f;background:#fde7e9;border-color:#d07b83; }
.estilo-windows footer,.estilo-windows .rodape-identidade { color:#333;background:#fff;border-top:1px solid #c8c8c8;box-shadow:0 -1px 4px #00000016; }
.estilo-windows .rodape-identidade strong,.estilo-windows .rodape-identidade strong small,.estilo-windows .rodape-identidade a { color:#1f1f1f;letter-spacing:0; }
.estilo-windows .modal-alteracoes { background:#0006;backdrop-filter:blur(2px); }
.estilo-windows .meio-pagamento,.estilo-windows .indicadores>div,.estilo-windows .lucro-admin { color:#1f1f1f;background:#f8f8f8;border-color:#c8c8c8; }
.estilo-windows .meio-pagamento label,.estilo-windows .indicadores span,.estilo-windows .indicadores b,.estilo-windows .resumo-desconto,.estilo-windows .resumo-desconto b { color:#1f1f1f; }
@page { size:auto; margin:8mm; }
@media print { html,body{background:white!important;color:black!important;padding:0!important;margin:0!important;font:11px Arial,sans-serif}.topo,.menu,.menu-mobile,footer,.sem-impressao,.flash,.acoes{display:none!important}main{padding:0!important}.janela{border:0!important;box-shadow:none!important;background:white!important;max-width:none!important;width:100%!important;padding:0!important;overflow:visible!important}.documento h1,.total-documento,th,.cabecalho-impresso strong,.rodape-documento{color:black}.cliente-doc,.documento-topo,.cabecalho-impresso,.rodape-documento{border-color:black}.cabecalho-impresso img{width:135px;height:78px}th{background:#eee!important;color:black!important;position:static}table{white-space:normal!important}tr{background:white!important;color:black!important;break-inside:avoid}th,td{border-bottom:1px solid #999;padding:5px}.rodape-documento{position:static!important;margin-top:18px}.documento-topo{margin-top:8px} }
.resumo-orcamento { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:18px; color:var(--ciano); }
.resumo-orcamento b { color:var(--amarelo); }
.filtros-consulta { grid-template-columns:minmax(220px,2fr) minmax(160px,1fr) minmax(190px,1fr) auto auto; align-items:end; }
.filtros-consulta label { display:grid; gap:4px; color:var(--ciano); }
.filtros-consulta button,.filtros-consulta .botao { height:43px; display:flex; align-items:center; justify-content:center; margin:0; }
.cliente-escolhido { display:grid; grid-template-columns:minmax(260px,1fr) auto; gap:8px; align-items:center; }
.cliente-escolhido .botao { white-space:nowrap; }
th a { color:var(--amarelo); text-decoration:underline; text-underline-offset:3px; }
.despesas-orcamento { display:grid; grid-template-columns:180px 180px 1fr; gap:12px; margin-top:14px; border:1px solid var(--ciano); }
.orcamento-editor .despesas-orcamento { grid-template-columns:120px 160px 160px minmax(300px,1fr); align-items:end; }
.orcamento-editor .itens-editaveis th,.orcamento-editor .itens-editaveis td { vertical-align:middle; }
.orcamento-editor .itens-editaveis th { line-height:1.15; white-space:normal; }
.orcamento-editor .itens-editaveis .preco-negociado { min-width:145px; }
.orcamento-editor .itens-editaveis .total-produto { min-width:100px; }
.observacao-orcamento { display:grid; grid-template-columns:1fr; gap:7px; margin:15px 0; }
.observacao-topo { display:flex; align-items:center; justify-content:space-between; gap:15px; color:var(--tema-rotulo,#54ffff); }
.observacao-orcamento details { min-width:310px; position:relative; }
.opcoes-observacao { display:grid; gap:7px; padding:10px; border:1px solid var(--tema-borda,#54ffff); }
.observacao-orcamento #observacao { width:100%; min-width:0; }
.despesas-orcamento legend { color:var(--amarelo); }
.despesas-orcamento label { display:grid; gap:5px; color:var(--ciano); }
.lucro-admin { padding:10px 14px; border:1px solid var(--amarelo); background:#00134d; color:var(--amarelo); font-weight:bold; }
.lucro-controle { margin:14px 0; display:flex; gap:10px; align-items:center; flex-wrap:wrap; }
.tabela-wrap { overflow:auto; max-height:65vh; border:1px solid var(--ciano); }
table { width:100%; border-collapse:collapse; white-space:nowrap; }
th { position:sticky; top:0; background:#000e42; color:var(--amarelo); text-align:left; }
th,td { padding:7px 9px; border-bottom:1px solid #3155aa; }
tbody tr:nth-child(even) { background:#0a318d; }
tbody tr:hover,tbody tr:focus { background:var(--ciano); color:#00134d; outline:none; }
tr.baixo { color:#ffadad; }
.numero { text-align:right; font-variant-numeric:tabular-nums; }
.status { margin:12px 0 0; color:var(--ciano); }
footer { position:fixed; bottom:0; left:0; right:0; height:38px; display:flex; align-items:center; gap:28px; padding:0 18px; background:#000e42; border-top:2px solid var(--ciano); }
footer b { color:var(--amarelo); }
.rodape-identidade { justify-content:space-between; color:var(--ciano); }
.rodape-identidade strong { color:var(--amarelo); font-size:20px; letter-spacing:2px; }
.rodape-identidade strong small { color:var(--ciano); font-size:11px; letter-spacing:0; }
.rodape-identidade a { color:var(--amarelo); }
.status.erro-consulta { display:block; padding:8px; color:#00134d; background:#ffadad; border:1px solid white; }
.janela,.login-caixa,.modal-alteracoes-caixa { background:var(--tema-painel,#00227c); }
input,select,.sugestoes,.sugestao { background:var(--tema-campo,#000b39); color:var(--tema-texto-campo,#fff36a); border-color:var(--tema-borda,#54ffff); }
.janela,.menu,.tabela-wrap,.cliente-doc,.resumo-venda,.resumo-desconto,.despesas-orcamento,.lucro-admin,.painel-manutencao>div,fieldset { border-color:var(--tema-borda,#54ffff); }
.form-cadastro label,.campo-linha label,.filtros-consulta label,.despesas-orcamento label,.status,.subtitulo,.resumo-orcamento,.resumo-venda span { color:var(--tema-rotulo,#54ffff); }
button,.botao { background:var(--tema-acao,#54ffff); color:var(--tema-contraste,#00134d); }
.menu a.ativo { background:var(--tema-aba-fundo,#fff36a); color:var(--tema-aba-texto,#00134d); }
::selection { background:var(--tema-selecao-fundo,#fff36a); color:var(--tema-selecao-texto,#00134d); }
tbody tr:nth-child(even) { background:var(--tema-linha-alternada,#0a318d); }
tbody tr:hover,tbody tr:focus { background:var(--tema-linha-hover,#54ffff); color:var(--tema-contraste,#00134d); }
tbody tr.registro-retornado { background:var(--tema-selecao-fundo,#fff36a)!important; color:var(--tema-selecao-texto,#00134d)!important; outline:3px solid var(--tema-acao,#54ffff); outline-offset:-3px; }
.flash.sucesso { background:var(--tema-sucesso,#7dffb2); color:var(--tema-contraste,#00134d); }
.flash.erro,.status.erro-consulta { background:var(--tema-erro,#ffadad); color:var(--tema-contraste,#00134d); }
.remover,.perigo { background:var(--tema-perigo,#a5162f); }
footer,th,.topo { background:var(--tema-rodape,#000e42); }
.modal-alteracoes { background:color-mix(in srgb,var(--tema-sombra,#000826) 82%,transparent); }
.grade-cores { grid-template-columns:repeat(3,minmax(210px,1fr))!important; }
.seletor-cor { display:grid; grid-template-columns:64px 1fr; gap:9px; align-items:center; margin-top:5px; }
.seletor-cor input[type="color"] { width:64px; min-width:64px; height:42px; padding:3px; cursor:pointer; }
.seletor-cor output { color:var(--tema-texto-campo,#fff36a); font-weight:bold; }
.menu-mobile { display:none; }
.aviso-pix-global { position:fixed; z-index:250; right:18px; bottom:56px; width:min(520px,calc(100vw - 24px)); padding:18px; background:var(--tema-painel,#00227c); color:var(--tema-texto,#f3f7ff); border:3px solid var(--tema-sucesso,#7dffb2); box-shadow:0 8px 28px var(--tema-sombra,#000826); }
.aviso-pix-global h2 { margin:0 38px 8px 0; color:var(--tema-sucesso,#7dffb2); }
.aviso-pix-global p { margin:6px 0 14px; font-size:16px; font-weight:bold; }
.aviso-pix-fechar { position:absolute; top:7px; right:7px; min-width:34px; width:34px; height:34px; padding:0; font-size:24px; line-height:1; }
.aviso-pix-acoes { display:flex; gap:8px; flex-wrap:wrap; }
@media(max-width:800px){
  .orcamento-editor .despesas-orcamento { grid-template-columns:1fr; }
  body { font-size:15px; padding-bottom:76px; }
  .topo { height:50px; padding:0 12px; justify-content:center; }
  .topo > span:first-child,.topo > span:last-child { display:none; }
  .topo strong { font-size:21px; }
  .menu { display:none; }
  main { padding:8px; }
  .janela { width:100%; padding:10px; border-width:1px; box-shadow:4px 4px 0 var(--sombra); }
  h1 { font-size:19px; line-height:1.25; }
  h2 { font-size:17px; }
  input,select,textarea,button,.botao { min-height:46px; min-width:0; width:100%; font-size:16px; }
  input { padding:10px; }
  .pesquisa,.campo-linha { display:grid; grid-template-columns:1fr; align-items:stretch; gap:7px; }
  .filtros-consulta,.despesas-orcamento,.meio-pagamento { grid-template-columns:1fr; }
  .cliente-escolhido { grid-template-columns:1fr; }
  .pesquisa label,.campo-linha label { color:var(--ciano); }
  .form-cadastro,.form-cadastro fieldset { grid-template-columns:1fr; gap:10px; }
  .grade-cores { grid-template-columns:1fr!important; }
  .form-cadastro .largo,.form-cadastro fieldset.largo { grid-column:1; }
  .titulo-acao { align-items:stretch; flex-direction:column; gap:10px; }
  .titulo-acao h1 { text-align:left; }
  .acoes { position:sticky; z-index:15; bottom:70px; display:grid; grid-template-columns:1fr; gap:7px; margin:18px -4px -4px; padding:8px; background:#00134d; border:1px solid var(--ciano); }
  .acoes form,.acoes form button { width:100%; }
  .atalhos { margin:14px auto; gap:10px; }
  .atalhos a,.atalhos div { grid-template-columns:42px 1fr auto; padding:12px 10px; }
  .painel-manutencao,.grade-relatorios,.indicadores { grid-template-columns:1fr; gap:10px; }
  .resumo-venda { grid-template-columns:1fr; gap:4px; padding:10px; }
  .resumo-venda b { margin-bottom:8px; }
  .resumo-desconto { justify-content:flex-start; flex-direction:column; gap:7px; }
  .cabecalho-impresso { grid-template-columns:92px 1fr; gap:10px; }
  .cabecalho-impresso img { width:88px; height:65px; }
  .cabecalho-impresso strong { font-size:17px; }
  .contato-impresso { font-size:13px; }
  .documento-topo { gap:10px; font-size:13px; }
  .total-documento,.total-geral b { font-size:20px; }
  .tabela-orcamento,.documento { overflow-x:auto; -webkit-overflow-scrolling:touch; }
  .orcamento-editor .itens-editaveis,.documento > table { min-width:880px; }
  .material-celula .sugestoes { position:fixed; z-index:50; left:8px; right:8px; top:110px; width:auto; max-width:none; max-height:55vh; }
  .barra-itens { align-items:stretch; flex-direction:column; }
  .tabela-wrap { max-height:none; overflow:visible; border:0; }
  .tabela-wrap table:not(.itens-editaveis) { display:block; white-space:normal; }
  .tabela-wrap table:not(.itens-editaveis) thead { display:none; }
  .tabela-wrap table:not(.itens-editaveis) tbody,.tabela-wrap table:not(.itens-editaveis) tr { display:block; }
  .tabela-wrap table:not(.itens-editaveis) tr { margin-bottom:10px; border:1px solid var(--ciano); background:#00134d; }
  .tabela-wrap table:not(.itens-editaveis) td { display:grid; grid-template-columns:minmax(105px,40%) 1fr; gap:8px; min-height:40px; padding:8px; border-bottom:1px solid #3155aa; text-align:left; overflow-wrap:anywhere; }
  .tabela-wrap table:not(.itens-editaveis) td::before { content:attr(data-rotulo); color:var(--ciano); font-weight:bold; }
  .tabela-wrap table:not(.itens-editaveis) td:last-child { border-bottom:0; }
  .tabela-wrap table:not(.itens-editaveis) td input,.tabela-wrap table:not(.itens-editaveis) td select { width:100%; }
  footer { display:none; }
  .menu-mobile { position:fixed; z-index:100; left:0; right:0; bottom:0; height:66px; display:grid; grid-template-columns:repeat(6,1fr); background:#000e42; border-top:2px solid var(--ciano); }
  .menu-mobile > a,.menu-mobile > details > summary { height:64px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:2px; color:var(--branco); text-decoration:none; font-size:10px; list-style:none; padding:4px 1px; }
  .menu-mobile > a.ativo { color:#00134d; background:var(--amarelo); }
  .menu-mobile b { color:var(--amarelo); font-size:17px; }
  .menu-mobile details { position:relative; }
  .menu-mobile summary::-webkit-details-marker { display:none; }
  .menu-mobile-mais { position:absolute; right:4px; bottom:66px; width:210px; display:grid; padding:8px; background:#000e42; border:1px solid var(--ciano); box-shadow:-5px -5px 0 var(--sombra); }
  .menu-mobile-mais a { min-height:44px; display:flex; align-items:center; padding:8px; color:var(--branco); text-decoration:none; border-bottom:1px solid #3155aa; }
  .aviso-pix-global { left:8px; right:8px; bottom:74px; width:auto; max-height:55vh; overflow:auto; }
  .aviso-pix-acoes { display:grid; grid-template-columns:1fr; }
}
@media print { html,body,.janela,.documento,.documento *{color:#000!important;font-weight:700!important;text-shadow:none!important}th{background:#fff!important} }
