:root{--bg: #FAF8F4;--surface: #FFFDF8;--surface-2: #F3F0E9;--surface-3: #FBF8F1;--ink: #16150F;--ink-2: #4A463A;--muted: #6F6A5C;--muted-2: #8C8674;--line: #E9E4D9;--line-2: #E2DCCF;--line-3: #F1ECE1;--green: #1F6F4A;--red: #C2603F;--blue: #2E5E8C;--gold: #C9A227;--amber: #A96A28;--sans: "IBM Plex Sans", system-ui, sans-serif;--serif: "Instrument Serif", Georgia, serif;--mono: "IBM Plex Mono", monospace}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased}button,input,select{font-family:inherit;font-variant-numeric:tabular-nums}:focus-visible{outline:2px solid var(--ink);outline-offset:2px;border-radius:6px}a{color:var(--green);text-decoration:none}a:hover{color:#145236}@keyframes rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.app{display:flex;flex-wrap:wrap;min-height:100vh}.sidebar{flex:1 1 200px;max-width:250px;min-width:200px;background:var(--surface-2);border-right:1px solid var(--line-2);padding:26px 18px;display:flex;flex-direction:column;gap:26px}.brand{font-family:var(--serif);font-size:26px;line-height:1}.kicker{font:500 10px/1.4 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted-2)}.nav{display:flex;flex-wrap:wrap;gap:3px}.nav button{flex:1 1 150px;display:flex;align-items:center;gap:9px;text-align:left;border:0;background:transparent;color:var(--ink-2);cursor:pointer;padding:9px 11px;border-radius:8px;font-size:13.5px;font-weight:500;transition:background .14s ease}.nav button:hover{background:#e7e2d6}.nav button.ativo{background:var(--ink);color:var(--bg)}.nav .marca{width:3px;height:15px;border-radius:2px;flex:none;background:transparent}.nav button.ativo .marca{background:var(--gold)}.nav .badge{font:500 10px var(--mono);color:#a39c88}.nav .rotulo{flex:1;min-width:0}.caixa-card{margin-top:auto;padding:14px;background:var(--surface);border:1px solid var(--line-2);border-radius:9px;display:flex;flex-direction:column;gap:8px}.caixa-valor{font-family:var(--mono);font-size:21px;font-weight:500;letter-spacing:-.02em}.nota{font-size:11.5px;line-height:1.45;color:var(--muted)}.main{flex:999 1 480px;min-width:0;display:flex;flex-direction:column}.topbar{position:sticky;top:0;z-index:20;background:#faf8f4eb;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:16px;padding:22px 30px 16px;border-bottom:1px solid var(--line)}.titulo{margin:0;font-family:var(--serif);font-weight:400;font-size:34px;line-height:1.08;letter-spacing:-.015em}.conteudo{padding:26px 30px 60px;display:flex;flex-direction:column;gap:26px}.mes-nav{display:flex;align-items:center;gap:4px;background:var(--surface-2);border:1px solid var(--line-2);border-radius:9px;padding:4px}.mes-nav button{border:0;background:transparent;cursor:pointer;padding:6px 9px;border-radius:6px;font-size:14px;color:var(--muted)}.mes-nav button:hover:not(:disabled){background:#e7e2d6}.mes-nav button:disabled{opacity:.3;cursor:default}.mes-atual{display:flex;flex-direction:column;align-items:center;padding:0 8px;min-width:118px}.mes-atual strong{font-size:13.5px;font-weight:600;letter-spacing:-.01em}.mes-atual span{font:500 9.5px var(--mono);letter-spacing:.09em}.btn{border:1px solid var(--ink);background:var(--ink);color:var(--bg);cursor:pointer;padding:10px 16px;border-radius:8px;font-size:13px;font-weight:600}.btn:hover{background:#2c2a20}.btn-sec{border:1px solid #D8D1C1;background:var(--surface);color:var(--ink);cursor:pointer;padding:10px 16px;border-radius:8px;font-size:13px;font-weight:600}.btn-sec:hover{background:var(--surface-2)}.chip{cursor:pointer;padding:7px 13px;border-radius:20px;font-size:12.5px;font-weight:500;border:1px solid #D8D1C1;background:var(--surface);color:var(--ink-2)}.chip.ativo{background:var(--ink);color:var(--bg);border-color:var(--ink)}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px}.grid-lg{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:18px}.card{background:var(--surface);border:1px solid var(--line);border-radius:11px;padding:18px 20px}.card-kpi{display:flex;flex-direction:column;gap:9px;animation:rise .35s ease both;transition:box-shadow .16s ease,transform .16s ease}.card-kpi:hover{box-shadow:0 6px 18px #16150f12;transform:translateY(-1px)}.card h2{margin:0;font-family:var(--serif);font-weight:400;font-size:19px}.card-grafico{display:flex;flex-direction:column;gap:16px}.card-topo{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:4px 12px}.valor{font-family:var(--mono);font-size:26px;font-weight:500;letter-spacing:-.03em}.legenda{display:flex;gap:12px;font-size:10.5px;color:var(--muted)}.legenda i,.ponto{width:9px;height:9px;border-radius:2px;display:block}.grid>*,.grid-lg>*{min-width:0}.gr{display:flex;flex-direction:column;gap:14px;min-width:0}.gr-leitura{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 14px;font-size:12px;color:var(--muted);min-height:18px}.gr-leitura>strong{font-size:12.5px;font-weight:600;color:var(--ink)}.gr-serie{display:inline-flex;align-items:center;gap:6px}.gr-serie i{width:9px;height:9px;border-radius:2px;flex:none}.gr-serie b{font-family:var(--mono);font-weight:500;color:var(--ink-2);font-variant-numeric:tabular-nums}.gr-resumo{margin-left:auto;font-family:var(--mono);font-size:11.5px;color:var(--muted-2);font-variant-numeric:tabular-nums}.gr-plot{position:relative;padding-left:46px}.gr-linha{position:absolute;left:46px;right:0;border-top:1px solid var(--line-3)}.gr-linha:first-child{border-top-color:var(--line-2)}.gr-linha span{position:absolute;right:100%;padding-right:9px;transform:translateY(-50%);font:500 9.5px var(--mono);color:var(--muted-2);white-space:nowrap;font-variant-numeric:tabular-nums}.gr-cols{position:relative;height:100%;display:flex;align-items:flex-end;gap:8px}.gr-col{flex:1 1 0;min-width:0;height:100%;display:flex;align-items:flex-end;justify-content:center;border-radius:7px 7px 0 0;outline:none}.gr-col.foco{background:var(--surface-2)}.gr-col:focus-visible{box-shadow:inset 0 0 0 2px var(--ink)}.gr-marcas{display:flex;align-items:flex-end;justify-content:center;gap:2px;width:100%;height:100%;padding:0 4px}.gr-barra{flex:1 1 0;min-width:0;max-width:20px;border-radius:4px 4px 0 0;transition:opacity .15s ease}.gr-eixo{display:flex;gap:8px;padding-left:46px}.gr-eixo span{flex:1 1 0;min-width:0;text-align:center;font:500 10px var(--mono);letter-spacing:.06em;color:var(--muted-2)}.gr-eixo span.foco{color:var(--ink)}.trilha{height:7px;border-radius:4px;background:#efeadf;overflow:hidden}.trilha>div{height:100%;border-radius:4px}.tabela-wrap{background:var(--surface);border:1px solid var(--line);border-radius:11px;overflow-x:auto}table{width:100%;border-collapse:collapse}th{text-align:left;padding:13px 18px;font:500 9.5px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted-2);border-bottom:1px solid var(--line)}th.num,td.num{text-align:right}td{padding:13px 18px;font-size:13.5px;border-bottom:1px solid var(--line-3)}tbody tr{transition:background .12s ease}tbody tr:hover{background:var(--surface-3)}td.mono{font-family:var(--mono);font-size:14px;font-weight:500}tfoot td{background:var(--surface-3);font-size:12.5px;font-weight:600;border-bottom:0;padding:15px 18px}tfoot td.total{font-family:var(--mono);font-size:16px}.excluir{border:0;background:transparent;cursor:pointer;color:#b9b2a0;font-size:15px;line-height:1;padding:5px 7px;border-radius:6px}.excluir:hover{background:#f6e7e1;color:var(--red)}.vazio{padding:38px 20px;text-align:center;display:flex;flex-direction:column;gap:6px;align-items:center}.vazio strong{font-family:var(--serif);font-size:19px;font-weight:400}.vazio span{font-size:12.5px;color:var(--muted-2);max-width:320px;line-height:1.5}.pill{display:inline-flex;align-items:center;gap:6px;cursor:pointer;padding:4px 11px 4px 8px;border-radius:20px;font:600 10.5px var(--mono);letter-spacing:.06em;text-transform:uppercase}.pill:hover{filter:brightness(.97)}.pill i{width:7px;height:7px;border-radius:50%;display:block;background:currentColor}.pill.ok{background:#e4f0e7;color:var(--green);border:1px solid #BFDDC9}.pill.pend{background:#fbf0e4;color:var(--amber);border:1px solid #EBD5B5}.tag{padding:3px 9px;border-radius:5px;background:var(--line-3);font:500 10.5px var(--mono);letter-spacing:.05em;color:var(--muted)}.card-escuro{background:var(--ink);color:#f6f2e9;border-radius:11px;padding:20px 22px;display:flex;flex-direction:column;gap:14px}.card-escuro h2{margin:0;font-family:var(--serif);font-weight:400;font-size:19px}.socio-linha{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 13px;background:#211f17;border-radius:8px}.socio-linha .valor-sm{font-family:var(--mono);font-size:17px;font-weight:500;letter-spacing:-.02em}.btn-claro{border:0;cursor:pointer;padding:11px;border-radius:8px;background:#f6f2e9;color:var(--ink);font-size:13px;font-weight:600}.btn-claro:hover{background:#fff}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#16150f6b;display:flex;align-items:center;justify-content:center;padding:20px;z-index:50}.modal{width:100%;max-width:420px;background:var(--surface);border-radius:14px;padding:26px;display:flex;flex-direction:column;gap:16px;box-shadow:0 24px 60px #16150f47;animation:rise .2s ease both}.modal h3{margin:0;font-family:var(--serif);font-weight:400;font-size:23px}.campo{display:flex;flex-direction:column;gap:6px}.campo>span{font:500 9.5px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted-2)}.campo input,.campo select{border:1px solid #D8D1C1;border-radius:8px;padding:10px 12px;font-size:14px;background:#fff;color:var(--ink);width:100%}.campo input:focus,.campo select:focus{border-color:var(--ink);outline:none}.dica{font-size:11.5px;line-height:1.5;color:var(--muted);background:var(--surface-2);border-radius:8px;padding:10px 12px}.toast{position:fixed;left:50%;bottom:26px;transform:translate(-50%);z-index:60;background:var(--ink);color:#f6f2e9;padding:12px 18px;border-radius:10px;font-size:13px;font-weight:500;box-shadow:0 12px 32px #16150f47;animation:rise .18s ease both}.aviso{background:var(--surface-2);border:1px dashed #D8D1C1;border-radius:11px;padding:18px 20px;font-size:12.5px;line-height:1.6;color:var(--muted)}code{font-family:var(--mono);background:#e7e2d6;padding:1px 5px;border-radius:4px}.login{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;background:var(--bg)}.login-card{width:100%;max-width:380px;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:30px;display:flex;flex-direction:column;gap:16px;box-shadow:0 18px 44px #16150f14;animation:rise .25s ease both}.login-card .btn:disabled{opacity:.45;cursor:default}.erro{font-size:12.5px;line-height:1.5;color:var(--red);background:#f9ede7;border:1px solid #EBD0C4;border-radius:8px;padding:10px 12px}.lembrar{display:flex;align-items:center;gap:9px;cursor:pointer;font-size:12.5px;color:var(--ink-2);-webkit-user-select:none;user-select:none}.lembrar input{width:15px;height:15px;accent-color:var(--ink);cursor:pointer;flex:none}.usuario{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:12px;border-top:1px solid var(--line-2)}.usuario-nome{font-size:12.5px;font-weight:600;letter-spacing:-.01em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sair{border:1px solid #D8D1C1;background:transparent;cursor:pointer;padding:6px 11px;border-radius:7px;font:500 11.5px var(--sans);color:var(--muted);flex:none}.sair:hover{background:var(--surface);color:var(--ink)}
