/* The previous @import chain was replaced by individual wp_enqueue_style()
   calls in inc/enqueues.php so each CSS file gets its own cache-busting
   ?ver=<filemtime> query string. This file remains for sitewide rules
   (body bg/fg + reduced-motion overrides) and is enqueued last. */

body {
  background: var(--surface-base);
  color: var(--text-base);
  margin: 0;
  -webkit-font-smoothing: antialiased;
}

main { display: block; }

/* Honour the OS-level reduced-motion preference. We don't surface a separate
   panel toggle for this — the OS / browser setting is the single source of
   truth, which means assistive-tech users don't need to opt in twice. */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0ms !important;
    transition-duration: 0ms !important;
  }
}

/* ================================================================
   CookieAdmin consent banner + preferences modal.
   The plugin ships a generic bright-blue banner; these rules restyle
   it to the site — Lexend, the brand palette, rounded
   corners — using theme tokens so it tracks the reading-aid colour
   schemes. `!important` overrides the plugin's own CSS / admin-set
   values; selectors are scoped to the plugin's containers.
   ================================================================ */

/* Re-centre the banner along the bottom edge. The plugin's default
   bottom-left position sat on top of the ReachDeck launch button;
   centring clears both that and the bottom-right reading-aids FAB.
   (If the banner position is changed in CookieAdmin's settings, this
   block can be removed.) */
.cookieadmin_law_container.cookieadmin_box {
  left: 0 !important;
  right: 0 !important;
  margin-left: auto !important;
  margin-right: auto !important;
  bottom: 20px !important;
  width: min(460px, calc(100vw - 32px)) !important;
}

/* The visible card */
.cookieadmin_law_container .cookieadmin_consent_inside {
  width: 100% !important;
  box-sizing: border-box;
  background: var(--surface-card) !important;
  color: var(--text-card) !important;
  border: 1px solid var(--border-medium) !important;
  border-radius: 12px !important;
  padding: 22px 24px !important;
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.28) !important;
}

#cookieadmin_notice_title {
  font-family: var(--font-stack);
  font-size: 20px !important;
  font-weight: 700 !important;
  color: var(--text-card) !important;
  margin: 0 0 8px !important;
}

#cookieadmin_notice {
  font-family: var(--font-stack);
  font-size: 16px !important;
  line-height: 1.6 !important;
  color: var(--text-card) !important;
}

/* Button row — even gap, wraps on narrow widths */
.cookieadmin_law_container .cookieadmin_consent_btns {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  justify-content: flex-start !important;
  margin-top: 16px !important;
}

/* Shared button shape — mirrors the theme's .btn family. Covers both
   the banner buttons and the preferences-modal buttons. */
.cookieadmin_law_container .cookieadmin_btn,
.cookieadmin_cookie_modal .cookieadmin_btn {
  font-family: var(--font-stack) !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  border-radius: 8px !important;
  padding: 10px 18px !important;
  border: 1.5px solid transparent !important;
  cursor: pointer;
  transition: filter var(--motion-fast), background var(--motion-fast);
}

/* Accept / Save-preferences — filled deep brand blue. --ink-blue-deep is
   a fixed brand constant (never theme-switched), so white text clears
   WCAG AA on every reading-aid scheme. Orange stays reserved for the
   Nominate CTA. */
#cookieadmin_accept_button,
#cookieadmin_accept_modal_button,
#cookieadmin_prf_modal_button {
  background: var(--ink-blue-deep) !important;
  color: var(--always-light) !important;
  border-color: var(--ink-blue-deep) !important;
}

/* Reject — equal-size outlined button. Reject must be as easy to reach
   as Accept, so it gets equal visual weight, not a faded treatment. */
#cookieadmin_reject_button,
#cookieadmin_reject_modal_button {
  background: transparent !important;
  color: var(--ink-blue-deep) !important;
  border-color: var(--ink-blue-deep) !important;
}

/* Customize / preferences — the quieter third option on the banner */
#cookieadmin_customize_button {
  background: transparent !important;
  color: var(--text-card) !important;
  border-color: var(--border-strong) !important;
}

.cookieadmin_law_container .cookieadmin_btn:hover,
.cookieadmin_cookie_modal .cookieadmin_btn:hover {
  filter: brightness(1.08);
}
.cookieadmin_law_container .cookieadmin_btn:focus-visible,
.cookieadmin_cookie_modal .cookieadmin_btn:focus-visible {
  outline: 3px solid var(--ink-blue-deep) !important;
  outline-offset: 2px;
}

/* ----- Preferences modal shell ----- */
.cookieadmin_cookie_modal {
  border-radius: 12px !important;
  font-family: var(--font-stack) !important;
  background: var(--surface-card) !important;
  color: var(--text-card) !important;
}
/* Active preference toggles in the brand blue */
.cookieadmin_cookie_modal input:checked + .cookieadmin_slider {
  background-color: var(--ink-blue-deep) !important;
}
