/* Shiel ID CookieConsent theme */
:root {
  --shielid-cc-primary: #ff4a1a;
  --shielid-cc-primary-hover: #e63f14;
  --shielid-cc-bg: #111317;
  --shielid-cc-text: #f8f8f6;
  --shielid-cc-muted: rgba(248, 248, 246, .68);
  --shielid-cc-border: rgba(255, 255, 255, .14);
}

#cc-main {
  --cc-font-family: 'Sora', system-ui, sans-serif;
  --cc-modal-border-radius: 14px;
  --cc-btn-border-radius: 10px;
  --cc-btn-primary-bg: var(--shielid-cc-primary);
  --cc-btn-primary-hover-bg: var(--shielid-cc-primary-hover);
  --cc-btn-primary-color: #fff;
  --cc-btn-primary-hover-color: #fff;
  --cc-btn-secondary-bg: rgba(255, 255, 255, .12);
  --cc-btn-secondary-hover-bg: rgba(255, 255, 255, .2);
  --cc-btn-secondary-color: var(--shielid-cc-text);
  --cc-btn-secondary-hover-color: var(--shielid-cc-text);
  --cc-btn-secondary-border-color: rgba(255, 255, 255, .28);
  --cc-btn-secondary-hover-border-color: rgba(255, 255, 255, .52);
  --cc-bg: var(--shielid-cc-bg);
  --cc-primary-color: var(--shielid-cc-text);
  --cc-secondary-color: var(--shielid-cc-muted);
  --cc-separator-border-color: var(--shielid-cc-border);
  --cc-cookie-category-block-bg: #1a2128;
  --cc-cookie-category-block-hover-bg: #232d36;
  --cc-cookie-category-block-border: #43515e;
  --cc-cookie-category-block-hover-border: #657786;
  --cc-toggle-off-bg: #29343e;
  --cc-toggle-off-knob-bg: #aab8c4;
  --cc-toggle-off-knob-icon-color: #29343e;
  --cc-toggle-on-bg: var(--shielid-cc-primary);
  --cc-toggle-on-knob-bg: #fff;
  --cc-toggle-readonly-bg: var(--shielid-cc-primary);
  --cc-toggle-readonly-knob-bg: #fff;
  --cc-toggle-readonly-knob-icon-color: var(--shielid-cc-primary);
  --cc-modal-margin: 1rem;
}

#cc-main .cm {
  box-shadow: 0 24px 80px rgba(0, 0, 0, .35);
}

#cc-main .pm__section--toggle,
#cc-main .pm__section--toggle .pm__section-title,
#cc-main .pm__section--toggle .pm__section-desc-wrapper {
  border-radius: 10px;
}

#cc-main .pm__section--toggle .pm__section-title {
  transition: background-color .2s ease, border-color .2s ease, transform .2s ease;
}

#cc-main .pm__section--toggle .pm__section-title:hover { transform: translateY(-1px); }

#cc-main .pm__section--toggle.is-expanded .pm__section-title {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}

#cc-main .pm__section--toggle.is-expanded .pm__section-desc-wrapper {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

/* Smoothly reveal category details when a card expands. */
#cc-main .pm__section--toggle .pm__section-desc-wrapper {
  display: flex !important;
  max-height: 0;
  opacity: 0;
  overflow: hidden;
  border-color: transparent;
  transition: max-height .32s cubic-bezier(.22, 1, .36, 1), opacity .2s ease, border-color .2s ease;
}

#cc-main .pm__section--toggle.is-expanded .pm__section-desc-wrapper {
  max-height: 18rem;
  opacity: 1;
  border-color: var(--cc-cookie-category-block-border);
}

@keyframes shielid-cookie-card-in {
  from { opacity: 0; transform: translateY(8px); }
  to { opacity: 1; transform: translateY(0); }
}

#cc-main .pm__section--toggle { animation: shielid-cookie-card-in .35s ease both; }
#cc-main .pm__section--toggle:nth-child(3) { animation-delay: .05s; }
#cc-main .pm__section--toggle:nth-child(4) { animation-delay: .1s; }
#cc-main .pm__section--toggle:nth-child(5) { animation-delay: .15s; }

#cc-main .cm__btn,
#cc-main .pm__btn { border-radius: 999px; }

@media (prefers-reduced-motion: reduce) {
  #cc-main .pm__section--toggle { animation: none; }
  #cc-main .pm__section--toggle .pm__section-title {
    transition: none;
    transform: none;
  }
  #cc-main .pm__section--toggle .pm__section-desc-wrapper {
    transition: none;
  }
}

#cc-main .cm__title,
#cc-main .pm__title { letter-spacing: -.02em; }

#cc-main .cm__desc,
#cc-main .pm__section-desc { color: var(--shielid-cc-muted); }

#cc-main .cm__btn,
#cc-main .pm__btn { min-height: 44px; font-weight: 700; }

.cookie-preferences-link {
  color: rgba(255, 255, 255, .72) !important;
  cursor: pointer;
}

.cookie-preferences-link:hover,
.cookie-preferences-link:focus-visible { color: #fff !important; }

@media (max-width: 560px) {
  #cc-main .cm { padding: 1.25rem; }
  #cc-main .cm__btns { gap: .55rem; }
}
