.bs-marquee {
	position: relative;
	overflow: visible;
	width: 100%;
	--bs-marquee-height: 40px;
	--bs-marquee-bg: #111;
	--bs-marquee-fg: #fff;
	--bs-marquee-gap: 40px;
	--bs-marquee-font-size: 16px;
	--bs-marquee-z: 9999;
	--bs-marquee-font-family: inherit;
}

.bs-marquee--fixed {
	position: fixed;
	left: 0;
	right: 0;
	height: var(--bs-marquee-height);
	background: var(--bs-marquee-bg);
	color: var(--bs-marquee-fg);
	z-index: var(--bs-marquee-z);
	box-shadow: 0 2px 6px rgba(0,0,0,0.2);
	transition: transform .3s ease-in-out;
}

.bs-marquee--fixed.bs-marquee--top { top: 0; }
.bs-marquee--fixed.bs-marquee--bottom { bottom: 0; }

.bs-marquee__track {
	position: absolute;
	white-space: nowrap;
	will-change: transform;
	left: 0;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
}

.bs-marquee__close {
	position: absolute;
	right: 8px;
	top: 8px;
	width: 24px;
	height: 24px;
	line-height: 20px;
	text-align: center;
	border-radius: 50%;
	background: #ff3b30;
	color: #fff;
	border: none;
	cursor: pointer;
	font-size: 18px;
	font-weight: bold;
	opacity: 0.9;
	transition: opacity .15s ease-in-out, transform .1s ease-in-out;
}

.bs-marquee__close:hover { opacity: 1; transform: scale(1.05); }
.bs-marquee__close:active { transform: scale(0.95); }

/* Переключатель (треугольник) для возврата панели */
.bs-marquee__toggle {
	position: fixed;
	left: 50%;
	transform: translateX(-50%);
	width: 0;
	height: 0;
	border-left: 10px solid transparent;
	border-right: 10px solid transparent;
	background: transparent;
	padding: 0;
	border-bottom: 0;
	cursor: pointer;
	opacity: 0.9;
	z-index: calc(var(--bs-marquee-z) + 1);
}

.bs-marquee__toggle--top { top: 4px; border-bottom: 12px solid var(--bs-marquee-bg); }
.bs-marquee__toggle--bottom { bottom: 4px; border-top: 12px solid var(--bs-marquee-bg); }

/* Размещение крестика над полосой справа */
.bs-marquee--top .bs-marquee__close { top: -12px; right: 8px; }
.bs-marquee--bottom .bs-marquee__close { top: auto; bottom: calc(100% + 8px); right: 8px; }

.bs-marquee--hidden {
	transform: translateY(100%);
	transition: transform .3s ease-in-out;
}

.bs-marquee--top.bs-marquee--hidden {
	transform: translateY(-100%);
}

.bs-marquee__text {
	display: inline-block;
	padding: 0 0 0 var(--bs-marquee-gap);
	font-size: var(--bs-marquee-font-size);
	font-family: var(--bs-marquee-font-family);
	line-height: 1;
}

body.admin-bar .bs-marquee--fixed.bs-marquee--top {
	top: 32px;
}

@media (max-width: 782px) {
	body.admin-bar .bs-marquee--fixed.bs-marquee--top { top: 46px; }
}



