:root {
    --cor-texto: #1a1a1a;
    --cor-fundo: #f7f7f5;
    --cor-borda: #d8d8d3;
    --cor-primaria: #1f4e3d;
    --cor-alerta: #b45309;
    --cor-erro: #b91c1c;
}

* { box-sizing: border-box; }

body {
    margin: 0;
    font-family: system-ui, -apple-system, "Segoe UI", sans-serif;
    color: var(--cor-texto);
    background: var(--cor-fundo);
}

.topo {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.75rem 1.5rem;
    background: var(--cor-primaria);
    color: white;
}

.topo .marca { color: white; text-decoration: none; font-weight: 600; }
.sair { display: flex; gap: 0.5rem; align-items: center; }
.sair button { cursor: pointer; }

.conteudo { max-width: 960px; margin: 0 auto; padding: 1.5rem; }

table { width: 100%; border-collapse: collapse; margin-bottom: 1.5rem; }
th, td { text-align: left; padding: 0.5rem; border-bottom: 1px solid var(--cor-borda); }

form { display: flex; flex-direction: column; gap: 0.5rem; max-width: 420px; margin-bottom: 1.5rem; }
label { font-weight: 600; font-size: 0.9rem; }
input, select, button { padding: 0.5rem; font-size: 1rem; }
button { cursor: pointer; background: var(--cor-primaria); color: white; border: none; border-radius: 4px; }

.erro { color: var(--cor-erro); font-weight: 600; }
.alerta { color: var(--cor-alerta); font-weight: 600; }
.nota { font-size: 0.85rem; color: #555; }

.status { padding: 0.15rem 0.5rem; border-radius: 4px; font-size: 0.85rem; }
.status-aberto { background: #e5e7eb; }
.status-processando { background: #dbeafe; }
.status-concluido { background: #dcfce7; }
.status-divergente, .status-erro { background: #fee2e2; }

.saldo-negativo { background: #fee2e2; }
.severidade-alta { border-left: 4px solid var(--cor-erro); }
.severidade-media { border-left: 4px solid var(--cor-alerta); }
