:root {
	/* Odstup ode dna — musí přeskočit cookie lištu. Přepiš v CSS tématu. */
	--bln-offset-bottom: 100px;
	--bln-offset-left: 20px;
}

.bln-notice {
	position: fixed;
	bottom: var( --bln-offset-bottom, 100px );
	left: var( --bln-offset-left, 20px );
	z-index: 99999;
	box-sizing: border-box;
	width: calc( 100vw - 40px );
	max-width: 320px;
	padding: 16px 40px 16px 18px;
	background: #000;
	color: #fff;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
	font-size: 14px;
	line-height: 1.45;
	opacity: 0;
	transform: translateY( 12px ) scale( 0.96 );
	transform-origin: 0 100%;
	transition: opacity 0.3s ease, transform 0.45s cubic-bezier( 0.16, 1, 0.3, 1 );
	will-change: opacity, transform;
}


.bln-notice.is-visible {
	opacity: 1;
	transform: translateY( 0 ) scale( 1 );
}

/* Zavření: sesune se k levému dolnímu rohu a rozplyne. */
.bln-notice.is-leaving {
	opacity: 0;
	transform: translateY( 8px ) scale( 0.88 );
	filter: blur( 2px );
	pointer-events: none;
	transition: opacity 0.26s ease, transform 0.26s cubic-bezier( 0.55, 0, 1, 0.45 ), filter 0.26s ease;
}

.bln-notice__text {
	margin: 0 0 10px;
	font-size: 14px;
	color: inherit;
}

.bln-notice__cta {
	display: inline-block;
	font-weight: 600;
	color: #fff;
	text-decoration: underline;
}

.bln-notice__cta:hover,
.bln-notice__cta:focus {
	text-decoration: none;
	color: #fff;
}

.bln-notice__close {
	position: absolute;
	top: 8px;
	right: 8px;
	width: 28px;
	height: 28px;
	padding: 0;
	border: 0;
	border-radius: 6px;
	background: transparent;
	color: inherit;
	line-height: 1;
	cursor: pointer;
	opacity: 0.55;
	transition: opacity 0.15s ease, background-color 0.15s ease, transform 0.15s ease;
}

.bln-notice__close svg {
	display: block;
	width: 14px;
	height: 14px;
	margin: auto;
	stroke: currentColor;
	stroke-width: 1.6;
	stroke-linecap: round;
	fill: none;
}

.bln-notice__close:hover,
.bln-notice__close:focus-visible {
	opacity: 1;
	background: rgba( 0, 0, 0, 0.06 );
}

.bln-notice__close:active {
	transform: scale( 0.88 );
}

/* Na úzkých displejích se text cookie lišty zalamuje, takže je vyšší. */
@media ( max-width: 782px ) {
	:root {
		--bln-offset-bottom: 170px;
		--bln-offset-left: 12px;
	}
}



@media ( prefers-reduced-motion: reduce ) {
	.bln-notice,
	.bln-notice.is-leaving,
	.bln-notice__close {
		transition-duration: 0.01ms;
		filter: none;
		will-change: auto;
	}

	.bln-notice.is-leaving {
		transform: none;
	}
}
