feat: UI polish - dark default, version drift vs default release, humanized enums, failed-jobs layout, processing button hierarchy, PT-BR titles/CTAs

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
gti
2026-09-24 14:26:44 -03:00
co-authored by Claude Sonnet 5
parent 9a142975a6
commit c950ffb47f
18 changed files with 247 additions and 52 deletions
+22
View File
@@ -208,3 +208,25 @@ code { overflow-wrap: anywhere; }
@media (max-width: 768px) { .cards, .cards.compact { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 520px) { .cards, .cards.compact, .bar-grid { grid-template-columns: minmax(0, 1fr); } }
@media (max-width: 520px) { .cards { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; } .cards .metric { padding: 12px; } .cards .metric strong { font-size: 1.5rem; } }
/* ---------- detalhe do Agent: badges de status e hierarquia das ações de processamento ---------- */
.status-stack { display: flex; flex-wrap: wrap; gap: 16px; }
.status-block { display: grid; gap: 4px; justify-items: start; }
.status-label { font-size: 0.7rem; letter-spacing: .08em; text-transform: uppercase; color: var(--cor-texto-secundario); }
.ops-actions { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.ops-actions form { margin: 0; }
button.caution { background: var(--cor-aviso-fundo); color: var(--cor-aviso); border: 1px solid var(--cor-aviso); }
button.caution:hover { filter: brightness(1.08); }
.ops-actions .botao.secondary, .ops-actions button.secondary { background: transparent; }
/* ---------- Jobs com falha (Resumo): lista sem tabela, erro resumido, sem scroll horizontal ---------- */
.failed-jobs { list-style: none; margin: 0; padding: 0; display: grid; gap: 0; }
.failed-job { display: flex; justify-content: space-between; align-items: flex-start; gap: 12px; padding: 10px 0 10px 12px; border-bottom: 1px solid var(--cor-borda); border-left: 3px solid var(--cor-perigo); margin-bottom: 8px; border-radius: 4px; }
.failed-job:last-child { border-bottom: 0; }
.failed-job-main { min-width: 0; display: grid; gap: 2px; }
.failed-job-main b, .failed-job-main small { overflow-wrap: anywhere; }
.failed-job-kind { font-size: 0.82rem; font-weight: 600; }
.failed-job .job-error-summary { max-width: none; white-space: normal; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.failed-job-side { flex: none; display: grid; gap: 4px; justify-items: end; font-size: 0.8rem; color: var(--cor-texto-secundario); white-space: nowrap; }
@media (max-width: 520px) { .failed-job { flex-direction: column; } .failed-job-side { justify-items: start; grid-auto-flow: column; gap: 12px; } }
.ops-actions button:disabled, .ops-actions .primary-action:disabled { opacity: .45; cursor: not-allowed; filter: grayscale(.4); }
+1 -1
View File
@@ -6,7 +6,7 @@
function temaAtual() {
var salvo = localStorage.getItem("tema");
if (salvo === "claro" || salvo === "escuro") return salvo;
return window.matchMedia("(prefers-color-scheme: dark)").matches ? "escuro" : "claro";
return "escuro"; // padrão do painel sem preferência salva
}
botao.addEventListener("click", function () {