/* WIREFRAME ONLY: layout and structure, no real styling yet */
body { font-family: Bahnschrift, "Segoe UI", system-ui, sans-serif; line-height: 1.5; margin: 0; }
header, main, footer { max-width: 60rem; margin: 0 auto; padding: 1rem; }
header { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 1rem; border-bottom: 1px solid #999; }
nav { display: flex; flex-wrap: wrap; gap: 1rem; }
.wordmark { margin: 0; font-weight: bold; font-size: 1.25rem; }
section { padding: 2rem 0; border-bottom: 1px dashed #bbb; }
section > :not(table):not(.placeholder) { max-width: 65ch; }
.button { display: inline-block; padding: 0.5rem 1rem; border: 2px solid currentColor; text-decoration: none; }
.placeholder { margin-top: 1rem; padding: 2rem 1rem; border: 2px dashed #999; color: #555; }
.ledger { border-collapse: collapse; margin-top: 1rem; }
.ledger caption { text-align: left; padding-bottom: 0.5rem; }
.ledger th, .ledger td { border: 1px solid #999; padding: 0.4rem 0.8rem; text-align: left; }
footer { border-top: 1px solid #999; }
.skip { position: absolute; left: -999px; }
.skip:focus { left: 0; background: #fff; padding: 0.5rem; }

/* Consent notice: small, bottom-left, does not block the page */
[hidden] { display: none !important; }
.linklike { background: none; border: 0; padding: 0; font: inherit; color: inherit; text-decoration: underline; cursor: pointer; }
.consent { position: fixed; left: 1rem; bottom: 1rem; z-index: 10; max-width: 22rem; padding: 1rem; background: #fff; border: 2px solid #333; font-size: 0.9rem; }
.consent p { margin: 0 0 0.5rem; }
.consent-actions { display: flex; flex-wrap: wrap; gap: 0.5rem; }
.consent-actions { align-items: center; }
.consent-actions button { font: inherit; padding: 0.4rem 0.8rem; border: 2px solid #000; background: #fff; color: #000; cursor: pointer; }
.consent-actions button[data-consent-choice="accepted"] { background: #000; color: #fff; }
.consent-more { color: inherit; text-decoration: underline; padding: 0.4rem 0.2rem; }
.consent-actions :focus-visible { outline: 2px solid #000; outline-offset: 2px; }
@media (max-width: 30rem) { .consent { left: 0; right: 0; bottom: 0; max-width: none; border-width: 2px 0 0; } }
