/* Cookie banner (/shared/consent.js) on every page. No colours of its own: it uses the page's --contact-* mapping
   (landings: their app tokens; home, legal, 404: src/home/tokens.css). Decline and Accept are equally prominent. */
.consent { position: fixed; left: 16px; right: 16px; bottom: calc(16px + env(safe-area-inset-bottom)); z-index: 60; max-width: 560px; margin: 0 auto;
  display: grid; gap: 12px; padding: 16px 18px; border-radius: var(--contact-radius); background: var(--contact-surface); color: var(--contact-text);
  box-shadow: var(--contact-shadow, none), 0 0 0 1px var(--contact-field-line); font-size: 14px; line-height: 1.5; }
.consent[hidden] { display: none; }
.consent p { margin: 0; color: var(--contact-sub); }
.consent__policy { color: var(--contact-text); text-underline-offset: 3px; }
.consent__actions { display: flex; gap: 8px; justify-content: flex-end; }
.consent__btn { min-width: 112px; min-height: 44px; padding: 0 18px; border: 1px solid var(--contact-text); border-radius: var(--contact-field-radius);
  background: none; color: var(--contact-text); font: inherit; font-weight: 600; cursor: pointer; }
.consent__btn--yes { background: var(--contact-text); color: var(--contact-surface); }
.consent__btn:focus-visible { outline: 2px solid var(--contact-focus); outline-offset: 2px; }
@media (max-width: 420px) { .consent__actions { justify-content: stretch; } .consent__btn { flex: 1; min-width: 0; } }
/* "Cookie settings" in footers: looks like the footer's links */
.foot-consent, .foot__consent { display: inline-flex; align-items: center; min-height: 44px; padding: 0; border: 0; background: none; font: inherit; color: inherit;
  text-decoration: underline; text-underline-offset: 3px; cursor: pointer; }
