/* Cookie consent banner (shared/consent.js). A site sets the --consent-* variables to match its brand. */
.consent {
  --c-accent: var(--consent-accent, #1B2A4A);
  --c-accent-hover: var(--consent-accent-hover, #22355C);
  --c-ink: var(--consent-ink, #1A1A2E);
  --c-body: var(--consent-body, #4A4A5A);
  --c-line: var(--consent-line, #E2E5EA);
  --c-wash: var(--consent-wash, #F7F8FA);
  position: fixed; z-index: 1000; right: 24px; bottom: 24px; width: min(440px, calc(100vw - 32px));
  background: #FFFFFF; color: var(--c-body); border: 1px solid var(--c-line); border-radius: 16px;
  padding: 22px 22px 20px; box-shadow: 0 24px 60px -20px rgba(27,42,74,.45);
  font-family: inherit; font-size: 14px; line-height: 1.6; text-align: left;
}
.consent[hidden] { display: none; }
.consent p { margin: 0 0 16px; }
.consent a { color: var(--c-accent); }
.consent__title { font-size: 16px; font-weight: 700; color: var(--c-ink); margin-bottom: 8px !important; }
.consent__actions { display: flex; gap: 10px; }
.consent__btn { font: inherit; font-weight: 600; font-size: 14px; padding: 11px 20px; border-radius: 10px; cursor: pointer; border: 1px solid transparent; }
.consent__btn--yes { background: var(--c-accent); color: #FFFFFF; }
.consent__btn--yes:hover { background: var(--c-accent-hover); }
.consent__btn--no { background: var(--c-wash); color: var(--c-ink); border-color: var(--c-line); }
.consent__btn--no:hover { filter: brightness(.97); }
.consent__btn:focus-visible { outline: 3px solid var(--c-accent); outline-offset: 2px; }
@media (max-width: 640px) {
  .consent { right: 16px; bottom: 16px; }
  .consent__btn { flex: 1; }
}
