:root { --navy:#14315B; --laranja:#F47A20; --cinza:#555; --fundo:#f5f6f8; }
* { box-sizing: border-box; }
body { margin:0; font-family: 'Segoe UI', Calibri, sans-serif; background:var(--fundo); color:#222; }
.topo { background:var(--navy); color:#fff; padding:12px 24px; display:flex;
        justify-content:space-between; align-items:center; flex-wrap:wrap; }
.topo .marca b { color:var(--laranja); }
.topo nav a { color:#fff; margin-left:18px; text-decoration:none; }
.topo nav a:hover { color:var(--laranja); }
main { max-width:960px; margin:24px auto; padding:0 16px; }
h1 { color:var(--navy); border-bottom:3px solid var(--laranja); padding-bottom:6px; }
h2 { color:var(--navy); margin-top:28px; }
table { width:100%; border-collapse:collapse; background:#fff; }
th { background:var(--navy); color:#fff; text-align:left; padding:8px; }
td { padding:8px; border-bottom:1px solid #e2e2e2; }
.form label { display:block; margin:10px 0 4px; font-weight:600; color:var(--navy); }
.form input, .form select, .form textarea { width:100%; padding:8px; border:1px solid #ccc; border-radius:6px; font-size:1rem; }
.form label.check { font-weight:400; } .form label.check input { width:auto; }
.busca { display:flex; gap:8px; margin:12px 0; } .busca input { flex:1; padding:8px; }
.linha { display:flex; gap:8px; align-items:center; } .linha input { flex:1; }
.linha .m2 { color:var(--laranja); white-space:nowrap; font-weight:600; }
button, .botao { background:var(--laranja); color:#fff; border:0; padding:10px 22px;
        border-radius:8px; font-size:1rem; cursor:pointer; text-decoration:none; display:inline-block; }
button:hover, .botao:hover { filter:brightness(0.92); }
button.cinza, .botao.cinza { background:var(--cinza); }
.grande { font-size:1.15rem; padding:14px 30px; }
.erro { background:#fde3e3; color:#8a1f1f; padding:8px 12px; border-radius:6px; }
.valorbox { background:#fff; border:2px solid var(--laranja); border-radius:10px;
        padding:16px 20px; text-align:center; }
.valorbox .valor { font-size:2.2rem; color:var(--laranja); font-weight:800; margin:4px 0; }
footer { text-align:center; color:var(--cinza); font-size:.8rem; padding:24px; }
