/*
 * Complianz banner and the manage-consent tab on the site's registers.
 * Complianz's banner script injects its stylesheet at runtime, after every theme stylesheet, so these rules
 * win by the containers' ids (#cmplz-cookiebanner-container, #cmplz-manage-consent), never by !important.
 * See docs/design-system.md (Plugin CSS), docs/keyboard.md (the cookie banner's keyboard) and docs/device-rounds.md.
 */

.cmplz-cookiebanner,
#cmplz-manage-consent .cmplz-manage-consent,
.cmplz-manage-consent-container {
  --cmplz_banner_background_color: var(--ck-surface);
  --cmplz_banner_border_width: 1px 0 0 0;
  --cmplz_banner_border_color: var(--ck-line);
  --cmplz_banner_border_radius: 0 0 0 0;
  --cmplz_text_color: var(--ck-ink);
  --cmplz_hyperlink_color: var(--ck-ink);
  --cmplz_button_accept_background_color: var(--ck-btn);
  --cmplz_button_accept_border_color: transparent;
  --cmplz_button_accept_text_color: var(--ck-white);
  --cmplz_button_deny_background_color: var(--ck-btn);
  --cmplz_button_deny_border_color: transparent;
  --cmplz_button_deny_text_color: var(--ck-white);
  --cmplz_button_settings_background_color: var(--ck-btn);
  --cmplz_button_settings_border_color: transparent;
  --cmplz_button_settings_text_color: var(--ck-white);
  --cmplz_button_border_radius: 0 0 0 0;
  --cmplz_slider_active_color: var(--ck-ink);
  --cmplz_slider_inactive_color: var(--ck-faint);
  --cmplz_slider_bullet_color: var(--ck-white);
  --cmplz_category_header_always_active_color: var(--ck-ink);
}

#cmplz-cookiebanner-container .cmplz-cookiebanner.cmplz-show {
  box-shadow: none;
  width: 100%;
  margin: 0;
  font-size: 11px;
}

#cmplz-cookiebanner-container .cmplz-buttons .cmplz-btn {
  background-color: var(--ck-btn);
  color: var(--ck-white);
  border: none;
  border-radius: 0;
  opacity: 1;
  text-transform: uppercase;
  letter-spacing: 1px;
  font-size: 12px;
  font-weight: 500;
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
  transition: all 0.1s ease;
}

#cmplz-cookiebanner-container .cmplz-buttons .cmplz-btn:hover {
  background-color: var(--ck-btn-hover);
  color: var(--ck-white);
}

#cmplz-cookiebanner-container .cmplz-categories .cmplz-category {
  background-color: var(--ck-white);
  border: none;
  border-radius: 0;
}

#cmplz-cookiebanner-container .cmplz-categories .cmplz-category .cmplz-category-title {
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

/* The plugin's focus ring is a literal blue (#245fcc) with no setting behind it: the site's ring instead. */
#cmplz-cookiebanner-container .cmplz-banner-checkbox input.cmplz-consent-checkbox:focus + .cmplz-label::before {
  box-shadow: none;
}

#cmplz-cookiebanner-container .cmplz-banner-checkbox input.cmplz-consent-checkbox:focus-visible + .cmplz-label::before {
  outline: 1px solid var(--ck-ink);
  outline-offset: 2px;
}

/* `body` lifts these over the plugin's own `#cmplz-manage-consent .cmplz-manage-consent`. */
body #cmplz-manage-consent .cmplz-manage-consent {
  background-color: var(--ck-btn-veil);
  color: var(--ck-white);
  border-radius: 0;
  opacity: 1;
  box-shadow: 0 10px 30px var(--ck-shadow);
  text-transform: uppercase;
  letter-spacing: 1px;
  font-size: 10px;
  font-weight: 400;
  -webkit-backdrop-filter: blur(18px);
  backdrop-filter: blur(18px);
  transition: all 0.1s ease;
}

body #cmplz-manage-consent .cmplz-manage-consent:hover,
body #cmplz-manage-consent .cmplz-manage-consent:active {
  background-color: var(--ck-btn-veil-hover);
  color: var(--ck-white);
}

.ck-cmplz-scrim {
  position: fixed;
  inset: 0;
  z-index: 99998;
  background: var(--ck-scrim);
  opacity: 0;
  transition: opacity 0.22s ease;
  pointer-events: auto;
}

.ck-cmplz-scrim.is-in {
  opacity: 1;
}

@media (prefers-reduced-motion: reduce) {
  .ck-cmplz-scrim {
    transition: none;
  }
}
