/* ============================================================
   Выезжающее меню
============================================================ */
.menu-overlay {
	position: fixed;
	height: 100dvh;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: rgba(0,0,0,0.5);
	z-index: 200;
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.3s ease;
}

.menu-overlay--visible {
	opacity: 1;
	visibility: visible;
}

.menu-container {
	position: fixed;
	height: 100dvh;
	top: 0;
	right: 0;
	bottom: 0;
	width: 90%;
	max-width: 350px;
	background: var(--color-surface);
	z-index: 201;
	transform: translateX(100%);
	transition: transform 0.3s ease;
	display: flex;
	flex-direction: column;
	overflow: hidden;
}

.menu-container--open {
	transform: translateX(0);
}

.menu-header {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 10px 10px 10px 20px;
	border-bottom: 1px solid var(--color-border);
	flex-shrink: 0;
	background: white;
}

.menu-back {
	background: none;
	border: none;
	font-size: 20px;
	cursor: pointer;
	padding: 8px;
	color: var(--color-accent);
	display: none;
}

.menu-back--visible {
	display: block;
}

.menu-header__title {
	font-size: 20px;
	font-weight: 500;
	color: #2A6D7C;
}

.menu-close {
	background: none;
	border: none;
	font-size: 24px;
	cursor: pointer;
	padding: 8px;
	margin-left: auto;
    color: #8E1F86;
}

.menu-right-arrow {
	width: 14px;
}

/* Контейнер слайдов */
.menu-slides {
	flex: 1;
	overflow: hidden;
	position: relative;
    background: #E9E9E9;
    padding-left: 15px;
}

.slide {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: #E9E9E9);
	transform: translateX(100%);
	transition: transform 0.6s ease;
	overflow-y: auto;
	display: flex;
	flex-direction: column;
}

.slide--active {
	transform: translateX(0);
}

.slide-list {
	flex: 1;
	list-style: none;
}

.slide-item {
	border-bottom: 1px solid var(--color-border);
}

.slide-link {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	text-decoration: none;
	font-size: 20px;
	color: #666666;
	background: none;
	border: none;
	width: 100%;
	cursor: pointer;
   font-weight: 700;
  /* font-family: 'PF BeauSans Pro'; */
    text-align: right;
    padding: 10px 20px 10px 10px;
}

.slide-link .arrow {
	font-size: 18px;
	color: var(--color-text-muted);
}

.slide-link--final {
	color: #666666;
    text-align: right;
    justify-content: flex-end;
    padding-right: 45px;
}



/* Корзина в меню (идет следом, не прилепляется) */
.menu-cart {
	border-top: 1px solid var(--color-border);
}

.menu-cart__link {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 10px 45px 10px 10px;
	text-decoration: none;
	color: #000000;
	font-size: 20px;
	font-weight: 600;
    justify-content: flex-end;
    text-align: right;
}

.menu-cart__icon {
	width: 20px;
	height: 20px;
}

.slide-link-wrapper {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    width: 100%;
}

.slide-link-wrapper .slide-link--main {
    text-align: right;
    padding: 10px 19px 10px 10px;
}


.slide-link--main {
    flex: 1;
    text-decoration: none;
    color: inherit;
    padding: 10px;
}

.slide-link-arrow {
    background: none;
    border: none;
    cursor: pointer;
    font-size: 18px;
    color: #6c757d;
    flex-shrink: 0;
	 padding: 10px 10px 10px 0;
    order: 0;
}

.slide-link-wrapper .slide-link--main:hover,
.slide-link-arrow:hover {
    background: #f5f9fa;
}

/* Показываем корзину в меню */
.menu-cart .header__cart {
    display: flex !important;
    align-items: center;
    justify-content: flex-end;
    gap: 12px;
    padding: 16px 20px;
    text-decoration: none;
}

/* Выравнивание по правому краю */
.menu-cart .bx-basket {
    width: 100%;
}

.menu-cart .header__cart {
    justify-content: flex-end;
}

.menu-cart .header__cart-icon {
    order: 1; /* Иконка справа */
    width: 20px;
    height: 20px;
}

.menu-cart .header__cart::before {
    content: "Корзина";
    order: 0;
    color: #000000;
    font-size: 20px;
    font-weight: 700;
}

/* Счетчик, если есть */
.menu-cart .header__cart-count {
    order: 2;
    margin-left: 4px;
}



