/* ==========================================================================
   CookieYes banner – TCF colours and type.

   CookieYes writes its colours into inline style="" attributes from the
   plugin settings, so these rules use !important (which beats inline styles).
   They use the theme's colour variables, so the banner follows the colour
   scheme chosen in Customize → TCF Theme Settings.
   ========================================================================== */

/* Fonts */
.cky-consent-container,
.cky-modal,
.cky-consent-container *:not(i),
.cky-modal *:not(i) {
	font-family: "Raleway", sans-serif !important;
}

.cky-consent-container .cky-title,
.cky-modal .cky-preference-title {
	font-family: "Montserrat", serif !important;
	color: var(--tcf-ink, #1f2a24) !important;
}

/* Banner and preference centre panels */
.cky-consent-container .cky-consent-bar,
.cky-modal .cky-preference-center {
	border-color: rgba(106, 63, 108, 0.18) !important;
	border-radius: var(--tcf-radius, 0.5rem) !important;
	box-shadow: 0 1.25rem 3.5rem rgba(64, 37, 54, 0.18) !important;
}

.cky-consent-container .cky-consent-bar {
	border-top: 4px solid var(--tcf-primary, #5b3b60) !important;
}

/* All buttons: the site's button shape */
.cky-consent-container .cky-btn,
.cky-modal .cky-btn {
	border-radius: 0.2rem !important;
	border-width: 2px !important;
	border-style: solid !important;
	font-weight: 600 !important;
	letter-spacing: 0.04em !important;
	text-transform: uppercase !important;
	transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease !important;
	opacity: 1 !important;
}

/* Primary: Accept all */
.cky-consent-container .cky-btn-accept,
.cky-modal .cky-btn-accept {
	background-color: var(--tcf-primary-dark, #6a3f6c) !important;
	border-color: var(--tcf-primary-dark, #6a3f6c) !important;
	color: #fff !important;
}

.cky-consent-container .cky-btn-accept:hover,
.cky-consent-container .cky-btn-accept:focus-visible,
.cky-modal .cky-btn-accept:hover,
.cky-modal .cky-btn-accept:focus-visible {
	background-color: var(--tcf-primary, #5b3b60) !important;
	border-color: var(--tcf-primary, #5b3b60) !important;
	color: #fff !important;
}

/* Secondary: Reject all, Customise, Save my preferences */
.cky-consent-container .cky-btn-reject,
.cky-consent-container .cky-btn-customize,
.cky-modal .cky-btn-reject,
.cky-modal .cky-btn-customize,
.cky-modal .cky-btn-preferences {
	background-color: #fff !important;
	border-color: var(--tcf-primary-dark, #6a3f6c) !important;
	color: var(--tcf-primary-dark, #6a3f6c) !important;
}

.cky-consent-container .cky-btn-reject:hover,
.cky-consent-container .cky-btn-customize:hover,
.cky-consent-container .cky-btn-reject:focus-visible,
.cky-consent-container .cky-btn-customize:focus-visible,
.cky-modal .cky-btn-reject:hover,
.cky-modal .cky-btn-customize:hover,
.cky-modal .cky-btn-preferences:hover,
.cky-modal .cky-btn-reject:focus-visible,
.cky-modal .cky-btn-customize:focus-visible,
.cky-modal .cky-btn-preferences:focus-visible {
	background-color: rgba(106, 63, 108, 0.08) !important;
	border-color: var(--tcf-primary, #5b3b60) !important;
	color: var(--tcf-primary, #5b3b60) !important;
}

/* Keyboard focus ring */
.cky-consent-container .cky-btn:focus-visible,
.cky-modal .cky-btn:focus-visible,
.cky-btn-revisit-wrapper:focus-within {
	outline: 3px solid rgba(157, 94, 160, 0.45) !important;
	outline-offset: 2px !important;
}

/* Links in the banner text ("Cookie Policy", "Show more") */
.cky-consent-container .cky-notice-des a,
.cky-modal .cky-preference-content-wrapper a,
.cky-modal .cky-accordion-header-des a,
.cky-consent-container a:not(.cky-btn),
.cky-modal a:not(.cky-btn),
button.cky-show-desc-btn {
	color: var(--tcf-primary-dark, #6a3f6c) !important;
	font-weight: 700 !important;
	text-decoration: underline !important;
	text-underline-offset: 0.2em;
}

button.cky-show-desc-btn:hover,
.cky-consent-container a:not(.cky-btn):hover,
.cky-modal a:not(.cky-btn):hover {
	color: var(--tcf-primary, #5b3b60) !important;
}

/* Preference centre: category toggles and "Always active" */
.cky-modal .cky-switch input[type="checkbox"]:checked,
.cky-modal input[type="checkbox"].cky-switch:checked,
.cky-modal .cky-switch input:checked {
	background-color: var(--tcf-primary, #5b3b60) !important;
	border-color: var(--tcf-primary, #5b3b60) !important;
}

.cky-modal .cky-always-active,
span.cky-always-active {
	color: var(--tcf-primary, #5b3b60) !important;
	font-weight: 700 !important;
}

.cky-modal .cky-accordion-btn,
.cky-modal .cky-accordion-header .cky-accordion-btn {
	color: var(--tcf-ink, #1f2a24) !important;
	font-weight: 700 !important;
}

.cky-modal .cky-accordion-chevron i::before,
.cky-modal .cky-chevron-right {
	border-color: var(--tcf-primary, #5b3b60) !important;
}

/* Floating "revisit consent" cookie button */
.cky-btn-revisit-wrapper {
	background-color: var(--tcf-primary-dark, #6a3f6c) !important;
	box-shadow: 0 0.5rem 1.5rem rgba(64, 37, 54, 0.3) !important;
	transition: background-color 0.2s ease, transform 0.2s ease !important;
}

.cky-btn-revisit-wrapper:hover {
	background-color: var(--tcf-primary, #5b3b60) !important;
	transform: scale(1.06);
}

/* Tooltip shown next to the revisit button */
.cky-btn-revisit-wrapper .cky-revisit-hide,
.cky-btn-revisit-wrapper::before,
.cky-revisit-bottom-left::before,
.cky-revisit-bottom-right::before {
	background-color: var(--tcf-ink, #1f2a24) !important;
}

/* Placeholder CookieYes shows in place of blocked videos */
.cky-placeholder,
.video-placeholder-youtube,
.video-placeholder-normal {
	background-color: #f5eff3 !important;
	border: 1px solid rgba(106, 63, 108, 0.18) !important;
	border-radius: var(--tcf-radius, 0.5rem) !important;
}

.cky-placeholder p,
.video-placeholder-text-youtube,
.video-placeholder-text-normal {
	background-color: var(--tcf-primary-dark, #6a3f6c) !important;
	color: #fff !important;
	border-radius: 0.2rem !important;
	font-family: "Raleway", sans-serif !important;
	font-weight: 600 !important;
}

/* Footer "Cookie settings" link (theme) */
.footer-legal .tcf-cookie-settings-link {
	cursor: pointer;
}

/* Hide the floating cookie button inside LearnPress (lessons, profile,
   checkout), where it covers the course menu. Visitors can still change
   their choice from the "Cookie settings" link in the site footer. */
body.tcf-lms .cky-btn-revisit-wrapper {
	display: none !important;
}
