/* Consent banner — inherits the theme's font and adapts to light/dark text colour. */
.ctk-banner {
  position: fixed; left: 16px; right: 16px; bottom: 16px; z-index: 99999;
  max-width: 560px; margin: 0 auto; padding: 16px 18px;
  display: flex; flex-wrap: wrap; align-items: center; gap: 12px 16px;
  font: inherit; font-size: 15px; line-height: 1.5; color: #1d1f24;
  background: #fff; border: 1px solid rgba(0, 0, 0, .12); border-radius: 12px;
  box-shadow: 0 10px 30px rgba(0, 0, 0, .14);
}
.ctk-banner[hidden] { display: none; }
.ctk-banner p { margin: 0; flex: 1 1 260px; }
.ctk-banner a { color: inherit; text-decoration: underline; }
.ctk-banner__actions { display: flex; gap: 8px; margin-left: auto; }
.ctk-btn {
  font: inherit; font-weight: 600; font-size: 14px; cursor: pointer;
  padding: 9px 18px; border-radius: 8px; border: 1px solid #1d1f24;
  background: #1d1f24; color: #fff;
}
.ctk-btn--ghost { background: transparent; color: #1d1f24; }
.ctk-btn:focus-visible { outline: 2px solid currentColor; outline-offset: 2px; }
@media (prefers-color-scheme: dark) {
  .ctk-banner { background: #1d1f24; color: #f2f2f2; border-color: rgba(255, 255, 255, .15); }
  .ctk-btn { background: #f2f2f2; color: #1d1f24; border-color: #f2f2f2; }
  .ctk-btn--ghost { background: transparent; color: #f2f2f2; }
}
