/**
 * Pressidium Cookie Consent: consent box, preferences panel and floating
 * button, matched to the site template (dark green panels, brand-green
 * buttons, Trade Gothic, 2px corners like buttons.css).
 *
 * Colours come from the plugin's own settings (Settings -> Cookie Consent ->
 * Customization), which it prints as --cc-* variables; this file sets the
 * type, corners and spacing the plugin has no settings for.
 *
 * Plain CSS outside the Sass build; loaded on the front end by
 * AssetsServiceProvider.
 */

body.pressidium-cc-theme {
  --cc-font-family: "TradeGothicLT", "Helvetica Neue", Arial, sans-serif;
  --cc-font-size: 16px;
  --cc-border-radius: 4px;
  --cc-btn-border-radius: 2px;
  --cc-consent-modal-box-shadow: 0 16px 40px rgba(0, 0, 0, 0.35);
  --cc-overlay-opacity: 0.75;
}

/* Consent box */
#cc--main #cm {
  max-width: 26em;
  padding: 1.5em 1.5em 1.4em;
  border-top: 4px solid #00ce7c;
}

#cc--main #c-ttl,
#cc--main #s-ttl,
#cc--main .b-tl {
  font-family: "TradeGothicLT-Bold", "Helvetica Neue", Arial, sans-serif;
  font-weight: normal;
  letter-spacing: 0.01em;
}

#cc--main #c-ttl {
  margin-bottom: 0.6em;
  font-size: 1.25em;
}

#cc--main #c-txt,
#cc--main .p {
  font-size: 0.95em;
  line-height: 1.55;
}

#cc--main .cc-link {
  display: inline;
  margin: 0;
  padding: 0;
  background: none;
  line-height: inherit;
  border-bottom: 1px solid currentColor;
  color: #00ce7c;
  font-family: inherit;
  font-weight: normal;
}

#cc--main .cc-link:hover {
  color: #33e39a;
}

/* Buttons: same type and weight as the site buttons */
#cc--main .c-bn {
  line-height: 1.2;
  font-family: "TradeGothicLT-Bold", "Helvetica Neue", Arial, sans-serif;
  font-weight: normal;
  font-size: 0.95em;
  letter-spacing: 0.02em;
  transition: background-color 0.2s ease, color 0.2s ease;
}

/*
 * The theme's global button rule adds a top margin to every button; the
 * plugin's ".cc_div :hover" reset removes it on hover, so buttons and
 * category rows jumped under the cursor. No top margin, hovered or not.
 */
#cc--main button {
  margin-top: 0;
}

/* Stacked on phones: keep a small gap between them. */
@media (max-width: 688px) {
  #cc--main #s-bns .c-bn {
    padding-top: 0.8em;
    padding-bottom: 0.8em;
  }

  #cc--main #s-bns .c-bn + .c-bn {
    margin-top: 6px;
  }

  /* Stacked consent box buttons: keep the plugin's gap. */
  #cc--main #c-bns .c-bn + .c-bn {
    margin-top: 0.625em;
  }
}

/* Taller buttons in the consent box only: the preferences panel footer has a fixed height. */
#cc--main #cm .c-bn {
  padding: 1em 1.4em 0.9em;
}

#cc--main .c-bn:focus-visible,
#cc--main .cc-link:focus-visible,
#cc--main .b-tl:focus-visible {
  outline: 3px solid #00ce7c;
  outline-offset: 2px;
}

/* Preferences panel */
#cc--main #s-hdr {
  border-bottom-color: var(--cc-section-border);
}

#cc--main #s-ttl {
  font-size: 1.3em;
}

#cc--main .c-bl {
  border-radius: 4px;
}

#cc--main .b-tl {
  font-size: 1em;
}

@media (prefers-reduced-motion: reduce) {
  #cc--main .c-bn {
    transition: none;
  }
}
