:root{--fundo:#f7f7f8;--superficie:#ffffff;--superficie-2:#f2f2f4;--borda:#e2e2e6;--borda-forte:#cfcfd6;--texto:#1a1a1e;--texto-fraco:#6b6b76;--acento:#2f5bd7;--acento-fraco:#eaefff;--ok:#1a7f52;--ok-fraco:#e6f5ee;--alerta:#9a6400;--alerta-fraco:#fdf3e0;--erro:#b3261e;--erro-fraco:#fdeceb;--raio:8px;--sombra:0 1px 2px rgba(0,0,0,0.05),0 1px 3px rgba(0,0,0,0.04)}@media (prefers-color-scheme:dark){:root{--fundo:#131316;--superficie:#1b1b1f;--superficie-2:#232329;--borda:#2e2e35;--borda-forte:#3d3d46;--texto:#ececed;--texto-fraco:#9a9aa6;--acento:#7d9cf5;--acento-fraco:#1e2740;--ok:#57c893;--ok-fraco:#14291f;--alerta:#e0aa4f;--alerta-fraco:#2e2413;--erro:#f2837c;--erro-fraco:#331a19;--sombra:0 1px 2px rgba(0,0,0,0.4)}}*{box-sizing:border-box}body,html{margin:0;padding:0}body{background:var(--fundo);color:var(--texto);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,sans-serif;font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased}h1{font-size:20px;margin:0 0 4px}h1,h2{font-weight:600}h2{font-size:15px}h2,p{margin:0 0 12px}.mono,code{font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:12.5px}a{color:var(--acento)}.app{display:grid;grid-template-columns:220px 1fr;min-height:100vh}.lateral{background:var(--superficie);border-right:1px solid var(--borda);padding:20px 12px;display:flex;flex-direction:column;gap:4px}.marca{padding:0 10px 18px}.marca strong{display:block;font-size:15px}.marca span{color:var(--texto-fraco);font-size:12px}.lateral nav a{display:block;padding:8px 10px;border-radius:6px;color:var(--texto);text-decoration:none}.lateral nav a:hover{background:var(--superficie-2)}.lateral nav a[aria-current=page]{background:var(--acento-fraco);color:var(--acento);font-weight:500}.rodape-lateral{margin-top:auto;border-top:1px solid var(--borda);padding-top:12px;font-size:12px;color:var(--texto-fraco)}.conteudo{padding:28px 32px;max-width:1400px}.cabecalho-pagina{margin-bottom:20px}.cabecalho-pagina p{color:var(--texto-fraco);margin:0}.cartao{background:var(--superficie);border:1px solid var(--borda);border-radius:var(--raio);padding:18px;box-shadow:var(--sombra);margin-bottom:18px}.grade{display:grid;grid-gap:14px;gap:14px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.indicador{background:var(--superficie);border:1px solid var(--borda);border-radius:var(--raio);padding:14px 16px}.indicador .rotulo{color:var(--texto-fraco);font-size:12px;text-transform:uppercase;letter-spacing:.03em}.indicador .valor{font-size:24px;font-weight:600;margin-top:2px}table{width:100%;border-collapse:collapse;font-size:13px}th{text-align:left;font-weight:600;color:var(--texto-fraco);font-size:11.5px;text-transform:uppercase;letter-spacing:.03em;padding:8px 10px;white-space:nowrap}td,th{border-bottom:1px solid var(--borda)}td{padding:9px 10px;vertical-align:top}tr:last-child td{border-bottom:none}.rolagem{overflow-x:auto}.etiqueta{display:inline-block;padding:1px 7px;border-radius:999px;font-size:11.5px;font-weight:500;background:var(--superficie-2);color:var(--texto-fraco);border:1px solid var(--borda);margin:1px 3px 1px 0;white-space:nowrap}.etiqueta.ok{background:var(--ok-fraco);color:var(--ok);border-color:transparent}.etiqueta.alerta{background:var(--alerta-fraco);color:var(--alerta);border-color:transparent}.etiqueta.erro{background:var(--erro-fraco);color:var(--erro);border-color:transparent}.etiqueta.acento{background:var(--acento-fraco);color:var(--acento);border-color:transparent}button{font:inherit;padding:7px 14px;border-radius:6px;border:1px solid var(--borda-forte);background:var(--superficie);color:var(--texto);cursor:pointer}button:hover:not(:disabled){background:var(--superficie-2)}button:disabled{opacity:.5;cursor:not-allowed}button.primario{background:var(--acento);border-color:var(--acento);color:#fff}button.primario:hover:not(:disabled){filter:brightness(1.08)}button.perigo{color:var(--erro);border-color:var(--erro);background:transparent}button.perigo:hover:not(:disabled){background:var(--erro-fraco)}button.discreto{padding:4px 9px;font-size:12.5px}label{display:block;font-size:12.5px;font-weight:500;margin-bottom:4px;color:var(--texto-fraco)}input:not([type]),input[type=datetime-local],input[type=email],input[type=number],input[type=password],input[type=text],select,textarea{width:100%;font:inherit;padding:7px 10px;border:1px solid var(--borda-forte);border-radius:6px;background:var(--superficie);color:var(--texto)}textarea{resize:vertical;min-height:80px;font-family:inherit}input:focus,select:focus,textarea:focus{outline:2px solid var(--acento);outline-offset:-1px}.campos{display:grid;grid-gap:14px;gap:14px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-bottom:14px}.caixas{display:flex;flex-wrap:wrap;gap:8px 14px}.caixas label{display:flex;align-items:center;gap:6px;font-weight:400;color:var(--texto);margin:0;cursor:pointer}.caixas input{margin:0}.aviso{padding:10px 12px;border-radius:6px;margin-bottom:14px;font-size:13px}.aviso.erro{background:var(--erro-fraco);color:var(--erro)}.aviso.info{background:var(--acento-fraco);color:var(--acento)}.aviso.atencao{color:var(--alerta)}.aviso.atencao,.segredo{background:var(--alerta-fraco)}.segredo{border:1px solid var(--alerta);border-radius:var(--raio);padding:16px;margin-bottom:18px}.segredo .valor{background:var(--superficie);border:1px solid var(--borda-forte);border-radius:6px;padding:10px 12px;margin:10px 0;word-break:break-all;-webkit-user-select:all;-moz-user-select:all;user-select:all}.vazio{padding:32px;text-align:center}.fraco,.vazio{color:var(--texto-fraco)}.truncar{max-width:380px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tela-login{min-height:100vh;display:grid;place-items:center;padding:20px}.caixa-login{width:100%;max-width:360px;background:var(--superficie);border:1px solid var(--borda);border-radius:12px;padding:28px;box-shadow:var(--sombra)}.caixa-login h1{margin-bottom:2px}.caixa-login .sub{color:var(--texto-fraco);margin-bottom:20px}.caixa-login .campo{margin-bottom:14px}.caixa-login button{width:100%;margin-top:4px}.barra-filtros{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap;margin-bottom:14px}.barra-filtros>div{min-width:150px}