/*------------------------------------------------------------------
[ Cookie consent — premium sol alt panel (web) / alt bar (mobil) ]
------------------------------------------------------------------*/
.cookie-consent-panel {
	position: fixed;
	left: max(20px, env(safe-area-inset-left));
	right: auto;
	bottom: max(20px, env(safe-area-inset-bottom));
	z-index: 12050;
	width: min(400px, calc(100vw - 40px));
	max-width: min(400px, calc(100vw - 40px));
	pointer-events: none;
	opacity: 0;
	transform: translateX(-14px) translateY(12px) scale(0.98);
	transition:
		opacity 0.4s cubic-bezier(0.22, 1, 0.36, 1),
		transform 0.4s cubic-bezier(0.22, 1, 0.36, 1);
}

.cookie-consent-panel.is-visible {
	opacity: 1;
	transform: translateX(0) translateY(0) scale(1);
	pointer-events: auto;
}

.cookie-consent-panel__surface {
	position: relative;
	overflow: hidden;
	border-radius: 20px;
	background:
		radial-gradient(120% 90% at 0% 0%,
			color-mix(in srgb, var(--primary-color, #717fe0) 16%, transparent) 0%,
			transparent 55%),
		linear-gradient(165deg, #ffffff 0%, #f8fafc 100%);
	border: 1.5px solid color-mix(in srgb, var(--primary-color, #717fe0) 28%, #e2e8f0);
	box-shadow:
		0 1px 0 rgba(255, 255, 255, 0.95) inset,
		0 24px 48px -18px rgba(15, 23, 42, 0.22),
		0 10px 20px -12px color-mix(in srgb, var(--primary-color, #717fe0) 28%, transparent);
}

.cookie-consent-panel__accent {
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 5px;
	background: linear-gradient(
		180deg,
		color-mix(in srgb, var(--primary-color, #717fe0) 92%, #fff) 0%,
		var(--primary-color, #717fe0) 45%,
		color-mix(in srgb, var(--primary-color, #717fe0) 55%, #0f172a) 100%
	);
	box-shadow: 2px 0 12px color-mix(in srgb, var(--primary-color, #717fe0) 35%, transparent);
}

.cookie-consent-panel__body {
	display: flex;
	gap: 0.9rem;
	align-items: flex-start;
	padding: 1.2rem 1.2rem 0.85rem 1.4rem;
}

.cookie-consent-panel__icon {
	flex-shrink: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 2.75rem;
	height: 2.75rem;
	border-radius: 14px;
	font-size: 1.25rem;
	line-height: 1;
	color: var(--primary-ink, #0f172a);
	background:
		linear-gradient(
			145deg,
			color-mix(in srgb, var(--primary-color, #717fe0) 42%, #fff) 0%,
			color-mix(in srgb, var(--primary-color, #717fe0) 16%, #fff) 100%
		);
	border: 1px solid color-mix(in srgb, var(--primary-color, #717fe0) 38%, #e2e8f0);
	box-shadow:
		0 2px 8px color-mix(in srgb, var(--primary-color, #717fe0) 22%, transparent),
		inset 0 1px 0 rgba(255, 255, 255, 0.65);
}

.cookie-consent-panel__text {
	min-width: 0;
	flex: 1 1 auto;
}

.cookie-consent-panel__title {
	margin: 0 0 0.35rem;
	font-family: var(--main-font, Poppins-Medium), sans-serif;
	font-size: 1.05rem;
	font-weight: 800;
	letter-spacing: -0.025em;
	line-height: 1.25;
	color: #0f172a;
}

.cookie-consent-panel__message {
	margin: 0;
	font-family: var(--main-font, Poppins-Regular), sans-serif;
	font-size: 0.8125rem;
	line-height: 1.55;
	color: #475569;
}

.cookie-consent-panel__actions {
	display: flex;
	justify-content: stretch;
	padding: 0 1.2rem 1.2rem 1.4rem;
}

.cookie-consent-panel__btn {
	font-family: var(--main-font, Poppins-Medium), sans-serif;
	font-size: 0.875rem;
	font-weight: 800;
	letter-spacing: -0.01em;
	border-radius: 999px;
	padding: 0.78rem 1.35rem;
	border: none;
	cursor: pointer;
	width: 100%;
	min-height: 2.75rem;
	transition:
		filter 0.2s ease,
		box-shadow 0.2s ease,
		transform 0.15s ease,
		background 0.2s ease;
}

.cookie-consent-panel__btn:active {
	transform: scale(0.985);
}

.cookie-consent-panel__btn--primary {
	background:
		linear-gradient(
			180deg,
			color-mix(in srgb, var(--primary-color, #717fe0) 88%, #fff) 0%,
			var(--primary-color, #717fe0) 100%
		);
	color: var(--on-primary, #0f172a) !important;
	border: none;
	box-shadow:
		0 1px 0 rgba(255, 255, 255, 0.45) inset,
		0 10px 22px -8px color-mix(in srgb, var(--primary-color, #717fe0) 55%, transparent);
}

.cookie-consent-panel__btn--primary:hover,
.cookie-consent-panel__btn--primary:focus-visible {
	filter: brightness(1.04);
	outline: none;
	box-shadow:
		0 1px 0 rgba(255, 255, 255, 0.5) inset,
		0 14px 28px -10px color-mix(in srgb, var(--primary-color, #717fe0) 60%, transparent);
}

@media (min-width: 992px) {
	.cookie-consent-panel {
		left: max(24px, env(safe-area-inset-left));
		bottom: max(24px, env(safe-area-inset-bottom));
		width: 380px;
		max-width: 380px;
	}

	.cookie-consent-panel__actions {
		justify-content: flex-end;
	}

	.cookie-consent-panel__btn {
		width: auto;
		min-width: 8.5rem;
		padding-inline: 1.35rem;
	}
}

@media (max-width: 991px) {
	.cookie-consent-panel {
		left: max(12px, env(safe-area-inset-left));
		right: max(12px, env(safe-area-inset-right));
		bottom: max(12px, env(safe-area-inset-bottom));
		width: auto;
		max-width: none;
		transform: translateY(16px) scale(0.985);
	}

	.cookie-consent-panel.is-visible {
		transform: translateY(0) scale(1);
	}

	.cookie-consent-panel__surface {
		border-radius: 18px;
	}

	.cookie-consent-panel__body {
		padding: 1.05rem 1.05rem 0.75rem 1.25rem;
		gap: 0.8rem;
	}

	.cookie-consent-panel__icon {
		width: 2.5rem;
		height: 2.5rem;
		border-radius: 12px;
		font-size: 1.15rem;
	}

	.cookie-consent-panel__title {
		font-size: 1rem;
	}

	.cookie-consent-panel__message {
		font-size: 0.8rem;
	}

	.cookie-consent-panel__actions {
		padding: 0 1.05rem 1.05rem 1.25rem;
	}
}
