:root {
  --vnhawc-consent-green: #316b58;
  --vnhawc-consent-green-hover: #285849;
  --vnhawc-consent-text: #343e49;
  --vnhawc-consent-border: #d8e2de;
  --vnhawc-consent-surface: #ffffff;
}

.vnhawc-footer-privacy-control {
  appearance: none;
  background: transparent;
  border: 0;
  color: #ffffff;
  display: block;
  font: inherit;
  margin: 0.65rem auto 0;
  padding: 0.2rem 0.4rem;
  text-decoration: underline;
  text-underline-offset: 0.18em;
}

.vnhawc-footer-privacy-control:hover,
.vnhawc-footer-privacy-control:focus-visible {
  color: #ffffff;
  text-decoration-thickness: 0.12em;
}

.vnhawc-footer-privacy-control:focus-visible {
  outline: 3px solid #ffffff;
  outline-offset: 3px;
}

.cmplz-cookiebanner .cmplz-btn:focus-visible,
.cmplz-cookiebanner .cmplz-category-toggle:focus-visible,
.cmplz-cookiebanner .cmplz-close:focus-visible {
  box-shadow: 0 0 0 2px #ffffff !important;
  outline: 3px solid var(--vnhawc-consent-green-hover) !important;
  outline-offset: 3px !important;
}

.cmplz-cookiebanner {
  color: var(--vnhawc-consent-text) !important;
  font-family: Lato, Arial, sans-serif !important;
}

.cmplz-cookiebanner .cmplz-title {
  color: var(--vnhawc-consent-green) !important;
  font-size: 1.15rem !important;
  font-weight: 700 !important;
}

.cmplz-cookiebanner .cmplz-message,
.cmplz-cookiebanner .cmplz-category-title,
.cmplz-cookiebanner .cmplz-description {
  color: var(--vnhawc-consent-text) !important;
  font-size: 1rem !important;
  line-height: 1.55 !important;
}

.cmplz-cookiebanner .cmplz-buttons .cmplz-btn {
  font-size: 1rem !important;
  font-weight: 700 !important;
  min-height: 48px !important;
  white-space: normal !important;
}

.cmplz-cookiebanner .cmplz-buttons .cmplz-btn.cmplz-accept,
.cmplz-cookiebanner .cmplz-buttons .cmplz-btn.cmplz-deny {
  background: var(--vnhawc-consent-green) !important;
  border-color: var(--vnhawc-consent-green) !important;
  color: #ffffff !important;
}

.cmplz-cookiebanner .cmplz-buttons .cmplz-btn.cmplz-accept:hover,
.cmplz-cookiebanner .cmplz-buttons .cmplz-btn.cmplz-accept:focus-visible,
.cmplz-cookiebanner .cmplz-buttons .cmplz-btn.cmplz-deny:hover,
.cmplz-cookiebanner .cmplz-buttons .cmplz-btn.cmplz-deny:focus-visible {
  background: var(--vnhawc-consent-green-hover) !important;
  border-color: var(--vnhawc-consent-green-hover) !important;
}

.cmplz-cookiebanner .cmplz-buttons .cmplz-btn.cmplz-view-preferences,
.cmplz-cookiebanner .cmplz-buttons .cmplz-btn.cmplz-save-preferences {
  background: var(--vnhawc-consent-surface) !important;
  border-color: var(--vnhawc-consent-green) !important;
  color: var(--vnhawc-consent-green) !important;
}

.cmplz-cookiebanner .cmplz-category {
  border: 1px solid var(--vnhawc-consent-border) !important;
}

@media (max-width: 575.98px) {
  .cmplz-cookiebanner .cmplz-buttons {
    flex-direction: column;
  }
}

@media (prefers-reduced-motion: reduce) {
  .cmplz-cookiebanner,
  .cmplz-cookiebanner *,
  #cmplz-manage-consent .cmplz-manage-consent {
    animation: none !important;
    scroll-behavior: auto !important;
    transition: none !important;
  }
}
