/* i2X — Complianz cookie banner restyle (compact bottom card, equal-weight Accept / Decline).
   Loaded on every page. Uses the --i2x-* tokens; hex fallbacks keep it safe if brand.css is absent. */

.cmplz-cookiebanner.cmplz-cookiebanner {
  left: 50% !important; right: auto !important; top: auto !important; bottom: 20px !important;
  transform: translateX(-50%);
  width: min(620px, calc(100vw - 32px)) !important; max-width: none !important;
  margin: 0 !important; padding: 18px 20px !important;
  background: var(--i2x-bg, #fff) !important;
  border: 1px solid var(--i2x-border, #E4E7F0) !important;
  border-radius: 14px !important;
  box-shadow: 0 24px 60px -20px rgba(33, 43, 85, 0.35) !important;
  font-family: Inter, system-ui, sans-serif !important;
  color: var(--i2x-fg-2, #3A4565) !important;
  grid-template-columns: 1fr !important;
}
.cmplz-cookiebanner .cmplz-header,
.cmplz-cookiebanner .cmplz-divider { display: none !important; }

.cmplz-cookiebanner .cmplz-body { padding: 0 !important; }
.cmplz-cookiebanner .cmplz-message {
  font-size: 14px !important; line-height: 1.55 !important; color: var(--i2x-fg-2, #3A4565) !important; margin: 0 0 14px !important;
}
.cmplz-cookiebanner .cmplz-message a { color: var(--i2x-blue, #3A4A9A) !important; text-decoration: underline; }

/* Preferences panel (opens inside the card) */
.cmplz-cookiebanner .cmplz-category { padding: 10px 0; border-top: 1px solid var(--i2x-border, #E4E7F0); font-size: 14px; }
.cmplz-cookiebanner .cmplz-category-title { font-weight: 600; color: var(--i2x-navy, #212B55); }
.cmplz-cookiebanner .cmplz-description { font-size: 13px; line-height: 1.55; color: var(--i2x-fg-3, #6B7596); }

/* Buttons: pill shape, Accept and Decline carry the same size and weight. */
.cmplz-cookiebanner .cmplz-buttons { display: flex !important; flex-wrap: wrap; gap: 10px; justify-content: flex-end; align-items: center; padding: 0 !important; margin: 0 !important; }
.cmplz-cookiebanner .cmplz-btn {
  font: 600 14px/1 Inter, system-ui, sans-serif !important;
  padding: 11px 20px !important; border-radius: 999px !important;
  min-width: 0 !important; width: auto !important; flex: 0 0 auto !important; cursor: pointer;
  transition: background 200ms, border-color 200ms, transform 200ms;
}
.cmplz-cookiebanner .cmplz-btn.cmplz-accept {
  background: var(--i2x-navy, #212B55) !important; color: #fff !important; border: 1px solid var(--i2x-navy, #212B55) !important;
}
.cmplz-cookiebanner .cmplz-btn.cmplz-accept:hover { background: var(--i2x-blue, #3A4A9A) !important; border-color: var(--i2x-blue, #3A4A9A) !important; transform: translateY(-1px); }
.cmplz-cookiebanner .cmplz-btn.cmplz-deny,
.cmplz-cookiebanner .cmplz-btn.cmplz-save-preferences {
  background: transparent !important; color: var(--i2x-navy, #212B55) !important; border: 1px solid var(--i2x-border-strong, #C4C8D8) !important;
}
.cmplz-cookiebanner .cmplz-btn.cmplz-deny:hover,
.cmplz-cookiebanner .cmplz-btn.cmplz-save-preferences:hover { background: var(--i2x-blue-50, #F2F4FB) !important; border-color: var(--i2x-blue, #3A4A9A) !important; }
.cmplz-cookiebanner .cmplz-btn.cmplz-view-preferences {
  background: transparent !important; color: var(--i2x-navy, #212B55) !important; border: 1px solid var(--i2x-border-strong, #C4C8D8) !important;
}
.cmplz-cookiebanner .cmplz-btn.cmplz-view-preferences:hover { background: var(--i2x-blue-50, #F2F4FB) !important; border-color: var(--i2x-blue, #3A4A9A) !important; }
.cmplz-cookiebanner .cmplz-btn:focus-visible { outline: 2px solid var(--i2x-blue, #3A4A9A); outline-offset: 2px; }

/* Keep the close (X) out of the way of the message */
.cmplz-cookiebanner .cmplz-close { display: none !important; }

@media (max-width: 520px) {
  .cmplz-cookiebanner.cmplz-cookiebanner { bottom: 12px !important; padding: 16px !important; }
  .cmplz-cookiebanner .cmplz-buttons { justify-content: stretch; }
  .cmplz-cookiebanner .cmplz-btn.cmplz-accept,
  .cmplz-cookiebanner .cmplz-btn.cmplz-deny,
  .cmplz-cookiebanner .cmplz-btn.cmplz-view-preferences { flex: 1 1 0 !important; text-align: center; padding-left: 10px !important; padding-right: 10px !important; }
}

/* Compact layout: message uses the full card width, the extra links row is dropped (links are inside the message),
   and the card can never be taller than the window (scrolls instead of being cut off). */
.cmplz-cookiebanner.cmplz-cookiebanner { max-height: calc(100vh - 24px) !important; overflow-y: auto !important; }
.cmplz-cookiebanner .cmplz-body, .cmplz-cookiebanner .cmplz-message { max-width: none !important; width: 100% !important; }
.cmplz-cookiebanner .cmplz-links { display: none !important; }
.cmplz-cookiebanner .cmplz-message a { font-weight: 600; }
