/* Identidade visual Localcred (mesma linha do Dashboard de Faturamento). Escuro é o padrão; data-tema="claro" troca. */
@font-face{font-family:Poppins;font-weight:400;font-display:swap;src:url(fontes/poppins-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:Poppins;font-weight:500;font-display:swap;src:url(fontes/poppins-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:Poppins;font-weight:600;font-display:swap;src:url(fontes/poppins-latin-600-normal.woff2) format("woff2")}
@font-face{font-family:Poppins;font-weight:700;font-display:swap;src:url(fontes/poppins-latin-700-normal.woff2) format("woff2")}
:root{--fundo:#040b1b;--lateral:#060f22;--cartao:#0a1630;--cartao-2:#0e1d3b;--linha:#0b1a36;--borda:#16264a;--texto:#e6ebf5;--quieto:#8a96b3;
  --acento:#3b82f6;--acento-texto:#60a5fa;--acento-fundo:#0f2350;--ok:#22c55e;--ok-fundo:#0b2a1f;--erro:#ef4444;--erro-fundo:#2a1220;
  --roxo:#a78bfa;--aviso:#f59e0b;--marca-1:#e8365d;--marca-2:#2ec4c6;--sombra:none;color-scheme:dark}
:root[data-tema="claro"]{--fundo:#f3f5fa;--lateral:#ffffff;--cartao:#ffffff;--cartao-2:#f5f7fc;--linha:#f8f9fc;--borda:#dde3ee;--texto:#111a2e;--quieto:#5b6680;
  --acento:#2563eb;--acento-texto:#1d4ed8;--acento-fundo:#e7efff;--ok:#15803d;--ok-fundo:#e8f7ee;--erro:#c62828;--erro-fundo:#fdecee;
  --roxo:#6d28d9;--sombra:0 1px 2px rgba(16,24,40,.06);color-scheme:light}
*{box-sizing:border-box}
html,body{height:100%}
body{margin:0;font-family:Poppins,"Segoe UI",Arial,sans-serif;background:var(--fundo);color:var(--texto);font-size:14px;line-height:1.45}
a{color:var(--acento-texto)}
.casca{display:flex;min-height:100vh}
.lateral{width:200px;flex:none;background:var(--lateral);border-right:1px solid var(--borda);display:flex;flex-direction:column;padding:14px 8px;position:sticky;top:0;height:100vh;overflow-y:auto}
.menu-fechado .lateral{display:none}
.marca{display:flex;gap:9px;align-items:center;padding:2px 6px 16px;text-decoration:none;color:var(--texto)}
.marca b{display:block;font-size:13px;font-weight:700;letter-spacing:.2px}
.marca small{display:block;font-size:11px;color:var(--quieto);line-height:1.2}
.lateral nav{flex:1}
.secao{margin:14px 6px 6px;font-size:10.5px;font-weight:600;letter-spacing:.6px;text-transform:uppercase;color:var(--quieto)}
.lateral nav a,.rodape-lateral a,.item-sair{display:flex;gap:9px;align-items:center;padding:6px 8px;margin:1px 0;border-radius:7px;color:var(--texto);text-decoration:none;font-size:13px;font-weight:500;width:100%;background:none;border:0;font-family:inherit;cursor:pointer;text-align:left}
.lateral nav a:hover,.rodape-lateral a:hover,.item-sair:hover{background:var(--cartao-2)}
.lateral nav a.ativo{background:var(--acento-fundo);color:var(--texto)}
.rodape-lateral{border-top:1px solid var(--borda);padding-top:8px}
.rodape-lateral form{margin:0}
.quem{padding:8px 8px 0;font-size:12px;color:var(--quieto);overflow-wrap:anywhere}
.quem small{display:block;color:var(--acento-texto)}
.ic{width:15px;height:15px;flex:none;display:inline-block;background:currentColor;-webkit-mask:var(--ic) center/contain no-repeat;mask:var(--ic) center/contain no-repeat;opacity:.85}
.area-principal{flex:1;min-width:0;display:flex;flex-direction:column}
.topo{display:flex;gap:12px;align-items:center;padding:0 20px;height:52px;background:var(--lateral);border-bottom:1px solid var(--borda);position:sticky;top:0;z-index:5}
.titulo-sistema{font-weight:600;font-size:15px;display:flex;align-items:center;gap:8px}
#alternar-tema{margin-left:auto}
button.icone{background:none;border:0;color:var(--quieto);padding:6px;border-radius:6px;display:flex}
button.icone:hover{background:var(--cartao-2);color:var(--texto)}
main{padding:22px 20px;width:100%;max-width:1400px}
footer{padding:14px 20px;color:var(--quieto);font-size:11.5px;margin-top:auto}
h1{font-size:24px;font-weight:700;margin:0 0 4px;letter-spacing:-.2px}
h1 + .dica,h1 + p{margin-top:0}
h1{margin-bottom:14px}
h2{font-size:17px;font-weight:600;margin:26px 0 10px}
.dica{color:var(--quieto);font-size:12.5px;font-weight:400}
/* tabelas como no Desempenho por Carteira */
table{width:100%;border-collapse:separate;border-spacing:0;background:var(--cartao);border:1px solid var(--borda);border-radius:10px;overflow:hidden;box-shadow:var(--sombra)}
th,td{padding:10px 12px;border-bottom:1px solid var(--borda);text-align:left;vertical-align:top}
tbody tr:last-child td{border-bottom:0}
th{font-size:12px;color:var(--quieto);font-weight:500;background:var(--cartao)}
td{font-size:13px;font-weight:500}
tbody tr{background:var(--linha)}
tbody tr:hover{background:var(--cartao-2)}
tr.inativo td{color:var(--quieto)}
td a{color:var(--texto);font-weight:600;text-decoration:none}
td a:hover{color:var(--acento-texto)}
td.falha,td .falha,tr.falha td:first-child{color:var(--erro);font-weight:600}
td.sucesso{color:var(--ok);font-weight:600}
.rolagem{overflow-x:auto;border-radius:10px}
/* cartões */
.cartao{background:var(--cartao);border:1px solid var(--borda);border-radius:10px;padding:18px 20px;margin-bottom:16px;box-shadow:var(--sombra)}
.estreito{max-width:520px}
.indicadores{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin:0 0 18px}
.indicador{background:var(--cartao);border:1px solid var(--borda);border-radius:10px;padding:16px 18px;box-shadow:var(--sombra)}
.indicador span{display:block;font-size:12.5px;color:var(--quieto)}
.indicador b{display:block;font-size:26px;font-weight:700;margin-top:6px;letter-spacing:-.3px}
.indicador small{font-size:11.5px;color:var(--quieto)}
.indicador.bom small,.indicador.bom b{color:var(--ok)}
.indicador.ruim b,.indicador.ruim small{color:var(--erro)}
.indicador.azul b{color:var(--acento-texto)}
.etiqueta,.tag{display:inline-block;background:var(--acento-fundo);color:var(--acento-texto);border-radius:6px;padding:2px 8px;font-size:11.5px;font-weight:600}
/* formulários */
label{display:block;margin-bottom:12px;font-weight:500;font-size:13px}
label input,label select,label textarea{display:block;width:100%;margin-top:5px;padding:8px 10px;background:var(--fundo);color:var(--texto);border:1px solid var(--borda);border-radius:7px;font:inherit;font-weight:400}
label input:focus,label select:focus,label textarea:focus{outline:2px solid var(--acento);outline-offset:-1px;border-color:transparent}
label textarea{font:13px Consolas,"Courier New",monospace}
label.check{font-weight:400}
label.check input{display:inline;width:auto;margin-right:6px}
fieldset{border:1px solid var(--borda);border-radius:8px;margin:0 0 12px;padding:10px 14px}
legend{color:var(--quieto);font-size:12.5px;padding:0 4px}
button,.botao{background:var(--acento);color:#fff;border:0;border-radius:7px;padding:8px 16px;font:inherit;font-weight:500;cursor:pointer;text-decoration:none;display:inline-block}
button:hover,.botao:hover{filter:brightness(1.1)}
button.secundario{background:transparent;color:var(--erro);border:1px solid var(--erro)}
button.claro{background:transparent;color:var(--acento-texto);border:1px solid var(--borda)}
button.link{background:none;color:var(--acento-texto);padding:0}
form.inline{display:inline}
.grade{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:0 16px}
.acoes{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.aviso{padding:10px 14px;border-radius:8px;margin-bottom:16px;border:1px solid transparent}
.aviso.erro{background:var(--erro-fundo);color:var(--erro);border-color:color-mix(in srgb,var(--erro) 35%,transparent)}
.aviso.ok{background:var(--ok-fundo);color:var(--ok);border-color:color-mix(in srgb,var(--ok) 35%,transparent)}
code.senha{font-size:18px;background:var(--acento-fundo);padding:4px 10px;border-radius:6px;user-select:all}
details summary{cursor:pointer;color:var(--acento-texto)}
pre.detalhe{white-space:pre-wrap;font-size:12px;margin:4px 0 0}
.sem-menu main{max-width:560px;margin:40px auto 0}
@media (max-width:760px){.lateral{position:fixed;z-index:10;box-shadow:0 0 0 100vmax rgba(0,0,0,.4)}.menu-fechado .lateral,:root:not(.menu-aberto) .lateral{display:none}.menu-aberto .lateral{display:flex}main{padding:16px}}
.ic-fluxo{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 3l14 9-14 9V3z'/%3E%3C/svg%3E")}
.ic-query{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cellipse cx='12' cy='5' rx='8' ry='3'/%3E%3Cpath d='M4 5v6c0 1.7 3.6 3 8 3s8-1.3 8-3V5'/%3E%3Cpath d='M4 11v6c0 1.7 3.6 3 8 3s8-1.3 8-3v-6'/%3E%3C/svg%3E")}
.ic-planilha{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='18' height='18' rx='2'/%3E%3Cpath d='M3 9h18M3 15h18M9 3v18'/%3E%3C/svg%3E")}
.ic-banco{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 17H7A5 5 0 017 7h2M15 7h2a5 5 0 010 10h-2M8 12h8'/%3E%3C/svg%3E")}
.ic-painel{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='7' height='9' rx='1'/%3E%3Crect x='14' y='3' width='7' height='5' rx='1'/%3E%3Crect x='14' y='12' width='7' height='9' rx='1'/%3E%3Crect x='3' y='16' width='7' height='5' rx='1'/%3E%3C/svg%3E")}
.ic-pessoas{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='8' r='4'/%3E%3Cpath d='M2 21v-1a6 6 0 0112 0v1M16 4a4 4 0 010 8M22 21v-1a6 6 0 00-4-5.6'/%3E%3C/svg%3E")}
.ic-lista{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 6h13M8 12h13M8 18h13M3 6h.01M3 12h.01M3 18h.01'/%3E%3C/svg%3E")}
.ic-area{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 21h18M5 21V7l7-4 7 4v14M9 21v-6h6v6'/%3E%3C/svg%3E")}
.ic-pasta{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 7a2 2 0 012-2h4l2 2h8a2 2 0 012 2v8a2 2 0 01-2 2H5a2 2 0 01-2-2z'/%3E%3C/svg%3E")}
.ic-chave{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='7.5' cy='15.5' r='4.5'/%3E%3Cpath d='M10.7 12.3L21 2M17 6l3 3M15 8l2 2'/%3E%3C/svg%3E")}
.ic-sair{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 21H5a2 2 0 01-2-2V5a2 2 0 012-2h4M16 17l5-5-5-5M21 12H9'/%3E%3C/svg%3E")}
.ic-menu{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='18' height='18' rx='2'/%3E%3Cpath d='M9 3v18'/%3E%3C/svg%3E")}
.ic-lua{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 12.8A9 9 0 1111.2 3 7 7 0 0021 12.8z'/%3E%3C/svg%3E")}td.perdido{color:var(--aviso);font-weight:600}
td.executando{color:var(--acento-texto);font-weight:600}
