/* ============================================================
   GREEN INTEGRATIONS — Complianz cookie banner, Option C "Beacon"
   Full-width bottom strip. CSS-only override; the Complianz
   position setting (bottom-right) and all plugin settings stay
   as-is. Enqueued site-wide by includes/complianz-banner-css.php.

   Cascade context this sheet must win against (v1.79.0 audit):
   1. The generated banner stylesheet
      (uploads/complianz/css/banner-1-optout.css) — mostly plain
      .cmplz-* class selectors; our #cmplz-cookiebanner-container
      prefix out-specifies those without !important.
   2. The OLD white-card theme, which still ships INSIDE that
      generated file on production (saved in the Complianz banner
      custom_css DB field) and in staging's Customizer Additional
      CSS. It sets most properties with !important, so every
      property it contests carries !important here too — our
      higher specificity then wins regardless of load order.
   Remove those two remnants after sign-off and the !importants
   become harmless belt-and-braces.
   ============================================================ */

/* Complianz dismisses the banner by adding .cmplz-dismissed, but its
   class-only rule loses to our ID-prefixed display:flex below — restate
   the dismissal at higher specificity or Accept/close leaves the strip
   on screen (caught in the v1.79.2 prod verification). */
#cmplz-cookiebanner-container .cmplz-cookiebanner.cmplz-dismissed { display: none !important; }

#cmplz-cookiebanner-container .cmplz-cookiebanner {
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  top: auto !important;
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  display: flex;
  align-items: center;
  gap: 20px;
  padding: 14px 24px !important;
  background: #0F1B25 !important;
  border: 0 !important;
  border-top: 1px solid rgba(255, 255, 255, 0.09) !important;
  border-radius: 0 !important;
  box-shadow: 0 -16px 40px rgba(3, 9, 14, 0.4) !important;
  color: #F2F5F6 !important;
  font-family: inherit !important;
}

/* flatten the wrappers so everything sits on one row
   (.cmplz-header/.cmplz-buttons need !important: the old theme
   forces display:flex !important on them; the document links are
   nested .cmplz-links > ul > li > a, so the ul/li flatten too) */
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-header,
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-body,
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-buttons,
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-links.cmplz-documents,
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-links.cmplz-documents ul,
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-links.cmplz-documents li { display: contents !important; }
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-logo,
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-divider { display: none !important; }

#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-title {
  order: 1;
  display: block;
  flex: 0 0 auto;
  padding: 5px 10px;
  font-family: ui-monospace, 'SF Mono', 'Cascadia Mono', Consolas, monospace;
  font-size: 10px !important;
  font-weight: 600 !important;
  line-height: 1.4 !important;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #E9A13B !important;
  border: 1px solid rgba(233, 161, 59, 0.4);
  border-radius: 4px;
  white-space: nowrap;
}
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-message {
  order: 2;
  flex: 1;
  min-width: 0;
  width: auto;
  margin: 0;
  font-size: 12.5px !important;
  line-height: 1.5 !important;
  color: #A7B6BF !important;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-message a { color: #C9D4DA !important; }
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-links .cmplz-link {
  order: 3;
  color: #7E909B !important;
  font-size: 12px;
  white-space: nowrap;
  text-decoration: none;
  border-bottom: 1px solid rgba(126, 144, 155, 0.35);
  transition: color 0.15s ease, border-color 0.15s ease;
}
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-links .cmplz-link:hover { color: #C9D4DA !important; border-bottom-color: currentColor; }
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-btn.cmplz-accept {
  order: 4;
  flex: 0 0 auto !important;
  width: auto !important;
  min-height: 0;
  padding: 10px 24px !important;
  background: #4E7D5F !important;
  border: 0 !important;
  border-radius: 7px !important;
  color: #FFFFFF !important;
  font-family: inherit !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  white-space: nowrap;
  cursor: pointer;
  transition: background 0.15s ease !important;
}
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-btn.cmplz-accept:hover { background: #426C51 !important; }
/* Deny / preference buttons are display:none via the current
   Complianz button template. If that template ever re-enables
   them, they join the strip as quiet outlined buttons instead of
   unstyled defaults. Their display is deliberately not touched. */
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-btn.cmplz-deny,
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-btn.cmplz-view-preferences,
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-btn.cmplz-save-preferences {
  order: 4;
  flex: 0 0 auto !important;
  width: auto !important;
  min-height: 0;
  padding: 10px 20px !important;
  background: transparent !important;
  border: 1px solid rgba(242, 245, 246, 0.25) !important;
  border-radius: 7px !important;
  color: #F2F5F6 !important;
  font-family: inherit !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  white-space: nowrap;
  cursor: pointer;
  transition: border-color 0.15s ease !important;
}
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-btn.cmplz-deny:hover,
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-btn.cmplz-view-preferences:hover,
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-btn.cmplz-save-preferences:hover { border-color: rgba(242, 245, 246, 0.55) !important; }
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-close {
  order: 5;
  line-height: 0;
  color: #7E909B !important;
  opacity: 1 !important;
  cursor: pointer;
  transition: color 0.15s ease;
}
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-close:hover { color: #F2F5F6 !important; }
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-close svg { width: 15px; height: 15px; }

#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-btn:focus-visible,
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-link:focus-visible,
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-close:focus-visible {
  outline: 2px solid #E9A13B !important;
  outline-offset: 2px !important;
  border-radius: 4px;
}

/* Persistent re-open tab ("Manage consent"), Beacon palette.
   Keeps Complianz's fixed positioning, 50px height / -35px
   slide-out peek and hover slide-in animation; only the skin
   changes. Hidden ≤768px by the generated sheet — unchanged. */
#cmplz-manage-consent .cmplz-manage-consent,
button.cmplz-manage-consent.manage-consent-1 {
  background: #0F1B25 !important;
  color: #A7B6BF !important;
  font-family: inherit !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  letter-spacing: 0.02em;
  padding: 12px 18px !important;
  border: 1px solid rgba(255, 255, 255, 0.09) !important;
  border-bottom: 0 !important;
  border-radius: 7px 7px 0 0 !important;
  box-shadow: 0 -8px 24px rgba(3, 9, 14, 0.35) !important;
  transition: background 0.15s ease, color 0.15s ease !important;
}
#cmplz-manage-consent .cmplz-manage-consent:hover,
#cmplz-manage-consent .cmplz-manage-consent:focus,
button.cmplz-manage-consent.manage-consent-1:hover {
  background: #16242F !important;
  color: #F2F5F6 !important;
}

@media (prefers-reduced-motion: no-preference) {
  #cmplz-cookiebanner-container .cmplz-cookiebanner { animation: cmplz-rise 0.35s cubic-bezier(0.2, 0.7, 0.3, 1) both; }
}
@keyframes cmplz-rise {
  from { opacity: 0; transform: translateY(14px); }
  to   { opacity: 1; transform: translateY(0); }
}

@media (max-width: 760px) {
  #cmplz-cookiebanner-container .cmplz-cookiebanner { flex-wrap: wrap; gap: 12px; padding: 14px 16px !important; }
  #cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-close { order: 2; margin-left: auto; }
  /* bar grows taller instead of truncating: no line clamp on mobile */
  #cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-message { order: 3; flex-basis: 100%; -webkit-line-clamp: unset; }
  #cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-links .cmplz-link { order: 4; align-self: center; }
  #cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-btn.cmplz-accept { order: 5; flex: 1 1 auto !important; margin-left: 8px; }
}
