.bmlang{position:relative;font:600 13px/1 -apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif}
	.bmlang__now{display:flex;align-items:center;justify-content:center;gap:6px;border:0;cursor:pointer;
		background:#517dfc;color:#fff;font:inherit;font-weight:700}
	.bmlang__now:hover,.bmlang__now:focus,.bmlang__now:active{background:#3f6ae8;color:#fff}
	.bmlang__menu{position:absolute;z-index:2;margin:0;padding:6px;list-style:none;min-width:172px;
		background:#fff;border:1px solid #e6e9f2;border-radius:14px;box-shadow:0 14px 34px rgba(19,24,38,.16)}
	.bmlang__menu[hidden]{display:none}
	.bmlang__item{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:10px;
		color:#131826!important;text-decoration:none!important;white-space:nowrap}
	.bmlang__item:hover{background:#f3f6ff}
	.bmlang__item.is-now{background:#eaf0ff;color:#2f57c9!important}
	.bmlang__item .bmlang__code{flex:0 0 26px;font-weight:800;font-size:11.5px;letter-spacing:.04em;color:#8b93a7}
	.bmlang__item.is-now .bmlang__code{color:#2f57c9}
	.bmlang__name{font-weight:600}

	.bmlang-slot[hidden]{display:none}

	/* Верхняя полоса шапки: прижата к правому краю, названия целиком.
	   Полоса синяя, поэтому цвет задаём белым явно. Раньше стояло
	   `color:inherit` с прозрачностью .75 — от темы приезжал серый,
	   и на синем он читался плохо. Неактивные языки приглушаем
	   прозрачностью, а не другим цветом: так они остаются белыми. */
	.bmlang-top{display:flex;align-items:center;gap:6px;margin-left:auto}
	.bmlang-top__item{display:inline-flex;align-items:center;padding:5px 11px;border-radius:8px;
		color:#fff!important;text-decoration:none!important;opacity:.8;
		border:1px solid rgba(255,255,255,.28);
		font:600 12.5px/1 -apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;
		white-space:nowrap;transition:opacity .15s,background .15s,border-color .15s}
	.bmlang-top__item:hover,
	.bmlang-top__item:focus-visible{opacity:1;background:rgba(255,255,255,.18);border-color:rgba(255,255,255,.55)}
	.bmlang-top__item.is-now{opacity:1;font-weight:800;color:#131826!important;
		background:#fff;border-color:#fff}
	@media (max-width:1024px){.bmlang-top{display:none}}

	/* Текст полосы — ровно по центру, кнопки — справа.
	   Приём: слева пустая распорка, справа сами кнопки, и обе стороны
	   тянутся одинаково (flex:1). Тогда середина остаётся серединой
	   при любой длине названий языков и без наложений. */
	.bmlang-row-host{display:flex;align-items:center;width:100%}
	.bmlang-row-host::before{content:"";flex:1 1 0;min-width:0}
	.bmlang-row-host > .whb-column{flex:0 1 auto;justify-content:center;text-align:center;min-width:0}
	.bmlang-row-host > .bmlang-top{flex:1 1 0;justify-content:flex-end;margin-left:0;min-width:0}
	/* Кнопок нет — распорка только сдвинула бы текст. */
	@media (max-width:1024px){.bmlang-row-host::before{display:none}}

	/* ── Чужие правила, привязанные к английскому ──────────────────
	   Dokan подмешивает продавца к товару отдельной «характеристикой»,
	   а WooCommerce делает из её подписи класс: `variation-Vendor`
	   по-английски, `variation-Fournisseur` по-французски,
	   `variation-Verkäufer` по-немецки. Woodmart прячет ровно первый —
	   и на других языках строка «Fournisseur: Colruyt Gasperich»
	   вылезала в мини-корзине и на оформлении.

	   Прячем по месту, а не по подписи. Имя магазина оттуда читает
	   наш скрипт (PART 6), и `display:none` ему не мешает —
	   `textContent` у скрытого элемента читается как обычно. */
	.widget_shopping_cart_content .mini_cart_item ul.variation,
	.widget_shopping_cart .mini_cart_item ul.variation,
	.woocommerce-checkout-review-order-table ul.variation,
	.woocommerce-cart-form ul.variation{display:none!important}

	/* ── Длинные надписи на кнопках ────────────────────────────────
	   «ADD TO CART» короткое, «AJOUTER AU PANIER» и «IN DEN WARENKORB»
	   вдвое длиннее и не влезали в кнопку карточки товара. Даём тексту
	   переноситься и слегка ужимаем начертание — размер самой кнопки
	   при этом не меняется. */
	.wd-add-btn > a,
	.wd-buttons .add_to_cart_button,
	.product .button.add_to_cart_button,
	.products .add_to_cart_button,
	.bammat-list-add,
	.single_add_to_cart_button{
		white-space:normal;
		overflow-wrap:anywhere;
		line-height:1.2;
		text-align:center;
		hyphens:auto}
	@media (max-width:480px){
		.products .add_to_cart_button,
		.wd-add-btn > a{font-size:11.5px;letter-spacing:0;padding-inline:8px}
	}

	/* ── Цена в правой колонке оформления ──────────────────────────
	   Строка товара — flex: картинка, описание, цена. «Beste
	   Übereinstimmung / Nicht ersetzen» вдвое длиннее «Best match /
	   Don't replace», и колонка с описанием переставала сжиматься:
	   у flex-элемента ширина не падает ниже содержимого, пока
	   не сказано `min-width:0`. Цену выдавливало за край, и от неё
	   оставалось «69,0».

	   Поэтому: описанию разрешаем сжиматься, цене — нет, а кнопкам
	   разрешаем переноситься на вторую строку. */
	.woocommerce-checkout-review-order-table .bmt-replace{width:100%;min-width:0;margin:2px 0 0!important}
	.woocommerce-checkout-review-order-table .bmt-replace__seg{flex-wrap:nowrap!important;max-width:100%;overflow:hidden}
	.woocommerce-checkout-review-order-table button.bmt-replace__opt{
		white-space:nowrap!important;min-width:0!important;
		overflow:hidden;text-overflow:ellipsis;
		padding-inline:8px!important;font-size:10.5px!important}
	.woocommerce-cart-form .bmt-replace__seg{flex-wrap:nowrap!important}
	.woocommerce-cart-form button.bmt-replace__opt{white-space:nowrap!important;font-size:10.5px!important;padding-inline:8px!important}
	@media (max-width:480px){
		.woocommerce-checkout-review-order-table button.bmt-replace__opt,
		.woocommerce-cart-form button.bmt-replace__opt{font-size:9.5px!important;padding-inline:6px!important}
	}

	/* ── Верхняя полоса на телефоне ────────────────────────────────
	   «Von lokalen Geschäften, zusammengestellt und in 30-90 Minuten
	   geliefert» вдвое длиннее английского и не влезало в одну строку —
	   хвост просто уезжал за экран. Разрешаем перенос и ужимаем шрифт. */
	@media (max-width:1024px){
		.whb-top-bar .wd-header-text,
		.whb-top-bar .wd-header-text h6{
			white-space:normal!important;
			font-size:11px!important;
			line-height:1.35!important;
			text-align:center;
			margin:0 auto;
			padding:4px 10px}
		.whb-top-bar .whb-flex-row{flex-wrap:wrap;min-height:0}
	}

	/* Шапка: рядом с корзиной и кабинетом. */
	.bmlang--inheader{margin:0 6px}
	.bmlang--inheader .bmlang__now{width:auto;height:34px;padding:0 12px;border-radius:999px;font-size:12.5px}
	.bmlang--inheader .bmlang__menu{right:0;top:calc(100% + 8px)}
	@media (max-width:1024px){.bmlang--inheader{display:none}}

	/* Мобильное меню: ряд кнопок отдельным пунктом. */
	.bmlang-menu-item{list-style:none}
	.bmlang-row{display:flex;gap:8px;padding:14px 20px;flex-wrap:wrap}
	.bmlang-row__item{display:inline-flex;align-items:center;justify-content:center;
		min-width:46px;padding:8px 12px;border-radius:10px;border:1.5px solid #e6e9f2;
		background:#fff;color:#131826!important;text-decoration:none!important;
		font:700 13px/1 -apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;
		letter-spacing:.04em}
	.bmlang-row__item.is-now{background:#517dfc;border-color:#517dfc;color:#fff!important}

	/* Плавающий вид — запасной: только если места в шапке не нашлось. */
	.bmlang--bar{position:fixed;right:0;top:50%;transform:translateY(-50%);margin-top:-62px;z-index:349}
	.bmlang--bar .bmlang__now{width:50px;height:50px;
		border-start-start-radius:14px;border-end-start-radius:14px;
		border-start-end-radius:0;border-end-end-radius:0;
		box-shadow:0 6px 18px rgba(19,24,38,.18)}
	.bmlang--bar .bmlang__menu{right:56px;top:0}

	.bmlang--inline .bmlang__now{padding:9px 14px;border-radius:999px}
	.bmlang--inline .bmlang__menu{right:0;top:calc(100% + 8px)}
