/* Klaro theme overrides — Code Symphony brand (self-hosted, no CDN) */

.klaro {
  --font-family: var(--font-body, 'Plus Jakarta Sans', sans-serif);
  --title-font-family: var(--font-display, 'Space Grotesk', sans-serif);
  --font-size: 0.9375rem;
  --border-radius: 8px;
  --border-width: 1px;
  --border-style: solid;

  --dark1: #07191e;
  --dark2: #1a3a44;
  --dark3: #94a3b8;
  --light1: #e2e8f0;
  --light2: #334155;
  --light3: #94a3b8;
  --white1: #e2e8f0;
  --white2: #0f2a32;
  --white3: #4ae8a0;

  --green1: #02f5a1;
  --green2: #4ae8a0;
  --green3: #02f5a1;
  --blue1: #38bdf8;
  --blue2: #38bdf8;

  /* Default button text (decline / neutral) — light for dark surfaces */
  --button-text-color: #e2e8f0;
}

.klaro .cookie-notice:not(.cookie-modal-notice),
.klaro .cookie-modal .cm-modal.cm-klaro,
.klaro .cookie-modal-notice {
  border: 1px solid rgba(2, 245, 161, 0.18);
  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.45);
}

/* Neutral / decline buttons — high contrast on dark UI */
.klaro .cookie-modal .cm-btn,
.klaro .cookie-notice .cm-btn,
.klaro .context-notice .cm-btn {
  color: #e2e8f0;
  background-color: #1a3a44;
  border: 1px solid rgba(226, 232, 240, 0.35);
  font-weight: 600;
}

.klaro .cookie-modal .cm-btn:hover,
.klaro .cookie-notice .cm-btn:hover,
.klaro .context-notice .cm-btn:hover {
  background-color: #243f4a;
  border-color: rgba(226, 232, 240, 0.55);
  color: #ffffff;
}

.klaro .cookie-modal .cm-btn.cm-btn-success,
.klaro .cookie-notice .cm-btn.cm-btn-success,
.klaro .context-notice .cm-btn.cm-btn-success {
  color: #07191e;
  background-color: #02f5a1;
  border-color: transparent;
  font-weight: 600;
}

.klaro .cookie-modal .cm-btn.cm-btn-success:hover,
.klaro .cookie-notice .cm-btn.cm-btn-success:hover,
.klaro .context-notice .cm-btn.cm-btn-success:hover {
  background-color: #4ae8a0;
  color: #07191e;
}

.klaro .cookie-modal .cm-btn.cm-btn-success-var,
.klaro .cookie-notice .cm-btn.cm-btn-success-var,
.klaro .context-notice .cm-btn.cm-btn-success-var {
  color: #07191e;
  background-color: #4ae8a0;
  border-color: transparent;
  font-weight: 600;
}

.klaro .cookie-modal .cm-btn.cm-btn-info,
.klaro .cookie-notice .cm-btn.cm-btn-info,
.klaro .context-notice .cm-btn.cm-btn-info {
  color: #07191e;
  background-color: #38bdf8;
  border-color: transparent;
  font-weight: 600;
}

.klaro .cookie-modal .cm-btn.cm-btn-info:hover,
.klaro .cookie-notice .cm-btn.cm-btn-info:hover,
.klaro .context-notice .cm-btn.cm-btn-info:hover {
  background-color: #7dd3fc;
  color: #07191e;
}

.klaro .cookie-modal a,
.klaro .cookie-notice a,
.klaro .context-notice a {
  color: #02f5a1;
  text-decoration: underline;
  text-underline-offset: 0.15em;
}

.klaro .cookie-modal a:hover,
.klaro .cookie-notice a:hover,
.klaro .context-notice a:hover {
  color: #4ae8a0;
}

.klaro .cookie-modal .cm-footer .cm-powered-by a,
.klaro .cookie-notice .cm-powered-by a {
  color: #94a3b8;
}

/* Footer control — opens Klaro modal */
.footer__link--cookie {
  appearance: none;
  background: none;
  border: 0;
  padding: 0;
  font: inherit;
  color: inherit;
  cursor: pointer;
  text-align: inherit;
}

.footer__link--cookie:hover,
.footer__link--cookie:focus-visible {
  color: var(--color-primary, #02f5a1);
  outline: none;
}
