:root{--cereja:#e50145;--laranja:#f15a22;--fundo:#fff8f2;--cartao:#fff;--texto:#2b2b2b;--suave:#7a7a7a;--borda:#f0e4d8;--verde:#0c893e}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--fundo);color:var(--texto);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:14px}.container{max-width:1500px;margin:0 auto;padding:24px 20px 64px}h1{font-size:22px;margin-bottom:4px}.sub{color:var(--suave)}.barra,.sub{margin-bottom:16px}.barra{display:flex;gap:12px;align-items:flex-end;flex-wrap:wrap;background:var(--cartao);border:1px solid var(--borda);border-radius:12px;padding:14px 16px}.barra label{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--suave);font-weight:600}.barra input{border:1px solid var(--borda);border-radius:8px;padding:8px 10px;font-size:14px;font-family:inherit}.btn-primary{background:var(--cereja);color:#fff;border:none;border-radius:999px;padding:10px 20px;font-weight:700;cursor:pointer}.btn-primary:disabled{opacity:.55;cursor:wait}.status{color:var(--suave);font-size:12px;margin-left:auto;text-align:right;line-height:1.5}.abas{display:flex;gap:8px;margin-bottom:12px}.aba{border:1px solid var(--borda);background:var(--cartao);border-radius:999px;padding:7px 16px;cursor:pointer;font-weight:600;font-family:inherit;font-size:13px}.aba.ativa{background:var(--cereja);color:#fff;border-color:var(--cereja)}.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));grid-gap:12px;gap:12px;margin-bottom:16px}.kpi{background:var(--cartao);border:1px solid var(--borda);border-radius:12px;padding:12px 14px}.kpi .t{font-size:12px;color:var(--suave)}.kpi .v{font-size:20px;font-weight:700;margin-top:2px}.tabela-wrap{background:var(--cartao);border:1px solid var(--borda);border-radius:12px;overflow:auto}table{border-collapse:collapse;width:100%;min-width:1300px}td,th{padding:8px 10px;text-align:right;border-bottom:1px solid var(--borda);white-space:nowrap}th{background:#fff3e8;font-size:12px;position:-webkit-sticky;position:sticky;top:0}td:first-child,th:first-child{text-align:left}td.nome{white-space:normal;min-width:320px;max-width:460px;word-break:break-word;font-size:12.5px}tr.total td{font-weight:700;background:#fff8f2}.msg{padding:14px 16px;border-radius:10px;margin-bottom:12px;background:#fff3e8;border:1px solid var(--borda)}.erro{background:#ffe8ee;color:#a0002d}.notas{color:var(--suave);font-size:12px;margin-top:16px;line-height:1.6}