:root{--cor-fundo: #0f1115;--cor-painel: #171a21;--cor-borda: #2a2e38;--cor-texto: #e6e8ec;--cor-texto-fraco: #9aa1ad;--cor-acento: #4f8cff;--cor-perigo: #ff5c5c;--cor-sucesso: #3ecf8e;--cor-aviso: #f5c451;font-family:-apple-system,Segoe UI,Inter,Roboto,sans-serif;color-scheme:dark}*{box-sizing:border-box}body{margin:0;background:var(--cor-fundo);color:var(--cor-texto)}button,input,select,textarea{font-family:inherit;font-size:14px}.app{display:flex;flex-direction:column;min-height:100vh}.topbar{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;border-bottom:1px solid var(--cor-borda)}.topbar h1{font-size:16px;margin:0}.tabs{display:flex;gap:4px;padding:8px 20px 0;border-bottom:1px solid var(--cor-borda)}.tab{background:none;border:none;color:var(--cor-texto-fraco);padding:8px 14px;cursor:pointer;border-bottom:2px solid transparent}.tab.ativa{color:var(--cor-texto);border-bottom-color:var(--cor-acento)}.conteudo{padding:20px;flex:1;display:flex;gap:20px}.painel{background:var(--cor-painel);border:1px solid var(--cor-borda);border-radius:8px;padding:16px}table{border-collapse:collapse;width:100%}th,td{text-align:left;padding:8px 10px;border-bottom:1px solid var(--cor-borda);font-size:13px}th{color:var(--cor-texto-fraco);font-weight:500}tr.selecionada{background:#4f8cff14}tr:hover{background:#ffffff08;cursor:pointer}.badge{display:inline-block;padding:2px 8px;border-radius:999px;font-size:11px;border:1px solid var(--cor-borda)}.badge.ativo{color:var(--cor-sucesso);border-color:var(--cor-sucesso)}.badge.inativo{color:var(--cor-perigo);border-color:var(--cor-perigo)}input[type=text],input[type=email],input[type=datetime-local],select,textarea{background:#10131a;border:1px solid var(--cor-borda);color:var(--cor-texto);border-radius:6px;padding:6px 8px;width:100%}textarea{resize:vertical;min-height:60px}.campo{display:flex;flex-direction:column;gap:4px;margin-bottom:10px}.campo label{font-size:12px;color:var(--cor-texto-fraco)}.erro{color:var(--cor-perigo);font-size:12px}.linha{display:flex;gap:8px;align-items:center}.linha.espacado{justify-content:space-between}button.botao{background:var(--cor-acento);border:none;color:#fff;padding:6px 14px;border-radius:6px;cursor:pointer}button.botao.secundario{background:transparent;border:1px solid var(--cor-borda);color:var(--cor-texto)}button.botao.perigo{background:var(--cor-perigo)}button.botao:disabled{opacity:.5;cursor:not-allowed}.contador{font-size:11px;color:var(--cor-texto-fraco)}.contador.excedido{color:var(--cor-perigo)}.preview-efeito{border:1px dashed var(--cor-borda);border-radius:6px;padding:10px;margin:10px 0;font-size:13px}.preview-efeito .antes{color:var(--cor-texto-fraco)}.preview-efeito .depois.concede{color:var(--cor-sucesso)}.preview-efeito .depois.nega{color:var(--cor-perigo)}.matriz-padrao{font-size:12px}.matriz-padrao td.sim{color:var(--cor-sucesso)}.matriz-padrao td.nao{color:var(--cor-texto-fraco)}:root{--cor-celula-editavel: rgba(245, 196, 81, .14);--cor-celula-editavel-borda: rgba(245, 196, 81, .45);--cor-celula-calculada: rgba(255, 255, 255, .045)}.navegacao-orcamento{width:260px;flex-shrink:0;align-self:flex-start;max-height:calc(100vh - 140px);overflow-y:auto}.arvore-cc .empresa{font-size:12px;font-weight:600;color:var(--cor-texto-fraco);text-transform:uppercase;margin:12px 0 4px}.arvore-cc .area{margin-bottom:6px}.arvore-cc .item{display:block;width:100%;text-align:left;background:none;border:none;color:var(--cor-texto);padding:4px 8px;border-radius:4px;cursor:pointer;font-size:13px}.arvore-cc .item.cc{padding-left:20px}.arvore-cc .item:hover{background:#ffffff0d}.arvore-cc .item.ativo{background:#4f8cff26}.banner-grade.bloqueada{border-color:var(--cor-perigo)}.banner-grade.liberada{border-color:var(--cor-sucesso)}.legenda{gap:16px;font-size:12px}.legenda .amostra{display:inline-block;width:14px;height:14px;vertical-align:middle;border-radius:3px;margin-right:4px}.amostra.editavel{background:var(--cor-celula-editavel);border:1px solid var(--cor-celula-editavel-borda)}.amostra.calculada{background:var(--cor-celula-calculada);border:1px solid var(--cor-borda)}.grade-container{overflow:auto;max-height:calc(100vh - 290px);padding:0}table.grade{width:max-content;min-width:100%}table.grade th,table.grade td{padding:4px 6px;white-space:nowrap;font-size:12px}table.grade thead th{position:sticky;top:0;background:var(--cor-painel);z-index:2}table.grade .col-conta{position:sticky;left:0;background:var(--cor-painel);z-index:1;min-width:260px;max-width:360px;overflow:hidden;text-overflow:ellipsis}table.grade thead .col-conta{z-index:3}table.grade tr:hover{cursor:default}.num{text-align:right;font-variant-numeric:tabular-nums}td.calculada{background:var(--cor-celula-calculada);color:var(--cor-texto-fraco)}td.editavel{background:var(--cor-celula-editavel);padding:0}td.editavel input{width:92px;background:transparent;border:1px solid transparent;color:var(--cor-texto);text-align:right;padding:4px 6px;font-size:12px;font-variant-numeric:tabular-nums}td.editavel input:focus{outline:none;border-color:var(--cor-celula-editavel-borda);background:#0000004d}td.editavel.invalida input{border-color:var(--cor-perigo);color:var(--cor-perigo)}tr.linha-sintetica td{font-weight:600}tr.linha-total td{font-weight:700;border-top:2px solid var(--cor-borda)}tr.linha-alterada .col-conta{box-shadow:inset 3px 0 0 var(--cor-aviso)}tr.linha-com-erro .col-conta{box-shadow:inset 3px 0 0 var(--cor-perigo)}tr.linha-detalhe td{background:#00000040;white-space:normal}.detalhe-linha{display:flex;gap:16px;flex-wrap:wrap;align-items:flex-start;padding:8px 4px;position:sticky;left:0;max-width:calc(100vw - 360px)}.etiqueta{display:inline-block;font-size:10px;padding:0 5px;margin-left:6px;border-radius:3px;border:1px solid var(--cor-acento);color:var(--cor-acento)}.etiqueta.obz{border-color:var(--cor-aviso);color:var(--cor-aviso)}.etiqueta.ic{border-color:var(--cor-sucesso);color:var(--cor-sucesso)}.botao-icone{background:none;border:1px solid var(--cor-borda);color:var(--cor-texto);border-radius:4px;cursor:pointer;padding:0 6px}.barra-salvar{position:sticky;bottom:0}.painel.alerta{border-color:var(--cor-perigo)}.grade-mapeamento{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:0 16px}.deteccao{gap:6px}.badge.status-nao_iniciado{color:var(--cor-texto-fraco)}.badge.status-em_andamento{color:var(--cor-acento);border-color:var(--cor-acento)}.badge.status-entregue{color:var(--cor-sucesso);border-color:var(--cor-sucesso)}.badge.status-devolvido{color:var(--cor-perigo);border-color:var(--cor-perigo)}.status-texto-nao_iniciado{color:var(--cor-texto-fraco)}.status-texto-em_andamento{color:var(--cor-acento)}.status-texto-entregue{color:var(--cor-sucesso)}.status-texto-devolvido{color:var(--cor-perigo)}.cartoes-status{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}.cartao{display:flex;flex-direction:column;gap:4px;min-width:130px;padding:10px 12px;border:1px solid var(--cor-borda);border-radius:8px;background:#ffffff05;color:var(--cor-texto);text-align:left;font:inherit}.cartao .numero{font-size:22px;font-weight:600;font-variant-numeric:tabular-nums}.cartao.clicavel{cursor:pointer}.cartao.clicavel:hover{border-color:var(--cor-acento)}.cartao.selecionado{border-color:var(--cor-acento);background:#4f8cff1a}.barra-progresso{position:relative;display:inline-block;width:110px;height:16px;border-radius:8px;background:#ffffff0f;overflow:hidden;vertical-align:middle}.barra-progresso .preenchido{position:absolute;inset:0 auto 0 0;background:#3ecf8e73}.barra-progresso .rotulo{position:relative;display:block;text-align:center;font-size:11px;line-height:16px;font-variant-numeric:tabular-nums}.lista-pendencias{margin:0;padding-left:18px;font-size:13px}.lista-pendencias li{margin:2px 0}.lista-pendencias .pendencia-devolucao_nao_respondida,.lista-pendencias .pendencia-prazo_vencido{color:var(--cor-perigo)}
