:root { --ink: #1d2330; --muted: #5b6475; --line: #dde2ea; --accent: #0b5cad; }
* { box-sizing: border-box; }
body { margin: 0; background: #fff; color: var(--ink); font: 17px/1.55 system-ui, -apple-system, "Segoe UI", Roboto, sans-serif; }
main { max-width: 560px; margin: 0 auto; padding: 24px 20px 48px; }
.banner { background: #fde68a; color: #4a3500; text-align: center; padding: 6px 12px; font-weight: 600; font-size: .9rem; }
.brand { color: var(--accent); font-weight: 700; letter-spacing: .02em; margin-bottom: 12px; }
h1 { font-size: 1.5rem; line-height: 1.25; margin: 0 0 16px; }
.contact { margin-top: 40px; padding-top: 16px; border-top: 1px solid var(--line); color: var(--muted); font-size: .92rem; }
.contact a { color: var(--accent); }
.errorref-label { margin-bottom: 4px; color: var(--muted); }
.errorref { font: 700 1.8rem/1.2 ui-monospace, Consolas, monospace; letter-spacing: .08em; margin: 0; }
button, .button { display: inline-block; font: inherit; font-weight: 600; background: var(--accent); color: #fff; border: 0; border-radius: 8px; padding: 12px 22px; cursor: pointer; }
button[disabled] { opacity: .6; cursor: progress; }
.summary { display: grid; grid-template-columns: max-content 1fr; gap: 6px 16px; margin: 0 0 24px; }
.summary dt { color: var(--muted); }
.summary dd { margin: 0; font-weight: 600; }
.summary .amount { font-size: 1.25rem; }
.note { color: var(--muted); font-size: .92rem; margin-top: 20px; }
.cards { color: var(--muted); font-size: .85rem; }
a.button { text-decoration: none; }
.lead { font-size: 1.1rem; }
