:root{--fundo: #0b1220;--painel: #121b2e;--painel2: #18233a;--borda: #24314d;--texto: #e6ebf5;--fraco: #8d9bb5;--prim: #3b82f6;--prim2: #2563eb;--ok: #22c55e;--warn: #f59e0b;--bad: #ef4444;--info: #06b6d4;--raio: 10px}*{box-sizing:border-box}html,body{margin:0;background:var(--fundo);color:var(--texto);font:15px/1.45 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}button,input,select,textarea{font:inherit;color:inherit}a{color:#7fb0ff}h2{margin:0;font-size:1.35rem}h3{margin:0 0 10px;font-size:1.05rem}h4{margin:16px 0 8px;font-size:.95rem;color:var(--fraco);text-transform:uppercase;letter-spacing:.04em}.app{display:flex;min-height:100vh}.menu{width:200px;background:var(--painel);border-right:1px solid var(--borda);padding:16px 10px;display:flex;flex-direction:column;gap:4px;position:sticky;top:0;height:100vh}.marca{font-weight:800;font-size:1.15rem;padding:4px 10px 16px}.menu-item{display:flex;align-items:center;gap:10px;background:none;border:0;padding:10px 12px;border-radius:8px;text-align:left;cursor:pointer;color:var(--fraco)}.menu-item:hover{background:var(--painel2);color:var(--texto)}.menu-item.ativo{background:var(--prim);color:#fff}.menu-item .ico{width:20px;text-align:center}.menu-item.sair{margin-top:auto}.conteudo{flex:1;padding:22px;max-width:1100px;width:100%;margin:0 auto}.topo-pagina{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:16px;flex-wrap:wrap}.botoes{display:flex;gap:8px}.btn{background:var(--painel2);border:1px solid var(--borda);padding:8px 14px;border-radius:8px;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap;color:var(--texto)}.btn:hover{border-color:#3a4a6d}.btn:disabled{opacity:.55;cursor:default}.btn.primario{background:var(--prim);border-color:var(--prim);color:#fff}.btn.primario:hover{background:var(--prim2)}.btn.perigo{background:transparent;border-color:var(--bad);color:#ff8080}.btn.largo{width:100%;padding:11px}.btn.peq{padding:5px 10px;font-size:.85rem}.btn-x{background:none;border:0;font-size:1.5rem;line-height:1;cursor:pointer;color:var(--fraco);padding:0 6px}.btn-x.peq{font-size:1.2rem}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-bottom:12px}.card{background:var(--painel);border:1px solid var(--borda);border-radius:var(--raio);padding:14px;display:flex;flex-direction:column;gap:2px;text-align:left;cursor:pointer;border-left-width:4px}.card.dinheiro{cursor:default;border-left-color:var(--prim)}.card.ok{border-left-color:var(--ok)}.card.warn{border-left-color:var(--warn)}.card.bad{border-left-color:var(--bad)}.card.muted{border-left-color:#64748b}.card.info{border-left-color:var(--info)}.card-v{font-size:1.5rem;font-weight:800}.card-t{color:var(--fraco);font-size:.85rem}.painel{background:var(--painel);border:1px solid var(--borda);border-radius:var(--raio);padding:16px;margin-bottom:14px}.painel .topo-pagina{margin-bottom:10px}.painel .topo-pagina h3{margin:0}.lista{display:flex;flex-direction:column;gap:6px}.linha{display:flex;justify-content:space-between;align-items:center;gap:10px;background:var(--painel2);border:1px solid var(--borda);border-radius:8px;padding:10px 12px;text-align:left;cursor:pointer;width:100%}.linha:hover{border-color:#3a4a6d}.linha.estatica{cursor:default}.linha.col{flex-direction:column;align-items:stretch}.linha-princ{display:flex;flex-direction:column;min-width:0}.linha-princ.link{background:none;border:0;text-align:left;cursor:pointer;padding:0}.linha-princ strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.linha-dir{display:flex;flex-direction:column;align-items:flex-end;gap:3px;text-align:right;flex-shrink:0}.mini{font-size:.8rem;color:var(--fraco)}.erro-txt{color:#ff8a8a}.badge{display:inline-block;padding:2px 9px;border-radius:99px;font-size:.75rem;font-weight:700}.badge.ok{background:#22c55e26;color:#4ade80}.badge.warn{background:#f59e0b26;color:#fbbf24}.badge.bad{background:#ef444426;color:#f87171}.badge.muted{background:#64748b33;color:#a3b0c5}.badge.info{background:#06b6d426;color:#22d3ee}.busca{width:100%;padding:11px 14px;border-radius:8px;border:1px solid var(--borda);background:var(--painel);margin-bottom:10px}.chips{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px}.chip{background:var(--painel);border:1px solid var(--borda);border-radius:99px;padding:5px 12px;cursor:pointer;font-size:.85rem;color:var(--fraco)}.chip b{color:var(--texto);margin-left:3px}.chip.ativo{background:var(--prim);border-color:var(--prim);color:#fff}.chip.ativo b{color:#fff}.campo{display:flex;flex-direction:column;gap:4px;margin-bottom:10px}.campo>span{font-size:.8rem;color:var(--fraco)}.campo small{font-size:.75rem;color:var(--fraco)}input,select,textarea{background:var(--fundo);border:1px solid var(--borda);border-radius:8px;padding:9px 11px;width:100%}input:focus,select:focus,textarea:focus{outline:2px solid var(--prim);outline-offset:-1px}textarea{resize:vertical}.check{display:flex;align-items:center;gap:8px;margin:8px 0;cursor:pointer}.check input{width:18px;height:18px}.check.inline{margin:0 10px 0 0}.check.grande{font-weight:700;margin-bottom:14px}.grade2{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}.grade3{display:grid;grid-template-columns:repeat(3,1fr);gap:0 12px}.bloco-pag{background:var(--painel2);border:1px solid var(--borda);border-radius:8px;padding:6px 12px;margin:10px 0}.acoes-form{display:flex;justify-content:flex-end;gap:8px;margin-top:14px;flex-wrap:wrap}.linha-form{display:flex;gap:8px;margin:10px 0;flex-wrap:wrap}.linha-form input{flex:1;min-width:160px}.modal-fundo{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:flex-start;justify-content:center;padding:30px 12px;overflow-y:auto;z-index:50}.modal{background:var(--painel);border:1px solid var(--borda);border-radius:14px;width:100%;max-width:480px}.modal.largo{max-width:760px}.modal-topo{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;border-bottom:1px solid var(--borda)}.modal-topo h3{margin:0}.modal-corpo{padding:16px}.det-topo{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:12px}.acoes-rapidas{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px}.abas{display:flex;gap:4px;border-bottom:1px solid var(--borda);margin-bottom:12px;overflow-x:auto}.aba{background:none;border:0;padding:8px 12px;cursor:pointer;color:var(--fraco);border-bottom:2px solid transparent;white-space:nowrap}.aba.ativa{color:var(--texto);border-bottom-color:var(--prim)}.dados{display:grid;grid-template-columns:1fr 1fr;gap:8px}.dado{background:var(--painel2);border-radius:8px;padding:8px 10px;display:flex;flex-direction:column}.dado span{font-size:.75rem;color:var(--fraco)}.dado b{word-break:break-word}.dado.inteiro{grid-column:1 / -1}pre.msg{white-space:pre-wrap;font:inherit;font-size:.85rem;color:var(--fraco);margin:6px 0 0}.aviso{background:#f59e0b1a;border:1px solid rgba(245,158,11,.4);color:#fcd34d;border-radius:8px;padding:10px 12px;margin-bottom:14px;font-size:.9rem}.erro-box{background:#ef44441a;border:1px solid rgba(239,68,68,.4);color:#fca5a5;border-radius:8px;padding:9px 12px;margin:8px 0;font-size:.9rem}.carregando,.vazio{color:var(--fraco);padding:24px;text-align:center}.rodape{text-align:center;margin-top:16px}.seletor-mes{display:flex;align-items:center;justify-content:center;gap:14px;margin:6px 0 14px}.barras{display:flex;align-items:flex-end;gap:6px;height:140px}.barra{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;background:none;border:0;cursor:pointer;padding:0}.barra-v{width:100%;max-width:40px;background:#2a3b60;border-radius:4px 4px 0 0}.barra.ativa .barra-v,.barra:hover .barra-v{background:var(--prim)}.barra-t{font-size:.7rem;color:var(--fraco);margin-top:4px}.qr{text-align:center;background:#fff;border-radius:12px;padding:14px;margin:10px auto;max-width:320px}.qr img{width:100%;max-width:280px}.qr .mini{color:#333}.toasts{position:fixed;right:16px;bottom:16px;display:flex;flex-direction:column;gap:8px;z-index:100;max-width:calc(100vw - 32px)}.toast{background:#14532d;border:1px solid #22c55e;padding:10px 14px;border-radius:8px;box-shadow:0 6px 20px #0006;max-width:420px;white-space:pre-wrap}.toast.erro{background:#450a0a;border-color:var(--bad)}.toast.aviso{background:#451a03;border-color:var(--warn)}.login-fundo{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px}.login-card{background:var(--painel);border:1px solid var(--borda);border-radius:16px;padding:28px;width:100%;max-width:360px}.login-card h1{margin:0}.login-card .sub{color:var(--fraco);margin:2px 0 20px}@media (max-width: 760px){.app{flex-direction:column}.menu{position:fixed;bottom:0;top:auto;left:0;right:0;height:auto;width:100%;flex-direction:row;padding:4px;border-right:0;border-top:1px solid var(--borda);z-index:40;justify-content:space-around;padding-bottom:max(4px,env(safe-area-inset-bottom))}.marca{display:none}.menu-item{flex-direction:column;gap:2px;padding:6px 4px;font-size:.7rem;flex:1;align-items:center}.menu-item .ico{font-size:1.1rem}.menu-item.sair{margin-top:0}.conteudo{padding:14px 12px 90px}.grade2,.grade3,.dados{grid-template-columns:1fr}.modal-fundo{padding:0}.modal,.modal.largo{max-width:none;min-height:100vh;border-radius:0;border:0}.linha{align-items:flex-start}.toasts{bottom:80px}}
