/* ============================================================================
   CookieConsent v3 — Catppuccin Theme Overrides
   Maps CC CSS custom properties to the existing Catppuccin palette variables.
   Automatically adapts to all flavors (Mocha, Macchiato, Frappe, Latte)
   via the [data-theme] attribute already in use on <html>.
   ============================================================================ */

#cc-main {
  --cc-font-family: 'Outfit', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  --cc-modal-border-radius: 12px;
  --cc-btn-border-radius: 8px;

  /* Core palette — mapped to Catppuccin CSS vars */
  --cc-bg: var(--ctp-base);
  --cc-primary-color: var(--ctp-text);
  --cc-secondary-color: var(--ctp-subtext0);

  /* Primary button — green accent */
  --cc-btn-primary-bg: var(--ctp-green);
  --cc-btn-primary-color: var(--ctp-crust);
  --cc-btn-primary-border-color: var(--ctp-green);
  --cc-btn-primary-hover-bg: var(--ctp-teal);
  --cc-btn-primary-hover-color: var(--ctp-crust);
  --cc-btn-primary-hover-border-color: var(--ctp-teal);

  /* Secondary button — surface tones */
  --cc-btn-secondary-bg: var(--ctp-surface0);
  --cc-btn-secondary-color: var(--ctp-text);
  --cc-btn-secondary-border-color: var(--ctp-surface1);
  --cc-btn-secondary-hover-bg: var(--ctp-surface1);
  --cc-btn-secondary-hover-color: var(--ctp-text);
  --cc-btn-secondary-hover-border-color: var(--ctp-surface2);

  /* Separator / borders */
  --cc-separator-border-color: var(--ctp-surface0);

  /* Toggle switches */
  --cc-toggle-on-bg: var(--ctp-green);
  --cc-toggle-off-bg: var(--ctp-surface2);
  --cc-toggle-on-knob-bg: var(--ctp-crust);
  --cc-toggle-off-knob-bg: var(--ctp-subtext0);
  --cc-toggle-readonly-bg: var(--ctp-surface1);
  --cc-toggle-readonly-knob-bg: var(--ctp-overlay0);

  /* Category blocks */
  --cc-cookie-category-block-bg: var(--ctp-mantle);
  --cc-cookie-category-block-border: var(--ctp-surface0);
  --cc-cookie-category-block-hover-bg: var(--ctp-surface0);
  --cc-cookie-category-block-hover-border: var(--ctp-surface1);
  --cc-cookie-category-expanded-block-bg: transparent;
  --cc-cookie-category-expanded-block-hover-bg: var(--ctp-surface0);

  /* Overlay */
  --cc-overlay-bg: rgba(var(--ctp-crust-rgb), 0.75);

  /* Footer */
  --cc-footer-bg: var(--ctp-mantle);
  --cc-footer-color: var(--ctp-subtext0);
  --cc-footer-border-color: var(--ctp-surface0);

  /* Link color */
  --cc-link-color: var(--ctp-green);
}

/* Latte (light theme) needs explicit overrides since CC defaults assume light */
[data-theme="latte"] #cc-main {
  --cc-toggle-on-knob-bg: #eff1f5;
  --cc-toggle-off-knob-bg: #9ca0b0;
}

/* Consent revoke trigger — fixed bottom-left button */
.cc-revoke-trigger {
  all: unset;
  position: fixed;
  bottom: 12px;
  left: 12px;
  z-index: 2147483646;
  background: var(--ctp-surface0);
  color: var(--ctp-subtext0);
  border: 1px solid var(--ctp-surface1);
  border-radius: 8px;
  padding: 6px 14px;
  font-family: 'Outfit', -apple-system, sans-serif;
  font-size: 12px;
  cursor: pointer;
  opacity: 0.7;
  transition: opacity 0.2s, background 0.2s;
}

.cc-revoke-trigger:hover {
  opacity: 1;
  background: var(--ctp-surface1);
}

/* Hide the revoke button while the consent modal is visible */
.show--consent .cc-revoke-trigger {
  display: none;
}
