:root{--bg:#f7f5f2;--card:#fff;--texto:#1f1d1a;--suave:#6b665f;--borda:#e4dfd7;--primaria:#7a5c3e;--primaria-texto:#fff;--ok:#2f7d4f;--alerta:#b7791f;--erro:#b42318;--info:#2b6cb0}@media (prefers-color-scheme:dark){:root{--bg:#171614;--card:#211f1c;--texto:#f1ede7;--suave:#a59f96;--borda:#36322d;--primaria:#c9a27a;--primaria-texto:#1a1612;--ok:#5cc78a;--alerta:#e0a84a;--erro:#f07167;--info:#7fb2ec}}*{box-sizing:border-box}body{background:var(--bg);color:var(--texto);margin:0;font:15px/1.5 system-ui,-apple-system,Segoe UI,sans-serif}a{color:var(--primaria)}header.topo{border-bottom:1px solid var(--borda);background:var(--card);flex-wrap:wrap;align-items:center;gap:16px;padding:12px 20px;display:flex}header.topo strong{margin-right:auto}header.topo nav{flex-wrap:wrap;gap:14px;display:flex}main{max-width:1200px;margin:0 auto;padding:20px 16px 60px}h1{margin:0 0 16px;font-size:22px}h2{margin:24px 0 10px;font-size:17px}.card{background:var(--card);border:1px solid var(--borda);border-radius:10px;margin-bottom:16px;padding:16px}.totais{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px;margin-bottom:16px;display:grid}.total{background:var(--card);border:1px solid var(--borda);color:inherit;border-radius:10px;padding:12px;text-decoration:none}.total b{font-size:24px;display:block}.total span{color:var(--suave);font-size:13px}.total.ativo{outline:2px solid var(--primaria)}.filtros{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;display:flex}.tabela-wrap{overflow-x:auto}table{border-collapse:collapse;background:var(--card);width:100%;font-size:14px}th,td{text-align:left;border-bottom:1px solid var(--borda);vertical-align:top;padding:8px 10px}th{color:var(--suave);white-space:nowrap;font-weight:600}.etiqueta{white-space:nowrap;border:1px solid;border-radius:99px;padding:1px 8px;font-size:12px;display:inline-block}.e-ok{color:var(--ok)}.e-alerta{color:var(--alerta)}.e-erro{color:var(--erro)}.e-info{color:var(--info)}.e-suave{color:var(--suave)}button,.botao{background:var(--primaria);color:var(--primaria-texto);font:inherit;cursor:pointer;border:0;border-radius:8px;padding:8px 14px;text-decoration:none;display:inline-block}button.secundario,.botao.secundario{color:var(--texto);border:1px solid var(--borda);background:0 0}button.perigo{background:var(--erro);color:#fff}button:disabled{opacity:.5;cursor:not-allowed}input,select,textarea{font:inherit;border:1px solid var(--borda);background:var(--card);color:var(--texto);border-radius:8px;padding:7px 10px}label{align-items:center;gap:6px;display:inline-flex}.campo{flex-direction:column;gap:4px;max-width:360px;margin-bottom:12px;display:flex}.aviso{border:1px solid var(--alerta);color:var(--texto);background:color-mix(in srgb, var(--alerta) 12%, transparent);border-radius:8px;margin-bottom:12px;padding:10px 12px}.erro{border:1px solid var(--erro);background:color-mix(in srgb, var(--erro) 10%, transparent);border-radius:8px;margin-bottom:12px;padding:10px 12px}.sucesso{border:1px solid var(--ok);background:color-mix(in srgb, var(--ok) 10%, transparent);border-radius:8px;margin-bottom:12px;padding:10px 12px}.suave{color:var(--suave)}.log{background:var(--bg);border:1px solid var(--borda);border-radius:8px;max-height:320px;padding:8px;font-family:ui-monospace,monospace;font-size:13px;overflow:auto}details summary{cursor:pointer;color:var(--suave)}.msg{white-space:pre-wrap;max-width:320px}.paginacao{align-items:center;gap:10px;margin-top:12px;display:flex}
