:root { color-scheme: light; --azul: #0b2b45; --azul2: #174d70; --fundo: #f2f5f7; --borda: #d3dce3; }
* { box-sizing: border-box; }
body { margin: 0; font-family: "Segoe UI", Arial, sans-serif; color: #17232c; background: var(--fundo); line-height: 1.55; }
.topo { background: var(--azul); color: white; padding: 2.2rem max(1.2rem, calc((100% - 980px)/2)); }
.sobretitulo { font-size: .78rem; font-weight: 700; letter-spacing: .12em; margin: 0 0 .65rem; }
h1 { margin: 0; font-size: clamp(1.8rem, 4vw, 2.8rem); letter-spacing: .025em; }
.subtitulo { margin: .45rem 0 0; color: #d8e7f0; font-size: 1.1rem; }
main { width: min(980px, calc(100% - 2rem)); margin: 1.5rem auto 2.5rem; }
section { background: white; border: 1px solid var(--borda); border-radius: 10px; padding: 1.25rem; margin-bottom: 1rem; }
h2 { color: var(--azul); margin: 0 0 .65rem; font-size: 1.25rem; }
.aviso { border-left: 5px solid #b7791f; }
.aviso p { margin-bottom: 0; }
.nome-prova { font-weight: 650; color: var(--azul2); }
.estado { background: #edf5f8; padding: .65rem .8rem; border-radius: 6px; }
.tabela-wrap { overflow-x: auto; }
table { width: 100%; border-collapse: collapse; margin-top: .75rem; }
th, td { text-align: left; padding: .8rem; border-bottom: 1px solid var(--borda); }
th { background: #eaf0f4; color: var(--azul); }
tbody tr:last-child td { border-bottom: 0; }
footer { text-align: center; color: #52616b; font-size: .85rem; padding: 1rem; }
@media (max-width: 600px) { section { padding: 1rem; } th, td { padding: .65rem .5rem; } }
