/* CookieYes visual integration: consent controls remain provided by CookieYes. */
.cky-consent-container {
	width: min(480px, calc(100% - 48px)) !important;
	left: 24px !important;
	bottom: 24px !important;
}

/* A click on a category header (e.g. "Niezbędne") to expand/collapse it can
   catch its label text as a drag-selection, leaving a solid highlight box
   behind the word instead of the intended toggle interaction. This is chrome,
   not content, so it isn't meant to be selectable. */
.cky-consent-container,
.cky-modal {
	user-select: none !important;
}

.cky-consent-container ::selection,
.cky-modal ::selection {
	background: transparent !important;
	color: inherit !important;
}

/* The actual cause of the navy box behind a category label on hover: these
   are bare <button> elements CookieYes never gives their own hover style, so
   Elementor's global kit rule (`.elementor-kit-19 button:hover` — a solid
   navy fill + white text meant for real CTA buttons) wins by specificity and
   paints them navy exactly to the width of their text. The three big
   accept/reject/save buttons happen to already be navy-with-white-text at
   rest, so the same intrusion is invisible there — this is the only place it
   actually shows. */
.cky-consent-container .cky-accordion-btn:hover,
.cky-consent-container .cky-accordion-btn:focus,
.cky-modal .cky-accordion-btn:hover,
.cky-modal .cky-accordion-btn:focus,
.cky-consent-container .cky-btn-close:hover,
.cky-consent-container .cky-btn-close:focus,
.cky-modal .cky-btn-close:hover,
.cky-modal .cky-btn-close:focus {
	background: transparent !important;
	border-color: transparent !important;
	color: #212121 !important;
}

.cky-consent-container .cky-consent-bar {
	padding: 24px !important;
	border: 1px solid #d7e0ea !important;
	border-radius: 4px !important;
	box-shadow: 0 14px 38px rgba(9, 36, 75, 0.16) !important;
}

.cky-notice .cky-title {
	margin-bottom: 10px !important;
	font-size: 18px !important;
	line-height: 1.3 !important;
	letter-spacing: 0 !important;
}

.cky-notice-group {
	display: block !important;
}

.cky-notice-des,
.cky-notice-des * {
	font-size: 14px !important;
	line-height: 1.55 !important;
}

.cky-notice-btn-wrapper {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	grid-template-rows: repeat(2, 48px) !important;
	align-items: stretch !important;
	gap: 8px !important;
	margin: 20px 0 0 !important;
}

.cky-notice-btn-wrapper .cky-btn {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	box-sizing: border-box !important;
	width: 100% !important;
	height: 100% !important;
	min-height: 0 !important;
	align-self: stretch !important;
	margin: 0 !important;
	padding: 8px 10px !important;
	border-radius: 1px !important;
	font-size: 13px !important;
	line-height: 1.2 !important;
	white-space: normal !important;
}

.cky-notice-btn-wrapper .cky-btn-customize {
	color: #09244b !important;
	border-color: #09244b !important;
	background: #ffffff !important;
}

.cky-notice-btn-wrapper .cky-btn-reject {
	color: #09244b !important;
	border-color: #09244b !important;
	background: #eef3f8 !important;
}

.cky-notice-btn-wrapper .cky-btn-accept {
	grid-column: 1 / -1 !important;
	grid-row: 1 !important;
	border-color: #09244b !important;
	background: #09244b !important;
}

.cky-notice-btn-wrapper .cky-btn-customize {
	grid-column: 1 !important;
	grid-row: 2 !important;
}

.cky-notice-btn-wrapper .cky-btn-reject {
	grid-column: 2 !important;
	grid-row: 2 !important;
}

.cky-btn-revisit-wrapper {
	width: 42px !important;
	height: 42px !important;
	background: #09244b !important;
	box-shadow: 0 5px 16px rgba(9, 36, 75, 0.22) !important;
	border-radius: 50% !important;
	overflow: hidden !important;
}

/* The theme reset and Elementor's global kit both target bare `button`
   elements (padding, border-radius) with enough specificity to beat
   CookieYes's own styling, so the inner button drifts from the round
   wrapper it sits in — same failure as the header search toggle. */
.cky-btn-revisit-wrapper button {
	width: 100% !important;
	height: 100% !important;
	padding: 0 !important;
	appearance: none !important;
	border: none !important;
	border-radius: 50% !important;
	background: transparent !important;
}

@media (max-width: 600px) {
	.cky-consent-container {
		width: calc(100% - 32px) !important;
		left: 16px !important;
		bottom: 16px !important;
	}

	.cky-consent-container .cky-consent-bar {
		padding: 20px !important;
	}

	.cky-notice-btn-wrapper {
		grid-template-columns: 1fr !important;
		grid-template-rows: repeat(3, 48px) !important;
		gap: 8px !important;
	}

	.cky-notice-btn-wrapper .cky-btn {
		font-size: 14px !important;
	}

	.cky-notice-btn-wrapper .cky-btn-accept {
		grid-column: auto !important;
		grid-row: auto !important;
		order: 1 !important;
	}

	.cky-notice-btn-wrapper .cky-btn-reject {
		grid-column: auto !important;
		grid-row: auto !important;
		order: 2 !important;
	}

	.cky-notice-btn-wrapper .cky-btn-customize {
		grid-column: auto !important;
		grid-row: auto !important;
		order: 3 !important;
	}
}
