/* Cookie consent banner. Relies on the page tokens (--bg, --fg, --card, --border, --primary, --muted, --radius, --sans). */
.consent{position:fixed;left:0;right:0;bottom:0;z-index:50;padding:16px 20px calc(16px + env(safe-area-inset-bottom));pointer-events:none}
.consent-inner{pointer-events:auto;max-width:1120px;margin:0 auto;background:var(--card);color:var(--fg);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 24px 48px -24px rgba(0,0,0,.35);padding:18px 20px;display:grid;grid-template-columns:1fr auto;gap:14px 24px;align-items:center;font:14px/1.5 var(--sans)}
.consent-text h2{font-family:var(--display);font-weight:600;font-size:20px;margin:0 0 4px;line-height:1.1}
.consent-text p{margin:0;color:var(--muted)}
.consent-text a{color:var(--primary)}
.consent-settings{display:none;grid-column:1 / -1;border-top:1px solid var(--border);padding-top:12px;flex-direction:column;gap:8px}
.consent-open .consent-settings{display:flex}
.consent-opt{display:flex;gap:10px;align-items:flex-start;color:var(--muted)}
.consent-opt b{color:var(--fg)}
.consent-opt input{margin-top:3px;accent-color:var(--primary)}
.consent-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:flex-end}
.consent-btn{font:600 14px var(--sans);padding:10px 16px;border-radius:var(--radius);border:1.5px solid transparent;cursor:pointer;background:transparent;color:var(--primary)}
.consent-primary{background:var(--primary);color:var(--primary-fg,#fff)}
.consent-outline{border-color:var(--primary)}
.consent-link{text-decoration:underline;padding-inline:8px}
.consent-btn:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
@media (max-width:760px){.consent-inner{grid-template-columns:1fr}.consent-actions{justify-content:stretch}.consent-actions .consent-btn{flex:1 1 auto}}
