/* Analytics consent banner and the site footer line. Neutral colours that read in light and dark themes. */
#consent-banner {
  position: fixed; left: 16px; right: 16px; bottom: 16px; z-index: 2000;
  max-width: 640px; margin: 0 auto; padding: 16px;
  background: #1f2328; color: #f6f8fa; border-radius: 8px;
  box-shadow: 0 4px 16px rgba(0, 0, 0, .3); font-size: 14px; line-height: 1.5;
}
#consent-banner[hidden] { display: none; }
#consent-banner a { color: #9cd0ff; text-decoration: underline; }
#consent-banner .consent-actions { display: flex; gap: 8px; justify-content: flex-end; margin-top: 12px; flex-wrap: wrap; }
#consent-banner button {
  border: 1px solid #f6f8fa; border-radius: 4px; padding: 6px 14px; cursor: pointer; font: inherit;
  background: transparent; color: #f6f8fa;
}
#consent-banner button[data-consent="granted"] { background: #f6f8fa; color: #1f2328; }
.site-footer { padding: 24px 16px; text-align: center; font-size: 13px; opacity: .8; }
.site-footer a, .site-footer button { color: inherit; text-decoration: underline; }
.site-footer button { background: none; border: 0; padding: 0; font: inherit; cursor: pointer; }
.site-footer .sep { margin: 0 8px; }
