/*
Theme Name:   MediHub (Storefront Child)
Theme URI:    https://medihub.az
Description:  Presentation layer for medihub.az. Design only — no business logic.
              All business rules live in the medihub-core plugin.
Author:       Sutura Nova MMC
Template:     storefront
Version:      0.83.123
Text Domain:  storefront-child
*/

/* ---------------------------------------------------------------------------
 * Design tokens — brand palette extracted from the MediHub logo
 * (blue "Medi" #20a0e0, green "Hub" #80c050). See .docs/design-concept.md.
 * ------------------------------------------------------------------------- */
:root {
	--mh-blue: #1789d6;
	--mh-blue-light: #20a0e0;
	--mh-blue-dark: #0f6aa8;
	--mh-green: #76b93e;
	--mh-green-dark: #588f2b;
	--mh-ink: #16232e;
	--mh-muted: #5f6e7c;
	--mh-surface: #ffffff;
	--mh-canvas: #f4f8fb;
	--mh-line: #e3eaf1;
	--mh-warn: #b32d2e;
	--mh-warn-bg: #fdecea;
	--mh-accent-bg: #eaf5fd;
	--mh-green-bg: #f1f8e9;
	--mh-shadow: 0 1px 2px rgba(22, 35, 46, 0.06);
	/* Back-compat aliases (older selectors/plugins may reference these). */
	--mh-color-primary: var(--mh-blue);
	--mh-color-primary-dark: var(--mh-blue-dark);
	--mh-color-ink: var(--mh-ink);
	--mh-color-muted: var(--mh-muted);
	--mh-color-surface: var(--mh-surface);
	--mh-color-line: var(--mh-line);
	--mh-color-accent-bg: var(--mh-accent-bg);
	--mh-color-warn: var(--mh-warn);
	--mh-color-warn-bg: var(--mh-warn-bg);
}

/* ---------------------------------------------------------------------------
 * Base
 * ------------------------------------------------------------------------- */
body {
	color: var(--mh-ink);
	background: var(--mh-surface);
	font-size: 16px;
}

h1, h2, h3, h4, h5 {
	color: var(--mh-ink);
}

a {
	color: var(--mh-blue);
}

a:hover {
	color: var(--mh-blue-dark);
}

.site-content {
	padding-top: 1.2em;
}

/* ---------------------------------------------------------------------------
 * Header: white, calm, commerce-first.
 * ------------------------------------------------------------------------- */
.site-header {
	background-color: var(--mh-surface);
	padding-bottom: 0;
}

.site-branding img {
	max-height: 56px;
	width: auto;
}

.woocommerce-active .site-header .site-search {
	margin-top: 0.4em;
}

.site-search .search-field,
.widget_product_search input[type="search"] {
	background: var(--mh-canvas);
	border: 1px solid var(--mh-line);
	border-radius: 999px;
	padding: 0.7em 1.2em;
	box-shadow: none;
	font-size: 0.95em;
}

.site-search .search-field:focus {
	background: var(--mh-surface);
	border-color: var(--mh-blue-light);
	outline: none;
	box-shadow: 0 0 0 3px rgba(32, 160, 224, 0.15);
}

/* Cart bubble in the header. */
.site-header-cart .cart-contents {
	padding: 0.6em 0.9em;
	border-radius: var(--mh-radius-sm);
}

.site-header-cart .cart-contents .amount,
.site-header-cart .cart-contents .count {
	color: var(--mh-ink);
	font-weight: 600;
}

.site-header-cart .cart-contents:hover {
	background: var(--mh-accent-bg);
}

/* Account pill (inc/header-account.php). */
.mh-header-account {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 8px 14px;
	border: 1px solid var(--mh-line);
	border-radius: 999px;
	color: var(--mh-ink);
	font-size: 0.9em;
	font-weight: 600;
	text-decoration: none;
	float: right;
	margin-top: 8px;
	background: var(--mh-surface);
	transition: border-color 0.15s ease, color 0.15s ease, background 0.15s ease;
}

.mh-header-account:hover {
	border-color: var(--mh-blue);
	color: var(--mh-blue);
	background: var(--mh-accent-bg);
}

.mh-header-account__icon {
	flex: 0 0 auto;
}

/* Primary navigation: slim bar, blue underline on hover/current. */
.storefront-primary-navigation {
	background: var(--mh-surface);
}

.main-navigation ul li a {
	color: var(--mh-ink);
	padding: 0.9em 0;
}

.main-navigation ul li a:hover,
.main-navigation ul li.current-menu-item > a,
.main-navigation ul li.current_page_item > a,
.main-navigation ul.menu > li.current-menu-ancestor > a,
.main-navigation ul.menu > li.current-menu-parent > a,
.main-navigation ul.menu > li.current-page-ancestor > a {
	color: var(--mh-blue);
	box-shadow: inset 0 -3px 0 var(--mh-blue);
}

.main-navigation ul.menu > li + li {
	margin-left: 1.4em;
}

.secondary-navigation {
	font-size: 0.85em;
}

/* ---------------------------------------------------------------------------
 * Buttons.
 * ------------------------------------------------------------------------- */
.button,
button.button,
input[type="submit"],
.woocommerce-active .button.alt,
.woocommerce-active button.button.alt,
.wp-block-button__link,
.mh-return-btn,
.mh-usage-btn {
	background-color: var(--mh-blue);
	color: #ffffff;
	border-radius: var(--mh-radius-sm);
	font-weight: 600;
	border: 0;
	box-shadow: var(--mh-shadow);
	transition: background 0.15s ease, transform 0.1s ease;
}

.button:hover,
button.button:hover,
input[type="submit"]:hover,
.woocommerce-active .button.alt:hover,
.woocommerce-active button.button.alt:hover,
.wp-block-button__link:hover {
	background-color: var(--mh-blue-dark);
	color: #ffffff;
}

.button.mh-btn-secondary,
.wp-block-button.is-style-outline .wp-block-button__link {
	background: transparent;
	color: var(--mh-blue);
	border: 2px solid var(--mh-blue);
	box-shadow: none;
}

.button.mh-btn-secondary:hover,
.wp-block-button.is-style-outline .wp-block-button__link:hover {
	background: var(--mh-accent-bg);
	color: var(--mh-blue-dark);
}

.added_to_cart.wc-forward {
	color: var(--mh-green-dark);
	font-weight: 600;
}

/* ---------------------------------------------------------------------------
 * Product cards (shop / category / related grids).
 * ------------------------------------------------------------------------- */
ul.products li.product {
	border-radius: var(--mh-radius);
	padding: 14px 14px 18px;
}

ul.products li.product:hover {
	transform: translateY(-3px);
}

ul.products li.product img {
	aspect-ratio: 1 / 1;
	border-radius: var(--mh-radius-sm);
	margin-bottom: 0.8em;
}

ul.products li.product .woocommerce-loop-product__title {
	font-size: 0.95em;
	line-height: 1.35;
	color: var(--mh-ink);
	min-height: 2.7em;
}

ul.products li.product .button {
	margin-top: 0.4em;
}

.woocommerce-breadcrumb {
	font-size: 0.85em;
	color: var(--mh-muted);
	padding: 0.8em 0;
}

/* Single product page. */
.single-product div.product .woocommerce-product-gallery {
	border: 1px solid var(--mh-line);
	border-radius: var(--mh-radius);
	padding: 12px;
	background: #fff;
}

.single-product div.product .price {
	color: var(--mh-blue-dark);
	font-size: 1.5em;
	font-weight: 700;
}

.single-product div.product .woocommerce-product-details__short-description {
	color: var(--mh-muted);
}

table.woocommerce-product-attributes th {
	color: var(--mh-muted);
	font-weight: 600;
}

/* Phones (2026-09-24): once the attribute values translated, Russian put two long single words side by side
   («Рассасываемость» | «Рассасывающаяся») and the table grew to 385 px inside 330 — the values were cut off
   at the screen edge. Tighter cells and a smaller label; a long word hyphenates (the page says lang="ru-RU")
   or, where the browser cannot, still wraps instead of spilling. */
@media (max-width: 767px) {
	.single-product div.product table.woocommerce-product-attributes th,
	.single-product div.product table.woocommerce-product-attributes td {
		padding: 0.85em 0.75em;
		vertical-align: baseline;
		overflow-wrap: anywhere;
		-webkit-hyphens: auto;
		hyphens: auto;
	}

	.single-product div.product table.woocommerce-product-attributes th {
		width: 44%;
		font-size: 0.875em;
	}
}

.stock.in-stock {
	color: var(--mh-green-dark);
	font-weight: 600;
}

.stock.out-of-stock {
	color: var(--mh-warn);
}

/* ---------------------------------------------------------------------------
 * Badges & professional gating notices (plugin output, styled here).
 * ------------------------------------------------------------------------- */
.mh-badge {
	letter-spacing: 0.02em;
	margin: 0 6px 6px 0;
	vertical-align: middle;
}

.mh-badge--preorder {
	background: #fff7ed;
	color: #9a3412;
	border: 1px solid #fed7aa;
}

.mh-badge--pack {
	background: var(--mh-green-bg);
	color: var(--mh-green-dark);
	border: 1px solid #cde3b3;
}


.mh-professional-price-note {
	display: inline-block;
	background: var(--mh-accent-bg);
	color: var(--mh-blue-dark);
	border: 1px solid var(--mh-line);
	border-radius: var(--mh-radius-sm);
	padding: 6px 12px;
	font-size: 0.85em;
	line-height: 1.4;
}

/* ---------------------------------------------------------------------------
 * Cart & checkout (classic, server-rendered pages /sebet/ /sifaris/).
 * ------------------------------------------------------------------------- */
.woocommerce-cart table.cart,
table.shop_table {
	border: 1px solid var(--mh-line);
	border-radius: var(--mh-radius);
	overflow: hidden;
}

table.shop_table th {
	background: var(--mh-canvas);
	color: var(--mh-ink);
}

.woocommerce-cart table.cart img {
	width: 64px;
	border-radius: var(--mh-radius-sm);
	background: #fff;
}

.cart_totals,
#order_review {
	background: var(--mh-canvas);
	border: 1px solid var(--mh-line);
	border-radius: var(--mh-radius);
	padding: 1.2em;
}

.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select {
	background: var(--mh-surface);
	border: 1px solid var(--mh-line);
	border-radius: var(--mh-radius-sm);
	padding: 0.65em 0.9em;
}

.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus {
	border-color: var(--mh-blue-light);
	outline: none;
	box-shadow: 0 0 0 3px rgba(32, 160, 224, 0.15);
}

.wc_payment_method label {
	font-weight: 600;
}

.woocommerce-message {
	border-top-color: var(--mh-green);
}

/* ---------------------------------------------------------------------------
 * Personal cabinet (/hesabiniz/) — «Ağ otaq», the owner's pick (2026-08-26,
 * variant 1 of five): profile hero + self-describing section cards on the
 * root; inner pages carry a back link instead of a sidebar.
 * ------------------------------------------------------------------------- */
/* Owner 2026-10-04 (scr 16): 30px here stacked on the account page's own
   24px «breath» — 8px leaves one gap under the last card, not two. */
.mh-home {
	padding: 8px 0 8px;
}

.mh-home__hero {
	text-align: center;
	padding: 26px 16px 6px;
}

.mh-home__avatar {
	width: 76px;
	height: 76px;
	border-radius: 50%;
	margin: 0 auto 14px;
	background: linear-gradient(135deg, var(--mh-blue), var(--mh-green));
	color: #ffffff;
	display: grid;
	place-items: center;
	font-size: 30px;
	font-weight: 700;
}

.mh-home__hi {
	margin: 0 0 4px;
	font-size: 26px;
	font-weight: 800;
	letter-spacing: -0.01em;
}

.mh-home__contact {
	margin: 0;
	color: var(--mh-muted);
	font-size: 14px;
	overflow-wrap: anywhere;
}

.mh-home__chip {
	display: inline-block;
	margin: 14px auto 0;
	background: #fdf3df;
	color: #8a6116;
	border: 1px solid #f3e1b6;
	border-radius: 999px;
	padding: 7px 16px;
	font-size: 13px;
	font-weight: 600;
}

.mh-home__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px;
	max-width: 880px;
	margin: 30px auto 0;
}

.mh-home__card,
.mh-home__card:hover,
.mh-home__card:focus,
.mh-home__card * {
	/* The theme underlines content links; a card is a button, not prose. */
	text-decoration: none !important;
}

.mh-home__card {
	display: flex;
	align-items: center;
	gap: 16px;
	background: var(--mh-surface);
	border: 1px solid var(--mh-line);
	border-radius: 14px;
	padding: 18px 20px;
	color: var(--mh-ink);
	transition: box-shadow 0.15s ease, transform 0.15s ease;
}

.mh-home__card:hover {
	box-shadow: 0 8px 22px rgba(20, 112, 192, 0.12);
	transform: translateY(-1px);
	color: var(--mh-ink);
}

.mh-home__icon {
	width: 42px;
	height: 42px;
	border-radius: 11px;
	display: grid;
	place-items: center;
	flex: 0 0 auto;
}

.mh-home__text {
	display: flex;
	flex-direction: column;
	gap: 2px;
	min-width: 0;
}

.mh-home__label {
	font-size: 15.5px;
	font-weight: 700;
}

.mh-home__count {
	display: inline-block;
	background: var(--mh-accent-bg);
	color: var(--mh-blue-dark);
	border-radius: 999px;
	font-size: 12px;
	font-weight: 700;
	padding: 1px 9px;
	margin-left: 6px;
	vertical-align: 2px;
	font-variant-numeric: tabular-nums;
}

.mh-home__desc {
	font-size: 12.5px;
	color: var(--mh-muted);
	overflow-wrap: anywhere;
}

.mh-home__chev {
	margin-left: auto;
	color: #b6c2cc;
	font-size: 18px;
}

@media (max-width: 700px) {
	.mh-home__grid {
		grid-template-columns: 1fr;
	}
}

/* Owner 2026-08-26 (green marks on every cabinet screenshot): the theme kept
   a ~96px dead band under the page title and another 32px above the content.
   Scoped to the CUSTOMER cabinet (body.mh-cab-c) so the staff pages keep
   their approved layout. The hero rises with it — the avatar sits where the
   owner drew the circle, not a screen below it. */
/* !important: the ~96px band comes from Storefront's own stylesheet (served
   cross-origin off s0.wp.com), which outweighs any child-theme specificity. */
body.mh-cab-c .entry-header {
	padding-bottom: 10px !important;
}

body.mh-cab-c .woocommerce-MyAccount-content {
	padding-top: 10px !important;
	padding-bottom: 18px !important;
}

body.mh-cab-c .mh-home {
	padding-top: 0;
}

body.mh-cab-c .mh-home__hero {
	padding-top: 2px;
}

body.mh-cab-c .mh-home__grid {
	margin-top: 22px;
}

/* «Ünvanlar» as cards (owner 2026-08-26): Ünvan 1..N plus the dashed «+»
   card that files a new address for staff review. */
.mh-addr-intro {
	margin: 0 0 16px;
}

.mh-addr-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
	gap: 16px;
	align-items: stretch;
}

.mh-addr-card {
	position: relative;
	background: var(--mh-surface);
	border: 1px solid var(--mh-line);
	border-radius: 14px;
	padding: 16px 18px 14px;
	min-height: 150px;
	display: flex;
	flex-direction: column;
}

.mh-addr-card__head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 10px;
	margin-bottom: 6px;
}

.mh-addr-card__head h3 {
	margin: 0;
	font-size: 1.05rem;
}

.mh-addr-card__chip {
	display: inline-block;
	margin-left: 4px;
	background: #fdf3df;
	color: #8a6116;
	border: 1px solid #f3e1b6;
	border-radius: 999px;
	padding: 1px 10px;
	font-size: 0.72em;
	font-weight: 600;
	vertical-align: 2px;
	white-space: nowrap;
}

.mh-addr-card__edit {
	color: var(--mh-muted);
	line-height: 1;
	padding: 4px;
}

.mh-addr-card__edit:hover {
	color: var(--mh-blue-dark);
}

.mh-addr-card address {
	margin: 0;
	font-style: italic;
	flex: 1 1 auto;
}

.mh-addr-card__delform {
	margin: 10px 0 0;
	text-align: right;
}

.mh-addr-card__del {
	background: none;
	border: 0;
	padding: 0;
	color: var(--mh-muted);
	font-size: 0.85em;
	text-decoration: underline;
	cursor: pointer;
}

.mh-addr-card__del:hover {
	color: #b32d2e;
}

.mh-addr-card--add,
.mh-addr-card--add:hover,
.mh-addr-card--add:focus {
	text-decoration: none !important;
}

.mh-addr-card--add {
	border: 2px dashed var(--mh-line);
	background: none;
	align-items: center;
	justify-content: center;
	gap: 4px;
	color: var(--mh-muted);
	transition: border-color 0.15s ease, color 0.15s ease;
}

.mh-addr-card--add:hover {
	border-color: var(--mh-blue);
	color: var(--mh-blue-dark);
}

.mh-addr-add__plus {
	font-size: 44px;
	font-weight: 300;
	line-height: 1;
}

.mh-addr-add__label {
	font-size: 0.92em;
	font-weight: 600;
}

/* Inner pages: one column, a quiet way back, no sidebar leftovers. */
.mh-cab-page .woocommerce-MyAccount-content,
.woocommerce-account .mh-cab-page .woocommerce-MyAccount-content {
	width: 100%;
	float: none;
}

.mh-cab-back {
	margin: 0 0 14px;
}

.mh-cab-back a {
	color: var(--mh-muted);
	font-weight: 600;
	font-size: 0.92em;
	text-decoration: none;
}

.mh-cab-back a:hover {
	color: var(--mh-blue-dark);
}

.woocommerce-MyAccount-navigation {
	background: var(--mh-canvas);
	border: 1px solid var(--mh-line);
	border-radius: var(--mh-radius);
	padding: 0.6em;
}

.woocommerce-MyAccount-navigation ul {
	margin: 0;
	list-style: none;
}

.woocommerce-MyAccount-navigation ul li {
	list-style: none;
}

.woocommerce-MyAccount-navigation ul li a {
	display: block;
	padding: 0.65em 1em;
	border-radius: var(--mh-radius-sm);
	color: var(--mh-ink);
	font-weight: 600;
	text-decoration: none;
}

.woocommerce-MyAccount-navigation ul li a:hover {
	background: var(--mh-accent-bg);
	color: var(--mh-blue-dark);
}

.woocommerce-MyAccount-navigation ul li.is-active a {
	background: var(--mh-blue);
	color: #ffffff;
}

.woocommerce-MyAccount-content {
	background: var(--mh-surface);
	border: 1px solid var(--mh-line);
	border-radius: var(--mh-radius);
	padding: 1.4em 1.6em;
}

.woocommerce-MyAccount-content h2,
.woocommerce-MyAccount-content h3 {
	margin-top: 0.4em;
}

table.shop_table tbody tr:nth-child(even) {
	background: var(--mh-canvas);
}

/* Order status chips in the cabinet order list. */
.woocommerce-orders-table__cell-order-status {
	font-weight: 600;
}

/* Held items / consignment blocks. */
.mh-held-terms {
	background: var(--mh-green-bg);
	border-left: 3px solid var(--mh-green);
	border-radius: 0 var(--mh-radius-sm) var(--mh-radius-sm) 0;
	padding: 12px 16px;
	font-size: 0.9em;
}

.mh-held-table input[type="number"] {
	border-radius: var(--mh-radius-sm);
	border: 1px solid var(--mh-line);
	padding: 5px 8px;
}

.mh-days-left {
	color: var(--mh-muted);
	font-size: 0.85em;
	white-space: nowrap;
}

.mh-held-note {
	color: var(--mh-muted);
	font-size: 0.9em;
}

/* Owner 2026-09-04 (scr 16–20): the storage table on a phone — stacked cells
   with their labels (WooCommerce's responsive table), inputs that fit, the
   two buttons one under the other and full width. */
.mh-held-table .mh-held-qty {
	width: 70px;
}

.mh-held-pick {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	white-space: nowrap;
}

.mh-held-pick input[type="checkbox"] {
	margin: 0;
}

.mh-held-urgent {
	color: #b32d2e;
	font-weight: 600;
}

.mh-held-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin: 14px 0 10px;
}

/* Walkthrough 2026-09-04 (phone width): WooCommerce's small-screen sheet
   (`.woocommerce-page table.shop_table_responsive tr td::before`, 0,2,4)
   outranked these rules — its float:left label and nowrap cell kept the long
   product name on one line, the table grew to ~730 px and every value sat
   off-screen. Same selector shape, one class heavier, and the cell wraps. */
@media (max-width: 768px) {
	.woocommerce-page table.mh-held-table.shop_table_responsive,
	.woocommerce-page table.mh-held-table.shop_table_responsive tbody {
		display: block;
		width: 100%;
		max-width: 100%;
	}

	.woocommerce-page table.mh-held-table.shop_table_responsive tr td {
		display: flex;
		justify-content: space-between;
		align-items: center;
		gap: 10px;
		text-align: right;
		padding: 8px 10px;
		white-space: normal;
		min-width: 0;
		overflow-wrap: anywhere;
	}

	.woocommerce-page table.mh-held-table.shop_table_responsive tr td::before {
		content: attr(data-title);
		flex: 0 0 42%;
		float: none;
		display: block;
		width: auto;
		text-align: left;
		font-weight: 600;
		color: var(--mh-muted);
		font-size: 0.85em;
	}

	.woocommerce-page table.mh-held-table.shop_table_responsive tr td[data-title=""]::before,
	.woocommerce-page table.mh-held-table.shop_table_responsive tr td:not([data-title])::before {
		display: none;
	}

	.woocommerce-page table.mh-held-table.shop_table_responsive tr {
		display: block;
		border: 1px solid var(--mh-line);
		border-radius: var(--mh-radius-sm);
		margin-bottom: 10px;
	}

	.woocommerce-page table.mh-held-table.shop_table_responsive thead {
		display: none;
	}

	.mh-held-table .mh-held-qty {
		width: 64px;
	}

	.mh-held-actions .button {
		width: 100%;
		text-align: center;
	}
}

/* ---------------------------------------------------------------------------
 * Login / registration switch (inc/header-account.php + assets/js/account.js).
 *
 * Owner, staging audit 2026-08-25: the page opens with the login card alone;
 * «Qeydiyyatdan keçin» swaps in the registration card, «Daxil olun» swaps
 * back — one form at a time. This reverses the 2026-08-20 pass that showed
 * both columns side by side on desktop; the empty-half-page problem that
 * pass fixed is now fixed differently — one centred, width-capped card (see
 * the account section further down). The body class is also set server-side
 * for ?register=1 and failed registration POSTs, so no state needs JS.
 * ------------------------------------------------------------------------- */
.mh-register-toggle {
	background: var(--mh-accent-bg);
	border: 1px solid var(--mh-line);
	border-radius: var(--mh-radius);
	padding: 14px 18px;
	margin-bottom: 24px;
}

.mh-register-toggle a {
	font-weight: 600;
}

.mh-register-toggle--to-login {
	display: none;
}

body.mh-show-register-form .mh-register-toggle--to-register {
	display: none;
}

body.mh-show-register-form .mh-register-toggle--to-login {
	display: block;
}

body:not(.mh-show-register-form) .u-column2,
body:not(.mh-show-register-form) .col-2:has(form.register) {
	display: none;
}

body.mh-show-register-form .u-column1,
body.mh-show-register-form .col-1:has(form.login) {
	display: none;
}

body.mh-show-register-form .u-column2,
body.mh-show-register-form .col-2 {
	display: block;
}

.woocommerce-form-login,
.woocommerce-form-register {
	border: 1px solid var(--mh-line) !important;
	border-radius: var(--mh-radius) !important;
	background: var(--mh-surface);
}

/* ---------------------------------------------------------------------------
 * Home page building blocks (block markup lives in the page, classes here).
 * ------------------------------------------------------------------------- */

.mh-card img {
	background: #ffffff;
	padding: 10px;
	box-sizing: border-box;
}

.mh-card h3 {
	font-size: 1.1em;
	margin: 0.2em 0 0.3em;
}

.mh-card p {
	color: var(--mh-muted);
	font-size: 0.92em;
	margin-bottom: 0.8em;
}

.mh-kicker {
	display: inline-block;
	color: var(--mh-blue-dark);
	background: var(--mh-accent-bg);
	border-radius: 999px;
	padding: 4px 14px;
	font-size: 0.8em;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.mh-step-num {
	margin-bottom: 0.5em;
}

.mh-trust {
	color: var(--mh-muted);
	font-size: 0.95em;
}

.mh-trust strong {
	color: var(--mh-ink);
	display: block;
	font-size: 1.05em;
	margin-bottom: 0.2em;
}

/* ---------------------------------------------------------------------------
 * Footer: dark ink panel.
 * ------------------------------------------------------------------------- */
.site-footer {
	background: var(--mh-ink);
	color: #c3cdd6;
}

.site-footer h4,
.site-footer .widget-title {
	color: #ffffff;
}

.site-footer a {
	color: #9fd1f0;
}

.site-footer a:hover {
	color: #ffffff;
}

.site-info {
	font-size: 0.85em;
	color: #8494a1;
}

/* ---------------------------------------------------------------------------
 * Mobile mercies.
 * ------------------------------------------------------------------------- */
@media ( max-width: 640px ) {
	.woocommerce-MyAccount-content .shop_table {
		display: block;
		overflow-x: auto;
		white-space: nowrap;
	}

	.site-branding img {
		max-height: 44px;
	}
}

/* The front page is composed of blocks; its literal page title is noise. */
.home.page .entry-header {
	display: none;
}

/* ---------------------------------------------------------------------------
 * Sketch v1.1 fixes after first staging review.
 * ------------------------------------------------------------------------- */
/* Storefront ships high-specificity button rules; out-rank them. */
.woocommerce-active .wp-block-button__link,
body .wp-block-button:not(.is-style-outline) .wp-block-button__link {
	background-color: var(--mh-blue) !important;
	color: #ffffff !important;
}

.woocommerce-active .wp-block-button:not(.is-style-outline) .wp-block-button__link:hover {
	background-color: var(--mh-blue-dark) !important;
}

body .wp-block-button.is-style-outline .wp-block-button__link {
	background: transparent !important;
	color: var(--mh-blue) !important;
	border: 2px solid var(--mh-blue) !important;
}

/* Hero photo: cap the height so the fold keeps its proportions. */

/* Cards: kill figure margins so images fill edge-to-edge uniformly. */
.mh-card figure {
	margin: 0;
}

.mh-card figure a {
	display: block;
}

/* ---------------------------------------------------------------------------
 * Footer — single legal bar (owner R8): © left, contact/policy links right.
 * The old column grid, contact block and description are gone.
 * ------------------------------------------------------------------------- */
.mh-footer-legal {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 12px 28px;
	padding: 22px 0;
	font-size: 0.9em;
}

.mh-footer-links {
	display: flex;
	flex-wrap: wrap;
	gap: 10px 26px;
}

/* ---------------------------------------------------------------------------
 * Audit 2026-07-20 fixes: stacked badges on product cards, MailPoet opt-in
 * removal fallback, filter/notice polish.
 * ------------------------------------------------------------------------- */
ul.products li.product .mh-badge {
	display: block;
	width: fit-content;
	margin: 0 auto 4px;
}

p.mailpoet-woocommerce-checkout-optin,
.wc-block-checkout__field.mailpoet-optin {
	display: none !important;
}

.woocommerce-info a {
	text-decoration: underline;
}

tr.mh-free-shipping-hint td {
	border-top: none;
	color: var(--mh-green-dark, #4e7c22);
}

/* ---------------------------------------------------------------------------
 * Catalog filter bar + category chips (inc/catalog-filters.php).
 * ------------------------------------------------------------------------- */
.mh-filterbar {
	display: flex;
	flex-wrap: wrap;
	gap: 10px 14px;
	align-items: flex-end;
	background: var(--mh-canvas);
	border: 1px solid var(--mh-line);
	border-radius: var(--mh-radius);
	padding: 14px 16px;
	margin-bottom: 1.4em;
}

.mh-filterbar__item {
	display: flex;
	flex-direction: column;
	gap: 4px;
	font-size: 0.8em;
	color: var(--mh-muted);
	font-weight: 600;
	min-width: 130px;
	flex: 1 1 130px;
	max-width: 220px;
}

.mh-filterbar__item select {
	border: 1px solid var(--mh-line);
	border-radius: var(--mh-radius-sm);
	background: var(--mh-surface);
	color: var(--mh-ink);
}

.mh-filterbar__toggle {
	flex-direction: row;
	align-items: center;
	gap: 8px;
	min-width: auto;
	flex: 0 0 auto;
	padding-bottom: 8px;
	cursor: pointer;
}

.mh-filterbar__clear {
	flex: 0 0 auto;
	font-size: 0.85em;
	font-weight: 600;
	color: var(--mh-warn);
	padding-bottom: 9px;
}

.mh-cat-chips {
	margin-bottom: 1.4em;
}

.mh-cat-chip {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: var(--mh-ink);
	font-size: 0.9em;
	text-decoration: none;
}

.mh-cat-chip:hover {
	background: var(--mh-accent-bg);
}

.mh-cat-chip__count {
	background: var(--mh-accent-bg);
	color: var(--mh-blue-dark);
	border-radius: 999px;
	padding: 1px 8px;
	font-size: 0.8em;
}

@media ( max-width: 600px ) {
	.mh-filterbar__item {
		max-width: none;
	}
}

/* ---------------------------------------------------------------------------
 * Design pass 2026-07-20 — "elegant, not boring": subtle gradients, depth,
 * and motion on the brand surfaces. Additive layer; tokens unchanged.
 * ------------------------------------------------------------------------- */

/* Hero: soft brand gradient + gentle entrance. */

/* Category cards: unified height, lift on hover. */
.mh-card {
	border: 1px solid var(--mh-line);
	border-radius: 14px;
	overflow: hidden;
	background: var(--mh-surface);
	transition: box-shadow 0.2s ease, transform 0.2s ease;
	height: 100%;
}

.mh-card:hover {
	box-shadow: var(--mh-shadow-lift);
	transform: translateY(-4px);
}

.mh-card img {
	aspect-ratio: 4 / 3;
	object-fit: cover;
	width: 100%;
	display: block;
}

/* Pre-order banner: quiet amber accent, distinct from commerce blue. */

/* Steps: numbered circles get brand gradient. */
.mh-steps {
	background: var(--mh-canvas);
	border-radius: 16px;
	border: 1px solid var(--mh-line);
}

.mh-step-num {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	background: linear-gradient(135deg, var(--mh-blue) 0%, var(--mh-green) 100%);
	color: #fff;
	font-weight: 800;
	font-size: 1.15em;
	box-shadow: var(--mh-shadow);
}

/* Brand strip: quiet, spaced, uppercase. */

/* Trust tiles. */
.mh-trust .wp-block-column {
	background: var(--mh-surface);
	border: 1px solid var(--mh-line);
	border-left: 4px solid var(--mh-green);
	border-radius: 12px;
	padding: 18px 20px;
}

.mh-trust p strong {
	display: block;
	margin-bottom: 4px;
	color: var(--mh-ink);
}

.mh-trust p {
	color: var(--mh-muted);
	font-size: 0.95em;
	margin: 0;
}

/* Section headings: subtle underline flourish. */
.home h2.has-text-align-center {
	position: relative;
	padding-bottom: 14px;
}

.home h2.has-text-align-center::after {
	content: "";
	position: absolute;
	left: 50%;
	bottom: 0;
	transform: translateX(-50%);
	width: 56px;
	height: 4px;
	border-radius: 999px;
	background: linear-gradient(90deg, var(--mh-blue), var(--mh-green));
}

/* Notices: brand-consistent info style. */
.woocommerce-info {
	border-top-color: var(--mh-blue);
	background: var(--mh-accent-bg);
	color: var(--mh-ink);
	border-radius: 0 0 var(--mh-radius-sm) var(--mh-radius-sm);
}

/* Pagination: pill buttons. */
.woocommerce-pagination ul.page-numbers {
	border: none;
}

.woocommerce-pagination ul.page-numbers li {
	border: none;
	margin: 0 3px;
}

.woocommerce-pagination ul.page-numbers li a,
.woocommerce-pagination ul.page-numbers li span {
	border-radius: 999px;
	min-width: 38px;
	padding: 8px 12px;
	border: 1px solid var(--mh-line);
}

.woocommerce-pagination ul.page-numbers li span.current {
	background: var(--mh-blue);
	color: #fff;
	border-color: var(--mh-blue);
}

/* MailPoet checkout opt-in: removed at the field level (plugin); this is the
 * belt-and-braces for whatever rendering path survives. */
p:has(> label > input[name="mailpoet_woocommerce_checkout_optin"]),
label:has(> input[name="mailpoet_woocommerce_checkout_optin"]),
input[name="mailpoet_woocommerce_checkout_optin"] {
	display: none !important;
}

/* Google sign-in button (medihub-core renders it under login/register). */
.mh-google-login {
	margin: 12px 0;
}

.mh-google-btn {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background: #fff !important;
	color: #3c4043 !important;
	border: 1px solid var(--mh-line) !important;
	font-weight: 600;
	box-shadow: none !important;
}

.mh-google-btn::before {
	content: "";
	width: 18px;
	height: 18px;
	background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 48 48"><path fill="%23EA4335" d="M24 9.5c3.5 0 6.6 1.2 9.1 3.6l6.8-6.8C35.9 2.4 30.3 0 24 0 14.6 0 6.4 5.4 2.5 13.3l7.9 6.1C12.3 13.2 17.7 9.5 24 9.5z"/><path fill="%234285F4" d="M46.1 24.5c0-1.6-.1-3.1-.4-4.5H24v9h12.4c-.5 2.9-2.1 5.3-4.6 7l7.1 5.5C43.3 37.5 46.1 31.6 46.1 24.5z"/><path fill="%23FBBC05" d="M10.4 28.6c-.5-1.5-.8-3-.8-4.6s.3-3.1.8-4.6l-7.9-6.1C.9 16.5 0 20.1 0 24s.9 7.5 2.5 10.7l7.9-6.1z"/><path fill="%2334A853" d="M24 48c6.3 0 11.6-2.1 15.5-5.7l-7.1-5.5c-2 1.3-4.5 2.1-8.4 2.1-6.3 0-11.7-3.7-13.6-9.9l-7.9 6.1C6.4 42.6 14.6 48 24 48z"/></svg>') no-repeat center / contain;
	flex: 0 0 auto;
}

.mh-google-btn:hover {
	background: var(--mh-canvas) !important;
	color: #3c4043 !important;
}

/* ---------------------------------------------------------------------------
 * Owner walkthrough fixes 2026-07-21: CTA banners as full clickable blocks,
 * active category chip, real clear-filters button, qty stepper, suborders.
 * ------------------------------------------------------------------------- */
.mh-cta-banner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	width: 100%;
	padding: 18px 22px;
	margin-bottom: 1.2em;
	text-decoration: none;
}

a.mh-cta-banner:hover {
	box-shadow: var(--mh-shadow-lift);
	transform: translateY(-2px);
}

.mh-cta-banner--blue {
	background: var(--mh-accent-bg);
	border: 1px solid var(--mh-line);
}

.mh-cta-banner__text {
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.mh-cta-banner__text strong {
	color: var(--mh-ink);
	font-size: 1.05em;
}

.mh-cta-banner__text span {
	color: var(--mh-muted);
	font-size: 0.92em;
}

.mh-cta-banner__arrow {
	flex: 0 0 auto;
	font-size: 1.6em;
	color: #9a3412;
	font-weight: 700;
}

.mh-cta-actions {
	display: flex;
	gap: 10px;
	flex: 0 0 auto;
	flex-wrap: wrap;
}

@media ( max-width: 640px ) {
	.mh-cta-banner {
		flex-direction: column;
		align-items: flex-start;
	}
}

.mh-cat-chip.is-active {
	pointer-events: none;
}

.mh-cat-chips {
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	padding-bottom: 4px;
	scrollbar-width: none;
}

.mh-cat-chips::-webkit-scrollbar {
	display: none;
}

.mh-cat-chip {
	white-space: nowrap;
}

.button.mh-filterbar__clear {
	background: var(--mh-warn);
	color: #fff;
	padding: 10px 18px;
	align-self: flex-end;
}

.button.mh-filterbar__clear:hover {
	background: #8f2425;
	color: #fff;
}

.mh-filterbar__note {
	background: var(--mh-accent-bg);
	border-left: 4px solid var(--mh-blue);
	padding: 10px 14px;
	border-radius: 0 var(--mh-radius-sm) var(--mh-radius-sm) 0;
	font-size: 0.88em;
	color: var(--mh-ink);
	margin: -0.6em 0 1.2em;
}

/* Quantity stepper. */
.mh-qty {
	display: inline-flex;
	align-items: stretch;
	border: 1px solid var(--mh-line);
	border-radius: var(--mh-radius-sm);
	overflow: hidden;
}

.mh-qty .qty {
	border: 0;
	width: 3.2em;
	text-align: center;
}

.mh-qty__btn {
	border: 0;
	width: 40px;
	font-size: 1.2em;
	font-weight: 700;
	cursor: pointer;
}

.mh-qty__btn:hover {
	background: var(--mh-accent-bg);
	color: var(--mh-blue);
}

/* Cabinet: per-company breakdown inside the parent order view. */
.mh-suborders {
	margin-top: 1.6em;
	background: var(--mh-canvas);
	border: 1px solid var(--mh-line);
	border-radius: var(--mh-radius);
	padding: 16px 20px;
}

.mh-suborders ul {
	margin: 0.4em 0 0;
	list-style: none;
}

.mh-suborders li {
	padding: 6px 0;
	border-bottom: 1px solid var(--mh-line);
}

.mh-suborders li:last-child {
	border-bottom: none;
}

/* Checkout: the store sells to Azerbaijan only (owner walkthrough
   2026-07-21) — a one-option country select is pure noise. The field
   stays in the DOM so its AZ value still submits. */
#billing_country_field,
#shipping_country_field {
	display: none;
}

/* Needle-type drawing inside the product attributes table. */
.mh-needle-drawing-wrap {
	display: block;
	margin-top: 6px;
}

img.mh-needle-drawing {
	max-height: 46px;
	width: auto;
	background: #fff;
	border: 1px solid var(--mh-line);
	border-radius: 6px;
	padding: 4px 10px;
}

/* Pre-order configurator: deliberately DIFFERENT from the stock catalog —
   amber frame, composed positions, editable list (owner walkthrough). */
.mh-configurator {
	--mh-preorder: #b45309;
	--mh-preorder-bg: #fffbeb;
	border: 2px solid #f59e0b;
	border-radius: var(--mh-radius);
	background: var(--mh-preorder-bg);
	padding: 20px;
	margin: 0 0 2em;
}

.mh-configurator--incomplete {
	animation: mh-shake 0.35s;
}

@keyframes mh-shake {
	25% { transform: translateX(-5px); }
	75% { transform: translateX(5px); }
}

.mh-configurator__builder h3,
.mh-configurator__list h3 {
	color: var(--mh-preorder);
	margin-top: 0.4em;
}

.mh-configurator__grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
	gap: 12px 16px;
}

.mh-configurator__grid label span,
.mh-configurator__grid label output {
	display: block;
	font-size: 0.85em;
	font-weight: 600;
	margin-bottom: 2px;
}

.mh-configurator__grid label output {
	font-weight: 400;
	padding: 8px 0;
}

.mh-configurator__grid select,
.mh-configurator__grid input {
	width: 100%;
}

/* Perf 2026-09-03: the payload-load failure notice with its retry button. */
.mh-configurator__error {
	margin: 0 0 14px;
	padding: 12px 14px;
	border-radius: var(--mh-radius-sm, 8px);
	background: var(--mh-warn-bg, #fdecea);
	color: var(--mh-warn, #b32d2e);
	font-size: 14px;
	display: flex;
	gap: 12px;
	align-items: center;
	flex-wrap: wrap;
}

.mh-configurator__error .button {
	margin: 0;
	padding: 6px 14px;
	font-size: 13px;
}

.mh-configurator__hint {
	color: var(--mh-preorder);
	font-size: 0.9em;
	margin: 0.6em 0;
}

.mh-configurator__needle img {
	max-height: 52px;
	background: #fff;
	border: 1px solid #f59e0b;
	border-radius: 6px;
	padding: 4px 12px;
}

.mh-configurator__add {
	background: var(--mh-preorder);
}

.mh-configurator__list table {
	background: #fff;
	margin: 0.6em 0 1em;
}

.mh-configurator__list td input[type="number"] {
	width: 5.5em;
}

.mh-configurator__remove {
	background: transparent;
	color: var(--mh-preorder);
	border: none;
	font-size: 1.3em;
	line-height: 1;
	padding: 2px 8px;
	cursor: pointer;
}

/* Pre-order lines inside the basket keep the amber identity. */
.mh-cart-item--preorder td {
	background: #fffbeb;
}

/* Mobile drawer: category sub-menu always expanded and visually nested;
   top-level items flush left (they looked like children of Mehsullar). */
.handheld-navigation ul.menu > li > a {
	font-weight: 600;
	padding-left: 0;
}

/* Round 13 — the drawer used to keep every sub-menu permanently open; with
   Brendlər also carrying children the panel became a wall of links, so it is
   an accordion now: tap the chevron to open (owner, 2026-08-01). */
.handheld-navigation ul.sub-menu {
	display: none !important;
	height: auto !important;
	margin: 0 0 0 0.4em;
}

.handheld-navigation li.menu-item-has-children.mh-open > ul.sub-menu {
	display: block !important;
}

.handheld-navigation li.menu-item-has-children > a {
	display: inline-block;
	width: calc(100% - 52px);
}

.mh-submenu-toggle {
	float: right;
	padding: 0;
	background: none;
	border: 0;
	font-size: 17px;
	color: inherit;
	cursor: pointer;
	transition: transform 0.15s;
}

.handheld-navigation ul.sub-menu li a {
	font-weight: 400;
	padding-left: 1.1em;
	border-left: 2px solid var(--mh-line);
}

.handheld-navigation .dropdown-toggle {
	display: none;
}

/* Loop cards: stepper + add-to-cart in one row. */
.mh-loop-buy {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	flex-wrap: wrap;
}

.mh-qty--loop {
	display: inline-flex;
	align-items: center;
}

.mh-qty--loop input.mh-loop-qty {
	width: 3.2em;
	text-align: center;
	-moz-appearance: textfield;
}

.mh-qty--loop input.mh-loop-qty::-webkit-outer-spin-button,
.mh-qty--loop input.mh-loop-qty::-webkit-inner-spin-button {
	-webkit-appearance: none;
}

/* Stock-cap note shown when + hits the limit. */
.mh-qty__note {
	display: none;
	flex-basis: 100%;
	font-size: 0.82em;
	color: #b45309;
	margin-top: 4px;
}

.mh-qty__note.is-visible {
	display: block;
}

/* Configurator v2: category picker + qty field + needle drawing sits
   directly under its select; filter-bar needle drawing likewise. */
.mh-configurator__cat {
	display: block;
	max-width: 340px;
	margin-bottom: 1em;
}

.mh-configurator__cat span {
	display: block;
	font-weight: 600;
	font-size: 0.9em;
	margin-bottom: 2px;
}

.mh-configurator__cat select {
	width: 100%;
}

.mh-configurator__qty {
	display: inline-block;
	margin: 0.5em 1em 0.5em 0;
}

.mh-configurator__qty span {
	display: block;
	font-size: 0.85em;
	font-weight: 600;
	margin-bottom: 2px;
}

.mh-configurator__qty input {
	width: 6em;
}

.mh-configurator__needle {
	margin: 6px 0 0;
}

.mh-filter-needle {
	display: block;
	margin-top: 4px;
}

/* Redrawn 256px pictograms — the old 28–41px bitmaps were unreadable, which
   is why the preview box looked empty (owner 2026-08-01). */
.mh-filter-needle img {
	max-height: 54px;
	background: #fff;
	border: 1px solid var(--mh-line);
	border-radius: 6px;
	padding: 4px 10px;
}

/* Checkout map picker (birmarket-style exact-location selection). */
.mh-map-pick-btn {
	display: inline-block;
	background: none;
	border: none;
	color: var(--mh-blue);
	font-weight: 600;
	padding: 6px 0 0;
	cursor: pointer;
	text-decoration: underline;
}

.mh-map-pick-status {
	margin-left: 10px;
	font-size: 0.9em;
	color: #6b7280;
}

.mh-map-pick-status.is-set {
	color: #1e7e34;
	font-weight: 600;
}

.mh-map-pick-hint {
	font-size: 0.85em;
	color: #6b7280;
	margin: 4px 0;
}

.mh-map-picker {
	width: 100%;
	height: 340px;
	margin-top: 6px;
	border: 1px solid var(--mh-line);
	border-radius: var(--mh-radius);
}

/* Staff cabinet (MediHub Idareetme). */
.mh-staff h3 {
	margin: 1.2em 0 0.5em;
}

.mh-staff-cards {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
	gap: 12px;
}

.mh-staff-card {
	display: block;
	background: var(--mh-canvas);
	border: 1px solid var(--mh-line);
	text-decoration: none;
	color: inherit;
}

.mh-staff-card strong {
	display: block;
}

.mh-staff-card.is-hot {
	border-color: #b45309;
	background: #fffbeb;
}

.mh-staff-table {
	width: 100%;
	font-size: 0.92em;
}

.mh-staff-table th {
	text-align: left;
}

.mh-staff-filters {
	flex-wrap: wrap;
	gap: 8px;
	align-items: center;
	margin-bottom: 1em;
}

.mh-staff-filters input[type="text"] {
	max-width: 150px;
}

.mh-badge--processing { background: #dbeafe; }
.mh-badge--completed { background: #dcfce7; }
.mh-badge--mh-seller-rev { background: #fef3c7; }
.mh-badge--mh-awaiting { background: #fde68a; }
.mh-badge--cancelled, .mh-badge--refunded { background: #fee2e2; }
.mh-badge--parent { background: #e5e7eb; }
.mh-badge--mode { background: #ede9fe; }

.mh-staff-notice {
	background: #dcfce7;
	border-radius: var(--mh-radius);
	padding: 10px 14px;
	margin-bottom: 1em;
}

.mh-staff-notice--err {
	background: #fee2e2;
}

.mh-staff-ok {
	color: #1e7e34;
	font-weight: 600;
}

.mh-staff-link code {
	word-break: break-all;
}

.mh-staff-actions {
	margin-top: 1.2em;
}

/* Owner 2026-09-04 (scr 51): the agent's stock-request picker. */
.mh-agd__pick {
	border: 1px solid var(--mh-line);
	border-radius: var(--mh-radius-sm);
	padding: 12px 14px;
	margin: 0 0 14px;
	background: #fff;
}

.mh-agd__pick-brands {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-bottom: 8px;
}

.mh-agd__brand.is-on {
	background: var(--mh-blue, #1a56c9) !important;
	color: #fff !important;
}

.mh-agd__pick-mode {
	margin: 6px 0 10px;
	display: flex;
	gap: 16px;
	font-size: 0.93em;
}

.mh-agd__pick-facets {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 12px;
	margin-bottom: 8px;
}

.mh-agd__facet {
	display: flex;
	flex-direction: column;
	gap: 2px;
	font-size: 0.9em;
	min-width: 140px;
}

.mh-agd__facet select {
	max-width: 220px;
}

.mh-agd__pick-title input {
	width: 100%;
	max-width: 460px;
	margin-bottom: 8px;
}

.mh-agd__pick-list {
	max-height: 320px;
	overflow: auto;
	border-top: 1px solid var(--mh-line);
}

.mh-agd__hit {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 10px;
	padding: 7px 4px;
	border-bottom: 1px solid var(--mh-line);
	font-size: 0.93em;
}

/* Owner 2026-09-18 (scr 3): what is left on the shelf is a figure the agent must not miss. */
.mh-agd__left {
	display: inline-block;
	margin-left: 6px;
	padding: 1px 8px;
	border-radius: 999px;
	background: #eef6ff;
	color: #1d4f91;
	font-size: 0.86em;
	font-weight: 600;
	white-space: nowrap;
}

.mh-agd__share--card {
	margin: 8px 0;
	padding: 8px 10px;
	background: #f4f9ff;
	border-radius: 8px;
	font-size: 0.93em;
}

.mh-agd__act--row {
	display: inline;
	margin: 0;
}

.mh-agd__row.is-pre {
	background: var(--mh-ok-bg, #e6f5ec);
}

/* Owner 2026-09-04 (scr 23): the return proposal the customer answers line by line. */
.mh-held-proposal {
	border: 1px solid #f3e1b6;
	background: #fffaf0;
	border-radius: var(--mh-radius-sm);
	padding: 14px 16px 6px;
	margin: 0 0 18px;
}

.mh-held-proposal h3 {
	margin: 0 0 6px;
	font-size: 1.05em;
}

.mh-held-proposal p {
	margin: 0 0 10px;
	font-size: 0.93em;
}

/* Owner 2026-09-04 (scr 3): the calm «Çatdırıldı» — an offer, not an alarm. */
.mh-vo__calm,
.mh-movements__calm {
	background: #fff !important;
	color: var(--mh-green-dark, #1d8a55) !important;
	border: 1px solid var(--mh-green, #2ba86a) !important;
	font-weight: 600;
}

.mh-vo__calm:hover,
.mh-movements__calm:hover {
	background: var(--mh-ok-bg, #e6f5ec) !important;
}

.mh-movements__op {
	display: inline;
	margin: 0;
}

.mh-vo__deliver p {
	margin: 6px 0 10px;
	font-size: 0.9em;
}

/* Owner 2026-09-04 (scr 6): the selection form on top of an awaiting order. */
.mh-vo__select {
	margin: 0 0 18px;
	padding: 16px 18px;
	border: 1px solid var(--mh-line);
	border-radius: var(--mh-radius-sm);
	background: #fff;
}

.mh-vo__select .mh-vo__cardh {
	display: block;
	margin-bottom: 8px;
}

/* Owner 2026-09-04 (scr 42–43): the YİĞİM confirmation line under the order's items. */
.mh-pay-line {
	margin: 4px 0 10px;
	padding: 8px 12px;
	border-radius: 8px;
	font-size: 0.93em;
}

.mh-pay-line--ok {
	background: var(--mh-ok-bg, #e6f5ec);
	color: var(--mh-green-dark, #1d8a55);
}

.mh-pay-line--wait {
	background: #fdf3df;
	color: #8a6116;
}

.mh-pay-line--back {
	background: #fff1f1;
	color: #9a2a26;
}

/* Owner 2026-09-04 (scr 24): the delivery pin as two copyable fields side by side. */
.mh-pin-chips {
	display: inline-flex;
	flex-wrap: wrap;
	gap: 8px;
	align-items: center;
	vertical-align: middle;
}

.mh-pin-chip {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	border: 1px solid var(--mh-line);
	border-radius: 8px;
	padding: 3px 6px 3px 9px;
	background: #fff;
	line-height: 1.3;
}

.mh-pin-chip small {
	color: var(--mh-muted);
	font-size: 0.78em;
	text-transform: uppercase;
	letter-spacing: 0.02em;
}

.mh-pin-chip code {
	font-size: 0.95em;
	background: none;
	padding: 0;
	color: var(--mh-ink, #1f2937);
}

.mh-pin-copy {
	border: 0;
	background: var(--mh-accent-bg, #eef4ff);
	color: var(--mh-blue, #1a56c9);
	border-radius: 6px;
	padding: 2px 7px;
	cursor: pointer;
	font-size: 0.95em;
	line-height: 1.4;
}

.mh-pin-copy:hover {
	filter: brightness(0.95);
}

.mh-pin-open {
	font-size: 0.9em;
}

.mh-pin-row {
	margin: 4px 0 8px;
}

/* Owner 2026-09-04 (scr 13): the action buttons wrapped on top of each other in the
   card's narrow column — one wrapping row with a real gap. */
.mh-staff-actions form {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 10px;
	align-items: center;
}

.mh-staff-actions .mh-staff-warn {
	flex-basis: 100%;
	margin: 0 0 4px;
}

.mh-danger,
.button.mh-danger,
.mh-staff-inline-form .button.mh-danger {
	background: #b32d2e;
	border-color: #b32d2e;
	color: #fff;
}

.button.mh-danger:hover,
.mh-staff-inline-form .button.mh-danger:hover {
	background: #8f2223;
	border-color: #8f2223;
	color: #fff;
}

.mh-serial-select {
	display: block;
	margin-bottom: 4px;
	max-width: 220px;
}

.mh-staff-pager {
	margin-top: 1em;
	display: flex;
	gap: 8px;
	align-items: center;
}

.mh-staff-list li {
	padding: 3px 0;
}

.mh-no-line input[type="text"] {
	max-width: 220px;
}

@media (max-width: 768px) {
	.mh-staff-table {
		display: block;
		overflow-x: auto;
	}
}

/* Staff cabinet v1.5: dense register + serial state + inline edits. */
.mh-staff-table--dense {
	font-size: 0.88em;
}

.mh-staff-table--dense td,
.mh-staff-table--dense th {
	vertical-align: middle;
}

.mh-staff-table--dense .button {
	padding: 4px 12px;
}

.mh-nowrap {
	white-space: nowrap;
}

.mh-muted {
	color: #6b7280;
}

/* .mh-warn is the tiny «!» circle for ONE character (missing-serial marks) —
   never wrap text or amounts in it: stretched, it becomes an unreadable red
   oval (owner 2026-08-28). Use .mh-alert-line for sentences and
   .mh-amount-due for money figures. */
.mh-warn {
	display: inline-block;
	min-width: 18px;
	text-align: center;
	border-radius: 50%;
	background: #b32d2e;
	color: #fff;
	font-weight: 700;
}

.mh-warn--soft {
	background: #b45309;
}

.mh-alert-line {
	display: block;
	background: #fdecea;
	color: #8a1f1f;
	border-left: 3px solid #d9534f;
	border-radius: 6px;
	padding: 8px 12px;
	margin: 6px 0;
	line-height: 1.5;
}

.mh-amount-due {
	color: #b3312d;
	font-weight: 700;
}

.mh-staff-filters {
	display: block;
}

.mh-staff-filters__row {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-bottom: 8px;
	align-items: center;
}

.mh-serial-unit {
	display: block;
	margin-bottom: 4px;
}

.mh-serial-warn {
	color: #b32d2e;
	font-weight: 600;
	font-size: 0.85em;
}

.mh-serial-edit,
.mh-pen {
	background: none;
	border: none;
	cursor: pointer;
	color: var(--mh-blue);
	padding: 0 4px;
}

.mh-staff-inline-form {
	background: var(--mh-canvas);
	border: 1px solid var(--mh-line);
	border-radius: var(--mh-radius);
	padding: 10px 14px;
	margin: 10px 0;
}

/* Customer-holdings clock states. */
.mh-row-overdue td {
	background: #fee2e2;
}

.mh-row-soon td {
	background: #fef3c7;
}

/* Anbar round 2: filtered totals strip + clickable rows + editable detail. */
.mh-staff-totals {
	background: #f0f9ff;
	border: 1px solid var(--mh-line);
	border-radius: var(--mh-radius);
	padding: 8px 12px;
}

.mh-staff-table--clickable tbody tr {
	cursor: pointer;
}

.mh-staff-table--clickable tbody tr:hover td {
	background: #eff6ff;
}

.mh-staff-edit th {
	text-align: left;
	width: 180px;
}

/* Discount table: struck original prices + whole-order separator row. */
.mh-staff-table del {
	color: #9ca3af;
}

/* Staff desk map pin picker. */
#mh-staff-map {
	max-width: 640px;
	height: 320px;
	margin: 8px 0;
	border-radius: var(--mh-radius);
}

/* Round 3: staff cabinet layout — menu on TOP, content full width, every
   table inside a horizontal scroll container (no more page overflow). */
body.mh-staff-cabinet .col-full {
	max-width: min(1800px, 97vw);
}

body.mh-staff-cabinet .woocommerce-MyAccount-navigation,
body.mh-staff-cabinet .woocommerce-MyAccount-content {
	float: none !important;
	width: 100% !important;
}

body.mh-staff-cabinet .woocommerce-MyAccount-navigation ul {
	display: flex;
	flex-wrap: wrap;
	margin: 0 0 18px;
	padding: 0 0 0.4em;
	border-bottom: 2px solid var(--mh-line);
}

body.mh-staff-cabinet .woocommerce-MyAccount-navigation li {
	list-style: none;
	margin: 0;
	border: 0;
}

body.mh-staff-cabinet .woocommerce-MyAccount-navigation li a {
	display: block;
	padding: 7px 13px;
	border-radius: 8px;
	line-height: 1.2;
}

body.mh-staff-cabinet .woocommerce-MyAccount-navigation li.is-active a {
	background: #0e7490;
	color: #fff;
}

.mh-scroll {
	overflow-x: auto;
	max-width: 100%;
}

.mh-scroll > table {
	min-width: 100%;
	margin-bottom: 6px;
}

/* Round 4: distinctive zebra rows + unmistakable clickable-row hover. */

.mh-staff-table tbody tr[data-mh-href] {
	cursor: pointer;
}

.mh-staff-table tbody tr[data-mh-href]:hover td {
	background: #dbeafe !important;
	box-shadow: inset 0 -1px 0 #93c5fd;
}

/* KPI tiles (replace the plain totals line). */
.mh-kpis {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin: 10px 0 14px;
}

.mh-kpi {
	display: flex;
	flex-direction: column;
	min-width: 130px;
	padding: 10px 16px;
	background: linear-gradient(180deg, #f0f9ff 0%, #e0f2fe 100%);
	border: 1px solid #bae6fd;
	border-radius: 10px;
}

.mh-kpi__value {
	font-size: 1.25em;
	font-weight: 700;
	color: #0c4a6e;
	white-space: nowrap;
}

.mh-kpi__label {
	font-size: 0.78em;
	color: #64748b;
	margin-top: 2px;
}

/* Combobox filter row under the column titles. */
.mh-filter-row th {
	padding: 2px 4px;
	background: #f8fafc;
	position: relative;
}

/* Excel-style multi-select panel under a filter box. */
.mh-ft-panel {
	position: absolute;
	top: 100%;
	left: 0;
	z-index: 60;
	min-width: 200px;
	background: #fff;
	border: 1px solid #cbd5e1;
	border-radius: 8px;
	box-shadow: 0 10px 26px rgba(2, 6, 23, 0.18);
	padding: 6px;
	text-align: left;
}

.mh-ft-panel__body {
	max-height: 240px;
	overflow: auto;
}

.mh-ft-panel__body label {
	display: flex;
	align-items: center;
	gap: 6px;
	font-size: 0.85em;
	font-weight: 400;
	padding: 2px 4px;
	margin: 0;
	white-space: nowrap;
	cursor: pointer;
}

.mh-ft-panel__body label:hover {
	background: #f1f5f9;
}

.mh-ft-panel__all {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	gap: 6px;
	font-size: 0.85em;
	font-weight: 600;
	text-align: left;
	padding: 2px 4px;
	margin: 0 0 2px;
	border-bottom: 1px solid #e2e8f0;
	cursor: pointer;
}

/* The master checkbox must sit in the SAME column as the option
   checkboxes below it (owner round 9: it floated apart). min-width
   beats .mh-filter-row input's 64px floor — the actual culprit that
   stretched every panel checkbox 4x wide. */
.mh-ft-panel__all input[type="checkbox"],
.mh-ft-panel__body label input[type="checkbox"] {
	flex: 0 0 auto;
	width: 16px;
	min-width: 16px;
	height: 16px;
	margin: 0;
}

.mh-ft-panel__all span,
.mh-ft-panel label {
	float: none;
	width: auto;
}

/* Round 9: the two monthly charts stack in the LEFT column, Top-10
   fills the right — no dead space, every chart bigger. */
.mh-charts-flex {
	display: grid;
	grid-template-columns: minmax(0, 3fr) minmax(0, 2fr);
	gap: 14px;
	margin-bottom: 14px;
}

.mh-charts-left,
.mh-charts-right {
	display: flex;
	flex-direction: column;
	gap: 14px;
	min-width: 0;
}

/* R11: two stacked Top-10 cards share the right column evenly. */
.mh-charts-right .mh-co-card {
	flex: 1;
}

.mh-charts-flex .mh-co-card {
	margin: 0;
}

.mh-charts-flex .mh-chart {
	width: 100%;
	height: auto;
}

@media (max-width: 900px) {
	.mh-charts-flex {
		grid-template-columns: 1fr;
	}
}

.mh-ft-panel__foot {
	display: flex;
	gap: 6px;
	padding-top: 6px;
	border-top: 1px solid #e2e8f0;
	margin-top: 4px;
}

.mh-ft-panel__foot .button {
	padding: 2px 10px;
	font-size: 0.8em;
}

.mh-filter-row input {
	width: 100%;
	min-width: 64px;
	font-size: 0.85em;
	padding: 3px 5px;
	border-radius: 6px;
}

/* ------------------------------------------------------------------ */
/* Cabinet polish round (owner list 2026-07-23, items 2/8/14/23/24).  */

/* Item 2 — staff menu: breathing room, chip look, one icon per page
   instead of Storefront's same-glyph-everywhere. */
body.mh-staff-cabinet .woocommerce-MyAccount-navigation ul {
	gap: 6px 8px;
}

body.mh-staff-cabinet .woocommerce-MyAccount-navigation li a {
	background: #f1f5f9;
	border: 1px solid #e2e8f0;
}

body.mh-staff-cabinet .woocommerce-MyAccount-navigation li a:hover {
	background: #e0f2fe;
	border-color: #bae6fd;
}

body.mh-staff-cabinet .woocommerce-MyAccount-navigation li.is-active a {
	border-color: #0e7490;
}

body.mh-staff-cabinet .woocommerce-MyAccount-navigation li a::before {
	content: none;
}

body.mh-staff-cabinet li.woocommerce-MyAccount-navigation-link--idare a::before { content: '📊 '; }
body.mh-staff-cabinet li.woocommerce-MyAccount-navigation-link--idare-sifarisler a::before { content: '📋 '; }
body.mh-staff-cabinet li.woocommerce-MyAccount-navigation-link--idare-yeni a::before { content: '➕ '; }
body.mh-staff-cabinet li.woocommerce-MyAccount-navigation-link--idare-anbar a::before { content: '📦 '; }
body.mh-staff-cabinet li.woocommerce-MyAccount-navigation-link--idare-medaxil a::before { content: '📥 '; }
body.mh-staff-cabinet li.woocommerce-MyAccount-navigation-link--idare-musteri-anbarlari a::before { content: '🏥 '; }
body.mh-staff-cabinet li.woocommerce-MyAccount-navigation-link--idare-agent a::before { content: '💼 '; }
body.mh-staff-cabinet li.woocommerce-MyAccount-navigation-link--idare-musteriler a::before { content: '📈 '; }
body.mh-staff-cabinet li.woocommerce-MyAccount-navigation-link--idare-musteri-siyahisi a::before { content: '👥 '; }
body.mh-staff-cabinet li.woocommerce-MyAccount-navigation-link--idare-senedler a::before { content: '📑 '; }
body.mh-staff-cabinet li.woocommerce-MyAccount-navigation-link--idare-jurnal a::before { content: '📖 '; }

/* Confirmed-token row in the Sənədlər evidence table. */
.mh-staff-table tbody tr.mh-row-ok td {
	background: #dcfce7;
}

/* R11: goods expiring within a year — red for staff eyes. */
.mh-staff-table tbody tr.mh-exp-soon td {
	color: #b32d2e;
	font-weight: 600;
}

/* Satış statistikası charts (R7): inline SVG months + horizontal top-10. */
.mh-chart {
	width: 100%;
	height: auto;
	display: block;
}

.mh-hbar {
	display: flex;
	align-items: center;
	gap: 8px;
	margin: 4px 0;
	font-size: 0.85em;
}

.mh-hbar__label {
	flex: 0 0 180px;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.mh-hbar__track {
	flex: 1;
	background: #eef2f7;
	border-radius: 6px;
	height: 14px;
	overflow: hidden;
}

.mh-hbar__fill {
	display: block;
	height: 100%;
	background: linear-gradient(90deg, #1789d6, #76b93e);
	border-radius: 6px;
}

.mh-hbar__value {
	flex: 0 0 90px;
	text-align: right;
	white-space: nowrap;
	color: #334155;
}
body.mh-staff-cabinet li.woocommerce-MyAccount-navigation-link--customer-logout a::before { content: '🚪 '; }

/* Item 8 — filter panel: sheet-style checkbox column, tidy range row. */
.mh-ft-panel__body label input[type="checkbox"] {
	flex: 0 0 auto;
	width: 15px;
	height: 15px;
	margin: 0;
}

.mh-ft-panel__body label {
	overflow: hidden;
	text-overflow: ellipsis;
	max-width: 320px;
}

.mh-ft-panel__range {
	display: flex;
	gap: 6px;
	align-items: center;
	padding-top: 6px;
	border-top: 1px solid #e2e8f0;
	margin-top: 4px;
}

.mh-ft-panel__range input {
	width: 76px;
	font-size: 0.85em;
	padding: 3px 5px;
}

.mh-ft-panel__range .button {
	padding: 2px 10px;
	font-size: 0.8em;
}

/* Item 14 — zebra you can actually see + a header row that reads as one. */
.mh-staff-table td {
	border-bottom: 1px solid #e5eaf0;
}

.mh-staff-table thead th {
	background: #f1f5f9;
	border-bottom: 2px solid #cbd5e1;
}

.mh-staff-table tbody tr:nth-child(odd) td {
	background: #fff;
}

.mh-staff-table tbody tr:nth-child(even) td {
	background: #e9eef5;
}

/* The clock tints must beat the zebra (they carry meaning). */
.mh-staff-table tbody tr.mh-row-overdue td {
	background: #fee2e2;
}

.mh-staff-table tbody tr.mh-row-soon td {
	background: #fef3c7;
}

/* Item 23 — queue/alert cards share the KPI tiles' geometry. */
.mh-staff-card {
	padding: 10px 16px;
	border-radius: 10px;
}

.mh-staff-card strong {
	font-size: 1.35em;
	color: #0c4a6e;
}

.mh-staff-card span {
	font-size: 0.85em;
	color: #64748b;
}

.mh-staff-card.is-hot strong {
	color: #b45309;
}

/* Items 23/25/26 — Panel: one bordered card per company, captioned
   week/year clusters inside. */
.mh-co-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(290px, 1fr));
	gap: 14px;
	align-items: start;
}

.mh-co-card {
	background: #fff;
	border: 1px solid var(--mh-line);
	border-radius: 12px;
	padding: 12px 16px;
}

.mh-co-card h4 {
	margin: 0 0 8px;
	font-size: 1.02em;
	color: #0c4a6e;
	border-bottom: 1px solid #e2e8f0;
	padding-bottom: 6px;
}

.mh-co-card .mh-kpis {
	margin: 6px 0 4px;
	gap: 8px;
}

.mh-co-card .mh-kpi {
	min-width: 110px;
	padding: 8px 12px;
}

/* Items 15/17 — bulk-select column. */
.mh-staff-table .mh-check-col {
	width: 30px;
	text-align: center;
}

.mh-staff-table .mh-check-col input {
	margin: 0;
	width: 15px;
	height: 15px;
}

/* Item 24 — hover highlights the whole row / box, storewide. */
.site-content table tbody tr:hover > td {
	background: #eff6ff;
}

.mh-staff-card,
.mh-kpi,
.mh-co-card {
	transition: box-shadow 0.15s ease, border-color 0.15s ease, transform 0.15s ease;
}

.mh-staff-card:hover,
.mh-co-card:hover {
	border-color: #7cc0ee;
	box-shadow: 0 4px 14px rgba(23, 137, 214, 0.18);
}

a.mh-staff-card:hover {
	transform: translateY(-1px);
}

.mh-kpi:hover {
	border-color: #7cc0ee;
}

/* Round 9 — AI advisor widgets (public bubble + staff helper). */
.mh-ai {
	position: fixed;
	right: 18px;
	bottom: 18px;
	z-index: 99990;
	font-size: 14px;
}

/* Round 10 — prominent pill FAB: sparkle-chat icon + label + pulse. */
.mh-ai__fab {
	position: relative;
	display: inline-flex;
	align-items: center;
	gap: 9px;
	height: 56px;
	padding: 0 20px 0 16px;
	border-radius: 999px;
	border: 0;
	cursor: pointer;
	box-shadow: 0 6px 20px rgba(14, 116, 190, 0.45);
	background: linear-gradient(135deg, #1789d6 0%, #0ea5e9 60%, #38bdf8 100%);
	color: #fff;
	line-height: 1;
	transition: transform 0.15s ease, box-shadow 0.15s ease;
}

.mh-ai__fab:hover {
	transform: translateY(-2px) scale(1.03);
	box-shadow: 0 10px 26px rgba(14, 116, 190, 0.55);
	color: #fff;
}

.mh-ai__fab::before {
	content: "";
	position: absolute;
	inset: -5px;
	border-radius: 999px;
	border: 2px solid rgba(23, 137, 214, 0.55);
	animation: mh-ai-pulse 2.6s ease-out infinite;
	pointer-events: none;
}

.mh-ai--staff .mh-ai__fab::before {
	border-color: rgba(30, 41, 59, 0.5);
}

@keyframes mh-ai-pulse {
	0% { transform: scale(0.92); opacity: 0.9; }
	70% { transform: scale(1.14); opacity: 0; }
	100% { transform: scale(1.14); opacity: 0; }
}

.mh-ai__fab svg {
	flex: 0 0 auto;
	filter: drop-shadow(0 1px 1px rgba(0, 0, 0, 0.2));
}

.mh-ai__fab-label {
	font-size: 15px;
	font-weight: 700;
	letter-spacing: 0.01em;
	white-space: nowrap;
}

.mh-ai--staff .mh-ai__fab {
	background: linear-gradient(135deg, #0f172a 0%, #1e293b 55%, #334155 100%);
	box-shadow: 0 6px 20px rgba(15, 23, 42, 0.5);
}

.mh-ai--staff .mh-ai__fab:hover {
	box-shadow: 0 10px 26px rgba(15, 23, 42, 0.6);
}

@media (max-width: 600px) {
	.mh-ai__fab {
		height: 54px;
		width: 54px;
		padding: 0;
		justify-content: center;
	}

	.mh-ai__fab-label {
		display: none;
	}
}

.mh-ai__panel {
	position: absolute;
	right: 0;
	bottom: 64px;
	width: min(360px, calc(100vw - 36px));
	max-height: min(560px, calc(100vh - 120px));
	/* Owner 2026-10-04 (scr 20–27): on the iPhone 100vh is the toolbar-HIDDEN
	   height, so with the toolbar shown a tall panel's head — and its close
	   button — went under the browser's address bar. 100svh is the
	   toolbar-shown height; 219 = the panel's own lift on a phone (86 bubble
	   + 64) + the 61px sticky phone header + 8px air, and the bubble rides
	   env() now, so the panel does too. The vh line above stays for iOS
	   older than 15.4 (no svh). */
	max-height: min(560px, calc(100svh - 219px - env(safe-area-inset-bottom, 0px)));
	display: flex;
	flex-direction: column;
	background: #fff;
	border: 1px solid #cbd5e1;
	border-radius: 12px;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.25);
	overflow: hidden;
}

.mh-ai__panel[hidden] {
	display: none;
}

.mh-ai__head {
	background: #1789d6;
	color: #fff;
	font-weight: 600;
	padding: 10px 12px;
	display: flex;
	align-items: center;
	gap: 8px;
}

.mh-ai--staff .mh-ai__head {
	background: #1e293b;
}

.mh-ai__tag {
	font-size: 0.75em;
	font-weight: 500;
	background: rgba(255, 255, 255, 0.2);
	border-radius: 999px;
	padding: 1px 8px;
}

.mh-ai__close {
	margin-left: auto;
	background: none;
	border: 0;
	color: #fff;
	font-size: 20px;
	cursor: pointer;
	padding: 0 4px;
	line-height: 1;
}

.mh-ai__log {
	flex: 1 1 auto;
	overflow-y: auto;
	padding: 12px;
	display: flex;
	flex-direction: column;
	gap: 8px;
	min-height: 140px;
	background: #f8fafc;
}

.mh-ai__msg {
	max-width: 88%;
	padding: 8px 11px;
	border-radius: 10px;
	line-height: 1.45;
	white-space: normal;
	word-wrap: break-word;
}

.mh-ai__msg--user {
	align-self: flex-end;
	background: #1789d6;
	color: #fff;
	border-bottom-right-radius: 3px;
}

.mh-ai--staff .mh-ai__msg--user {
	background: #334155;
}

.mh-ai__msg--assistant {
	align-self: flex-start;
	background: #fff;
	border: 1px solid #e2e8f0;
	border-bottom-left-radius: 3px;
	color: #0f172a;
}

.mh-ai__msg--assistant em {
	color: #64748b;
	font-size: 0.85em;
}

.mh-ai__bar {
	display: flex;
	gap: 6px;
	padding: 8px;
	border-top: 1px solid #e2e8f0;
	background: #fff;
}

.mh-ai__bar textarea {
	flex: 1 1 auto;
	resize: none;
	border: 1px solid #cbd5e1;
	border-radius: 8px;
	padding: 7px 9px;
	font: inherit;
	min-height: 38px;
}

.mh-ai__send {
	border: 0;
	border-radius: 8px;
	background: #1789d6;
	color: #fff;
	padding: 0 14px;
	font-size: 16px;
	cursor: pointer;
}

.mh-ai--staff .mh-ai__send {
	background: #1e293b;
}

.mh-ai__pdf {
	padding: 10px 12px;
	border-bottom: 1px solid #e2e8f0;
	background: #f0fdf4;
	font-size: 0.9em;
}

.mh-ai__pdf-out {
	max-height: 160px;
	overflow: auto;
	margin-top: 6px;
}

.mh-ai__pdf-out table {
	border-collapse: collapse;
	font-size: 0.85em;
	width: 100%;
}

.mh-ai__pdf-out th,
.mh-ai__pdf-out td {
	border: 1px solid #d1d5db;
	padding: 2px 5px;
	text-align: left;
}

@media (max-width: 600px) {
	.mh-ai {
		right: 10px;
		bottom: 10px;
	}
}

/* Round 12 — AZ file-pick button in the AI helper (native strings are
   browser-locale and cannot be translated). */
.mh-ai__file-btn,
.mh-file-btn {
	display: inline-block;
	background: #1e293b;
	color: #fff;
	border-radius: 8px;
	padding: 5px 12px;
	font-size: 0.9em;
	font-weight: 600;
	cursor: pointer;
	margin: 4px 0;
}

.mh-ai__file-btn:hover,
.mh-file-btn:hover {
	background: #334155;
}

input[type="file"].mh-file-input {
	/* Visually hidden but still FOCUSABLE. `hidden` would make a required
	   empty file input unfocusable, and the browser then refuses to submit
	   with no message at all - the form just appears dead. */
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0 0 0 0);
	clip-path: inset(50%);
	white-space: nowrap;
	border: 0;
}

.mh-file-label {
	font-weight: 600;
	margin-right: 6px;
}

.mh-ai__file-name,
.mh-file-name {
	font-size: 0.85em;
	color: #475569;
	font-style: italic;
}

/* Round 12 — top-right user chip with hover dropdown (çıxış lives here now). */
.mh-user-chip {
	position: fixed;
	top: 14px;
	right: 16px;
	z-index: 99991;
}

body.admin-bar .mh-user-chip {
	top: 44px;
}

.mh-user-chip__btn {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background: #fff;
	border: 1px solid #cbd5e1;
	border-radius: 999px;
	padding: 4px 12px 4px 5px;
	cursor: pointer;
	box-shadow: 0 2px 8px rgba(15, 23, 42, 0.12);
	font-size: 13px;
	color: #0f172a;
}

.mh-user-chip__avatar {
	width: 28px;
	height: 28px;
	border-radius: 50%;
	background: linear-gradient(135deg, #1789d6, #38bdf8);
	color: #fff;
	font-weight: 700;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.mh-user-chip__menu {
	position: absolute;
	right: 0;
	top: calc(100% + 6px);
	min-width: 190px;
	background: #fff;
	border: 1px solid #cbd5e1;
	border-radius: 10px;
	box-shadow: 0 8px 24px rgba(15, 23, 42, 0.2);
	display: none;
	flex-direction: column;
	overflow: hidden;
}

/* Owner 2026-08-05: hovering must survive the trip from the button into the
   menu. The halo makes "close to the chip/menu" count as still hovering (it
   also bridges the 6px gap); nav.js adds a grace timer before closing. */
.mh-user-chip::before {
	content: "";
	position: absolute;
	inset: -14px;
}

.mh-user-chip:hover .mh-user-chip__menu,
.mh-user-chip.is-open .mh-user-chip__menu,
.mh-user-chip:focus-within .mh-user-chip__menu {
	display: flex;
}

.mh-user-chip__menu a {
	padding: 9px 14px;
	color: #0f172a;
	text-decoration: none;
	font-size: 13px;
}

.mh-user-chip__menu a:hover {
	background: #eff6ff;
}

/* Owner 2026-08-27 (scr 10): a filled basket lights up the second an item
   lands — the entry is a cart fragment; is-filled arrives with the count. */
.mh-user-chip__menu a.mh-user-chip__cart.is-filled {
	color: #0f766e;
	font-weight: 600;
}

.mh-user-chip__logout {
	border-top: 1px solid #e2e8f0;
	color: #b91c1c !important;
}
/* Owner 2026-10-20: «⏻» (U+23FB) is missing from many phone/Windows fonts and drew a «no glyph» box before «Çıxış» —
   now an inline SVG (the cabinet home's logout icon), sized to the text. */
.mh-user-chip__logout .mh-user-chip__logout-ico { width: 1em; height: 1em; vertical-align: -0.125em; flex: none; }

@media (max-width: 768px) {
	.mh-user-chip__name {
		display: none;
	}
}

/* R7 (owner): one header row. For logged-in users the chip replaces the
   header cart and account button (Səbət and Bildirişlər live in the chip
   menu); the bell BUTTON is hidden everywhere — its dropdown opens from
   the chip's Bildirişlər entry (the .mh-bell container keeps anchoring
   the menu top-right). */
.mh-bell__btn {
	display: none !important;
}

.mh-user-chip__notif {
	display: flex;
	align-items: center;
	gap: 6px;
	width: 100%;
	background: none;
	border: 0;
	padding: 9px 14px;
	font-size: 13px;
	color: #0f172a;
	cursor: pointer;
	text-align: left;
}

.mh-user-chip__notif:hover {
	background: #eff6ff;
}

/* Owner 2026-08-30: unread notifications LIGHT UP the entry — count in the
   label («Bildirişlər (3)»), teal + weight like the filled Səbət — instead of
   the old red pill. The avatar badge above keeps its amber look (variant A). */
.mh-user-chip__notif.is-lit {
	color: #0f766e;
	font-weight: 600;
	background: #f0fdfa;
}

.mh-user-chip__ncount {
	white-space: pre;
}

@media (min-width: 66.5em) {
	.mh-user-chip {
		top: 11px;
		right: 24px;
	}

	body.admin-bar .mh-user-chip {
		top: 46px;
	}

	.logged-in .site-header .site-header-cart,
	.logged-in .site-header .mh-header-account {
		display: none !important;
	}

	/* reserve the chip's full footprint (right:24 + ~170px chip + gap) so
	   the search lands between Əlaqə and the chip, never behind it */
	.logged-in .site-header .col-full {
		padding-right: 224px;
	}
}

/* Round 12 — procurement funnel on Mədaxil. */
.mh-proc {
	border: 1px solid #cbd5e1;
	border-radius: 10px;
	padding: 10px 14px;
	margin-bottom: 18px;
	background: #f8fafc;
}

.mh-proc > summary {
	cursor: pointer;
	font-size: 1.05em;
}

.mh-proc__step {
	margin: 10px 0;
	border: 1px solid #e2e8f0;
	border-radius: 8px;
	padding: 8px 12px;
	background: #fff;
}

.mh-proc__step > summary {
	cursor: pointer;
}

.mh-badge {
	display: inline-block;
	min-width: 20px;
	text-align: center;
	background: #1789d6;
	color: #fff;
	border-radius: 999px;
	font-size: 0.78em;
	padding: 1px 7px;
	font-weight: 700;
}

.mh-proc__confirm {
	background: #fffbeb;
	border: 1px solid #fcd34d;
	border-radius: 8px;
	padding: 10px 12px;
	margin: 6px 0;
}

/* Round 13 — frozen title rows in every cabinet table. The scroll box
   caps height so the sticky header always has something to stick to. */
.mh-scroll {
	max-height: 78vh;
	overflow: auto;
}

.mh-staff-table thead tr:first-child th {
	position: sticky;
	top: 0;
	z-index: 4;
	background: #f8fafc;
	box-shadow: 0 1px 0 #cbd5e1;
}

.mh-staff-table thead tr.mh-filter-row th {
	position: sticky;
	top: 34px;
	z-index: 3;
	background: #fff;
	box-shadow: 0 1px 0 #e2e8f0;
}

/* Round 13 — uniform panel section headings. */
.mh-panel-h {
	font-size: 1.15em;
	font-weight: 700;
	color: #0f172a;
	margin: 22px 0 10px;
	padding-bottom: 4px;
	border-bottom: 2px solid #e2e8f0;
}

/* Round 15 — expiring products: Altis left, Virtus right. */
.mh-exp-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 14px 18px;
	align-items: start;
}

.mh-exp-co {
	break-inside: avoid;
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 10px;
	padding: 10px 14px;
	margin: 0 0 14px;
	display: inline-block;
	width: 100%;
	box-sizing: border-box;
}

.mh-exp-co h4 {
	margin: 2px 0 6px;
}

.mh-exp-cap {
	font-size: 0.82em;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: #64748b;
	margin: 10px 0 4px;
}

.mh-exp-table {
	width: 100%;
}

.mh-exp-row {
	cursor: pointer;
}

@media (max-width: 900px) {
	.mh-exp-grid {
		grid-template-columns: 1fr;
	}
}

/* Round 13 — company cards are links now; keep the card look. */
a.mh-co-card {
	display: block;
	color: inherit;
	text-decoration: none;
}

/* Round 13 — staff see the floating chip; the theme's static header
   account button duplicates it. */
body.mh-staff-user .mh-header-account {
	display: none;
}

/* Round 13 — reorder alert: stock covers under 4 months of sales. */
.mh-staff-table tr.mh-reorder-hot > td {
	background: #fee2e2;
}

/* Round 13 — price-list embed frame. */
.mh-price-frame {
	position: relative;
	width: 100%;
	max-width: 1000px;
	height: 70vh;
	border: 1px solid #cbd5e1;
	border-radius: 10px;
	overflow: hidden;
	margin: 8px 0;
}

.mh-price-frame iframe {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	border: 0;
}

/* Round 15 — configurator cascade note + reset, catalog manual add. */
.mh-configurator__reset {
	background: none;
	border: 1px solid #cbd5e1;
	border-radius: 6px;
	padding: 2px 10px;
	margin-left: 8px;
	cursor: pointer;
	font-size: 0.92em;
}

.mh-configurator__reset:hover {
	background: #fee2e2;
	border-color: #fca5a5;
}

.mh-cat-add {
	margin: 14px 0;
}

.mh-cat-add__grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(170px, 1fr));
	gap: 10px;
	margin: 10px 0;
}

.mh-cat-add__grid label span {
	display: block;
	font-size: 0.82em;
	font-weight: 700;
	margin-bottom: 3px;
}

.mh-cat-add__grid input {
	width: 100%;
}

/* Round 18 — WhatsApp desk. */
.mh-wa {
	display: grid;
	grid-template-columns: 300px 1fr;
	gap: 16px;
	align-items: start;
}

.mh-wa__chat {
	display: block;
	padding: 8px 10px;
	border: 1px solid #e2e8f0;
	border-radius: 8px;
	margin: 0 0 6px;
	text-decoration: none;
	color: inherit;
}

.mh-wa__chat.is-active,
.mh-wa__chat:hover {
	background: #eff6ff;
	border-color: #93c5fd;
}

.mh-wa__msgs {
	max-height: 60vh;
	overflow-y: auto;
	display: flex;
	flex-direction: column;
	gap: 6px;
	padding: 6px 2px;
}

.mh-wa__msg {
	max-width: 72%;
	background: #f1f5f9;
	border-radius: 10px;
	padding: 7px 11px;
	align-self: flex-start;
}

.mh-wa__msg.is-out {
	background: #dcfce7;
	align-self: flex-end;
}

.mh-wa__msg p {
	margin: 0 0 2px;
}

.mh-wa__send textarea {
	width: 100%;
	max-width: 560px;
}

.mh-proc-actions {
	background: #f8fafc;
}

@media (max-width: 900px) {
	.mh-wa {
		grid-template-columns: 1fr;
	}
}

/* Round 19a — notification bell (sits left of the user chip). */
.mh-bell {
	position: fixed;
	top: 14px;
	right: 190px;
	z-index: 99991;
}

body.admin-bar .mh-bell {
	top: 44px;
}

.mh-bell__btn {
	background: #fff;
	border: 1px solid #cbd5e1;
	border-radius: 999px;
	padding: 6px 12px;
	cursor: pointer;
	position: relative;
	font-size: 15px;
}

.mh-bell__badge {
	position: absolute;
	top: -6px;
	right: -6px;
	background: #dc2626;
	color: #fff;
	border-radius: 999px;
	font-size: 11px;
	font-weight: 700;
	padding: 1px 6px;
}

.mh-bell__menu {
	position: absolute;
	right: 0;
	top: 40px;
	width: 340px;
	max-height: 60vh;
	overflow-y: auto;
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 10px;
	box-shadow: 0 10px 30px rgba(15, 23, 42, 0.15);
}

.mh-bell__menu a {
	display: block;
	padding: 9px 12px;
	border-bottom: 1px solid #f1f5f9;
	color: #0f172a;
	text-decoration: none;
	font-size: 13px;
}

.mh-bell__menu a.is-new {
	background: #eff6ff;
}

.mh-bell__menu a.sev-critical strong {
	color: #b91c1c;
}

.mh-bell__menu a.sev-warn strong {
	color: #b45309;
}

/* Round 20 — rows open on double-click everywhere. */
tr.mh-row-open,
tr[data-mh-href],
.mh-exp-row {
	cursor: pointer;
}

/* Round 20 — WA v2: status banner, bulk block, order messaging. */
.mh-wa-state {
	padding: 10px 14px;
	border-radius: 10px;
	margin: 0 0 14px;
	border: 1px solid #86efac;
	background: #f0fdf4;
}

.mh-wa-state--warn {
	border-color: #fcd34d;
	background: #fffbeb;
}

.mh-wa-bulk {
	margin-top: 14px;
}

.mh-wa-bulk__list {
	max-height: 40vh;
	overflow-y: auto;
	display: flex;
	flex-direction: column;
	gap: 4px;
	margin: 8px 0;
	font-size: 13px;
}

.mh-order-msg {
	margin: 10px 0;
}

/* Round 20 — Maliyyə. */
.mh-fin-strong td {
	font-weight: 700;
	background: #f8fafc;
}

/* Round 22 — AI journal digest. */

/* Round 23 — access management table. */
.mh-access__child td:first-child {
	padding-left: 22px;
	color: #475569;
}

.mh-access__parent td {
	background: #f8fafc;
}

/* ===========================================================================
 * V2 REDESIGN SKIN (2026-07-29) — rectilinear editorial direction.
 * Appended as an override layer: later rules win the cascade, so the v1.1
 * system above keeps working and this whole block is revertible in one cut.
 * Reference: design-preview/ prototypes (owner-approved 2026-07-29).
 * ======================================================================== */

:root {
	--mh-midnight: #0d2231;
	--mh-deep: #123147;
	--mh-sky: #e8f4fc;
	--mh-radius: 0px;
	--mh-radius-sm: 2px;
	--mh-shadow-lift: 0 10px 34px rgba(13, 34, 49, 0.12);
}

/* ---- typography: Inter everywhere ---- */
body,
button,
input,
select,
textarea {
	font-family: 'Inter', system-ui, -apple-system, 'Segoe UI', sans-serif;
}

h1, h2, h3, h4, h5 {
	font-weight: 800;
	letter-spacing: -0.02em;
	line-height: 1.15;
}

/* ---- header: sticky glass, straight lines ---- */
.site-header {
	position: sticky;
	top: 0;
	/* 1000, not 60 (owner 2026-08-11): NOTHING on any page may paint over
	   the menu dropdowns. The Woo gallery zoom trigger (z-index 99) beat
	   the old 60 on product pages. Page content stays below 1000;
	   deliberate overlays (catalog drawer + modals 100000+, FAB and chip
	   9999x — none of which intersect the dropdowns) stay above. */
	z-index: 1000;
	background: rgba(255, 255, 255, 0.88);
	-webkit-backdrop-filter: blur(14px);
	backdrop-filter: blur(14px);
	border-bottom: 1px solid var(--mh-line);
}

/* Belt and braces for the same rule: the zoom trigger floats above its
   own gallery images only, never above the page. */
.woocommerce-product-gallery__trigger {
	z-index: 2 !important;
}

/* Sticky is REAL now (body overflow-x switched to clip) — logged-in
   users need the header to stick just below WP's FIXED admin bar
   (32px desktop / 46px ≤782px; below 600px the admin bar scrolls away
   so the header returns to top:0). */

.custom-logo-link.mh-logo img.custom-logo {
	height: 42px;
	width: auto;
	max-width: none;
}

.main-navigation ul li a {
	font-weight: 600;
	transition: color 0.15s, border-color 0.15s;
	border-bottom: 2px solid transparent;
}

/* R39b (owner 2026-08-07): the open CATEGORY stays marked while any of its
 * dropdown children is the current page. Cabinet groups carry
 * current-menu-ancestor (our markup); frontend parents get
 * current-menu-parent / current-page-ancestor from WP (verified live — WP
 * does NOT put current-menu-ancestor on the injected-children parents).
 * current_page_parent is deliberately absent: WP sticks it on the posts-page
 * item for every single post. Top-level only (`ul.menu >`) so sub-menu rows
 * keep their own current styling. */
.main-navigation ul li a:hover,
.main-navigation ul li.current-menu-item > a,
.main-navigation ul.menu > li.current-menu-ancestor > a,
.main-navigation ul.menu > li.current-menu-parent > a,
.main-navigation ul.menu > li.current-page-ancestor > a {
	color: var(--mh-blue-dark);
	border-bottom-color: var(--mh-blue);
}

/* ---- buttons: pills (deliberate contrast to sharp blocks) ---- */
.button,
button.button,
input[type='submit'],
button[type='submit'],
.added_to_cart,
.wc-block-components-button,
.woocommerce-button,
a.mh-btn {
	border-radius: 999px !important;
	font-weight: 600;
	transition: transform 0.18s ease, background 0.18s ease, box-shadow 0.18s ease;
}

.button:hover,
input[type='submit']:hover,
button[type='submit']:hover {
	transform: translateY(-2px);
}

/* ---- surfaces: sharp corners, hairline borders ----
   `fieldset` and `table.shop_table` used to be in this list. Because the
   declaration is !important it beat every later attempt to round those
   two — line 353 (written for the cart for exactly this purpose), the
   cabinet pass and the basket pass — regardless of order or specificity.
   Three rewrites lost to one word 6,600 lines earlier in this same file,
   while the comment on the last one blamed the parent theme.
   The block was meant for flat home-page surfaces and notice strips, and
   those keep their square corners. Do not put the two back, and do not
   answer the next collision here with a fourth !important. */
.mh-card,
.woocommerce-info,
.woocommerce-message,
.woocommerce-error,
ul.products li.product,
.wc-block-grid__product,
.widget {
	border-radius: 0 !important;
}

input[type='text'],
input[type='email'],
input[type='tel'],
input[type='password'],
input[type='number'],
input[type='search'],
select,
textarea {
	border-radius: var(--mh-radius-sm) !important;
	border: 1.5px solid var(--mh-line);
}

input:focus,
select:focus,
textarea:focus {
	border-color: var(--mh-blue-light) !important;
	box-shadow: 0 0 0 4px rgba(23, 137, 214, 0.1) !important;
	outline: none;
}

/* ---- catalog: chips, banners, product cards (v2) ---- */
.mh-cat-chip {
	border-radius: 999px;
	border: 1.5px solid var(--mh-line);
	background: #fff;
	font-weight: 600;
	padding: 9px 18px;
	transition: all 0.15s;
}

.mh-cat-chip:hover {
	border-color: var(--mh-blue-light);
	color: var(--mh-blue-dark);
}

.mh-cat-chip.is-active {
	background: var(--mh-midnight);
	border-color: var(--mh-midnight);
	color: #fff;
}

.mh-cta-banner {
	border: 1px solid var(--mh-line);
	border-radius: 0;
	background: var(--mh-canvas);
	transition: border-color 0.15s, background 0.15s;
}

.mh-cta-banner:hover {
	border-color: var(--mh-blue-light);
	background: var(--mh-sky);
}

ul.products li.product {
	border: 1px solid var(--mh-line);
	background: #fff;
	transition: box-shadow 0.2s, border-color 0.2s;
}

ul.products li.product:hover {
	box-shadow: var(--mh-shadow-lift);
	border-color: #cfdce8;
}

ul.products li.product img {
	object-fit: contain;
	background: #fff;
}

ul.products li.product .price {
	font-weight: 800;
	color: var(--mh-ink);
	font-size: 1.15em;
}

/* ---- footer: midnight, flat ---- */
.site-footer,
.mh-footer {
	background: var(--mh-midnight);
	color: rgba(255, 255, 255, 0.78);
	border-top: none;
}

.site-footer a,
.mh-footer a {
	color: rgba(255, 255, 255, 0.78);
}

.site-footer a:hover,
.mh-footer a:hover {
	color: #fff;
}

.site-footer h4,
.mh-footer h4 {
	color: #fff;
}

/* ---- editorial section labels (front page groups can use this class) ---- */
.mh-sec-label {
	display: flex;
	align-items: center;
	gap: 16px;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: var(--mh-muted);
	margin-bottom: 26px;
}

.mh-sec-label::after {
	content: '';
	flex: 1;
	height: 1px;
	background: var(--mh-line);
}

/* ---- full-bleed video band (front page block wrapper) ---- */
.mh-video-band {
	position: relative;
	overflow: hidden;
	background: var(--mh-midnight);
	color: #fff;
}

.mh-video-band video {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.mh-video-band .wp-block-cover__inner-container,
.mh-video-band .mh-band-copy {
	position: relative;
	z-index: 2;
}

/* wp core cover block with video: soften + brand the overlay */
.wp-block-cover.mh-video-band .wp-block-cover__background {
	background: linear-gradient(78deg, rgba(10, 26, 38, 0.72) 0%, rgba(10, 26, 38, 0.35) 46%, rgba(10, 26, 38, 0.05) 75%) !important;
	opacity: 1 !important;
}

/* ---- brand logo row (front page) ---- */

/* ---- v2 addendum: block-level fixes found on live review ---- */
.wp-block-button__link {
	border-radius: 999px !important;
	font-weight: 600;
	transition: transform 0.18s ease, background 0.18s ease;
}

.wp-block-button__link:hover {
	transform: translateY(-2px);
}


.mh-card,
.mh-card img,
.mh-steps,
.wp-block-image img {
	border-radius: 0 !important;
}

.wp-block-cover.mh-video-band .wp-block-cover__inner-container h2 {
	color: #fff;
	font-size: clamp(26px, 3.4vw, 42px);
}

/* ---- v2 addendum 2: full-bleed layout (owner scr-10 → scr-11) ----
   clip, not hidden: `hidden` turns body into a scroll container and makes
   position:sticky INERT (the header never stuck anywhere). `clip` cuts
   the 100vw full-bleed overflow the same way but keeps sticky alive.
   (`hidden` stays first as the fallback for pre-2022 browsers.) */
body {
	overflow-x: hidden;
	overflow-x: clip;
}

/* Storefront's own #page { overflow-x: hidden } made the header's DIRECT
   parent a scroll container (computed overflow-y flips to auto) — the
   second sticky-killer. clip + explicit visible restores stickiness. */
#page {
	overflow-x: clip;
	overflow-y: visible;
}

.col-full {
	max-width: 1320px;
}

/* front-page hero and video band break out to the viewport edges */

.wp-block-cover.mh-video-band {
	width: 100vw;
	max-width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
}

.wp-block-cover.mh-video-band .wp-block-cover__inner-container {
	max-width: 1256px;
	margin-left: auto;
	margin-right: auto;
}

/* ---- operator escalation mini-form in the assistant widget ---- */
.mh-ai__esc-open {
	display: block;
	width: 100%;
	text-align: center;
	padding: 8px 10px;
	font-size: 13px;
	font-weight: 600;
	color: var(--mh-blue-dark);
	background: var(--mh-sky);
	border-top: 1px solid var(--mh-line);
	cursor: pointer;
}

.mh-ai__esc-open:hover {
	background: #d8ecfa;
}

.mh-ai__esc {
	padding: 12px 14px;
	border-top: 1px solid var(--mh-line);
	background: var(--mh-canvas);
	display: flex;
	flex-direction: column;
	gap: 8px;
	font-size: 13.5px;
}

.mh-ai__esc textarea,
.mh-ai__esc input {
	width: 100%;
	border: 1.5px solid var(--mh-line);
	border-radius: var(--mh-radius-sm);
	padding: 8px 10px;
	font: inherit;
	font-size: 13.5px;
}

.mh-ai__esc-send {
	align-self: flex-start;
	background: var(--mh-green);
	color: #fff;
	border-radius: 999px;
	padding: 8px 18px;
	font-weight: 600;
	cursor: pointer;
}

.mh-ai__esc-send:hover {
	background: var(--mh-green-dark);
}

.mh-ai__esc-st {
	font-size: 12.5px;
	color: var(--mh-muted);
}

/* ---- v2 structural: single-row header ---- */
@media (min-width: 66.5em) {
	.site-header .col-full {
		display: flex;
		align-items: center;
		gap: 16px;
	}

	.site-header .site-branding,
	.site-header .site-logo-anchor {
		float: none;
		width: auto;
		margin: 0;
		flex: none;
	}

	.site-header .main-navigation {
		float: none;
		width: auto;
		clear: none;
		margin: 0 auto;
	}

	.site-header .main-navigation ul.menu > li > a {
		padding: 10px 14px;
	}

	.mh-head-actions {
		display: flex;
		align-items: center;
		gap: 12px;
		flex: none;
		margin-left: auto;
	}

	.mh-head-actions .site-search {
		float: none;
		margin: 0;
		display: block;
		font-size: 14px;
	}

	.mh-head-actions .site-search .widget,
	.mh-head-actions .site-search form {
		margin: 0;
	}

	.mh-head-actions .site-search input[type='search'] {
		padding: 9px 16px;
		border-radius: 999px !important;
		background: var(--mh-canvas);
		border-color: transparent;
		font-size: 13.5px;
	}

	.site-header-cart {
		float: none;
		width: auto;
		margin: 0;
		position: relative;
	}

	.site-header-cart .cart-contents {
		padding: 8px 4px;
		background: none;
	}

	.site-header .mh-header-account {
		margin: 0;
	}

	.site-header {
		padding-top: 10px;
		padding-bottom: 10px;
	}
}

/* The v2 flex sidebar lived here until round 13c replaced it with a real
   two-column grid (see the catalog layout block at the end of this file).
   Its `#main` selector outranked the new `.site-main` rules and quietly kept
   the page in flex, so it is gone rather than overridden. Only the panel's
   own look survives, without the layout. */
@media (min-width: 1024px) {
	.woocommerce.archive .site-main > .mh-filterbar .mh-filterbar__item {
		background: #fff;
		padding: 14px 16px;
		display: flex;
		flex-direction: column;
		gap: 8px;
		margin: 0;
	}

	.woocommerce.archive .site-main > .mh-filterbar .mh-filterbar__label {
		font-size: 12px;
		font-weight: 700;
		letter-spacing: 0.1em;
		text-transform: uppercase;
		color: var(--mh-muted);
	}

	.woocommerce.archive .site-main > .mh-filterbar select {
		width: 100%;
	}

	.woocommerce.archive .site-main > .mh-filterbar .mh-filterbar__clear {
		margin: 0;
		border-radius: 0 !important;
		background: #fff;
		color: var(--mh-blue-dark);
		text-align: left;
	}
}

/* single-row header: adapt the restored parent nav wrapper to the flex row */
@media (min-width: 66.5em) {
	.site-header .storefront-primary-navigation {
		float: none;
		width: auto;
		clear: none;
		margin: 0 auto;
		background: transparent;
	}

	.site-header .storefront-primary-navigation .main-navigation {
		margin: 0;
	}

/* single-row header: the nav wrapper must GROW and the menu must not wrap */

	.site-header .main-navigation ul.menu {
		display: flex;
		flex-wrap: nowrap;
		justify-content: center;
		gap: 2px;
	}

	.site-header .main-navigation ul.menu > li {
		float: none;
		white-space: nowrap;
	}

/* single-row header: slim the actions so the row always fits */
	.site-header .storefront-primary-navigation {
		flex: 0 1 auto;
	}

	.mh-head-actions .site-search {
		width: 170px;
	}

	/* account: icon only, label stays for screen readers */
	.mh-header-account__label {
		position: absolute;
		width: 1px;
		height: 1px;
		overflow: hidden;
		clip: rect(0 0 0 0);
	}
}

/* cart: icon only at EVERY width — the "₼0.00 · 0 məhsul" text was a relict
   (owner R6) and collided with the row on desktop and tablet alike */
.site-header-cart .cart-contents .amount,
.site-header-cart .cart-contents .count {
	display: none;
}

/* single-row header: hard overrides — the parent's float/width rules keep
   winning the cascade inside the Page Optimize bundle, so the four
   layout-critical boxes get !important once and for all */
@media (min-width: 66.5em) {
	.site-header .site-branding {
		float: none !important;
		width: auto !important;
		margin: 0 !important;
	}

	.site-header .storefront-primary-navigation {
		float: none !important;
		width: auto !important;
		margin: 0 auto !important;
	}

	.mh-head-actions .site-search {
		float: none !important;
		margin: 0 !important;
	}

	.site-header .site-header-cart {
		float: none !important;
		width: auto !important;
		margin: 0 !important;
	}

	.site-header .mh-header-account {
		float: none !important;
		display: inline-flex;
		align-items: center;
	}

/* single-row header: last cascade holdout (.main-navigation float/width) */
	.site-header .main-navigation {
		float: none !important;
		width: auto !important;
		margin: 0 !important;
		clear: none !important;
	}

	.site-header .storefront-primary-navigation {
		flex: 1 1 auto !important;
		min-width: 0;
		display: flex;
		justify-content: center;
	}
}

/* single-row header: compression tier. At half-page/tablet-landscape widths
   the full-size row needs ~1300px, so the 688px menu overflowed its wrapper
   and overlapped the logo and the search box. Between 66.5em and 92em
   everything shrinks so the row genuinely fits. (Full sizing needs ~1390px
   with the AZ labels, so the tier runs up to 100em.) */
@media (min-width: 66.5em) and (max-width: 100em) {
	.site-header .col-full {
		gap: 10px;
	}

	/* the logo is height-driven (base rule sets height:42px + max-width:none
	   at higher specificity), so tiers must resize via height */
	.site-header .custom-logo-link.mh-logo img.custom-logo {
		height: 36px;
	}

	.site-header .main-navigation ul.menu > li > a {
		padding: 8px 8px;
		font-size: 13.5px;
	}

	.mh-head-actions {
		gap: 10px;
	}

	.mh-head-actions .site-search {
		width: 190px !important;
	}

	.mh-head-actions .site-search input[type='search'] {
		padding: 8px 13px;
		font-size: 13px;
	}
}

/* single-row header: hardest squeeze just above the handheld breakpoint —
   the Azerbaijani menu labels are long, so 66.5–78em needs another notch
   (measured: at 1100px the mid tier still ran ~100px over). */
@media (min-width: 66.5em) and (max-width: 78em) {
	.site-header .col-full {
		gap: 6px;
	}

	.site-header .site-branding,
	.site-header .site-branding .mh-logo {
		padding: 0 !important;
		margin: 0 !important;
		line-height: 0;
	}

	.site-header .custom-logo-link.mh-logo img.custom-logo {
		height: 32px;
	}

	.site-header .main-navigation ul.menu > li > a {
		padding: 8px 8px;
		font-size: 13px;
	}

	/* The nav wrapper must never shrink below the menu (that's what made
	   the UL spill over the logo). The search no longer absorbs deficits —
	   when the row gets tight, inc/header-cluster.php switches the whole
	   header to the handheld layout instead (owner 2026-08-11). */
	.site-header .storefront-primary-navigation {
		flex: 1 0 auto !important;
	}

	.mh-head-actions .site-search input[type='search'] {
		padding: 7px 11px;
		font-size: 12.5px;
	}
}

/* R7 (owner): below the single-row breakpoint the WHOLE header goes
   handheld — one line only (logo left, sandwich right); search, cabinet
   and cart live in the bottom footer bar. Tablet now looks like mobile. */
@media (max-width: 66.4989em) {
	/* no position override — the base sticky-glass rule applies at every
	   width (a sticky element is positioned, so the drawer's absolute
	   top:100% anchor keeps working) */
	.site-header {
		padding: 8px 0;
	}

	/* direct child only — Storefront nests ANOTHER .col-full inside the nav.
	   Equal side paddings AND zeroed side margins (Storefront adds ~22.5px
	   margins on small screens) so the sandwich's right gap mirrors the
	   logo's left gap exactly (owner R8d/R9). */
	.site-header > .col-full {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 12px;
		margin: 0 !important;
		max-width: none;
		padding-left: 24px !important;
		padding-right: 24px !important;
	}

	/* the toggle must END at the content edge — Storefront's nav boxes are
	   wider than the button and left ~23px of slack to its right (the
	   INNER nav .col-full carries its own 22.5px mobile margins) */
	.site-header .storefront-primary-navigation,
	.site-header .main-navigation {
		display: flex;
		justify-content: flex-end;
	}

	/* the nested col-full lives BETWEEN the wrapper and the nav */
	.site-header .storefront-primary-navigation > .col-full {
		display: flex;
		justify-content: flex-end;
		width: auto;
		margin: 0 !important;
		padding: 0 !important;
		max-width: none;
	}

	.site-header .site-branding {
		float: none !important;
		width: auto !important;
		margin: 0 !important;
		padding: 0 !important;
	}

	.site-header .custom-logo-link.mh-logo img.custom-logo {
		height: 32px;
	}

	.site-header .storefront-primary-navigation {
		float: none !important;
		width: auto !important;
		clear: none !important;
		margin: 0 0 0 auto !important;
		background: transparent;
	}

	.site-header .main-navigation {
		float: none !important;
		width: auto !important;
		margin: 0 !important;
	}

	.site-header button.menu-toggle {
		display: inline-flex !important;
		align-items: center;
		margin: 0;
	}

	.site-header .main-navigation ul.menu {
		display: none !important;
	}

	/* every wrapper on the handheld ul's ancestor chain must be visible when
	   toggled — .primary-navigation is the DESKTOP copy and stays hidden */
	.site-header .main-navigation.toggled .handheld-navigation,
	.site-header .main-navigation.toggled .col-full,
	.site-header .main-navigation.toggled div.menu {
		display: block !important;
		width: auto;
		padding: 0;
	}

	/* Storefront renders the SAME menu twice: .primary-navigation (desktop)
	   and .handheld-navigation (drawer). The old rule un-hid every ul.menu,
	   so the open drawer stacked BOTH copies — the owner saw the whole list,
	   then a second flat list of parents and children. Only the handheld copy
	   opens now. */
	.site-header .main-navigation.toggled .primary-navigation,
	.site-header .main-navigation .primary-navigation {
		display: none !important;
	}

	/* The list itself — the SHEET geometry lives in the drawer block at the
	   end of this file (owner design sign-off 2026-08-30). */
	.site-header .main-navigation.toggled .handheld-navigation ul.menu {
		display: block !important;
		margin: 0;
		padding: 6px 0;
		background: transparent;
	}

	.site-header .main-navigation.toggled .handheld-navigation ul.menu > li {
		display: block;
		float: none;
		width: 100%;
	}

	.site-header .main-navigation.toggled .handheld-navigation ul.menu > li > a {
		display: block;
		padding: 11px 16px;
		font-size: 16px;
	}

	.site-header .mh-head-actions,
	.mh-user-chip {
		display: none !important;
	}

	/* The bell CONTAINER stays in the DOM with no footprint: its button is
	   hidden everywhere, but its menu is the notification sheet the footer
	   bar's bell opens (owner 2026-08-30 — on a phone notifications used to
	   be unreachable, because the only door was the desktop chip). */
	.mh-bell {
		display: block !important;
		position: static !important;
		width: 0;
		height: 0;
	}

	/* No body padding-bottom here any more: the bar's room is reserved INSIDE
	   the midnight footer, at a constant height on the iPhone — see «cluster H»
	   at the end of this file (owner 2026-10-04, scr 20–27). */

	/* padding-bottom env(): the bar's midnight extends under the phone's
	   gesture zone instead of leaving a white sliver (owner R10) */
	.storefront-handheld-footer-bar {
		display: block !important;
		padding-bottom: env(safe-area-inset-bottom, 0px);
	}

	/* the assistant FAB floats ABOVE the footer bar — at 18px it sat on the
	   bar and blocked its rightmost (cart) button (owner R9). The bar is
	   69px + the gesture zone tall, so the bubble rides the same env(): at a
	   flat 86px it overlapped the bar whenever the iPhone's toolbar hid
	   (owner 2026-10-04, scr 22–23). */
	.mh-ai {
		bottom: calc(86px + env(safe-area-inset-bottom, 0px));
	}

}

/* Footer-bar internals live OUTSIDE the width query since the early-mobile
   header (body.mh-compact-head) also shows the bar at desktop widths; the
   rules only matter while the bar is visible, so global scope is safe.
   Icons are INLINE SVG elements appended by inc/footer.php — two
   generations of CSS data-URI icons painted on desktop but not on the
   owner's phone; a DOM element cannot fail. The ::before glyph never
   rendered here (empty content), so it is disabled. */
.storefront-handheld-footer-bar ul li {
	position: relative;
}

/* THE actual invisibility bug (audit R9e): Storefront's customizer
   inline CSS groups these links with the WHITE header background —
   three full-size white boxes painted over the dark bar, white icons
   on top of them. Kill the link background for good. */
.storefront-handheld-footer-bar ul li > a,
.storefront-handheld-footer-bar ul li > a:hover,
.storefront-handheld-footer-bar ul li > a:focus {
	position: relative;
	display: block;
	height: 68px;
	color: rgba(255, 255, 255, 0.92);
	background: transparent !important;
}

.storefront-handheld-footer-bar ul li > a::before {
	content: "" !important;
	display: none !important;
}

.storefront-handheld-footer-bar .mh-hfb-icon {
	position: absolute;
	left: 50%;
	top: 50%;
	width: 26px;
	height: 26px;
	margin: -13px 0 0 -13px;
	color: #fff;
	pointer-events: none;
}

.storefront-handheld-footer-bar ul li.cart .count {
	position: absolute;
	top: 10px;
	left: calc(50% + 6px);
	min-width: 18px;
	height: 18px;
	line-height: 18px;
	padding: 0 5px;
	border-radius: 999px;
	background: var(--mh-green);
	color: #fff;
	font-size: 11px;
	text-align: center;
	text-indent: 0;
}

/* the search sheet the magnifier icon toggles (li carries its own form).
   !important: Storefront's ≥768px desktop rules force .site-search
   visible, which parked the open form over the magnifier icon at
   tablet widths. */
.storefront-handheld-footer-bar .search .site-search {
	position: absolute;
	bottom: 100%;
	left: 0;
	right: 0;
	display: none !important;
	margin: 0;
	padding: 14px 16px;
	background: var(--mh-midnight);
}

.storefront-handheld-footer-bar .search.active .site-search {
	display: block !important;
}

/* Handheld footer bar: midnight, always — maximum-weight selector so no
   Storefront/customizer rule can repaint it white (white icons on a white
   bar were invisible; owner asked twice). */
html body .storefront-handheld-footer-bar {
	background: var(--mh-midnight) !important;
}

/* catalog sidebar: neutralise the old horizontal-bar item styles inside it */
@media (min-width: 1024px) {
	.woocommerce.archive .site-main > .mh-filterbar {
		padding: 0 !important;
	}

	.woocommerce.archive .site-main > .mh-filterbar .mh-filterbar__item {
		width: 100% !important;
		max-width: none !important;
		margin: 0 !important;
		float: none !important;
	}

	.woocommerce.archive .site-main > .mh-filterbar select {
		max-width: 100%;
	}

	.woocommerce.archive .site-main > .mh-filterbar .mh-filterbar__clear,
	.woocommerce.archive .site-main > .mh-filterbar .mh-filterbar__note {
		width: 100%;
		margin: 0;
	}
}


/* ===========================================================================
 * FRONT PAGE (front-page.php) — the approved prototype, 1:1 (mhf- scope)
 * ======================================================================== */

.home .site-content,
.home .site-main {
	padding-top: 0 !important;
	margin-bottom: 0;
}

/* Storefront gives the header a ~68px bottom margin — on the front page the
   hero must sit flush under the menu (owner R9). */
.home .site-header {
	margin-bottom: 0 !important;
}

.mhf-container { max-width: 1320px; margin: 0 auto; padding: 0 32px; }

.mhf-hero,
.mhf-band {
	width: 100vw;
	max-width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
}

.mhf-hero { position: relative; height: min(80vh, 680px); min-height: 520px; overflow: hidden; background: var(--mh-midnight); color: #fff; }
.mhf-slide { position: absolute; inset: 0; opacity: 0; transition: opacity 1.8s ease; pointer-events: none; z-index: 1; }
.mhf-slide.active { opacity: 1; pointer-events: auto; z-index: 2; }
/* Ken Burns as a TRANSITION, not an animation: an animation vanishes the
   instant .active is removed, snapping the outgoing background to scale(1)
   mid-crossfade (the "kick" the owner saw). A transition keeps both slides
   moving smoothly while they fade. */
.mhf-bg { position: absolute; inset: 0; background-size: cover; background-position: center; transform: scale(1); transition: transform 11s ease-out; }
.mhf-slide.active .mhf-bg { transform: scale(1.08); }
.mhf-slide::after { content: ""; position: absolute; inset: 0; background: linear-gradient(78deg, rgba(10,26,38,.82) 0%, rgba(10,26,38,.52) 40%, rgba(10,26,38,.06) 74%); }
.mhf-content { position: absolute; inset: 0; z-index: 3; display: flex; align-items: center; }
.mhf-copy { max-width: 640px; opacity: 0; transform: translateY(22px); transition: opacity .45s ease, transform .45s ease; }
.mhf-slide.active .mhf-copy { opacity: 1; transform: none; transition: opacity .8s ease .55s, transform .8s ease .55s; }
.mhf-copy--low { margin-top: 150px; }
.mhf-hero .mhf-ht { font-size: clamp(32px, 4.4vw, 56px); color: #fff; margin: 0 0 18px; line-height: 1.12; }
.mhf-note { margin: 16px 0 0; font-size: 11.5px; line-height: 1.5; color: rgba(255,255,255,.55); max-width: 520px; }
.mhf-h-sm { font-size: clamp(26px, 3.2vw, 38px) !important; }
.mhf-lead { font-size: clamp(16px, 1.6vw, 19px); color: rgba(255,255,255,.82); max-width: 520px; margin: 0 0 32px; }
.mhf-eyebrow { display: inline-flex; align-items: center; gap: 8px; background: rgba(255,255,255,.13); border: 1px solid rgba(255,255,255,.22); backdrop-filter: blur(8px); border-radius: 999px; padding: 8px 16px; font-size: 13px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; margin-bottom: 22px; color: #fff; }
.mhf-dot { width: 7px; height: 7px; border-radius: 50%; background: var(--mh-green); }
.mhf-ctas { display: flex; gap: 14px; flex-wrap: wrap; }
.mhf-btn { display: inline-flex; align-items: center; gap: 9px; padding: 14px 26px; border-radius: 999px; font-weight: 600; font-size: 15.5px; transition: transform .18s, background .18s; text-decoration: none; }
.mhf-btn:hover { transform: translateY(-2px); }
.mhf-btn--green { background: var(--mh-green); color: #fff !important; }
.mhf-btn--green:hover { background: var(--mh-green-dark); }
.mhf-btn--blue { background: var(--mh-blue); color: #fff !important; }
.mhf-btn--blue:hover { background: var(--mh-blue-dark); }
.mhf-btn--ghost { border: 1.5px solid rgba(255,255,255,.75); color: #fff !important; background: none; }
.mhf-btn--ghost:hover { background: rgba(255,255,255,.14); }
.mhf-btn--outline { border: 1.5px solid var(--mh-ink); color: var(--mh-ink) !important; background: none; }
.mhf-heronav { position: absolute; z-index: 4; bottom: 34px; left: 0; right: 0; }
.mhf-heronav-in { display: flex; justify-content: space-between; align-items: center; }
.mhf-dots { display: flex; gap: 8px; }
.mhf-dots button { width: 34px; height: 4px; background: rgba(255,255,255,.32); border: none; padding: 0; min-height: 0; cursor: pointer; transition: all .2s; border-radius: 0 !important; }
.mhf-dots button.on { background: #fff; width: 54px; }
.mhf-arrows { display: flex; gap: 10px; }
.mhf-arrows button { width: 46px; height: 46px; border: 1.5px solid rgba(255,255,255,.4); background: none; color: #fff; display: grid; place-items: center; cursor: pointer; padding: 0; border-radius: 0 !important; }
.mhf-arrows button:hover { background: rgba(255,255,255,.15); }

.mhf-cats, .mhf-statement, .mhf-brands, .mhf-featured, .mhf-steps { padding-top: 72px; }
.mhf-steps { padding-bottom: 88px; }
.mhf-sec-label { display: flex; align-items: center; gap: 16px; font-size: 12px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; color: var(--mh-muted); margin-bottom: 26px; }
.mhf-sec-label::after { content: ""; flex: 1; height: 1px; background: var(--mh-line); }

.mhf-cats-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 2px; background: var(--mh-line); border: 1px solid var(--mh-line); }
.mhf-cat-card { position: relative; overflow: hidden; height: 380px; display: block; background: var(--mh-midnight); }
.mhf-cat-card img { width: 100%; height: 100%; object-fit: cover; transition: transform .6s; margin: 0; border-radius: 0 !important; }
.mhf-cat-card:hover img { transform: scale(1.05); }
.mhf-cat-card::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(10,26,38,0) 38%, rgba(10,26,38,.84) 100%); }
.mhf-cat-card--light { background: #eef4f9; }
.mhf-cat-card--light::after { background: linear-gradient(180deg, rgba(10,26,38,0) 38%, rgba(10,26,38,.55) 100%); }
.mhf-contain { object-fit: contain !important; padding: 28px; }
.mhf-cat-body { position: absolute; left: 0; right: 0; bottom: 0; z-index: 2; padding: 22px; color: #fff; display: flex; flex-direction: column; gap: 8px; align-items: flex-start; }
.mhf-cat-body h3 { font-size: 19px; color: #fff; margin: 0; display: flex; align-items: center; gap: 9px; }
.mhf-cat-body p { font-size: 13.5px; color: rgba(255,255,255,.8); margin: 0; }
.mhf-chip { display: inline-flex; font-size: 12.5px; font-weight: 600; padding: 6px 13px; border-radius: 999px; background: rgba(255,255,255,.16); color: #fff; backdrop-filter: blur(6px); }

.mhf-band { position: relative; height: min(72vh, 620px); min-height: 440px; overflow: hidden; margin-top: 88px; background: var(--mh-midnight); color: #fff; }
.mhf-band video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.mhf-band::after { content: ""; position: absolute; inset: 0; background: linear-gradient(78deg, rgba(10,26,38,.72) 0%, rgba(10,26,38,.35) 46%, rgba(10,26,38,.05) 75%); }
.mhf-band-copy { position: absolute; inset: 0; z-index: 2; display: flex; align-items: center; }
.mhf-band-inner { max-width: 620px; }
.mhf-band h2 { color: #fff; font-size: clamp(26px, 3.4vw, 44px); margin: 0 0 16px; }
.mhf-band p { color: rgba(255,255,255,.85); max-width: 480px; margin: 0 0 28px; }

/* Statement: image on top, text under it; the whole block links to the
   catalog (owner R6). Hover reads as a link the same way the category
   cards do: image zoom + the title arrow slides right (owner R8d). */
.mhf-statement-link { display: block; color: inherit !important; text-decoration: none; }
.mhf-statement-imgwrap { overflow: hidden; }
.mhf-statement-img { width: 100%; max-height: 500px; object-fit: cover; object-position: center top; margin: 0; border-radius: 0 !important; display: block; transition: transform .6s; }
.mhf-statement-link:hover .mhf-statement-img { transform: scale(1.04); }
.mhf-statement-txt { margin-top: 40px; }
.mhf-statement-txt h2 { margin: 0; }
.mhf-big svg { transition: transform .25s; vertical-align: middle; }
.mhf-statement-link:hover .mhf-big svg { transform: translateX(8px); }
.mhf-statement-link:hover .mhf-big { color: var(--mh-blue-dark); }
.mhf-statement-cols { display: grid; grid-template-columns: 1fr 1fr; gap: 8px 64px; }
.mhf-statement-cols .mhf-after { max-width: none; }
.mhf-big { font-size: clamp(21px, 2.3vw, 31px); font-weight: 700; line-height: 1.4; letter-spacing: -.015em; margin: 0; }
.mhf-big em { font-style: normal; color: var(--mh-blue); }
.mhf-big em.g { color: var(--mh-green-dark); }
.mhf-after { margin-top: 22px; color: var(--mh-muted); max-width: 640px; }
.mhf-brand-note { margin: 18px 0 0; font-size: 12px; color: var(--mh-muted); }

.mhf-brand-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 2px; background: var(--mh-line); border: 1px solid var(--mh-line); }
.mhf-brand-card { background: #fff; padding: 36px 32px; display: block; transition: background .2s; text-decoration: none; }
.mhf-brand-card:hover { background: var(--mh-canvas); }
.mhf-brand-card img { margin: 0 0 14px; border-radius: 0 !important; }
.mhf-origin { color: var(--mh-muted); font-size: 13px; margin: 0 0 14px; }
.mhf-brand-card p { font-size: 14.5px; color: var(--mh-muted); margin: 0; }

.mhf-stats { border-top: 1px solid var(--mh-line); border-bottom: 1px solid var(--mh-line); padding: 48px 0; margin-top: 88px; }
.mhf-stats-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 32px; }
.mhf-stat { border-left: 1px solid var(--mh-line); padding-left: 26px; min-width: 0; }
.mhf-stat:first-child { border-left: none; padding-left: 0; }
/* USP row (owner R5): titles share one line, descriptions share one line —
   the old 42px titles wrapped unevenly and broke the shared baselines. */
.mhf-stat b { font-size: clamp(19px, 1.8vw, 26px); font-weight: 800; display: block; line-height: 1.2; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.mhf-stat b em { color: var(--mh-green-dark); font-style: normal; }
.mhf-stat span { color: var(--mh-muted); font-size: 14px; display: block; margin-top: 6px; }
@media (min-width: 64em) {
	.mhf-stat span { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; font-size: 13px; }
}

.mhf-featured ul.products { margin-bottom: 0; }
.mhf-more { margin: 26px 0 0; }
.mhf-steps-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 2px; background: var(--mh-line); border: 1px solid var(--mh-line); }
.mhf-step { background: #fff; padding: 30px 28px; }
.mhf-step b { font-size: 14px; color: var(--mh-blue-dark); letter-spacing: .08em; display: block; margin-bottom: 10px; }
.mhf-step h3 { font-size: 17px; margin: 0 0 8px; }
.mhf-step p { font-size: 14.5px; color: var(--mh-muted); margin: 0; }

.mhf-rv { opacity: 0; transform: translateY(26px); transition: opacity .7s ease, transform .7s ease; }
.mhf-rv.in { opacity: 1; transform: none; }

@media (max-width: 1080px) {
	.mhf-cats-grid { grid-template-columns: 1fr 1fr; }
	.mhf-brand-grid, .mhf-steps-grid { grid-template-columns: 1fr; }
	.mhf-stats-grid { grid-template-columns: 1fr 1fr; }
	/* two-column USP: no divider in front of the first column (owner R6 —
	   the line before CE made it look indented vs the row above) */
	.mhf-stat:nth-child(odd) { border-left: 0; padding-left: 0; }
	/* narrow two-column cells: titles must show COMPLETELY (owner R9) —
	   wrapping beats the ellipsis that ate "Sürətli çatd…" */
	.mhf-stat b { white-space: normal; overflow: visible; text-overflow: clip; }
	.mhf-statement-txt { margin-top: 28px; }
	.mhf-statement-cols { grid-template-columns: 1fr; }
}

@media (max-width: 640px) {
	.mhf-cats-grid { grid-template-columns: 1fr; }
	.mhf-cat-card { height: 280px; }
	.mhf-hero { min-height: 500px; }
	.mhf-band { min-height: 380px; }
}


/* assistant: attachment button + chip */
.mh-ai__attach {
	display: grid;
	place-items: center;
	width: 34px;
	height: 34px;
	cursor: pointer;
	font-size: 16px;
	border-radius: 999px;
	flex: none;
	align-self: center;
}

.mh-ai__attach:hover {
	background: var(--mh-sky);
}

.mh-ai__att-chip {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 6px 14px;
	font-size: 12.5px;
	color: var(--mh-blue-dark);
	background: var(--mh-sky);
	border-top: 1px solid var(--mh-line);
}

.mh-ai__att-name {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	max-width: 240px;
}

.mh-ai__att-x {
	border: none;
	background: none;
	cursor: pointer;
	font-size: 15px;
	color: var(--mh-muted);
	padding: 0 4px;
}

.mh-ai__att-x:hover {
	color: #c04b41;
}


/* assistant: the hidden attribute must ALWAYS win over component display
   rules — without this, display:flex on .mh-ai__esc etc. overrides the
   UA hidden styling and the operator form leaks into the default view
   (owner incognito repro, 2026-07-30). */
.mh-ai [hidden] {
	display: none !important;
}


/* ===== round-4 additions (2026-07-30) ===== */

/* eyebrows are links now */
a.mhf-eyebrow { text-decoration: none; transition: background .15s; }
a.mhf-eyebrow:hover { background: rgba(255,255,255,.24); color: #fff; }

/* categories: 2 tiles | surgeon | 2 tiles */
/* (The centre surgeon tile between the categories was removed in R7 —
   the grid is back to the four equal prototype tiles.) */

/* featured intro + scroll row */
/* Featured intro: text only, full width (owner R6 — the interleaved image
   is gone and the copy no longer breaks at half the page). */
.mhf-feat-intro { display: block; margin-bottom: 34px; }
.mhf-feat-title { font-size: clamp(24px, 3vw, 36px); margin: 0 0 14px; }
.mhf-feat-intro p { color: var(--mh-muted); max-width: 1050px; }
.mhf-feat-row { display: grid; grid-auto-flow: column; grid-auto-columns: 250px; gap: 2px; overflow-x: auto; padding-bottom: 18px; margin: 0; list-style: none; scroll-snap-type: x mandatory; background: var(--mh-line); border: 1px solid var(--mh-line); }
.mhf-feat-card { background: #fff; scroll-snap-align: start; margin: 0; }
.mhf-feat-card a { display: flex; flex-direction: column; gap: 8px; padding: 16px; text-decoration: none; color: var(--mh-ink); height: 100%; }
.mhf-feat-card img { width: 100%; aspect-ratio: 1/1; object-fit: contain; background: #fff; mix-blend-mode: multiply; margin: 0; border-radius: 0 !important; }
.mhf-feat-name { font-size: 14px; font-weight: 600; line-height: 1.35; }
.mhf-feat-price { font-weight: 800; font-size: 16px; margin-top: auto; }

/* professionals split */
.mhf-pro { padding-top: 88px; }
.mhf-pro-grid { display: grid; grid-template-columns: 1.3fr 1fr; gap: 64px; align-items: center; }
.mhf-pro-sub { color: var(--mh-muted); max-width: 520px; }
.mhf-pro-steps { margin-top: 26px; }
.mhf-pro-step { display: flex; gap: 18px; padding: 18px 0; border-top: 1px solid var(--mh-line); }
.mhf-pro-step:last-child { border-bottom: 1px solid var(--mh-line); }
.mhf-pro-step b { color: var(--mh-blue-dark); font-size: 14px; letter-spacing: .08em; flex: none; padding-top: 2px; }
.mhf-pro-step h3 { font-size: 16.5px; margin: 0 0 4px; }
.mhf-pro-step p { font-size: 14px; color: var(--mh-muted); margin: 0; }
/* R76 (owner 2026-08-13): the frame was sized for the old portrait clip
   (360px column); the clinic video is landscape, so it rendered tiny.
   The frame now fills its grid column and stretches to the height of the
   text column — the video cover-crops into it. */
.mhf-pro-frame { justify-self: stretch; align-self: stretch; width: 100%; border: 1px solid var(--mh-line); background: #000; }
.mhf-pro-frame video { width: 100%; height: 100%; object-fit: cover; display: block; }

/* info teasers */
.mhf-info { padding-top: 88px; }
.mhf-info-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 2px; background: var(--mh-line); border: 1px solid var(--mh-line); }
/* R78: every current article in one horizontally scrollable row — the
   same pattern as the featured-products strip. */
.mhf-info-row { display: grid; grid-auto-flow: column; grid-auto-columns: 300px; gap: 2px; overflow-x: auto; padding-bottom: 14px; scroll-snap-type: x proximity; background: var(--mh-line); border: 1px solid var(--mh-line); }
.mhf-info-row .mhf-info-card { scroll-snap-align: start; }
.mhf-info-card { position: relative; overflow: hidden; min-height: 300px; display: flex; align-items: flex-end; background: var(--mh-midnight); text-decoration: none; }
.mhf-info-card img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform .6s; margin: 0; border-radius: 0 !important; }
.mhf-info-card:hover img { transform: scale(1.05); }
.mhf-info-card::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(10,26,38,0) 32%, rgba(10,26,38,.85) 100%); }
.mhf-info-txt { position: relative; z-index: 2; color: #fff; padding: 24px; }
.mhf-info-txt span { font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--mh-green); }
.mhf-info-txt h3 { font-size: 18.5px; margin: 6px 0 0; color: #fff; }

/* CTA band */
.mhf-cta { background: var(--mh-midnight); color: #fff; padding: clamp(48px, 6vw, 84px) 32px; margin-top: 88px; width: 100vw; margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw); }
.mhf-cta-in { max-width: 1256px; margin: 0 auto; display: flex; align-items: center; justify-content: space-between; gap: 32px; flex-wrap: wrap; }
.mhf-cta h2 { color: #fff; font-size: clamp(24px, 3vw, 36px); margin: 0; max-width: 560px; }
.mhf-cta p { color: rgba(255,255,255,.72); margin: 12px 0 0; max-width: 520px; }

/* pro landing page */
.mhp { max-width: 900px; margin: 0 auto; padding: 30px 0 70px; }
.mhp-hero h1 { font-size: clamp(28px, 3.4vw, 42px); margin: 0 0 14px; }
.mhp-hero p { color: var(--mh-muted); font-size: 17px; }
.mhp-chip-ok { background: rgba(118,185,62,.15) !important; color: var(--mh-green-dark) !important; margin-bottom: 16px; display: inline-flex; }
.mhp-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 2px; background: var(--mh-line); border: 1px solid var(--mh-line); margin: 30px 0; }
.mhp-card { background: #fff; padding: 26px; }
.mhp-card h3 { font-size: 17px; margin: 0 0 8px; }
.mhp-card p { font-size: 14.5px; color: var(--mh-muted); margin: 0; }
.mhp-cta { border: 1px solid var(--mh-line); background: var(--mh-canvas); padding: 30px; }
.mhp-cta h2 { margin: 0 0 10px; font-size: 22px; }
.mhp-cta p { color: var(--mh-muted); }

/* footer contrast + storefront credit kill */
.site-footer { background: var(--mh-midnight) !important; color: rgba(255,255,255,.8) !important; }
.site-footer a { color: rgba(255,255,255,.82) !important; }
.site-footer a:hover { color: #fff !important; }
.site-footer h4 { color: #fff !important; }
.site-footer .mh-footer-legal { color: rgba(255,255,255,.55); }
.site-info { display: none !important; }

/* page titles clear of the sticky header */
body:not(.home) .site-main { padding-top: 26px; }

/* breathing room between the last front-page section and the footer
   (owner R8b: the junction was too narrow) */
.mhf-info { padding-bottom: 84px; }

/* handheld drawer: uniform top-level indentation */
@media (max-width: 66.4989em) {
	.main-navigation ul.menu > li { margin-left: 0 !important; padding-left: 0 !important; }
	.main-navigation ul.menu > li > a { padding-left: 0 !important; }
	.main-navigation ul.menu ul { margin-left: 16px !important; }
}

/* responsive for new sections */
@media (max-width: 1080px) {
	.mhf-feat-intro, .mhf-pro-grid { grid-template-columns: 1fr; gap: 32px; }
	.mhf-info-grid { grid-template-columns: 1fr 1fr; }
	/* Stacked layout: no text column to match — keep the video 16:9. */
	.mhf-pro-frame video { height: auto; aspect-ratio: 16 / 9; }
}
@media (max-width: 640px) {
	.mhf-info-grid { grid-template-columns: 1fr; }
}

/* Round 13 — the logo/menu overlap (owner screenshot, logged-in ~1150-1400px).
   ROOT CAUSE: Storefront nests ANOTHER .col-full inside
   .storefront-primary-navigation, so the logged-in chip reserve
   (`.logged-in .site-header .col-full { padding-right: 224px }`) and the
   global .col-full side padding were applied to the NAV's inner box too.
   That inflated it ~266px beyond its centred wrapper; the overflow split
   evenly, so the menu spilled LEFT across the logo. The nested box carries
   no layout duty in the single-row header — neutralise it, and drop the
   menu's -16px pull so the flex gap actually separates logo from menu. */
@media (min-width: 66.5em) {
	.site-header .storefront-primary-navigation .col-full {
		max-width: none;
		width: 100%;
		padding-left: 0;
		padding-right: 0;
	}

	.site-header .main-navigation ul.menu {
		margin-left: 0;
		margin-right: 0;
	}
}

/* Round 13 — header search: the Font Awesome magnifier is a form::before
   pinned with a fixed top (~1.15em from the parent theme), so inside our
   31px pill it painted ~7px above the placeholder's centre line (owner:
   "icon and text on different levels"). Centre it properly. */
.mh-head-actions .site-search form {
	position: relative;
}

.mh-head-actions .site-search form::before {
	top: 50%;
	left: 13px;
	line-height: 1;
	transform: translateY(-50%);
}

/* Round 13 — catalog sidebar (owner, desktop): the filter blocks inherited
   `flex: 1 1 130px` from the horizontal filter-BAR era, so every block was
   forced to 130px and the column ran past the fold; being sticky, the
   overflow was unreachable. Size blocks to their content and let the panel
   scroll inside the viewport when it is taller than the screen. */
@media (min-width: 992px) {
	/* Round 13c: the panel is a normal in-flow column now — no clamped height
	   and no inner scrollbar; it scrolls away with the page. */
	.mh-filterbar {
		gap: 10px;
		padding-right: 4px;
	}

	.mh-filterbar__item {
		flex: 0 0 auto;
		padding: 6px 0;
		gap: 4px;
	}
}

/* ==========================================================================
   Round 13 — brand pages (page-brand.php). Image-led layout in the spirit of
   lipoelastic.com/p/about-lipoelastic: full-bleed hero, figure strip,
   alternating story sections, USP cards, product tiles, closing band.
   ========================================================================== */
.mh-brand {
	--mh-brand-max: 1180px;
	color: var(--mh-ink, #0f172a);
}

.mh-brand section {
	margin: 0 auto;
}

.mh-brand__hero {
	position: relative;
	background-size: cover;
	background-position: center;
	min-height: 62vh;
	display: flex;
	align-items: flex-end;
	padding: 0;
}

.mh-brand__hero::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(6, 20, 35, 0.15) 0%, rgba(6, 20, 35, 0.82) 78%);
}

.mh-brand__hero-inner {
	position: relative;
	z-index: 1;
	max-width: var(--mh-brand-max);
	margin: 0 auto;
	padding: 48px 22px 56px;
	color: #fff;
	width: 100%;
}

.mh-brand__logo {
	height: 38px;
	width: auto;
	margin-bottom: 18px;
	filter: brightness(0) invert(1);
}

.mh-brand__eyebrow {
	text-transform: uppercase;
	letter-spacing: 0.14em;
	font-size: 0.78rem;
	font-weight: 700;
	opacity: 0.9;
	margin: 0 0 10px;
}

.mh-brand__title {
	font-size: clamp(1.9rem, 4vw, 3.1rem);
	line-height: 1.1;
	margin: 0 0 16px;
	color: #fff;
	max-width: 20ch;
}

.mh-brand__lead {
	font-size: clamp(1rem, 1.4vw, 1.18rem);
	line-height: 1.6;
	max-width: 62ch;
	margin: 0 0 24px;
	opacity: 0.95;
}

.mh-brand__cta {
	display: inline-block;
	background: var(--mh-blue, #1d84c4);
	color: #fff !important;
	border-radius: 999px;
	padding: 13px 28px;
	font-weight: 700;
	text-decoration: none;
	transition: transform 0.15s, box-shadow 0.15s;
}

.mh-brand__cta:hover {
	transform: translateY(-1px);
	box-shadow: 0 10px 24px rgba(29, 132, 196, 0.28);
}

.mh-brand__figures {
	max-width: var(--mh-brand-max);
	display: grid;
	/* auto-fit: the figures row is editor-driven now — any count lays out
	   evenly (owner removed the 4th About figure, R28b). */
	grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
	gap: 18px;
	padding: 42px 22px;
}

.mh-brand__figure {
	text-align: center;
	padding: 18px 10px;
	border-radius: 14px;
	background: var(--mh-canvas, #f1f5f9);
}

.mh-brand__figure strong {
	display: block;
	font-size: clamp(1.5rem, 2.4vw, 2.1rem);
	line-height: 1.1;
	color: var(--mh-blue, #1d84c4);
}

.mh-brand__figure span {
	display: block;
	font-size: 0.88rem;
	margin-top: 6px;
	color: #475569;
}

.mh-brand__story {
	max-width: var(--mh-brand-max);
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 42px;
	align-items: center;
	padding: 34px 22px;
}

.mh-brand__story.is-flipped .mh-brand__story-media {
	order: 2;
}

.mh-brand__story-media {
	border-radius: 18px;
	overflow: hidden;
	background: var(--mh-canvas, #f1f5f9);
	aspect-ratio: 4 / 3;
}

.mh-brand__cover {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.mh-brand__contain {
	width: 100%;
	height: 100%;
	object-fit: contain;
	display: block;
	padding: 22px;
}

.mh-brand__story-text h2 {
	font-size: clamp(1.3rem, 2.2vw, 1.9rem);
	margin: 0 0 12px;
}

.mh-brand__story-text p {
	font-size: 1.02rem;
	line-height: 1.7;
	color: #334155;
	margin: 0;
}

.mh-brand__usps {
	max-width: var(--mh-brand-max);
	padding: 42px 22px;
}

.mh-brand__usps h2 {
	font-size: clamp(1.3rem, 2.2vw, 1.9rem);
	margin: 0 0 22px;
}

.mh-brand__usp-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 18px;
}

.mh-brand__usp {
	background: #fff;
	border: 1px solid var(--mh-line, #e2e8f0);
	border-radius: 14px;
	padding: 20px;
}

.mh-brand__usp h3 {
	font-size: 1.02rem;
	margin: 0 0 8px;
}

.mh-brand__usp p {
	font-size: 0.93rem;
	line-height: 1.6;
	color: #475569;
	margin: 0;
}

.mh-brand__tiles {
	max-width: var(--mh-brand-max);
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 22px;
	padding: 10px 22px 42px;
}

.mh-brand__tile {
	position: relative;
	display: block;
	border-radius: 18px;
	overflow: hidden;
	aspect-ratio: 16 / 9;
	text-decoration: none;
}

.mh-brand__tile img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.4s;
}

.mh-brand__tile:hover img {
	transform: scale(1.04);
}

.mh-brand__tile span {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	padding: 18px 20px;
	color: #fff;
	font-weight: 700;
	font-size: 1.05rem;
	background: linear-gradient(180deg, rgba(6, 20, 35, 0) 0%, rgba(6, 20, 35, 0.78) 100%);
}

.mh-brand__band {
	color: #fff;
	text-align: center;
	padding: 54px 22px;
}

/* legal small print above the closing band (Microthane®* patent note) */
.mh-brand__note {
	max-width: 900px;
	margin: 26px auto 30px;
	padding: 0 22px;
	font-size: 12px;
	color: var(--mh-muted, #5f6e7c);
}

.mh-brand__band h2 {
	color: #fff;
	font-size: clamp(1.4rem, 2.4vw, 2rem);
	margin: 0 0 10px;
}

.mh-brand__band p {
	opacity: 0.85;
	margin: 0 0 22px;
}

@media (max-width: 860px) {
	.mh-brand__figures,
	.mh-brand__usp-grid {
		grid-template-columns: repeat(2, 1fr);
	}

	.mh-brand__story,
	.mh-brand__tiles {
		grid-template-columns: 1fr;
		gap: 22px;
	}

	.mh-brand__story.is-flipped .mh-brand__story-media {
		order: 0;
	}

	.mh-brand__hero {
		min-height: 52vh;
	}
}

/* Round 13 — Faydalı məlumatlar / Haqqımızda: blog-style card grid on top of
   the editorial text (owner tasks B and C). */
.mh-info__grid {
	max-width: var(--mh-brand-max, 1180px);
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 22px;
	padding: 42px 22px;
}

.mh-info__card {
	display: flex;
	flex-direction: column;
	border: 1px solid var(--mh-line, #e2e8f0);
	border-radius: 16px;
	overflow: hidden;
	background: #fff;
	text-decoration: none;
	color: inherit;
	transition: transform 0.15s, box-shadow 0.15s;
}

.mh-info__card:hover {
	transform: translateY(-3px);
	box-shadow: 0 14px 30px rgba(15, 23, 42, 0.1);
}

.mh-info__media {
	display: block;
	aspect-ratio: 16 / 10;
	overflow: hidden;
	background: var(--mh-canvas, #f1f5f9);
}

.mh-info__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.mh-info__body {
	display: flex;
	flex-direction: column;
	gap: 8px;
	padding: 18px 20px 22px;
}

.mh-info__body strong {
	font-size: 1.05rem;
	line-height: 1.35;
}

.mh-info__text {
	font-size: 0.93rem;
	line-height: 1.6;
	color: #475569;
}

.mh-info__cta {
	margin-top: auto;
	font-weight: 700;
	color: var(--mh-blue, #1d84c4);
	font-size: 0.92rem;
}

.mh-info__content {
	max-width: 820px;
	margin: 0 auto;
	padding: 10px 22px 46px;
	font-size: 1.02rem;
	line-height: 1.75;
}

.mh-info__content h2 {
	margin-top: 34px;
}

@media (max-width: 860px) {
	.mh-info__grid {
		grid-template-columns: 1fr;
	}
}

/* Round 13 — pre-order garments: the LIPOELASTIC catalogue rendered in the
   made-to-order view (the archive has no products there by design). */
.mh-preorder-cat__intro {
	background: #fffbeb;
	border: 1px solid #fcd34d;
	border-radius: 12px;
	padding: 14px 18px;
	margin: 0 0 18px;
}

.mh-preorder-cat__filters {
	margin-bottom: 14px;
}

.mh-preorder-cat__reset {
	align-self: center;
	font-size: 0.9em;
}

.mh-preorder-cat__count {
	color: #475569;
	font-size: 0.92em;
	margin: 0 0 12px;
}

.mh-preorder-cat__grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
	gap: 16px;
}

.mh-preorder-cat__card {
	display: flex;
	flex-direction: column;
	gap: 6px;
	border: 1px solid var(--mh-line, #e2e8f0);
	border-radius: 14px;
	background: #fff;
	text-decoration: none;
	color: inherit;
	transition: transform 0.15s, box-shadow 0.15s;
}

.mh-preorder-cat__card:hover {
	transform: translateY(-2px);
	box-shadow: 0 10px 24px rgba(15, 23, 42, 0.09);
}

.mh-preorder-cat__card strong {
	font-size: 1.05rem;
}

.mh-preorder-cat__tags {
	font-size: 0.82rem;
	color: var(--mh-blue, #1d84c4);
	font-weight: 600;
}

.mh-preorder-cat__meta {
	font-size: 0.85rem;
	color: #64748b;
	line-height: 1.45;
}

.mh-preorder-cat__cta {
	margin-top: 6px;
	font-weight: 700;
	font-size: 0.9rem;
	color: var(--mh-blue, #1d84c4);
}

/* ---- Round 13d: desktop dropdown items -------------------------------------
   The 2px underline is meant for the top-level nav only; inside a dropdown it
   read as a thick rule between the items, and the current category kept the
   line permanently so its own hover did nothing. Dropdown items now highlight
   with a background tint and darker text — no lines at all. */
.main-navigation ul.menu ul.sub-menu li a,
.main-navigation ul.nav-menu ul.sub-menu li a,
.main-navigation ul.menu ul.sub-menu li a:hover,
.main-navigation ul.nav-menu ul.sub-menu li a:hover,
.main-navigation ul.menu ul.sub-menu li a:focus,
.main-navigation ul.nav-menu ul.sub-menu li a:focus,
.main-navigation ul.menu ul.sub-menu li:hover > a,
.main-navigation ul.nav-menu ul.sub-menu li:hover > a,
.main-navigation ul.menu ul.sub-menu li.current-menu-item > a,
.main-navigation ul.nav-menu ul.sub-menu li.current-menu-item > a,
.main-navigation ul.menu ul.sub-menu li.current_page_item > a,
.main-navigation ul.nav-menu ul.sub-menu li.current_page_item > a {
	/* The blue line was never a border — the top-level nav marks the hovered
	   item with `box-shadow: inset 0 -3px 0`, and that inherited into the
	   dropdown, where it read as a rule between the items. Both are cleared. */
	border-bottom: 0 !important;
	box-shadow: none !important;
	transition: background-color 0.15s, color 0.15s;
}

.main-navigation ul.menu ul.sub-menu li a:hover,
.main-navigation ul.menu ul.sub-menu li a:focus,
.main-navigation ul.nav-menu ul.sub-menu li a:hover,
.main-navigation ul.nav-menu ul.sub-menu li a:focus,
.main-navigation ul.menu ul.sub-menu li:hover > a,
.main-navigation ul.nav-menu ul.sub-menu li:hover > a {
	/* Clearly readable highlight: tinted row, darker blue text. */
	background: #dceaf8 !important;
	color: var(--mh-blue-dark) !important;
}

/* The page you are on stays readable but must not look pre-selected. */
.main-navigation ul.menu ul.sub-menu li.current-menu-item > a,
.main-navigation ul.nav-menu ul.sub-menu li.current-menu-item > a {
	color: var(--mh-ink, #111827);
	font-weight: 700;
}

/* Owner 2026-10-16 (scr 21): Storefront gives every dropdown link a fixed 200 px and forbids wrapping, so a long label —
   «Учётные записи и права доступа» in the cabinet's «Управление» on /ru — ran out of its panel over the page. The
   panel now takes the width of its longest label (never wider than the screen), and a label longer than that wraps. */
@media (min-width: 66.4989378333em) {
	.main-navigation .primary-navigation ul.menu ul.sub-menu,
	.main-navigation .primary-navigation ul.nav-menu ul.sub-menu {
		width: max-content;
		min-width: 200px;
		max-width: min(440px, calc(100vw - 32px));
	}

	.main-navigation .primary-navigation ul.menu ul.sub-menu li a,
	.main-navigation .primary-navigation ul.nav-menu ul.sub-menu li a {
		box-sizing: border-box;
		width: auto;
		min-width: 200px;
		white-space: normal;
	}
}

/* ---- Round 14: brand/editorial pages, real manufacturer media -------------
   Owner: "the image should fill the page completely horizontally, as does the
   frontpage image. Do not leave blank space on the sides." The hero lives
   inside Storefront's .col-full, so it has to break out of it. 100vw alone
   counts the scrollbar and would add a horizontal scrollbar, hence --mh-sbw
   (measured once in nav.js). */
.mh-brand__hero,
.mh-brand__band,
.mh-info__hero {
	--mh-bleed: calc(100vw - var(--mh-sbw, 0px));
}

/* The footer is near-black; a flat dark band above it merged into one block
   and the footer links read as if they sat inside the band. */
.mh-brand__band {
	background: linear-gradient(135deg, #0f2a44 0%, var(--mh-blue-dark, #0f6aa8) 100%);
}

.site-footer {
	border-top: 4px solid var(--mh-blue, #1789d6);
}

/* Manufacturer videos (owner: "use nice VIDEOs from multimedia folder"). */
.mh-brand__videos {
	max-width: var(--mh-brand-max, 1180px);
	margin: 0 auto;
	padding: 46px 22px 10px;
}

.mh-brand__videos h2 {
	font-size: clamp(1.3rem, 2.2vw, 1.9rem);
	margin: 0 0 20px;
}

.mh-brand__video-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
	gap: 20px;
}

.mh-brand__video {
	margin: 0;
	border-radius: 14px;
	overflow: hidden;
	background: #0f172a;
	box-shadow: 0 10px 26px rgba(15, 23, 42, 0.12);
}

.mh-brand__video video {
	display: block;
	width: 100%;
	aspect-ratio: 16 / 9;
	object-fit: cover;
	background: #0f172a;
}

.mh-brand__video figcaption {
	padding: 12px 14px;
	color: #fff;
	font-weight: 600;
	font-size: 0.95rem;
}

/* ---- Faydalı məlumatlar: three sections + long-form articles -------------- */
.mh-info__sections {
	max-width: var(--mh-brand-max, 1180px);
	margin: 0 auto;
	padding: 42px 22px 8px;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 22px;
}

.mh-info__section {
	display: flex;
	flex-direction: column;
	border: 1px solid var(--mh-line, #e5e7eb);
	border-radius: 16px;
	overflow: hidden;
	background: #fff;
	color: inherit;
	text-decoration: none;
	transition: transform 0.18s, box-shadow 0.18s;
}

.mh-info__section:hover {
	transform: translateY(-3px);
	box-shadow: 0 16px 34px rgba(15, 23, 42, 0.12);
}

.mh-info__section-media img {
	display: block;
	width: 100%;
	height: 190px;
	object-fit: cover;
}

.mh-info__section-body {
	padding: 18px 20px 22px;
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.mh-info__section-count {
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--mh-blue-dark, #0f6aa8);
}

.mh-info__section-body strong {
	font-size: 1.15rem;
}

.mh-info__popular {
	max-width: var(--mh-brand-max, 1180px);
	margin: 0 auto;
	padding: 26px 22px 0;
}

.mh-info__popular h2 {
	font-size: clamp(1.25rem, 2vw, 1.7rem);
	margin: 0 0 18px;
}

.mh-info__toc {
	max-width: var(--mh-brand-max, 1180px);
	margin: 0 auto;
	padding: 26px 22px 4px;
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.mh-info__toc a {
	border: 1px solid var(--mh-line, #e5e7eb);
	border-radius: 999px;
	padding: 8px 15px;
	font-size: 0.9rem;
	font-weight: 600;
	text-decoration: none;
	color: inherit;
	background: #fff;
}

.mh-info__toc a:hover {
	border-color: var(--mh-blue, #1789d6);
	color: var(--mh-blue-dark, #0f6aa8);
}

/* ---- Əlaqə ---------------------------------------------------------------- */
.mh-contact__cards {
	max-width: var(--mh-brand-max, 1180px);
	margin: 0 auto;
	padding: 42px 22px 10px;
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 18px;
}

.mh-contact__card {
	border: 1px solid var(--mh-line, #e5e7eb);
	border-radius: 16px;
	padding: 20px;
	display: flex;
	flex-direction: column;
	gap: 8px;
	background: #fff;
}

.mh-contact__label {
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #64748b;
}

.mh-contact__phone {
	font-size: 1.12rem;
	font-weight: 700;
	color: inherit;
	text-decoration: none;
}

.mh-contact__note {
	font-size: 0.92rem;
	line-height: 1.5;
	color: #475569;
}

.mh-contact__actions {
	margin-top: auto;
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	padding-top: 10px;
}

.mh-contact__wa,
.mh-contact__tel {
	border-radius: 999px;
	padding: 8px 14px;
	font-size: 0.88rem;
	font-weight: 700;
	text-decoration: none;
}

.mh-contact__wa {
	background: #25d366;
	color: #06371a;
}

.mh-contact__tel {
	border: 1px solid var(--mh-line, #e5e7eb);
	color: inherit;
}

.mh-contact__form-wrap {
	max-width: var(--mh-brand-max, 1180px);
	margin: 0 auto;
	padding: 20px 22px 46px;
}

.mh-contact-form {
	border: 1px solid var(--mh-line, #e5e7eb);
	border-radius: 18px;
	padding: 26px;
	background: #fff;
	scroll-margin-top: 90px;
}

.mh-contact-form h2 {
	margin: 0 0 8px;
	font-size: clamp(1.25rem, 2vw, 1.7rem);
}

.mh-contact-form__intro {
	color: #475569;
	margin: 0 0 18px;
}

.mh-contact-form__grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 14px;
}

.mh-contact-form label {
	display: flex;
	flex-direction: column;
	gap: 5px;
	font-weight: 600;
	font-size: 0.92rem;
}

.mh-contact-form input,
.mh-contact-form select,
.mh-contact-form textarea {
	width: 100%;
	font-weight: 400;
}

.mh-contact-form__msg {
	margin-top: 14px;
}

.mh-contact-form__notice {
	border-radius: 12px;
	padding: 12px 16px;
	margin: 0 0 16px;
	font-weight: 600;
}

.mh-contact-form__notice.is-ok {
	background: #e7f7ee;
	color: #14532d;
}

.mh-contact-form__notice.is-error {
	background: #fdecec;
	color: #7f1d1d;
}

/* Honeypot: present for bots, invisible and unfocusable for people. */
.mh-hp {
	position: absolute !important;
	left: -9999px !important;
	height: 1px;
	overflow: hidden;
}

@media (max-width: 900px) {
	.mh-info__sections,
	.mh-contact__cards {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 600px) {
	.mh-info__sections,
	.mh-contact__cards,
	.mh-contact-form__grid {
		grid-template-columns: 1fr;
	}
}

/* Pre-order garment cards now carry the model's own photo (owner 2026-08-01:
   "the scraper already captured each model's image URL"). Padding moves off
   the card so the picture can go edge to edge. */
.mh-preorder-cat__card {
	padding: 0;
	overflow: hidden;
}

.mh-preorder-cat__card > strong,
.mh-preorder-cat__tags,
.mh-preorder-cat__meta,
.mh-preorder-cat__cta {
	padding-left: 16px;
	padding-right: 16px;
}

.mh-preorder-cat__card > strong {
	padding-top: 14px;
}

.mh-preorder-cat__cta {
	padding-bottom: 14px;
}

.mh-preorder-cat__media {
	display: block;
	background: #f8fafc;
}

.mh-preorder-cat__media img {
	display: block;
	width: 100%;
	aspect-ratio: 4 / 5;
	object-fit: contain;
	padding: 8px;
}

/* ==========================================================================
   Round 13c — catalog layout (owner, 2026-08-01, three reports):
   1. filtering pushed the grid down and the explainer hid behind the panel —
      because the "sidebar" was never a column: it was a STICKY block sitting
      above the loop inside .site-main, so it floated over the products;
   2. the sticky+scrolling panel is nobody's pattern (Amazon simply lets the
      filter column scroll away with the page);
   3. cards were too wide — three of them filled the whole row and ran under
      the panel.
   The archive becomes a real two-column grid: filters left (static, in flow),
   content right, three cards per row. Below 992px the panel turns into an
   off-canvas drawer opened by a compact «Filtrlər» button.
   ========================================================================== */
@media (min-width: 992px) {
	.woocommerce.archive .site-main,
	.woocommerce.tax-product_cat .site-main {
		align-items: start;
	}

	.woocommerce.archive .site-main > *,
	.woocommerce.tax-product_cat .site-main > * {
		min-width: 0;
	}

	/* the filter column: first cell, spanning the whole run of rows */
	.woocommerce.archive .site-main > .mh-filterbar,
	.woocommerce.tax-product_cat .site-main > .mh-filterbar {
		grid-column: 1;
		position: static;
		max-height: none;
		overflow: visible;
		margin: 0;
	}

	/* The headline used to span both columns. It cannot: the filter panel holds
	   column 1 for rows 1-99, so a full-width item finds no free row and grid
	   auto-placement drops it BELOW the panel — taking the product loop with
	   it, which is why the catalogue opened with an empty screen. Title and
	   category text live in the content column, above the products. */
	.woocommerce.archive .site-main > .woocommerce-products-header,
	.woocommerce.tax-product_cat .site-main > .woocommerce-products-header,
	.woocommerce.archive .site-main > .term-description,
	.woocommerce.tax-product_cat .site-main > .term-description {
		grid-column: 2;
		text-align: left;
	}

	.woocommerce.archive .site-main > .woocommerce-products-header {
		margin: 0 0 6px;
	}

	/* three cards per row inside the content column */
	.woocommerce ul.products {
		display: grid;
		margin: 0;
	}

	.woocommerce ul.products li.product {
		width: 100% !important;
		margin: 0 !important;
		float: none !important;
		clear: none !important;
	}

	.woocommerce ul.products li.product img {
		margin-bottom: 10px;
	}

	.woocommerce ul.products li.product .woocommerce-loop-product__title {
		font-size: 0.98rem;
		line-height: 1.35;
	}
}

/* ------------------------------------------------- mobile: filters drawer */

@media (max-width: 991px) {
	.mh-filters-btn {
		display: inline-flex;
		align-items: center;
		gap: 8px;
		border: 1px solid var(--mh-line, #e2e8f0);
		background: #fff;
		border-radius: 999px;
		padding: 9px 16px;
		font-weight: 600;
		font-size: 0.92rem;
		cursor: pointer;
	}

	.mh-filters-bar {
		display: flex;
		align-items: center;
		gap: 10px;
		flex-wrap: wrap;
		margin: 0 0 14px;
	}

	/* compact header: the page used to push products below the fold */
	.woocommerce-products-header__title,
	.woocommerce-products-header h1 {
		font-size: 1.35rem !important;
		margin: 0 0 6px !important;
	}

	.term-description p {
		font-size: 0.92rem;
		line-height: 1.5;
	}

	.woocommerce-result-count {
		font-size: 0.85rem;
		margin: 0;
	}

	.mh-filterbar {
		position: fixed;
		top: 0;
		bottom: 0;
		/* The drawer slides on `left`, not `transform`: on staging the transform
		   value stayed pinned to the closed position even against an inline
		   !important, so the panel never came out. Position is unaffected. */
		left: -110vw;
		width: min(86vw, 380px);
		max-height: none;
		z-index: 100000;
		background: #fff;
		box-shadow: 0 0 40px rgba(15, 23, 42, 0.25);
		padding: 58px 18px 24px;
		overflow-y: auto;
		transition: left 0.25s ease;
		gap: 10px;
	}

	/* Both the body class and the panel's own class open it. */
	body.mh-filters-open .mh-filterbar,
	.mh-filterbar.is-open {
		left: 0 !important;
	}

	body.mh-filters-open::after {
		content: "";
		position: fixed;
		inset: 0;
		background: rgba(15, 23, 42, 0.45);
		z-index: 99999;
	}

	.mh-filters-close {
		position: absolute;
		width: 38px;
		height: 38px;
		border: 0;
		background: var(--mh-canvas, #f1f5f9);
		border-radius: 50%;
		font-size: 18px;
		cursor: pointer;
	}
}

/* Storefront clears its float layout with ul.products::before/::after. In a
   grid container those pseudo-elements become grid ITEMS and swallow the
   first and last cell — the top-left card slot rendered empty and the row
   count was off by one. */
.woocommerce ul.products::before,
.woocommerce ul.products::after,
.woocommerce-page ul.products::before,
.woocommerce-page ul.products::after {
	display: none !important;
}

/* ---- Round 14b: mobile catalog head ---------------------------------------
   Owner ("mobile 1" screenshot): the two CTA blocks, the sort row and the
   chips filled the whole first screen — products only started at ~1070px.
   The banners collapse to a single compact line, the chips scroll in one row
   and the sort control shares the row with the «Filtrlər» button. */
@media (max-width: 991px) {
	.mh-cta-banner {
		padding: 12px 14px !important;
		margin: 0 0 10px !important;
		border-radius: 12px;
	}

	.mh-cta-banner h2,
	.mh-cta-banner strong {
		font-size: 1rem !important;
		margin: 0 0 2px !important;
	}

	.mh-cta-banner p {
		font-size: 0.86rem !important;
		line-height: 1.4;
		margin: 0 !important;
	}

	/* the second (amber) banner is a repeat of the first call to action */
	.mh-cta-banner--amber {
		display: none !important;
	}

	.mh-cat-chips {
		overflow-x: auto;
		padding-bottom: 4px;
		scrollbar-width: none;
	}

	.mh-cat-chips::-webkit-scrollbar {
		display: none;
	}

	.mh-cat-chips a {
		flex: 0 0 auto;
		font-size: 0.85rem;
		padding: 7px 13px;
	}

	.storefront-sorting {
		margin: 0 0 8px;
	}

	.storefront-sorting .woocommerce-ordering select {
		font-size: 0.88rem;
		padding: 7px 10px;
	}

	/* keep the explainer readable but out of the way */
	.mh-filterbar__note {
		font-size: 0.84rem;
		line-height: 1.45;
		margin: 0 0 10px;
	}

	/* two cards per row: the owner's reference view shows products immediately */
	.woocommerce ul.products {
		display: grid !important;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 12px;
		margin: 0;
	}

	.woocommerce ul.products li.product {
		width: 100% !important;
		margin: 0 !important;
		float: none !important;
	}

	.woocommerce ul.products li.product .woocommerce-loop-product__title {
		font-size: 0.86rem;
		line-height: 1.3;
	}

	.woocommerce ul.products li.product .button {
		font-size: 0.82rem;
		padding: 8px 10px;
	}
}

/* The drawer's close button is injected once, for every screen size — but it
   only means anything while the panel is off-canvas. On desktop the panel is
   a normal column, so the button had nothing to close and just sat there. */
.mh-filters-close {
	display: none;
}

@media (max-width: 991px) {
	.mh-filters-close {
		display: block;
	}
}

/* ---- Round 24b: tidy catalog head ----------------------------------------
   Owner: "a lot of wasted space, products should be immediately visible".
   The head becomes one row — title/description left, pre-order CTA right as a
   solid contrasting button — the category chips move into the filter panel as
   its first dropdown, and the panel's own rows tighten up. */
@media (min-width: 992px) {
	.woocommerce.archive .site-main,
	.woocommerce.tax-product_cat .site-main {
		grid-template-columns: 250px minmax(0, 1fr) auto;
		column-gap: 26px;
		row-gap: 0;
	}

	/* everything spans the content area unless placed explicitly */

	.woocommerce.archive .site-main > .woocommerce-products-header,
	.woocommerce.tax-product_cat .site-main > .woocommerce-products-header {
		/* start-aligned: the title must sit at the TOP of the head row, level with
		   the filter panel; the CTA beside it is end-aligned so the two bottoms
		   still finish together once the button is two lines. */
		margin: 0;
	}

	/* the pre-order invitation sits on the title's line, hard right */
	.woocommerce.archive .site-main > .mh-cta-banner,
	.woocommerce.tax-product_cat .site-main > .mh-cta-banner {
		margin: 0;
	}

	.woocommerce.archive .site-main > .mh-filterbar,
	.woocommerce.tax-product_cat .site-main > .mh-filterbar {
		grid-row: 1 / span 99;
	}

	/* the chip row is redundant here — the panel's first dropdown does it */

	.woocommerce.archive .site-main > .storefront-sorting,
	.woocommerce.tax-product_cat .site-main > .storefront-sorting {
		margin: 6px 0 10px;
	}

	.woocommerce.archive .site-main > .woocommerce-products-header h1 {
		font-size: clamp(1.5rem, 2.2vw, 2rem);
		margin: 0 0 2px;
	}

	.woocommerce.archive .site-main > .woocommerce-products-header .term-description p {
		margin: 0;
		font-size: 0.94rem;
		color: #64748b;
	}
}

/* The invitation must read as an outside call to action, not page furniture:
   solid rectangle, contrasting fill, its own border. */
.mh-cta-banner--amber {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 12px 16px;
	border: 2px solid #b45309;
	border-radius: 10px;
	background: #fff7ed;
	color: #7c2d12 !important;
	text-decoration: none;
	box-shadow: 0 2px 0 #b45309;
	transition: background-color 0.15s, transform 0.15s;
}

.mh-cta-banner--amber:hover {
	background: #ffedd5;
	transform: translateY(-1px);
}

.mh-cta-banner--amber .mh-cta-banner__text {
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.mh-cta-banner--amber .mh-cta-banner__text strong {
	font-size: 0.95rem;
	line-height: 1.25;
}

.mh-cta-banner--amber .mh-cta-banner__text span {
	font-size: 0.82rem;
	line-height: 1.35;
	opacity: 0.9;
}

.mh-cta-banner--amber .mh-cta-banner__arrow {
	margin-left: auto;
	font-size: 1.2rem;
	font-weight: 700;
}

/* ---- filter panel: tighter rows ------------------------------------------
   Owner marked the gaps in red: the blocks stood far apart and the column ran
   past the fold for no reason. */
.mh-filterbar {
	gap: 1px !important;
}

.mh-filterbar__item {
	padding: 8px 12px !important;
	gap: 4px !important;
}

.mh-filterbar__label {
	font-size: 11px !important;
	letter-spacing: 0.06em;
	margin: 0;
}

.mh-filterbar__item select {
	padding: 7px 9px;
	font-size: 0.9rem;
	height: auto;
}

.mh-filterbar__item--cat select {
	font-weight: 700;
}

@media (min-width: 992px) {
	.mh-filterbar__clear {
		padding: 8px 12px !important;
		font-size: 0.86rem;
	}
}

/* ---- Round 24c: mobile catalog head, second pass -------------------------
   Owner's phone screenshots: dead space above the title, the sort dropdown
   alone on a wide row, the pager repeated at the top, and the drawer's filter
   rows standing far apart. */
@media (max-width: 991px) {

	.woocommerce-products-header {
		margin: 0 0 6px;
	}

	.woocommerce-products-header h1 {
		font-size: 1.32rem !important;
	}

	/* sort + «Filtrlər» share one row (the button is moved there in nav.js) */
	.storefront-sorting.mh-sorting--with-filters {
		display: flex;
		align-items: center;
		gap: 10px;
		flex-wrap: nowrap;
		margin: 0 0 8px;
	}

	.storefront-sorting.mh-sorting--with-filters .woocommerce-ordering {
		margin: 0;
	}

	.storefront-sorting.mh-sorting--with-filters .mh-filters-btn {
		flex: 0 0 auto;
		margin-left: auto;
	}

	.storefront-sorting.mh-sorting--with-filters .woocommerce-result-count {
		flex: 0 0 100%;
		order: 3;
		margin: 4px 0 0;
		font-size: 0.82rem;
	}

	/* the pager belongs at the END of the list; the copy above the products
	   just pushed them down (owner). `ul.products ~` re-enables the lower one. */
	.storefront-sorting .woocommerce-pagination {
		display: none;
	}

	ul.products ~ .storefront-sorting .woocommerce-pagination,
	.site-main > nav.woocommerce-pagination {
		display: block;
	}

	/* ---- drawer density --------------------------------------------------- */
	.mh-filterbar {
		display: grid !important;
		grid-template-columns: 1fr 1fr;
		gap: 8px !important;
		padding: 46px 14px 20px !important;
		align-content: start;
	}

	.mh-filterbar__item {
		padding: 4px 0 !important;
		gap: 3px !important;
		background: transparent !important;
	}

	.mh-filterbar__item--cat {
		grid-column: 1 / -1;
	}

	.mh-filterbar__clear,
	.mh-filterbar__note {
		grid-column: 1 / -1;
	}

	.mh-filters-close {
		top: 8px;
		right: 10px;
	}
}

/* ---- Round 24d: the last two dead rows in the catalog head ---------------
   Owner marked both in yellow: a strip above the title/panel, and a taller
   one under the description. The second was Storefront's own
   `padding-bottom: 4.2358em` on .woocommerce-products-header — ~96px of
   nothing between the description and the sort row. */
.woocommerce.archive .site-main > .woocommerce-products-header,
.woocommerce.tax-product_cat .site-main > .woocommerce-products-header {
	padding-bottom: 0 !important;
}

@media (min-width: 992px) {

	/* the button's lower edge lines up with the bottom of the title block */
	.woocommerce.archive .site-main > .mh-cta-banner,
	.woocommerce.tax-product_cat .site-main > .mh-cta-banner {
		padding: 10px 14px;
	}

	.woocommerce.archive .site-main > .mh-cta-banner .mh-cta-banner__text span,
	.woocommerce.tax-product_cat .site-main > .mh-cta-banner .mh-cta-banner__text span {
		font-size: 0.86rem;
		line-height: 1.35;
	}
}

/* ---- Round 24e: mobile drawer — one chevron, taps that work, no blue rule --
   Owner: two carets per item, sub-menus not opening, and a permanent blue line
   under the current page. The second caret is Storefront's decorative
   `li.menu-item-has-children:after`; the blue line is the top-level nav's
   `box-shadow: inset 0 -3px 0` leaking into the drawer, exactly as it did in
   the desktop dropdown. */
.handheld-navigation ul.menu > li.menu-item-has-children::after,
.handheld-navigation li.menu-item-has-children::after,
.handheld-navigation .dropdown-toggle {
	display: none !important;
	content: none !important;
}

.handheld-navigation ul.menu li a,
.handheld-navigation ul.menu li a:hover,
.handheld-navigation ul.menu li a:focus,
.handheld-navigation ul.menu li.current-menu-item > a,
.handheld-navigation ul.menu li.current_page_item > a,
.handheld-navigation ul.menu li.current-menu-ancestor > a,
.handheld-navigation ul.menu li.current-menu-parent > a {
	box-shadow: none !important;
	border-bottom: 0 !important;
}

/* the page you are on: readable, marked by weight — not by a rule */
.handheld-navigation ul.menu li.current-menu-item > a,
.handheld-navigation ul.menu li.current_page_item > a,
.handheld-navigation ul.menu li.current-menu-ancestor > a {
	color: var(--mh-ink, #111827) !important;
	font-weight: 700;
}

/* the parent row toggles, so it must feel like a control */
.handheld-navigation li.menu-item-has-children > a {
	cursor: pointer;
}

/* the chevron IS the hit area — the label must stay a working link */
.mh-submenu-toggle {
	pointer-events: auto;
	position: relative;
	z-index: 2;
	width: 56px;
	height: 48px;
	line-height: 48px;
}



/* ---- Round 24f: mobile head, final pass ----------------------------------
   Owner: the strip above the title is still there, and the result count and
   pager must disappear from the TOP of the list entirely — they belong under
   the products only. */
@media (max-width: 991px) {
	body:not(.home) .site-main {
		padding-top: 0;
	}

	.woocommerce-products-header {
		margin: 0 0 4px !important;
	}

	.woocommerce-products-header h1 {
		margin: 0 0 2px !important;
	}

	/* count + pager live at the END of the list; the copies above the products
	   are removed (the last .storefront-sorting keeps them). */
	.storefront-sorting.mh-sorting--with-filters .woocommerce-result-count,
	.storefront-sorting.mh-sorting--with-filters .woocommerce-pagination {
		display: none !important;
	}

	ul.products ~ .storefront-sorting .woocommerce-result-count,
	ul.products ~ .storefront-sorting .woocommerce-pagination {
		display: block !important;
	}

	/* sort control keeps a usable width next to the button */
	.storefront-sorting.mh-sorting--with-filters .woocommerce-ordering {
		flex: 1 1 auto;
		width: auto;
		min-width: 0;
	}

	.storefront-sorting.mh-sorting--with-filters .woocommerce-ordering select {
		width: 100%;
		min-width: 140px;
	}
}

/* ---- Round 24g: compact product cards ------------------------------------
   Owner: the blocks are too tall. The blank strip under the title was a
   `min-height: 2 lines` reserved so cards lined up — with a grid they align
   anyway, so it goes. Image, type, padding and the buy row all come down. */
.woocommerce ul.products li.product {
	border-radius: 10px;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title {
	min-height: 0 !important;
	font-size: 0.9rem !important;
	line-height: 1.3 !important;
}

.woocommerce ul.products li.product .price {
	font-size: 1rem !important;
}

.woocommerce ul.products li.product .mh-qty--loop .mh-qty__btn {
	padding: 4px 10px !important;
	font-size: 1rem;
	line-height: 1.2;
}

.woocommerce ul.products li.product .mh-qty--loop .mh-loop-qty {
	padding: 4px 2px !important;
	font-size: 0.9rem;
	width: 38px;
}

.woocommerce ul.products li.product .add_to_cart_button,
.woocommerce ul.products li.product .button {
	padding: 7px 14px !important;
	font-size: 0.85rem !important;
	margin: 0 !important;
}

@media (max-width: 991px) {

	.woocommerce ul.products li.product .woocommerce-loop-product__title {
		font-size: 0.84rem !important;
	}
}

/* The category control asks for a choice on the all-products view and pulses
   until one is made (owner 2026-08-01). It stops as soon as the shopper opens
   or focuses it — a control that keeps blinking after you have engaged with it
   is noise, not guidance. Motion-sensitive users get a static highlight. */
.mh-filterbar__item--cat.is-unset .mh-filterbar__label {
	color: var(--mh-blue-dark, #0f6aa8);
}

.mh-filterbar__item--cat.is-unset select {
	border: 2px solid var(--mh-blue, #1789d6);
	animation: mh-cat-pulse 1.6s ease-in-out infinite;
}

.mh-filterbar__item--cat.is-touched select {
	animation: none;
}

@keyframes mh-cat-pulse {
	0%, 100% {
		box-shadow: 0 0 0 0 rgba(23, 137, 214, 0.45);
		background-color: #fff;
	}

	50% {
		box-shadow: 0 0 0 6px rgba(23, 137, 214, 0);
		background-color: #eaf3fb;
	}
}

@media (prefers-reduced-motion: reduce) {
	.mh-filterbar__item--cat.is-unset select {
		animation: none;
		background-color: #eaf3fb;
	}
}

/* The all-products view gets the panel with just the category picker. */

/* The needle preview is rendered with the `hidden` attribute until a needle
   type is chosen — but an author `display` beats `hidden`, so the empty box
   painted as a stray pill under İynə növü (owner 2026-08-01). */
.mh-filter-needle[hidden] {
	display: none !important;
}

/* ---- Round 25: full-bleed heroes without a JS measurement -----------------
   Owner: "the top image on each page must fill the page completely, leaving no
   blanks on any side". The earlier version subtracted a scrollbar width that
   nav.js measured — one paint too late, so a strip stayed on the left. Plain
   100vw with the classic negative-margin trick is exact; the horizontal
   overflow it can create is clipped on the root instead. */
html,
body {
	overflow-x: clip; /* NOT hidden: hidden makes the root a scroll container and kills position:sticky */
}

.mh-brand__hero,
.mh-brand__band,
.mh-info__hero {
	width: 100vw;
	max-width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
}

/* ---- Round 25: faceted filter drawer (desktop + mobile) -------------------
   One panel for both, Temu-style: multi-select options, live counts, greyed
   (not removed) dead ends, and two buttons at the foot. */
.mh-drawer {
	position: fixed;
	inset: 0;
	z-index: 100000;
	background: rgba(15, 23, 42, 0.45);
	display: flex;
}

.mh-drawer[hidden] {
	display: none;
}

body.mh-drawer-open {
	overflow: hidden;
}

.mh-drawer__panel {
	background: #fff;
	width: min(440px, 100%);
	height: 100%;
	display: flex;
	flex-direction: column;
}

.mh-drawer__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 16px 18px;
	border-bottom: 1px solid var(--mh-line, #e5e7eb);
	font-size: 1.05rem;
}

/* Storefront's button padding (24px a side) overflowed the 38px width, so the
   circle stretched to a 48x38 oval and pushed the glyph 7px right of centre.
   Zero the padding and centre the glyph with flex rather than text metrics. */
.mh-drawer__close {
	border: 0;
	background: var(--mh-canvas, #f1f5f9);
	width: 38px;
	height: 38px;
	min-width: 38px;
	flex: 0 0 38px;
	padding: 0;
	border-radius: 50%;
	font-size: 17px;
	line-height: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
}

.mh-drawer__body {
	flex: 1 1 auto;
	overflow-y: auto;
	padding: 6px 18px 18px;
	-webkit-overflow-scrolling: touch;
}

.mh-facet {
	padding: 14px 0;
	border-bottom: 1px solid var(--mh-line, #eef2f6);
}

.mh-facet__title {
	font-size: 0.95rem;
	margin: 0 0 10px;
}

.mh-facet__opts {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.mh-opt {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	border: 1px solid var(--mh-line, #e5e7eb);
	border-radius: 999px;
	padding: 7px 13px;
	font-size: 0.9rem;
	cursor: pointer;
	background: #fff;
	transition: border-color 0.15s, background-color 0.15s, opacity 0.15s;
}

.mh-opt input {
	position: absolute;
	opacity: 0;
	width: 0;
	height: 0;
}

.mh-opt.is-on {
	border-color: var(--mh-blue, #1789d6);
	background: var(--mh-blue-050, #eaf3fb);
	font-weight: 600;
}

/* Ruled out by the current selection — visible, so the shopper can see WHY a
   combination is empty; no "clear your filters" warning needed. */
.mh-opt.is-dead {
	opacity: 0.38;
	cursor: not-allowed;
}

.mh-opt__count {
	font-style: normal;
	font-size: 0.78rem;
	color: #64748b;
}

.mh-opt__img {
	width: 26px;
	height: 26px;
	object-fit: contain;
}

.mh-drawer__foot {
	display: flex;
	gap: 10px;
	padding: 14px 18px calc(14px + env(safe-area-inset-bottom, 0px));
	border-top: 1px solid var(--mh-line, #e5e7eb);
	background: #fff;
}

.mh-drawer__reset,
.mh-drawer__apply {
	border-radius: 999px;
	padding: 12px 18px;
	font-weight: 700;
	font-size: 0.95rem;
	cursor: pointer;
	border: 1px solid var(--mh-line, #e5e7eb);
	background: #fff;
}

.mh-drawer__apply {
	flex: 1 1 auto;
	border: 0;
	background: var(--mh-blue, #1789d6);
	color: #fff;
}

.mh-drawer__apply.is-busy {
	opacity: 0.75;
}

.mh-drawer__apply[disabled] {
	background: #cbd5e1;
	cursor: not-allowed;
}

.mh-filters-btn__count {
	border-radius: 999px;
	padding: 1px 8px;
	font-size: 0.78rem;
	margin-left: 4px;
}

/* The opener is a normal toolbar control at every width now. */
.mh-filters-btn {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	border: 1px solid var(--mh-line, #e2e8f0);
	border-radius: 999px;
	padding: 9px 16px;
	font-weight: 600;
	font-size: 0.92rem;
	cursor: pointer;
}

/* The old two-column archive is gone with the sidebar: one content column. */
@media (min-width: 992px) {
	.woocommerce.archive .site-main,
	.woocommerce.tax-product_cat .site-main {
		display: block;
	}

	.woocommerce.archive .site-main > .mh-cat-chips,
	.woocommerce.tax-product_cat .site-main > .mh-cat-chips {
		display: flex;
	}
}

/* Full-bleed, final: `.mh-brand section { margin: 0 auto }` (one class + one
   element) outranked the plain `.mh-brand__hero` rule and kept resetting the
   negative margins, so the hero and the closing band never reached the page
   edges. Two classes win, and the id-free selector stays overridable. */
.mh-brand .mh-brand__hero,
.mh-brand .mh-brand__band,
.mh-brand .mh-info__hero,
.mh-info .mh-info__hero,
.mh-contact .mh-brand__band {
	width: 100vw;
	max-width: 100vw;
	margin-left: calc(50% - 50vw) !important;
	margin-right: calc(50% - 50vw) !important;
}

/* Drawer opens from the LEFT — that is where a filter panel belongs (owner). */
.mh-drawer {
	justify-content: flex-start;
}

.mh-drawer__panel {
	box-shadow: 18px 0 40px rgba(15, 23, 42, 0.22);
}

/* Category is navigation, not a filter: it is a link, and with attribute
   filters chosen every other category is a dead end, so it greys out. */
.mh-opt--cat {
	text-decoration: none;
	color: inherit;
}

.mh-opt.is-dead {
	pointer-events: none;
}

.mh-opt--cat.is-dead {
	pointer-events: none;
}

/* ---- Round 25b: catalog head, after the sidebar became a drawer -----------
   Owner: the title sits too close to the menu bar, the pre-order button lost
   its line, and «Filtrlər» must share a row with the category controls in the
   brand blue. */
@media (min-width: 992px) {
	body:not(.home).woocommerce.archive .site-main,
	body:not(.home).woocommerce.tax-product_cat .site-main {
		padding-top: 18px;
		display: grid;
		grid-template-columns: minmax(0, 1fr) auto;
		column-gap: 24px;
	}

	.woocommerce.archive .site-main > *,
	.woocommerce.tax-product_cat .site-main > * {
		grid-column: 1 / -1;
	}

	.woocommerce.archive .site-main > .woocommerce-products-header,
	.woocommerce.tax-product_cat .site-main > .woocommerce-products-header {
		grid-column: 1;
		grid-row: 1;
	}

	.woocommerce.archive .site-main > .mh-cta-banner,
	.woocommerce.tax-product_cat .site-main > .mh-cta-banner {
		grid-column: 2;
		grid-row: 1;
		justify-self: end;
		max-width: 340px;
	}
}

/* one row: category controls first, then the filter opener */
.mh-cat-chips {
	display: flex;
	gap: 10px;
}

.mh-cat-select {
	display: none;
}

.mh-filters-btn {
	flex: 0 0 auto;
	order: -1;
	background: var(--mh-blue, #1789d6);
	border-color: var(--mh-blue, #1789d6);
	color: #fff;
}

.mh-filters-btn__count {
	background: #fff;
	color: var(--mh-blue-dark, #0f6aa8);
}

@media (max-width: 991px) {
	/* the chip row scrolled sideways; a select fits beside the button */
	.mh-cat-chips {
		display: flex;
		gap: 8px;
		margin: 0 0 10px;
	}

	.mh-cat-chip {
		display: none;
	}

	.mh-cat-select {
		display: block;
		min-width: 0;
	}
}

/* ---- Round 25c: denser cards, less dead space -----------------------------
   Owner marked the gutters inside the image area: portrait product shots were
   letterboxed inside a 200px-tall box, so every card carried empty columns.
   Cards get four per row on wide screens, the image box is shorter and the
   picture fills its width. */
@media (min-width: 992px) {
	.woocommerce ul.products {
		grid-template-columns: repeat(4, minmax(0, 1fr));
		gap: 14px;
	}
}

.woocommerce ul.products li.product {
	padding: 8px 8px 10px !important;
}

.woocommerce ul.products li.product img,
.woocommerce ul.products li.product .attachment-woocommerce_thumbnail {
	max-height: 165px;
	width: 100%;
	/* CONTAIN, not cover. The photographs are square (324×324) and this box is
	   271×165, so `cover` threw away a third of every garment — the catalogue
	   review reported the compression garments as cropped, and they were.
	   `object-position` was moved from top to centre earlier to stop `cover`
	   cutting the bottom off the implants; that treated the symptom. Contain
	   keeps the box exactly this size, which is what the owner asked for, and
	   shows the whole picture inside it.
	   An identical selector 470 lines above already says contain — this rule
	   was quietly overriding it, which is the collision the note at the top of
	   this file warns about. */
	object-fit: contain;
	object-position: center center;
	background: #fff;
	border-radius: 8px;
	margin-bottom: 6px !important;
}

.woocommerce ul.products li.product .price {
	margin: 0 0 6px !important;
}

.woocommerce ul.products li.product .mh-loop-buy {
	gap: 5px;
}

/* the head and the rows above the grid give back some air too */
.woocommerce .site-main > .storefront-sorting {
	margin: 4px 0 6px !important;
}

.mh-cat-chips {
	margin: 0 0 10px;
}

.woocommerce-products-header {
	margin-bottom: 4px !important;
}

@media (max-width: 991px) {
	.woocommerce ul.products li.product img {
		max-height: 135px;
	}
}

/* The account chip wrapped onto a line of its own again: the header row is a
   flex container and the actions block was allowed to wrap once the row got
   tight. Keep the whole header on one line at desktop widths. */
@media (min-width: 66.5em) {
	.site-header > .col-full {
		flex-wrap: nowrap !important;
	}

	.site-header .mh-head-actions {
		flex: 0 0 auto;
		margin-left: auto;
	}

	.site-header .mh-user-chip {
		flex: 0 0 auto;
		align-self: center;
	}
}

/* ---- Round 25d: the row above the grid carries one control -----------------
   Owner: drop the sort dropdown and the result count from the top of the list
   (the count stays under the products), and keep the category select and the
   Filtrlər button on one line. */
.woocommerce .site-main > .storefront-sorting:first-of-type .woocommerce-ordering,
.woocommerce .site-main > .storefront-sorting:first-of-type .woocommerce-result-count {
	display: none !important;
}

ul.products ~ .storefront-sorting .woocommerce-ordering,
ul.products ~ .storefront-sorting .woocommerce-result-count {
	display: block !important;
}

.mh-cat-chips {
	flex-wrap: nowrap;
	align-items: center;
}

@media (max-width: 991px) {
	.mh-cat-select {
		margin: 0;
	}

	.mh-filters-btn {
		white-space: nowrap;
	}
}

/* Category select and the filter opener sit side by side, the select no wider
   than it needs to be (owner). */
.mh-cat-select {
	flex: 0 1 auto;
	max-width: 62%;
	padding: 9px 12px;
}

/* Guest header: the basket glyph sits low inside its box — centre the link
   itself so the icon shares the baseline of the account icon and search. */
.site-header .site-header-cart,
.site-header .site-header-cart .cart-contents {
	display: flex;
	align-items: center;
	line-height: 1;
	height: 36px;
}

.site-header .site-header-cart .cart-contents::before {
	line-height: 1;
	vertical-align: middle;
}

/* ---- Admin-bar offset, measured (owner console dump 2026-08-01) ------------
   .nojq (the WP.com admin bar) is 46px and WordPress already pushes the
   document down by it: .hfeed.site starts at 46. A second 46px was then added
   inside the page before the header, so the header began at 92 and left an
   empty strip. Neutralise the duplicate, and pin the sticky offset to the real
   bar height rather than the hard-coded 32px of a self-hosted install. */
.admin-bar .hfeed.site,
.admin-bar #page {
	margin-top: 0 !important;
	padding-top: 0 !important;
}

/* Measured in the owner's logged-in Chrome: the admin bar is FIXED and
   WordPress already pushes the document down by its height (html margin-top:
   46px), so the header's own box is correct at 46. Giving the sticky header
   top:46px shifted it down a second time — header at 92, a 46px strip above
   it. Sticky offset 0 keeps it flush at rest AND under the fixed bar when
   scrolled: with top:46px = 92, with top:0 = 46. */
/* Sticky offset MUST equal the admin bar height: at top:0 the stuck header
   slides under the fixed bar and only its lower half stays visible. Measured
   with the bar at 32px — top:0 gives rest=32 stuck=0, top:32 gives 32/32.
   (The 92px strip this once caused was the overflow-x:hidden scroll container,
   fixed separately.) Below 600px the bar scrolls away, so the offset drops. */
.admin-bar .site-header {
	margin-top: 0 !important;
	top: var( --wp-admin--admin-bar--height, 32px );
}

@media (max-width: 782px) {
	.admin-bar .site-header {
		top: var( --wp-admin--admin-bar--height, 46px );
	}
}

/* Opening a drawer sets body{overflow:hidden}, which makes BODY the scroll
   container. A sticky offset resolves against the nearest SCROLLING ancestor:
   while the drawer is shut that is the viewport and the header sits flush,
   because WordPress already pushes the document down by the bar height. The
   moment body becomes the scroller, the same offset is measured from the body
   box — which already starts below the fixed bar — so the height is counted
   twice (32 → 64, 46 → 92) and a strip of dimmed page shows above the header.
   Only logged-in users ever see it. The header is not scrolling while a drawer
   is open, so its offset belongs at zero. Specificity 0,3,1 beats both rules
   above at every breakpoint, so this needs no media query of its own — and it
   is a different cause from the 92px strip noted above, whose remedy must not
   be re-applied here. */
body.admin-bar.mh-drawer-open .site-header {
	top: 0;
}

/* The admin bar's second row was stealing the menu button.
   Between 783 and about 1100px the toolbar's items add up to more than the
   viewport (983px at 900px wide), so the whole secondary group — Reader, help,
   notifications, «Salam, …», search — wraps onto a second row at y 32–64. That
   row sits OUTSIDE #wpadminbar's own 32px box but inside its z-index 99999, so
   it paints over our header and `elementFromPoint` at the centre of
   .menu-toggle returns a.ab-item: a real click went to /hesabiniz/ instead of
   opening the menu. Logged-in users only, which is why it was never reported
   by a customer.
   Hiding four items that mean nothing on the shop front — the W logo, the
   WordPress.com Reader, the help centre and the toolbar search — takes 193px
   off and the bar fits one row again. Nothing is hidden inside wp-admin, and
   below 783px WordPress switches to its own compact toolbar anyway. */
@media screen and (min-width: 783px) and (max-width: 1100px) {
	body.admin-bar:not(.wp-admin) #wp-admin-bar-wp-logo,
	body.admin-bar:not(.wp-admin) #wp-admin-bar-reader,
	body.admin-bar:not(.wp-admin) #wp-admin-bar-help-center,
	body.admin-bar:not(.wp-admin) #wp-admin-bar-search,
	body.admin-bar:not(.wp-admin) #wp-admin-bar-stats {
		display: none;
	}
}

@media (max-width: 600px) {
	.admin-bar .site-header {
		top: 0;
	}
}

/* Mobile head: the sort control and the result count belong under the list
   only (owner, crossed out in red). The category select stays with the filter
   button. */
@media (max-width: 991px) {
	.woocommerce .site-main > .storefront-sorting .woocommerce-ordering,
	.woocommerce .site-main > .storefront-sorting .woocommerce-result-count {
		display: none !important;
	}

	ul.products ~ .storefront-sorting .woocommerce-ordering,
	ul.products ~ .storefront-sorting .woocommerce-result-count {
		display: block !important;
	}

/* ---- Round 25e: on phones the page title IS the category picker -----------
   Owner's sketch: the heading carries a small arrow and switching category
   happens right there, instead of a heading plus a separate select below it.
   No new markup — the category <select> already rendered in the chip row is
   promoted to the title's place and styled as the heading; the <h1> is hidden
   (it stays in the DOM for search engines and screen readers). */
	.woocommerce.archive .site-main,
	.woocommerce.tax-product_cat .site-main {
		display: flex;
		flex-direction: column;
	}

	.woocommerce.archive .site-main > .mh-cat-chips,
	.woocommerce.tax-product_cat .site-main > .mh-cat-chips {
		order: -2;
		margin: 0 0 2px;
	}

	.woocommerce.archive .site-main > .woocommerce-products-header,
	.woocommerce.tax-product_cat .site-main > .woocommerce-products-header {
		order: -1;
	}

	.woocommerce-products-header h1 {
		position: absolute !important;
		width: 1px;
		height: 1px;
		overflow: hidden;
		clip: rect(0 0 0 0);
		white-space: nowrap;
	}

	/* the select, wearing the title's clothes */
	.mh-cat-select {
		flex: 1 1 auto;
		max-width: none;
		border: 0;
		background: transparent;
		padding: 0 24px 0 0;
		font-size: 1.32rem;
		font-weight: 700;
		line-height: 1.25;
		color: var(--mh-ink, #111827);
		appearance: none;
		-webkit-appearance: none;
		background-image: url( "data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20' fill='none' stroke='%231789d6' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 8l5 5 5-5'/%3E%3C/svg%3E" );
		background-repeat: no-repeat;
		background-position: right 2px center;
		background-size: 20px 20px;
	}

	.mh-cat-select:focus {
		outline: 2px solid var(--mh-blue, #1789d6);
		outline-offset: 4px;
		border-radius: 4px;
	}

	/* the opener drops under the heading row, full-width and unmistakable */
	.mh-cat-chips {
		flex-wrap: wrap;
	}

	.mh-filters-btn {
		order: 2;
		flex: 0 0 auto;
		margin-top: 8px;
	}

	.term-description p {
		margin: 0 0 8px;
	}

/* The category select IS the page title, so it must lead; the opener follows
   on its own line (owner). Column layout beats the ordering the desktop rule
   gives the button. */
	.woocommerce .site-main > .mh-cat-chips {
		gap: 6px;
	}

	.woocommerce .site-main > .mh-cat-chips .mh-cat-select {
		width: 100%;
	}

	.woocommerce .site-main > .mh-cat-chips .mh-filters-btn {
		align-self: flex-start;
		margin-top: 2px;
	}
}

/* Compact pre-order invitation beside the filter opener — phones only; the
   wide amber banner keeps that job on desktop. */
.mh-preorder-inline {
	display: none;
}

@media (max-width: 991px) {
	.woocommerce .site-main > .mh-cat-chips .mh-preorder-inline {
		display: block;
		order: 2;
		border: 2px solid #b45309;
		border-radius: 10px;
		background: #fff7ed;
		color: #7c2d12;
		text-decoration: none;
		padding: 9px 12px;
		font-size: 0.86rem;
		line-height: 1.35;
		font-weight: 600;
	}

	.woocommerce .site-main > .mh-cat-chips {
		flex-direction: row;
		flex-wrap: wrap;
		align-items: center;
	}

	.woocommerce .site-main > .mh-cat-chips .mh-cat-select {
		order: -1;
		flex: 1 1 100%;
	}

	.woocommerce .site-main > .mh-cat-chips .mh-filters-btn {
		order: 1;
		flex: 0 0 auto;
	}

	.woocommerce .site-main > .mh-cat-chips .mh-preorder-inline {
		flex: 1 1 auto;
		min-width: 55%;
	}
}

/* Brand / Faydalı məlumatlar / Haqqımızda: the hero must butt against the
   header. Storefront pads .site-content, which showed as a thin band between
   the menu and the image (owner marked it red). */
.site-content:has( .mh-brand ),
.site-content:has( .mh-info ),
.site-content:has( .mh-contact ) {
	padding-top: 0 !important;
	margin-top: 0 !important;
}

.mh-brand > .mh-brand__hero:first-child,
.mh-info > .mh-info__hero:first-child,
.mh-brand > .mh-info__hero:first-child {
	margin-top: 0 !important;
}

/* Fallback for engines without :has() — the wrapper pulls itself up by the
   same padding instead. */
@supports not selector(:has(*)) {
	.mh-brand,
	.mh-info,
	.mh-contact {
		margin-top: -26px;
	}
}

/* ---- Brendlər hub: three doors, one per manufacturer ---------------------- */
.mh-hub__grid {
	max-width: var(--mh-brand-max, 1180px);
	margin: 0 auto;
	padding: 42px 22px 8px;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 24px;
}

.mh-hub__card {
	display: flex;
	flex-direction: column;
	border: 1px solid var(--mh-line, #e5e7eb);
	border-radius: 16px;
	overflow: hidden;
	background: #fff;
	transition: transform 0.18s, box-shadow 0.18s;
}

.mh-hub__card:hover {
	transform: translateY(-3px);
	box-shadow: 0 16px 34px rgba(15, 23, 42, 0.12);
}

.mh-hub__media {
	position: relative;
	display: block;
	background: #0f172a;
}

.mh-hub__media img {
	display: block;
	width: 100%;
	height: 190px;
	object-fit: cover;
}

/* the logo sits on the image, reversed out — same treatment as the brand hero */
.mh-hub__logo {
	position: absolute;
	left: 18px;
	bottom: 14px;
	width: auto !important;
	height: 30px !important;
	object-fit: contain !important;
	filter: brightness(0) invert(1);
}

.mh-hub__body {
	display: flex;
	flex-direction: column;
	gap: 8px;
	padding: 18px 20px 22px;
	flex: 1 1 auto;
}

.mh-hub__eyebrow {
	margin: 0;
	font-size: 0.76rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--mh-blue-dark, #0f6aa8);
}

.mh-hub__name {
	margin: 0;
}

.mh-hub__lead {
	margin: 0;
	font-size: 0.94rem;
	line-height: 1.55;
	color: #475569;
}

.mh-hub__facts {
	list-style: none;
	margin: 4px 0 0;
	padding: 0;
}

.mh-hub__facts li {
	border: 1px solid var(--mh-line, #e5e7eb);
	border-radius: 999px;
	padding: 4px 11px;
	font-size: 0.8rem;
	font-weight: 600;
	color: #334155;
	/* Owner 2026-08-05: a chip never breaks mid-text — it wraps whole. */
	white-space: nowrap;
	max-width: 100%;
	overflow: hidden;
	text-overflow: ellipsis;
}

.mh-hub__actions {
	margin-top: auto;
	padding-top: 14px;
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.mh-hub__cta {
	text-decoration: none;
}

.mh-hub__link {
	font-size: 0.88rem;
	color: #64748b;
	text-decoration: none;
}

.mh-hub__link:hover,
.mh-hub__cta:hover {
	text-decoration: underline;
}

@media (max-width: 900px) {
	.mh-hub__grid {
		grid-template-columns: 1fr;
		padding: 24px 18px 4px;
		gap: 16px;
	}

	.mh-hub__media img {
		height: 160px;
	}
}

/* The whole card is the link now (owner) — no nested anchors. */
a.mh-hub__card {
	color: inherit;
	text-decoration: none;
}

.mh-hub__body > span {
	display: block;
}

.mh-hub__facts {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
}

.mh-hub__facts > span {
	border: 1px solid var(--mh-line, #e5e7eb);
	border-radius: 999px;
	padding: 4px 11px;
	font-size: 0.8rem;
	font-weight: 600;
	color: #334155;
	/* Owner 2026-08-05: a chip never breaks mid-text — it wraps whole. */
	white-space: nowrap;
	max-width: 100%;
	overflow: hidden;
	text-overflow: ellipsis;
}

.mh-hub__name {
	font-size: 1.25rem;
	font-weight: 700;
}

.mh-hub__cta {
	margin-top: auto;
	padding-top: 12px;
	font-weight: 700;
	color: var(--mh-blue-dark, #0f6aa8);
}

/* USP cards: two per row squeezed every label onto three or four lines on a
   phone. One per row below 900px (owner) — same on all three brand pages. */
@media (max-width: 900px) {
	.mh-brand__usp-grid {
		grid-template-columns: 1fr !important;
		gap: 12px;
	}

	.mh-brand__usp {
		padding: 16px 18px;
	}

	.mh-brand__usp h3 {
		font-size: 1.02rem;
		margin: 0 0 6px;
	}

	.mh-brand__usp p {
		font-size: 0.94rem;
		line-height: 1.5;
		margin: 0;
	}

	.mh-brand__figures {
		grid-template-columns: repeat(2, 1fr);
	}
}

/* ---- Sibling switcher: move between the pages of a section ---------------- */
.mh-siblings {
	max-width: var(--mh-brand-max, 1180px);
	margin: 0 auto;
	padding: 18px 22px 0;
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.mh-siblings__item {
	border: 1px solid var(--mh-line, #e5e7eb);
	border-radius: 999px;
	padding: 8px 16px;
	font-size: 0.92rem;
	font-weight: 600;
	text-decoration: none;
	color: inherit;
	background: #fff;
	transition: border-color 0.15s, background-color 0.15s, color 0.15s;
}

.mh-siblings__item:hover {
	border-color: var(--mh-blue, #1789d6);
	color: var(--mh-blue-dark, #0f6aa8);
}

.mh-siblings__item.is-current {
	background: var(--mh-ink, #0f172a);
	border-color: var(--mh-ink, #0f172a);
	color: #fff;
	cursor: default;
	pointer-events: none;
}

@media (max-width: 600px) {
	.mh-siblings {
		flex-wrap: nowrap;
		overflow-x: auto;
		padding: 14px 18px 0;
		scrollbar-width: none;
	}

	.mh-siblings::-webkit-scrollbar {
		display: none;
	}

	.mh-siblings__item {
		flex: 0 0 auto;
		font-size: 0.86rem;
		padding: 7px 13px;
	}
}

/* ---- Price filter inside the drawer -------------------------------------- */
.mh-price {
	display: flex;
	align-items: flex-end;
	gap: 8px;
}

.mh-price__field {
	flex: 1 1 0;
	display: flex;
	flex-direction: column;
	gap: 3px;
	font-size: 0.74rem;
	color: var(--mh-muted, #64748b);
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.03em;
}

.mh-price__field input {
	width: 100%;
	min-width: 0;
	padding: 7px 9px;
	font-size: 0.9rem;
	font-weight: 500;
	color: var(--mh-ink, #0f172a);
	text-transform: none;
	letter-spacing: 0;
	border: 1px solid var(--mh-line, #e5e7eb);
	border-radius: 8px;
	background: #fff;
	-moz-appearance: textfield;
}

.mh-price__field input::-webkit-outer-spin-button,
.mh-price__field input::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

.mh-price__field input:focus {
	outline: none;
	border-color: var(--mh-blue, #1789d6);
}

.mh-price__dash {
	padding-bottom: 9px;
	color: var(--mh-muted, #64748b);
}

/* ---- Catalog head: pager in the chip row, no empty bands ------------------ */
@media (min-width: 992px) {
	/* The title used to sit at the BOTTOM of the head row, so a tall call to
	   action beside it left a blank band above the heading (owner 2026-08-02).
	   Both start at the top now and the row is only as tall as it needs. */
	.woocommerce.archive .site-main > .woocommerce-products-header,
	.woocommerce.tax-product_cat .site-main > .woocommerce-products-header {
		align-self: start;
	}

	.woocommerce.archive .site-main > .mh-cta-banner,
	.woocommerce.tax-product_cat .site-main > .mh-cta-banner {
		align-self: start;
	}

	.mh-chips__pager {
		margin-left: auto;
		display: flex;
		align-items: center;
	}

	.mh-chips__pager .woocommerce-pagination {
		margin: 0;
		padding: 0;
		border: 0;
	}

	.mh-chips__pager .woocommerce-pagination ul {
		margin: 0;
		border: 0;
	}
}

/* Phones keep paging at the foot of the list only. */
@media (max-width: 991px) {
	.mh-chips__pager {
		display: none;
	}
}

/* ---- Catalog head, second pass (owner 2026-08-02) ------------------------- */
/* 1. The blank line between the menu and the page title was 37px of padding:
      19.2px on .site-content plus 18px on .site-main. Both go on catalog
      archives; other page types keep their breathing room. */

body:not(.home).woocommerce.archive .site-main,
body:not(.home).woocommerce.tax-product_cat .site-main,
body:not(.home).woocommerce.post-type-archive-product .site-main {
	padding-top: 0;
}

/* 2. The number circles were 38px and touched the chip above them. 30% off. */
.woocommerce-pagination .page-numbers li a.page-numbers,
.woocommerce-pagination .page-numbers li span.page-numbers,
.woocommerce-pagination ul.page-numbers li a,
.woocommerce-pagination ul.page-numbers li span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 27px;
	width: auto;
	height: 27px;
	padding: 0 6px;
	font-size: 0.78rem;
	line-height: 1;
}

.mh-chips__pager .page-numbers {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	white-space: nowrap;
}

.mh-chips__pager .page-numbers li {
	float: none;
}

/* ---- Catalog head, third pass (owner 2026-08-02) -------------------------- */
/* A third of the row I removed comes back as breathing room: the pre-order box
   was touching the menu, and the chips were touching the box. */
.woocommerce.archive .site-content,
.woocommerce.tax-product_cat .site-content,
.woocommerce.post-type-archive-product .site-content {
	padding-top: 12px;
}

@media (min-width: 992px) {
	.woocommerce.archive .site-main > .mh-cat-chips,
	.woocommerce.tax-product_cat .site-main > .mh-cat-chips {
		margin-top: 12px;
	}
}

/* Narrower pills: same row, roughly a quarter less width each. */
.mh-cat-chips .mh-cat-chip,
.mh-cat-chips .mh-filters-btn {
	padding: 8px 10px;
	font-size: 0.76rem;
}

/* ---- Guest price notice in the catalog head ------------------------------- */
/* Owner 2026-08-02, second round: not a stacked card in the narrow right
   column but a wide band under the title, spanning the content column --
   the row shape the banner was designed for. The amber pre-order box keeps
   the top-right corner; the chips auto-place below the band, because a
   full-width row cannot land beside a column-1 occupant. Phones unchanged. */
@media (min-width: 992px) {
	.woocommerce.archive .site-main > .mh-cta-banner--blue,
	.woocommerce.tax-product_cat .site-main > .mh-cta-banner--blue,
	.woocommerce.post-type-archive-product .site-main > .mh-cta-banner--blue {
		/* Owner, 2026-08-25: the band fills the WHOLE row — the empty strip
		   under the pre-order card annoyed more than it balanced. */
		grid-column: 1 / -1;
		grid-row: 2;
		justify-self: stretch;
		align-self: start;
		max-width: none;
		flex-direction: row;
		align-items: center;
		justify-content: space-between;
		gap: 18px;
		padding: 14px 18px;
		margin: 12px 0 0;
	}

	.woocommerce.archive .site-main > .mh-cta-banner--blue .mh-cta-banner__text,
	.woocommerce.tax-product_cat .site-main > .mh-cta-banner--blue .mh-cta-banner__text,
	.woocommerce.post-type-archive-product .site-main > .mh-cta-banner--blue .mh-cta-banner__text {
		min-width: 0;
		gap: 3px;
	}

	.woocommerce.archive .site-main > .mh-cta-banner--blue strong,
	.woocommerce.tax-product_cat .site-main > .mh-cta-banner--blue strong,
	.woocommerce.post-type-archive-product .site-main > .mh-cta-banner--blue strong {
		font-size: 1rem;
		line-height: 1.3;
	}

	.woocommerce.archive .site-main > .mh-cta-banner--blue span,
	.woocommerce.tax-product_cat .site-main > .mh-cta-banner--blue span,
	.woocommerce.post-type-archive-product .site-main > .mh-cta-banner--blue span {
		font-size: 0.84rem;
		line-height: 1.4;
	}

	.woocommerce.archive .site-main > .mh-cta-banner--blue .mh-cta-actions,
	.woocommerce.tax-product_cat .site-main > .mh-cta-banner--blue .mh-cta-actions,
	.woocommerce.post-type-archive-product .site-main > .mh-cta-banner--blue .mh-cta-actions {
		display: flex;
		flex: 0 0 auto;
		flex-wrap: nowrap;
		gap: 10px;
	}

	.woocommerce.archive .site-main > .mh-cta-banner--blue .mh-cta-actions .button,
	.woocommerce.tax-product_cat .site-main > .mh-cta-banner--blue .mh-cta-actions .button,
	.woocommerce.post-type-archive-product .site-main > .mh-cta-banner--blue .mh-cta-actions .button {
		flex: 0 0 auto;
		margin: 0;
		padding: 9px 16px;
		font-size: 0.84rem;
		white-space: nowrap;
	}
}


/* ---- R28: cabinet «Sayt redaktoru» (website editor) ----------------------- */
.mh-sedit__cards { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 14px; margin: 14px 0; }
.mh-sedit__card { border: 1px solid #e2e8f0; border-radius: 10px; padding: 14px; display: flex; flex-direction: column; gap: 8px; background: #fff; }
.mh-sedit__badge { font-size: 12px; color: #64748b; }
.mh-sedit__badge.is-custom { color: #0f766e; font-weight: 600; }
.mh-sedit__actions { display: flex; gap: 8px; }
/* Owner 2026-10-16 (scr 18): «Redaktə et» + «Bax ↗» — «Редактировать» + «Смотреть ↗» on /ru — are wider than a 260 px card
   at the cabinet's large-screen type scale, and ran out of the card into its neighbour with the arrow wrapped under the
   word. The pair now wraps onto a second line inside the card, each button on one line, and sits at the card's foot. */
.mh-sedit__cards .mh-sedit__card { min-width: 0; }
.mh-sedit__cards .mh-sedit__card .mh-sedit__actions { flex-wrap: wrap; margin-top: auto; }
.mh-sedit__cards .mh-sedit__card .mh-sedit__actions .button { flex: 0 1 auto; max-width: 100%; margin: 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.mh-sedit__form { margin-top: 6px; }
.mh-sedit__group { border: 1px solid #e2e8f0; border-radius: 10px; padding: 12px 14px; margin: 0 0 14px; background: #fff; }
.mh-sedit__group > legend { font-weight: 700; padding: 0 6px; }
.mh-sedit__group .mh-sedit__group { background: #f8fafc; }
.mh-sedit__row { display: flex; align-items: flex-start; gap: 10px; margin: 7px 0; }
.mh-sedit__row > span:first-child { flex: 0 0 220px; font-size: 13px; color: #475569; padding-top: 6px; }
.mh-sedit__row input[type='text'], .mh-sedit__row input[type='number'], .mh-sedit__row textarea { flex: 1 1 auto; width: 100%; }
.mh-sedit__row textarea { line-height: 1.45; }
.mh-sedit__ro { background: #f1f5f9; color: #94a3b8; }
.mh-sedit__row--check input[type='checkbox'] { margin-top: 8px; }
.mh-sedit__media { display: flex; align-items: center; gap: 8px; flex: 1 1 auto; }
.mh-sedit__thumb { width: 56px; height: 42px; object-fit: cover; border-radius: 6px; border: 1px solid #e2e8f0; flex: 0 0 auto; }
.mh-sedit__thumb--icon { display: inline-flex; align-items: center; justify-content: center; font-size: 20px; background: #f1f5f9; }
.mh-sedit__media-input { min-width: 0; }
.mh-sedit__item { border: 1px dashed #cbd5e1; border-radius: 8px; padding: 10px 12px; margin: 10px 0; background: #fff; }
.mh-sedit__item-head { display: flex; justify-content: space-between; align-items: center; margin-bottom: 6px; font-weight: 600; color: #334155; }
.mh-sedit__item-ctl { display: flex; gap: 4px; }
.mh-sedit__item-ctl .button { padding: 2px 9px; line-height: 1.6; }
.mh-sedit__save { position: sticky; bottom: 0; background: #fff; border-top: 2px solid #1789d6; padding: 12px 0; margin-top: 10px; z-index: 5; }
.mh-sedit__danger { margin: 16px 0 30px; display: flex; gap: 8px; }
.mh-sedit-modal { position: fixed; inset: 0; background: rgba(15, 23, 42, 0.55); z-index: 100000; display: flex; align-items: center; justify-content: center; padding: 20px; }
.mh-sedit-modal__box { background: #fff; border-radius: 12px; max-width: 860px; width: 100%; max-height: 82vh; display: flex; flex-direction: column; overflow: hidden; }
.mh-sedit-modal__head { display: flex; gap: 10px; align-items: center; padding: 12px 14px; border-bottom: 1px solid #e2e8f0; }
.mh-sedit-modal__head input[type='search'] { flex: 1 1 auto; }
.mh-sedit-modal__grid { overflow: auto; display: grid; grid-template-columns: repeat(auto-fill, minmax(110px, 1fr)); gap: 8px; padding: 12px 14px; }
.mh-sedit-modal__cell { border: 1px solid #e2e8f0; border-radius: 8px; padding: 0; height: 84px; overflow: hidden; cursor: pointer; background: #f8fafc; font-size: 26px; }
.mh-sedit-modal__cell img { width: 100%; height: 100%; object-fit: cover; display: block; }
.mh-sedit-modal__cell:hover { outline: 2px solid #1789d6; }
.mh-sedit-modal__folders { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; padding: 10px 14px 0; }
.mh-sedit-modal__folders[hidden] { display: none; }
.mh-sedit-modal__folder { border: 1px solid #cfdbe6; border-radius: 999px; background: #eef4fa; padding: 5px 13px; cursor: pointer; font-size: 14px; color: #16232e; }
.mh-sedit-modal__folder em { font-style: normal; color: #7a8794; font-size: 12px; }
.mh-sedit-modal__folder:hover { border-color: #1789d6; background: #e2eefb; }
.mh-sedit-modal__folder--back { background: #fff; }
.mh-sedit-modal__crumb { font-size: 13px; color: #7a8794; }
@media (max-width: 760px) {
	.mh-sedit__row { flex-direction: column; gap: 4px; }
	.mh-sedit__row > span:first-child { flex-basis: auto; padding-top: 0; }
}


/* ---- R28: image framing (pan+zoom) ---------------------------------------- */
/* Framed product images scale inside their card: clip the containers. */
.woocommerce ul.products li.product .woocommerce-LoopProduct-link,
.woocommerce ul.products li.product > a,
.mhf-feat-card a { overflow: hidden; }
.woocommerce div.product div.images .woocommerce-product-gallery__image { overflow: hidden; }
.mh-sedit__frame.is-set { outline: 2px solid #0f766e; }
.mh-sedit__catbar { margin: 10px 0 14px; display: flex; gap: 8px; align-items: center; }
.mh-sedit__prods { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 10px; }
.mh-sedit__prod { border: 1px solid #e2e8f0; border-radius: 10px; background: #fff; padding: 0 0 8px; cursor: pointer; position: relative; overflow: hidden; text-align: center; }
.mh-sedit__prod img { width: 100%; height: 120px; object-fit: cover; display: block; }
.mh-sedit__prod span { font-size: 12px; color: #334155; display: block; padding: 6px 8px 0; max-height: 3.6em; overflow: hidden; }
.mh-sedit__prod em { position: absolute; top: 6px; right: 8px; font-style: normal; }
.mh-sedit__prod.is-framed { outline: 2px solid #0f766e; }
.mh-sedit__prod:hover { outline: 2px solid #1789d6; }
.mh-sedit__pager a, .mh-sedit__pager strong { display: inline-block; padding: 2px 8px; }
.mh-frame-pop { position: fixed; inset: 0; background: rgba(15, 23, 42, 0.55); z-index: 100001; display: flex; align-items: center; justify-content: center; padding: 20px; }
.mh-frame-pop__box { background: #fff; border-radius: 12px; padding: 16px 18px; width: 320px; display: flex; flex-direction: column; gap: 10px; }
.mh-frame-pop__prev { width: 100%; height: 190px; overflow: hidden; border-radius: 8px; border: 1px solid #e2e8f0; background: #f1f5f9; }
.mh-frame-pop__prev img { width: 100%; height: 100%; object-fit: cover; display: block; }
.mh-frame-pop__box label { font-size: 13px; color: #475569; display: flex; flex-direction: column; gap: 2px; }
.mh-frame-pop__btns { display: flex; flex-wrap: wrap; gap: 6px; }


/* ---- R28b: sizer inquiry (price replaced by contact line) ----------------- */
.mh-sizer-note { display: inline-block; font-size: 15px; font-weight: 600; color: #0f6aa8; max-width: 420px; line-height: 1.4; }
.mh-sizer-form { margin: 14px 0 6px; display: flex; flex-direction: column; gap: 8px; max-width: 420px; }
.mh-sizer-form textarea { width: 100%; border: 1px solid #cbd5e1; border-radius: 8px; padding: 8px 10px; }
.mh-sizer-ok { background: #ecfdf5; border: 1px solid #10b981; color: #065f46; border-radius: 8px; padding: 10px 14px; margin: 12px 0; max-width: 420px; }


/* ---- R28b: overlay hidden-attr fix + chip unread badge --------------------- */
/* [hidden] must actually hide: the flex display on the base class was
   overriding the UA rule — both overlays rendered open (owner bug report). */
.mh-sedit-modal[hidden],
.mh-frame-pop[hidden] { display: none !important; }
.mh-user-chip__btn { position: relative; }
.mh-drawer__panel.is-loading .mh-drawer__body { opacity: 0.45; pointer-events: none; transition: opacity 0.15s; }
.mh-sedit-modal__preview { display: flex; flex-direction: column; gap: 10px; padding: 12px 14px 14px; min-height: 0; }
.mh-sedit-modal__preview[hidden] { display: none; }
.mh-sedit-modal__pvmedia { flex: 1; min-height: 0; display: flex; align-items: center; justify-content: center; background: #0f172a; border-radius: 10px; overflow: hidden; }
.mh-sedit-modal__pvmedia img, .mh-sedit-modal__pvmedia video { max-width: 100%; max-height: 52vh; object-fit: contain; display: block; }
.mh-sedit-modal__pvbar { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.mh-sedit-modal__pvbar > span:first-child { font-size: 14px; color: #334155; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.mh-user-chip__cbadge { position: absolute; top: -7px; right: -9px; background: #f59e0b; color: #fff; font-size: 11px; font-weight: 700; min-width: 18px; height: 18px; line-height: 18px; border-radius: 9px; text-align: center; padding: 0 4px; box-shadow: 0 1px 4px rgba(0, 0, 0, 0.25); }

/* Microthane®* patent footnote printed by the display-time notation hook. */
.mh-microthane-note {
	max-width: 1180px;
	margin: 18px auto 6px;
	padding: 0 22px;
	font-size: 0.76rem;
	line-height: 1.5;
	color: #8a97a3;
}

/* ---- Scoped search + fallback + content results (night task 2026-08-05) --- */
.mh-search {
	display: flex;
	align-items: stretch;
	gap: 0;
}

.mh-search .search-field {
	border-radius: 8px 0 0 8px;
	border-right: 0;
	min-width: 0;
}

.mh-search__scope {
	border: 1px solid var(--mh-line, #d7dee5);
	border-left: 0;
	font-size: 0.8rem;
	padding: 0 4px;
	background: #f6f8fa;
	color: #445;
}

.mh-search__go {
	border: 1px solid var(--mh-line, #d7dee5);
	border-left: 0;
	border-radius: 0 8px 8px 0;
	background: #f6f8fa;
	padding: 0 10px;
	cursor: pointer;
}

.mh-sfb {
	margin: 18px 0;
	padding: 16px 18px;
	border: 1px solid var(--mh-line, #e5e7eb);
	border-radius: 12px;
	background: #f8fafc;
}

.mh-sfb ul {
	margin: 10px 0 0;
	padding-left: 18px;
}

.mh-sfb__ai {
	color: #445;
}

.mh-sfb__wait {
	color: #8a97a3;
}

.mh-csr__head {
	padding: 26px 0 6px;
}

.mh-csr__count {
	color: #8a97a3;
	font-size: 0.9rem;
}

.mh-csr__list {
	display: grid;
	gap: 10px;
	margin: 14px 0 40px;
}

.mh-csr__item {
	display: grid;
	gap: 3px;
	padding: 13px 16px;
	border: 1px solid var(--mh-line, #e5e7eb);
	border-radius: 12px;
	text-decoration: none;
	color: inherit;
	background: #fff;
}

.mh-csr__item:hover .mh-csr__title {
	color: var(--mh-blue, #1789d6);
}

.mh-csr__page {
	font-size: 0.74rem;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: #8a97a3;
}

.mh-csr__snippet {
	font-size: 0.9rem;
	color: #55636f;
}

/* ================================== R37: unified search results + AI agent */

.mh-usr__group {
	max-width: 1080px;
	margin: 28px auto;
	padding: 0 20px;
}

.mh-usr__gtitle {
	font-size: 1.15rem;
	font-weight: 700;
	margin: 0 0 14px;
	padding-bottom: 8px;
	border-bottom: 2px solid #e3ecf5;
}

.mh-usr__grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
	gap: 16px;
}

.mh-usr__card {
	display: flex;
	flex-direction: column;
	gap: 6px;
	padding: 14px;
	background: #fff;
	border: 1px solid #e7edf3;
	border-radius: 12px;
	text-decoration: none;
	color: inherit;
	transition: box-shadow .15s ease, transform .15s ease;
}

.mh-usr__card:hover {
	box-shadow: 0 8px 22px rgba(20, 45, 75, 0.10);
	transform: translateY(-2px);
}

.mh-usr__thumb {
	aspect-ratio: 4 / 3;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #f6f9fc;
	border-radius: 8px;
	overflow: hidden;
}

.mh-usr__thumb img {
	max-width: 100%;
	max-height: 100%;
	object-fit: contain;
}

.mh-usr__title {
	font-size: 0.95rem;
	line-height: 1.35;
}

.mh-usr__sku {
	font-size: 0.78rem;
	color: #7a8a99;
}

.mh-usr__price {
	font-weight: 700;
	color: #163a5f;
}

.mh-sfb__links {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.mh-sfb__ainote {
	margin-top: 14px;
	font-size: 0.78rem;
	color: #8a97a5;
}

.mh-sfb__disclaimer {
	font-size: 0.8rem;
	color: #6a7885;
	border-left: 3px solid #d9e4ee;
	padding-left: 10px;
}

/* R38: refine-search box above unified results */
.mh-usr__refine {
	display: flex;
	gap: 10px;
	max-width: 640px;
	margin: 14px 0 4px;
}

.mh-usr__refine input[type="search"] {
	flex: 1;
	padding: 10px 16px;
	font-size: 1rem;
	border: 1px solid #cdd9e4;
	border-radius: 10px;
}

/* R38e: rephrase tip under AI search answers */
.mh-sfb__rephrase {
	margin-top: 10px;
	padding: 8px 12px;
	background: #f4f8fc;
	border-left: 3px solid #b9cfe4;
	border-radius: 0 8px 8px 0;
	font-size: 0.86rem;
	color: #4a5a6a;
}

/* R38g: assistant panel — desktop size + living typing indicator */
@media (min-width: 1024px) {
	.mh-ai__panel {
		width: min(40vw, 720px);
		max-height: min(72vh, 780px);
	}
}

.mh-ai__wait {
	display: flex;
	gap: 5px;
	align-items: center;
	min-height: 20px;
}

.mh-ai__dot {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: #8fa9bf;
	animation: mhAiPulse 1.2s infinite ease-in-out;
}

.mh-ai__dot:nth-child(2) {
	animation-delay: 0.2s;
}

.mh-ai__dot:nth-child(3) {
	animation-delay: 0.4s;
}

@keyframes mhAiPulse {
	0%, 80%, 100% { opacity: 0.25; transform: scale(0.8); }
	40% { opacity: 1; transform: scale(1); }
}

/* R38h: imageless product tiles in the catalog editor */
.mh-sedit__prod.is-noimg {
	background: #f2f6fa;
	border-style: dashed;
}

.mh-sedit__noimg {
	display: flex;
	align-items: center;
	justify-content: center;
	aspect-ratio: 1 / 1;
	font-size: 34px;
	opacity: 0.55;
}

/* ============================ R39: cabinet mode — backend menu in header */

/* The old in-page tab strip and the huge endpoint title give way to the
   header menu; the content takes the full width. */
.mh-cabinet-mode .woocommerce-MyAccount-navigation {
	display: none;
}

.mh-cabinet-mode .woocommerce-MyAccount-content > h2:first-child {
	display: none;
}

/* R39c (owner 2026-08-07, corrected: top LEFT): the page title returns —
   compact, top left of the content area, tight under the header (the
   ~45px of storefront content/main padding collapses in cabinet mode).
   Selector weight: storefront core styles account-page entry-headers at
   0,3,0 (.storefront-full-width-content.woocommerce-account .entry-header
   → text-align:center + ~6em padding) and the asset bundle orders it
   after us, so these must sit at 0,4,0+. Every cabinet page is an
   account page, so .woocommerce-account is always on <body> here. */
.mh-cabinet-mode.woocommerce-account .site-content {
	padding-top: 0;
}

.mh-cabinet-mode.woocommerce-account .site-content .site-main {
	padding-top: 10px;
}

.mh-cabinet-mode.woocommerce-account .site-main .entry-header {
	margin: 0 0 0.4em;
	padding: 0;
	border: 0;
	text-align: left;
}

.mh-cabinet-mode.woocommerce-account .site-main .entry-header .entry-title {
	margin: 0;
	padding: 0;
	font-size: 1.6rem;
	line-height: 1.2;
	color: var(--mh-ink);
}

.mh-cabinet-mode .woocommerce-MyAccount-content {
	float: none;
	width: 100%;
}


/* Cabinet mode: the header slot between the grouped menu and the profile
   chip carries the CABINET search (owner screenshot 2026-08-10 marked the
   spot). inc/search.php swaps StaffSearch::header_form() into the product
   box's place, so only a stray product form is belted here. */
.mh-cabinet-mode .site-header .mh-search {
	display: none;
}

.mh-cabinet-mode .mh-head-actions .site-search {
	flex: none;
	width: 230px !important;
}

/* The İdarə band has priority over the search field (owner screenshot
   2026-08-11: «İdarəetmə» hid behind the box). Tighter paddings; the old
   82em icon-collapse is gone — the cluster script's early-mobile switch
   (body.mh-compact-head) takes over when the row gets tight. */

/* ---- Cabinet search (owner 2026-08-10): cabinet-only, AI-assisted,
   permission-scoped. The control sits in the header slot; the results
   panel drops under it, right-anchored. --- */
.mh-cabsearch {
	position: relative;
	display: flex;
	justify-content: flex-end;
	margin: 0 0 14px;
}

.mh-cabsearch--head {
	margin: 0;
	justify-content: stretch;
}

.mh-cabsearch--head .mh-cabsearch__form {
	width: 100%;
}

.mh-cabsearch--head .mh-cabsearch__form input[type='search'] {
	border-radius: 999px 0 0 999px;
	background: var(--mh-canvas, #f4f7f9);
	border-color: transparent;
	font-size: 13px;
	padding: 8px 12px 8px 14px;
}

.mh-cabsearch--head .mh-cabsearch__form button {
	border-radius: 0 999px 999px 0;
	border-color: transparent;
	background: var(--mh-canvas, #f4f7f9);
}

.mh-cabsearch__form {
	display: flex;
	align-items: stretch;
	width: min(340px, 100%);
	margin: 0;
}

.mh-cabsearch__form input[type='search'] {
	flex: 1 1 auto;
	min-width: 0;
	padding: 8px 14px;
	border: 1px solid var(--mh-line, #d7dee5);
	border-right: 0;
	border-radius: 8px 0 0 8px;
	background: #fff;
	font-size: 13.5px;
}

.mh-cabsearch__form button {
	border: 1px solid var(--mh-line, #d7dee5);
	border-radius: 0 8px 8px 0;
	background: #f6f8fa;
	padding: 0 12px;
	cursor: pointer;
}

.mh-cabsearch__panel {
	position: absolute;
	top: calc(100% + 4px);
	right: 0;
	z-index: 60;
	width: min(420px, 92vw);
	max-height: 60vh;
	overflow: auto;
	background: #fff;
	border: 1px solid var(--mh-line, #d7dee5);
	border-radius: 10px;
	box-shadow: 0 12px 32px rgba(16, 42, 67, 0.14);
	padding: 6px;
}

.mh-cabsearch__static {
	background: #fff;
	border: 1px solid var(--mh-line, #d7dee5);
	border-radius: 10px;
	padding: 6px;
	margin: 0 0 14px;
}

.mh-cabsearch__group + .mh-cabsearch__group {
	border-top: 1px solid #eef2f5;
	margin-top: 4px;
	padding-top: 4px;
}

.mh-cabsearch__title {
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #8a97a3;
	padding: 6px 10px 2px;
}

.mh-cabsearch__item {
	display: block;
	padding: 7px 10px;
	border-radius: 7px;
	font-size: 13.5px;
	color: var(--mh-ink, #17364f);
	text-decoration: none;
}

.mh-cabsearch__item:hover {
	background: #f2f6fa;
	color: var(--mh-blue-dark, #0f4c81);
}

.mh-cabsearch__note {
	color: #8a97a3;
	font-size: 12px;
	margin-left: 6px;
}

.mh-cabsearch__msg {
	padding: 7px 10px;
	font-size: 13px;
	color: #445;
	background: #f7f9fb;
	border-radius: 7px;
}

.mh-cabsearch__empty {
	padding: 10px;
	font-size: 13px;
	color: #8a97a3;
}

/* ---- Language switcher (owner 2026-08-10): AZ | EN | RU in the header
   actions group, path-preserving links. Compact by design — it shares the
   single-row header with search, account and cart. --- */
/* Option B (owner pick 2026-08-11): one compact globe button + dropdown
   with native language names, replacing the three-pill row. */
.mh-langs {
	position: relative;
	flex: none;
}

.mh-langs__btn {
	display: flex;
	align-items: center;
	gap: 5px;
	border: 1px solid var(--mh-line, #d7dee5);
	border-radius: 999px;
	padding: 5px 10px;
	background: var(--mh-canvas, #f4f7f9);
	font-size: 11.5px;
	font-weight: 700;
	letter-spacing: 0.04em;
	color: #445a6b;
	cursor: pointer;
	line-height: 1.3;
}

.mh-langs__btn:hover {
	color: var(--mh-blue-dark, #0f4c81);
}

.mh-langs__caret {
	font-size: 9px;
	color: #8a97a3;
}

.mh-langs__menu {
	position: absolute;
	top: calc(100% + 6px);
	right: 0;
	z-index: 1100;
	min-width: 170px;
	background: #fff;
	border: 1px solid var(--mh-line, #d7dee5);
	border-radius: 10px;
	box-shadow: 0 12px 32px rgba(16, 42, 67, 0.14);
	padding: 5px;
}

.mh-langs__menu[hidden] {
	display: none;
}

.mh-langs__item {
	display: block;
	padding: 8px 12px;
	border-radius: 7px;
	font-size: 13.5px;
	color: var(--mh-ink, #17364f);
	text-decoration: none;
	white-space: nowrap;
}

.mh-langs__item:hover {
	background: #f2f6fa;
	text-decoration: none;
	color: var(--mh-blue-dark, #0f4c81);
}

.mh-langs__item.is-current {
	color: var(--mh-blue-dark, #0f4c81);
	font-weight: 700;
}

/* ---- Header fit, fourth pass (owner 2026-08-12 markings): NO icon-collapse
   ladders and NO field shrinking. The search box is a compact fixed-width
   pill between the menu and the language switcher; inc/header-cluster.php
   anchors the switcher beside the profile chip and flips the whole header
   to the handheld layout (body.mh-compact-head) the moment the search box
   crowds the last menu item. --- */
@media (min-width: 66.5em) {
	.mh-head-actions .site-search {
		flex: none;
		position: relative;
		width: 130px !important;
	}

	.mh-lang-ru .site-header .main-navigation ul.menu > li > a,
	.mh-lang-en .site-header .main-navigation ul.menu > li > a {
		padding: 10px 9px;
	}

	/* Cabinet (owner 2026-08-12): same cluster as the frontend — search,
	   switcher, chip. The cabinet menu is wider than the site menu, so the
	   field is a compact pill and the switcher trims its padding; the AI
	   results panel that drops under the field keeps its own full width. */
	.mh-cabinet-mode .mh-head-actions .site-search {
		width: 100px !important;
	}

	.mh-cabinet-mode .mh-langs__btn {
		padding: 6px 8px;
	}

	.mh-cabinet-mode .site-header .main-navigation ul.menu > li > a {
		padding: 10px 6px;
	}
}

/* Icon mode: the go button stands alone as a round toggle; the pop
   panel drops a full search field under the header, right-anchored. */
.mh-search-pop {
	position: absolute;
	top: calc(100% + 8px);
	right: 0;
	z-index: 1100;
	width: min(420px, 90vw);
	background: #fff;
	border: 1px solid var(--mh-line, #d7dee5);
	border-radius: 12px;
	box-shadow: 0 12px 32px rgba(16, 42, 67, 0.16);
	padding: 8px;
}

.mh-search-pop[hidden] {
	display: none;
}

.mh-search-pop form {
	display: flex;
	margin: 0;
}

.mh-search-pop .search-field {
	flex: 1 1 auto;
	min-width: 0;
	padding: 9px 14px;
	border: 1px solid var(--mh-line, #d7dee5);
	border-right: 0;
	border-radius: 8px 0 0 8px;
}

.mh-search-pop button {
	border: 1px solid var(--mh-line, #d7dee5);
	border-radius: 0 8px 8px 0;
	background: #f6f8fa;
	padding: 0 14px;
	cursor: pointer;
}

/* Long usernames (owner 2026-08-11): the chip shows at most ~12
   characters and ellipsizes the rest at any width; the full name stays
   in the button's tooltip. */
.mh-user-chip__name {
	display: inline-block;
	max-width: 110px;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	vertical-align: bottom;
}

/* YouTube embeds in articles: 16:9, lazy src set only while open. */
.mh-acc__yt {
	display: block;
	width: 100%;
	aspect-ratio: 16 / 9;
	border: 0;
	border-radius: 10px;
	background: #0a1a26;
}

/* ---- Inline article figures (owner 2026-08-11): gallery items with an
   'after' anchor render inside the text flow, not at the article end. --- */
.mh-acc__figure--inline {
	margin: 18px 0;
}

.mh-acc__figure--inline img {
	display: block;
	max-width: min(560px, 100%);
	border-radius: 10px;
}

.mh-acc__figure--inline figcaption {
	font-size: 13px;
	color: var(--mh-muted, #66788a);
	margin-top: 6px;
	max-width: 560px;
}

/* ---- Mobile language switcher, option B (owner review 2026-08-11): a
   quiet globe row at the end of the drawer menu opens a bottom sheet
   with native language names and a check on the current one. --- */
.mh-langrow__btn {
	display: flex;
	align-items: center;
	gap: 10px;
	width: 100%;
	padding: 14px 16px;
	background: none;
	border: 0;
	border-top: 1px solid var(--mh-line, #d7dee5);
	font-size: 15px;
	color: inherit;
	text-align: left;
	cursor: pointer;
}

.mh-langrow__globe {
	flex: none;
	opacity: 0.75;
}

/* The arrow is our own .mh-chev since owner 2026-10-04 (scr 14) — the same
   icon as the section toggles; Storefront's Font Awesome ::after on nav
   buttons is killed in the cluster G block at the end of this file. */
.mh-langrow__btn span {
	flex: 1 1 auto;
}

.mh-langsheet {
	position: fixed;
	inset: 0;
	z-index: 100002;
	background: rgba(15, 23, 42, 0.45);
	display: flex;
	align-items: flex-end;
}

.mh-langsheet[hidden] {
	display: none;
}

/* The slide-up is a class-driven transition, not @keyframes: the frozen
   first frame of the keyframe animation left the panel hanging 28px low
   on staging (live finding 2026-08-11). A class toggled by the opener
   guarantees the settled state. */
.mh-langsheet__panel {
	width: 100%;
	background: #fff;
	border-radius: 16px 16px 0 0;
	padding: 6px 0 calc(12px + env(safe-area-inset-bottom, 0px));
	box-shadow: 0 -18px 40px rgba(15, 23, 42, 0.25);
	transform: translateY(28px);
	transition: transform 0.22s ease;
}

.mh-langsheet.is-open .mh-langsheet__panel {
	transform: none;
}

.mh-langsheet__handle {
	width: 36px;
	height: 4px;
	border-radius: 2px;
	background: #d7dee5;
	margin: 8px auto 6px;
}

.mh-langsheet__title {
	margin: 0;
	padding: 6px 20px 8px;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: #8a97a3;
}

.mh-langsheet__item {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 14px 20px;
	font-size: 16px;
	color: var(--mh-ink, #17364f);
	text-decoration: none;
}

.mh-langsheet__item:hover {
	background: #f2f6fa;
	text-decoration: none;
}

.mh-langsheet__item.is-current {
	color: var(--mh-blue-dark, #0f4c81);
	font-weight: 700;
}

/* ---- Early-mobile header (owner 2026-08-11 spec). body.mh-compact-head is
   set by inc/header-cluster.php the moment the gap between the search box
   and the last menu item falls under G (the logo→first-menu-item gap): the
   header flips to the handheld layout at ANY width. The rules replicate the
   <66.5em block above, scoped to the class; below 66.5em the width query
   already applies and the script removes the class. --- */
@media (min-width: 66.5em) {
	body.mh-compact-head .site-header {
		padding: 8px 0;
	}

	body.mh-compact-head .site-header > .col-full {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 12px;
		margin: 0 !important;
		max-width: none;
		padding-left: 24px !important;
		padding-right: 24px !important;
	}

	body.mh-compact-head .site-header .storefront-primary-navigation,
	body.mh-compact-head .site-header .main-navigation {
		display: flex;
		justify-content: flex-end;
	}

	body.mh-compact-head .site-header .storefront-primary-navigation {
		flex: 0 0 auto !important;
		width: auto !important;
		margin: 0 0 0 auto !important;
		background: transparent;
	}

	body.mh-compact-head .site-header .storefront-primary-navigation > .col-full {
		display: flex;
		justify-content: flex-end;
		width: auto;
		margin: 0 !important;
		padding: 0 !important;
		max-width: none;
	}

	body.mh-compact-head .site-header .site-branding {
		margin: 0 !important;
		padding: 0 !important;
	}

	body.mh-compact-head .site-header .custom-logo-link.mh-logo img.custom-logo {
		height: 32px;
	}

	body.mh-compact-head .site-header button.menu-toggle {
		display: inline-flex !important;
		align-items: center;
		margin: 0;
	}

	body.mh-compact-head .site-header .main-navigation ul.menu {
		display: none !important;
	}

	body.mh-compact-head .site-header .main-navigation.toggled .handheld-navigation,
	body.mh-compact-head .site-header .main-navigation.toggled .col-full,
	body.mh-compact-head .site-header .main-navigation.toggled div.menu {
		display: block !important;
		width: auto;
		padding: 0;
	}

	body.mh-compact-head .site-header .main-navigation.toggled .primary-navigation,
	body.mh-compact-head .site-header .main-navigation .primary-navigation {
		display: none !important;
	}

	body.mh-compact-head .site-header .main-navigation.toggled .handheld-navigation ul.menu {
		display: block !important;
		position: absolute;
		left: 0;
		right: 0;
		top: 100%;
		margin: 0;
		padding: 14px 24px 20px;
		background: #fff;
		z-index: 998;
		border-top: 1px solid var(--mh-line);
		box-shadow: 0 18px 30px rgba(10, 26, 38, 0.12);
	}

	body.mh-compact-head .site-header .main-navigation.toggled .handheld-navigation ul.menu > li {
		display: block;
		float: none;
		width: 100%;
	}

	body.mh-compact-head .site-header .main-navigation.toggled .handheld-navigation ul.menu > li > a {
		display: block;
		padding: 11px 0;
		font-size: 16px;
	}

	/* .mh-bell left OUT of this list on purpose (notification audit
	   2026-09-01, defect 4): the container is a zero-footprint anchor whose
	   MENU the footer-bar bell opens — hiding it here left compact-head
	   desktops with a bell button that could never show its panel. */
	body.mh-compact-head .site-header .mh-head-actions,
	body.mh-compact-head .mh-user-chip {
		display: none !important;
	}
	body.mh-compact-head .mh-bell {
		display: block !important;
		position: static !important;
		width: 0;
		height: 0;
	}

	/* The bar's room: inside the footer, not body padding (cluster H block at
	   the end of this file, owner 2026-10-04 scr 20–27). */

	body.mh-compact-head .storefront-handheld-footer-bar {
		display: block !important;
		padding-bottom: env(safe-area-inset-bottom, 0px);
	}

	body.mh-compact-head .mh-ai {
		bottom: calc(86px + env(safe-area-inset-bottom, 0px));
	}
}

/* Language switcher opens on hover like the profile chip (owner
   2026-08-12: «all dropdowns open on hovering except for the language
   switcher»). The click toggle stays for touch. */
.mh-langs:hover .mh-langs__menu,
.mh-langs:focus-within .mh-langs__menu {
	display: block;
}

/* The menu floats 6px below the button; crossing that gap used to drop
   :hover and snap the menu shut before the pointer reached it (owner
   2026-08-12). A transparent strip belonging to the menu bridges the gap
   so the dropdown stays open all the way down. */
.mh-langs__menu::before {
	content: "";
	position: absolute;
	top: -8px;
	left: 0;
	right: 0;
	height: 8px;
}

/* AI widget processing notice (Codex F-04): quiet line above the input. */
.mh-ai__notice {
	padding: 5px 12px 0;
	font-size: 10.5px;
	line-height: 1.4;
	color: var(--mh-muted, #66788a);
}

.mh-ai__notice a {
	color: inherit;
	text-decoration: underline;
}

/* Sellers list on İstifadə şərtləri (owner 2026-08-12): company requisites
   sit a step quieter than the surrounding legal text. */
#mh-sellers-list,
#mh-platform-owner { /* the platform's requisites, folded the same way (owner 2026-10-21) */
	font-size: 0.88em;
	font-style: italic;
}

/* ------------------------------------------------------------------ */
/* R89 (owner R-05): Sifarişlər — Excel-style autofilter in the column
   headers (StaffExcelTable). The dropdown reuses the .mh-ft-panel look;
   new parts: header button, sort row, search box, clipped list cells. */

.mh-ord-views {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin: 0 0 10px;
}

.mh-ord-views a,
.mh-ord-views .is-on {
	display: inline-block;
	padding: 3px 12px;
	border-radius: 999px;
	background: #f1f5f9;
	border: 1px solid #e2e8f0;
	font-size: 0.85em;
	text-decoration: none;
	color: inherit;
}

.mh-ord-views a:hover {
	background: #e0f2fe;
	border-color: #bae6fd;
}

.mh-ord-views .is-on {
	background: #0e7490;
	border-color: #0e7490;
	color: #fff;
}

.mh-xt thead th {
	position: relative;
	white-space: nowrap;
}

.mh-xt-h {
	background: none;
	border: 0;
	padding: 0;
	margin: 0;
	font: inherit;
	font-weight: 600;
	color: inherit;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	gap: 4px;
}

.mh-xt-h:hover {
	color: #0e7490;
	background: none;
}

.mh-xt-h .mh-xt-ic {
	color: #94a3b8;
	font-size: 0.75em;
}

.mh-xt-h--on,
.mh-xt-h--on .mh-xt-ic {
	color: #0e7490;
}

.mh-xt-sortmark {
	color: #0e7490;
	font-size: 0.85em;
}

.mh-xt-panel {
	top: calc(100% - 2px);
	left: 0;
	min-width: 220px;
	font-weight: 400;
	white-space: normal;
}

.mh-xt-panel--right {
	left: auto;
	right: 0;
}

.mh-xt-sort {
	display: flex;
	gap: 6px;
	padding-bottom: 6px;
	border-bottom: 1px solid #e2e8f0;
	margin-bottom: 4px;
}

.mh-xt-sort .button {
	padding: 2px 8px;
	font-size: 0.8em;
}

.mh-xt-sort .mh-xt-sort--on {
	background: #0e7490;
	color: #fff;
}

.mh-xt-search {
	width: 100%;
	font-size: 0.85em;
	padding: 3px 6px;
	margin: 4px 0;
	border-radius: 6px;
}

/* Short preview inside the frame; the full list lives in the hover title. */
.mh-cell-clip {
	display: inline-block;
	max-width: 110px;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	vertical-align: bottom;
	cursor: help;
}

/* Room for the dropdown when the register is short. */
.mh-scroll--xt {
	min-height: 380px;
}

/* ===========================================================   R90 — «Yeni sifariş» rebuild, slice 1 (owner R-04 A/B/C + audit §7
   steps 1–8). One full-width row of five selects; cabinet-consistent
   select polish; «bütöv konfiqurasiya» width cap with tooltip reveal.
   ================================================================== */

/* Audit §7.1 trap: the page hides blocks with the `hidden` attribute and
   a grid/flex parent's display rules override it — pin it down. */
#mh-staff-no [hidden],
.mh-staff-new-order [hidden] {
	display: none !important;
}

/* The five selects: one row, full width (owner R-04 A). */
.mh-no-toprow {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 10px 12px;
	margin-bottom: 14px;
}

.mh-no-field {
	display: block;
	min-width: 0;
}

.mh-no-field > strong {
	display: block;
	margin-bottom: 4px;
	font-size: 0.85em;
	letter-spacing: 0.01em;
}

/* Prettier selects (owner: visual polish, not just layout) — the same
   canvas/line/radius language as the rest of the cabinet. The closed
   control truncates long options (Müştəri ≈ 20ch at the owner's 1280px);
   the option's title attribute reveals the full text. */
.mh-no-toprow select,
.mh-no-select {
	width: 100%;
	max-width: 100%;
	padding: 7px 34px 7px 10px;
	border: 1px solid var(--mh-line);
	border-radius: var(--mh-radius-sm);
	background-color: #fff;
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%2366788a' stroke-width='1.5' stroke-linecap='round'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 12px center;
	-webkit-appearance: none;
	appearance: none;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	line-height: 1.4;
}

.mh-no-toprow select:focus,
.mh-no-select:focus {
	border-color: var(--mh-accent, #0e7490);
	outline: none;
}

.mh-no-toprow select:disabled {
	background-color: var(--mh-canvas);
	color: #9aa7b4;
	cursor: not-allowed;
}

/* Owner 2026-09-27 (scr 6-8): the line's seller - a chip when one company holds the SKU, a compact select when
   several do. The fixed single seller of a category stays readable: it is an answer, not a dead control. */
.mh-no-toprow select#mh-no-seller:disabled {
	color: var(--mh-ink, #1f2a37);
	-webkit-text-fill-color: var(--mh-ink, #1f2a37);
	opacity: 1;
}

@media (min-width: 783px) {
	/* The seller's name, code and units need the room of two fields. */
	.mh-no-toprow .mh-no-field--wide {
		grid-column: span 2;
	}
}

.mh-no-cobox {
	display: inline-flex;
	align-items: center;
	margin: 4px 0 0 6px;
	vertical-align: middle;
}

/* Owner 2026-09-27 (scr 14): a line whose product the other lines took says so under the product. */
.mh-staff-new-order .mh-no-gone {
	display: block;
	margin: 6px 0 0;
	max-width: 46em;
	color: #b42318;
	font-size: 12.5px;
	font-weight: 600;
	line-height: 1.45;
	white-space: normal;
}

.mh-staff-new-order td.mh-no-stock.mh-warned {
	color: #b45309;
	font-weight: 700;
}

.mh-staff-new-order td.mh-no-stock.mh-gone {
	color: #b42318;
}

.mh-no-cochip {
	display: inline-block;
	padding: 2px 9px;
	border-radius: 999px;
	background: #eef4ff;
	color: #1d4ed8;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.02em;
	line-height: 1.5;
	white-space: nowrap;
}

.mh-staff-new-order select.mh-no-cosel {
	width: auto;
	min-width: 6.5em;
	max-width: 10em;
	padding: 3px 26px 3px 9px;
	border: 1px solid #bcd0f7;
	border-radius: 999px;
	background-color: #eef4ff;
	color: #1d4ed8;
	font-size: 12px;
	font-weight: 700;
	line-height: 1.5;
}

@media (max-width: 782px) {
	.mh-staff-new-order select.mh-no-cosel {
		font-size: 16px; /* iOS zooms the page on a smaller control */
	}
}

/* The ?src= consignment variant keeps a sane single-column width. */
.mh-no-select {
	max-width: 320px;
}

/* Handover explainer (give ≠ sale — audit §5). */
.mh-no-opnote {
	background: var(--mh-canvas);
	border: 1px solid var(--mh-line);
	border-radius: var(--mh-radius-sm);
	padding: 10px 14px;
}

.mh-no-opnote .button {
	margin-left: 8px;
}

/* «Bütöv konfiqurasiya» width cap (owner R-04 D / audit §7.8): the table
   is fixed-layout, the product column takes ~⅓ of the width and the
   select inside it never grows past its cell — hover reveals the full
   configuration via the title attribute set in JS. */
#mh-no-lines {
	table-layout: fixed;
	width: 100%;
}

#mh-no-lines th:nth-child(1),
#mh-no-lines td:nth-child(1) {
	width: 34%;
}

/* Owner 2026-08-26 (scr 8): the width plan still described the 5-column
   table from before the price columns — in a FIXED layout that pushed the
   48px «Cəm» into the serial select. Seven columns, honestly sized. */
/* Owner 2026-08-27 (scr 21): «Anbarda» wrapped three lines and «Miqdar»
   two while the serial column swam in space — the two numeric columns get
   header-sized widths; the flexible columns absorb the difference. */
#mh-no-lines th:nth-child(2),
#mh-no-lines td:nth-child(2) {
	width: 112px;
}

#mh-no-lines th:nth-child(3),
#mh-no-lines td:nth-child(3) {
	width: 96px;
}

#mh-no-lines th:nth-child(4),
#mh-no-lines td:nth-child(4),
#mh-no-lines th:nth-child(5),
#mh-no-lines td:nth-child(5) {
	width: 92px;
}

#mh-no-lines th:nth-child(7),
#mh-no-lines td:nth-child(7) {
	text-align: right;
}

#mh-no-lines .mh-no-num {
	padding-right: 12px;
}

#mh-no-lines td.mh-no-sn {
	overflow: hidden;
}

#mh-no-lines .mh-no-snsel {
	max-width: 100%;
}

#mh-no-lines .mh-no-sku {
	width: 100%;
	max-width: 100%;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

/* The owner works at 1280 CSS px — five columns fit there; anything
   narrower folds to two, handhelds to one. */
@media (max-width: 1100px) {
	.mh-no-toprow {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 560px) {
	.mh-no-toprow {
		grid-template-columns: minmax(0, 1fr);
	}
}

/* ============================ R88: cabinet hub pages (owner R-03) --------
   One switcher page per cabinet menu group; cards follow the public
   /brendlerimiz/ pattern — icon on a coloured block (no photography in
   the cabinet), small uppercase kicker, title, one-line lead; the whole
   card is the link. Grid sits four-up at the owner's 1280 CSS px. */
.mh-cabhub__intro {
	margin: 0 0 18px;
	max-width: 720px;
	font-size: 0.96rem;
	line-height: 1.55;
	color: #475569;
}

.mh-cabhub__grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
	gap: 18px;
	padding: 0 0 10px;
}

a.mh-cabhub__card {
	display: flex;
	flex-direction: column;
	border: 1px solid var(--mh-line, #e5e7eb);
	border-radius: 14px;
	overflow: hidden;
	background: #fff;
	color: inherit;
	text-decoration: none;
	transition: transform 0.18s, box-shadow 0.18s;
}

a.mh-cabhub__card:hover {
	transform: translateY(-3px);
	box-shadow: 0 14px 28px rgba(15, 23, 42, 0.12);
}

.mh-cabhub__media {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 96px;
}

.mh-cabhub__body {
	display: flex;
	flex-direction: column;
	gap: 5px;
	padding: 14px 16px 18px;
	flex: 1 1 auto;
}

.mh-cabhub__kicker {
	font-size: 0.7rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.mh-cabhub__name {
	font-size: 1.08rem;
	font-weight: 600;
	color: var(--mh-ink, #111827);
}

.mh-cabhub__lead {
	font-size: 0.88rem;
	line-height: 1.5;
	color: #64748b;
}

@media (max-width: 600px) {
	.mh-cabhub__grid {
		grid-template-columns: 1fr;
		gap: 12px;
	}

	.mh-cabhub__media {
		height: 80px;
	}
}

/* ===========================================================   R91 — «Yeni sifariş» slice 2 (owner R-04 D, audit steps 10/11):
   «Seçmə = parametrlər üzrə». The parameter selects sit INLINE on one
   table row per order line — small selects side by side, sized to their
   content, sharing the row with qty, serial and remove — so five or ten
   lines still fit on one screen at the owner's 1280 CSS px.
   ================================================================== */

/* In params mode the parameter cell takes the remaining width; the
   fixed-layout counters stay compact. */
#mh-no-lines.mh-no-lines--params th:nth-child(1),
#mh-no-lines.mh-no-lines--params td:nth-child(1) {
	width: auto;
}

#mh-no-lines.mh-no-lines--params th:nth-child(2),
#mh-no-lines.mh-no-lines--params td:nth-child(2) {
	width: 70px;
}

#mh-no-lines.mh-no-lines--params th:nth-child(3),
#mh-no-lines.mh-no-lines--params td:nth-child(3) {
	width: 76px;
}

#mh-no-lines.mh-no-lines--params th:nth-child(4),
#mh-no-lines.mh-no-lines--params td:nth-child(4) {
	width: 92px;
}

#mh-no-lines.mh-no-lines--params th:nth-child(5),
#mh-no-lines.mh-no-lines--params td:nth-child(5) {
	width: 92px;
}

/* The theme's roomy cell padding costs a whole select per row here. */
#mh-no-lines.mh-no-lines--params th,
#mh-no-lines.mh-no-lines--params td {
	padding-left: 8px;
	padding-right: 8px;
}

#mh-no-lines.mh-no-lines--params .mh-no-qty {
	width: 4.5em !important;
}

/* Sifariş axını 2.0 — stage-4 review list, the pause chip, the done banner. */
.mh-no-review {
	background: var(--mh-surface);
	border: 1px solid var(--mh-line);
	border-radius: var(--mh-radius);
	padding: 14px 18px;
	margin: 0 0 16px;
}

.mh-no-review h4 {
	margin: 0 0 10px;
}

.mh-no-review__table {
	width: 100%;
	border-collapse: collapse;
	font-size: 0.95em;
}

.mh-no-review__table td {
	padding: 7px 10px;
	border-bottom: 1px solid var(--mh-line);
}

/* Owner 2026-09-01 (scr 22/40): no strikethrough — the dimming alone says
   «bu sətir sifarişə düşmür»; struck text just fought legibility. */
.mh-no-review__table tr.is-skip td {
	opacity: 0.45;
}

.mh-no-review__table tr.is-skip td:first-child {
	opacity: 1;
}

#mh-no-lines tr.mh-no-row-skip td {
	opacity: 0.4;
}

.mh-icra-chip {
	display: inline-block;
	background: #fdf3df;
	color: #8a6116;
	border: 1px solid #f3e1b6;
	border-radius: 999px;
	padding: 5px 14px;
	font-size: 0.9em;
	font-weight: 600;
}

.mh-icra-done {
	font-size: 1.05em;
	font-weight: 700;
}

/* Sifariş axını 2.0 — the panel's in-flight order list + the card button. */

.mh-ord-panelbtn {
	margin: 0 0 12px;
}

/* The customer's order page — owner pick 2026-08-26, option C «İki sütun»:
   document left, state rail right; on the phone the rail follows and the
   primary actions ride a bar pinned to the bottom of the screen. */
.mh-vo {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 300px;
	gap: 18px;
	align-items: start;
}

.mh-vo__doc,
.mh-vo__rail {
	/* Grid items default to min-width auto — a nowrap cell then widens the
	   card past the phone screen (owner's mobile requirement). */
	min-width: 0;
}

.mh-vo__doc,
.mh-vo__card {
	background: var(--mh-surface);
	border: 1px solid var(--mh-line);
	border-radius: 14px;
	padding: 16px 18px;
}

.mh-vo__card {
	margin-bottom: 14px;
}

.mh-vo__dochead {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 10px;
	flex-wrap: wrap;
	margin-bottom: 6px;
}

.mh-vo__dochead h3 {
	margin: 0;
	font-size: 1.1rem;
}

.mh-vo__no {
	color: var(--mh-muted);
	font-size: 0.9em;
}

.mh-vo__items {
	width: 100%;
	border-collapse: collapse;
	margin: 0;
}

.mh-vo__items td {
	padding: 9px 4px;
	border-bottom: 1px solid var(--mh-line);
	vertical-align: top;
}

.mh-vo__items tr:last-child td {
	border-bottom: 0;
}

.mh-vo__num {
	text-align: right;
	white-space: nowrap;
	font-variant-numeric: tabular-nums;
}

/* The payment-method title is prose, not a figure — it must wrap. */
.mh-vo__meth {
	white-space: normal;
	overflow-wrap: anywhere;
}

/* Owner 2026-09-17 (scr 7): the phone's cabinet bar (Storefront's handheld
   shortcuts) STAYS on the order pages — the page's own action bar rides above
   it (the rules at the end of the file). Only the 769–800 px sliver, where the
   action bar is fixed but Storefront shows no bar, keeps the old hiding. */
@media (min-width: 769px) and (max-width: 800px) {
	body:has(.mh-vo__actbar) .storefront-handheld-footer-bar {
		display: none !important;
	}
}

.mh-vo__total td {
	font-weight: 700;
}

.mh-vo__pill {
	display: inline-block;
	background: #fdf3df;
	color: #8a6116;
	border: 1px solid #f3e1b6;
	border-radius: 999px;
	padding: 4px 14px;
	font-size: 0.86em;
	font-weight: 600;
}

.mh-vo__pill.is-ok {
	background: var(--mh-ok-bg, #e6f5ec);
	color: var(--mh-green-dark, #1d8a55);
	border-color: transparent;
}

.mh-vo__pill.is-dead {
	background: transparent;
	color: #b3312d;
	border-color: #b3312d;
}

.mh-vo__tl {
	list-style: none;
	margin: 12px 0 0;
	padding: 0;
	font-size: 0.92em;
}

.mh-vo__tl li {
	display: flex;
	align-items: baseline;
	gap: 9px;
	padding: 5px 0;
}

.mh-vo__tl i {
	width: 10px;
	height: 10px;
	border-radius: 50%;
	background: var(--mh-line);
	flex: 0 0 auto;
}

.mh-vo__tl li.is-done i {
	background: var(--mh-green, #1d8a55);
}

.mh-vo__tl li.is-now i {
	background: #b07a14;
	box-shadow: 0 0 0 3px #fdf3df;
}

.mh-vo__tl li.is-now {
	font-weight: 600;
}

.mh-vo__tl li.is-wait {
	color: var(--mh-muted);
}

.mh-vo__tl small {
	color: var(--mh-muted);
	margin-left: auto;
	font-variant-numeric: tabular-nums;
	white-space: nowrap;
}

.mh-vo__cardh {
	display: block;
	margin-bottom: 6px;
}

.mh-vo__sibs {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	gap: 12px;
	flex-wrap: wrap;
}

.mh-vo__mini textarea {
	width: 100%;
	margin: 8px 0;
}

.mh-vo__corr summary {
	cursor: pointer;
	font-weight: 600;
	color: var(--mh-blue-dark, #0e5a9c);
}

.mh-vo__actbar {
	display: flex;
	gap: 10px;
	align-items: stretch;
	/* Desktop: the bar lives visually under the rail (second column). */
	grid-column: 2;
	align-self: start;
}

.mh-vo__pay {
	flex: 1;
	text-align: center;
}

.mh-vo__cancel {
	margin: 0;
	display: flex;
	flex: 0 0 auto;
}

.mh-vo__cancelbtn {
	background: transparent;
	border: 1.5px solid #b3312d;
	color: #b3312d;
	border-radius: 999px;
	padding: 0 20px;
	font-weight: 600;
	cursor: pointer;
	height: 100%;
}

.mh-vo__cancelbtn:hover {
	background: #b3312d;
	color: #fff;
}

@media (max-width: 800px) {
	.mh-vo {
		grid-template-columns: 1fr;
	}

	/* The pay button must be UNLOSABLE on the phone (owner scr 14). NOT
	   sticky: a sticky GRID ITEM's containing block is its own grid area,
	   so it has zero room to travel and never pins. Fixed is viewport-true;
	   the grid gets bottom padding so nothing hides behind the bar, and the
	   right padding clears the floating assistant button. */
	.mh-vo {
		padding-bottom: 86px;
	}

	.mh-vo__actbar {
		grid-column: 1;
		position: fixed;
		left: 0;
		right: 0;
		bottom: 0;
		z-index: 40;
		background: var(--mh-canvas, #fff);
		border-top: 1px solid var(--mh-line);
		margin: 0;
		padding: 10px 92px 10px 12px;
		box-shadow: 0 -4px 14px rgba(0, 0, 0, 0.1);
	}

	.mh-vo__cancelbtn {
		padding: 10px 16px;
	}
}

/* Owner 2026-08-26 (scr 13): the customer's order row IS the button. */
.mh-orders-rowlink {
	cursor: pointer;
	transition: background 0.12s ease;
}

/* Owner 2026-08-27 («still old ugly look»): the list speaks in pills. */
.mh-ol-pill {
	display: inline-block;
	background: #fdf3df;
	color: #8a6116;
	border: 1px solid #f3e1b6;
	border-radius: 999px;
	padding: 3px 12px;
	font-size: 0.84em;
	font-weight: 600;
	white-space: nowrap;
}

.mh-ol-pill.is-ok {
	background: var(--mh-ok-bg, #e6f5ec);
	color: var(--mh-green-dark, #1d8a55);
	border-color: transparent;
}

.mh-ol-pill.is-dead {
	background: transparent;
	color: #b3312d;
	border-color: #d9a3a1;
}

/* Owner 2026-08-28 (scr 25): a filed cancellation request reads PINK and
   unmistakable — on the list pill, the order-page pill and its banner. */
.mh-ol-pill.is-cancelreq,
.mh-vo__pill.is-cancelreq {
	background: #fce7f3;
	color: #9d2458;
	border-color: #f5c2dd;
}

.mh-vo__cancelreq {
	background: #fdf2f8;
	border: 1px solid #f5c2dd;
}

.mh-vo__cancelreq strong {
	color: #9d2458;
}

.mh-vo__cancelreq p {
	margin: 6px 0 0;
	font-size: 0.9em;
	color: #6b2143;
}

.woocommerce-orders-table__cell-order-date {
	color: var(--mh-muted);
}

.mh-orders-rowlink:hover,
.mh-orders-rowlink:focus-visible {
	background: var(--mh-accent-bg);
}

.mh-no-paramrow {
	display: flex;
	flex-wrap: wrap;
	gap: 3px 4px;
	align-items: center;
	min-width: 0;
}

/* Compact cousins of the top-row selects: auto width (sized to content),
   ellipsis past 10em, the same canvas/line/radius language. */
.mh-no-paramrow select {
	width: auto;
	max-width: 10em;
	padding: 3px 17px 3px 6px;
	font-size: 12px;
	line-height: 1.3;
	border: 1px solid var(--mh-line);
	border-radius: var(--mh-radius-sm);
	background-color: #fff;
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%2366788a' stroke-width='1.5' stroke-linecap='round'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 5px center;
	-webkit-appearance: none;
	appearance: none;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

#mh-no-lines.mh-no-lines--params td {
	padding-top: 5px;
	padding-bottom: 5px;
}

.mh-no-paramrow select:focus {
	border-color: var(--mh-accent, #0e7490);
	outline: none;
}

/* Unchosen selects show their facet label as the placeholder — muted, so
   chosen values stand out at a glance across many lines. */
.mh-no-paramrow select:has(> option:checked[value=""]) {
	color: #66788a;
}

.mh-no-resolved {
	font-size: 12px;
	color: #4b5f72;
	white-space: nowrap;
}

.mh-no-agentpick {
	max-width: 320px;
}

.mh-no-agentpick > label > strong {
	font-size: 0.85em;
	letter-spacing: 0.01em;
}

/* R93: the filter panel narrows options and table rows with the `hidden`
   attribute — but the labels carry display:flex and table rows sit under
   theme display rules, both of which beat the UA [hidden] rule. Explicit
   guards, same lesson as the new-order grid (audit 2026-08-16). */
.mh-ft-panel__body label[hidden] {
	display: none !important;
}

.mh-staff-table tr[hidden] {
	display: none !important;
}

/* ---------------------------------------------------------------------------
 * R-08 S4: customer cabinet group card — one checkout = one visual unit.
 * ------------------------------------------------------------------------- */

/* ---------------------------------------------------------------------------
 * R105: inline expandable customer pin map (Müştərilər list + card).
 * The 📍 in the Ünvan column expands a full-width map row under the customer
 * instead of navigating to google.com; ↗ stays as the external option.
 * ------------------------------------------------------------------------- */

/* [hidden] must actually hide: .button carries its own display and anchors/
   buttons inside the panel would otherwise beat the UA rule (same lesson as
   the new-order grid, audit 2026-08-16). */
.mh-crm-maprow [hidden],
.mh-crm-ext[hidden],
.mh-crm-pin--new[hidden],
#mh-crm-card-geo-pick[hidden],
#mh-crm-card-map[hidden] {
	display: none !important;
}

/* The pinless rows' picker renders as a bare inline 📍, link-like. */
button.mh-crm-pin {
	background: none;
	border: none;
	padding: 0;
	cursor: pointer;
	font-size: inherit;
	line-height: inherit;
}

a.mh-crm-pin {
	text-decoration: none;
}

/* Secondary "open Google Maps proper" link, small and out of the way. */
.mh-crm-ext {
	margin-left: 6px;
	font-size: 0.85em;
	text-decoration: none;
	color: var(--mh-muted);
}

.mh-crm-maprow > td {
	padding: 10px 14px !important;
	background: var(--mh-accent-bg);
}

.mh-crm-map {
	height: 300px;
	margin-top: 0;
	background: var(--mh-surface);
}

.mh-crm-pinpanel__row {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 12px;
	margin: 8px 0 0;
}

.mh-crm-pinform {
	margin-top: 8px;
}

/* R102 - viewport-sticky table headers. JS (StaffCabinet::sticky_script)
   lifts the .mh-scroll cage whenever the table fits the box width, so the
   title + filter rows pin below the sticky site header during PAGE scroll
   (the old in-container sticky left the viewport together with the cage).
   Over-wide tables keep the inner scroll: body overflow-x is clip, lifting
   them would make columns unreachable. --mh-sticky-top = admin bar +
   site-header heights, measured by the same JS. */
.mh-scroll--lift {
	max-height: none;
	overflow: visible;
}

.mh-scroll--lift .mh-staff-table thead tr:first-child th {
	top: var(--mh-sticky-top, 0px);
}

.mh-scroll--lift .mh-staff-table thead tr.mh-filter-row th {
	top: calc(var(--mh-sticky-top, 0px) + 34px);
}

/* R108 - Qiymet cedvelleri: one top bar (company + view dropdowns left,
   row counters at the right edge) + inline cell editing controls. */
.mh-prices-topbar {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 14px;
	margin: 0 0 12px;
}

.mh-prices-topbar select {
	min-width: 170px;
}

.mh-prices-topbar__kpis {
	margin-left: auto;
	display: flex;
	gap: 10px;
	align-items: center;
}

.mh-kpi-chip {
	background: #f1f5f9;
	border: 1px solid #e2e8f0;
	border-radius: 999px;
	padding: 4px 12px;
	white-space: nowrap;
}

.mh-pc-input {
	width: 110px;
}

.mh-pc-pass {
	width: 90px;
	margin-left: 4px;
}

.mh-pc-save,
.mh-pc-cancel {
	padding: 2px 8px !important;
	margin-left: 4px;
	line-height: 1.4;
}

/* R107 — customer account lifecycle (Müştərilər). Deactivated accounts stay
   listed for reactivation, but the row reads as switched off. */
.mh-staff-table tr.mh-row-disabled td {
	opacity: 0.55;
}

.mh-badge--disabled {
	background: #e5e7eb;
	color: #4b5563;
}

/* R109 — endirim (sale) price display. Woo renders <del> old + <ins> sale
   natively; the sale price turns red, the old price goes muted, and the
   validity window from PriceSync::sale_validity_html sits beside it. */
.woocommerce .price ins,
.woocommerce ul.products li.product .price ins,
.woocommerce div.product p.price ins {
	color: #b91c1c;
	font-weight: 700;
	text-decoration: none;
	background: transparent;
}

.woocommerce .price del,
.woocommerce ul.products li.product .price del,
.woocommerce div.product p.price del {
	color: #9ca3af;
	opacity: 1;
}

.mh-sale-until {
	font-size: 0.82em;
	color: #b91c1c;
	white-space: nowrap;
}

/* R109 — Qiymət cədvəlləri row card (item double-click): current values +
   the full change-history ledger above the table. */
.mh-price-card {
	border: 1px solid #d1d5db;
	border-left: 4px solid #2563eb;
	border-radius: 6px;
	background: #f8fafc;
	padding: 12px 16px;
	margin: 0 0 16px;
}

.mh-price-card__head {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	gap: 12px;
	margin-bottom: 8px;
}

.mh-price-card__close {
	white-space: nowrap;
	text-decoration: none;
}

.mh-price-card__now {
	margin: 0 0 10px;
}

.mh-price-card .mh-scroll {
	max-height: 320px;
	overflow-y: auto;
}

/* R115 - filter panels on the rightmost columns flip to right-alignment
   instead of running off the screen edge (JS adds the class when the panel
   would overflow the scroll cage or the viewport). */
.mh-ft-panel--right {
	left: auto;
	right: 0;
}

/* ---------------------------------------------------------------------------
 * R112: multi-location customers — one account, several clinics.
 * The Müştərilər list gains a «+N yer» chip and a place chooser inside the
 * inline map row; the customer card gains the «Yerlər» repeater; «Yeni
 * sifariş» gains the «Yer» select.
 * ------------------------------------------------------------------------- */

/* [hidden] must actually hide: .button carries its own display, and the row
   maps are block elements the UA rule alone would lose to (same lesson as
   R105's panel, audit 2026-08-16). */
.mh-loc-pick[hidden],
.mh-loc-map[hidden],
.mh-crm-locpick[hidden] {
	display: none !important;
}

/* «+1 yer» in the Ünvan column — the whole point of R112 made visible where
   the desk used to open a duplicate account instead. */
.mh-loc-chip {
	display: inline-block;
	margin-left: 6px;
	padding: 0 6px;
	border: 1px solid var(--mh-line);
	border-radius: 999px;
	background: var(--mh-accent-bg);
	font-size: 0.78em;
	line-height: 1.7;
	white-space: nowrap;
}

/* Card: the read-only list of places above the editor. */
.mh-loc-list {
	margin: 0;
	padding-left: 18px;
}

.mh-loc-list li {
	margin: 0 0 4px;
}

/* Card: the «Yerlər» repeater. Dense, because a row is mostly text inputs. */
.mh-loc-table td,
.mh-loc-table th {
	padding: 6px 8px;
	vertical-align: top;
}

.mh-loc-table input[type="text"] {
	max-width: 100%;
}

.mh-loc-row--new {
	background: var(--mh-accent-bg);
}

/* The per-row picker map is narrower than the full-width pickers — it lives
   inside a table cell and must not stretch the column. */
.mh-loc-map {
	width: 100%;
	min-width: 260px;
	height: 260px;
	margin-top: 6px;
}

/* List row: the place chooser strip above the inline map. */
.mh-crm-locpick {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0 0 8px;
}

.mh-crm-locbtn.is-active {
	border-color: var(--mh-blue);
	font-weight: 600;
}

/* Yeni sifariş: the «Yer» select. It only shouts when there IS a choice to
   make — a single-location customer must not gain a decision they never had. */
.mh-no-locwrap select {
	max-width: 260px;
}

#mh-no-loc.mh-no-loc--many {
	border-color: var(--mh-blue);
	font-weight: 600;
}

/* R113 - ROI table bulk actions: selection column + action bar under the
   table (the bar sits OUTSIDE .mh-scroll so it stays reachable while the
   table scrolls; checkboxes bind to it with form=""). */
.mh-roi-actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 12px;
	margin: 12px 0 4px;
	padding: 10px 12px;
	background: #f8fafc;
	border: 1px solid #e2e8f0;
	border-radius: 8px;
}

.mh-roi-actions__count {
	margin-right: auto;
}

.mh-roi-actions p.mh-muted {
	flex-basis: 100%;
	margin: 4px 0 0;
}

.mh-roi-bulk {
	display: none;
}

/* R116 - ROI planner row tones as classes (they used to be inline styles,
   which the shared filter-table renderer has no way to carry). */
.mh-staff-table tr.mh-roi--ok td {
	background: #f0fdf4;
}

.mh-staff-table tr.mh-roi--near td {
	background: #fffbeb;
}

.mh-staff-table tr.mh-roi--low td {
	background: #fef2f2;
}

/* R117 - TYQ siyahısı: the two aggregate tables are meant to be copied onto
   a paper blank, so they stay compact and the total row reads as a total. */
.mh-tyq {
	max-height: none;
}

.mh-staff-table tr.mh-tyq__total td {
	border-top: 2px solid #0f172a;
	background: #f8fafc;
}

/* R118 - AZN / Say measure switch on Satış statistikası. A real sliding
   toggle rather than two buttons: the page has one measure at a time, and
   the slider says so at a glance. */
.mh-measure {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin-right: 14px;
}

.mh-measure__side {
	font-weight: 600;
	color: #94a3b8;
	transition: color 0.15s;
}

.mh-measure__side.is-on {
	color: #0e7490;
}

.mh-measure__switch {
	position: relative;
	display: inline-block;
	width: 44px;
	height: 24px;
	margin: 0;
	cursor: pointer;
}

.mh-measure__switch input {
	position: absolute;
	opacity: 0;
	width: 0;
	height: 0;
}

.mh-measure__slider {
	position: absolute;
	inset: 0;
	background: #cbd5e1;
	border-radius: 999px;
	transition: background 0.15s;
}

.mh-measure__slider::before {
	content: '';
	position: absolute;
	width: 18px;
	height: 18px;
	left: 3px;
	top: 3px;
	background: #fff;
	border-radius: 50%;
	box-shadow: 0 1px 3px rgba(2, 6, 23, 0.35);
	transition: transform 0.15s;
}

.mh-measure__switch input:checked + .mh-measure__slider {
	background: #0e7490;
}

.mh-measure__switch input:checked + .mh-measure__slider::before {
	transform: translateX(20px);
}

.mh-measure__switch input:focus-visible + .mh-measure__slider {
	outline: 2px solid #0e7490;
	outline-offset: 2px;
}

/* R122 - dense registers were overflowing their cage by a few pixels, which
   cost them the viewport-sticky header entirely (the cage then scrolls away
   with the page). Tighter horizontal padding buys ~2px per column-edge and
   brings the marginal tables back under the threshold; vertical padding is
   untouched so the rows read the same. */
.mh-staff-table--dense td,
.mh-staff-table--dense th {
	padding: 6px 5px;
}

/* The sticky header must paint over the rows sliding under it — a
   transparent header would show the data through it. */
.mh-scroll--lift .mh-staff-table thead tr:first-child th,
.mh-scroll--lift .mh-staff-table thead tr.mh-filter-row th {
	background-clip: padding-box;
}

/* ---------------------------------------------------------------------------
 * Account page + customer cabinet — visual pass, owner review 2026-08-20;
 * layout re-decided in the staging audit 2026-08-25.
 *
 * 2026-08-20 the two forms went side by side on desktop, because a lone
 * left-hung login card had left 55 % of the page empty. 2026-08-25 the owner
 * ruled for one form at a time, registration on request — so the empty half
 * page is now avoided the other way: a single centred card with the wrapper
 * width-capped, the pattern every sign-in page uses.
 * ------------------------------------------------------------------------- */

/* --- 1. One centred card, every width ------------------------------------- */
/* The cap constrains the switch box, the notices and the card together. */
.woocommerce-account:not(.logged-in) .entry-content > .woocommerce {
	max-width: 560px;
	margin-left: auto;
	margin-right: auto;
}

/* Storefront ships `.col2-set#customer_login .col-1 { width: 41.1765%; }` —
   an ID selector, so only a selector carrying the same ID wins. Lesson of
   2026-08-21, kept: without this the lone card shrinks to 41 % of the track. */
.woocommerce-account:not(.logged-in) .u-columns.col2-set#customer_login > .col-1,
.woocommerce-account:not(.logged-in) .u-columns.col2-set#customer_login > .col-2 {
	width: 100%;
	max-width: none;
	float: none;
	margin: 0;
}

/* --- 2. The cards themselves --------------------------------------------- */
.woocommerce-form-login,
.woocommerce-form-register {
	box-shadow: var(--mh-shadow);
	padding: 1.9em 1.75em !important;
}

.woocommerce-account:not(.logged-in) .u-columns h2 {
	font-size: 1.45rem;
	margin: 0 0 0.7em;
}

/* Title centred over the centred card (2026-08-20 it went left to match the
   two left-aligned columns; with one centred card, centred is the match). */
.woocommerce-account:not(.logged-in) .entry-header .entry-title,
.woocommerce-account:not(.logged-in) .page-title {
	text-align: center;
	margin-bottom: 0.5em;
}

.woocommerce-account:not(.logged-in) .entry-content > .woocommerce {
	margin-top: 0;
}

/* --- 3. One radius language ---------------------------------------------- */
/* Inputs had square corners while every button was a full pill. */
.woocommerce-form-login input[type="text"],
.woocommerce-form-login input[type="email"],
.woocommerce-form-login input[type="tel"],
.woocommerce-form-login input[type="password"],
.woocommerce-form-register input[type="text"],
.woocommerce-form-register input[type="email"],
.woocommerce-form-register input[type="tel"],
.woocommerce-form-register input[type="password"],
.woocommerce-form-register select,
.woocommerce-EditAccountForm input[type="text"],
.woocommerce-EditAccountForm input[type="email"],
.woocommerce-EditAccountForm input[type="tel"],
.woocommerce-EditAccountForm input[type="password"] {
	border-radius: var(--mh-radius-sm);
	border: 1px solid var(--mh-line);
	background-color: var(--mh-surface);
	padding: 0.72em 0.85em;
	transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.woocommerce-form-login input:focus,
.woocommerce-form-register input:focus,
.woocommerce-form-register select:focus,
.woocommerce-EditAccountForm input:focus {
	border-color: var(--mh-blue);
	box-shadow: 0 0 0 3px var(--mh-accent-bg);
	outline: none;
}

/* The phone field arrived with a grey fill while every neighbour was white. */
.woocommerce-form-register input#mh_reg_phone {
	background-color: var(--mh-surface);
}

/* --- 4. The password reveal button --------------------------------------- */
/* An unstyled grey square butted against the input, breaking its corner. */
.woocommerce-form-login .woocommerce-form-login__submit,
.woocommerce-form-register .woocommerce-form-register__submit {
	min-width: 11em;
}

.woocommerce-password-hint,
.show-password-input {
	border-radius: 0 var(--mh-radius-sm) var(--mh-radius-sm) 0;
}

.woocommerce-form__input-checkbox {
	margin-right: 0.4em;
}

/* --- 5. Google, clearly the secondary route ------------------------------ */
.mh-google-login {
	margin-top: 1.1em;
	padding-top: 1.1em;
	border-top: 1px solid var(--mh-line);
	position: relative;
}

.mh-google-btn {
	width: 100%;
	justify-content: center;
}

/* --- 6. The customer cabinet --------------------------------------------- */
/* Nav card and content card were hairline boxes with no depth; the active item
   was a square block inside a rounded card. */
.woocommerce-account.logged-in .woocommerce-MyAccount-navigation {
	overflow: hidden;
}

.woocommerce-EditAccountForm fieldset {
	border: 1px solid var(--mh-line);
	border-radius: var(--mh-radius-sm);
	padding: 1.1em 1.2em 0.4em;
	margin-top: 1.4em;
}

.woocommerce-EditAccountForm fieldset legend {
	padding: 0 0.5em;
	font-weight: 600;
	font-size: 0.95rem;
}

/* --- 7. Mobile ------------------------------------------------------------ */
@media (max-width: 899px) {
	/* Owner 2026-10-04 (scr 16/17): the 88px .site-main spacer that used to sit
	   here is gone — the handheld-bar reservation (body padding-bottom until
	   cluster H's «20-27.a», the .site-footer padding-bottom after it) already
	   keeps the footer, and the form above it, clear of the bar, so the spacer
	   only added a second empty band under every cabinet page. */
	.woocommerce-form-login,
	.woocommerce-form-register {
		padding: 1.4em 1.2em !important;
	}
}

/* ---------------------------------------------------------------------------
 * Product size chart (Catalog/SizeChart.php) — owner request 2026-08-20.
 *
 * A surgeon picks an implant from the manufacturer's dimension table, so the
 * table opens OVER the page rather than pushing the buy button down. Rows in
 * stock are links and are marked as such; the rest read as plain text, because
 * a link here means «you can have this one today».
 * ------------------------------------------------------------------------- */
.mh-sizechart { margin: 0 0 1.2em; }

.mh-sizechart__open {
	background: var(--mh-surface) !important;
	color: var(--mh-ink) !important;
	border: 1px solid var(--mh-line) !important;
	font-weight: 600;
}

.mh-sizechart__open:hover {
	border-color: var(--mh-blue) !important;
	color: var(--mh-blue) !important;
}

.mh-sizechart__veil {
	position: fixed;
	inset: 0;
	background: rgba(13, 34, 49, 0.55);
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 24px;
	z-index: 10000;
}

.mh-sizechart__veil[hidden] { display: none !important; }

body.mh-sizechart-open { overflow: hidden; }

.mh-sizechart__panel {
	background: var(--mh-surface);
	border-radius: var(--mh-radius);
	box-shadow: 0 24px 60px rgba(13, 34, 49, 0.35);
	max-width: 860px;
	width: 100%;
	max-height: 86vh;
	display: flex;
	flex-direction: column;
}

.mh-sizechart__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	padding: 16px 20px;
	border-bottom: 1px solid var(--mh-line);
	font-size: 1.05rem;
}

.mh-sizechart__close {
	border: 0;
	background: transparent;
	font-size: 26px;
	line-height: 1;
	cursor: pointer;
	color: var(--mh-muted);
	padding: 0 4px;
}

.mh-sizechart__close:hover { color: var(--mh-ink); }

/* Wider than a phone: it scrolls inside the panel, never the page. */
.mh-sizechart__scroll { overflow: auto; padding: 0 20px; }

.mh-sizechart__table {
	width: 100%;
	border-collapse: collapse;
	font-size: 14px;
	font-variant-numeric: tabular-nums;
}

.mh-sizechart__table th {
	position: sticky;
	top: 0;
	background: var(--mh-canvas);
	text-align: right;
	font-weight: 600;
	font-size: 12px;
	padding: 10px 8px;
	border-bottom: 1px solid var(--mh-line);
	white-space: nowrap;
}

.mh-sizechart__table td {
	text-align: right;
	padding: 8px;
	border-bottom: 1px solid #f0f4f8;
	white-space: nowrap;
}

.mh-sizechart__table th:nth-child(7),
.mh-sizechart__table th:nth-child(8),
.mh-sizechart__table td:nth-child(7),
.mh-sizechart__table td:nth-child(8) { text-align: left; }

/* Availability must read at a glance, not only on hover. */
.mh-sizechart__table tr.is-available .mh-sizechart__sku a {
	font-weight: 600;
	color: var(--mh-blue-dark);
	text-decoration: underline;
	text-underline-offset: 2px;
}

.mh-sizechart__table tr.is-available td:first-child {
	box-shadow: inset 3px 0 0 var(--mh-green);
}

.mh-sizechart__table tr.is-preorder { color: var(--mh-muted); }

.mh-sizechart__table tr.is-current { background: var(--mh-accent-bg); }

.mh-sizechart__sizer { color: var(--mh-muted); }

.mh-sizechart__note {
	margin: 0;
	padding: 14px 20px 18px;
	font-size: 13px;
	color: var(--mh-muted);
	border-top: 1px solid var(--mh-line);
}

@media (max-width: 600px) {
	.mh-sizechart__veil { padding: 0; align-items: flex-end; }

	.mh-sizechart__panel {
		max-height: 92vh;
		border-radius: var(--mh-radius) var(--mh-radius) 0 0;
	}
}

/* Order-desk line table: money columns right-aligned with tabular figures, so
   the totals line up while the desk is typing (owner 2026-08-21). */
#mh-no-lines .mh-no-num,
#mh-no-lines th.mh-no-num {
	text-align: right;
	font-variant-numeric: tabular-nums;
	white-space: nowrap;
}

#mh-no-lines tfoot td {
	border-top: 2px solid var(--mh-line);
	padding-top: 10px;
	font-size: 1.02em;
}

/* ---------------------------------------------------------------------------
 * Suture matrix (Catalog/SutureMatrix.php) — owner request 2026-08-20.
 *
 * Material down the side, USP size across the top. A cell holds the number of
 * configurations available now; one goes straight to the product, several open
 * a card list inside the same panel so the surgeon stays in the comparison.
 * ------------------------------------------------------------------------- */
.mh-matrix__corner,
.mh-matrix__rowhead {
	position: sticky;
	left: 0;
	background: var(--mh-surface);
	text-align: left !important;
	font-weight: 600;
	font-size: 12.5px;
	min-width: 190px;
	max-width: 240px;
	white-space: normal !important;
	z-index: 1;
}

.mh-matrix__corner {
	background: var(--mh-canvas);
	z-index: 2;
}

.mh-matrix td.mh-matrix__cell {
	text-align: center;
	min-width: 46px;
}

.mh-matrix__cell.is-empty {
	color: #c8d4de;
}

.mh-matrix__cell.is-preorder {
	color: var(--mh-muted);
	background: #fafcfd;
}

.mh-matrix__cell.is-available {
	background: var(--mh-green-bg);
}

.mh-matrix__cell.is-current {
	outline: 2px solid var(--mh-blue);
	outline-offset: -2px;
}

.mh-matrix__cell a,
.mh-matrix__more {
	display: inline-block;
	min-width: 26px;
	padding: 2px 6px;
	border: 0;
	border-radius: var(--mh-radius-sm);
	background: var(--mh-green);
	color: #fff;
	font-weight: 600;
	font-size: 13px;
	text-decoration: none;
	cursor: pointer;
}

.mh-matrix__cell a:hover,
.mh-matrix__more:hover {
	background: var(--mh-green-dark);
	color: #fff;
}

/* --- the disambiguation view -------------------------------------------- */
.mh-matrix__cards {
	padding: 16px 20px;
	overflow: auto;
}

.mh-matrix__cards[hidden] {
	display: none !important;
}

.mh-matrix__back {
	border: 0;
	background: transparent;
	color: var(--mh-blue-dark);
	font-weight: 600;
	cursor: pointer;
	padding: 0 0 8px;
	font-size: 14px;
}

.mh-matrix__cardhead {
	margin: 0 0 12px;
	font-size: 15px;
}

.mh-matrix__grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
	gap: 12px;
}

.mh-matrix__card {
	display: flex;
	flex-direction: column;
	gap: 4px;
	padding: 12px 14px;
	border: 1px solid var(--mh-line);
	border-radius: var(--mh-radius-sm);
	text-decoration: none;
	color: var(--mh-ink);
	background: var(--mh-surface);
	transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.mh-matrix__card:hover {
	border-color: var(--mh-blue);
	box-shadow: var(--mh-shadow);
}

.mh-matrix__cardname {
	font-weight: 600;
	font-size: 14px;
	line-height: 1.35;
}

.mh-matrix__cardmeta {
	font-size: 12px;
	color: var(--mh-muted);
}

.mh-matrix__cardstock {
	font-size: 12px;
	color: var(--mh-green-dark);
	font-weight: 600;
}

/* ---------------------------------------------------------------------------
 * Cabinet, second pass — the radius that did not take.
 *
 * The first pass DID match: the nav and content cards picked up the border and
 * shadow. Only border-radius stayed at 0, because Storefront sets it later with
 * equal weight. Measured on staging rather than assumed, the same way the
 * account columns were finally settled.
 *
 * !important is the right tool here and not laziness: these are single-property
 * overrides of a parent theme, and racing Storefront on selector length would
 * break again the next time it ships a rule.
 * ------------------------------------------------------------------------- */
.woocommerce-account .woocommerce-MyAccount-navigation,
.woocommerce-account .woocommerce-MyAccount-content {
	border-radius: var(--mh-radius) !important;
	overflow: hidden;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li a {
	padding: 13px 16px;
	font-size: 14.5px;
}

/* The active item filled the full width as a hard blue block inside a rounded
   card, so the card's corner was cut square by its own child. */
.woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active a {
	box-shadow: inset 3px 0 0 var(--mh-blue-dark);
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li + li {
	border-top: 1px solid var(--mh-line);
}

.woocommerce-account .woocommerce-MyAccount-content {
	padding: 26px 28px;
}

/* --- basket ---------------------------------------------------------------
 * Storefront's cart is an unstyled table with a floating totals box. Give it
 * the same card language as everything else, and stop the totals box from
 * sitting alone in a wide empty row.
 * ------------------------------------------------------------------------- */
.woocommerce-cart .shop_table {
	border: 1px solid var(--mh-line);
	border-radius: var(--mh-radius);
	border-collapse: separate;
	border-spacing: 0;
	overflow: hidden;
	box-shadow: var(--mh-shadow);
}

.woocommerce-cart .shop_table thead th {
	background: var(--mh-canvas);
	font-size: 12.5px;
	letter-spacing: 0.02em;
	text-transform: none;
	padding: 14px 12px;
}

.woocommerce-cart .shop_table td {
	padding: 14px 12px;
	vertical-align: middle;
}

.woocommerce-cart .cart_totals {
	border: 1px solid var(--mh-line);
	border-radius: var(--mh-radius);
	padding: 20px 22px;
	background: var(--mh-surface);
	box-shadow: var(--mh-shadow);
}

.woocommerce-cart .cart_totals h2 {
	font-size: 1.2rem;
	margin-top: 0;
}

.woocommerce-cart .wc-proceed-to-checkout .button {
	width: 100%;
	text-align: center;
}

/* The quantity stepper. The border belongs to `.mh-qty` (stepper section
   above) and NOT here: assets/js/quantity.js inserts .mh-qty INSIDE
   .quantity, so styling both drew one box around the other. The input
   rule stays as a guard for the unenhanced case (no JS). */
.woocommerce-cart .quantity input {
	border: 0 !important;
	text-align: center;
}

/* O37 — an outstanding delivery act, marked in the order register.
   Amber rather than the red serial warning: the act is work that is owed,
   not stock that is wrong, and the two must not read as the same alarm.
   It is an <a>, so it needs the link colours neutralised. */
.mh-badge--act {
	background: #fde68a;
	color: #7c4a03;
	font-weight: 600;
	text-decoration: none;
	letter-spacing: 0.02em;
}

.mh-badge--act:hover,
.mh-badge--act:focus {
	background: #fcd34d;
	color: #7c4a03;
	text-decoration: none;
}

.mh-badge--act:focus-visible {
	outline: 2px solid #7c4a03;
	outline-offset: 1px;
}

/* The integrity verdict on a document dossier. Green is not decoration here:
   it is the answer to "does the stored content still match what was signed",
   and the red case must be impossible to skim past. */

/* --- basket, second pass ---------------------------------------------------
   The first pass fought the border radius, which was never the problem:
   --mh-radius is 0 by design, so the corners were always going to be square.
   What actually read as «huge rigged» in the owner's screenshot was the
   quantity stepper looking like three unrelated boxes, a washed-out update
   button, and the totals card marooned beside half a page of nothing.
   ------------------------------------------------------------------------ */

/* One control, not three. The buttons carry no fill until you approach them,
   so the stepper reads as a single field with affordances on either side. */
.mh-qty {
	background: var(--mh-surface);
}

.mh-qty__btn {
	background: transparent;
	color: var(--mh-muted);
	transition: background 0.15s ease, color 0.15s ease;
}

.mh-qty__btn:hover,
.mh-qty__btn:focus-visible {
	background: var(--mh-accent-bg);
	color: var(--mh-blue);
}

.mh-qty .qty {
	background: transparent;
	font-weight: 600;
}

/* «Səbəti yenilə» was pale enough to read as disabled next to the primary
   action. It is a real, usable control — give it a visible outline instead
   of a ghost fill. */
.woocommerce-cart .actions .button[name="update_cart"] {
	background: transparent;
	color: var(--mh-blue);
	border: 1px solid var(--mh-blue);
	opacity: 1;
}

.woocommerce-cart .actions .button[name="update_cart"]:disabled {
	color: var(--mh-muted);
	border-color: var(--mh-line);
}

/* Storefront floats the totals into a 50% column and leaves the other half
   empty. Cap it and let the table above own the full width — a narrow card
   deliberately right-aligned reads as a summary; a half-empty row reads as a
   layout that broke. */
.woocommerce-cart .cart-collaterals {
	display: flex;
	justify-content: flex-end;
}

.woocommerce-cart .cart-collaterals .cart_totals {
	width: 100%;
	max-width: 440px;
	float: none;
}

/* The delivery verdict, in the totals. Green when it has been earned so the
   customer registers it, quiet grey while it is still a target. */
.mh-free-shipping-hint td {
	padding-top: 10px;
	color: var(--mh-muted);
}

.mh-free-shipping-hint--won td {
	color: #166534;
	font-weight: 600;
}

/* --- basket layout --------------------------------------------------------
   Storefront stacks the totals BELOW the item table and floats it into a half
   -width column, which left the other half of the page empty and pushed the
   primary action down under the floating chat bubble — the bubble sat on top
   of the free-delivery line.

   The two are siblings, so the parent becomes a grid and they sit side by
   side: items take the space they need, the summary is a fixed rail. :has()
   picks the right .woocommerce container — the page has several, one of them
   the search widget.
   ------------------------------------------------------------------------ */
@media (min-width: 900px) {
	.woocommerce-cart .woocommerce:has(> .woocommerce-cart-form) {
		display: grid;
		grid-template-columns: minmax(0, 1fr) 380px;
		gap: 28px;
		align-items: start;
	}

	.woocommerce-cart .woocommerce > .woocommerce-cart-form {
		grid-column: 1;
		margin-bottom: 0;
	}

	.woocommerce-cart .woocommerce > .cart-collaterals {
		grid-column: 2;
		width: auto;
		margin: 0;
	}

	.woocommerce-cart .cart-collaterals .cart_totals {
		max-width: none;
	}

/* The summary rail follows the page down on tall baskets. */
	.woocommerce-cart .cart-collaterals {
		position: sticky;
		top: 24px;
	}
}

/* Reversing a booked payment, from the order card. Quiet until hovered —
   it undoes money, so it should not invite an idle click. */
.mh-undo {
	color: var(--mh-muted);
	font-size: 1.05em;
	line-height: 1;
	cursor: pointer;
	background: none;
	border: 0;
	padding: 2px 6px;
}

.mh-undo:hover,
.mh-undo:focus-visible {
	color: #991b1b;
	background: #fee2e2;
	border-radius: var(--mh-radius-sm);
}

/* The «Bir səbət — N sifariş» card is a CONTROL, and it did not look like
   one: the native marker is suppressed and the replacement caret was muted
   grey, pushed to the far right by margin-left:auto, detached from the
   title it belongs to. The owner read the row as a summary and concluded an
   order had gone missing. list-style:none also silences the Firefox marker,
   which was left inconsistent with Chrome. */

/* A second cue beside the title, where the eye actually is. */

/* The customer action bar on an order (O27). Three things of very
   different weight, so they do not get three identical buttons: resend is
   ordinary, correction is a conversation, cancel is destructive and sits
   apart with a rule above it. */
.mh-order-actions {
	margin-top: 2em;
	padding: 20px 22px;
	border: 1px solid var(--mh-line);
	background: var(--mh-surface);
}

.mh-order-actions h3 {
	margin: 0 0 14px;
	font-size: 1.05rem;
}

.mh-order-actions__row {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px;
	padding: 12px 0;
	border-top: 1px solid var(--mh-line);
}

.mh-order-actions__row:first-of-type {
	border-top: 0;
}

.mh-order-actions__row label {
	flex: 0 0 100%;
	font-weight: 600;
	font-size: 0.95em;
}

.mh-order-actions__row textarea {
	flex: 1 1 100%;
	min-height: 72px;
}

.mh-order-actions__hint {
	color: var(--mh-muted);
	font-size: 0.86em;
	flex: 1 1 12em;
}

.mh-order-actions__done {
	color: #166534;
	font-weight: 600;
	margin: 0 0 12px;
}

/* Destructive, and it should not be the prettiest thing on the page. */
.mh-order-actions__danger {
	background: transparent !important;
	color: #991b1b !important;
	border: 1px solid #991b1b !important;
}

.mh-order-actions__danger:hover {
	background: #fee2e2 !important;
	color: #991b1b !important;
}

/* The conditions summary above the confirm button (O31). It is a list of
   obligations someone is about to take on, so it gets read like one: short
   lines, real spacing, not a wall of grey. */
.mh-checkout-terms {
	font-size: 0.9em;
	line-height: 1.55;
}

.mh-checkout-terms__lead {
	margin: 0 0 8px;
}

.mh-checkout-terms ul {
	padding-left: 1.15em;
}

.mh-checkout-terms__more {
	margin: 0;
	font-size: 0.95em;
}

/* The customer card's position strip and merged timeline.
   The strip is the only line on the card with a deadline attached, so it
   gets weight; overdue turns it red rather than adding another badge. */
.mh-cust-position {
	margin: 12px 0 4px;
	padding: 8px 12px;
	border-left: 3px solid #0f766e;
	background: #f0fdfa;
	font-size: 0.93em;
}

.mh-cust-position.is-overdue {
	border-left-color: #991b1b;
	background: #fef2f2;
	color: #7f1d1d;
}

/* Audit rows are context, not events — they recede so the documents and
   orders they sit between stay readable as a sequence. */
.mh-cust-timeline td:nth-child(2) {
	color: var(--mh-muted);
	font-size: 0.9em;
}

/* The open-basket banner on Yeni sifariş (O25). It states a running total the
   operator is building toward, so it reads as a status line, not a warning. */
.mh-no-basket {
	margin: 0 0 12px;
	padding: 10px 14px;
	border-left: 3px solid #0f766e;
	background: #f0fdfa;
	font-size: 0.92em;
}

/* A warning that renders in the success colour is worse than no warning.
   .mh-staff-notice is green (#dcfce7) and only --err had a variant, so the
   «WhatsApp is down, the message will not be sent» banner added for O23 was
   drawn in exactly the colour that means "fine". */
.mh-staff-notice--warn,
.mh-wa-down {
	background: #fef3c7;
	border-left: 3px solid #b26a00;
	color: #7c4a03;
}

/* The WhatsApp popup. Two columns like the desktop client — chats beside
   the thread — but it stays a panel, not a full-screen takeover: staff open
   it from an order and go back to that order. */
.mh-wapop {
	position: fixed;
	inset: 0;
	background: rgba(15, 23, 42, 0.45);
	z-index: 100000;
	display: flex;
	align-items: center;
	justify-content: center;
}

.mh-wapop[hidden] {
	display: none;
}

.mh-wapop__panel {
	width: min(920px, 94vw);
	height: min(660px, 88vh);
	background: var(--mh-surface, #fff);
	border-radius: 10px;
	display: flex;
	flex-direction: column;
	overflow: hidden;
	box-shadow: 0 24px 60px rgba(0, 0, 0, 0.3);
}

.mh-wapop__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 12px 16px;
	background: #075e54;
	color: #fff;
}

.mh-wapop__x {
	background: transparent;
	border: 0;
	color: #fff;
	font-size: 1.1em;
	cursor: pointer;
}

.mh-wapop__down {
	margin: 0;
	padding: 10px 16px;
	background: #fef3c7;
	color: #7c4a03;
	font-size: 0.88em;
}

.mh-wapop__body {
	display: flex;
	flex: 1;
	min-height: 0;
}

.mh-wapop__chats {
	width: 260px;
	border-right: 1px solid var(--mh-line, #e5e7eb);
	overflow-y: auto;
	background: #f8fafc;
}

.mh-wapop__chat {
	display: block;
	width: 100%;
	text-align: left;
	padding: 10px 14px;
	border: 0;
	border-bottom: 1px solid var(--mh-line, #e5e7eb);
	background: transparent;
	cursor: pointer;
}

.mh-wapop__chat.is-on {
	background: #e2e8f0;
}

.mh-wapop__chat small {
	display: block;
	color: var(--mh-muted, #6b7280);
	font-size: 0.82em;
}

.mh-wapop__thread {
	flex: 1;
	display: flex;
	flex-direction: column;
	min-width: 0;
}

.mh-wapop__msgs {
	flex: 1;
	overflow-y: auto;
	padding: 16px;
	background: #ece5dd;
}

.mh-wapop__b {
	max-width: 76%;
	margin-bottom: 8px;
	padding: 7px 10px;
	border-radius: 8px;
	background: #fff;
	display: flex;
	flex-direction: column;
}

.mh-wapop__b.is-mine {
	margin-left: auto;
	background: #dcf8c6;
}

.mh-wapop__t {
	white-space: pre-wrap;
	word-break: break-word;
}

.mh-wapop__m {
	align-self: flex-end;
	font-size: 0.72em;
	color: var(--mh-muted, #6b7280);
	margin-top: 2px;
}

.mh-wapop__compose {
	display: flex;
	gap: 8px;
	padding: 10px;
	border-top: 1px solid var(--mh-line, #e5e7eb);
}

.mh-wapop__compose textarea {
	flex: 1;
	resize: none;
	min-height: 40px;
}


/* ---------------------------------------------------------------------------
   Pre-order photo panel (owner 2026-08-22: «one can see immediately what is
   being pre-ordered»). The main shot follows the colour dropdown; the strip
   below it offers the other angles the manufacturer publishes.
   ------------------------------------------------------------------------ */

.mh-configurator__media {
	margin: 0 0 1rem;
	padding: 0.9rem;
	border: 1px solid #e3e7ea;
	border-radius: 6px;
	background: #fbfcfd;
}

.mh-configurator__media[hidden] {
	display: none;
}

.mh-configurator__media-main {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 200px;
	background: #fff;
	border-radius: 4px;
	overflow: hidden;
}

.mh-configurator__media-main img {
	max-width: 100%;
	max-height: 320px;
	width: auto;
	height: auto;
	object-fit: contain;
}

.mh-configurator__media-thumbs {
	display: flex;
	flex-wrap: wrap;
	gap: 0.4rem;
	margin-top: 0.6rem;
}

.mh-configurator__media-thumb {
	width: 56px;
	height: 56px;
	padding: 0;
	border: 1px solid #dfe4e8;
	border-radius: 4px;
	background: #fff;
	cursor: pointer;
	overflow: hidden;
}

.mh-configurator__media-thumb.is-on {
	border-color: #0f6aa8;
	box-shadow: 0 0 0 2px rgba(15, 106, 168, 0.18);
}

.mh-configurator__media-thumb img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	display: block;
}

.mh-configurator__media-note {
	margin: 0.5rem 0 0;
	font-size: 0.85rem;
	color: #5a6773;
}

.mh-configurator__media-note:empty {
	display: none;
}

/* ---------------------------------------------------------------------------
 * Account self-deletion (Users/AccountArchive.php) — the danger zone at the
 * foot of «Hesab məlumatları». Owner, staging audit 2026-08-25: every
 * customer can delete (= archive) their own account behind their password
 * or a Google re-auth.
 * ------------------------------------------------------------------------- */
.mh-account-delete {
	margin-top: 2em;
	border: 1px solid var(--mh-line);
	border-radius: var(--mh-radius);
	padding: 14px 18px;
	background: var(--mh-surface);
}

.mh-account-delete summary {
	cursor: pointer;
	font-weight: 600;
	color: #b32d2e;
}

.mh-account-delete p {
	color: var(--mh-muted);
}

.mh-account-delete__btn,
.mh-account-delete__google .button {
	background: var(--mh-surface) !important;
	border: 1px solid #b32d2e !important;
	color: #b32d2e !important;
}

.mh-account-delete__btn:hover,
.mh-account-delete__google .button:hover {
	background: #b32d2e !important;
	color: #fff !important;
}

/* ---------------------------------------------------------------------------
 * Password-reset wizard (Users/PasswordReset.php) — owner, staging audit
 * 2026-08-25. One identifier field; the state exclaimers must be impossible
 * to miss (the old page reloaded with no visible answer).
 * ------------------------------------------------------------------------- */
.mh-prnote {
	border-radius: var(--mh-radius);
	padding: 16px 20px;
	margin: 0 0 1.4em;
	border: 1px solid transparent;
}

.mh-prnote p {
	margin: 0 0 0.6em;
}

.mh-prnote p:last-child {
	margin-bottom: 0;
}

.mh-prnote--ok {
	background: #e7f6ec;
	border-color: #9fd8b0;
	color: #14522a;
}

.mh-prnote--err {
	background: #fdeceb;
	border-color: #f0b1ad;
	color: #7a1f1a;
}

.mh-prnote--warn {
	background: #fdf3e0;
	border-color: #ecc987;
	color: #6b4a0e;
}

.mh-prnote--info {
	background: #e8f2fc;
	border-color: #a9cdf0;
	color: #123f6b;
}

.mh-prnote .button {
	margin-top: 4px;
}

.mh-prnote__form {
	display: inline-block;
	margin: 4px 8px 0 0;
}

.mh-pr-cancel {
	margin-top: 10px;
}

.mh-pr-cancel__btn {
	background: none;
	border: 0;
	padding: 0;
	color: var(--mh-blue);
	cursor: pointer;
	font-size: 0.92em;
	text-decoration: underline;
}

.mh-phone-reset {
	max-width: 480px;
}

/* ---------------------------------------------------------------------------
 * Confirmation numbers (Users/AccountPhone.php) — owner-dictated list design,
 * staging audit 2026-08-25: each number a row with its own remove button,
 * pending requests marked in place, additions inline.
 * ------------------------------------------------------------------------- */
/* Owner 2026-08-26: tighter — the struck texts left, the box follows suit. */
.mh-phone-numbers {
	margin-top: 1.2em;
	border: 1px solid var(--mh-line);
	border-radius: var(--mh-radius);
	padding: 14px 18px 16px;
	background: var(--mh-surface);
}

.mh-phone-numbers p {
	margin-bottom: 0.6em;
}

.mh-phone-numbers h3 {
	margin: 0 0 0.6em;
	font-size: 1.15rem;
}

.mh-phone-numbers__list {
	list-style: none;
	margin: 0.5em 0;
	padding: 0;
}

.mh-phone-numbers__list li {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 8px 0;
	border-bottom: 1px solid var(--mh-line);
}

.mh-phone-numbers__num {
	font-weight: 600;
	font-size: 1.05em;
	min-width: 150px;
}

.mh-phone-numbers__form {
	margin: 0;
}

.mh-phone-numbers__del {
	padding: 2px 14px !important;
	font-size: 0.85em !important;
	background: var(--mh-surface) !important;
	border: 1px solid #b32d2e !important;
	color: #b32d2e !important;
}

.mh-phone-numbers__del:hover {
	background: #b32d2e !important;
	color: #fff !important;
}

.mh-phone-numbers__pending {
	color: var(--mh-muted);
	font-size: 0.9em;
}

.mh-phone-numbers__pending--del {
	color: #b32d2e;
}

.mh-phone-numbers__addbtn {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin-top: 6px;
}

.mh-phone-numbers__addform {
	display: flex;
	gap: 10px;
	margin-top: 10px;
	align-items: center;
}

.mh-phone-numbers__addform .input-text {
	max-width: 240px;
}

/* (.mh-phone-numbers__note left with the amendment note, owner 2026-08-26.) */

/* ---------------------------------------------------------------------------
 * Owner, staging audit 2026-08-25 (round 2).
 * ------------------------------------------------------------------------- */

/* The catalog CTA banner fills the whole row: the amber pre-order box floats
   right, and a flex container shrinks beside a float — clearing it lets the
   banner run to the right edge on every catalog page. */
.mh-cta-banner {
	clear: both;
}

/* The add-number form swaps IN PLACE of the button: both carry display rules
   that beat the [hidden] UA default, so the form showed from the start and
   the button never disappeared (seen on the owner's screenshot). */
.mh-phone-numbers__addbtn[hidden],
.mh-phone-numbers__addform[hidden] {
	display: none !important;
}

/* ---------------------------------------------------------------------------
 * Owner, staging audit 2026-08-25 (round 3): the catalog banner really fills
 * its row, the password form folds away, the cabinet nav and the checkout
 * grow up.
 * ------------------------------------------------------------------------- */

/* --- Password change folds behind a button (form-edit-account override) --- */
.mh-pwchange {
	margin: 1.2em 0;
}

.mh-pwchange summary {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	cursor: pointer;
	list-style: none;
	padding: 10px 18px;
	border: 1px solid var(--mh-line);
	border-radius: 999px;
	font-weight: 600;
	background: var(--mh-surface);
	transition: border-color 0.15s ease, color 0.15s ease;
}

.mh-pwchange summary::-webkit-details-marker {
	display: none;
}

.mh-pwchange summary::before {
	content: "🔑";
	font-size: 0.95em;
}

.mh-pwchange summary:hover {
	border-color: var(--mh-blue);
	color: var(--mh-blue);
}

.mh-pwchange[open] summary {
	border-color: var(--mh-blue);
	color: var(--mh-blue);
}

.mh-pwchange fieldset {
	margin-top: 14px;
	border: 1px solid var(--mh-line);
	border-radius: var(--mh-radius-sm);
	padding: 1.1em 1.2em 0.4em;
}

/* --- Customer cabinet navigation, modern pass ----------------------------- */
.woocommerce-account.logged-in .woocommerce-MyAccount-navigation {
	background: var(--mh-surface);
	border: 1px solid var(--mh-line);
}

.woocommerce-account.logged-in .woocommerce-MyAccount-navigation ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

.woocommerce-account.logged-in .woocommerce-MyAccount-navigation ul li {
	list-style: none;
	border: 0 !important;
	margin: 2px 0;
}

.woocommerce-account.logged-in .woocommerce-MyAccount-navigation ul li a {
	border-radius: var(--mh-radius-sm);
	color: var(--mh-ink);
	font-weight: 500;
	text-decoration: none;
	border-left: 3px solid transparent;
	transition: background-color 0.15s ease, color 0.15s ease, border-color 0.15s ease;
}

.woocommerce-account.logged-in .woocommerce-MyAccount-navigation ul li a:hover {
	background: var(--mh-accent-bg);
	color: var(--mh-blue);
}

.woocommerce-account.logged-in .woocommerce-MyAccount-navigation ul li.is-active a {
	background: var(--mh-accent-bg);
	color: var(--mh-blue-dark);
	font-weight: 600;
	border-left-color: var(--mh-blue);
}

.woocommerce-account.logged-in .woocommerce-MyAccount-content {
	border: 1px solid var(--mh-line);
	background: var(--mh-surface);
}

/* --- Order-pay, desktop polish (scr 12-13; the checkout has its own block) --- */
.woocommerce-order-pay #order_review > table {
	border: 1px solid var(--mh-line) !important;
	border-radius: var(--mh-radius);
	overflow: hidden;
	border-collapse: separate;
	border-spacing: 0;
	background: var(--mh-surface);
}

.woocommerce-order-pay #order_review > table th,
.woocommerce-order-pay #order_review > table td {
	padding: 12px 16px !important;
	border: 0 !important;
	border-bottom: 1px solid var(--mh-line) !important;
}

.woocommerce-order-pay #order_review > table tr:last-child th,
.woocommerce-order-pay #order_review > table tr:last-child td {
	border-bottom: 0 !important;
}

.woocommerce-order-pay #order_review {
	max-width: 900px;
	margin: 0 auto;
}

.woocommerce-order-pay .entry-title {
	font-size: 1.7rem;
	text-align: center;
}

ul.wc_payment_methods {
	list-style: none;
	margin: 1.2em 0;
	padding: 0 !important;
	background: transparent !important;
}

ul.wc_payment_methods li.wc_payment_method {
	border: 1px solid var(--mh-line);
	border-radius: var(--mh-radius-sm);
	padding: 12px 16px;
	margin-bottom: 10px;
	background: var(--mh-surface);
	transition: border-color 0.15s ease, background-color 0.15s ease;
}

ul.wc_payment_methods li.wc_payment_method:has(input:checked) {
	border-color: var(--mh-blue);
	background: var(--mh-accent-bg);
}

ul.wc_payment_methods li.wc_payment_method label {
	font-weight: 600;
	cursor: pointer;
}

.woocommerce-order-pay #place_order {
	padding: 14px 28px !important;
	font-size: 1.05em !important;
	border-radius: var(--mh-radius) !important;
}

.mh-checkout-terms {
	border: 1px solid var(--mh-line);
	border-radius: var(--mh-radius);
	padding: 16px 20px;
	background: var(--mh-surface);
	margin: 1.2em 0;
}

.mh-checkout-terms ul {
	margin: 0.6em 0 0.8em 1.1em;
}

.mh-checkout-terms li {
	margin-bottom: 0.5em;
	color: var(--mh-ink);
}

/* ---------------------------------------------------------------------------
 * CRM customer card, redesigned (StaffCrm — owner, staging audit 2026-08-25):
 * one information card with per-field inline edits, list rows for numbers and
 * delivery addresses, a slider for «Tibb mütəxəssisi», and the ONE password
 * modal every guarded write passes through.
 * ------------------------------------------------------------------------- */
.mh-crm-info {
	border: 1px solid var(--mh-line);
	border-radius: var(--mh-radius);
	background: var(--mh-surface);
	overflow: hidden;
	margin-bottom: 1.6em;
}

.mh-crm-row {
	display: grid;
	grid-template-columns: 170px minmax(0, 1fr) auto;
	gap: 8px 16px;
	align-items: center;
	padding: 12px 18px;
	border-bottom: 1px solid var(--mh-line);
}

.mh-crm-row:last-child {
	border-bottom: 0;
}

.mh-crm-row__label {
	font-weight: 600;
	color: var(--mh-muted);
	font-size: 0.92em;
}

.mh-crm-row__value {
	min-width: 0;
	overflow-wrap: anywhere;
}

.mh-crm-row__actions {
	justify-self: end;
	white-space: nowrap;
}

.mh-crm-row--list .mh-crm-row__value {
	display: flex;
	flex-direction: column;
	gap: 6px;
	align-items: flex-start;
}

.mh-crm-editbtn,
.mh-crm-delbtn {
	padding: 3px 14px !important;
	font-size: 0.85em !important;
}

.mh-crm-delbtn {
	background: var(--mh-surface) !important;
	border: 1px solid #b32d2e !important;
	color: #b32d2e !important;
}

.mh-crm-delbtn:hover {
	background: #b32d2e !important;
	color: #fff !important;
}

.mh-crm-addbtn {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	margin-top: 4px;
}

.mh-crm-miniform {
	grid-column: 1 / -1;
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	align-items: center;
	padding: 10px 12px;
	margin: 4px 0 0;
	background: var(--mh-accent-bg);
	border-radius: var(--mh-radius-sm);
}

.mh-crm-miniform[hidden] {
	display: none !important;
}

.mh-crm-miniform-inline {
	display: inline;
	margin: 0 0 0 6px;
}

.mh-crm-phone,
.mh-crm-loc {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
}

.mh-crm-phone__num {
	font-weight: 600;
}

.mh-crm-pending {
	font-size: 0.85em;
	color: var(--mh-muted);
}

.mh-crm-pending--del {
	color: #b32d2e;
	font-weight: 600;
}

/* --- «Tibb mütəxəssisi» slider ------------------------------------------- */
/* The !important trio survives theme label/span resets: without them the
   track collapsed to an inline zero-width box and its knob floated over the
   label text (owner screenshot, 2026-08-26). */
.mh-switch {
	display: inline-flex !important;
	align-items: center;
	gap: 10px;
	cursor: pointer;
}

.mh-switch input {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}

.mh-switch__track {
	flex: 0 0 auto;
	display: inline-block;
	width: 42px !important;
	height: 24px !important;
	vertical-align: middle;
	border-radius: 999px;
	background: #cfd6dc;
	position: relative;
	transition: background-color 0.18s ease;
}

.mh-switch__track::after {
	content: "";
	position: absolute;
	top: 3px;
	left: 3px;
	width: 18px;
	height: 18px;
	border-radius: 50%;
	background: #fff;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.25);
	transition: left 0.18s ease;
}

.mh-switch input:checked + .mh-switch__track {
	background: var(--mh-green);
}

.mh-switch input:checked + .mh-switch__track::after {
	left: 21px;
}

.mh-switch input:focus-visible + .mh-switch__track {
	outline: 2px solid var(--mh-blue);
	outline-offset: 2px;
}

/* --- double-click editing (owner 2026-08-26) ------------------------------ */
/* With JS live (.mh-crm-dbl) the per-row buttons retire: hover marks the
   editable rows, double-click opens the editor, Sil lives inside it. The
   buttons stay in the DOM for the no-JS fallback and as reveal anchors. */
.mh-crm-dbl .mh-crm-editbtn:not(.mh-crm-addbtn) {
	display: none !important;
}

.mh-crm-dbl .mh-crm-phone > form.mh-crm-miniform-inline,
.mh-crm-dbl .mh-crm-loc > form.mh-crm-miniform-inline {
	display: none;
}

.mh-crm-dbl .mh-crm-row.is-editable,
.mh-crm-dbl .mh-crm-phone.is-editable,
.mh-crm-dbl .mh-crm-loc.is-editable {
	cursor: pointer;
	transition: background-color 0.12s ease;
}

.mh-crm-dbl .mh-crm-row.is-editable:hover:not(.is-open) {
	background: var(--mh-accent-bg);
}

.mh-crm-dbl .mh-crm-phone.is-editable,
.mh-crm-dbl .mh-crm-loc.is-editable {
	padding: 4px 8px;
	margin: -4px -8px;
	border-radius: var(--mh-radius-sm);
}

.mh-crm-dbl .mh-crm-phone.is-editable:hover:not(.is-open),
.mh-crm-dbl .mh-crm-loc.is-editable:hover:not(.is-open) {
	background: var(--mh-accent-bg);
}

.mh-crm-row.is-open,
.mh-crm-phone.is-open,
.mh-crm-loc.is-open {
	cursor: default;
}

.mh-crm-rowactions {
	display: inline-flex;
	align-items: center;
	gap: 8px;
}

.mh-crm-rowactions[hidden] {
	display: none !important;
}

.mh-inline-err {
	color: #b32d2e;
	font-weight: 600;
	font-size: 0.9em;
	margin-left: 10px;
}

/* --- pending professional application (decision on the card) -------------- */
.mh-crm-probox {
	border: 1px solid #f3e1b6;
	background: #fdf7e8;
	border-radius: var(--mh-radius);
	padding: 14px 18px;
	margin: 0 0 18px;
}

.mh-crm-probox__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.mh-crm-proact {
	display: inline;
	margin: 0;
}

/* --- «Yeni sifariş» — A3 Pilləli (owner pick 2026-08-26) ------------------- */
.mh-no-steps {
	display: flex;
	list-style: none;
	margin: 0 0 22px;
	padding: 0;
}

.mh-no-steps li {
	flex: 1;
	text-align: center;
	font-size: 12.5px;
	font-weight: 600;
	color: var(--mh-muted);
	position: relative;
	padding-top: 26px;
	cursor: pointer;
	user-select: none;
}

.mh-no-steps li::before {
	content: "";
	position: absolute;
	top: 8px;
	left: 50%;
	transform: translateX(-50%);
	width: 14px;
	height: 14px;
	border-radius: 50%;
	background: #d7dfe6;
	transition: background-color 0.15s ease, box-shadow 0.15s ease;
}

.mh-no-steps li::after {
	content: "";
	position: absolute;
	top: 14px;
	left: calc(50% + 10px);
	right: calc(-50% + 10px);
	height: 2px;
	background: var(--mh-line);
}

.mh-no-steps li:last-child::after {
	display: none;
}

.mh-no-steps li.done,
.mh-no-steps li.seen {
	color: var(--mh-green);
}

.mh-no-steps li.done::before,
.mh-no-steps li.seen::before {
	background: var(--mh-green);
}

.mh-no-steps li.on {
	color: var(--mh-blue-dark);
	font-weight: 700;
}

.mh-no-steps li.on::before {
	background: var(--mh-blue);
	box-shadow: 0 0 0 4px var(--mh-accent-bg);
}

.mh-no-step[hidden] {
	display: none !important;
}

.mh-no-steps li.future {
	opacity: 0.45;
	cursor: default;
}

/* Step 5 «Təsdiq və aktlar» — the delivery panel (owner 2026-08-26). */
.mh-no-steps--static {
	pointer-events: none;
}

.mh-icra-members {
	margin: 0 0 18px;
}

.mh-icra-member {
	padding: 8px 0;
	border-bottom: 1px solid var(--mh-line);
}

.mh-icra-block {
	background: var(--mh-surface);
	border: 1px solid var(--mh-line);
	border-radius: var(--mh-radius);
	padding: 14px 18px;
	margin: 0 0 16px;
}

.mh-icra-block h4 {
	margin: 0 0 10px;
	font-size: 12px;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--mh-muted);
}

.mh-icra-actrow {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px;
	padding: 8px 0;
	border-bottom: 1px solid var(--mh-line);
}

.mh-icra-actrow:last-of-type {
	border-bottom: 0;
}
/* Owner 2026-09-19 (scr 39): each act on ONE line — number, state, act, then SMS / E-mail / WhatsApp as plain compact
   buttons (no boxed background), the physical-signature fold last; it takes its own line only when opened. */
.mh-icra-actrow .mh-act-send{display:inline-flex;flex-wrap:wrap;align-items:center;gap:6px;margin:0;padding:0;background:none;border:0}
.mh-icra-actrow .mh-act-send .button{margin:0;padding:5px 12px;min-height:0;font-size:13px;line-height:1.35;border-radius:999px}
.mh-icra-actrow > .mh-phys-fold{margin:0 0 0 auto;font-size:13px}
.mh-icra-actrow > .mh-phys-fold > summary{cursor:pointer;color:var(--mh-muted);white-space:nowrap}
.mh-icra-actrow > .mh-phys-fold[open]{flex-basis:100%;margin-left:0}

.mh-icra-deliverform {
	display: inline;
	margin: 0;
}

.mh-icra-wait {
	color: #8a6116;
	font-weight: 600;
}

.mh-no-conav {
	display: flex;
	gap: 10px;
	margin: 18px 0 0;
}

.mh-no-splitnote {
	background: var(--mh-green-bg);
	border: 1px solid var(--mh-green);
	border-radius: var(--mh-radius-sm);
	padding: 12px 16px;
	font-size: 0.92em;
	margin: 0 0 16px;
}

.mh-no-splitnote[hidden] {
	display: none !important;
}

/* --- order card «Sənəd + rels» (B1, owner pick 2026-08-26) ----------------- */
/* Owner 2026-08-27 (scr 14): loud card-level flags — a live cancellation
   request and the customer's correction note must be unmissable. The title
   pill reads RED (the generic .mh-badge painted it blue). */
h3 .mh-badge--cancelled {
	background: #fdecea;
	color: #8a1f1f;
}

.mh-ord-flag {
	border-radius: 8px;
	padding: 12px 16px;
	margin: 10px 0 14px;
	font-size: 0.95em;
	line-height: 1.5;
}

.mh-ord-flag--danger {
	background: #fdecea;
	border: 1px solid #f5c6c3;
	color: #8a1f1f;
}

.mh-ord-flag--warn {
	background: #fef7e6;
	border: 1px solid #f2dfae;
	color: #7a5b10;
}

.mh-ord-layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 310px;
	gap: 24px;
	align-items: start;
	margin-top: 8px;
}

.mh-ord-doc {
	min-width: 0;
	background: var(--mh-surface);
	border: 1px solid var(--mh-line);
	border-radius: var(--mh-radius);
	padding: 6px 18px 14px;
}

.mh-ord-rail {
	display: flex;
	flex-direction: column;
	gap: 14px;
	position: sticky;
	top: 24px;
}

.mh-ord-rail > * {
	margin: 0 !important;
}

.mh-ord-block,
.mh-ord-rail > details,
.mh-ord-rail > .mh-staff-inline-form {
	background: var(--mh-surface);
	border: 1px solid var(--mh-line);
	border-radius: var(--mh-radius);
	padding: 13px 16px;
	font-size: 0.92em;
}

.mh-ord-block h4 {
	margin: 0 0 10px;
	font-size: 11.5px;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--mh-muted);
}

.mh-ord-tl {
	list-style: none;
	margin: 0;
	padding: 0;
}

.mh-ord-tl li {
	position: relative;
	padding: 0 0 12px 20px;
	font-size: 12.5px;
}

.mh-ord-tl li::before {
	content: "";
	position: absolute;
	left: 4px;
	top: 4px;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: #d7dfe6;
}

.mh-ord-tl li::after {
	content: "";
	position: absolute;
	left: 7px;
	top: 14px;
	bottom: 0;
	width: 2px;
	background: var(--mh-line);
}

.mh-ord-tl li:last-child {
	padding-bottom: 0;
}

.mh-ord-tl li:last-child::after {
	display: none;
}

.mh-ord-tl li.is-done::before {
	background: var(--mh-green);
}

.mh-ord-tl li.is-now::before {
	background: var(--mh-blue);
	box-shadow: 0 0 0 3px var(--mh-accent-bg);
}

.mh-ord-tl li.is-wait {
	color: var(--mh-muted);
}

.mh-ord-tl__t {
	display: block;
	font-size: 11px;
	color: var(--mh-muted);
}

@media (max-width: 1100px) {
	.mh-ord-layout {
		grid-template-columns: 1fr;
	}

	.mh-ord-rail {
		position: static;
	}
}

/* --- statuses / notifications --------------------------------------------- */
.mh-crm-statuses__row {
	margin: 0 0 0.9em;
}

.mh-crm-notify {
	list-style: none;
	margin: 0 0 1em;
	padding: 0;
}

.mh-crm-notify li {
	padding: 3px 0;
}

/* --- the ONE password modal ----------------------------------------------- */
.mh-passmodal {
	position: fixed;
	inset: 0;
	z-index: 100000;
	background: rgba(15, 23, 42, 0.45);
	display: flex;
	align-items: center;
	justify-content: center;
}

.mh-passmodal[hidden] {
	display: none !important;
}

.mh-passmodal__box {
	background: #fff;
	border-radius: var(--mh-radius);
	box-shadow: 0 18px 50px rgba(15, 23, 42, 0.3);
	padding: 22px 26px;
	width: min(380px, 92vw);
}

.mh-passmodal__box p {
	margin: 0 0 10px;
}

.mh-passmodal__box input[type="password"] {
	width: 100%;
	padding: 9px 12px;
	border: 1px solid var(--mh-line);
	border-radius: var(--mh-radius-sm);
	margin-bottom: 12px;
}

.mh-passmodal__actions {
	display: flex;
	gap: 10px;
	justify-content: flex-end;
}

/* Owner, 2026-08-25: one country, no question — the field is a hidden AZ
   input now (CheckoutFields); this hides any variant the address-i18n JS
   might re-render on checkout or the cabinet address form. */
#billing_country_field,
#shipping_country_field {
	display: none !important;
}

/* ===========================================================================
 * Customer cabinet, the REAL redesign — owner, staging audit 2026-08-25:
 * «the personal cabinet still has the same ugly design». The #625 pass only
 * touched the nav; this one restructures the whole surface the way modern
 * account areas are built: a soft canvas, a fixed sidebar rail, carded
 * content with a readable measure, calm typography.
 * ======================================================================== */

/* --- 1. The canvas: the cabinet sits on a soft gray, cards float on it --- */
.woocommerce-account.logged-in .site-content {
	background: #f5f7f9;
}

.woocommerce-account.logged-in .site-main {
	padding-top: 8px;
}

/* --- 2. Two columns on a grid: 260px rail + fluid content ---------------- */
@media (min-width: 900px) {
	.woocommerce-account.logged-in .site-main > .woocommerce {
		display: grid;
		grid-template-columns: 260px minmax(0, 1fr);
		gap: 28px;
		align-items: start;
	}

	/* Notices span the full row, above both columns. */
	.woocommerce-account.logged-in .site-main > .woocommerce > .woocommerce-message,
	.woocommerce-account.logged-in .site-main > .woocommerce > .woocommerce-info,
	.woocommerce-account.logged-in .site-main > .woocommerce > .woocommerce-error {
		grid-column: 1 / -1;
	}

	.woocommerce-account.logged-in .woocommerce-MyAccount-navigation {
		width: auto;
		float: none;
		position: sticky;
		top: 24px;
	}

	.woocommerce-account.logged-in .woocommerce-MyAccount-content {
		width: auto;
		float: none;
	}
}

/* --- 3. The page title calms down ---------------------------------------- */
.woocommerce-account.logged-in .entry-header .entry-title,
.woocommerce-account.logged-in .page-title {
	font-size: 1.45rem;
	text-align: left;
	margin: 0.4em 0 0.6em;
}

/* --- 4. The rail ---------------------------------------------------------- */
.woocommerce-account.logged-in .woocommerce-MyAccount-navigation {
	border-radius: var(--mh-radius);
	box-shadow: 0 1px 3px rgba(15, 23, 42, 0.06);
	padding: 10px;
}

.woocommerce-account.logged-in .woocommerce-MyAccount-navigation ul li a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	font-size: 0.95rem;
	padding: 11px 14px;
}

/* --- 5. The content card --------------------------------------------------- */
.woocommerce-account.logged-in .woocommerce-MyAccount-content {
	border-radius: var(--mh-radius);
	box-shadow: 0 1px 3px rgba(15, 23, 42, 0.06);
	padding: 2em 2.2em;
}

.woocommerce-account.logged-in .woocommerce-MyAccount-content > h2,
.woocommerce-account.logged-in .woocommerce-MyAccount-content > h3,
.woocommerce-account.logged-in .woocommerce-MyAccount-content form > h3 {
	font-size: 1.2rem;
	margin: 0 0 1em;
	padding-bottom: 0.6em;
	border-bottom: 1px solid var(--mh-line);
}

/* Forms read best at a measure, not edge to edge. */
.woocommerce-account.logged-in .woocommerce-EditAccountForm,
.woocommerce-account.logged-in .woocommerce-address-fields {
	max-width: 680px;
}

.woocommerce-account.logged-in .woocommerce-MyAccount-content label {
	font-weight: 600;
	font-size: 0.92rem;
	margin-bottom: 4px;
	display: inline-block;
}

.woocommerce-account.logged-in .woocommerce-MyAccount-content .form-row {
	margin-bottom: 1.1em;
}

/* --- 6. Dashboard: the two intro paragraphs become a welcome card --------- */
.woocommerce-account.logged-in .woocommerce-MyAccount-content > p:first-of-type {
	font-size: 1.02rem;
}

/* --- 7. Orders and other tables become quiet cards ------------------------ */
.woocommerce-account.logged-in .woocommerce-MyAccount-content table.shop_table {
	border: 1px solid var(--mh-line) !important;
	border-radius: var(--mh-radius-sm);
	border-collapse: separate;
	border-spacing: 0;
	overflow: hidden;
}

.woocommerce-account.logged-in .woocommerce-MyAccount-content table.shop_table th,
.woocommerce-account.logged-in .woocommerce-MyAccount-content table.shop_table td {
	padding: 11px 14px;
	border: 0;
	border-bottom: 1px solid var(--mh-line);
}

.woocommerce-account.logged-in .woocommerce-MyAccount-content table.shop_table thead th {
	background: #f8fafc;
	font-size: 0.85rem;
	text-transform: uppercase;
	letter-spacing: 0.03em;
	color: var(--mh-muted);
}

.woocommerce-account.logged-in .woocommerce-MyAccount-content table.shop_table tr:last-child td {
	border-bottom: 0;
}

/* --- 8. The section cards inside content match each other ------------------ */
.woocommerce-account.logged-in .mh-phone-numbers,
.woocommerce-account.logged-in .mh-account-delete {
	box-shadow: none;
	background: #fbfcfd;
}

/* --- 9. Notices, softer ---------------------------------------------------- */
.woocommerce-account.logged-in .woocommerce-message,
.woocommerce-account.logged-in .woocommerce-info,
.woocommerce-account.logged-in .woocommerce-error {
	border-radius: var(--mh-radius-sm);
}

/* --- 10. Addresses page: the two address blocks as cards ------------------- */
.woocommerce-account.logged-in .woocommerce-Addresses .woocommerce-Address {
	border: 1px solid var(--mh-line);
	border-radius: var(--mh-radius-sm);
	padding: 16px 18px;
	background: #fbfcfd;
}

/* --- 11. Phones stay comfortable ------------------------------------------- */
@media (max-width: 899px) {
	.woocommerce-account.logged-in .woocommerce-MyAccount-content {
		padding: 1.3em 1.1em;
	}
}

/* ---------------------------------------------------------------------------
 * CRM customer card as a sectioned surface (owner, 2026-08-25, modelled on
 * the Google account page he sent): a section menu beside the content —
 * moved to the LEFT edge on 2026-08-26 (his call) — and every section,
 * embedded modules included, loads inside the card.
 * ------------------------------------------------------------------------- */
.mh-crm-layout {
	display: grid;
	grid-template-columns: 250px minmax(0, 1fr);
	gap: 26px;
	align-items: start;
}

.mh-crm-main {
	min-width: 0;
}

.mh-crm-menu {
	position: sticky;
	top: 24px;
	order: -1; /* DOM keeps content first; the menu renders at the left edge */
	border: 1px solid var(--mh-line);
	border-radius: var(--mh-radius);
	background: var(--mh-surface);
	padding: 8px;
}

.mh-crm-menu ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.mh-crm-menu li {
	margin: 2px 0;
}

.mh-crm-menu a {
	display: block;
	padding: 10px 13px;
	border-radius: var(--mh-radius-sm);
	color: var(--mh-ink);
	font-weight: 500;
	font-size: 0.93rem;
	text-decoration: none;
	border-left: 3px solid transparent;
	transition: background-color 0.15s ease, color 0.15s ease, border-color 0.15s ease;
}

.mh-crm-menu a:hover {
	background: var(--mh-accent-bg);
	color: var(--mh-blue);
}

.mh-crm-menu li.is-active a {
	background: var(--mh-accent-bg);
	color: var(--mh-blue-dark);
	font-weight: 600;
	border-left-color: var(--mh-blue);
}

/* Embedded modules (stats / documents / held goods) live INSIDE the card:
   their own page chrome — wrapper padding, the «← …» back link — retires. */
.mh-crm-embed > .mh-staff {
	padding: 0;
	border: 0;
	box-shadow: none;
	background: transparent;
}

.mh-crm-embed > .mh-staff > p:first-child {
	display: none;
}

@media (max-width: 1100px) {
	.mh-crm-layout {
		grid-template-columns: 1fr;
	}

	.mh-crm-menu {
		position: static;
		order: -1;
		display: block;
	}

	.mh-crm-menu ul {
		display: flex;
		flex-wrap: wrap;
		gap: 4px;
	}

	.mh-crm-menu a {
		border-left: 0;
		border-bottom: 3px solid transparent;
	}

	.mh-crm-menu li.is-active a {
		border-left: 0;
		border-bottom-color: var(--mh-blue);
	}
}

/* The embedded stats/docs/held views repeat the customer name the card
   header already shows — the duplicate heading retires. */
.mh-crm-embed > .mh-staff > h3:first-of-type {
	display: none;
}

/* --------------------------------------------------------------------------
   «Sənəd pasportu» — the staff document page (owner-approved concept,
   2026-08-27): passport header, two signature cards + integrity shield,
   everything else in folds. Requisites live in the LAST fold, off the page.
   -------------------------------------------------------------------------- */
.mh-pass {
	background: #fff;
	border: 1px solid #e3e8e6;
	border-radius: 12px;
	box-shadow: 0 1px 3px rgba(28, 36, 34, .06);
	padding: 18px 20px 14px;
	margin: 0 0 14px;
}

.mh-pass__title {
	margin: 0 0 6px;
}

.mh-pass__meta {
	display: flex;
	flex-wrap: wrap;
	gap: 4px 24px;
	margin: 0 0 10px;
	color: #5d6b67;
	font-size: .93em;
}

.mh-pass__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	align-items: center;
	margin: 0;
}

.mh-pass__actions .mh-staff-inline-form {
	/* scr 36: the generic inline-form box (canvas + border + padding) wrapped
	   the send buttons in a white card and dropped them off the line —
	   display:contents dissolves the form so its button is a flex item like
	   every other action. */
	display: contents;
}

.mh-sigstrip {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 12px;
	margin: 0 0 14px;
}

.mh-sig-card {
	background: #fff;
	border: 1px solid #e3e8e6;
	border-top: 3px solid var(--mh-blue, #146e64);
	border-radius: 12px;
	box-shadow: 0 1px 3px rgba(28, 36, 34, .06);
	padding: 14px 16px;
	min-width: 0;
}

.mh-sig-card__role {
	font-size: .78em;
	letter-spacing: .06em;
	text-transform: uppercase;
	color: #5d6b67;
}

.mh-sig-card__who {
	font-weight: 700;
	margin: 3px 0 1px;
	overflow-wrap: anywhere;
}

.mh-sig-card__how {
	font-size: .9em;
	color: #5d6b67;
	overflow-wrap: anywhere;
}

.mh-sig-card__stamp {
	display: inline-block;
	margin-top: 8px;
	padding: 3px 10px;
	border-radius: 6px;
	background: #dcfce7;
	color: #14663c;
	font-size: .85em;
	font-weight: 600;
}

.mh-sig-card__stamp--wait {
	background: #fdf3dd;
	color: #8a6210;
}

.mh-sigstrip__shield {
	grid-column: 1 / -1;
	border-radius: 10px;
	padding: 9px 14px;
	font-size: .92em;
}

.mh-sigstrip__shield--ok {
	background: #dcfce7;
	color: #14663c;
}

.mh-sigstrip__shield--bad {
	background: #fee2e2;
	color: #991b1b;
}

.mh-sigstrip__shield code {
	font-size: .84em;
	word-break: break-all;
	background: none;
	opacity: .8;
}

.mh-fold {
	background: #fff;
	border: 1px solid #e3e8e6;
	border-radius: 12px;
	box-shadow: 0 1px 3px rgba(28, 36, 34, .06);
	margin: 0 0 10px;
	overflow: hidden;
}

.mh-fold > summary {
	cursor: pointer;
	padding: 12px 16px;
	font-weight: 600;
	list-style: none;
	display: flex;
	align-items: center;
	gap: 10px;
}

.mh-fold > summary::-webkit-details-marker {
	display: none;
}

.mh-fold > summary::after {
	content: "▾";
	color: #5d6b67;
	/* scr 37: auto here AND on the chip split the free space between them —
	   every chip landed at a different x. The chip alone takes the auto
	   margin; the arrow keeps a fixed gap, so the chips align in one column. */
	margin-left: 10px;
}

.mh-fold[open] > summary::after {
	content: "▴";
}

.mh-fold__chip {
	background: #eef1f0;
	color: #5d6b67;
	border-radius: 999px;
	padding: 1px 10px;
	font-size: .8em;
	font-weight: 600;
	margin-left: auto;
}

.mh-fold__body {
	padding: 0 16px 14px;
}

@media ( max-width: 640px ) {
	.mh-sigstrip {
		grid-template-columns: 1fr;
	}
}

/* Customer «Sənədlərim» — the same passport language: one card per
   document instead of a bare table. */

/* Inside the passport folds the tables are short — the 78vh scroll box and
   its sticky header (Round 13) are for the tall registries. Sticky inside a
   <details> misprints in Chromium: the opaque header paints one row lower
   and covers the first data row, so the fold's tables opt out entirely. */
.mh-fold .mh-scroll {
	max-height: none;
}

.mh-fold .mh-staff-table thead tr:first-child th {
	position: static;
	box-shadow: none;
}

/* scr 30 (owner 2026-08-27): on phones the sticky in-box table header
   collides with tall wrapped product cells — the Endirim card painted its
   header over the first row. Phones drop the 78vh cap and the sticky
   headers entirely: the page scrolls, headers scroll with their tables.
   Owner 2026-10-04 (scr 29): the same picture on a phone held sideways
   (~752 px). Up to 768 px every .mh-staff-table is display:block with
   overflow-x:auto (the ≤768 rule near the top), so the table IS the sticky
   header's scrollport — one that never scrolls vertically — and once
   StaffCabinet's sticky script lifts the cage, top:var(--mh-sticky-top)
   pushes the header 61 px down into its own first row. The frozen header
   cannot work below 769 px, so the cap and the sticky go up to 768 px;
   wider screens (desktop, large phones sideways) keep them. */
@media ( max-width: 768px ) {
	.mh-scroll {
		max-height: none;
	}

	.mh-staff-table thead tr:first-child th,
	.mh-staff-table thead tr.mh-filter-row th {
		position: static;
		box-shadow: none;
	}
}

@media ( max-width: 640px ) {
	.mh-staff-table--dense td:first-child {
		overflow-wrap: anywhere;
		min-width: 8em;
	}

	.mh-staff-table--dense input[type="number"] {
		width: 5em;
	}
}

/* The discount editor: rows middle-align around their inputs and the
   whole-order row separates visibly from the per-item rows. */
.mh-staff-table--dense td {
	vertical-align: middle;
}

.mh-disc-order-row td {
	border-top: 2px solid #cbd5e1;
}

/* --------------------------------------------------------------------------
   «Hərəkətlər» — the movements register replacing the Sifarişlər list
   (owner-approved concept, 2026-08-27). Type badges by movement family,
   status pills, the search/reset top bar, and the phone card view with its
   bottom filter sheet.
   -------------------------------------------------------------------------- */
.mh-mv-top {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	align-items: center;
	margin: 0 0 12px;
}

.mh-mv-top input[type="search"] {
	flex: 1;
	min-width: 230px;
	padding: 8px 12px;
	border: 1px solid #cbd5e1;
	border-radius: 8px;
}

.mh-t {
	display: inline-block;
	border-radius: 6px;
	padding: 2px 9px;
	font-size: 0.85em;
	font-weight: 700;
	white-space: nowrap;
}

.mh-t--onl   { background: #e3edfb; color: #1d5fbf; }
.mh-t--nagd  { background: #dff2f7; color: #0f7490; }
.mh-t--pos   { background: #e9e9fb; color: #5b5bd6; }
.mh-t--qaime { background: #eaeef3; color: #64748b; }
.mh-t--mhand { background: #e2f2ea; color: #146e64; }
.mh-t--ahand { background: #e8f3e2; color: #3f7d2c; }
.mh-t--aret  { background: #fbeedb; color: #b06a10; }
.mh-t--mret  { background: #f1e6f8; color: #8a4baf; }
.mh-t--sret  { background: #fbe3e3; color: #b03636; }

.mh-mv-s {
	display: inline-block;
	border-radius: 999px;
	padding: 2px 10px;
	font-size: 0.85em;
	font-weight: 600;
	white-space: nowrap;
}

.mh-mv-s--ok   { background: #dcfce7; color: #14663c; }
.mh-mv-s--wait { background: #fdf3dd; color: #8a6210; }
.mh-mv-s--dead { color: #b03636; border: 1px solid currentColor; }

.mh-mv-akt {
	display: inline-block;
	background: #fdf3dd;
	color: #8a6210;
	border-radius: 6px;
	padding: 1px 8px;
	font-size: 0.8em;
	font-weight: 700;
}

/* The phone filter sheet exists only where the column filters do not. */
.mh-mv-msheet {
	display: none;
}

@media ( max-width: 640px ) {
	.mh-mv-msheet {
		display: block;
		background: #fff;
		border: 1px solid #e3e8e6;
		border-radius: 12px;
		margin: 0 0 10px;
		padding: 0;
	}

	.mh-mv-msheet > summary {
		cursor: pointer;
		padding: 11px 15px;
		font-weight: 600;
		list-style: none;
	}

	.mh-mv-msheet > summary::-webkit-details-marker {
		display: none;
	}

	/* Vertically scrollable, per the owner's note — all filters reachable. */
	.mh-mv-msheet form {
		padding: 0 15px 13px;
		max-height: 60vh;
		overflow-y: auto;
	}

	.mh-mv-msheet label {
		display: block;
		font-size: 0.85em;
		color: #5d6b67;
		margin: 0 0 9px;
	}

	.mh-mv-msheet select,
	.mh-mv-msheet input[type="text"] {
		display: block;
		width: 100%;
		margin-top: 3px;
		padding: 8px 10px;
		border: 1px solid #cbd5e1;
		border-radius: 8px;
	}

	/* Cards instead of the table: the head (labels + filter row) hides, each
	   row becomes a flex card, the cells take their concept positions. */
	.mh-mv .mh-staff-table thead {
		display: none;
	}

	.mh-mv .mh-staff-table,
	.mh-mv .mh-staff-table tbody {
		display: block;
	}

	.mh-mv .mh-staff-table tbody tr {
		display: flex;
		flex-wrap: wrap;
		gap: 3px 10px;
		align-items: center;
		border: 1px solid #e3e8e6;
		border-radius: 12px;
		padding: 10px 12px;
		margin: 0 0 8px;
		background: #fff;
	}

	.mh-mv .mh-staff-table tbody td {
		display: inline-block;
		border: 0;
		padding: 0;
	}

	/* tarix · nov on the first line, № full-width, customer muted,
	   amount + status close the card. */
	.mh-mv .mh-staff-table tbody td:nth-child(1) { order: 2; margin-left: auto; color: #5d6b67; font-size: 0.85em; }
	.mh-mv .mh-staff-table tbody td:nth-child(2) { order: 1; }
	.mh-mv .mh-staff-table tbody td:nth-child(3) { order: 3; flex: 1 1 100%; font-weight: 700; }
	.mh-mv .mh-staff-table tbody td:nth-child(4) { order: 4; flex: 1 1 100%; color: #5d6b67; }
	.mh-mv .mh-staff-table tbody td:nth-child(5) { order: 5; font-weight: 700; font-variant-numeric: tabular-nums; }
	.mh-mv .mh-staff-table tbody td:nth-child(6) { order: 6; margin-left: auto; }
	.mh-mv .mh-staff-table tbody td:nth-child(7) { order: 7; }
	.mh-mv .mh-staff-table tbody td:nth-child(8) { order: 8; flex: 1 1 100%; color: #5d6b67; font-size: 0.85em; overflow-wrap: anywhere; }

	.mh-mv .mh-scroll {
		overflow: visible;
	}
}

/* --------------------------------------------------------------------------
   Owner audit 2026-08-27, round 4.
   -------------------------------------------------------------------------- */

/* scr 36 — the UNIVERSAL back button: every detail page returns to its
   register through this one control (proposed on the sənəd pasportu first;
   rolls out to the other detail pages on the owner's confirmation). */
.mh-back {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 7px 16px;
	border: 1px solid #cbd5e1;
	border-radius: 999px;
	background: #fff;
	color: #1c2422;
	font-weight: 600;
	font-size: 0.9em;
	text-decoration: none;
	margin: 0 0 12px;
}

.mh-back:hover,
.mh-back:focus {
	border-color: var(--mh-blue, #146e64);
	color: var(--mh-blue, #146e64);
	background: #f3f7fb;
	text-decoration: none;
}

/* scr 35 — in the card view the row IS one link: highlight the CARD, never
   stripe the individual cells. Overrides the table hover/status paints. */
@media ( max-width: 640px ) {
	.mh-mv .mh-staff-table tbody tr[data-mh-href]:hover td,
	.mh-mv .mh-staff-table tbody tr:hover > td,
	.mh-mv .mh-staff-table tbody tr.mh-row-overdue td {
		background: transparent !important;
		box-shadow: none !important;
	}

	.mh-mv .mh-staff-table tbody tr[data-mh-href]:hover,
	.mh-mv .mh-staff-table tbody tr[data-mh-href]:active {
		background: #dbeafe;
		border-color: #93c5fd;
	}

	.mh-mv .mh-staff-table tbody tr.mh-row-overdue {
		background: #fdecec;
		border-color: #f3c1c1;
	}
}

/* --------------------------------------------------------------------------
   «Sənəd arxivi» (owner-approved concept, 2026-08-27): download-only rows,
   scan-upload fold, and the phone card view.
   -------------------------------------------------------------------------- */
.mh-arx-dl {
	padding: 3px 11px !important;
	font-size: 0.82em !important;
	line-height: 1.5 !important;
}

.mh-arx-dls {
	display: inline-flex;
	gap: 6px;
	white-space: nowrap;
}

.mh-arx-up {
	background: #fff;
	border: 1px solid #e3e8e6;
	border-radius: 12px;
	box-shadow: 0 1px 3px rgba(28, 36, 34, .06);
	margin: 0 0 12px;
	overflow: hidden;
}

.mh-arx-up > summary {
	cursor: pointer;
	padding: 11px 16px;
	font-weight: 600;
	list-style: none;
}

.mh-arx-up > summary::-webkit-details-marker {
	display: none;
}

.mh-arx-up form {
	padding: 2px 16px 14px;
	display: grid;
	grid-template-columns: repeat( auto-fit, minmax( 230px, 1fr ) );
	gap: 10px 14px;
	align-items: end;
}

.mh-arx-up label {
	display: block;
	font-size: 0.85em;
	font-weight: 600;
	color: #5d6b67;
}

.mh-arx-up select,
.mh-arx-up input[type="text"],
.mh-arx-up input[type="date"],
.mh-arx-up input[type="file"] {
	display: block;
	width: 100%;
	box-sizing: border-box;
	height: 38px;
	margin-top: 4px;
	padding: 0 10px;
	border: 1px solid #cbd5e1;
	border-radius: 8px;
	font-weight: 400;
	background: #fff;
}

.mh-arx-up input[type="file"] {
	padding-top: 6px;
}

.mh-arx-up p {
	grid-column: 1 / -1;
	margin: 2px 0 0;
}

/* The scan «badge» color family (mh-t--scan) joins the register's set. */
.mh-t--scan { background: #fbeedb; color: #b06a10; }
.mh-t--act  { background: #e2f2ea; color: #146e64; }
.mh-t--inv  { background: #e3edfb; color: #1d5fbf; }
.mh-t--ret  { background: #f1e6f8; color: #8a4baf; }
.mh-t--ann  { background: #eaeef3; color: #64748b; }

@media ( max-width: 640px ) {
	/* Archive cards mirror the register's card view. */
	.mh-arx .mh-staff-table thead { display: none; }
	.mh-arx .mh-staff-table,
	.mh-arx .mh-staff-table tbody { display: block; }

	.mh-arx .mh-staff-table tbody tr {
		display: flex;
		flex-wrap: wrap;
		gap: 3px 10px;
		align-items: center;
		border: 1px solid #e3e8e6;
		border-radius: 12px;
		padding: 10px 12px;
		margin: 0 0 8px;
		background: #fff;
	}

	.mh-arx .mh-staff-table tbody td {
		display: inline-block;
		border: 0;
		padding: 0;
	}

	.mh-arx .mh-staff-table tbody td:nth-child(1) { order: 2; margin-left: auto; color: #5d6b67; font-size: 0.85em; }
	.mh-arx .mh-staff-table tbody td:nth-child(2) { order: 1; }
	.mh-arx .mh-staff-table tbody td:nth-child(3) { order: 3; flex: 1 1 100%; font-weight: 700; }
	.mh-arx .mh-staff-table tbody td:nth-child(4) { order: 4; flex: 1 1 100%; color: #5d6b67; }
	.mh-arx .mh-staff-table tbody td:nth-child(5) { order: 5; color: #5d6b67; font-size: 0.85em; }
	.mh-arx .mh-staff-table tbody td:nth-child(6) { order: 6; }
	.mh-arx .mh-staff-table tbody td:nth-child(7) { order: 7; color: #5d6b67; font-size: 0.85em; }
	.mh-arx .mh-staff-table tbody td:nth-child(8) { order: 8; margin-left: auto; }

	.mh-arx .mh-staff-table tbody tr.mh-row-overdue td { background: transparent !important; }
	.mh-arx .mh-staff-table tbody tr.mh-row-overdue { background: #fdecec; border-color: #f3c1c1; }

	.mh-arx .mh-scroll { overflow: visible; }
}

/* Template editor (Şablonlar — online-signing sources). */
.mh-tpl-edit label {
	display: block;
	font-size: 0.85em;
	font-weight: 600;
	color: #5d6b67;
	margin: 0 0 10px;
}

.mh-tpl-edit textarea {
	display: block;
	width: 100%;
	box-sizing: border-box;
	margin-top: 4px;
	padding: 8px 10px;
	border: 1px solid #cbd5e1;
	border-radius: 8px;
	font-weight: 400;
}

/* The template editor/history card: staff surface, not the shop card (the
   shop .mh-card lifts on hover and clips padding — wrong here). */
.mh-tpl-card {
	background: #fff;
	border: 1px solid #e3e8e6;
	border-radius: 12px;
	box-shadow: 0 1px 3px rgba(28, 36, 34, .06);
	padding: 16px 18px;
	margin: 12px 0;
}

.mh-tpl-edit {
	display: block;
	columns: 1;
}

.mh-tpl-edit label {
	display: block !important;
	width: 100%;
	column-span: all;
}

/* The back pill is a button, not prose — no underline anywhere it renders
   (Storefront's content-link underline outranked the base rule on the
   customer pages, owner 2026-08-27). */
a.mh-back,
a.mh-back:hover,
a.mh-back:focus,
a.mh-back:visited {
	text-decoration: none !important;
}

/* ---- Owner 2026-08-30: drawer chevrons, the tablet screenshot. ------------
   Two defects, one row: (1) Storefront paints its own Font-Awesome chevron on
   the anchor/button ::after next to our ▾ toggle — two arrows per row (the
   pseudo kill list lives in nav.js cabCss AND here, same belt-and-suspenders
   as Round 24e); (2) the ▾ toggle is 56px wide but the anchor reserved only
   52px, so every toggle overflowed its row, float-dropped one line and the
   stack drifted left — İdarəetmə's arrow rendered beside Redaktor, the last
   one on a phantom empty row. Flex makes the row own its toggle: label left,
   ONE ▾ right, sub-menu wrapping to full width; no pixel arithmetic left to
   go stale. */
.handheld-navigation li > a::after,
.handheld-navigation li > a::before,
.handheld-navigation .mh-submenu-toggle::after,
.handheld-navigation .mh-submenu-toggle::before {
	display: none !important;
	content: none !important;
}

/* The open-drawer rules (`.main-navigation.toggled … > li { display:block;
   width:100% }`, plus the body.mh-compact-head twin) outrank the bare
   selector — the row must stay flex WHILE THE DRAWER IS OPEN, which is the
   only time anyone sees it. */
.handheld-navigation li.menu-item-has-children,
.site-header .main-navigation.toggled .handheld-navigation ul.menu > li.menu-item-has-children,
body.mh-compact-head .site-header .main-navigation.toggled .handheld-navigation ul.menu > li.menu-item-has-children {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}

.handheld-navigation li.menu-item-has-children > a,
.site-header .main-navigation.toggled .handheld-navigation ul.menu > li.menu-item-has-children > a,
body.mh-compact-head .site-header .main-navigation.toggled .handheld-navigation ul.menu > li.menu-item-has-children > a {
	flex: 1 1 0;
	width: auto;
	min-width: 0;
}

.handheld-navigation li.menu-item-has-children > .mh-submenu-toggle {
	float: none;
	flex: 0 0 56px;
}

.handheld-navigation li.menu-item-has-children > ul.sub-menu {
	flex-basis: 100%;
}

/* ---- Owner 2026-08-30 (B3/B4): Sifarişin rəsmiləşdirilməsi + Seriya №. ---- */
/* The recap table carries money columns and a header row now. */
.mh-no-review__table thead th {
	text-align: left;
	font-size: 12px;
	color: #64748b;
	font-weight: 600;
	padding: 4px 10px;
	border-bottom: 1px solid var(--mh-line, #e2e8f0);
}

.mh-no-review__table thead th.mh-no-num {
	text-align: right;
}

.mh-no-costs {
	margin: 14px 0 6px;
	padding: 10px 14px;
	background: #f8fafc;
	border: 1px solid var(--mh-line, #e2e8f0);
	border-radius: 10px;
	max-width: 560px;
}

.mh-no-costs__row {
	margin: 6px 0;
}

.mh-no-costs__grand {
	border-top: 1px solid var(--mh-line, #e2e8f0);
	padding-top: 8px;
	font-size: 15px;
}

/* A table with no serial content drops the Seriya № column (B3): the column
   only means something for Altis Medical goods. */
#mh-no-lines.mh-sn-off thead th:nth-child(6),
#mh-no-lines.mh-sn-off td.mh-no-sn,
#mh-no-holdings-table.mh-sn-off thead th:nth-child(4),
#mh-no-holdings-table.mh-sn-off td:nth-child(4) {
	display: none;
}

/* Storefront positions sub-menus for the DESKTOP hover dropdown (absolute,
   height 0, invisible) from 768px up — and the drawer lives ABOVE 768 on this
   site (our breakpoint is 66.5em), so an open accordion section rendered
   exactly nowhere. Inside the open drawer the sub-menu is a normal block. */
.site-header .main-navigation.toggled .handheld-navigation li.menu-item-has-children.mh-open > ul.sub-menu {
	position: static !important;
	visibility: visible !important;
	opacity: 1 !important;
	height: auto !important;
	/* Storefront's slide animation clamps .sub-menu to max-height: 0 — with
	   its own toggle removed nothing ever raised it, so an OPEN section's
	   items painted at zero height and spilled transparently over the page
	   (owner's phone screenshot, 2026-08-30). */
	max-height: none !important;
	width: 100% !important;
	flex-basis: 100%;
	box-shadow: none !important;
	/* The open section reads as an inset block, not more top-level rows. */
	margin: 2px 0 10px;
	padding: 4px 0 6px 0.9em;
	background: #f6f8fa !important;
	border-radius: 10px;
	border-left: 3px solid var(--mh-line, #dbe4ec);
}

.site-header .main-navigation.toggled .handheld-navigation li.menu-item-has-children.mh-open > ul.sub-menu li,
.site-header .main-navigation.toggled .handheld-navigation li.menu-item-has-children.mh-open > ul.sub-menu li a {
	visibility: visible !important;
	opacity: 1 !important;
	position: static !important;
	width: 100%;
	display: block;
	max-height: none !important;
}

/* The sheet CONTAINS its sections: taller than the viewport it scrolls
   itself instead of running under the footer bar. */
.site-header .main-navigation.toggled .handheld-navigation ul.menu {
	max-height: calc(100vh - 150px);
	max-height: calc(100dvh - 150px);
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
}

/* ---- Owner 2026-08-30 (visual sweep): the six step labels collided on a
   phone. Mobile stepper = dots + the CURRENT step's label only; done/future
   steps speak through their dot colours. ---- */
@media (max-width: 640px) {
	.mh-no-steps li {
		font-size: 0;
		padding-top: 24px;
		min-width: 20px;
	}

	.mh-no-steps li.on {
		font-size: 12px;
		flex: 2.6;
		line-height: 1.25;
	}
}

/* ===========================================================================
   MOBILE MENU — one side sheet for the front end and the cabinet
   (owner design sign-off 2026-08-30; all three mock-ups approved)

   Replaces the full-width panel that dropped under the header and covered
   the screen. The sheet slides in from the right over a dimmed page, its
   list scrolls inside it, and its bottom is the account zone — the only
   place notifications and logout were reachable on a phone.
   =========================================================================== */
@media (max-width: 66.4989em) {

	/* --- the sheet ------------------------------------------------------ */
	/* Storefront animates its drawer by writing an INLINE height onto
	   .handheld-navigation, which froze the sheet at the height of its own
	   header row (60px, everything else clipped) — hence the !important
	   geometry. The header is a z-index:1000 sticky stacking context, so the
	   sheet's z-index is scoped INSIDE it and the body-level backdrop painted
	   over the whole thing; body.mh-drawer-open lifts the header instead. */
	.site-header .main-navigation.toggled .handheld-navigation {
		position: fixed !important;
		top: 0 !important;
		right: 0 !important;
		bottom: 0 !important;
		left: auto !important;
		height: auto !important;
		max-height: none !important;
		min-height: 0 !important;
		overflow: hidden !important;
		width: min(82%, 360px);
		max-width: 360px;
		padding: 0 !important;
		background: #fff;
		border-radius: 18px 0 0 18px;
		box-shadow: -12px 0 34px rgba(10, 26, 38, 0.28);
		z-index: 2;
		display: flex !important;
		flex-direction: column;
		overscroll-behavior: contain;
		animation: mhSheetIn 0.18s ease-out;
	}

	body.mh-drawer-open .site-header {
		z-index: 99996;
	}

	@keyframes mhSheetIn {
		from { transform: translateX(14px); opacity: 0.4; }
		to   { transform: none; opacity: 1; }
	}

	.site-header .main-navigation.toggled .handheld-navigation ul.menu {
		flex: 1 1 auto;
		min-height: 0;
		overflow-y: auto;
		-webkit-overflow-scrolling: touch;
		position: static !important;
		max-height: none;
		box-shadow: none !important;
		border-top: 0 !important;
	}

	/* --- sheet header --------------------------------------------------- */
	.mh-drawer-head {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 10px;
		padding: 12px 12px 10px 16px;
		border-bottom: 1px solid #eef2f6;
		flex: 0 0 auto;
	}

	.mh-drawer-brand img,
	.mh-drawer-brand svg {
		max-height: 26px;
		width: auto;
		display: block;
	}

	.mh-drawer-x {
		width: 32px;
		height: 32px;
		border: 0;
		border-radius: 50%;
		background: #f1f5f9;
		color: #475569;
		font-size: 14px;
		line-height: 1;
		cursor: pointer;
	}

	/* --- account zone --------------------------------------------------- */
	.mh-drawer-foot {
		flex: 0 0 auto;
		border-top: 1px solid #eef2f6;
		background: #fbfcfd;
		padding: 8px 10px calc(10px + env(safe-area-inset-bottom, 0px));
		border-radius: 0 0 0 18px;
	}

	.mh-drawer-me {
		display: flex;
		align-items: center;
		gap: 10px;
		padding: 8px 6px;
		text-decoration: none;
		color: inherit;
	}

	.mh-drawer-av {
		width: 34px;
		height: 34px;
		border-radius: 50%;
		background: linear-gradient(135deg, #1789d6, #38bdf8);
		color: #fff;
		font-weight: 700;
		display: flex;
		align-items: center;
		justify-content: center;
		flex: 0 0 auto;
	}

	.mh-drawer-id {
		display: flex;
		flex-direction: column;
		min-width: 0;
	}

	.mh-drawer-nm {
		font-weight: 700;
		font-size: 14px;
	}

	.mh-drawer-rl {
		font-size: 11.5px;
		color: #64748b;
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}

	.mh-drawer-notif,
	.mh-drawer-out,
	.mh-drawer-login {
		display: flex;
		align-items: center;
		gap: 8px;
		width: 100%;
		padding: 11px 8px;
		border: 0;
		border-radius: 10px;
		background: none;
		font-size: 14.5px;
		font-family: inherit;
		text-align: left;
		text-decoration: none;
		color: #0f172a;
		cursor: pointer;
	}

	.mh-drawer-notif.is-lit {
		color: #0f766e;
		font-weight: 700;
		background: #f0fdfa;
	}

	.mh-drawer-out {
		color: #b91c1c;
	}

	.mh-drawer-login {
		justify-content: center;
		background: var(--mh-blue, #1789d6);
		color: #fff;
		font-weight: 700;
	}

	/* --- backdrop + page lock ------------------------------------------- */
	.mh-drawer-dim {
		position: fixed;
		inset: 0;
		background: rgba(15, 23, 42, 0.42);
		z-index: 99995;
		opacity: 0;
		pointer-events: none;
		transition: opacity 0.18s ease;
	}

	/* The MENU's own class (owner 2026-10-04, scr 20-27.e): mh-drawer-open is
	   shared with other sheets; the filter sheet keeps this dim through its
	   own class at the end of this file. */
	body.mh-menu-open .mh-drawer-dim {
		opacity: 1;
		pointer-events: auto;
	}

	body.mh-drawer-open {
		overflow: hidden;
	}

	/* --- notifications as a bottom sheet (footer-bar bell) --------------- */
	.mh-bell__menu {
		position: fixed !important;
		left: 0 !important;
		right: 0 !important;
		top: auto !important;
		bottom: calc(68px + env(safe-area-inset-bottom, 0px)) !important;
		width: auto !important;
		max-width: none !important;
		max-height: 62vh;
		overflow-y: auto;
		border-radius: 18px 18px 0 0 !important;
		box-shadow: 0 -12px 34px rgba(10, 26, 38, 0.25) !important;
		padding: 14px 12px 10px !important;
		z-index: 99997;
	}

	.mh-bell__menu::before {
		content: "";
		display: block;
		width: 40px;
		height: 4px;
		border-radius: 2px;
		background: #d7dfe6;
		margin: -6px auto 10px;
	}

	/* --- the bell in the handheld footer bar ---------------------------- */
	.storefront-handheld-footer-bar ul li.mh-notify > a {
		position: relative;
	}

	.mh-hfb-badge {
		position: absolute;
		top: 6px;
		left: calc(50% + 4px);
		min-width: 17px;
		height: 17px;
		line-height: 17px;
		padding: 0 4px;
		border-radius: 9px;
		background: #dc2626;
		color: #fff;
		font-size: 10px;
		font-weight: 700;
		text-align: center;
	}

/* The sheet is MOVED to <body> while open (nav.js), so every rule scoped
   under .site-header stopped matching the moment it opened — the list lost
   its flex/scroll and open sections lost their visibility override. These
   mirror them at body scope, which is where the sheet actually lives.
   Keyed on the menu's own body.mh-menu-open since owner 2026-10-04
   (scr 20-27.e); nav.js sets it together with mh-drawer-open. */
	body.mh-menu-open > .handheld-navigation ul.menu {
		display: block !important;
		flex: 1 1 auto;
		min-height: 0;
		overflow-y: auto;
		-webkit-overflow-scrolling: touch;
		position: static !important;
		margin: 0;
		padding: 6px 0;
		max-height: none;
		background: transparent;
		box-shadow: none !important;
		border-top: 0 !important;
	}

	body.mh-menu-open > .handheld-navigation ul.menu > li {
		display: block;
		float: none;
		width: 100%;
	}

	body.mh-menu-open > .handheld-navigation ul.menu > li.menu-item-has-children {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
	}

	body.mh-menu-open > .handheld-navigation ul.menu > li > a {
		display: block;
		padding: 11px 16px;
		font-size: 16px;
		flex: 1 1 0;
		width: auto;
		min-width: 0;
	}

	body.mh-menu-open > .handheld-navigation li.menu-item-has-children > .mh-submenu-toggle {
		float: none;
		flex: 0 0 56px;
	}

	/* An open section: visible, inset, full-width under its own row. */
	body.mh-menu-open > .handheld-navigation li.menu-item-has-children.mh-open > ul.sub-menu {
		display: block !important;
		position: static !important;
		visibility: visible !important;
		opacity: 1 !important;
		height: auto !important;
		max-height: none !important;
		width: 100% !important;
		flex-basis: 100%;
		margin: 2px 0 10px;
		padding: 4px 0 6px 0.9em;
		background: #f6f8fa !important;
		border-radius: 10px;
		border-left: 3px solid var(--mh-line, #dbe4ec);
		box-shadow: none !important;
	}

	body.mh-menu-open > .handheld-navigation li.mh-open > ul.sub-menu li,
	body.mh-menu-open > .handheld-navigation li.mh-open > ul.sub-menu li a {
		display: block;
		position: static !important;
		visibility: visible !important;
		opacity: 1 !important;
		width: 100%;
		max-height: none !important;
	}

	body.mh-menu-open > .handheld-navigation li.mh-open > ul.sub-menu li a {
		padding: 9px 14px;
		font-size: 14px;
		border-left: 0;
	}

/* ---- Owner 2026-08-30 (scr 42/43): header button position + the ✕ ---------
   The «Menyu» button sat left-of-centre with empty space to its right. Cause:
   while CLOSED the .handheld-navigation is not hidden — it is a 167px-wide,
   zero-height block still occupying a slot in the header's flex row, so the
   nav wrapper measured 266px against ~206px of space, overflowed to the
   right and dragged the button inwards. Out of flow when closed, and the
   button ends at the content edge where it belongs. */
	.site-header .main-navigation:not(.toggled) .handheld-navigation {
		position: absolute !important;
		width: 0 !important;
		height: 0 !important;
		padding: 0 !important;
		overflow: hidden !important;
	}

	.site-header .storefront-primary-navigation,
	.site-header .storefront-primary-navigation > .col-full,
	.site-header .main-navigation {
		min-width: 0;
		flex: 0 0 auto;
	}

	.site-header button.menu-toggle {
		margin-left: auto !important;
	}

	/* The ✕ was an ellipse: Storefront's button padding (≈9px × 20px) stretched
	   it inside a border-radius:50% box. Fixed size, no padding — a small
	   circle, as approved. */
	.mh-drawer-x {
		width: 30px !important;
		height: 30px !important;
		min-width: 0 !important;
		padding: 0 !important;
		flex: 0 0 auto;
		line-height: 1 !important;
		font-size: 13px !important;
		border-radius: 50% !important;
		background: #eef2f6 !important;
		color: #64748b !important;
	}
}

/* ===========================================================================
   ANBAR SƏHİFƏLƏRİ — the approved system (owner sign-off 2026-08-30)
   Mədaxil = card overview (Variant B); the four table pages share one
   treatment: KPI strip, card rows on mobile, selection bar, sticky header.
   =========================================================================== */

/* --- Mədaxil hub cards --------------------------------------------------- */
.mh-proc__lead {
	color: var(--mh-muted, #64748b);
	font-size: 14px;
	line-height: 1.55;
	margin: 0 0 14px;
	max-width: 760px;
}

/* The generic hub card leads with a 96px image banner. A funnel stage has
   no image — only a glyph — so here the media block becomes a small square
   badge and the card reads as one compact row. */
.mh-proc__grid a.mh-cabhub__card {
	flex-direction: row;
	align-items: flex-start;
	gap: 12px;
	padding: 14px;
}

.entry-content .mh-proc__grid a.mh-cabhub__card,
.entry-content .mh-proc__grid a.mh-cabhub__card * {
	text-decoration: none;
}

.mh-proc__grid .mh-proc__ic {
	flex: 0 0 42px;
	width: 42px;
	height: 42px;
	border-radius: 11px;
	font-size: 20px;
	line-height: 1;
	background: #eaf3fb;
}

.mh-proc__grid .mh-cabhub__body {
	padding: 0;
	gap: 3px;
}

.mh-proc__grid .mh-cabhub__kicker {
	font-size: 0.66rem;
	color: var(--mh-muted, #64748b);
}

.mh-proc__grid .mh-cabhub__name {
	font-size: 1rem;
	line-height: 1.3;
}

.mh-proc__grid .mh-cabhub__lead {
	font-size: 0.82rem;
	line-height: 1.45;
}

.mh-proc__count {
	align-self: flex-start;
	margin-top: 7px;
	padding: 3px 9px;
	border-radius: 999px;
	background: #eaf3fb;
	font-size: 12px;
	font-weight: 700;
	color: var(--mh-blue-dark, #0b5cab);
}

.mh-proc__count.is-empty {
	background: #f1f5f9;
	color: #94a3b8;
	font-weight: 600;
}

.mh-cabhub__card.is-hot {
	border-color: #fcd34d;
	background: #fffbeb;
}

.mh-cabhub__card.is-hot .mh-proc__ic {
	background: #fef3c7;
}

.mh-cabhub__card.is-hot .mh-proc__count {
	background: #fde68a;
	color: #92400e;
}

/* --- stage strip (inside one stage) -------------------------------------- */
.mh-proc__strip {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	padding-bottom: 4px;
	margin: 0 0 14px;
}

/* Six stage names do not fit one phone line; there they scroll instead of
   stacking into a six-line block above every stage. */
@media (max-width: 900px) {
	.mh-proc__strip {
		flex-wrap: nowrap;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}
}

/* Storefront underlines every link inside the post body with
   `.hentry .entry-content a`, and the cabinet renders inside it. Anything
   that is a control rather than prose has to out-specify that rule. */
.entry-content .mh-proc__strip a,
.entry-content a.mh-proc__pill {
	text-decoration: none;
}

.mh-proc__pill {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 7px 12px;
	border: 1px solid var(--mh-line, #e3e9ef);
	border-radius: 999px;
	background: #fff;
	font-size: 13px;
	color: #334155;
	white-space: nowrap;
}

.mh-proc__pill.is-on {
	background: #eef6fd;
	border-color: #bfdcf3;
	color: var(--mh-blue-dark, #0b5cab);
	font-weight: 700;
}

/* --- selection bar ------------------------------------------------------- */
form.mh-selbar {
	display: none;
}

form.mh-selbar.is-on {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 8px;
	position: fixed;
	left: 50%;
	transform: translateX(-50%);
	bottom: 18px;
	z-index: 99990;
	/* Hug the content rather than claiming a fixed width: a full-width bar
	   runs under the AI assistant button in the corner. */
	width: auto;
	max-width: min(940px, calc(100% - 92px));
	background: #0f1c2a;
	color: #fff;
	border-radius: 12px;
	padding: 10px 14px;
	box-shadow: 0 10px 30px rgba(10, 26, 38, 0.32);
}

form.mh-selbar.is-on .mh-selbar__n {
	font-weight: 700;
	font-size: 13.5px;
	margin-right: 4px;
}

form.mh-selbar.is-on p {
	margin: 0;
	display: flex;
	align-items: center;
	gap: 8px;
	flex-wrap: wrap;
}

form.mh-selbar.is-on label {
	color: #cbd5e1 !important;
	font-size: 12.5px;
}

/* The bar states the count itself; the "tick the boxes on the left"
   hint has already served its purpose by the time it appears. */
form.mh-selbar.is-on span.mh-muted {
	display: none;
}

form.mh-selbar.is-on .button {
	margin: 0;
	padding: 7px 14px;
	font-size: 13.5px;
}

form.mh-selbar.is-on select,
form.mh-selbar.is-on input {
	background: #fff;
	border-radius: 7px;
	border: 0;
	padding: 4px 8px;
	font-size: 13px;
}

/* --- KPI strip ----------------------------------------------------------- */
@media (max-width: 782px) {
	.mh-kpis {
		flex-wrap: nowrap !important;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		padding-bottom: 4px;
		gap: 8px;
	}

	.mh-kpis .mh-kpi {
		flex: 0 0 auto;
		min-width: 118px;
	}

	form.mh-selbar.is-on {
		bottom: calc(74px + env(safe-area-inset-bottom, 0px));
		max-width: calc(100% - 76px);
	}

/* --- table → cards on the phone ------------------------------------------ */
	.mh-scroll .mh-staff-table--cards,
	.mh-scroll .mh-staff-table--cards tbody,
	.mh-scroll .mh-staff-table--cards tbody tr,
	.mh-scroll .mh-staff-table--cards tbody td {
		display: block;
		width: auto;
	}

	/* The heading row and the filter row are desktop furniture: the phone
	   reads labels off each cell instead, and filters live in the fold below. */
	.mh-scroll .mh-staff-table--cards thead {
		display: none;
	}

	.mh-scroll .mh-staff-table--cards tbody tr {
		border: 1px solid var(--mh-line, #e3e9ef);
		border-radius: 11px;
		padding: 10px 12px;
		margin: 0 0 9px;
		background: #fff;
		box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
	}

	.mh-scroll .mh-staff-table--cards tbody td {
		border: 0 !important;
		padding: 3px 0 !important;
		display: flex;
		align-items: baseline;
		justify-content: space-between;
		gap: 12px;
		font-size: 13px;
		text-align: right;
	}

	.mh-scroll .mh-staff-table--cards tbody td::before {
		content: attr(data-label);
		flex: 0 0 auto;
		font-size: 11px;
		font-weight: 600;
		color: var(--mh-muted, #64748b);
		text-align: left;
	}

	/* The first column is the row's name — it leads the card, full width. */
	.mh-scroll .mh-staff-table--cards tbody td.mh-cell-lead {
		display: block;
		font-size: 14.5px;
		font-weight: 700;
		text-align: left;
		margin-bottom: 3px;
		padding-top: 0 !important;
	}

	.mh-scroll .mh-staff-table--cards tbody td.mh-cell-lead::before {
		display: none;
	}

	/* An empty cell earns no line on a phone. */
	.mh-scroll .mh-staff-table--cards tbody td:empty {
		display: none;
	}

	.mh-scroll .mh-staff-table--cards tbody td.mh-check-col {
		justify-content: flex-start;
		padding-bottom: 6px !important;
	}

	.mh-scroll .mh-staff-table--cards tbody td.mh-check-col::before {
		content: "Seç";
	}

	/* Only a card-mode table stops needing its sideways scroll. */
	.mh-scroll:has(.mh-staff-table--cards) {
		overflow-x: visible;
	}
}

/* No sticky-header rule here on purpose: .mh-scroll--lift above already
   freezes both header rows at --mh-sticky-top, which accounts for the admin
   bar and the site header. A plain top:0 would park them under the header. */


/* ---------------------------------------------------------------------------
 * Footer height (owner 2026-09-01): the single legal bar still sat inside
 * Storefront's tall column-grid padding, so one line of text occupied a
 * banner's worth of empty space. Half the height: the bar's own padding
 * carries the rhythm, the parent's stays out.
 * ------------------------------------------------------------------------- */
.site-footer {
	padding-top: 20px;
	padding-bottom: 20px;
}


/* ---------------------------------------------------------------------------
 * «Bildirişlər» — customer notifications page (owner-approved artifact,
 * 2026-09-01). Severity rides the icon tile; unread rows carry the accent
 * bar and a tinted ground; the right edge names the destination.
 * ------------------------------------------------------------------------- */
.mh-ntf__head { display: flex; justify-content: flex-end; margin: 0 0 14px; }
.mh-ntf__empty { color: var(--mh-muted); }
.mh-ntf__list { border: 1px solid var(--mh-line); border-radius: 12px; overflow: hidden; background: #fff; }
.mh-ntf__day {
	font-size: 11px; letter-spacing: .08em; text-transform: uppercase;
	color: var(--mh-muted); padding: 12px 14px 4px; background: #fff;
}
.mh-ntf__row {
	display: flex; gap: 12px; padding: 12px 14px; position: relative;
	border-bottom: 1px solid var(--mh-line); color: inherit; text-decoration: none;
}
.mh-ntf__row:last-child { border-bottom: 0; }
.mh-ntf__row:hover { background: #f4f8fb; }
.mh-ntf__row.is-unread { background: #eef6fd; }
.mh-ntf__row.is-unread::before {
	content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 3px;
	background: var(--mh-blue, #1789d6);
}
.mh-ntf__ico {
	width: 34px; height: 34px; border-radius: 10px; flex: 0 0 auto;
	display: flex; align-items: center; justify-content: center; font-size: 16px;
}
.mh-ntf__ico--ok   { background: #e2f3ed; }
.mh-ntf__ico--warn { background: #fdf3e0; }
.mh-ntf__ico--crit { background: #fbe9e7; }
.mh-ntf__ico--info { background: #e3f0fa; }
.mh-ntf__ico--held { background: #eae9fc; }
.mh-ntf__tx { flex: 1; min-width: 0; }
.mh-ntf__tx b { display: block; font-size: 14px; font-weight: 500; }
.mh-ntf__row.is-unread .mh-ntf__tx b { font-weight: 600; }
.mh-ntf__tx p { margin: 1px 0 0; font-size: 12.5px; color: var(--mh-muted); }
.mh-ntf__go { display: flex; flex-direction: column; align-items: flex-end; gap: 4px; flex: 0 0 auto; }
.mh-ntf__when { font-size: 11px; color: var(--mh-muted); white-space: nowrap; }
.mh-ntf__dest { font-size: 12px; color: var(--mh-blue, #1789d6); font-weight: 600; white-space: nowrap; }

/* The dashboard card's unread pill turns hot (red) — count pill style rides
   the existing .mh-home__count element via the alert modifier. */
.mh-home__card--alert .mh-home__count { background: #d63a2f; color: #fff; }


/* Owner 2026-09-01 (scr 16): the line-remove × sat ON the table's right
   border — the cell now reserves its own room inside the frame. */
#mh-no-lines td:last-child {
	width: 36px;
	text-align: center;
	padding-right: 10px;
}


/* ---------------------------------------------------------------------------
 * Column sorting on every filter-table (owner approval 2026-09-01, Harada
 * design): the heading is the control — quiet arrows, accent when active.
 * ------------------------------------------------------------------------- */
th.mh-ft-sort a {
	color: inherit;
	text-decoration: none;
	display: inline-flex;
	align-items: baseline;
	gap: 4px;
}
th.mh-ft-sort a:hover { color: var(--mh-blue, #1789d6); }
.mh-ft-sort__dir { font-size: 10px; opacity: 0.45; }
th.mh-ft-sort.is-sorted a,
th.mh-ft-sort.is-sorted .mh-ft-sort__dir { color: var(--mh-blue, #1789d6); opacity: 1; }


/* ---------------------------------------------------------------------------
 * Sənədlərim — customer document archive (owner-approved redesign 2026-09-01):
 * operation chip in the customer's language, month groups, goods line from the
 * document's lines snapshot, compact actions. Cards on narrow screens.
 * ------------------------------------------------------------------------- */
.mh-cdl__filters { display: flex; gap: 8px; flex-wrap: wrap; margin-bottom: 14px; }
.mh-cdl__q { flex: 1; min-width: 170px; border: 1px solid #c3d0d9; border-radius: 8px; padding: 6px 10px; font-size: 13px; }
.mh-cdl__chip { border: 1px solid #c3d0d9; background: #fff; color: #4a5b68; border-radius: 999px; padding: 5px 14px; font-size: 12.5px; font-weight: 500; cursor: pointer; }
.mh-cdl__chip.is-on { background: #0675c4; border-color: #0675c4; color: #fff; }
.mh-cdl__month { font-size: 11px; letter-spacing: .08em; text-transform: uppercase; color: #7a8a96; padding: 14px 2px 6px; }
.mh-cdl__list { border: 1px solid #d9e2e8; border-radius: 12px; overflow: hidden; background: #fff; }
.mh-cdl__row { display: flex; align-items: center; gap: 14px; padding: 11px 14px; border-bottom: 1px solid #d9e2e8; }
.mh-cdl__row:last-child { border-bottom: 0; }
.mh-cdl__row:hover { background: #eef3f6; }
.mh-cdl__op { flex: 0 0 172px; display: inline-flex; align-items: center; gap: 6px; border-radius: 999px; padding: 3px 11px 3px 9px; font-size: 12px; font-weight: 600; white-space: nowrap; }
.mh-cdl__op::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: currentColor; flex: 0 0 auto; }
.mh-cdl__op--buy  { background: #e2f3ed; color: #0e7a5f; }
.mh-cdl__op--held { background: #eae9fc; color: #4f46e5; }
.mh-cdl__op--ret  { background: #fdf3e0; color: #9a5b00; }
.mh-cdl__op--sret { background: #fbe9e7; color: #b42318; }
.mh-cdl__op--doc  { background: #eef3f6; color: #4a5b68; }
.mh-cdl__main { flex: 1; min-width: 0; }
.mh-cdl__num { font-family: ui-monospace, Menlo, Consolas, monospace; font-size: 13px; font-weight: 600; }
.mh-cdl__typ { font-size: 11.5px; color: #7a8a96; margin-left: 8px; }
.mh-cdl__goods { display: block; font-size: 12.5px; color: #4a5b68; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.mh-cdl__when { flex: 0 0 auto; font-size: 12px; color: #7a8a96; white-space: nowrap; }
.mh-cdl__acts { flex: 0 0 auto; display: flex; gap: 6px; }
.mh-cdl__b { border: 1px solid #c3d0d9; background: #fff; color: #4a5b68 !important; border-radius: 7px; padding: 4px 10px; font-size: 12px; font-weight: 500; white-space: nowrap; text-decoration: none !important; }
.mh-cdl__b:hover { border-color: #0675c4; color: #0675c4 !important; }
@media ( max-width: 640px ) {
	.mh-cdl__row { flex-wrap: wrap; gap: 6px 10px; padding: 10px 12px; }
	.mh-cdl__op { flex: 0 0 auto; order: 1; }
	.mh-cdl__when { order: 2; margin-left: auto; }
	.mh-cdl__main { flex: 1 1 100%; order: 3; }
	.mh-cdl__goods { white-space: normal; }
	.mh-cdl__acts { order: 4; flex: 1 1 100%; }
}


/* ---------------------------------------------------------------------------
 * Harada v2 (owner approval 2026-09-01): expired rows carry a red stripe;
 * the SKU card (?bax=) shows the full spec + who holds every unit.
 * ------------------------------------------------------------------------- */
tr.mh-exp-past { box-shadow: inset 4px 0 0 var(--mh-warn, #b32d2e); }
tr.mh-exp-past td { color: var(--mh-warn, #b32d2e); }
.mh-exp-red { color: var(--mh-warn, #b32d2e); font-weight: 600; }
.mh-sku-card { display: flex; gap: 16px; flex-wrap: wrap; margin: 12px 0 18px; }
.mh-sku-card > div { flex: 1 1 320px; background: #fff; border: 1px solid var(--mh-line, #d9e2e8); border-radius: 12px; padding: 14px 16px; }
.mh-sku-card h4 { margin: 0 0 8px; font-size: 14px; }
.mh-sku-card__spec dl { display: grid; grid-template-columns: auto 1fr; gap: 3px 14px; margin: 0; }
.mh-sku-card__spec dt { color: #7a8a96; font-size: 12.5px; }
.mh-sku-card__spec dd { margin: 0; font-size: 13.5px; }
.mh-sku-card__list { margin: 0; padding-left: 18px; }
.mh-sku-card__list li { margin: 3px 0; font-size: 13.5px; }


/* ---------------------------------------------------------------------------
 * Bildiris parametrleri (owner approval 2026-09-01): per-notification toggle,
 * wording templates, timers. Rows collapse naturally on narrow screens.
 * ------------------------------------------------------------------------- */
.mh-ntfp__top { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.mh-ntfp__grp { font-size: 12px; letter-spacing: .08em; text-transform: uppercase; color: #7a8a96; margin: 22px 0 8px; }
.mh-ntfp__row { display: flex; align-items: flex-start; gap: 12px; border: 1px solid var(--mh-line, #d9e2e8); border-radius: 10px; padding: 9px 12px; margin-bottom: 8px; background: #fff; }
.mh-ntfp__row.is-off { opacity: .55; }
.mh-ntfp__tick input { width: 18px; height: 18px; margin-top: 2px; }
.mh-ntfp__main { flex: 1; min-width: 0; }
.mh-ntfp__main code { font-size: 11px; color: #7a8a96; margin-left: 6px; }
.mh-ntfp__meta { display: block; font-size: 12px; color: #7a8a96; }
.mh-ntfp__lock { flex: 0 0 auto; }
.mh-ntfp__edit { flex: 0 0 auto; max-width: 340px; }
.mh-ntfp__edit summary { cursor: pointer; font-size: 12.5px; color: #4a5b68; border: 1px solid #c3d0d9; border-radius: 7px; padding: 3px 10px; display: inline-block; }
.mh-ntfp__edit label { display: block; font-size: 11.5px; color: #7a8a96; margin-top: 7px; }
.mh-ntfp__edit input { width: 100%; }
@media ( max-width: 640px ) {
	.mh-ntfp__row { flex-wrap: wrap; }
	.mh-ntfp__edit { flex: 1 1 100%; max-width: none; }
}


/* Bildiris parametrleri v2 (owner review points 1-5): surface chips, filter
 * chips, how-panel, recipients list. */
.mh-ntfp__how { background: #fff; border: 1px solid var(--mh-line, #d9e2e8); border-radius: 12px; padding: 14px 18px; margin-bottom: 14px; }
.mh-ntfp__how h3 { margin: 0 0 8px; font-size: 15px; }
.mh-ntfp__how ul { margin: 0; padding-left: 18px; }
.mh-ntfp__how li { margin: 5px 0; font-size: 13.5px; color: #4a5b68; }
.mh-ntfp__filters { display: flex; gap: 7px; flex-wrap: wrap; align-items: center; margin: 14px 0 4px; }
.mh-ntfp__chip { border: 1px solid #c3d0d9; background: #fff; color: #4a5b68; border-radius: 999px; padding: 4px 13px; font-size: 12.5px; font-weight: 500; cursor: pointer; }
.mh-ntfp__chip.is-on { background: #0675c4; border-color: #0675c4; color: #fff; }
.mh-ntfp__sep { width: 1px; height: 20px; background: #c3d0d9; margin: 0 3px; }
.mh-ntfp__surf { display: inline-block; border-radius: 6px; padding: 1px 7px; font-size: 11px; font-weight: 600; margin-right: 4px; background: #eef3f6; color: #4a5b68; }
.mh-ntfp__surf--bell { background: #e3f0fa; color: #0675c4; }
.mh-ntfp__surf--cbell { background: #eae9fc; color: #4f46e5; }
.mh-ntfp__surf--outbox { background: #e2f3ed; color: #0e7a5f; }
.mh-ntfp__surf--sms { background: #fdf3e0; color: #9a5b00; }
.mh-ntfp__who .mh-ntfp__acct { display: inline-block; margin: 4px 12px 0 0; font-size: 13px; }

.mh-ntfp__hint { display: block; margin-top: 5px; font-size: 12px; }

/* ---- Hub Variant A (owner approval 2026-09-02): painted cards ---- */
.mh-cabhub--painted .mh-cabhub__band{padding:16px 20px 13px;border:1px solid #e3e8ee;border-radius:12px;background:linear-gradient(120deg,var(--hub-bg) 0%,#fff 78%);margin-bottom:16px}
.mh-cabhub--painted .mh-cabhub__bandkick{display:block;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--hub-hue)}
.mh-cabhub--painted .mh-cabhub__band .mh-cabhub__intro{margin:3px 0 0;color:#5d6b7a}
.mh-cabhub--painted .mh-cabhub__card{position:relative;background:var(--hub-soft);border:1px solid color-mix(in srgb,var(--hub-hue) 22%,#e3e8ee);border-radius:11px;overflow:hidden;transition:transform .12s,box-shadow .12s}
.mh-cabhub--painted .mh-cabhub__card::before{content:"";position:absolute;inset:0 0 auto 0;height:3px;background:var(--hub-hue)}
.mh-cabhub--painted .mh-cabhub__card:hover{transform:translateY(-2px);box-shadow:0 6px 18px color-mix(in srgb,var(--hub-hue) 20%,transparent)}
.mh-cabhub--painted .mh-cabhub__media{background:var(--hub-bg);color:var(--hub-hue)}
.mh-cabhub--painted .mh-cabhub__name,.mh-cabhub--painted .mh-cabhub__lead{text-decoration:none}
.mh-cabhub--painted .mh-cabhub__card:hover .mh-cabhub__name{color:var(--hub-hue)}

/* ---- Giriş icazələri v2 (owner-approved eskiz 2026-09-02) ---- */
.mh-acc2__top{display:flex;gap:14px;flex-wrap:wrap;margin:0 0 14px}
.mh-acc2__card{flex:1 1 300px;border:1px solid #e3e8ee;border-radius:11px;padding:14px 16px;background:#fff}
.mh-acc2__card--who{flex:1.4 1 340px}
.mh-acc2__k{font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:#5d6b7a;margin-bottom:8px}
.mh-acc2__who{display:flex;gap:10px;align-items:center;margin-bottom:10px;flex-wrap:wrap}
.mh-acc2__avatar{width:38px;height:38px;border-radius:50%;background:#eaf3fb;color:#0f6aa8;display:inline-flex;align-items:center;justify-content:center;font-weight:800;font-size:16px;flex:none}
.mh-acc2__whotxt small{display:block;color:#5d6b7a}
.mh-acc2__switch{max-width:100%}
.mh-acc2__frow{display:flex;gap:10px;align-items:center;margin:7px 0;flex-wrap:wrap}
.mh-acc2__frow label{font-size:13px;color:#5d6b7a;min-width:86px;margin:0}
.mh-acc2__inp{border:1px solid #dde4ea;border-radius:7px;padding:5px 10px;font-size:14px}
.mh-acc2__hint{font-size:12px;line-height:1.5;margin:8px 0 0}
.mh-acc2__chips,.mh-acc2__row .mh-acc2__chips{display:flex;gap:7px;flex-wrap:wrap;flex:1;min-width:200px}
.mh-acc2-chip{display:inline-flex;align-items:center;gap:6px;border:1.5px solid #dde4ea;border-radius:999px;padding:3px 12px;font-size:12.5px;cursor:pointer;user-select:none;color:#5d6b7a;background:#fff;margin:0}
.mh-acc2-chip input{position:absolute;opacity:0;pointer-events:none}
.mh-acc2-chip:has(input:checked){border-color:#15803d;color:#15803d;background:#f0f9f3}
.mh-acc2-chip:has(input:checked) span::before{content:"✓ ";font-weight:800}
.mh-acc2-chip--edit{border-style:dashed}
.mh-acc2-chip--edit:has(input:checked){border-color:#b45309;color:#b45309;background:#fdf6ec}
.mh-acc2-chip--edit:has(input:checked) span::before{content:"✎ "}
.mh-acc2__bar{display:flex;align-items:center;border:1px solid #e3e8ee;background:#fff;margin:0 0 12px;flex-wrap:wrap;position:sticky;top:0;z-index:5}
.mh-acc2__search,.mh-acc2__pwdl{font-size:13px}
.mh-acc2__grp{border:1px solid #e3e8ee;border-left:4px solid var(--hue,#8895a3);border-radius:11px;margin:10px 0;overflow:hidden;background:#fff}
.mh-acc2__grp>summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:10px;padding:10px 15px;background:var(--huebg,#f2f5f8);font-weight:700}
.mh-acc2__grp>summary::-webkit-details-marker{display:none}
.mh-acc2__glyph{width:26px;height:26px;border-radius:7px;background:#fff;color:var(--hue,#5d6b7a);display:inline-flex;align-items:center;justify-content:center;font-size:14px;border:1px solid #e3e8ee;flex:none}
.mh-acc2__cnt{margin-left:auto;font-size:12px;font-weight:600;color:var(--hue,#5d6b7a);background:#fff;border:1px solid #e3e8ee;padding:1px 9px;border-radius:999px}
.mh-acc2__row{display:flex;align-items:flex-start;gap:12px;padding:10px 16px;border-top:1px solid #eef1f4;flex-wrap:wrap}
.mh-acc2__nm{min-width:220px;font-weight:600;font-size:14px;padding-top:2px;flex:0 1 240px}
.mh-acc2__nm small{display:block;font-weight:400;color:#5d6b7a;font-size:12px}
.mh-acc2__sw{margin-left:auto;flex:none}
.mh-acc2__sw input{position:absolute;opacity:0;pointer-events:none}
.mh-acc2__sw span{position:relative;width:40px;height:22px;border-radius:999px;background:#dde4ea;display:inline-block;cursor:pointer;transition:background .15s}
.mh-acc2__sw span::after{content:"";position:absolute;top:2.5px;left:3px;width:17px;height:17px;border-radius:50%;background:#fff;transition:left .15s;box-shadow:0 1px 2px rgba(0,0,0,.25)}
.mh-acc2__sw input:checked+span{background:#15803d}
.mh-acc2__sw input:checked+span::after{left:20px}
@media (max-width:640px){.mh-acc2__nm{flex-basis:100%}.mh-acc2__bar{position:static}}

/* ---- scr 76 (2026-09-02): access page mobile overflow + hints expander ---- */
.mh-acc2__card{min-width:0}
.mh-acc2__inp{flex:1 1 150px;min-width:0;box-sizing:border-box;max-width:100%}
.mh-acc2__switch{flex:1 1 100%;width:100%;margin-left:0;margin-top:6px}
.mh-acc2__who,.mh-acc2__whotxt{min-width:0}
.mh-acc2__whotxt{overflow-wrap:anywhere}
.mh-acc2__frow{min-width:0}
@media (max-width:640px){.mh-acc2__frow label{min-width:74px;font-size:12.5px}}
.mh-acc2__hints summary{cursor:pointer;color:#0f6aa8;font-size:12.5px;font-weight:600;list-style:none;display:inline-flex;align-items:center;gap:6px;margin-top:10px}
.mh-acc2__hints summary::-webkit-details-marker{display:none}
.mh-acc2__hints summary::before{content:"ℹ"}
.mh-acc2__hints summary::after{content:"▾";font-size:10px}
.mh-acc2__hints[open] summary::after{content:"▴"}

/* ---- Agent desk (owner approval 2026-09-02, eskiz 3/3b/3c) ---- */
.mh-agd{margin:4px 0 18px}
.mh-agd__new{display:inline-block;background:#0f766e!important;border-color:#0f766e!important;color:#fff!important;font-weight:800;font-size:15px;padding:10px 22px;border-radius:10px}
.mh-agd__card{border:1px solid #dde4ea;border-left:4px solid #0f766e;border-radius:10px;padding:11px 13px;margin:8px 0;background:#fff}
.mh-agd__t{font-size:14px}
.mh-agd__items{font-size:12.5px;margin:4px 0 8px}
.mh-agd__st{font-size:12.5px;color:#5d6b7a;margin:2px 0 6px}
.mh-agd__act{display:inline-block;margin:0}
.mh-agd__share{margin:10px 0}
.mh-agd__share .button{margin-right:6px}
.mh-agd__step{display:flex;gap:9px;align-items:center;font-weight:800;font-size:14px;margin:16px 0 6px}
.mh-agd__stepn{width:22px;height:22px;border-radius:50%;background:#0f766e;color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:12px;flex:none}
.mh-agd__row{display:flex;gap:10px;align-items:center;padding:7px 2px;border-top:1px solid #eef1f4}
.mh-agd__selbar{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}
.mh-agd__nm{flex:1;min-width:0;font-size:13.5px}
.mh-agd__nm small{display:block;color:#5d6b7a;font-size:11.5px}
.mh-agd__qty{width:74px;border:1px solid #dde4ea;border-radius:7px;padding:5px 8px}
.mh-agd__pay label{margin-right:16px}
@media (max-width:640px){.mh-agd__new{display:block;text-align:center}}

/* ---- Panel Concept A (owner approval 2026-09-02) ---- */
.mh-pa{display:grid;grid-template-columns:1.6fr 1fr;gap:20px}
@media (max-width:860px){.mh-pa{grid-template-columns:1fr}}
.mh-pa__attn{border:1px solid #dde4ea;border-radius:11px;background:#fff;overflow:hidden;margin-bottom:6px}
.mh-pa__row{display:flex;gap:10px;align-items:center;padding:10px 14px;border-top:1px solid #eef1f4;color:inherit;text-decoration:none;font-size:14px}
.mh-pa__row:first-child{border-top:0}
.mh-pa__row:hover{background:#f4f8fb}
.mh-pa__row i{width:9px;height:9px;border-radius:50%;flex:none}
.mh-pa__row--hot i{background:#b91c1c}
.mh-pa__row--warn i{background:#b45309}
.mh-pa__row--info i{background:#0f6aa8}
.mh-pa__row span{flex:1;min-width:0}
.mh-pa__row b{color:#0f6aa8}
.mh-pa__kpis{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-bottom:8px}
.mh-pa__kpi{border:1px solid #dde4ea;border-radius:10px;background:#fff;padding:9px 12px;text-decoration:none;color:inherit}
.mh-pa__kpi b{display:block;font-size:17px}
.mh-pa__kpi small{color:#5d6b7a;font-size:11.5px}
.mh-pa__kpi:hover{border-color:#0f6aa8}
.mh-pa__recent{border:1px solid #dde4ea;border-radius:11px;background:#fff;overflow:hidden}
.mh-pa__move{display:flex;gap:8px;align-items:baseline;padding:8px 13px;border-top:1px solid #eef1f4;text-decoration:none;color:inherit;font-size:13px}
.mh-pa__move:first-child{border-top:0}
.mh-pa__move:hover{background:#f4f8fb}
.mh-pa__move span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#5d6b7a}
.mh-pa__move em{font-style:normal;font-weight:700}
/* Panel audit 2026-09-03: the operation button on the page, «Son satışlar» rows */
.mh-pa__top{flex-wrap:wrap;margin:0 0 14px}
.mh-pa__new{font-weight:800!important;font-size:15px!important;padding:10px 20px!important}
.mh-pa__sale{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1px 12px;padding:8px 13px;border-top:1px solid #eef1f4;text-decoration:none;color:inherit;font-size:13px;align-items:baseline}
.mh-pa__sale:first-child{border-top:0}
.mh-pa__sale:hover{background:#f4f8fb}
.mh-pa__sale-who{font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mh-pa__sale-what{grid-column:1;color:#5d6b7a;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mh-pa__sale em{grid-column:2;grid-row:1;font-style:normal;font-weight:700;white-space:nowrap}
.mh-pa__sale small{grid-column:2;grid-row:2;color:#8895a3;font-size:11.5px;white-space:nowrap;text-align:right}
.mh-gec-note{margin:6px 0 10px}
/* Panel — owner design approval 2026-09-03: «Sayt fəaliyyəti» card; the side column
   is a flex column so «Son satışlar» ends level with the activity card. */
.mh-pa{align-items:stretch}
.mh-pa__side{display:flex;flex-direction:column;min-width:0}
.mh-pa__recent--fill{flex:1 1 auto;display:flex;flex-direction:column}
.mh-pa__recent-ft{margin-top:auto;padding:9px 13px;border-top:1px solid #eef1f4;font-size:12.5px}
.mh-pa__h{display:flex;align-items:baseline;gap:8px}
.mh-pa__h--act{margin-top:18px}
.mh-pa__h-link{margin-left:auto;font-weight:500;font-size:12.5px;color:#0f6aa8;text-decoration:none}
.mh-pa__act{border:1px solid #dde4ea;border-radius:11px;background:#fff;padding:14px 16px 16px}
.mh-pa__tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:0 0 14px}
.mh-pa__tile{border:1px solid #dde4ea;border-radius:10px;padding:9px 12px;background:#fbfcfd;min-width:0}
.mh-pa__tile small{display:block;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#5d6b7a;margin-bottom:3px}
.mh-pa__tile b{display:block;font-size:19px;font-weight:800;line-height:1.15}
.mh-pa__tile span{display:block;font-size:12px;color:#5d6b7a}
.mh-pa__lbl{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#5d6b7a;margin:0 0 6px}
.mh-pa__chart{display:flex;align-items:flex-end;gap:5px;height:72px;padding:0 2px;border-bottom:1px solid #eef1f4}
.mh-pa__chart i{flex:1;background:#cfe3f4;border-radius:3px 3px 0 0;min-height:2px;display:block}
.mh-pa__chart i.is-today{background:#1a7fc4}
.mh-pa__chart i.is-empty{background:#e6edf3}
.mh-pa__axis{display:flex;justify-content:space-between;font-size:11px;color:#8895a3;margin:4px 0 12px}
.mh-pa__top{display:grid;grid-template-columns:1fr 1fr;gap:6px 24px;font-size:13px}
.mh-pa__top div{display:flex;justify-content:space-between;gap:10px;border-top:1px solid #eef1f4;padding:5px 0;min-width:0}
.mh-pa__top div:nth-child(-n+2){border-top:0}
.mh-pa__top code{font-family:inherit;font-size:inherit;background:none;padding:0;color:#0f6aa8;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mh-pa__top b{font-weight:600}
@media (max-width:640px){.mh-pa__tiles{grid-template-columns:1fr 1fr}}
/* Giriş icazələri — «İcazələr» toolbar (owner design approval 2026-09-03) */
.mh-acc2__bar{gap:10px;padding:10px 14px;border-radius:12px;border-color:#dde4ea;box-shadow:0 1px 2px rgba(16,24,40,.06),0 6px 18px rgba(16,24,40,.05)}
.mh-acc2__ttl{font-size:15px;font-weight:800;white-space:nowrap}
.mh-acc2__whochip{display:inline-flex;align-items:center;gap:7px;background:#eaf3fb;color:#0f6aa8;border-radius:999px;padding:4px 10px 4px 5px;font-size:12.5px;font-weight:600;white-space:nowrap;max-width:280px;overflow:hidden;text-overflow:ellipsis}
.mh-acc2__whochip i{width:20px;height:20px;border-radius:50%;background:#0f6aa8;color:#fff;display:inline-grid;place-items:center;font-style:normal;font-size:10.5px;font-weight:800;flex:none}
.mh-acc2__search,.mh-acc2__pwdl{position:relative;display:inline-flex;align-items:center;gap:0;margin:0}
.mh-acc2__search svg,.mh-acc2__pwdl svg{position:absolute;left:10px;top:50%;transform:translateY(-50%);width:15px;height:15px;color:#8895a3;pointer-events:none}
.mh-acc2__search .mh-acc2__inp,.mh-acc2__pwdl .mh-acc2__inp{height:36px;padding:0 11px 0 32px;border-radius:8px;font-size:13.5px;flex:none;width:280px}
.mh-acc2__pwdl .mh-acc2__inp{width:200px}
.mh-acc2__sp{flex:1 1 auto}
.mh-acc2__delta{display:inline-flex;align-items:center;gap:6px;background:#fdf6ec;color:#b45309;border:1px solid #f3dfc0;border-radius:999px;padding:4px 11px;font-size:12.5px;font-weight:700;white-space:nowrap}
.mh-acc2__bar .button.alt{height:36px;padding:0 18px;border-radius:999px;font-size:14px;line-height:1}
.mh-acc2__note{display:inline-flex;align-items:center;gap:5px;color:#8895a3;font-size:12px;white-space:nowrap}
.mh-acc2__note svg{width:14px;height:14px}
@media (max-width:640px){.mh-acc2__sp{display:none}.mh-acc2__search,.mh-acc2__pwdl{flex:1 1 100%}.mh-acc2__search .mh-acc2__inp,.mh-acc2__pwdl .mh-acc2__inp{width:100%}.mh-acc2__whochip{max-width:100%}}

/* ---- switcher rows: buttons on desktop, dropdown on mobile (owner scr 2026-09-02) ---- */
.mh-swx__sel{display:none;border:1px solid #dde4ea;border-radius:7px;padding:6px 10px;font-size:14px;max-width:100%}
@media (max-width:640px){.mh-swx__btns{display:none}.mh-swx__sel{display:inline-block}}

/* ---- Anbar V1: compact mobile rows + toolbar + filter sheet (owner 2026-09-02) ---- */
.mh-ft-mtool{display:none}
@media (max-width:640px){
	.mh-ft-mtool{display:flex;gap:8px;align-items:center;position:sticky;top:0;z-index:8;background:#f4f6f8;padding:8px 0;margin:0 0 6px}
	.mh-ft-mtool__srt{flex:1;min-width:0;border:1px solid #dde4ea;border-radius:8px;padding:7px 10px;font-size:14px}
	.mh-ft-mtool__btn{flex:none}
	/* collapsed row: lead + key figure on one line, chevron; tap opens */
	.mh-scroll .mh-staff-table--cards tbody tr{position:relative;padding:9px 30px 9px 12px;cursor:pointer}
	.mh-scroll .mh-staff-table--cards tbody tr::after{content:"›";position:absolute;right:12px;top:10px;color:#8895a3;font-size:16px;transition:transform .15s}
	.mh-scroll .mh-staff-table--cards tbody tr.is-open::after{transform:rotate(90deg)}
	.mh-scroll .mh-staff-table--cards tbody tr:not(.is-open) td:not(.mh-cell-lead):not(.mh-cell-key){display:none}
	.mh-scroll .mh-staff-table--cards tbody tr:not(.is-open) td.mh-cell-lead{display:inline-block;width:calc(100% - 64px);margin-bottom:0;vertical-align:middle}
	.mh-scroll .mh-staff-table--cards tbody tr:not(.is-open) td.mh-cell-key{display:inline-flex;width:56px;justify-content:flex-end;font-weight:800;font-size:14px;vertical-align:middle}
	.mh-scroll .mh-staff-table--cards tbody tr:not(.is-open) td.mh-cell-key::before{display:none}
	.mh-scroll .mh-staff-table--cards tbody tr.is-open td.mh-cell-key{font-weight:800}
}
.mh-ft-sheet{position:fixed;inset:0;z-index:80;background:rgba(16,24,40,.45)}
.mh-ft-sheet__panel{position:absolute;left:0;right:0;bottom:0;background:#fff;border-radius:16px 16px 0 0;padding:14px 16px 20px;max-height:75vh;overflow:auto}
.mh-ft-sheet__head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}
.mh-ft-sheet__row{display:flex;flex-direction:column;gap:3px;margin:8px 0;font-size:12.5px;color:#5d6b7a;font-weight:600}
.mh-ft-sheet__row input{border:1px solid #dde4ea;border-radius:8px;padding:8px 10px;font-size:14px;width:100%;box-sizing:border-box}
body.mh-ft-sheet-open{overflow:hidden}

/* ---- Bildiriş parametrləri: how-expander + timers grid (owner scr 80/81) ---- */
.mh-ntfp__howwrap summary{cursor:pointer;color:#0f6aa8;font-size:13.5px;font-weight:700;list-style:none;display:inline-flex;align-items:center;gap:7px;margin:4px 0 10px}
.mh-ntfp__howwrap summary::-webkit-details-marker{display:none}
.mh-ntfp__howwrap summary::before{content:"ℹ"}
.mh-ntfp__howwrap summary::after{content:"▾";font-size:10px}
.mh-ntfp__howwrap[open] summary::after{content:"▴"}
.mh-ntfp__tgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:9px;width:100%}
.mh-ntfp__tbox{display:flex;flex-direction:column;gap:4px;border:1px solid #dde4ea;border-radius:9px;padding:8px 11px;background:#fff;margin:0!important}
.mh-ntfp__tbox>span:first-child{font-size:12px;color:#5d6b7a;font-weight:600}
.mh-ntfp__tin{display:flex;align-items:center;gap:7px}
.mh-ntfp__tin input{width:5.5em;border:1px solid #dde4ea;border-radius:7px;padding:5px 8px}
.mh-ntfp__tin small{color:#5d6b7a}
.mh-ntfp__tsave{flex-basis:100%;margin-top:8px}

/* ---- Front-page USP row, V1 (owner approval 2026-09-02) ---- */
.mhf-stat__ic{display:block;font-style:normal;font-size:20px;line-height:1;margin-bottom:6px}
@media (max-width:640px){
	.mhf-stats-grid{display:grid!important;grid-template-columns:1fr 1fr;gap:10px}
	.mhf-stat{border:1px solid #e3e9ef;border-radius:11px;background:#fff;padding:12px 10px;text-align:center;margin:0!important}
	.mhf-stat b{display:block;font-size:13.5px;line-height:1.3;overflow-wrap:anywhere;hyphens:auto;text-wrap:balance}
	.mhf-stat span{display:block;font-size:11.5px;color:#64748b;margin-top:3px;line-height:1.35}
	.mhf-stat::before,.mhf-stat::after{display:none}
}

/* ---- SKU card v2: one skeleton, edit-in-place (owner approval 2026-09-02) ---- */
.mh-skc{border:1px solid #dde4ea;border-radius:12px;background:#fff;padding:16px 18px;max-width:760px}
.mh-skc__head{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:10px}
.mh-skc__head>b{font-size:17px}
.mh-skc__chip{border:1px solid #dde4ea;border-radius:999px;padding:2px 12px;font-size:12.5px;color:#5d6b7a;background:#f4f6f8}
.mh-skc__edit{margin-left:auto}
.mh-skc__grid{display:grid;grid-template-columns:1fr 1fr;gap:2px 20px}
@media (max-width:640px){.mh-skc__grid{grid-template-columns:1fr}}
.mh-skc__r{display:flex;gap:10px;align-items:center;padding:6px 0;border-top:1px solid #f0f3f6;min-width:0}
.mh-skc__l{flex:0 0 44%;font-size:12.5px;color:#5d6b7a}
.mh-skc__v{font-size:13.5px;min-width:0}
.mh-skc__i{display:none!important}
.mh-skc.is-editing .mh-skc__i{display:inline-block!important;border:1px solid #dde4ea;border-radius:7px;padding:5px 9px;max-width:100%}
.mh-skc.is-editing .mh-skc__v{display:none}
.mh-skc.is-editing p.mh-skc__note{display:block!important;border:0;padding:0}
.mh-skc__where{margin-top:12px;border-top:1px solid #eef1f4;padding-top:10px}
.mh-skc__where h4{margin:0 0 6px}
/* Owner 2026-09-19 (scr 28): the execution panel's «Tərkib» — the gap separates the COMPANIES (above each heading);
   a heading sits close to its own table. */
.mh-icra-goods .mh-icra-goods__co{margin:26px 0 6px;line-height:1.35}
.mh-icra-goods h4 + .mh-icra-goods__co{margin-top:18px}
.mh-icra-goods .mh-icra-goods__co + .mh-scroll{margin-top:0}
.mh-icra-goods .mh-scroll{margin-bottom:0}
.mh-icra-goods .mh-icra-goods__table{margin:0}
.mh-icra-goods .mh-icra-goods__total{margin-top:18px}
/* Owner 2026-09-19 (scr 13): the unit's card (one serial) — the SKU card's language, its own cost form and tables. */
.mh-skc__sns a,.mh-skc__past a{white-space:nowrap}
.mh-skc__past{margin:10px 0 0;font-size:.92em;line-height:1.7}
.mh-snc__cost{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin:14px 0 4px;padding:12px 14px;background:#f7f9fb;border:1px solid #e6ebf0;border-radius:10px}
.mh-snc__cost label{display:flex;align-items:center;gap:8px;margin:0}
.mh-snc__cost input[type=number]{width:9em}
.mh-snc__h{margin:22px 0 8px;font-size:1.02em}
.mh-snc .mh-snc__t{width:100%}
.mh-skc__save{display:none;margin-top:12px}
.mh-skc.is-editing .mh-skc__save{display:flex;gap:12px;align-items:center}
.mh-skc__edit-off{display:none}
.mh-skc.is-editing .mh-skc__edit-on{display:none}
.mh-skc.is-editing .mh-skc__edit-off{display:inline}

/* «Sifarişiniz qəbul edildi» (owner approval 2026-09-02, scr 14) — the
   order page's layout (.mh-vo) with a hero on top and the actions once. */
.mh-ty__hero {
	display: flex;
	gap: 16px;
	align-items: flex-start;
	margin: 0 0 20px;
}

.mh-ty__ico {
	width: 48px;
	height: 48px;
	border-radius: 50%;
	background: var(--mh-ok-bg, #e6f5ec);
	color: var(--mh-green-dark, #1d8a55);
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1.5em;
	font-weight: 700;
	flex: 0 0 auto;
}

.mh-ty__ico.is-bad {
	background: #fdecea;
	color: #b3312d;
}

.mh-ty__hero h2 {
	margin: 0 0 4px;
	font-size: 1.45em;
	letter-spacing: -0.01em;
}

.mh-ty__hero h2 .mh-vo__pill {
	margin-left: 8px;
	vertical-align: middle;
}

.mh-ty__hero p {
	margin: 0;
	color: var(--mh-muted);
}

.mh-ty__qty {
	color: var(--mh-muted);
}

.mh-ty__hint {
	color: var(--mh-muted);
	font-size: 0.86em;
	margin: 10px 0 0;
}

.mh-ty__failed {
	background: #fdecea;
	color: #b3312d;
	border-radius: 8px;
	padding: 10px 14px;
}

.mh-ty__actbar .button {
	white-space: nowrap;
}

.mh-ty__paybtn {
	background: var(--mh-green-dark, #1d8a55) !important;
	border-color: var(--mh-green-dark, #1d8a55) !important;
	color: #fff !important;
}

@media (max-width: 800px) {
	.mh-ty__hero h2 {
		font-size: 1.2em;
	}

	.mh-ty__hero h2 .mh-vo__pill {
		display: block;
		width: max-content;
		margin: 8px 0 0;
	}

	.mh-ty__actbar .mh-vo__adjust {
		display: none; /* the phone bar keeps the two primary doors; edit lives on the order page */
	}
}

/* Owner 2026-09-02 (scr 1): the ✕ remove button sat in a 38 px fixed
   column with the table's own cell padding around it — it overflowed the
   row and painted outside the highlighted frame. Room for it, no padding. */
#mh-no-lines th:nth-child(7),
#mh-no-lines td:nth-child(7) {
	width: 48px;
	padding-left: 0;
	padding-right: 6px;
	overflow: hidden;
}

#mh-no-lines .mh-configurator__remove {
	margin: 0;
	padding: 2px 5px;
	vertical-align: middle;
}

/* Giriş icazələri: the agent roster needs the full row, not a third of it
   (live check 2026-09-02 — the Vəziyyət column wrapped word by word). */
.mh-acc2__card--agents {
	grid-column: 1 / -1;
	flex-basis: 100%;
}

.mh-acc2__agents td,
.mh-acc2__agents th {
	white-space: nowrap;
}

.mh-acc2__agents td:first-child {
	white-space: normal;
}

/* Sifarişə düzəliş — məhsul əlavə etmə (owner 2026-09-02, scr 16) */
.mh-adj__table tr.mh-adj__new td{background:#efeafc}
.mh-adj__pill{display:inline-block;padding:1px 8px;border-radius:999px;font-size:11.5px;font-weight:600;background:#e3f5ec;color:#1f8f5a;vertical-align:middle}
.mh-adj__pill--new{background:#efeafc;color:#6b4fd8}
.mh-adj__add{margin:14px 0 0;border:1px dashed #1a7fc4;border-radius:10px;padding:12px;background:#e6f2fb}
.mh-adj__add-h{display:flex;align-items:center;gap:8px;font-weight:700;margin-bottom:8px}
.mh-adj__search{display:flex;gap:8px}
.mh-adj__search input{flex:1;min-width:0}
.mh-adj__results{margin-top:8px;background:#fff;border:1px solid #dfe6ec;border-radius:8px;overflow:hidden}
.mh-adj__res{display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:center;padding:8px 10px;border-bottom:1px solid #dfe6ec}
.mh-adj__res:last-child{border-bottom:0}
.mh-adj__res-n{font-weight:600}
.mh-adj__res-s{font-size:12px;color:#7b8a97}
.mh-adj__res-p{font-weight:600;white-space:nowrap}
.mh-adj__res-go{padding:4px 12px!important}
.mh-adj__empty{margin:0;padding:10px;color:#7b8a97}
.mh-adj__hint,.mh-adj__note{font-size:12.5px;color:#7b8a97;margin:8px 0}
.mh-adj__note{background:#fbf1dc;color:#b7791f;border-radius:8px;padding:8px 12px}
.mh-adj-behalf{background:#e6f2fb;border-radius:8px;padding:8px 12px}
.mh-adj__del{border:0;background:none;color:#7b8a97;cursor:pointer;font-size:15px}
.mh-ord-flag__row{margin:8px 0 6px;display:flex;flex-wrap:wrap;gap:6px;align-items:center}
@media (max-width:640px){.mh-adj__res{grid-template-columns:1fr auto}.mh-adj__res-p{grid-column:1/-1}}

/* Giriş icazələri v3 — «Şəxslər» (owner 2026-09-02, phone column retired) */
.mh-acc2__top--v3{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(300px,1fr);gap:14px;align-items:start}
@media (max-width:900px){.mh-acc2__top--v3{grid-template-columns:1fr}}
.mh-acc2__side{display:flex;flex-direction:column;gap:14px}
.mh-acc2__people td,.mh-acc2__people th{vertical-align:middle}
.mh-acc2__people tr.is-sel td{background:#f0f6fc}
.mh-acc2__who--row{margin:0}
.mh-acc2__avatar--book{background:#fbf1dc;color:#b7791f}
.mh-acc2__pchip{display:inline-block;padding:2px 9px;border-radius:999px;font-size:11.5px;font-weight:600;white-space:nowrap;background:#e6f2fb;color:#1a7fc4}
.mh-acc2__pchip--book{background:#fbf1dc;color:#b7791f}
.mh-acc2__pchip--ok{background:#e3f5ec;color:#1f8f5a}
.mh-acc2__pchip--administrator{background:#eef1f4;color:#4a5a68}
.mh-acc2__newrow td{background:#f5f9fd}

.mh-acc2__people thead th{position:static}

/* Agent kabineti (owner 2026-09-03, design approved) */
.mh-agd__tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0 0 12px}
@media (max-width:640px){.mh-agd__tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}
.mh-agd__tile{display:block;border:1px solid #dfe6ec;border-radius:10px;padding:10px 12px;background:#fff;text-decoration:none;color:#14212b}
.mh-agd__tile b{font-size:20px;display:block;line-height:1.2}
.mh-agd__tile small{color:#7b8a97;font-size:12px}
.mh-agd__tile.is-hot{border-color:#b7791f;background:#fbf1dc}
.mh-agd__tile.is-warn{border-color:#e0a94a}
.mh-agd__cta{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 14px}
.mh-agd__cta .mh-agd__new{margin:0}
.mh-agd__new--alt{background:#6b4fd8!important;border-color:#6b4fd8!important;color:#fff!important}
.mh-agd__card--q{border-left:4px solid #0f6aa8}
.mh-agd__card--d{border-left:4px solid #6b4fd8}
.mh-agd__addr{margin:6px 0 4px;font-size:13px}
.mh-agd__links{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 6px}
.mh-agd__links .button{padding:4px 12px;font-size:12.5px}
.mh-agd__st--warn{color:#b7791f}
.mh-agd__dispute{margin-top:6px;font-size:12.5px}
.mh-agd__dispute summary{cursor:pointer;color:#7b8a97}
.mh-agd__dispute textarea{width:100%;max-width:420px;display:block;margin:6px 0}
.mh-agd__chip{display:inline-block;padding:1px 8px;border-radius:999px;font-size:11.5px;font-weight:600;background:#eef1f4;color:#4a5a68;white-space:nowrap}
.mh-agd__chip--ok{background:#e3f5ec;color:#1f8f5a}
.mh-agd__chip--warn{background:#fbf1dc;color:#b7791f}
.mh-agd__chip--bad{background:#fde8e6;color:#c0392b}
.mh-agd__table td,.mh-agd__table th{vertical-align:middle}
.mh-agd__sel{max-width:100%;width:100%}
.mh-agtabs{display:none}
@media (max-width:820px){
  body.mh-staff-user .mh-agtabs{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;left:0;right:0;bottom:0;z-index:60;background:#fff;border-top:1px solid #dfe6ec;padding:6px 0 max(6px,env(safe-area-inset-bottom))}
  .mh-agtabs a{text-align:center;font-size:10.5px;color:#7b8a97;text-decoration:none}
  .mh-agtabs a i{display:block;font-style:normal;font-size:18px;line-height:1.1}
  .mh-agtabs a.is-on{color:#1a7fc4;font-weight:700}
}
.mh-acc2__people thead tr:first-child th,.mh-acc2__people thead tr.mh-filter-row th{position:static!important;top:auto!important}
.mh-acc2__card--people .mh-scroll{overflow-x:auto}
.mh-acc2__people{min-width:620px}
.mh-acc2__people .mh-acc2__who--row{flex-wrap:nowrap;min-width:190px}
.mh-acc2__people .mh-acc2__whotxt small{white-space:normal}

/* ===== Brand-site mode (owner 2026-09-03): lipoelastic.az · polytech.az · dolphinsutures.az ===== */
/* Design approval 2026-09-03 (owner): the brand chrome follows medihub.az's
   geometry — 61 px header (logo in a 36 px box, «official distributor» tag,
   centred 3-item menu, language pill only), the front-page carousel as the
   brand page's hero, a 7/5 Əlaqə grid, a dark footer with a brand-coloured
   top rule. Requisites appear on İstifadə şərtləri only. */
.mh-brandsite .mh-siblings{display:none!important}
.mh-brandsite .mh-user-chip,.mh-brandsite .storefront-handheld-footer-bar,.mh-brandsite .mh-brands-strip{display:none!important}
.mh-brandsite .site-header{margin-bottom:0!important}
.mh-brandsite .site-main{padding-top:0!important}
.mh-brandsite .mh-bs-legal{padding-top:26px}
/* header */
.site-header .site-branding .mh-brandsite__logo{display:flex!important;align-items:center;gap:14px;text-decoration:none;line-height:1;padding:0;margin:0}
.site-header .site-branding .mh-brandsite__logo img.custom-logo{height:var(--mh-brand-logo-h,30px)!important;width:auto;max-width:none;display:block}
.mh-brandsite__tag{display:block;border-left:1px solid #d7dee5;padding-left:14px;font-size:10.5px;line-height:1.3;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--mh-muted);max-width:156px}
@media (min-width:66.5em){
	.mh-brandsite .site-header .storefront-primary-navigation{flex:1 1 auto!important;display:flex;justify-content:center;margin:0!important}
	.mh-brandsite .site-header .storefront-primary-navigation > .col-full{margin:0!important;padding:0!important;max-width:none;width:auto}
	.mh-brandsite .site-header .main-navigation ul.menu{justify-content:center;gap:2px}
	.mh-brandsite .site-header .main-navigation ul.menu > li > a{padding:10px 14px;font-size:15px}
	/* owner 2026-09-03: medihub marks the current/hovered item with `box-shadow: inset 0 -3px 0 var(--mh-blue)`; with the brand rule's 2 px accent border under it that read as two lines (a thin dark one under the blue one). On the brand sites the accent border is the ONLY marker — current, hover and focus. */
	.mh-brandsite .site-header .main-navigation ul.menu > li.current-menu-item > a,.mh-brandsite .site-header .main-navigation ul.menu > li > a:hover,.mh-brandsite .site-header .main-navigation ul.menu > li > a:focus{box-shadow:none!important;color:var(--mh-brand-accent);border-bottom-color:var(--mh-brand-accent)}
	.mh-brandsite .mh-head-actions{gap:12px;flex:none;margin-left:0}
}
@media (max-width:66.4989em){
	/* phone: the wordmark with the tag under it (owner: the inscription stays on mobile), the language pill, the sandwich */
	.site-header .site-branding .mh-brandsite__logo{flex-direction:column;align-items:flex-start;gap:3px}
	.site-header .site-branding .mh-brandsite__logo img.custom-logo{height:calc(var(--mh-brand-logo-h,30px) * .8)!important}
	.mh-brandsite__tag{border-left:0;padding-left:0;font-size:9px;letter-spacing:.07em;max-width:none;white-space:nowrap}
	.mh-brandsite .site-header > .col-full{gap:8px}
	.mh-brandsite .site-header .mh-head-actions{display:flex!important;align-items:center;order:2;margin-left:auto}
	.mh-brandsite .site-header .storefront-primary-navigation{order:3;margin-left:0!important}
	/* the sandwich is icon-only here: with the wordmark + tag lockup and the language pill, the labelled 99 px button ran off a 390 px screen */
	.mh-brandsite .site-header button.menu-toggle{width:44px;height:40px;padding:0!important;min-width:0;max-width:none;font-size:0;color:transparent;flex:none}
	.mh-brandsite .site-header button.menu-toggle::before,.mh-brandsite .site-header button.menu-toggle::after,.mh-brandsite .site-header button.menu-toggle span::before{left:15px;background:#16232e}
}
/* brand page hero = the medihub.az carousel with the brand's slides */
.mh-brandsite .mh-brand > .mhf-hero:first-child{margin-top:0!important}
/* full-bleed like .mh-brand .mh-brand__hero — `.mh-brand section{margin:0 auto}` would otherwise cancel the negative margins (hero sat 23–60 px from the left edge, cut on the right) */
.mh-brandsite .mh-brand .mhf-hero{width:100vw;max-width:100vw;margin-left:calc(50% - 50vw)!important;margin-right:calc(50% - 50vw)!important}
.mh-brandsite .mhf-hero{height:min(80vh,680px);min-height:520px}
/* the copy sits at the container's left edge (approved mockup) — as a flex item the container would otherwise shrink-wrap and float to the middle */
.mh-brandsite .mhf-hero .mhf-container{flex:1 1 auto;width:auto;box-sizing:border-box;padding:0 42px}
@media (max-width:767px){.mh-brandsite .mhf-hero .mhf-container{padding:0 20px}}
.mh-brandsite .mhf-btn--brand{background:var(--mh-brand-accent,var(--mh-blue));color:#fff!important}
.mh-brandsite .mhf-btn--brand:hover{filter:brightness(1.08)}
.mh-brandsite .mhf-dot{background:#fff;opacity:.9}
.mh-brandsite .mh-brand__cta,.mh-brandsite .mh-acc__lockcta{background:var(--mh-brand-accent,var(--mh-blue))}
/* the static band on Faydalı məlumatlar and Əlaqə: same gradient as the carousel, copy centred, no duplicated logo */
.mh-brandsite .mh-brand .mh-info__hero{min-height:0;height:auto;display:flex;align-items:center;padding:0}
.mh-brandsite .mh-info__hero::after{background:linear-gradient(78deg,rgba(10,26,38,.84) 0%,rgba(10,26,38,.54) 40%,rgba(10,26,38,.06) 74%)}
.mh-brandsite .mh-info__hero .mh-brand__hero-inner{max-width:1320px;padding:56px 42px}
.mh-brandsite .mh-info__hero .mh-brand__eyebrow{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.22);border-radius:999px;padding:8px 16px;font-size:13px;letter-spacing:.06em;margin:0 0 18px;opacity:1}
.mh-brandsite .mh-info__hero .mh-brand__eyebrow::before{content:"";width:7px;height:7px;border-radius:50%;background:#fff;opacity:.9}
.mh-brandsite .mh-info__hero .mh-brand__title{font-size:clamp(28px,3.2vw,40px);margin:0 0 10px;max-width:24ch}
.mh-brandsite .mh-info__hero .mh-brand__lead{margin:0 0 18px;font-size:16px;max-width:60ch}
.mh-brandsite .mh-info__hero .mh-brand__lead:last-child{margin-bottom:0}
@media (max-width:767px){.mh-brandsite .mh-info__hero .mh-brand__hero-inner{padding:36px 20px}}
/* Əlaqə — variant A */
.mh-bs-grid{display:grid;grid-template-columns:7fr 5fr;gap:40px;max-width:1180px;margin:0 auto;padding:44px 22px 60px;align-items:start}
@media (max-width:860px){.mh-bs-grid{grid-template-columns:1fr;gap:28px;padding:30px 20px 44px}}
.mh-bs-main h2{font-size:22px;margin:0 0 10px;letter-spacing:-.02em}
.mh-bs-about{font-size:16px;line-height:1.6;color:#2b3a47;margin:0}
.mh-bs-door{margin-top:28px;background:var(--mh-accent-bg);border-radius:12px;padding:22px 24px;display:grid;grid-template-columns:40px 1fr;gap:18px;align-items:start}
.mh-bs-door__ic{width:40px;height:40px;border-radius:10px;background:var(--mh-brand-accent,var(--mh-blue));color:#fff;display:grid;place-items:center}
.mh-bs-door__ic svg{width:20px;height:20px}
.mh-bs-door h3{font-size:18px;margin:0 0 6px}
.mh-bs-door p{margin:0 0 14px;font-size:15px;color:var(--mh-ink)}
.mh-bs-door__btns{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin:0!important}
.mh-bs-door__link{color:var(--mh-brand-accent,var(--mh-blue));font-weight:700;text-decoration:none;font-size:14.5px}
.mh-bs-steps{margin-top:30px}
.mh-bs-steps h3,.mh-bs-faq h3{font-size:18px;margin:0 0 12px}
.mh-bs-steps ol{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
@media (max-width:640px){.mh-bs-steps ol{grid-template-columns:1fr}}
.mh-bs-steps li{display:grid;grid-template-columns:32px 1fr;gap:12px;align-items:start;padding:16px;border:1px solid var(--mh-line);border-radius:12px;background:#fff;margin:0}
.mh-bs-steps li i{width:32px;height:32px;border-radius:50%;background:var(--mh-brand-accent,var(--mh-blue));color:#fff;display:grid;place-items:center;font-style:normal;font-weight:800;font-size:14px}
.mh-bs-steps li b{display:block;font-size:14.5px;margin-bottom:3px}
.mh-bs-steps li span{display:block;font-size:13px;line-height:1.5;color:var(--mh-muted)}
.mh-bs-faq{margin-top:30px}
.mh-bs-faq details{border-top:1px solid var(--mh-line);padding:12px 0}
.mh-bs-faq details:last-of-type{border-bottom:1px solid var(--mh-line)}
.mh-bs-faq summary{list-style:none;display:flex;justify-content:space-between;gap:12px;font-weight:600;font-size:15.5px;cursor:pointer}
.mh-bs-faq summary::-webkit-details-marker{display:none}
.mh-bs-faq summary i{font-style:normal;color:var(--mh-brand-accent,var(--mh-blue));font-weight:700;flex:none;transition:transform .15s}
.mh-bs-faq details[open] summary i{transform:rotate(45deg)}
.mh-bs-faq p{margin:8px 0 0;font-size:14.5px;line-height:1.55;color:var(--mh-muted)}
.mh-bs-form-card{background:#fff;border:1px solid var(--mh-line);border-radius:14px;padding:26px 26px 22px;box-shadow:0 1px 2px rgba(22,35,46,.06),0 10px 24px rgba(15,106,168,.06)}
.mh-bs-form-card h3{font-size:20px;margin:0 0 6px}
.mh-bs-form-card__intro{font-size:14.5px;color:var(--mh-muted);margin:0 0 18px}
.mh-bs-form-card__intro strong{color:var(--mh-ink)}
.mh-bs-f{display:grid;gap:5px;margin:0 0 14px}
.mh-bs-f > span{font-size:12.5px;font-weight:600;color:var(--mh-muted)}
.mh-bs-form input,.mh-bs-form select,.mh-bs-form textarea{width:100%;border:1px solid #d7dee5;border-radius:8px;padding:10px 12px;margin:0;font:inherit;font-size:15px;background:#fff;min-height:44px}
.mh-bs-form textarea{min-height:112px}
.mh-bs-hp{position:absolute!important;left:-9999px!important;height:1px;width:1px;opacity:0}
.mh-bs-form__row{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:4px 0}
.mh-bs-form__st{font-size:13px;color:var(--mh-muted)}
.mh-bs-form__note{font-size:12px;color:var(--mh-muted);margin:12px 0 0;line-height:1.5}
.mh-bs-hours{margin-top:16px;display:grid;grid-template-columns:repeat(3,1fr);gap:10px;font-size:13px;color:#2b3a47}
@media (max-width:480px){.mh-bs-hours{grid-template-columns:1fr}}
.mh-bs-hours div{border:1px solid var(--mh-line);border-radius:10px;padding:10px 12px;background:#fbfcfd}
.mh-bs-hours b{display:block;font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--mh-muted);margin-bottom:3px}
/* footer */
.mh-brandsite .site-footer{border-top-color:var(--mh-brand-accent,var(--mh-blue))}
.mh-brandsite__footer{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:32px;max-width:1180px;margin:0 auto;padding:36px 22px 0;font-size:13.5px;line-height:1.55;color:rgba(255,255,255,.8)}
.mh-brandsite__wm{height:calc(var(--mh-brand-logo-h,30px) * .8);width:auto;filter:brightness(0) invert(1);opacity:.95;display:block;margin-bottom:12px}
.mh-brandsite__fco{color:rgba(255,255,255,.62)}
.mh-brandsite__fco strong{color:#fff;font-weight:600}
.mh-brandsite__footer a{color:rgba(255,255,255,.85)!important;text-decoration:none;border:0}
.mh-brandsite__footer a:hover{color:#fff!important}
.mh-brandsite__flabel{display:block;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.45);margin-bottom:10px;font-weight:700}
.mh-brandsite__footer ul{list-style:none;margin:0;padding:0;display:grid;gap:7px}
.mh-brandsite__footer li{margin:0}
.mh-brandsite__mh img{height:24px;width:auto;display:block;margin:2px 0 8px}
.mh-brandsite__fbottom{max-width:1180px;margin:26px auto 0;padding:16px 22px 22px;border-top:1px solid rgba(255,255,255,.12);display:flex;justify-content:space-between;gap:32px;font-size:12px;color:rgba(255,255,255,.5)}
.mh-brandsite__fbottom span:first-child{max-width:92ch}
@media (max-width:767px){.mh-brandsite__footer{grid-template-columns:1fr;gap:22px}.mh-brandsite__fbottom{flex-direction:column;gap:8px}}
.mh-bs-legal .entry-content h2{font-size:17px;margin:20px 0 6px}
.mh-legal__meta{color:var(--mh-muted);font-size:12px}

/* Owner 2026-09-03 (brand sites, same on medihub.az): Storefront paints
   `a:focus, button:focus { outline: 2px solid #7f54b3 }` — its purple — and a
   clicked menu link keeps focus, so the frame's bottom edge lingered under
   the blue underline as a thin violet line. Mouse focus shows nothing; the
   keyboard still gets a ring, in the site's own blue. */
.site-header .main-navigation ul.menu > li > a:focus,
.site-header .mh-head-actions a:focus,
.site-header .mh-head-actions button:focus,
.site-header button.menu-toggle:focus,
.site-header .custom-logo-link:focus{outline:none;box-shadow:none}
.site-header .main-navigation ul.menu > li > a:focus-visible,
.site-header .mh-head-actions a:focus-visible,
.site-header .mh-head-actions button:focus-visible,
.site-header button.menu-toggle:focus-visible,
.site-header .custom-logo-link:focus-visible{outline:2px solid var(--mh-brand-accent,var(--mh-blue,#1789d6));outline-offset:3px;border-radius:4px}

/* Owner 2026-09-04 (scr 1): every cabinet page ended ~140 px above the
   footer — Storefront stacks a margin on .site-main AND .content-area, the
   account wrapper pads 32 px, and admins also saw the page's «Edit» link.
   One 24 px breath under the card, and no «Edit» on the cabinet. */
.woocommerce-account .site-main,
.woocommerce-account .content-area {
	margin-bottom: 0;
}
.woocommerce-account .site-content {
	padding-bottom: 24px;
}
/* Owner 2026-10-04 (scr 16/17): two more spacers survived the rule above —
   Storefront's .hentry bottom margin (≈68px) on the account page's <article>,
   and the empty paragraph the «Hesabınız» page content ends with (≈23px; it
   cannot collapse through .entry-content's clearfix). Hidden in CSS rather
   than in page 79, so a later block edit cannot bring the band back. */
.woocommerce-account .hentry {
	margin-bottom: 0;
}
.woocommerce-account .entry-content > p:empty {
	display: none;
}
.woocommerce-account .edit-link {
	display: none;
}


/* Panel inbox + compose window (owner brief 2026-09-04, A2). The old
   .mh-pa__top class doubled as the «most viewed» grid, which stretched the
   Panel button to half the page — the button row is .mh-pa__bar now. */
.mh-pa__bar{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 14px}
.mh-pa__mail{background:#fff!important;color:#0f6aa8!important;border:1.5px solid #0f6aa8!important}
.mh-inbox{border:1px solid #dde4ea;border-radius:11px;background:#fff;overflow:hidden;margin-bottom:18px}
.mh-inbox__badge{display:inline-block;min-width:20px;padding:1px 6px;border-radius:10px;background:#b91c1c;color:#fff;font-size:12px;text-align:center;vertical-align:middle;margin-left:4px}
.mh-inbox__tools{margin-left:auto;display:flex;gap:8px;align-items:center}
.mh-inbox__sync{margin:0}
.mh-inbox__btn{font-size:12.5px!important;padding:5px 11px!important;border-radius:8px!important;line-height:1.3!important;font-weight:700}
.mh-inbox__btn--ghost{background:#fff!important;color:#0f6aa8!important;border:1px solid #cfdae4!important}
.mh-inbox__row{display:grid;grid-template-columns:200px minmax(0,1fr) auto;gap:2px 14px;padding:9px 14px;border-top:1px solid #eef1f4;text-decoration:none;color:inherit;font-size:13.5px;align-items:baseline}
.mh-inbox__row:first-child{border-top:0}
.mh-inbox__row:hover{background:#f4f8fb}
.mh-inbox__row.is-unread .mh-inbox__who,.mh-inbox__row.is-unread .mh-inbox__subj{font-weight:800}
.mh-inbox__row.is-unread{background:#fbfdff}
.mh-inbox__row.is-site .mh-inbox__who::before{content:"●";color:#b45309;margin-right:5px;font-size:10px}
.mh-inbox__who{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mh-inbox__who small{color:#8895a3;font-weight:500}
.mh-inbox__subj{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mh-inbox__snip{grid-column:2;color:#5d6b7a;font-size:12.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mh-inbox__row time{grid-column:3;grid-row:1;color:#8895a3;font-size:12px;white-space:nowrap}
.mh-inbox__empty{margin:0;padding:14px;color:#5d6b7a}
.mh-inbox__ft{padding:8px 14px;border-top:1px solid #eef1f4;font-size:12.5px}
.mh-inbox__ft a{color:#0f6aa8;text-decoration:none;font-weight:600}
@media (max-width:640px){.mh-inbox__row{grid-template-columns:minmax(0,1fr) auto}.mh-inbox__subj{grid-column:1}.mh-inbox__snip{grid-column:1}.mh-inbox__row time{grid-column:2}}
.mh-mail{border:1px solid #dde4ea;border-radius:11px;background:#fff;margin-bottom:18px;overflow:hidden}
.mh-mail__head{padding:14px 16px;border-bottom:1px solid #eef1f4;background:#fbfcfd}
.mh-mail__head h3{margin:6px 0 10px;font-size:18px}
.mh-mail__actions{display:flex;gap:8px;flex-wrap:wrap}
.mh-mail__msg{padding:14px 16px;border-top:1px solid #eef1f4}
.mh-mail__msg:first-of-type{border-top:0}
.mh-mail__msg.is-out{background:#f6fbf3}
.mh-mail__msg header{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap;margin-bottom:8px;font-size:13px}
.mh-mail__msg header b{overflow:hidden;text-overflow:ellipsis}
.mh-mail__msg header time{color:#8895a3;font-size:12px;margin-left:auto}
.mh-mail__body{font-size:14px;line-height:1.5;overflow-x:auto;word-break:break-word}
.mh-mail__body img{max-width:100%;height:auto}
.mh-mail__body table{max-width:100%}
dialog.mh-compose{border:0;border-radius:14px;padding:0;width:min(680px,94vw);box-shadow:0 24px 60px rgba(13,34,49,.28)}
dialog.mh-compose::backdrop{background:rgba(13,34,49,.45)}
.mh-compose__form{padding:18px 20px 16px;display:flex;flex-direction:column;gap:10px}
.mh-compose__head{display:flex;align-items:center;justify-content:space-between;font-size:16px;margin-bottom:4px}
.mh-compose__close{background:none;border:0;font-size:18px;cursor:pointer;color:#5d6b7a;padding:2px 6px}
.mh-compose__form label{display:grid;grid-template-columns:70px minmax(0,1fr);gap:8px;align-items:center;font-size:13.5px;margin:0}
.mh-compose__form label span{color:#5d6b7a}
.mh-compose__form input,.mh-compose__form textarea{width:100%;font-size:14px;padding:7px 10px;border:1px solid #cfdae4;border-radius:8px}
.mh-compose__form textarea{resize:vertical;min-height:140px}
.mh-compose__quote{border-left:2px solid #dde4ea;padding-left:10px;color:#5d6b7a;font-size:12.5px;max-height:140px;overflow:auto}
.mh-compose__sig{border-top:1px dashed #dde4ea;padding-top:8px;font-size:12px;color:#5d6b7a}
.mh-compose__sig table{margin-top:6px!important}
.mh-compose__foot{display:flex;gap:8px;justify-content:flex-end;margin-top:4px}

/* Pre-order configurator: contact block + sent state (A1/A3). */
.mh-configurator__contact{border:1px solid #dde4ea;border-radius:10px;padding:12px 14px 6px;margin:14px 0;display:grid;grid-template-columns:1fr 1fr;gap:6px 14px}
.mh-configurator__contact legend{font-weight:700;padding:0 6px}
.mh-configurator__contact label{display:flex;flex-direction:column;gap:3px;font-size:13.5px;margin:0 0 6px}
.mh-configurator__contact label span{color:#5d6b7a}
.mh-configurator__contact input,.mh-configurator__contact textarea{width:100%;font-size:14px;padding:7px 10px;border:1px solid #cfdae4;border-radius:8px}
.mh-configurator__note{grid-column:1/-1}
@media (max-width:640px){.mh-configurator__contact{grid-template-columns:1fr}}
.mh-cta-banner--green{background:#eef8ea;border-color:#b7dca6}
.mh-configurator--sent .mh-cta-banner{margin:12px 0 24px}


/* ===========================================================================
 * Checkout — redesign (owner 2026-09-04, scr 32 «grotesque»). One block, the
 * earlier checkout rules were removed rather than overridden. Storefront's
 * floated 53/41 split and 16px+ typography go; the page becomes a compact
 * form on the left and a sticky order card on the right, one primary action.
 * ======================================================================== */
body.woocommerce-checkout:not(.woocommerce-order-received):not(.woocommerce-order-pay) .site-main {
	font-size: 14.5px;
	line-height: 1.5;
	color: var(--mh-ink);
}
.woocommerce-checkout:not(.woocommerce-order-received):not(.woocommerce-order-pay) .entry-header {
	margin: 6px 0 20px;
	padding: 0;
	text-align: left;
}
.woocommerce-checkout:not(.woocommerce-order-received):not(.woocommerce-order-pay) .entry-title {
	font-size: 26px;
	line-height: 1.2;
	margin: 0;
	letter-spacing: -0.01em;
	text-align: left;
}
.woocommerce-checkout .woocommerce-notices-wrapper .woocommerce-error,
.woocommerce-checkout .woocommerce-NoticeGroup .woocommerce-error {
	font-size: 14px;
}

/* Layout: form | order card */
.woocommerce-checkout form.checkout {
	display: grid;
	grid-template-columns: minmax(0, 1.15fr) minmax(320px, 0.85fr);
	gap: 0 48px;
	align-items: start;
}
.woocommerce-checkout form.checkout::before,
.woocommerce-checkout form.checkout::after {
	display: none;
}
.woocommerce-checkout form.checkout > .woocommerce-NoticeGroup {
	grid-column: 1 / -1;
}
.woocommerce-checkout #customer_details {
	width: auto;
	float: none;
	grid-column: 1;
	grid-row: 1 / span 2;
}
.woocommerce-checkout #order_review_heading {
	width: auto;
	float: none;
	grid-column: 2;
	grid-row: 1;
	margin: 0 0 12px;
}
.woocommerce-checkout #order_review {
	width: auto;
	float: none;
	grid-column: 2;
	grid-row: 2;
	position: sticky;
	top: 20px;
	background: #fff;
	border: 1px solid var(--mh-line);
	border-radius: 12px;
	padding: 16px 18px 18px;
}
.woocommerce-checkout #customer_details .col2-set .col-1,
.woocommerce-checkout #customer_details .col2-set .col-2 {
	width: 100%;
	float: none;
	margin: 0;
}
.woocommerce-checkout #customer_details .col2-set .col-2 {
	margin-top: 8px;
}

/* Section headings */
.woocommerce-checkout #customer_details h3,
.woocommerce-checkout #order_review_heading {
	font-size: 18px;
	font-weight: 800;
	line-height: 1.25;
	margin: 0 0 12px;
	padding: 0;
	letter-spacing: -0.01em;
}
.woocommerce-checkout #ship-to-different-address {
	font-size: 14px;
	font-weight: 600;
}

/* Fields: two per row where WooCommerce marks them so, otherwise full */
.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper,
.woocommerce-checkout .woocommerce-additional-fields__field-wrapper {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 2px 16px;
}
.woocommerce-checkout .form-row {
	float: none;
	width: auto;
	margin: 0 0 10px;
	padding: 0;
}
.woocommerce-checkout .form-row-wide,
.woocommerce-checkout .form-row.notes,
.woocommerce-checkout .form-row[class*="address_1"],
.woocommerce-checkout .form-row[class*="address_2"] {
	grid-column: 1 / -1;
}
.woocommerce-checkout .form-row label {
	display: block;
	font-size: 12.5px;
	font-weight: 600;
	color: var(--mh-muted, #5d6b7a);
	margin: 0 0 4px;
	line-height: 1.3;
}
.woocommerce-checkout .form-row label .required {
	color: #b91c1c;
	text-decoration: none;
}
.woocommerce-checkout .form-row .optional {
	font-weight: 400;
	color: #8895a3;
}
.woocommerce-checkout .form-row .input-text,
.woocommerce-checkout .form-row select,
.woocommerce-checkout .form-row textarea,
.woocommerce-checkout .form-row .select2-container .select2-selection--single {
	width: 100%;
	height: 42px;
	font-size: 14.5px;
	line-height: 1.3;
	padding: 9px 12px;
	border: 1px solid #cfdae4;
	border-radius: 8px;
	background: #fff;
	box-shadow: none;
	color: var(--mh-ink);
}
.woocommerce-checkout .form-row .select2-container .select2-selection--single .select2-selection__rendered {
	line-height: 22px;
	padding-left: 0;
}
.woocommerce-checkout .form-row .select2-container .select2-selection--single .select2-selection__arrow {
	height: 40px;
}
.woocommerce-checkout .form-row textarea {
	height: auto;
	min-height: 84px;
	resize: vertical;
}
.woocommerce-checkout .form-row .input-text:focus,
.woocommerce-checkout .form-row select:focus,
.woocommerce-checkout .form-row textarea:focus {
	border-color: #1a7fc4;
	box-shadow: 0 0 0 3px rgba(26, 127, 196, 0.15);
	outline: 0;
}
.woocommerce-checkout .form-row.woocommerce-invalid .input-text,
.woocommerce-checkout .form-row.woocommerce-invalid select {
	border-color: #b91c1c;
}
.woocommerce-checkout .form-row .woocommerce-input-wrapper {
	display: block;
}
/* The map-pick line under the street field (CustomerProfile) */
.woocommerce-checkout .form-row a[href*="xerite"],
.woocommerce-checkout .form-row .mh-geo-pick,
.woocommerce-checkout .form-row .mh-geo-status {
	font-size: 13px;
}

/* Order card */
.woocommerce-checkout .woocommerce-checkout-review-order-table {
	width: 100%;
	margin: 0 0 14px;
	border: 0;
	border-radius: 0;
	border-collapse: collapse;
	background: transparent;
	font-size: 14px;
}
.woocommerce-checkout .woocommerce-checkout-review-order-table thead {
	display: none;
}
.woocommerce-checkout .woocommerce-checkout-review-order-table th,
.woocommerce-checkout .woocommerce-checkout-review-order-table td {
	padding: 9px 0;
	border: 0;
	border-bottom: 1px solid #eef1f4;
	background: transparent;
	vertical-align: top;
	text-align: left;
	font-weight: 500;
}
.woocommerce-checkout .woocommerce-checkout-review-order-table td.product-total,
.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot td {
	text-align: right;
	white-space: nowrap;
	padding-left: 12px;
}
.woocommerce-checkout .woocommerce-checkout-review-order-table .product-name {
	color: var(--mh-ink);
}
.woocommerce-checkout .woocommerce-checkout-review-order-table .product-quantity {
	color: #5d6b7a;
	font-weight: 500;
}
.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot th {
	color: #5d6b7a;
	font-weight: 600;
}
.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total th,
.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total td {
	font-size: 17px;
	font-weight: 800;
	color: var(--mh-ink);
	border-bottom: 0;
	padding-top: 12px;
}
.woocommerce-checkout .woocommerce-checkout-review-order-table .mh-free-shipping-hint td {
	border-bottom: 0;
	padding: 0 0 4px;
	text-align: left;
	white-space: normal;
	color: #5d6b7a;
	font-size: 12.5px;
	line-height: 1.45;
}
.woocommerce-checkout .woocommerce-checkout-review-order-table .mh-free-shipping-hint--won td {
	color: #2a7a1f;
}

/* Payment + terms + the one button */
.woocommerce-checkout #payment {
	background: transparent;
	border-radius: 0;
	padding: 0;
	margin: 0;
}
.woocommerce-checkout #payment ul.payment_methods,
.woocommerce-checkout #payment ul.wc_payment_methods {
	margin: 0 0 12px;
	padding: 0 !important;
	border: 0;
	background: transparent !important;
	list-style: none;
}
.woocommerce-checkout #payment ul.payment_methods li {
	border: 1px solid var(--mh-line);
	border-radius: 10px;
	padding: 10px 12px;
	margin: 0 0 8px;
	background: #fbfcfd;
	line-height: 1.4;
}
.woocommerce-checkout #payment ul.payment_methods li:has(input:checked) {
	border-color: var(--mh-blue);
	background: var(--mh-accent-bg);
}
.woocommerce-checkout #payment ul.payment_methods li label {
	display: inline;
	font-size: 14px;
	font-weight: 700;
	cursor: pointer;
}
.woocommerce-checkout #payment ul.payment_methods li img {
	max-height: 22px;
	vertical-align: middle;
	margin-left: 6px;
}
.woocommerce-checkout #payment .payment_box {
	margin: 6px 0 0;
	padding: 0 0 0 26px;
	background: transparent;
	font-size: 13px;
	color: #5d6b7a;
}
.woocommerce-checkout #payment .payment_box::before {
	display: none;
}
.woocommerce-checkout #payment .place-order {
	padding: 0;
	margin: 0;
}
.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper {
	margin: 0 0 12px;
	font-size: 13px;
	line-height: 1.5;
}
.woocommerce-checkout .mh-checkout-terms {
	margin: 0 0 10px;
	padding: 12px 14px;
	font-size: 13px;
	line-height: 1.5;
	border-radius: 10px;
}
.woocommerce-checkout .woocommerce-privacy-policy-text,
.woocommerce-checkout .woocommerce-privacy-policy-text p {
	font-size: 12.5px;
	color: #5d6b7a;
	margin: 0 0 8px;
}
.woocommerce-checkout .validate-required .woocommerce-form__label-for-checkbox {
	font-size: 13.5px;
	font-weight: 600;
	display: flex;
	align-items: flex-start;
}
.woocommerce-checkout #place_order {
	display: block;
	width: 100%;
	margin: 4px 0 0;
	padding: 13px 18px !important;
	font-size: 16px !important;
	font-weight: 800;
	border-radius: 10px !important;
	line-height: 1.3;
}
.woocommerce-checkout .woocommerce-checkout-payment .blockUI.blockOverlay {
	border-radius: 12px;
}

@media (max-width: 900px) {
	.woocommerce-checkout form.checkout {
		grid-template-columns: 1fr;
		gap: 0;
	}
	.woocommerce-checkout #customer_details,
	.woocommerce-checkout #order_review_heading,
	.woocommerce-checkout #order_review {
		grid-column: 1;
		grid-row: auto;
	}
	.woocommerce-checkout #order_review {
		position: static;
		margin-top: 4px;
	}
	.woocommerce-checkout #order_review_heading {
		margin-top: 12px;
	}
}
@media (max-width: 600px) {
	.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
	.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper,
	.woocommerce-checkout .woocommerce-additional-fields__field-wrapper {
		grid-template-columns: 1fr;
	}
	.woocommerce-checkout:not(.woocommerce-order-received):not(.woocommerce-order-pay) .entry-title {
		font-size: 22px;
	}
	.woocommerce-checkout #order_review {
		padding: 14px;
	}
}

/* Panel — design board 2026-09-04: «Son satışlar» filled the side column to
   the page bottom (the list was the flexible part of the card). Audit
   2026-10-12 (C-9): since b7 the Panel is stacked (.mh-pa--ordered is a
   block) and nothing stretches the card any more — the flexible list
   (flex:1 1 0) collapsed to 0 px on desktop and the page script hid every
   row. The list takes its rows' height at every width; the script shows at
   most 8 rows (overflow:hidden stays the no-JS fallback). */
.mh-pa__recent-list{flex:0 0 auto;min-height:0;overflow:hidden}
.mh-pa__recent-list .mh-pa__sale[hidden]{display:none}

/* Customer Sifarişlər — owner 2026-09-04 (scr 28): a return of sold goods is
   a sub-row under its order, not a storage movement. */
.mh-orders-sub > td{padding:6px 14px 8px 26px!important;background:#fbfcfd;border-top:0!important}
.mh-orders-sub__row{display:flex;align-items:center;gap:10px 14px;flex-wrap:wrap;font-size:.93em}
.mh-orders-sub__arrow{color:#8895a3}
.mh-orders-sub__kind{color:#5d6b7a}
.mh-orders-sub__num{white-space:nowrap}
.mh-orders-sub__date{color:#8895a3;white-space:nowrap}
.mh-orders-sub__amt{margin-left:auto;font-weight:700;white-space:nowrap;color:#b3312d}
.mh-orders-sub.is-ok .mh-orders-sub__amt{color:var(--mh-green-dark,#1d8a55)}
.mh-orders-sub__act:empty{display:none}
.mh-orders-sub__act .button{padding:4px 12px;font-size:.9em}
@media (max-width:768px){
	.shop_table_responsive .mh-orders-sub > td::before{display:none}
	.mh-orders-sub__amt{margin-left:0;flex-basis:100%}
}

/* ---- Owner 2026-09-05: the sliding switch (Poçt qutusu | Göndərilənlər) and the assistant's mic ---- */
.mh-seg{position:relative;display:inline-flex;align-items:stretch;background:#e9eff4;border-radius:999px;padding:3px;isolation:isolate;vertical-align:middle}
.mh-seg__opt{position:relative;z-index:1;flex:1 1 0;min-width:150px;text-align:center;padding:6px 16px;border-radius:999px;font-weight:700;font-size:13.5px;line-height:1.3;color:#5d6b7a;text-decoration:none!important;transition:color .2s;white-space:nowrap}
.mh-seg__opt.is-on{color:#fff}
.mh-seg__opt .mh-inbox__badge{margin-left:5px}
.mh-seg__opt.is-on .mh-inbox__badge{background:rgba(255,255,255,.28)}
.mh-seg__thumb{position:absolute;z-index:0;top:3px;bottom:3px;left:3px;width:calc(50% - 3px);border-radius:999px;background:#0f6aa8;box-shadow:0 1px 3px rgba(15,106,168,.35);transition:transform .28s cubic-bezier(.4,0,.2,1)}
.mh-seg.is-second .mh-seg__thumb{transform:translateX(100%)}
.mh-pa__h .mh-seg{font-size:13.5px}
@media (max-width:640px){.mh-pa__h .mh-seg{width:100%;order:-1}.mh-seg__opt{min-width:0}}
.mh-ai__mic{border:0;border-radius:8px;background:#eaf5fd;color:#0f6aa8;padding:0 10px;font-size:16px;cursor:pointer;line-height:1}
.mh-ai__mic.is-on{background:#b91c1c;color:#fff;animation:mh-mic-pulse 1s ease-in-out infinite}
.mh-ai__mic[hidden]{display:none}
.mh-ai--staff .mh-ai__mic{background:#e2e8f0;color:#1e293b}
.mh-ai--staff .mh-ai__mic.is-on{background:#b91c1c;color:#fff}
@keyframes mh-mic-pulse{50%{opacity:.55}}

/* ---- Owner 2026-09-05 (scr 66): Sifarişlər — «Müvəqqəti saxlama | Ödənişlər» switch, one table at a time ---- */
.mh-seg__count{display:inline-block;min-width:20px;padding:1px 6px;border-radius:10px;background:#cfdae4;color:#16232e;font-size:12px;font-weight:800;line-height:1.4;text-align:center}
.mh-seg__opt.is-on .mh-seg__count{background:rgba(255,255,255,.28);color:#fff}
.mh-pane[hidden]{display:none}
.mh-pane__empty{color:#5d6b7a;margin:6px 0 14px}
/* Owner 2026-09-05 (scr 67/68): the customer's movement card + clickable movement rows. */
.mh-mv-rowlink{cursor:pointer}
.mh-mv-rowlink:hover>td,.mh-mv-rowlink:focus-visible>td{background:#f4f8fb}
.mh-mv-card{margin:0 0 1.6em}
.mh-mv-card__back{font-weight:600;text-decoration:none}
.mh-mv-card__title{margin:.2em 0 .4em}
.mh-mv-card__title small{display:block;font-size:.7em;color:#5d6b7a;font-weight:400;margin-top:3px}
.mh-mv-card__lines{margin:12px 0 6px}
.mh-mv-card__total{text-align:right;margin:0 0 6px}
.mh-mv-steps{list-style:none;margin:14px 0 0;padding:0;counter-reset:mvs}
.mh-mv-steps>li{position:relative;padding:12px 0 12px 46px;border-top:1px solid #e6ebf0;counter-increment:mvs}
.mh-mv-steps>li::before{content:counter(mvs);position:absolute;left:0;top:12px;width:28px;height:28px;border-radius:50%;background:#e9eff4;color:#3b4a5a;font-weight:700;text-align:center;line-height:28px;font-size:13px}
.mh-mv-steps>li.is-done::before{content:"✓";background:#1f9d55;color:#fff}
.mh-mv-steps>li.is-on::before{background:var(--mh-blue,#1789d6);color:#fff}
.mh-mv-steps>li.is-future{color:#8895a3}
.mh-mv-steps__h{font-weight:700;margin:0 0 4px}
.mh-mv-steps__muted{color:#6b7885;font-size:.94em;margin:4px 0 0}
.mh-mv-steps p{margin:4px 0}
.mh-mv-steps .mh-movements__op{display:inline}
.mh-mv-steps .mh-ol-pill{vertical-align:middle}
/* Owner 2026-09-05 (scr 71): register sub-rows — a return under its order, a fee payment under its handover. */
/* Owner 2026-09-06 (scr 106/112): no vertical bar on a sub-row — the tint and the arrow say it. */
tr.mh-row-sub>td{background:#fbfcfd}
tr.mh-row-sub>td:first-child::before{content:"↳ ";color:#8895a3}
/* Owner 2026-09-05 (scr 90/95): the act inside the customer's card; goods before numbers. */
.mh-mv-act{width:100%;height:640px;border:1px solid #dde4ea;border-radius:8px;background:#fff;margin:6px 0 8px}
.mh-ord__goods{display:block;font-weight:600;line-height:1.3}
.mh-ord__no{display:block;color:#8895a3;font-weight:400;font-size:.82em;margin-top:2px}
.mh-movements__table .mh-ord__goods{max-width:340px}
.mh-agd__goods{font-weight:700;font-size:15px;line-height:1.35;margin-bottom:2px}
.mh-agd__who{font-weight:600;color:#1f2d3a;margin-bottom:4px}
.mh-agd__t small{font-size:12px;color:#8895a3}

/* Owner 2026-09-06 (scr 106): register numbers never break mid-token; the
   «səbət N» tag sits under the number. */
.mh-reg-num { white-space: nowrap; }
.mh-reg-chip { display: block; font-size: .78em; color: #6b7785; white-space: nowrap; }
/* Owner 2026-09-06 (rule A): the delivery-fee invoice line on the order page. */
.mh-vo__feeinv { display: block; margin-top: 4px; font-size: .92em; color: #4a5561; }
/* Owner 2026-09-06 (scr 99/100): the administrator's reduced access form. */
.mh-access-form--admin .mh-acc2__frow code { font-size: .95em; }

/* Owner 2026-09-06 (scr 109): the new-person row must never widen the Şəxslər table past its card — no scroller. */
.mh-acc2__people{table-layout:fixed;width:100%}
.mh-acc2__newrow .mh-acc2__inp{width:100%;max-width:100%;box-sizing:border-box;min-width:0}
.mh-acc2__people td,.mh-acc2__people th{overflow-wrap:anywhere}

/* Owner 2026-09-06 (agent-sections board, approved): Ehtiyatım / Hərəkətlərim — header row, in-section panels, filter chips, movement kinds. */
.mh-agd__hdr{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:0 0 10px}.mh-agd__hdr .mh-panel-h{margin:0}
.mh-agd__cta--right{margin:0 0 0 auto}
.mh-agd__panel{border:1px solid #cfe3f5;background:#f6fbff;border-radius:12px;padding:14px 16px;margin:6px 0 16px}.mh-agd__panel-h{margin:0 0 6px;font-size:15px}
.mh-agd__chips{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:8px 0 10px}
.mh-agd__chips button{border:1px solid #dde4ea;background:#fff;border-radius:999px;padding:4px 12px;font-size:12.5px;cursor:pointer;color:#4a5561}
.mh-agd__chips button.is-on{background:#e8f3fc;color:#1789d6;border-color:#bcd9f2}
.mh-agd__chips input{margin-left:auto;border:1px solid #dde4ea;border-radius:8px;padding:5px 10px;min-width:220px;font-size:13px}
.mh-agd__chip--info{background:#e8f3fc;color:#1789d6}
.mh-agd__ret label{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}
.mh-agd__kind{display:inline-block;border-radius:6px;padding:1px 7px;font-size:11.5px;font-weight:600;white-space:nowrap}
.mh-agd__kind--satis{background:#e6f6ec;color:#1d9a5b}.mh-agd__kind--aldim{background:#f1ecfb;color:#6b46c1}.mh-agd__kind--qaytardim{background:#eef1f5;color:#4a5561}
@media (max-width:640px){.mh-agd__cta--right{margin-left:0;width:100%}.mh-agd__chips input{margin-left:0;width:100%}.mh-agd__hdr .mh-agd__new{display:inline-block}}

/* Jurnal (owner 2026-09-06, board approved): one switcher, three views; area chips; notification rows with targets. */
.mh-jr__hd{display:flex;align-items:flex-end;gap:16px;flex-wrap:wrap;margin:0 0 14px}.mh-jr__title{margin:0;font-size:22px}.mh-jr__hd p{margin:2px 0 0}
.mh-jr__seg{margin-left:auto;display:inline-flex;border:1px solid #e3e8ee;border-radius:10px;overflow:hidden;background:#fff}
.mh-jr__seg a{padding:8px 14px;color:#6b7785;text-decoration:none;font-size:13.5px;border-right:1px solid #e3e8ee}.mh-jr__seg a:last-child{border-right:0}.mh-jr__seg a.is-on{background:#1789d6;color:#fff}.mh-jr__seg a small{opacity:.8;margin-left:4px}
.mh-jr__chips{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:0 0 12px}.mh-jr__chip{border:1px solid #e3e8ee;border-radius:999px;padding:4px 11px;font-size:12.5px;color:#6b7785;background:#fff;text-decoration:none}.mh-jr__chip.is-on{background:#e8f3fc;color:#1789d6;border-color:#bcd9f2}.mh-jr__chip small{opacity:.8}.mh-jr__chip--p{border-style:dashed}.mh-jr__sp{flex:1}
.mh-jr__who{margin:0}.mh-jr__who select{border:1px solid #e3e8ee;border-radius:8px;padding:5px 8px;font-size:13px}
.mh-jr__area{display:inline-block;border-radius:6px;padding:1px 7px;font-size:11px;font-weight:600;margin-right:4px;white-space:nowrap}
.mh-jr__area--sifaris{background:#e8f3fc;color:#1789d6}.mh-jr__area--sened{background:#eef1f5;color:#4a5561}.mh-jr__area--anbar{background:#e6f6ec;color:#1d9a5b}.mh-jr__area--musteri{background:#fdf0e6;color:#b35c00}.mh-jr__area--bildiris{background:#fff4e0;color:#d98a00}.mh-jr__area--maliyye{background:#e9f7f5;color:#0f766e}.mh-jr__area--sistem{background:#f1ecfb;color:#6b46c1}
.mh-jr__ai{display:grid;grid-template-columns:1.4fr .8fr;gap:16px}
.mh-jr__dg{border:1px solid #e3e8ee;border-radius:12px;padding:16px;background:#fff;margin:0 0 12px}.mh-jr__dg--warn{border-color:#f3d9a4}.mh-jr__dg--bad{border-color:#f3c9c9}.mh-jr__dg--fail{border-color:#f3c9c9;background:#fffafa}
.mh-jr__dgtext{margin:10px 0 0;line-height:1.55}.mh-jr__dgact{margin:0 0 12px}
.mh-jr__sev{display:inline-block;border-radius:8px;padding:3px 10px;font-weight:600;font-size:12px}.mh-jr__sev--warn{background:#fff4e0;color:#d98a00}.mh-jr__sev--ok{background:#e6f6ec;color:#1d9a5b}.mh-jr__sev--bad{background:#fdecec;color:#c93b3b}
.mh-jr__dot{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:8px;vertical-align:middle;flex:none}.mh-jr__dot--ok{background:#1d9a5b}.mh-jr__dot--warn{background:#d98a00}.mh-jr__dot--bad{background:#c93b3b}.mh-jr__dot--info{background:#1789d6}
.mh-jr__old{border-top:1px solid #e3e8ee;padding:8px 0}.mh-jr__old summary{cursor:pointer}.mh-jr__oldbody{padding:8px 10px;background:#f8fafc;border-radius:8px;margin-top:6px;font-size:13px}
.mh-ntfl-list{border:1px solid #e3e8ee;border-radius:12px;background:#fff;overflow:hidden}
.mh-ntfl{display:flex;gap:12px;padding:10px 16px;border-bottom:1px solid #e3e8ee;align-items:flex-start}.mh-ntfl:last-child{border-bottom:0}.mh-ntfl.is-unread{background:#fbfdff}.mh-ntfl.is-focus{background:#fff8e6}
.mh-ntfl .mh-jr__dot{margin-top:7px}.mh-ntfl__b{flex:1;min-width:0}.mh-ntfl__b b{display:block}.mh-ntfl__b>span{color:#6b7785;font-size:12.5px}.mh-ntfl__to{margin-top:3px;font-size:13px}.mh-ntfl__r{white-space:nowrap;color:#6b7785;font-size:12px;text-align:right}.mh-jr__cat{border:1px solid #e3e8ee;border-radius:999px;padding:1px 8px;font-size:11.5px}.mh-ntfl__new{color:#1789d6;font-style:normal;font-weight:600}
.mh-jr__table td{vertical-align:top}
@media(max-width:800px){.mh-jr__ai{grid-template-columns:1fr}.mh-jr__seg{margin-left:0;width:100%}.mh-jr__seg a{flex:1;text-align:center}.mh-ntfl{flex-wrap:wrap}.mh-ntfl__r{text-align:left;width:100%;padding-left:21px}}

/* Şirkətlər (owner 2026-09-06, board v3 approved): table, card, category card, forms. */
.mh-co__toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 10px}.mh-co__sp{flex:1}
/* Owner 2026-09-07 (scr 1): title + period on one row at one gap; the four buttons on their own row. */
.mh-co__toolbar--title{gap:14px;margin-bottom:8px}.mh-co__actions{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 12px}
/* Owner 2026-09-07 (scr 3): the category's own characteristics editor. */
.mh-co__tplwrap.is-hidden{display:none}.mh-co__attrs-t input[type=text],.mh-co__attrs-t input[type=number],.mh-co__attrs-t select{width:100%;min-width:0;border:1px solid #dde4ea;border-radius:8px;padding:5px 8px;font-size:13px}.mh-co__attrs-t .mh-co__attr-range{display:none;white-space:nowrap}.mh-co__attrs-t .mh-co__attr-range input{width:5.5em;display:inline-block}.mh-co__attrs-t tr.is-range .mh-co__attr-range{display:inline}.mh-co__attrs-t tr.is-range .mh-co__attr-list{display:none}.mh-co__attrs-t td{vertical-align:middle}.mh-co__attrs-ro li b{margin-right:4px}
/* Owner 2026-09-07 (scr 4): the transfer form — prefill row, per-unit serial dropdowns, running total. */
.mh-co__pref{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:8px 0 4px}.mh-co__pref label{font-size:12.5px;color:#6b7785}.mh-co__pref .mh-muted{font-size:12px;flex-basis:100%}
#mh-co-lines .mh-co__nm{display:block;font-size:13px}#mh-co-lines .mh-co__bal{display:block}#mh-co-lines .mh-co__ser select{display:block;margin:0 0 3px;border:1px solid #dde4ea;border-radius:6px;padding:3px 6px;font-size:12.5px;max-width:14em}#mh-co-lines td.num,#mh-co-lines th.num{text-align:right;white-space:nowrap}#mh-co-lines .mh-co__sku{min-width:10em}#mh-co-lines td{vertical-align:top}
.mh-co__seg{display:inline-flex;border:1px solid #e3e8ee;border-radius:10px;overflow:hidden;background:#fff}.mh-co__seg a{padding:6px 12px;color:#6b7785;text-decoration:none;font-size:13px;border-right:1px solid #e3e8ee}.mh-co__seg a:last-child{border-right:0}.mh-co__seg a.is-on{background:#1789d6;color:#fff}
.mh-co__hint{margin:0 0 10px;font-size:12.5px}
.mh-co__table th small{display:block;font-weight:500;color:#8895a3;font-size:11px}.mh-co__table td.num,.mh-co__table th.num{text-align:right;white-space:nowrap}
.mh-co__code{display:inline-block;min-width:26px;text-align:center;border-radius:6px;padding:2px 6px;font-size:11.5px;font-weight:800;margin-right:8px;background:#eef1f5;color:#4a5561;vertical-align:middle}
.mh-co__code--sn{background:#e8f3fc;color:#1789d6}.mh-co__code--vc{background:#e6f6ec;color:#1d9a5b}.mh-co__code--am{background:#fdecec;color:#c93b3b}.mh-co__code--ae{background:#f1ecfb;color:#6b46c1}.mh-co__code--mh{background:#e9f7f5;color:#0f766e}
.mh-co__name{font-weight:700;text-decoration:none;color:#14202b}.mh-co__sm{display:block;color:#8895a3;font-size:11.5px;margin-top:2px}.mh-co__cats{display:block;margin-top:5px}
.mh-co__cat{display:inline-block;border-radius:999px;padding:2px 9px;font-size:11.5px;background:#fdf0e6;color:#b35c00;text-decoration:none;margin:0 4px 4px 0}.mh-co__cat--big{font-size:14px;padding:5px 12px}
.mh-co__pill{display:inline-block;border-radius:999px;padding:2px 8px;font-size:11px;background:#eef1f5;color:#4a5561;font-weight:600;vertical-align:middle}.mh-co__pill.is-ok{background:#e6f6ec;color:#1d9a5b}
.mh-co__sw{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;color:#6b7785}.mh-co__sw i{width:30px;height:16px;border-radius:999px;background:#cfd6de;position:relative;display:inline-block}.mh-co__sw i::after{content:"";position:absolute;top:2px;left:2px;width:12px;height:12px;border-radius:50%;background:#fff}.mh-co__sw.is-on i{background:#1d9a5b}.mh-co__sw.is-on i::after{left:16px}.mh-co__sw.is-on{color:#1d9a5b;font-weight:600}
.mh-co__swform{display:inline;margin:0}.mh-co__swbtn{background:none;border:0;padding:0;cursor:pointer;font:inherit;text-align:left}.mh-co__swwrap{display:inline-flex;flex-direction:column;align-items:flex-start}
.mh-co__total td{border-top:2px solid #e3e8ee}.mh-co__passive td{opacity:.6}
.mh-co__ctabs{display:flex;gap:4px;flex-wrap:wrap;border-bottom:1px solid #e3e8ee;margin:0 0 14px}.mh-co__ctabs a{padding:8px 12px;color:#6b7785;text-decoration:none;font-size:13.5px;border-bottom:2px solid transparent}.mh-co__ctabs a.is-on{color:#1789d6;border-bottom-color:#1789d6;font-weight:600}
.mh-co__two{display:grid;grid-template-columns:1fr 1fr;gap:16px}.mh-co__card{border:1px solid #e3e8ee;border-radius:12px;padding:16px;background:#fff;margin:0 0 14px}
.mh-co__form{display:grid;grid-template-columns:1fr 1fr;gap:10px 14px}.mh-co__form .wide{grid-column:1 / -1}.mh-co__form label{display:block;font-size:11.5px;color:#6b7785;margin:0 0 3px}.mh-co__form input[type=text],.mh-co__form input[type=number],.mh-co__form select{width:100%;border:1px solid #dde4ea;border-radius:8px;padding:6px 9px;font-size:13.5px}.mh-co__form input[type=number]{width:auto}.mh-co__form label.mh-co__chk{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:#14202b;margin-right:12px}
.mh-co__ro{padding:6px 0;font-size:13.5px}.mh-co__inline{display:inline-flex;gap:8px;align-items:center;margin:0}.mh-co__list{list-style:none;padding:0;margin:0}.mh-co__list li{padding:6px 0;border-bottom:1px solid #eef1f4}
.mh-stock-owners{width:100%;font-size:12.5px;margin:2px 0}.mh-stock-owners th{color:#6b7785;font-weight:600;text-align:left;padding:4px 8px}.mh-stock-owners td{padding:4px 8px;background:#fbfcfd}.mh-stock-owners .num{text-align:right}
@media (max-width:800px){.mh-co__two,.mh-co__form{grid-template-columns:1fr}.mh-co__seg{width:100%}.mh-co__seg a{flex:1;text-align:center}}
/* Şirkətlər → Satıcı seçimi (owner 2026-09-06) + the storefront's «sellers out» notice. */
.mh-sel__table td,.mh-sel__table th{vertical-align:middle}.mh-sel__cat td{background:#f6f8fa}.mh-sel__note{font-size:12px;color:#6b7785}
.mh-sel__flag{display:inline-block;border-radius:999px;padding:1px 8px;font-size:11px;background:#eef1f5;color:#4a5561;margin:0 4px 2px 0}.mh-sel__flag.is-warn{background:#fff4e0;color:#b35c00}.mh-sel__flag.is-crit{background:#fdecec;color:#c93b3b}
.mh-sel__bar{display:block;height:4px;background:#eef1f5;border-radius:2px;margin-top:3px;min-width:80px}.mh-sel__bar i{display:block;height:4px;background:#1789d6;border-radius:2px}
.mh-sel__ov{gap:6px;flex-wrap:wrap}.mh-sel__ov select,.mh-sel__ov input{border:1px solid #dde4ea;border-radius:8px;padding:4px 8px;font-size:12.5px}
.mh-sel__trace{margin:4px 0 8px 18px;font-size:13px}.mh-sel__trace li{margin:2px 0}

/* Owner 2026-09-27 (board «Satıcılar», approved): the sellers of a category — the rows are the priority order,
   «Kataloq» / «Agent» are switches per seller, «Masa» is always open. One grid on the desktop, a card per seller
   on the phone. */
.mh-sat{border:1px solid #e3e8ee;border-radius:12px;background:#fff;margin:0 0 14px;overflow:hidden}
.mh-sat__head{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;padding:12px 16px;background:#f6f8fa;border-bottom:1px solid #e3e8ee}
.mh-sat__head b{font-size:15px}
.mh-sat__mode{margin-left:auto;display:inline-flex;border:1px solid #cfd9e7;border-radius:999px;overflow:hidden;background:#fff}
form.mh-sat .mh-sat__mode label{display:block;margin:0;cursor:pointer}
.mh-sat__mode input{position:absolute;opacity:0;width:1px;height:1px}
.mh-sat__mode span{display:block;padding:5px 13px;font-size:12.5px;font-weight:600;color:#5d6d82}
.mh-sat__mode input:checked+span{background:#2f6fd0;color:#fff}
.mh-sat__mode input:focus-visible+span{outline:2px solid #2f6fd0;outline-offset:-2px}
.mh-sat__cols,.mh-sat__row{display:grid;grid-template-columns:96px minmax(150px,1.3fr) 96px 96px 96px 128px minmax(150px,1.1fr) minmax(130px,1fr);gap:0 12px;align-items:center;padding:0 16px}
.mh-sat__cols{padding-top:9px;padding-bottom:9px;font-size:11.5px;font-weight:600;color:#6b7785;border-bottom:1px solid #e3e8ee}
.mh-sat__cols .num,.mh-sat__row .num{text-align:right;font-variant-numeric:tabular-nums}
.mh-sat__row{padding-top:11px;padding-bottom:11px;border-bottom:1px solid #eef1f4;font-size:13.5px}
.mh-sat__rows .mh-sat__row:last-child{border-bottom:0}
.mh-sat__prio{display:inline-flex;align-items:center;gap:5px}
.mh-sat__prio b{width:24px;height:24px;border-radius:50%;background:#2f6fd0;color:#fff;display:inline-grid;place-items:center;font-size:12.5px}
.mh-sat__prio button{width:26px;height:26px;padding:0;border:1px solid #cfd9e7;border-radius:6px;background:#fff;color:#41526a;font-size:11px;line-height:1;cursor:pointer}
.mh-sat__prio button:hover{background:#eef3fb}
.mh-sat__prio button:disabled{opacity:.35;cursor:default}
.mh-sat__prio button:focus-visible{outline:2px solid #2f6fd0;outline-offset:2px}
.mh-sat__co{font-weight:600;min-width:0}
.mh-sat__units small,.mh-sat__meter small{color:#6b7785;font-weight:400}
.mh-sat__meter small{display:block;font-size:11px;margin-top:2px}
.mh-sat__meter .mh-sel__bar.is-over i{background:#c93b3b}
/* One class heavier than the cabinet's own «label{display:block}»: the switch track is an inline box otherwise and has no size. */
form.mh-sat label.mh-sat__sw,form.mh-sat span.mh-sat__sw{position:relative;display:inline-flex;align-items:center;gap:7px;margin:0;cursor:pointer;font-size:12.5px;color:#41526a}
.mh-sat__sw input{position:absolute;opacity:0;width:1px;height:1px}
form.mh-sat .mh-sat__sw i{display:inline-block;flex:none;width:38px;height:22px;border-radius:999px;background:#c9d3e1;position:relative;transition:background .15s}
.mh-sat__sw i::after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 2px rgba(0,0,0,.25);transition:transform .15s}
form.mh-sat .mh-sat__sw input:checked+i{background:#2f9e62}
.mh-sat__sw input:checked+i::after{transform:translateX(16px)}
.mh-sat__sw input:focus-visible+i{outline:2px solid #2f6fd0;outline-offset:2px}
.mh-sat__sw input:disabled+i{opacity:.55}
/* «Masa» is not a switch (owner 2026-09-27: a greyed toggle read as «deactivated») — a plain statement. */
.mh-sat__desk{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:999px;font-size:12px;font-weight:600;white-space:nowrap;cursor:help}
.mh-sat__desk.is-on{background:#e6f6ec;color:#1d7a4a}
.mh-sat__desk.is-off{background:#eef1f5;color:#6b7785}
.mh-sat__desk-l{display:none;font-weight:400;color:#41526a}
form.mh-sat .mh-sat__sw>span{display:none}
.mh-sat__pin{display:none;padding:10px 16px;border-top:1px solid #eef1f4;font-size:12.5px;color:#41526a}
.mh-sat[data-mode="rules"] .mh-sat__pin{display:block}
.mh-sat__pin select{border:1px solid #dde4ea;border-radius:8px;padding:4px 8px;font-size:12.5px;margin-left:6px}
.mh-sat__foot{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;padding:12px 16px;background:#f6f8fa;border-top:1px solid #e3e8ee;font-size:12.5px}
.mh-sat__foot input[type=password]{border:1px solid #dde4ea;border-radius:8px;padding:6px 10px;font-size:13px;width:12em;background:#fff}
.mh-sat--one .mh-sat__prio b{background:#9aa7b4}
@media (prefers-reduced-motion:reduce){.mh-sat__sw i,.mh-sat__sw i::after{transition:none}}
@media (max-width:1020px){
	.mh-sat__cols{display:none}
	.mh-sat__row{grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"prio co units" "sw1 sw2 sw3" "meter meter flags";gap:10px 12px;padding:14px 16px}
	.mh-sat__prio{grid-area:prio}
	.mh-sat__co{grid-area:co}
	.mh-sat__units{grid-area:units}
	.mh-sat__row>.mh-sat__sw:nth-of-type(1){grid-area:sw1}
	.mh-sat__row>.mh-sat__sw:nth-of-type(2){grid-area:sw2}
	.mh-sat__row>.mh-sat__desk{grid-area:sw3;justify-self:start}
	.mh-sat__desk-l{display:inline}
	.mh-sat__meter{grid-area:meter;text-align:left}
	.mh-sat__flags{grid-area:flags;text-align:right}
	form.mh-sat .mh-sat__sw>span{display:inline}
	.mh-sat__mode{margin-left:0}
	.mh-sat__foot input[type=password]{font-size:16px;width:100%}
	.mh-sat__foot .button{width:100%}
}
.mh-sellers-out{border:1px solid #f3d9a4;background:#fff8e6;border-radius:10px;padding:10px 14px;margin:10px 0}.mh-sellers-out p{margin:0}

/* Owner 2026-09-08: agent delivery tasks (accept → deliver → undo), the customer's cancel / undo, the return form. */
.mh-agd__card--new{border-left-color:#f59e0b;background:#fffbeb}
.mh-agd__card--pick{border-left-color:#0e9f6e}
.mh-agd__kindtag{font-size:12px;font-weight:700;color:#0e9f6e;margin-bottom:4px}
.mh-agd__gate{margin-top:8px;padding:10px 12px;border:1px dashed #f59e0b;border-radius:10px;background:#fff}
.mh-agd__st--ok{color:#1e7e34;font-weight:600}
.mh-agd__undo{background:#fff!important;color:#b7791f!important;border:1px solid #f0d58c!important}
.mh-agd__act--undo{margin-top:6px}
.mh-vo__undo{font-size:.92em;margin:6px 0 10px}
.mh-vo__undo .button{padding:6px 12px;font-size:.92em}
.mh-movements__side{display:inline-block;margin-left:6px}
.mh-movements__side .button{font-size:12px;padding:4px 10px;background:#fff;color:#4b5563;border:1px solid #d1d5db}
.mh-movements__side .mh-movements__cancel{color:#b91c1c;border-color:#fecaca}
.mh-movements__side .mh-movements__undo{color:#b7791f;border-color:#f0d58c}
.mh-vo__retform{display:inline-block;vertical-align:top}
.mh-vo__retform>summary{list-style:none;cursor:pointer;display:inline-block}
.mh-vo__retform>summary::-webkit-details-marker{display:none}
.mh-vo__retform[open]{display:block;width:100%;background:#fff;border:1px solid var(--mh-line,#e5e7eb);border-radius:12px;padding:12px 14px;margin-top:8px}
.mh-vo__retform table{width:100%;margin:8px 0}
.mh-hd-undo{margin-top:6px}
/* Owner 2026-09-14 (scr 27): the desk's «Hələ çatdırılmayıb» is a RED button — it takes a stamp back. */
.mh-btn-undo,.woocommerce .mh-btn-undo,.woocommerce button.button.mh-btn-undo{background:#b3312d;border-color:#b3312d;color:#fff}
.mh-btn-undo:hover,.woocommerce .mh-btn-undo:hover,.woocommerce button.button.mh-btn-undo:hover{background:#8f2223;border-color:#8f2223;color:#fff}
/* Owner 2026-09-14 (scr 29/30): a discounted line on the customer's basket page — the original struck, the note. */
.mh-dg__price s{opacity:.55;margin-right:4px}
.mh-dg__disc{font-size:.78em;color:#166534;background:#dcfce7;border-radius:6px;padding:1px 6px;white-space:nowrap;vertical-align:middle}
.mh-hd-cancel summary{color:#b91c1c}
/* Owner 2026-09-10 (scr 5/6): the discreet cancel link under a movement panel's title. */
.mh-icra-cancel-link{margin:-8px 0 14px;font-size:.85em}
.mh-icra-cancel-link a{color:#b91c1c;opacity:.7;text-decoration:none}
.mh-icra-cancel-link a:hover{opacity:1;text-decoration:underline}
.mh-icra-cancel-none{margin:-8px 0 14px;font-size:.85em}
.mh-icra-undo{margin-top:8px}
.mh-agent-task{padding:6px 10px;border-left:3px solid #6b4fd8;background:#f5f3ff;border-radius:6px}
.mh-cdl__open{margin:0 0 18px}
.mh-cdl__open .mh-mv-act{width:100%;min-height:520px;border:1px solid #e5e7eb;border-radius:10px;background:#fff}
.mh-co-scope{margin:0 0 10px;font-size:.95em}

/* Owner 2026-09-08 (Hərəkətlər, Variant 1 approved): one delivery, several
   companies — a rail joins the rows, the fee row ends the group with its own
   dot; the group tag says what a filter hid. */
tr.mh-grp>td:first-child{position:relative;padding-left:24px}
tr.mh-grp>td:first-child::after{content:"";position:absolute;left:6px;top:50%;width:8px;height:8px;margin-top:-4px;border-radius:50%;background:#6b4fd8}
tr.mh-grp--fee>td:first-child::after{left:7px;width:6px;height:6px;margin-top:-3px;background:#0e7c86;box-shadow:0 0 0 2px #fff,0 0 0 3px #0e7c86}
tr.mh-grp>td:first-child::before{content:"";position:absolute;left:9px;width:2px;background:#6b4fd8;color:transparent}
tr.mh-grp--first>td:first-child::before{top:50%;bottom:-1px}
tr.mh-grp--mid>td:first-child::before{top:-1px;bottom:-1px}
tr.mh-grp--last>td:first-child::before{top:-1px;bottom:50%}
tr.mh-grp--only>td:first-child::before{display:none}
tr.mh-grp--fee>td{background:#fafcfd}
.mh-grp-tag{display:block;width:max-content;max-width:100%;background:#f1ecfb;color:#6b4fd8;border-radius:6px;padding:1px 7px;font-size:11px;font-weight:700;margin-top:3px;white-space:normal;line-height:1.35}
.mh-grp-tag--fee{background:#e3f5f7;color:#0e7c86}
@media (max-width: 782px) {
	.mh-scroll .mh-staff-table--cards tbody tr.mh-grp{border-left:3px solid #6b4fd8;border-radius:11px}
	.mh-scroll .mh-staff-table--cards tbody tr.mh-grp--first,.mh-scroll .mh-staff-table--cards tbody tr.mh-grp--mid{margin-bottom:3px}
	.mh-scroll .mh-staff-table--cards tbody tr.mh-grp--fee{border-left-color:#0e7c86}
	.mh-scroll .mh-staff-table--cards tbody tr.mh-grp>td:first-child{padding-left:0}
	.mh-scroll .mh-staff-table--cards tbody tr.mh-grp>td:first-child::after{display:none}
	.mh-scroll .mh-staff-table--cards tbody tr.mh-grp>td:first-child::before{position:static;width:auto;background:none;content:attr(data-label);color:var(--mh-muted,#64748b)}
}
/* Owner 2026-09-08 (scr 24–26): a return filed under an order sits inside its
   delivery's group — the rail passes through it, the «↳» stays, no dot. */
tr.mh-grp--thru>td:first-child{padding-left:30px}
tr.mh-grp--thru>td:first-child::after{content:"↳";width:auto;height:auto;margin-top:-9px;left:15px;background:none;box-shadow:none;border-radius:0;font-size:12px;line-height:1.5;color:#8895a3}


/* Owner 2026-09-08 (scr 36–45): the cancellation sequence on every side —
   the request banner with its two answers (desk card + panel), the agent's
   card, the customer's line-by-line request box. */
.mh-cx .mh-cx__form{display:inline-block;margin:6px 8px 0 0;vertical-align:middle}
.mh-cx .mh-cx__form input[type="text"]{padding:6px 8px;border:1px solid var(--mh-line,#e5e7eb);border-radius:8px}
.mh-icra-chip--cx{color:#b03636}
.mh-agd__gate--cx{border-color:#ef4444;background:#fff5f5}
.mh-agd__act--inline{display:inline-flex;gap:6px;align-items:center;flex-wrap:wrap}
.mh-agd__act--inline input[type="text"]{padding:6px 8px;border:1px solid var(--mh-line,#e5e7eb);border-radius:8px;min-width:200px}
.mh-vo__cxbox{margin-top:10px}
.mh-vo__cxsum{list-style:none;cursor:pointer}
.mh-vo__cxsum::-webkit-details-marker{display:none}
.mh-vo__cxsum .mh-vo__cancelbtn{display:inline-block;height:auto;padding:8px 20px}
.mh-vo__cxform{margin-top:10px}
.mh-vo__cxform .mh-vo__cxitems td{padding:6px 4px;vertical-align:middle}
.mh-vo__cxform label{display:flex;gap:8px;align-items:flex-start;cursor:pointer}
.mh-vo__cxform textarea{width:100%;margin-top:6px}
.mh-vo__cxform .mh-vo__cancelbtn{height:auto;padding:10px 20px;margin-top:6px}
/* Owner 2026-09-08 (scr 50): the customer card's orders wear the register's colours. */
.mh-crm-row__value .mh-mv-s{margin-right:6px}
.mh-mv-s--cx{background:#fdf2f8;color:#9d2458;border:1px solid #f5c2dd}
/* Owner 2026-09-08 (scr 33): the discount column of the rəsmiləşdirmə review. */
.mh-no-review__table td.mh-no-disc{white-space:nowrap}
.mh-no-review__table td.mh-no-disc input{padding:4px 6px}
.mh-no-review__table td.is-disc{color:#14663c;font-weight:700}
.mh-no-review__table td.is-up{color:#9a3412;font-weight:700}
.mh-no-review--nodisc .mh-no-disc-h,.mh-no-review--nodisc .mh-no-disc-all{display:none}
.mh-no-disc-all{margin:6px 0 0}
/* Owner 2026-09-08 (scr 47): the list's message summary. */
.mh-wa-summary a{margin-right:4px}

/* ---- Owner design board 2026-09-08 (scr 28/29/30/34/35): one row per delivery,
   «Bax»-sized buttons side by side, category lines, phone cards, the delivery
   page's groups and «+ məhsul» boxes. ---- */
.mh-btns{display:inline-flex;gap:12px;align-items:center;flex-wrap:wrap}
.mh-btns form,.mh-btns .mh-movements__op{display:inline-flex;margin:0}
.woocommerce .mh-btn,.mh-btn{display:inline-flex;align-items:center;justify-content:center;height:36px;min-width:92px;padding:0 16px;border-radius:999px;font-weight:700;font-size:13px;line-height:1;white-space:nowrap;border:1.5px solid transparent;text-decoration:none!important;cursor:pointer;box-shadow:none}
.woocommerce .mh-btn--p,.mh-btn--p{background:#1789d6;color:#fff}
.woocommerce .mh-btn--p:hover,.mh-btn--p:hover{background:#0f6aa8;color:#fff}
.woocommerce .mh-btn--ok,.mh-btn--ok{background:#1f9d55;color:#fff}
.woocommerce .mh-btn--ok:hover,.mh-btn--ok:hover{background:#177f44;color:#fff}
.woocommerce .mh-btn--o,.mh-btn--o{background:#fff;color:#b3312d;border-color:#f0b4b4}
.woocommerce .mh-btn--o:hover,.mh-btn--o:hover{background:#b3312d;color:#fff;border-color:#b3312d}
.woocommerce .mh-btn--g,.mh-btn--g{background:#fff;color:#16232e;border-color:#dfe6ec}
.woocommerce .mh-btn--g:hover,.mh-btn--g:hover{background:#f4f8fb;color:#16232e}
.mh-btn--l{height:44px;padding:0 28px;font-size:14px}
.mh-btn--s{height:30px;min-width:0;padding:0 12px;font-size:12.5px}
.mh-btns .mh-movements__side{margin-left:0}
.mh-btns .mh-movements__side .button{height:36px;min-width:92px;border-radius:999px;font-size:13px;padding:0 16px;display:inline-flex;align-items:center}
.mh-ord__cat{display:block;font-size:.88em;color:#4a5561;line-height:1.35;margin-top:2px}
.mh-ord__cat i{font-style:normal;font-weight:700;color:#6b4fd8;margin-right:4px}
.mh-movements__table .mh-ord__goods,.account-orders-table .mh-ord__goods{max-width:420px}
.woocommerce-orders-table__cell-order-actions{white-space:nowrap;text-align:right}
/* the delivery page */
.mh-dp .mh-dg{border:1px solid #e3e8ee;border-radius:12px;margin:12px 0;overflow:hidden;background:#fff}
.mh-dg__hd{display:flex;justify-content:space-between;align-items:center;gap:10px;background:#f1ecfb;border-bottom:1px solid #e3e8ee;flex-wrap:wrap}
.mh-dg__hd b{color:#6b4fd8}
.mh-dg__sum{color:#6b7785;font-size:.9em;white-space:nowrap}
.mh-dp .mh-dg__t{width:100%;border-collapse:collapse;margin:0;font-size:.95em}
.mh-dp .mh-dg__t th{font-size:.78em;text-transform:uppercase;letter-spacing:.04em;color:#6b7785;font-weight:600;padding:8px 14px;border-bottom:1px solid #e3e8ee;text-align:left}
.mh-dp .mh-dg__t td{padding:9px 14px;border-bottom:1px solid #eef1f5;vertical-align:middle}
.mh-dp .mh-dg__t tr:last-child td{border-bottom:0}
.mh-dg__n{text-align:right;white-space:nowrap}
.mh-dg__t th.mh-dg__n{text-align:right}
.mh-dg__qty{width:4.5em;padding:4px 6px;border:1px solid #dfe6ec;border-radius:6px;text-align:center}
.mh-dg__new td{background:#f6f2ff}
.mh-dg__pill{display:inline-block;padding:1px 8px;border-radius:999px;font-size:11.5px;font-weight:600;background:#efeafc;color:#6b4fd8;vertical-align:middle}
.mh-dg__del{border:0;background:none;color:#7b8a97;cursor:pointer;font-size:15px}
.mh-dg__add{padding:10px 14px;background:#fafcfd;border-top:1px dashed #cfd8e2}
.mh-dg__add-h{font-weight:700;margin-bottom:6px}
.mh-dg__search input{width:100%;max-width:520px;padding:9px 12px;border:1px solid #dfe6ec;border-radius:10px}
.mh-dg__res{margin-top:6px;max-width:520px;background:#fff;border:1px solid #dfe6ec;border-radius:10px;box-shadow:0 8px 24px rgba(0,0,0,.08);overflow:hidden}
.mh-dg__hit{display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:center;padding:8px 12px;border-bottom:1px solid #eef1f5}
.mh-dg__hit:last-child{border-bottom:0}
.mh-dg__hit-n{font-weight:600}.mh-dg__hit-n small{display:block;font-weight:400;color:#7b8a97;font-size:12px}
.mh-dg__hit-p{font-weight:600;white-space:nowrap}
.mh-dg__empty{margin:0;padding:10px 12px;color:#7b8a97}
.mh-dp__fee{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 14px;border:1px solid #e3e8ee;border-radius:12px;background:#e3f5f7;margin:12px 0}
.mh-dp__total{display:flex;justify-content:flex-end;gap:18px;align-items:center;margin:8px 0 4px}
.mh-dp__total b{font-size:1.1em}
.mh-dg__act{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:8px 12px;border:1px solid #e3e8ee;border-radius:10px;margin:6px 0;flex-wrap:wrap}
.mh-dg__sign{margin:8px 0 2px}
.mh-mv-steps>li.is-side{padding-left:0}
.mh-mv-steps>li.is-side::before{display:none}
.mh-mv-steps>li.is-dead::before{content:"✕";background:#fdecec;color:#b3312d}
.mh-dp__cxbox{margin-top:4px}
.mh-dp__cx{margin:8px 0 12px}
.mh-dp__cx-h{font-weight:700;margin:6px 0 2px}
.mh-dp__cx label{display:flex;gap:8px;align-items:center;margin:4px 0}
@media (max-width:640px){.mh-dg__hit{grid-template-columns:1fr auto}.mh-dg__hit-p{grid-column:1/-1}.mh-dp__total{justify-content:space-between}.mh-btn--l{width:100%}
/* phones: the group's lines become cards — name on top, serial · qty · price beneath (board scr 29/30). */
	.mh-dp .mh-dg{overflow:visible}
	.mh-dp .mh-dg__t,.mh-dp .mh-dg__t tbody{display:block;width:100%}
	.mh-dp .mh-dg__t thead{display:none}
	.mh-dp .mh-dg__t tr{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;grid-template-areas:"chk name name name" "chk ser q price";gap:2px 10px;align-items:center;padding:8px 10px;border-bottom:1px solid #eef1f5}
	.mh-dp .mh-dg__t tr:last-child{border-bottom:0}
	.mh-dp .mh-dg__t td{display:block;padding:0!important;border:0!important;min-width:0}
	.mh-dp .mh-dg__t td.mh-dg__chk{grid-area:chk}
	.mh-dp .mh-dg__t td.mh-dg__name{grid-area:name;font-weight:600;overflow-wrap:anywhere}
	.mh-dp .mh-dg__t td.mh-dg__ser{grid-area:ser;font-size:.85em}
	.mh-dp .mh-dg__t td.mh-dg__q{grid-area:q}
	.mh-dp .mh-dg__t td.mh-dg__price{grid-area:price;font-weight:600}
	.mh-dg__hd{flex-direction:column;align-items:flex-start;gap:2px}}
/* phones: the list rows become cards — no label:value stripes (scr 29). One
   class heavier than WooCommerce's sheet (memory note). */
@media (max-width:782px){
	.woocommerce-page table.account-orders-table.shop_table_responsive tr{display:flex;flex-wrap:wrap;gap:4px 10px;border:1px solid #e3e8ee;border-radius:12px;padding:12px;margin:0 0 10px;background:#fff}
	.woocommerce-page table.account-orders-table.shop_table_responsive tr td,.woocommerce-page table.account-orders-table.shop_table_responsive tr th{display:block;text-align:left!important;padding:0!important;border:0!important;background:none!important}
	.woocommerce-page table.account-orders-table.shop_table_responsive tr td::before,.woocommerce-page table.account-orders-table.shop_table_responsive tr th::before{display:none!important;content:none!important}
	/* the tbody must leave table layout too, or the nowrap cells size it to 700 px */
	.woocommerce-page table.account-orders-table.shop_table_responsive tbody{display:block;width:100%}
	.woocommerce-page table.account-orders-table.shop_table_responsive tr{width:100%;box-sizing:border-box}
	.woocommerce-page table.account-orders-table.shop_table_responsive tr td,.woocommerce-page table.account-orders-table.shop_table_responsive tr th{white-space:normal!important;min-width:0;max-width:100%;overflow-wrap:anywhere}
	.woocommerce-page table.account-orders-table.shop_table_responsive .mh-ord__goods,.woocommerce-page table.account-orders-table.shop_table_responsive .mh-ord__cat,.woocommerce-page table.account-orders-table.shop_table_responsive .mh-ord__no{white-space:normal;overflow-wrap:anywhere}
	.mh-dp .mh-dg{overflow-x:auto}
	.mh-dp .mh-dg__t td,.mh-dp .mh-dg__t th{white-space:normal;padding:8px 10px}
	.mh-dg__hd{padding:10px}
	.woocommerce-page table.account-orders-table.shop_table_responsive .woocommerce-orders-table__cell-order-number{flex:1 1 100%;order:1}
	.woocommerce-page table.account-orders-table.shop_table_responsive .woocommerce-orders-table__cell-order-date,.woocommerce-page table.account-orders-table.shop_table_responsive .woocommerce-orders-table__cell-order-kind{order:2;font-size:.85em;color:#6b7785}
	.woocommerce-page table.account-orders-table.shop_table_responsive .woocommerce-orders-table__cell-order-kind::before{content:"· "!important;display:inline!important}
	.woocommerce-page table.account-orders-table.shop_table_responsive .woocommerce-orders-table__cell-order-status{order:3;flex:1 1 auto}
	.woocommerce-page table.account-orders-table.shop_table_responsive .woocommerce-orders-table__cell-order-total{order:4;font-weight:700;font-size:1.05em;margin-left:auto}
	.woocommerce-page table.account-orders-table.shop_table_responsive .woocommerce-orders-table__cell-order-actions{order:5;flex:1 1 100%;margin-top:6px;white-space:normal}
	.woocommerce-page table.account-orders-table.shop_table_responsive .woocommerce-orders-table__cell-order-actions .mh-btns{display:flex;width:100%;gap:10px}
	.woocommerce-page table.account-orders-table.shop_table_responsive .woocommerce-orders-table__cell-order-actions .mh-btns>*,.woocommerce-page table.account-orders-table.shop_table_responsive .woocommerce-orders-table__cell-order-actions .mh-btns form{flex:1 1 0;min-width:0}
	.woocommerce-page table.account-orders-table.shop_table_responsive .woocommerce-orders-table__cell-order-actions .mh-btn,.woocommerce-page table.account-orders-table.shop_table_responsive .woocommerce-orders-table__cell-order-actions .mh-movements__side .button{width:100%;height:40px}
	.woocommerce-page table.account-orders-table.shop_table_responsive thead{display:none}
	.woocommerce-page table.account-orders-table.shop_table_responsive tr.mh-orders-sub{display:block;padding:6px 12px}
	.mh-movements__table .mh-ord__goods,.account-orders-table .mh-ord__goods{max-width:none}
}

/* Owner 2026-09-09 (scr 4): the movements table gives its width to the
   goods column; the status pill is a short label that may wrap. */
@media (min-width: 769px) {
	.woocommerce-account table.mh-movements__table .woocommerce-orders-table__header-order-number,
	.woocommerce-account table.mh-movements__table .woocommerce-orders-table__cell-order-number {
		width: 40%;
	}
	.woocommerce-account table.mh-movements__table .woocommerce-orders-table__header-order-status,
	.woocommerce-account table.mh-movements__table .woocommerce-orders-table__cell-order-status {
		width: 15%;
	}
	.woocommerce-account table.mh-movements__table .woocommerce-orders-table__header-order-kind,
	.woocommerce-account table.mh-movements__table .woocommerce-orders-table__cell-order-kind {
		width: 12%;
	}
	.woocommerce-account table.mh-movements__table .mh-ol-pill {
		white-space: normal;
		display: inline-block;
		line-height: 1.3;
	}
}

/* Owner 2026-09-09 (scr 23): the basket page's one cancel-request button. */
.woocommerce .mh-btn--danger,.mh-btn--danger{background:#b3312d;color:#fff;border-color:#b3312d}
.woocommerce .mh-btn--danger:hover,.mh-btn--danger:hover{background:#8f2223;color:#fff;border-color:#8f2223}
.mh-dp__cxlist{margin:0 0 10px}
.mh-dp__cxlist .mh-dp__cx-h{margin:10px 0 4px;font-weight:700}
.mh-dp__cxline{display:block;margin:4px 0}
.mh-dp__cxnote{width:100%;max-width:420px}

/* Owner 2026-09-17 (scr 3): the group band is a separator — the company and the number small and quiet. */
.mh-dg__hd{padding:8px 14px}
.mh-dg__no{font-size:.8em;color:#8a94a3}
/* Owner 2026-09-17 (scr 4): the thank-you page's two doors fit the rail — smaller, wrapping when they must. */
.mh-ty__actbar{flex-wrap:wrap;min-width:0}
.mh-ty__actbar .mh-vo__pay{flex:1 1 auto;padding:10px 10px;font-size:.9em;min-width:0}
.mh-ty__actbar .mh-vo__cancel{flex:0 1 auto;min-width:0}
.mh-ty__actbar .mh-vo__cancelbtn{padding:9px 10px;font-size:.88em;white-space:nowrap;height:auto}
/* Owner 2026-09-17 (scr 7): on the phone the page's action bar rides ABOVE the cabinet bar, which stays. */
@media (max-width:768px){
body:has(.mh-vo__actbar) .storefront-handheld-footer-bar{display:block !important}
.mh-vo__actbar{bottom:calc(68px + env(safe-area-inset-bottom,0px))}
.mh-vo{padding-bottom:160px}
}

/* 0.83.36 — owner 2026-09-17 (scr 29/30): the «Satışa yararlı» switch inside the Polytech stock table */
/* 0.83.42 — owner 2026-09-17 night (scr 20): tonight's longer states («Ləğv edilib — mal agentdə qalır», «Anbar qəbulu
   gözlənilir») sat in a nowrap pill and pushed Hərəkətlər past the page's right edge. A state may take two lines. */
.mh-staff-table .mh-mv-s{white-space:normal;max-width:15em;border-radius:12px;line-height:1.3;padding:3px 10px}
/* 0.83.40 — owner 2026-09-17 night (scr 14): on the phone the row IS one card — the table's cell hover (blue cells,
   a blue line under each) never stripes it. The .mh-mv tables had this since scr 35; now every card table. */
@media (max-width:782px){
.mh-scroll .mh-staff-table--cards tbody tr[data-mh-href]:hover td,.mh-scroll .mh-staff-table--cards tbody tr:hover>td{background:transparent !important;box-shadow:none !important}
}
/* 0.83.37 — owner 2026-09-17 night (scr 5): the cell is a dropdown; the other value swaps it for the password box + ✓ / ✕ */
.mh-fit{display:inline-flex;align-items:center;gap:4px;white-space:nowrap;margin:0}
.mh-fit [hidden]{display:none !important}
.mh-staff .mh-fit__sel{width:auto;min-width:4.6em;min-height:0;height:32px;padding:2px 24px 2px 10px;font-size:.92em;font-weight:600;line-height:1.2;border:1px solid #cfd8e3;border-radius:8px;background-color:#fff;color:#14532d;cursor:pointer}
.mh-staff .mh-fit--no .mh-fit__sel{color:#b42318;border-color:#f3c4bf;background-color:#fff6f5}
.mh-fit__confirm{display:inline-flex;align-items:center;gap:4px}
.mh-staff .mh-fit__pass{width:7em;min-height:0;height:32px;padding:2px 8px;font-size:.9em;border:1px solid #4a86d8;border-radius:8px;background:#fff;box-shadow:0 0 0 3px rgba(74,134,216,.15)}
.mh-fit__pw{position:relative;display:inline-flex;align-items:center}
.mh-staff .mh-fit__pw .mh-fit__pass{width:9em;padding-right:30px}
.mh-staff .mh-fit__pw .show-password-input{position:absolute;top:50%;right:4px;transform:translateY(-50%);width:24px;height:24px;min-height:0;padding:0;margin:0;border:0;border-radius:6px;background:transparent;color:#5b6b82;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}
.mh-staff .mh-fit__pw .show-password-input::after{font-size:13px;position:static;margin:0}
.mh-staff .mh-fit__ok,.mh-staff .mh-fit__no{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;width:30px;height:30px;min-height:0;padding:0;border:0;border-radius:50%;font-size:.95em;line-height:1;cursor:pointer}
.mh-staff .mh-fit__ok{background:#1f8a4c;color:#fff}
.mh-staff .mh-fit__ok:hover{background:#17703d}
.mh-staff .mh-fit__no{background:#eef1f5;color:#47546a}
.mh-staff .mh-fit__no:hover{background:#e0e5ec}
@media (max-width:768px){
.mh-staff .mh-fit__sel,.mh-staff .mh-fit__pass{height:40px;font-size:16px}
.mh-staff .mh-fit__pw .mh-fit__pass{width:9.5em;padding-right:36px}
.mh-staff .mh-fit__pw .show-password-input{width:32px;height:32px}
/* the phone card: the dropdown sits beside its label; the asking state takes the row under it */
.mh-scroll .mh-staff-table--cards tbody td:has(.mh-fit){align-items:center}
.mh-scroll .mh-staff-table--cards tbody td:has(.mh-fit--ask){flex-wrap:wrap}
.mh-staff .mh-fit--ask{width:100%;justify-content:flex-end;margin-top:4px}
.mh-staff .mh-fit--ask .mh-fit__confirm{width:100%}
.mh-staff .mh-fit--ask .mh-fit__pw{flex:1 1 auto}
.mh-staff .mh-fit--ask .mh-fit__pw .mh-fit__pass{width:100%}
.mh-staff .mh-fit__ok,.mh-staff .mh-fit__no{width:40px;height:40px;font-size:1.05em}
}

/* ------------------------------------------------------------------ *
 * The customer's ONE table (owner 2026-09-20, scr 43/45)
 * Movements and orders together; the column titles are the filters.
 * ------------------------------------------------------------------ */
.mh-cabtable__filterrow th {
	padding: 6px 8px;
	vertical-align: middle;
}
.mh-cabtable__f {
	width: 100%;
	min-width: 0;
	padding: 5px 8px;
	border-radius: 6px;
	font-size: 13px;
	line-height: 1.3;
	background: #fff;
}
.mh-cabtable__f:focus {
	outline-offset: -1px;
}
.mh-cabtable__apply {
	padding: 4px 12px !important;
	font-size: 13px !important;
	line-height: 1.4 !important;
}
.mh-cabtable__clear {
	font-size: 13px;
	white-space: nowrap;
}
.mh-cabtable__none {
	padding: 24px 12px !important;
	text-align: center;
	color: #6b7280;
}
.mh-cabtable__pager {
	margin: 12px 0 0;
}
.mh-cabtable tr[data-mh-href] {
	cursor: pointer;
}

/* The phone card layout: WooCommerce's responsive sheet outranks a plain rule,
   so these are written one class heavier and checked at 375 px. */
@media screen and (max-width: 768px) {
	.woocommerce-account .mh-cabtable__filterrow {
		display: block;
		padding: 8px 0;
	}
	.woocommerce-account .mh-cabtable__filterrow th {
		display: block;
		width: auto;
		padding: 4px 0;
		background: none;
		border: 0;
		text-align: left !important;
	}
	.woocommerce-account .mh-cabtable__filterrow th::before {
		content: none !important;
	}
	.woocommerce-account .mh-cabtable tr[data-mh-href] {
		display: block;
		margin: 0 0 14px;
		border: 1px solid #e3e7ee;
		border-radius: 10px;
		padding: 4px 0;
	}
}

/* Column widths: the goods cell is the wide one, the rest stay narrow so a row
   is one or two lines instead of ten (owner 2026-09-20, scr 45). */
@media screen and (min-width: 769px) {
	.mh-cabtable { table-layout: fixed; }
	.mh-cabtable .woocommerce-orders-table__header-order-date,
	.mh-cabtable .woocommerce-orders-table__cell-order-date { white-space: nowrap; }
	.mh-cabtable .woocommerce-orders-table__header-order-total,
	.mh-cabtable .woocommerce-orders-table__cell-order-total { white-space: nowrap; }
}
.mh-cabtable .mh-ord__goods { display: block; font-weight: 600; }
.mh-cabtable .mh-ord__cat { display: block; font-size: 12.5px; line-height: 1.45; }
.mh-cabtable .mh-ord__no { display: block; margin-top: 3px; color: #8a8f98; font-size: 11.5px; }
.mh-cabtable td, .mh-cabtable th { vertical-align: top; }

/* WooCommerce's shop_table_responsive sheet hides <thead> outright on a phone,
   which took the filter row with it. Written one class heavier, per the
   standing rule, and checked at 375 px: the heading row stays hidden (the
   cells carry their own data-title labels), the FILTER row comes back. */
@media screen and (max-width: 768px) {
	.woocommerce-account table.mh-cabtable thead {
		display: block !important;
	}
	.woocommerce-account table.mh-cabtable thead tr:first-child {
		display: none !important;
	}
	.woocommerce-account table.mh-cabtable thead tr.mh-cabtable__filterrow {
		flex-wrap: wrap;
		gap: 6px;
		padding: 0 0 10px;
	}
	.woocommerce-account table.mh-cabtable thead tr.mh-cabtable__filterrow th {
		display: block !important;
		flex: 1 1 46%;
		padding: 0;
	}
	.woocommerce-account table.mh-cabtable thead tr.mh-cabtable__filterrow th.woocommerce-orders-table__header-order-actions {
		flex: 1 1 100%;
		display: flex !important;
		gap: 10px;
		align-items: center;
	}
}

/* ------------------------------------------------------------------ *
 * Owner 2026-09-20 (scr 46–49) — the cabinet table's finish.
 * ------------------------------------------------------------------ */

/* 46b: the same palette as the documents section — neutral #d9e2e8 rules on
   white, #eef3f6 on hover. The old #f7f8fa read as a different, bluer block. */
.mh-cabtable__filterrow th {
	background: #fff;
	border-bottom: 1px solid #d9e2e8;
}
.mh-cabtable__f {
	border: 1px solid #c3d0d9;
	color: #4a5b68;
}
.mh-cabtable__f:focus {
	outline: 2px solid #0675c4;
	border-color: #0675c4;
}
.mh-cabtable__apply {
	background: #0675c4 !important;
	border-color: #0675c4 !important;
	color: #fff !important;
}
.mh-cabtable__clear {
	color: #0675c4;
}
.mh-cabtable tr[data-mh-href]:hover {
	background: #eef3f6;
}
.mh-scroll:has(> .mh-cabtable) {
	border: 1px solid #d9e2e8;
	border-radius: 12px;
	overflow: hidden;
	background: #fff;
}
.mh-cabtable thead th {
	border-bottom: 1px solid #d9e2e8;
}
.mh-cabtable tbody td,
.mh-cabtable tbody th {
	border-bottom: 1px solid #d9e2e8;
}
.mh-cabtable tbody tr:last-child td,
.mh-cabtable tbody tr:last-child th {
	border-bottom: 0;
}

/* 46a: the action buttons were sticking out past the table's right edge. */
@media screen and (min-width: 769px) {
	.mh-cabtable .woocommerce-orders-table__cell-order-actions .button,
	.mh-cabtable .woocommerce-orders-table__header-order-actions .button {
		max-width: 100%;
		box-sizing: border-box;
		padding-left: 10px;
		padding-right: 10px;
		white-space: nowrap;
	}
	.mh-cabtable__flab { display: none; }
	.mh-cab-mtool { display: none; }
}

/* Owner 2026-09-28 (scr 19): «Çatdırılma yoldadır — mal gələndə təsdiqləyin» ran over «Məbləğ», and «Çatdırmanı
   təsdiq edirəm» ran past the table's edge. A pill and a button were kept on ONE line inside a fixed-layout
   column: the pill now wraps, the buttons stack and wrap, the two columns are wider, and a window too narrow for
   six columns scrolls the table instead of pressing the cells into each other. Checked at 1280, 900 and 375 px:
   no element leaves its cell. */
.woocommerce-account table.mh-cabtable .mh-ol-pill {
	max-width: 100%;
	box-sizing: border-box;
	white-space: normal;
	border-radius: 14px;
	line-height: 1.35;
	overflow-wrap: break-word;
}
@media screen and (min-width: 769px) {
	.mh-scroll:has(> .mh-cabtable) {
		overflow-x: auto;
		overflow-y: hidden;
	}
	.woocommerce-account table.mh-cabtable {
		min-width: 940px;
	}
	.mh-cabtable .woocommerce-orders-table__header-order-number,
	.mh-cabtable .woocommerce-orders-table__cell-order-number { width: 30%; }
	.mh-cabtable .woocommerce-orders-table__header-order-date,
	.mh-cabtable .woocommerce-orders-table__cell-order-date { width: 11%; }
	.mh-cabtable .woocommerce-orders-table__header-order-kind,
	.mh-cabtable .woocommerce-orders-table__cell-order-kind { width: 13%; }
	.mh-cabtable .woocommerce-orders-table__header-order-status,
	.mh-cabtable .woocommerce-orders-table__cell-order-status { width: 19%; }
	.mh-cabtable .woocommerce-orders-table__header-order-total,
	.mh-cabtable .woocommerce-orders-table__cell-order-total { width: 11%; }
	.mh-cabtable .woocommerce-orders-table__header-order-actions,
	.mh-cabtable .woocommerce-orders-table__cell-order-actions { width: 16%; }
	.mh-cabtable .woocommerce-orders-table__cell-order-actions .mh-btns {
		display: flex;
		flex-direction: column;
		align-items: stretch;
		gap: 6px;
		max-width: 100%;
	}
	.mh-cabtable .woocommerce-orders-table__cell-order-actions form {
		display: block;
		margin: 0;
	}
	.mh-cabtable .woocommerce-orders-table__cell-order-actions .mh-btns .button {
		width: 100%;
		min-width: 0;
		height: auto;
		min-height: 36px;
		box-sizing: border-box;
		padding-top: 7px;
		padding-bottom: 7px;
		justify-content: center;
		text-align: center;
		line-height: 1.25;
		white-space: normal;
	}
}

/* 47: the phone gets a «Süzgəclər» button and the admin bottom sheet instead
   of five boxes stacked above the list. */
@media screen and (max-width: 768px) {
	.woocommerce-account table.mh-cabtable thead tr.mh-cabtable__filterrow {
		display: none !important;
	}
	.mh-cab-mtool {
		display: flex;
		align-items: center;
		gap: 12px;
		margin: 0 0 12px;
	}
	.mh-cab-mtool__n {
		display: inline-block;
		min-width: 18px;
		padding: 0 5px;
		border-radius: 999px;
		background: #fff;
		color: #0675c4;
		font-size: 12px;
		font-weight: 700;
	}
	.mh-cab-mtool__btn {
		background: #0675c4 !important;
		border-color: #0675c4 !important;
		color: #fff !important;
	}
	.mh-cab-mtool__clear { font-size: 13px; color: #0675c4; }
	.mh-cab-sheet .mh-ft-sheet__row { font-weight: 600; }
	.mh-cab-sheet__go { margin: 14px 0 0; }
	.mh-cab-sheet__go .button { width: 100%; }

	/* 49: WooCommerce's responsive sheet draws a rule under every cell, which
	   turns a card into a ruled list. The owner asked for these gone here as
	   elsewhere — the card's own border is the separation. */
	.woocommerce-account table.mh-cabtable tbody td,
	.woocommerce-account table.mh-cabtable tbody th,
	.woocommerce-account table.mh-held-table tbody td,
	.woocommerce-account table.mh-held-table tbody th {
		border-bottom: 0 !important;
	}
}

/* 48: the documents chips fold behind one button on a phone. */
.mh-cdl__toggle { display: none; }
@media screen and (max-width: 768px) {
	.mh-cdl__toggle {
		display: inline-block;
		margin: 0 0 12px;
		background: #0675c4 !important;
		border-color: #0675c4 !important;
		color: #fff !important;
	}
	.mh-cdl__filters { display: none; }
	.mh-cdl__filters.is-open {
		display: flex;
		margin-bottom: 14px;
	}
	.mh-cdl__filters.is-open .mh-cdl__q { flex: 1 1 100%; }
}

/* The adopted filter cells must fill the sheet — the panel's flow left them
   shrink-to-fit, so five inputs rendered at five different widths. */
.mh-cab-sheet .mh-ft-sheet__body { display: block; }
.mh-cab-sheet .mh-ft-sheet__row {
	display: block;
	width: 100%;
	box-sizing: border-box;
}
.mh-cab-sheet .mh-ft-sheet__row .mh-cabtable__flab {
	display: block;
	margin: 0 0 3px;
}
.mh-cab-sheet .mh-ft-sheet__row input {
	width: 100%;
	box-sizing: border-box;
}

/* The document row's three actions ran off the right edge of the card on a
   phone — «Электронное подтверждение» was clipped mid-word. They wrap now. */
@media screen and (max-width: 768px) {
	.mh-cdl__acts {
		flex-wrap: wrap;
		gap: 6px;
		min-width: 0;
	}
	.mh-cdl__acts > * {
		max-width: 100%;
		box-sizing: border-box;
		white-space: normal;
	}
}

/* 0.83.57 — Yeni məhsul (owner approval 2026-09-24: «ok, implement your design as you suggest»).
   The page idare-yeni-mehsul (StaffNewProduct) and the door classes the other cabinet pages use (plan
   .docs/PLAN-2026-09-24-yeni-mehsul.md §2.3.h, §2.5.9). Every selector is scoped under .mh-np or a door class.
   Secondary actions are outline buttons — the owner's «never rows of identical blue pills»; phone inputs are
   16 px so iOS does not zoom; the phone keeps the dark cabinet bar and the step's action bar rides above it.
   Cabinet labels carry `.woocommerce-account.logged-in .woocommerce-MyAccount-content label` (0,3,1:
   inline-block, 600, .92rem) — the label rules below are written one class heavier. */

/* --- the page frame --------------------------------------------------------- */
.mh-np {
	--np-line: #e3e8ee;
	--np-muted: #6b7785;
	--np-soft: #f6f9fc;
	--np-blue: #1789d6;
	--np-blue-d: #0f6aa8;
}
/* `…MyAccount-content form > h3` (0,3,2) turns a form's section label into a 1.2rem ruled heading. */
.mh-np h3.mh-sec-label,
.woocommerce-account.logged-in .woocommerce-MyAccount-content .mh-np form > h3.mh-sec-label {
	margin: 24px 0 10px;
	padding-bottom: 0;
	border-bottom: 0;
	font-size: 11.5px;
	letter-spacing: 0.14em;
}
.mh-np h2.mh-panel-h {
	margin: 4px 0 6px;
}
.mh-np-muted {
	color: var(--np-muted);
	font-size: 13px;
}
.mh-np-cats + .mh-np-muted {
	margin: 10px 0 0;
}
.mh-np-hint {
	margin: 6px 0 0;
	color: var(--np-muted);
	font-size: 12.5px;
	line-height: 1.5;
}
.mh-np-warn {
	margin: 8px 0 0;
	padding: 8px 10px;
	border-radius: 8px;
	background: #fbf1dc;
	color: #8a5a12;
	font-size: 12.5px;
	line-height: 1.5;
}
.mh-np-note {
	margin: 10px 0 0;
	color: #8895a3;
	font-size: 12px;
	line-height: 1.5;
}
.mh-np .mh-np-center {
	display: block;
	text-align: center;
}
.mh-np-lead {
	margin: 0 0 12px;
	color: #5d6b7a;
	font-size: 14px;
}
.hentry .entry-content .mh-np a:not(.button) {
	text-decoration: none;
}
.hentry .entry-content .mh-np a.mh-np-textbtn:hover,
.hentry .entry-content .mh-np .mh-np-ctx__chg:hover {
	text-decoration: underline;
}

/* --- buttons: primary / outline secondary / text ----------------------------- */
.mh-np .button.mh-np-sec,
.mh-np summary.button.mh-np-sec {
	background: #fff !important;
	color: var(--np-blue-d) !important;
	border: 1.5px solid var(--np-blue-d) !important;
	box-shadow: none !important;
}
.mh-np .button.mh-np-sec:hover,
.mh-np summary.button.mh-np-sec:hover {
	background: #eef6fd !important;
}
.mh-np .button.mh-np-sm {
	padding: 5px 14px !important;
	font-size: 13px !important;
	line-height: 1.4;
}
.mh-np .button.mh-np-danger {
	background: #b32d2e !important;
	border-color: #b32d2e !important;
	color: #fff !important;
}
.mh-np .button.mh-np-danger:hover {
	background: #8f2223 !important;
}
.mh-np button.mh-np-link,
.mh-np label.mh-np-link,
.mh-np .mh-np-stepm__go {
	display: inline;
	min-height: 0;
	margin: 0;
	padding: 0 !important;
	border: 0 !important;
	background: none !important;
	box-shadow: none !important;
	color: var(--np-blue-d) !important;
	font-weight: 600;
	font-size: 13px;
	line-height: 1.5;
	cursor: pointer;
	transform: none !important;
}
.mh-np button.mh-np-link:hover,
.mh-np .mh-np-stepm__go:hover {
	text-decoration: underline;
}
.mh-np button.mh-np-link[hidden] {
	display: none;
}
.mh-np .mh-np-textbtn {
	display: inline-block;
	padding: 8px 6px;
	color: var(--np-blue-d);
	font-weight: 600;
}
.mh-np .mh-np-primary {
	min-width: 180px;
	text-align: center;
}
.mh-np .button[disabled],
.mh-np .button:disabled {
	opacity: 0.45;
	cursor: not-allowed;
	transform: none !important;
}
.mh-np.is-busy {
	cursor: progress;
}

/* --- labels (one class heavier than the cabinet's generic label rule) -------- */
.woocommerce-account.logged-in .woocommerce-MyAccount-content .mh-np label.mh-np-cat,
.woocommerce-account.logged-in .woocommerce-MyAccount-content .mh-np label.mh-np-opt {
	display: flex;
	margin: 0;
	font-size: inherit;
	font-weight: inherit;
}
.woocommerce-account.logged-in .woocommerce-MyAccount-content .mh-np .mh-np-seg label,
.woocommerce-account.logged-in .woocommerce-MyAccount-content .mh-np label.mh-np-cell,
.woocommerce-account.logged-in .woocommerce-MyAccount-content .mh-np label.mh-np-mchip {
	display: inline-flex;
	margin: 0;
	font-size: 13px;
}
.woocommerce-account.logged-in .woocommerce-MyAccount-content .mh-np label.mh-np-f__l,
.mh-np span.mh-np-f__l {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 6px;
	margin: 0;
	font-size: 13px;
	font-weight: 600;
	color: #5d6b7a;
}
.woocommerce-account.logged-in .woocommerce-MyAccount-content .mh-np label.mh-np-pass,
.woocommerce-account.logged-in .woocommerce-MyAccount-content .mh-np .mh-np-pw__f label {
	display: flex;
	flex-direction: column;
	gap: 5px;
	margin: 0;
	font-size: 13px;
}
.woocommerce-account.logged-in .woocommerce-MyAccount-content .mh-np label.mh-np-upl {
	display: inline-block;
	margin: 2px 0 0;
}

/* --- stepper ---------------------------------------------------------------- */
.mh-np ol.mh-np-steps {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	list-style: none;
	margin: 2px 0 16px;
	padding: 0;
}
.mh-np-steps li {
	margin: 0;
}
.mh-np-steps li > span,
.mh-np-steps li > a {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 5px 14px 5px 5px;
	border: 1px solid var(--np-line);
	border-radius: 999px;
	background: #fff;
	color: #5d6b7a;
	font-size: 13.5px;
	font-weight: 600;
}
.mh-np-steps__n {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	border-radius: 50%;
	background: #eef1f4;
	color: #4a5a68;
	font-size: 12px;
	font-weight: 800;
}
.mh-np-steps li.is-on > span {
	background: #eef6fd;
	border-color: #bfdcf3;
	color: var(--np-blue-d);
}
.mh-np-steps li.is-on .mh-np-steps__n {
	background: var(--np-blue);
	color: #fff;
}
.mh-np-steps li.is-done > a {
	color: #1f8f5a;
}
.mh-np-steps li.is-done > a:hover {
	border-color: #1f8f5a;
}
.mh-np-steps li.is-done .mh-np-steps__n {
	background: #e3f5ec;
	color: #1f8f5a;
}
.mh-np-stepm {
	display: none;
}

/* --- context bar ------------------------------------------------------------ */
.mh-np-ctx {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 6px 8px;
	margin: 0 0 14px;
	padding: 10px 14px;
	border: 1px solid #e3eaf1;
	border-radius: 10px;
	background: #f4f8fb;
	font-size: 13.5px;
}
.mh-np-ctx__sep,
.mh-np-ctx__dot {
	color: #9aa6b2;
}
.mh-np-ctx__part .mh-co__code {
	margin-right: 5px;
}
.mh-np .mh-np-ctx__chg {
	margin-left: auto;
	color: var(--np-blue-d);
	font-weight: 600;
}

/* --- step 1: category cards -------------------------------------------------- */
.mh-np-cats {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 12px;
}
.mh-np .mh-np-cat {
	position: relative;
	flex-direction: column;
	gap: 5px;
	min-width: 0;
	padding: 14px 14px 13px;
	border: 1.5px solid var(--np-line);
	border-radius: 12px;
	background: #fff;
	color: #16232e;
	cursor: pointer;
	transition: border-color 0.15s, box-shadow 0.15s;
}
.mh-np div.mh-np-cat,
.mh-np a.mh-np-cat {
	display: flex;
}
.mh-np .mh-np-cat:hover {
	border-color: #9cc6ea;
}
/* The choice shows from the radio itself — before any reload, and without JS (never two cards at once). */
.mh-np .mh-np-cat:has(input:checked) {
	border-color: var(--np-blue);
	box-shadow: 0 0 0 3px rgba(23, 137, 214, 0.12);
}
.mh-np .mh-np-cat:has(input:checked)::after {
	content: "✓";
	position: absolute;
	top: 12px;
	right: 12px;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 22px;
	height: 22px;
	border-radius: 50%;
	background: var(--np-blue);
	color: #fff;
	font-size: 12px;
	font-weight: 800;
}
.mh-np .mh-np-cat input,
.mh-np .mh-np-seg input,
.mh-np .mh-np-cell input {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}
.mh-np .mh-np-cat:focus-within {
	outline: 2px solid #20a0e0;
	outline-offset: 2px;
}
.mh-np-cat__ic {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	margin-bottom: 4px;
	border-radius: 11px;
	background: #eef1f4;
	color: #4a5a68;
}
.mh-np-cat--sn .mh-np-cat__ic { background: #e8f3fc; color: #1789d6; }
.mh-np-cat--vc .mh-np-cat__ic { background: #e6f6ec; color: #1d9a5b; }
.mh-np-cat--am .mh-np-cat__ic { background: #fdecec; color: #c93b3b; }
.mh-np-cat__n {
	padding-right: 24px;
	font-size: 15.5px;
	font-weight: 700;
	line-height: 1.3;
}
.mh-np-cat__l {
	color: var(--np-muted);
	font-size: 12.5px;
	line-height: 1.45;
}
.mh-np-cat__co {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 4px;
	font-size: 13px;
}
.mh-np-cat__co .mh-co__code {
	margin-right: 2px;
}
.mh-np-cat__c {
	margin-top: auto;
	padding-top: 4px;
	color: #5d6b7a;
	font-size: 12.5px;
}
.mh-np .mh-np-cat.is-off {
	background: #f8fafc;
	cursor: not-allowed;
	opacity: 0.6;
}
.mh-np-cat__why {
	color: #b7791f;
	font-size: 12px;
	line-height: 1.45;
}
.mh-np .mh-np-cat--new {
	border-style: dashed;
	background: #fbfcfd;
	color: #8895a3;
}
.mh-np .mh-np-cat--new .mh-np-cat__l {
	color: #8895a3;
}
.mh-np a.mh-np-cat--new:hover {
	color: #5d6b7a;
}

/* --- step 1: kind, company, start, mode --------------------------------------- */
.mh-np-two {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: 4px 28px;
}
.mh-np-two--opts {
	gap: 12px;
}
.mh-np-seg {
	display: inline-flex;
	flex-wrap: wrap;
	gap: 3px;
	max-width: 100%;
	padding: 3px;
	border-radius: 999px;
	background: #e9eff4;
}
.mh-np-seg label {
	position: relative;
	cursor: pointer;
}
.mh-np-seg span {
	display: block;
	padding: 7px 18px;
	border-radius: 999px;
	color: #5d6b7a;
	font-size: 13.5px;
	font-weight: 700;
	white-space: nowrap;
}
.mh-np-seg label:has(input:checked) span {
	background: var(--np-blue-d);
	color: #fff;
	box-shadow: 0 1px 3px rgba(15, 106, 168, 0.35);
}
.mh-np-seg label:focus-within span {
	outline: 2px solid #20a0e0;
	outline-offset: 1px;
}
.mh-np-opts,
.mh-np-starts {
	display: grid;
	gap: 10px;
}
.mh-np-starts {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}
.mh-np .mh-np-opt {
	align-items: flex-start;
	gap: 10px;
	min-width: 0;
	padding: 12px 14px;
	border: 1.5px solid var(--np-line);
	border-radius: 12px;
	background: #fff;
	color: #16232e;
	cursor: pointer;
}
.mh-np div.mh-np-opt,
.mh-np a.mh-np-opt {
	display: flex;
}
.mh-np .mh-np-opt input[type="radio"] {
	flex: none;
	width: 16px;
	height: 16px;
	margin: 3px 0 0;
	accent-color: var(--np-blue);
}
.mh-np .mh-np-opt:has(input:checked) {
	border-color: var(--np-blue);
	background: #f5faff;
}
.mh-np .mh-np-opt.is-off {
	background: #f8fafc;
	cursor: not-allowed;
	opacity: 0.65;
}
.mh-np .mh-np-opt--link:hover {
	border-color: #9cc6ea;
}
.mh-np-opt__b {
	display: flex;
	flex: 1;
	flex-direction: column;
	gap: 3px;
	min-width: 0;
}
.mh-np-opt__b > b {
	font-size: 14.5px;
}
.mh-np-opt__t {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 6px;
}
.mh-np-opt__h {
	color: var(--np-muted);
	font-size: 12.5px;
	line-height: 1.45;
}
.mh-np-opt select {
	margin-top: 6px;
}
.mh-np-coline {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
	font-size: 14.5px;
}
.mh-np-src {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 12px 14px;
	border: 1px solid var(--np-line);
	border-radius: 12px;
	background: #f8fbfe;
}
.mh-np-src__ic,
.mh-np-card__ic {
	display: flex;
	flex: none;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	border-radius: 10px;
	background: #e8f3fc;
	font-size: 17px;
}
.mh-np-src__b {
	display: flex;
	flex: 1;
	flex-direction: column;
	gap: 2px;
	min-width: 0;
	overflow-wrap: anywhere;
}
.mh-np-src__b > span {
	color: var(--np-muted);
	font-size: 13px;
}
.mh-np .mh-np-src__x {
	flex: none;
	color: var(--np-blue-d);
	font-weight: 600;
}

/* --- drafts and the inline password forms ------------------------------------- */
.mh-np-drafts {
	margin-top: 26px;
}
.mh-np ul.mh-np-drafts__list {
	margin: 10px 0 0;
	padding: 0;
	list-style: none;
	border: 1px solid var(--np-line);
	border-radius: 12px;
	background: #fff;
}
.mh-np-drafts__list li {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px 12px;
	margin: 0;
	padding: 10px 14px;
	border-top: 1px solid #eef1f4;
}
.mh-np-drafts__list li:first-child {
	border-top: 0;
}
.mh-np-drafts__t {
	display: flex;
	flex: 1 1 240px;
	flex-direction: column;
	min-width: 0;
	overflow-wrap: anywhere;
}
.mh-np-drafts__t span {
	color: var(--np-muted);
	font-size: 12.5px;
}
.mh-np-drafts__a {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	gap: 8px;
}
.mh-np-pw {
	display: inline-block;
	max-width: 100%;
}
.mh-np-pw > summary {
	display: inline-block;
	list-style: none;
	cursor: pointer;
}
.mh-np-pw > summary::-webkit-details-marker {
	display: none;
}
.mh-np-pw__f {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	gap: 8px;
	margin-top: 8px;
	padding: 10px 12px;
	border: 1px solid #e3eaf1;
	border-radius: 10px;
	background: #f4f8fb;
}
.mh-np-pw__f input[type="password"] {
	width: 200px;
	max-width: 100%;
}
.mh-np .mh-np-pw--main {
	display: block;
	margin-top: 10px;
}
.mh-np .mh-np-pw--main > summary {
	display: block;
	text-align: center;
}
.mh-np .mh-np-pw--undo > summary {
	padding: 2px 12px !important;
	font-size: 12.5px !important;
}

/* --- step 2: layout, fields --------------------------------------------------- */
.mh-np-layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 380px;
	gap: 24px;
	align-items: start;
}
.mh-np-main {
	min-width: 0;
}
.mh-np-aside {
	position: sticky;
	/* Under the frosted header, admin bar included (StaffCabinet publishes --mh-sticky-top). */
	top: calc(var(--mh-sticky-top, 65px) + 16px);
	display: flex;
	flex-direction: column;
	gap: 14px;
	min-width: 0;
}
.mh-np-mini {
	display: none;
}
.mh-np-band {
	font-weight: 600;
}
.mh-np-fs {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 12px 16px;
}
.mh-np-fs--2 {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}
.mh-np-f {
	display: flex;
	flex-direction: column;
	gap: 4px;
	min-width: 0;
}
.mh-np-f.is-wide {
	grid-column: 1 / -1;
}
.mh-np .mh-np-f[hidden],
.mh-np [hidden].mh-np-new,
.mh-np .mh-np-tag[hidden],
.mh-np .mh-np-rule[hidden] {
	display: none;
}
.mh-np-f__h {
	color: #8895a3;
	font-size: 11.5px;
	line-height: 1.45;
}
.mh-np .mh-inline-err {
	display: block;
	margin: 2px 0 0;
	font-size: 12.5px;
	line-height: 1.45;
}
.mh-np .mh-inline-err:empty {
	display: none;
}
.mh-np-tag {
	display: inline-block;
	padding: 1px 8px;
	border-radius: 999px;
	background: #e3f5ec;
	color: #1f8f5a;
	font-size: 11px;
	font-weight: 600;
	line-height: 1.5;
	letter-spacing: 0;
	text-transform: none;
}
.mh-np-tag--warn {
	background: #fbf1dc;
	color: #b7791f;
}
.mh-np-ro {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 6px;
	min-height: 38px;
	font-size: 14px;
	overflow-wrap: anywhere;
}
.mh-np .mh-np-f input[type="text"],
.mh-np .mh-np-f select,
.mh-np .mh-np-f textarea,
.mh-np .mh-np-tabs textarea,
.mh-np select.mh-np-wide,
.mh-np .mh-np-sibpick select {
	width: 100%;
	max-width: 100%;
	min-height: 38px;
	box-sizing: border-box;
	padding: 7px 10px;
	font-size: 14px;
}
/* Editable fields are white with a hairline; a value the service keeps (readonly until «✎ Əl ilə dəyiş») is
   grey — the difference must read at a glance. */
.mh-np .mh-np-f input[type="text"],
.mh-np .mh-np-f select,
.mh-np .mh-np-f textarea,
.mh-np .mh-np-tabs textarea,
.mh-np select.mh-np-wide,
.mh-np .mh-np-sibpick select,
.mh-np table.mh-np-vars input[type="text"],
.mh-np .mh-np-pall input[type="text"],
.mh-np .mh-np-cg__adder select,
.mh-np .mh-np-cg__adder input,
.mh-np .mh-np-pass input[type="password"],
.mh-np .mh-np-pw__f input[type="password"] {
	border: 1px solid #cfd8e1;
	background: #fff;
	box-shadow: none;
	color: #16232e;
}
.mh-np .mh-np-f input[readonly],
.mh-np .mh-np-f textarea[readonly] {
	border-color: #e3e8ee;
	background: #f1f4f7;
	color: #34424f;
	cursor: default;
}
.mh-np .mh-np-f textarea[data-np-oneline] {
	min-height: 38px;
	overflow: hidden;
	line-height: 1.4;
	resize: none;
	field-sizing: content;
}
.mh-np .mh-np-f .mh-np-new {
	margin-top: 6px;
}
.mh-np-mctl {
	display: flex;
	gap: 14px;
}
.mh-np-skustate {
	margin-left: auto;
	font-size: 12.5px;
}
.mh-np-ok {
	color: #1f8f5a;
	font-weight: 700;
}
.mh-np-bad {
	color: #c0392b;
	font-weight: 700;
}
.mh-np-rule {
	margin-top: 2px;
	padding: 6px 10px;
	border-radius: 8px;
	background: #fef6e4;
	color: #7c4a03;
	font-size: 12.5px;
	overflow-wrap: anywhere;
}
.mh-np-brand {
	margin: 0 0 12px;
	padding: 10px 12px;
	border: 1px dashed #cfdae4;
	border-radius: 12px;
	background: #fbfcfd;
}
.mh-np-brand__h {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	margin-bottom: 8px;
	color: #5d6b7a;
	font-size: 12.5px;
	font-weight: 600;
}
.mh-np-brand__chips {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
}
.mh-np-brand.is-open .mh-np-brand__chips {
	opacity: 0.5;
}
.mh-np-bchip {
	display: inline-flex;
	align-items: baseline;
	gap: 6px;
	max-width: 100%;
	padding: 4px 10px;
	border-radius: 999px;
	background: #eef1f4;
	font-size: 13px;
	overflow-wrap: anywhere;
}
.mh-np-bchip small {
	color: var(--np-muted);
	font-size: 11px;
}
.mh-np-multi {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	max-height: 168px;
	overflow: auto;
	padding: 8px;
	border: 1px solid #dde4ea;
	border-radius: 8px;
	background: #fff;
}
.mh-np .mh-np-mchip {
	align-items: center;
	gap: 5px;
	padding: 4px 10px;
	border: 1px solid #dde4ea;
	border-radius: 999px;
	background: #fff;
	color: #34424f;
	font-weight: 500;
	cursor: pointer;
}
.mh-np .mh-np-mchip input {
	margin: 0;
	accent-color: var(--np-blue);
}
.mh-np .mh-np-mchip.is-on,
.mh-np .mh-np-mchip:has(input:checked) {
	border-color: #bcd9f2;
	background: #e8f3fc;
	color: var(--np-blue-d);
}

/* source / similar-product cards, the serial lock */
.mh-np-card {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	margin: 0 0 10px;
	padding: 12px 14px;
	border: 1px solid var(--np-line);
	border-radius: 12px;
	background: #fff;
	font-size: 13.5px;
	line-height: 1.5;
}
.mh-np-card--src {
	background: #f8fbfe;
}
.mh-np-card > div {
	flex: 1;
	min-width: 0;
	overflow-wrap: anywhere;
}
.mh-np-card__sub {
	display: block;
	margin-top: 3px;
	color: var(--np-muted);
	font-size: 12.5px;
}
.mh-np-card > .mh-np-link {
	flex: none;
}
.mh-np-sibpick {
	margin-top: 10px;
}
.mh-np-sibpick[hidden] {
	display: none;
}
.mh-np-lock {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	padding: 12px 14px;
	border: 1px solid #bfdcf3;
	border-radius: 12px;
	background: #f3f9fe;
	font-size: 13.5px;
}
.mh-np-lock p {
	margin: 0;
	line-height: 1.55;
}

/* the AZ / EN / RU text tabs, images */
.mh-np-tabs__bar {
	display: flex;
	gap: 4px;
	margin-bottom: 10px;
	border-bottom: 1px solid var(--np-line);
}
.mh-np-tabs:not(.is-js) .mh-np-tabs__bar {
	display: none;
}
.mh-np .mh-np-tabs__bar button {
	margin: 0 0 -1px;
	padding: 8px 14px;
	border: 0;
	border-bottom: 2px solid transparent;
	border-radius: 0 !important;
	background: none;
	box-shadow: none;
	color: var(--np-muted);
	font-size: 13.5px;
	font-weight: 700;
	cursor: pointer;
}
.mh-np .mh-np-tabs__bar button.is-on {
	border-bottom-color: var(--np-blue);
	color: var(--np-blue-d);
}
.mh-np-tabs__bar i {
	margin-left: 3px;
	font-size: 11px;
	font-style: normal;
}
.mh-np-tabs__bar i.is-ok {
	color: #1f8f5a;
}
.mh-np-tabs__bar i.is-warn {
	color: #b7791f;
}
.mh-np-tabs__p {
	display: flex;
	flex-direction: column;
	gap: 5px;
	margin-bottom: 12px;
}
.mh-np .mh-np-tabs__p[hidden] {
	display: none;
}
.mh-np h4.mh-np-tabs__h {
	margin: 8px 0 0;
	color: #8895a3;
	font-size: 12px;
}
.mh-np-tabs.is-js .mh-np-tabs__h {
	display: none;
}
.mh-np .mh-np-tabs textarea {
	min-height: 84px;
	line-height: 1.5;
}
.mh-np-imgs {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 10px;
}
.mh-np-img {
	display: flex;
	flex: 1 1 260px;
	align-items: center;
	gap: 10px;
	min-width: 0;
	padding: 10px;
	border: 1px solid var(--np-line);
	border-radius: 12px;
	background: #fff;
}
.mh-np-img__th {
	display: flex;
	flex: none;
	align-items: center;
	justify-content: center;
	width: 64px;
	height: 64px;
	overflow: hidden;
	border-radius: 9px;
	background: #f4f6f8;
	color: #9aa6b2;
}
.mh-np-img__th img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}
.mh-np-img__b {
	display: flex;
	flex-direction: column;
	gap: 2px;
	min-width: 0;
}
.mh-np-img__b > b {
	font-size: 13.5px;
	overflow-wrap: anywhere;
}
.mh-np .mh-np-upl {
	position: relative;
	overflow: hidden;
	cursor: pointer;
}
.mh-np .mh-np-upl input[type="file"] {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	opacity: 0;
	cursor: pointer;
}
/* The file input is invisible — its keyboard focus shows on the link that carries it. */
.mh-np .mh-np-upl:focus-within {
	border-radius: 4px;
	outline: 2px solid #20a0e0;
	outline-offset: 2px;
}
.mh-np-gal {
	flex: 1 1 100%;
}
.mh-np-gal__row {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 6px;
}
.mh-np button.mh-np-gal__i {
	width: 64px;
	height: 64px;
	padding: 0;
	overflow: hidden;
	border: 2px solid var(--np-line);
	border-radius: 10px !important;
	background: #fff;
	box-shadow: none;
	cursor: pointer;
}
.mh-np button.mh-np-gal__i.is-main {
	border-color: var(--np-blue);
	box-shadow: 0 0 0 3px rgba(23, 137, 214, 0.15);
}
.mh-np-gal__i img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* the colour × size grid and the variation table */
.mh-np-cg {
	display: flex;
	flex-direction: column;
	gap: 8px;
}
.mh-np-cg__row {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px 12px;
}
.mh-np-cg__c {
	flex: 0 0 110px;
	font-size: 13.5px;
	font-weight: 700;
	overflow-wrap: anywhere;
}
.mh-np-cg__cells {
	display: flex;
	flex: 1;
	flex-wrap: wrap;
	gap: 6px;
	min-width: 0;
}
.mh-np .mh-np-cell {
	position: relative;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	min-width: 54px;
	height: 40px;
	padding: 0 8px;
	border: 1.5px solid #dde4ea;
	border-radius: 9px;
	background: #fff;
	color: #34424f;
	font-weight: 700;
	cursor: pointer;
	user-select: none;
}
.mh-np span.mh-np-cell {
	display: inline-flex;
	font-size: 13px;
}
.mh-np .mh-np-cell.is-on,
.mh-np .mh-np-cell:has(input:checked) {
	border-color: var(--np-blue);
	background: var(--np-blue);
	color: #fff;
}
.mh-np .mh-np-cell:focus-within {
	outline: 2px solid #20a0e0;
	outline-offset: 1px;
}
.mh-np .mh-np-cell.is-exists {
	border-style: dashed;
	background: #eef1f4;
	color: #8895a3;
	cursor: not-allowed;
}
.mh-np-cell small {
	font-size: 10px;
	font-weight: 600;
	line-height: 1;
}
.mh-np-cg__add {
	display: flex;
	flex-wrap: wrap;
	gap: 10px 18px;
	margin: 12px 0 4px;
}
.mh-np-cg__adder {
	display: inline-flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 6px;
	max-width: 100%;
}
.mh-np .mh-np-cg__adder select,
.mh-np .mh-np-cg__adder input {
	width: auto;
	min-width: 150px;
	max-width: 100%;
	min-height: 36px;
	padding: 6px 9px;
	font-size: 13.5px;
}
.mh-np .mh-np-cg__adder input[hidden] {
	display: none;
}
.mh-np-pall {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px 10px;
	margin: 0 0 10px;
}
.mh-np .mh-np-pall input[type="text"] {
	width: 120px;
	min-height: 36px;
	padding: 6px 9px;
	font-size: 14px;
}
.mh-np-pall .mh-np-f__h {
	flex: 1 1 100%;
}
.mh-np-vt {
	overflow-x: auto;
	border: 1px solid var(--np-line);
	border-radius: 12px;
}
.mh-np table.mh-np-vars {
	width: 100%;
	margin: 0;
	border: 0;
	border-collapse: collapse;
	font-size: 13.5px;
}
.mh-np table.mh-np-vars thead th {
	padding: 8px 10px;
	border-bottom: 1px solid var(--np-line);
	background: #f8fafc;
	color: #5d6b7a;
	font-size: 12.5px;
	font-weight: 600;
	text-align: left;
}
.mh-np table.mh-np-vars tbody tr td {
	padding: 6px 10px;
	border-bottom: 1px solid #eef1f4;
	background: #fff;
	vertical-align: middle;
}
.mh-np table.mh-np-vars tr[hidden] {
	display: none;
}
.mh-np table.mh-np-vars input[type="text"] {
	width: 100%;
	min-width: 90px;
	min-height: 34px;
	padding: 5px 8px;
	font-size: 13.5px;
}
.mh-np-vars__n {
	font-weight: 600;
	white-space: nowrap;
}
.mh-np-vars__n .mh-inline-err {
	max-width: 220px;
	font-size: 11.5px;
	font-weight: 500;
	white-space: normal;
}
.mh-np table.mh-np-vars input[data-np-vsku] {
	min-width: 190px;
}
.mh-np-vt:not(:has(tbody tr:not([hidden]))) {
	display: none;
}
.mh-np-vars__p {
	display: flex;
	align-items: center;
	gap: 6px;
}
.mh-np-q {
	padding: 1px 6px;
	border-radius: 6px;
	background: #e3f5ec;
	color: #1f8f5a;
	font-size: 11px;
	font-style: normal;
	font-weight: 800;
}
.mh-np-q[hidden] {
	display: none;
}
.mh-np-vars__img img {
	width: 36px;
	height: 36px;
	border-radius: 6px;
	object-fit: cover;
	vertical-align: middle;
}

/* the action row: inline on a desktop, a fixed bar on a phone */
.mh-np-actbar {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px 14px;
	margin: 24px 0 4px;
}
.mh-np-actbar__note {
	margin-left: auto;
}
.mh-np-actbar--stack {
	flex-direction: column;
	align-items: stretch;
	margin: 12px 0 0;
}
.mh-np .mh-np-actbar--stack .button {
	width: 100%;
	margin: 0;
}

/* --- the aside: preview and checks --------------------------------------------- */
.mh-np-box {
	min-width: 0;
	padding: 14px 16px;
	border: 1px solid var(--np-line);
	border-radius: 12px;
	background: #fff;
}
.mh-np-box__h {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	margin-bottom: 12px;
}
.mh-np-box__t {
	display: block;
	color: #16232e;
	font-size: 15px;
	font-weight: 700;
}
.mh-np-box > .mh-np-box__t {
	margin-bottom: 6px;
}
.mh-np-lang {
	display: inline-flex;
	flex: none;
	gap: 2px;
	padding: 3px;
	border-radius: 999px;
	background: #e9eff4;
}
.mh-np .mh-np-lang button {
	min-height: 0;
	margin: 0;
	padding: 4px 12px;
	border: 0;
	border-radius: 999px !important;
	background: none;
	box-shadow: none;
	color: #5d6b7a;
	font-size: 12px;
	font-weight: 800;
	line-height: 1.5;
	cursor: pointer;
}
.mh-np .mh-np-lang button.is-on {
	background: var(--np-blue-d);
	color: #fff;
}
.mh-np-pc {
	padding: 14px;
	border: 1px solid var(--np-line);
	border-radius: 10px;
	background: #fff;
	text-align: center;
}
.mh-np-pc__img {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 150px;
	margin-bottom: 10px;
	overflow: hidden;
	border-radius: 8px;
	background: #fafbfc;
	color: #9aa6b2;
	font-size: 12.5px;
}
.mh-np-pc__img img {
	max-width: 100%;
	max-height: 100%;
	object-fit: contain;
}
.mh-np-pc__t {
	color: #16232e;
	font-size: 14px;
	line-height: 1.4;
	overflow-wrap: anywhere;
}
.mh-np-pc__badge {
	display: inline-block;
	margin: 8px 0 0;
	padding: 2px 10px;
	border-radius: 999px;
	background: var(--np-blue);
	color: #fff;
	font-size: 11.5px;
	font-weight: 700;
	line-height: 1.5;
}
.mh-np-pc__price {
	margin: 8px 0;
	color: #16232e;
	font-size: 17px;
	font-weight: 800;
}
.mh-np-pc__buy {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 8px;
}
.mh-np-pc__qty {
	display: inline-flex;
	overflow: hidden;
	border: 1px solid #dde4ea;
	border-radius: 6px;
	font-size: 13px;
}
.mh-np-pc__qty span,
.mh-np-pc__qty b {
	padding: 5px 9px;
}
.mh-np-pc__qty b {
	border-right: 1px solid #dde4ea;
	border-left: 1px solid #dde4ea;
}
.mh-np-pc__btn {
	display: inline-block;
	padding: 7px 16px;
	border-radius: 999px;
	background: var(--np-blue);
	color: #fff;
	font-size: 13px;
	font-weight: 700;
}
.mh-np-pc__note {
	margin: 10px 0 0;
	color: var(--np-muted);
	font-size: 12px;
	line-height: 1.45;
	text-align: left;
}
.mh-np-pp {
	min-width: 0;
	padding: 16px;
	border: 1px solid var(--np-line);
	border-radius: 10px;
	background: #fff;
}
.mh-np h4.mh-np-pp__t {
	margin: 0 0 8px;
	font-size: 19px;
	font-weight: 800;
	line-height: 1.3;
	overflow-wrap: anywhere;
}
.mh-np-pp__price {
	margin: 8px 0;
	color: var(--np-blue-d);
	font-size: 20px;
	font-weight: 800;
}
.mh-np-pp__ex {
	color: #5d6b7a;
	font-size: 13.5px;
	line-height: 1.55;
	overflow-wrap: anywhere;
}
.mh-np-pp__ex p {
	margin: 0 0 8px;
}
.mh-np table.mh-np-pp__tbl {
	width: 100%;
	margin: 10px 0 0;
	border: 0;
	border-collapse: collapse;
	font-size: 13px;
}
.mh-np table.mh-np-pp__tbl tbody tr th,
.mh-np table.mh-np-pp__tbl tbody tr td {
	padding: 6px 8px 6px 0;
	border: 0;
	border-top: 1px solid #eef1f4;
	background: none;
	text-align: left;
	vertical-align: top;
	overflow-wrap: anywhere;
}
.mh-np table.mh-np-pp__tbl tbody tr th {
	width: 48%;
	color: #5d6b7a;
	font-weight: 600;
}
.mh-np-pp__needle {
	margin: 10px 0 0;
	text-align: right;
}
.mh-np-pp__needle img {
	width: auto;
	max-height: 60px;
}
.mh-np ul.mh-np-checks {
	margin: 0;
	padding: 0;
	list-style: none;
}
.mh-np-checks li {
	display: flex;
	align-items: flex-start;
	gap: 9px;
	margin: 0;
	padding: 7px 0;
	border-top: 1px solid #f0f3f6;
	font-size: 13px;
	line-height: 1.45;
}
.mh-np-checks li:first-child {
	border-top: 0;
}
.mh-np-checks li > i {
	display: flex;
	flex: none;
	align-items: center;
	justify-content: center;
	width: 18px;
	height: 18px;
	margin-top: 1px;
	border-radius: 50%;
	background: var(--np-blue);
	color: #fff;
	font-size: 10.5px;
	font-style: normal;
	font-weight: 800;
}
.mh-np-checks li.is-ok > i { background: #1f8f5a; }
.mh-np-checks li.is-warn > i { background: #d98a14; }
.mh-np-checks li.is-bad > i { background: #c0392b; }
.mh-np-checks li.is-bad {
	color: #9b2c2c;
}
.mh-np-checks li > span {
	min-width: 0;
	overflow-wrap: anywhere;
}
.mh-np.is-checking [data-np-checks],
.mh-np.is-checking [data-np-pv] {
	opacity: 0.6;
	transition: opacity 0.2s;
}

/* --- step 3 and the result ------------------------------------------------------ */
.mh-np-review,
.mh-np-result {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 360px;
	gap: 20px;
	align-items: start;
}
.mh-np-result__main,
.mh-np-side {
	display: flex;
	flex-direction: column;
	gap: 14px;
	min-width: 0;
}
.mh-np-look__cols {
	display: grid;
	grid-template-columns: 250px minmax(0, 1fr);
	gap: 16px;
}
.mh-np h4.mh-np-k {
	margin: 0 0 8px;
	color: var(--np-muted);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}
.mh-np .mh-np-pass input[type="password"] {
	width: 100%;
	box-sizing: border-box;
}
.mh-np-block {
	margin: 0 0 12px;
	padding: 10px 12px;
	border: 1px solid #f5c2c0;
	border-radius: 10px;
	background: #fdf1f0;
	color: #8f2223;
	font-size: 13px;
}
.mh-np-block ul {
	margin: 6px 0 6px 18px;
	padding: 0;
}
.mh-np-done {
	font-size: 15px;
}
.mh-np .mh-skc.mh-np-skc {
	max-width: none;
}
.mh-np .mh-skc__head > b {
	overflow-wrap: anywhere;
}
.mh-np-jline {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	gap: 8px 12px;
	margin-top: 12px;
	padding-top: 10px;
	border-top: 1px solid #eef1f4;
	color: var(--np-muted);
	font-size: 12.5px;
}
.mh-np .mh-np-block-btn {
	display: block;
	width: 100%;
	box-sizing: border-box;
	margin: 10px 0 0;
	text-align: center;
}
/* The result's (and the bulk banner's) primary action: in its column on a desktop, the fixed bar on a phone. */
.mh-np .mh-np-actbar--side {
	display: block;
	margin: 0;
}
.mh-np .mh-np-actbar--side > .button {
	display: block;
	width: 100%;
	box-sizing: border-box;
	margin: 10px 0 0;
	text-align: center;
}
.mh-np-bulkres .mh-np-actbar--side {
	margin: 10px 0 0;
}
.mh-np-bulkres .mh-np-actbar--side > .button {
	display: inline-block;
	width: auto;
	margin: 0;
}
/* The awaiting unit's quantity on the editable Anbar card: read-only text, never an input frame. */
.mh-skc.is-editing .mh-skc__i.mh-skc__ro {
	border: 0;
	padding: 0;
	background: none;
}

/* --- the «Kitabda var — saytda yoxdur» list ------------------------------------- */
.mh-np-listbar {
	margin: 6px 0 12px;
}
.mh-np-pills {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 8px 16px;
	margin: 14px 0 10px;
}
.mh-np-pills__row {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 6px;
	max-width: 100%;
}
.mh-np-pills .mh-proc__pill b {
	margin-left: 2px;
	font-weight: 800;
}
.mh-np-empty {
	padding: 28px 16px;
	border: 1px dashed #cfdae4;
	border-radius: 12px;
	background: #fbfcfd;
	color: #5d6b7a;
	text-align: center;
}
.mh-np-rnote {
	color: var(--np-muted);
	font-size: 12px;
}
.mh-np button.mh-np-x {
	margin: 0 0 0 6px;
	padding: 0;
	border: 0;
	background: none;
	box-shadow: none;
	color: #b32d2e;
	font-size: 12px;
	font-weight: 600;
	cursor: pointer;
	transform: none !important;
}
.mh-np button.mh-np-x:hover {
	text-decoration: underline;
}
.mh-np-dd {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 10px 16px;
	font-size: 13px;
	line-height: 1.6;
}
.mh-np-dd__txt {
	flex: 1 1 320px;
	min-width: 0;
	overflow-wrap: anywhere;
}
.mh-np-readyall {
	margin: 0 0 8px;
}
.mh-np-bulkres__fail {
	margin: 8px 0 0 18px;
	color: #9b2c2c;
}
form#mh-np-bulk {
	display: none;
}
form#mh-np-bulk.mh-selbar.is-on {
	display: flex;
}
.mh-np-selq {
	color: #cbd5e1;
	font-size: 12.5px;
}
form.mh-selbar.is-on .button.mh-np-selclear {
	border: 1px solid rgba(255, 255, 255, 0.35) !important;
	background: transparent !important;
	color: #fff !important;
}
.mh-np-modal .mh-passmodal__box {
	width: min(460px, 92vw);
	max-height: 90vh;
	overflow: auto;
	border-radius: 14px;
}
.mh-np-modal__t {
	font-size: 16px;
}

/* --- the doors on the other pages (StaffStock, StaffMovements, StaffProcurement, StaffCatalog, StaffSearch) --- */
.mh-np-anbarbar {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 10px 16px;
	margin: 0 0 10px;
}
.mh-np-anbarbar .mh-staff-filters__row {
	margin: 0;
}
.mh-np-anbarbtn {
	white-space: nowrap;
}
.mh-np-door {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 12px;
	margin: 0 0 16px;
	padding: 12px 14px;
	border: 1px solid #e3e8ee;
	border-radius: 12px;
	background: #fff;
}
.mh-np-door__hint {
	flex: 1 1 240px;
	min-width: 0;
	color: #6b7785;
	font-size: 13px;
	line-height: 1.5;
}
.mh-np-flag,
.entry-content a.mh-np-flag {
	display: inline-block;
	padding: 1px 8px;
	border: 1px solid #bfdcf3;
	border-radius: 999px;
	background: #eef6fd;
	color: #0f6aa8;
	font-size: 12px;
	font-weight: 600;
	line-height: 1.6;
	text-decoration: none;
	white-space: nowrap;
}
.entry-content a.mh-np-flag:hover {
	background: #dcecfa;
	color: #0b5a90;
}
.mh-np-await {
	display: inline-block;
	padding: 1px 8px;
	border-radius: 999px;
	background: #fbf1dc;
	color: #b7791f;
	font-size: 11.5px;
	font-weight: 600;
	line-height: 1.6;
	white-space: nowrap;
	vertical-align: middle;
}
.mh-np-driftrow,
.entry-content a.mh-np-driftrow {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 0 0 12px;
	padding: 10px 14px;
	border: 1px solid #f3e1b6;
	border-left: 3px solid #b45309;
	border-radius: 10px;
	background: #fffbeb;
	color: #7c4a03;
	font-size: 14px;
	font-weight: 600;
	text-decoration: none;
}
.entry-content a.mh-np-driftrow:hover {
	background: #fef3c7;
}
.mh-cabsearch__item.mh-np-searchnew {
	color: #0f6aa8;
	font-weight: 700;
}

/* --- responsive -------------------------------------------------------------------- */
@media (max-width: 1100px) {
	.mh-np-layout,
	.mh-np-review,
	.mh-np-result {
		grid-template-columns: minmax(0, 1fr);
	}
	.mh-np-aside {
		position: static;
	}
	.mh-np .mh-np-mini {
		display: block;
		margin: 0 0 12px;
		padding: 10px 12px;
		border: 1px solid var(--np-line);
		border-radius: 10px;
		background: #fff;
		color: #16232e;
		font-size: 13.5px;
		overflow-wrap: anywhere;
	}
	.mh-np-mini__go {
		color: var(--np-blue-d);
		font-weight: 600;
	}
	.mh-np-cats,
	.mh-np-starts {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}
@media (max-width: 900px) {
	.mh-np-fs {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}
@media (max-width: 800px) {
	.mh-np-two {
		grid-template-columns: minmax(0, 1fr);
	}
	.mh-np-look__cols {
		grid-template-columns: minmax(0, 1fr);
	}
	/* The step's buttons stay in reach: a fixed bar above the cabinet's dark bar (the .mh-vo__actbar precedent). */
	.mh-np--step1,
	.mh-np--step2,
	.mh-np--step3,
	.mh-np--result,
	.mh-np--list:has(.mh-np-bulkres .mh-np-actbar) {
		padding-bottom: 160px;
	}
	/* The result's «Mədaxil et → 104 qutu» / «Dərc et…» and the bulk banner's «Mədaxil et → N sətir». */
	.mh-np .mh-np-actbar--side {
		display: flex;
	}
	.mh-np .mh-np-actbar--side > details {
		flex: 1 1 0;
		min-width: 0;
		margin: 0;
	}
	.mh-np-bulkres .mh-np-actbar--side > .button {
		flex: 1 1 0;
	}
	/* While rows are selected the list's own selection bar holds the bottom of the screen. */
	body:has(form.mh-selbar.is-on) .mh-np-bulkres .mh-np-actbar {
		display: none;
	}
	.mh-np .mh-np-actbar {
		position: fixed;
		right: 0;
		bottom: 0;
		left: 0;
		z-index: 40;
		flex-direction: row;
		flex-wrap: nowrap;
		align-items: stretch;
		margin: 0;
		padding: 10px 92px 10px 12px;
		border-top: 1px solid var(--mh-line, #e3eaf1);
		background: var(--mh-canvas, #f4f8fb);
		box-shadow: 0 -4px 14px rgba(0, 0, 0, 0.1);
	}
	.mh-np .mh-np-actbar .button,
	.mh-np .mh-np-actbar .mh-np-textbtn {
		flex: 1 1 0;
		min-width: 0;
		margin: 0;
		padding-right: 10px;
		padding-left: 10px;
		text-align: center;
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}
	.mh-np .mh-np-actbar .mh-np-textbtn {
		flex: 0 0 auto;
	}
	.mh-np .mh-np-actbar .mh-np-primary {
		flex: 2 1 0;
	}
	/* Step 3's two create buttons share the bar: the words wrap rather than being cut. */
	.mh-np .mh-np-actbar--stack .button {
		padding: 8px 10px;
		font-size: 14px;
		line-height: 1.25;
		white-space: normal;
		text-overflow: clip;
	}
	.mh-np .mh-np-actbar--stack .mh-np-primary {
		flex: 1.3 1 0;
	}
	.mh-np .mh-np-primary {
		min-width: 0;
	}
	.mh-np-actbar__note {
		display: none;
	}
}
@media (max-width: 782px) {
	.mh-np ol.mh-np-steps {
		display: none;
	}
	.mh-np-stepm {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		justify-content: space-between;
		gap: 6px;
		margin: 0 0 14px;
	}
	.mh-np-stepm__t {
		color: var(--np-blue-d);
		font-size: 14px;
		font-weight: 700;
	}
	.mh-np-stepm__bar {
		display: block;
		flex: 0 0 100%;
		height: 4px;
		overflow: hidden;
		border-radius: 999px;
		background: var(--np-line);
	}
	.mh-np-stepm__bar > i {
		display: block;
		height: 100%;
		border-radius: 999px;
		background: var(--np-blue);
	}
	/* iOS zooms into any field under 16 px. */
	.mh-np input,
	.mh-np select,
	.mh-np textarea,
	.mh-np .mh-np-f input[type="text"],
	.mh-np .mh-np-f select,
	.mh-np .mh-np-f textarea,
	.mh-np .mh-np-tabs textarea,
	.mh-np table.mh-np-vars input[type="text"],
	.mh-np .mh-np-cg__adder select,
	.mh-np .mh-np-cg__adder input,
	.mh-np .mh-np-pall input[type="text"],
	.mh-np select.mh-np-wide,
	.mh-np .mh-np-sibpick select,
	.mh-np .mh-np-pass input[type="password"],
	.mh-np .mh-np-pw__f input[type="password"] {
		font-size: 16px; /* 16 px or iOS zooms the page on focus (the «Oxşar məhsul» picker was 14 px) */
	}
	/* The variation table becomes cards (one class heavier than WooCommerce's phone sheet). */
	.woocommerce-account .mh-np .mh-np-vt {
		overflow: visible;
		border: 0;
	}
	.woocommerce-account .mh-np table.mh-np-vars thead {
		display: none;
	}
	.woocommerce-account .mh-np table.mh-np-vars,
	.woocommerce-account .mh-np table.mh-np-vars tbody,
	.woocommerce-account .mh-np table.mh-np-vars tbody tr {
		display: block;
		width: 100%;
	}
	.woocommerce-account .mh-np table.mh-np-vars tbody tr {
		margin: 0 0 9px;
		padding: 8px 12px;
		border: 1px solid #e3e9ef;
		border-radius: 11px;
		background: #fff;
		box-sizing: border-box;
	}
	.woocommerce-account .mh-np table.mh-np-vars tbody tr[hidden] {
		display: none;
	}
	.woocommerce-account .mh-np table.mh-np-vars tbody tr td {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 10px;
		min-width: 0;
		padding: 4px 0;
		border: 0;
		white-space: normal;
	}
	.woocommerce-account .mh-np table.mh-np-vars tbody tr td::before {
		content: attr(data-label);
		flex: 0 0 34%;
		color: #5f6e7c;
		font-size: 11px;
		font-weight: 600;
	}
	.woocommerce-account .mh-np table.mh-np-vars tbody tr td > input[type="text"],
	.woocommerce-account .mh-np table.mh-np-vars tbody tr td > .mh-np-vars__p {
		flex: 1 1 auto;
		min-width: 0;
	}
	/* The SKU is the longest value: its label goes above it. */
	.woocommerce-account .mh-np table.mh-np-vars tbody tr td:nth-child(2) {
		flex-direction: column;
		align-items: stretch;
		gap: 3px;
	}
	.woocommerce-account .mh-np table.mh-np-vars tbody tr td:nth-child(2)::before {
		flex: none;
	}
	.woocommerce-account .mh-np table.mh-np-vars input[data-np-vsku] {
		min-width: 0;
	}
	.woocommerce-account .mh-np table.mh-np-vars tbody tr td.mh-np-vars__n {
		flex-wrap: wrap;
		font-size: 14.5px;
	}
	.woocommerce-account .mh-np table.mh-np-vars tbody tr td.mh-np-vars__n::before {
		display: none;
	}
	/* The list's table cards: long SKUs wrap, never push the card past the screen. */
	.woocommerce-account .mh-np table.mh-staff-table tbody tr td {
		min-width: 0;
		white-space: normal;
		overflow-wrap: anywhere;
	}
	.mh-np-cg__c {
		flex-basis: 100%;
	}
}
@media (max-width: 768px) {
	body:has(.mh-np-actbar) .storefront-handheld-footer-bar {
		display: block !important;
	}
	.mh-np .mh-np-actbar {
		bottom: calc(68px + env(safe-area-inset-bottom, 0px));
	}
}
@media (max-width: 640px) {
	.mh-np-cats,
	.mh-np-starts {
		grid-template-columns: minmax(0, 1fr);
	}
	.mh-np-seg {
		display: flex;
	}
	.woocommerce-account.logged-in .woocommerce-MyAccount-content .mh-np .mh-np-seg label {
		flex: 1 1 0;
	}
	.mh-np-seg span {
		padding: 8px 10px;
		text-align: center;
		white-space: normal;
	}
	.mh-np-pills__row {
		flex-wrap: nowrap;
		overflow-x: auto;
		padding-bottom: 4px;
	}
	.mh-np-anbarbar {
		flex-direction: column;
		align-items: stretch;
	}
	.mh-np-anbarbtn {
		width: 100%;
		box-sizing: border-box;
		text-align: center;
	}
	.mh-np-ctx .mh-np-ctx__chg {
		margin-left: 0;
	}
	/* Category cards: icon beside the text, so four cards fit a phone screen. */
	.mh-np .mh-np-cat {
		padding-left: 66px;
	}
	.mh-np .mh-np-cat__ic {
		position: absolute;
		top: 14px;
		left: 14px;
		margin: 0;
	}
	/* The list: a collapsed card still offers its bulk checkbox. */
	.woocommerce-account .mh-np .mh-scroll .mh-staff-table--cards tbody tr:not(.is-open) td.mh-check-col {
		display: inline-flex;
		width: 26px;
		padding: 0 !important;
		vertical-align: middle;
	}
	.woocommerce-account .mh-np .mh-scroll .mh-staff-table--cards tbody tr:not(.is-open) td.mh-check-col::before {
		display: none;
	}
	.woocommerce-account .mh-np .mh-scroll .mh-staff-table--cards tbody tr:not(.is-open) td.mh-check-col + td.mh-cell-lead {
		width: calc(100% - 34px);
	}
}
@media (max-width: 480px) {
	.mh-np-fs--2 {
		grid-template-columns: minmax(0, 1fr);
	}
	.mh-np-src {
		flex-wrap: wrap;
	}
}

/* ==== Owner 2026-10-04 — cluster A: staff price lists ==== */
/* Scr 1: the one muted line under «Brend» that says the sale prices hold for every seller of the brand and whose
   purchase price «Alış» is — tucked under the top bar, not a paragraph of its own. */
.mh-staff p.mh-prices-caption {
	margin: -6px 0 12px;
	font-size: 0.85em;
	line-height: 1.4;
}

/* ==== Owner 2026-10-04 — cluster B: checkout — consent box, payment cards, phone sizes ==== */

/* Owner 2026-10-04 (scr 11): on the iPhone the personal-data consent box was a 2-px dot. The label is a flex row
   (checkout block above), and WebKit lets a checkbox flex item shrink to nothing beside a long sentence — its
   automatic minimum width is 0 there, Blink keeps 13 px, so desktop and Android never showed it. A box that holds
   consent evidence (DataConsent, Art. 8.4) must be seen. Scoped to the labels that hold a checkbox in a flex row:
   a global input rule would pin the width:100% checkboxes of the staff filters instead (skeptic, F-11). */
.woocommerce-form__label-for-checkbox > input[type="checkbox"],
.mh-dp__cxline > input[type="checkbox"],
.mh-vo__cxform label > input[type="checkbox"] {
	flex: 0 0 auto;
	min-width: 18px;
	min-height: 18px;
	vertical-align: middle; /* the labels that are not flex (cabinet inline-block, login «remember me») */
	accent-color: var(--mh-blue);
}
.woocommerce-form__label-for-checkbox > input[type="checkbox"] {
	width: 18px;
	height: 18px;
}
/* The cabinet cancel lists (delivery page, view-order) are cluster F's phone surface: its ≤600 px block sizes these
   boxes 20 px at the same specificity, so B states 18 px only above that — whichever block lands later in the file,
   phones keep F's 20 px. The min-width/min-height floor above holds on every width either way. */
@media (min-width: 601px) {
	.mh-dp__cxline > input[type="checkbox"],
	.mh-vo__cxform label > input[type="checkbox"] {
		width: 18px;
		height: 18px;
	}
}
/* Checkout and order-pay: 22 px, the size of the payment rings below. 0,3,1 outranks Storefront's
   `.form-row input[type=checkbox]{width:auto}` (0,2,1). */
.woocommerce-checkout .woocommerce-form__label-for-checkbox > input[type="checkbox"] {
	width: 22px;
	min-width: 22px;
	height: 22px;
	margin: 0 8px 0 0;
}
.woocommerce-checkout .validate-required .woocommerce-form__label-for-checkbox {
	gap: 10px;
	line-height: 22px; /* one text line = the box: the box sits centred on the first line */
}
.woocommerce-checkout .validate-required .woocommerce-form__label-for-checkbox > input[type="checkbox"] {
	margin: 0; /* the flex gap spaces it */
}
/* «Razılığın tam mətni» lines up under the consent text, not under the box. */
.woocommerce-checkout .mh-pdp-consent__more {
	display: block;
	padding-left: 32px;
}

/* Owner 2026-10-04 (scr 3, 11): one payment method = one tappable card with a real ring. Until now only the text
   line answered a tap, an UNselected option wore Storefront's solid black ● (Font Awesome \f111) and looked
   selected, the selected one was WooCommerce purple (the Storefront customizer's accent), the last card lost its
   bottom border and padding to Storefront's `li:last-child` (1,3,1), and the open description sat in a grey
   #fafafa box. Every selector here also matches order-pay (its body carries .woocommerce-checkout too). */
.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method {
	padding: 0;
	border: 1px solid var(--mh-line);
	border-radius: 10px;
	margin: 0 0 8px;
	background: #fbfcfd;
	transition: border-color 0.15s ease, background-color 0.15s ease;
}
/* Storefront's customizer turns a hovered card #f0f0f0 at (1,3,1); iOS keeps :hover after a tap. */
.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method:hover {
	background: #fbfcfd;
}
@media (hover: hover) {
	.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method:hover {
		border-color: #b8cde0;
	}
}
.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method:has(> input:checked) {
	border-color: var(--mh-blue);
	background: var(--mh-accent-bg);
}
.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method > label {
	display: flex;
	align-items: center;
	gap: 12px;
	box-sizing: border-box;
	width: 100%;
	min-height: 52px;
	margin: 0;
	padding: 12px 14px;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.3;
	cursor: pointer;
}
/* The ring. content:"" !important — Storefront's checked rule (1,5,4) would otherwise bring the glyph back. */
.woocommerce-checkout #payment .payment_methods > .wc_payment_method > label::before {
	content: "" !important;
	flex: 0 0 22px;
	width: 22px;
	height: 22px;
	margin: 0;
	box-sizing: border-box;
	border: 2px solid #7d8b99; /* 3.4:1 on the card — a control edge must reach 3:1 */
	border-radius: 50%;
	background: #fff;
	transition: border-width 0.15s ease, border-color 0.15s ease;
}
.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method > input[type="radio"]:first-child:checked + label::before {
	border: 7px solid var(--mh-blue);
	color: var(--mh-blue); /* the customizer's purple (1,4,4) stays the computed colour otherwise */
}
/* The real radio stays clipped (Storefront), so a keyboard user needs the ring's card to show focus. */
.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method > input[type="radio"]:first-child:focus-visible + label {
	outline: 2px solid var(--mh-blue);
	outline-offset: -2px;
	border-radius: 10px;
}
/* A gateway logo (Storefront floats it) becomes the card's right end. */
.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method > label img {
	float: none;
	margin: 0 0 0 auto;
}
/* The description lines up under the title: 14 card padding + 22 ring + 12 gap. */
.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method > .payment_box {
	margin: 0;
	padding: 0 14px 12px 48px;
	background: transparent;
	font-size: 13.5px;
	line-height: 1.5;
	color: #5d6b7a;
}
/* The terms and consent rows sat on Storefront's #fafafa band under the cards. */
.woocommerce-checkout #payment .place-order {
	background: transparent;
}

/* Owner 2026-10-04 (scr 11): «fonts too small, hard to tap» on the iPhone — the phone sizes of the payment and
   consent part. The fields' font-size is NOT set here: the global touch focus-zoom rule (cluster F) owns it. */
@media (max-width: 600px) {
	/* Owner 2026-10-06: each size is its 360 px value × --mh-k — unchanged at 360, grown with a wider phone (TYPE block at the end). */
	.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method > label {
		font-size: calc(16px * var(--mh-k, 1));
	}
	.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method > .payment_box {
		font-size: calc(14px * var(--mh-k, 1));
	}
	.woocommerce-checkout .woocommerce-privacy-policy-text,
	.woocommerce-checkout .woocommerce-privacy-policy-text p {
		font-size: calc(14px * var(--mh-k, 1));
		line-height: 1.5;
	}
	.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper,
	.woocommerce-checkout .mh-checkout-terms {
		font-size: calc(14px * var(--mh-k, 1));
	}
	.woocommerce-checkout .mh-checkout-terms a,
	.woocommerce-checkout .mh-pdp-consent__more a {
		display: inline-block;
		padding: 6px 0;
	}
	.woocommerce-checkout .validate-required .woocommerce-form__label-for-checkbox {
		font-size: calc(15px * var(--mh-k, 1));
		padding: 4px 0;
	}
	.woocommerce-checkout .mh-pdp-consent__more {
		font-size: calc(14px * var(--mh-k, 1));
	}
	.woocommerce-checkout #place_order {
		min-height: 52px;
		font-size: calc(17px * var(--mh-k, 1)) !important;
	}
	.woocommerce-checkout .form-row .input-text,
	.woocommerce-checkout .form-row select,
	.woocommerce-checkout .form-row .select2-container .select2-selection--single {
		height: 48px; /* the notes textarea keeps its 84-px min-height */
	}
	.woocommerce-checkout .form-row .select2-container .select2-selection--single .select2-selection__rendered {
		line-height: 28px;
	}
	.woocommerce-checkout .form-row .select2-container .select2-selection--single .select2-selection__arrow {
		height: 46px;
	}
}

/* Owner 2026-10-04 (scr 11): ~87 px of blank under the checkout card — Storefront's .hentry margin (4.24em) and
   .site-main margin were never cleared on cart and checkout. One 24 px breath under the card, as the cabinet got
   on 2026-09-04. */
.woocommerce-cart .hentry,
.woocommerce-checkout .hentry,
.woocommerce-cart .site-main,
.woocommerce-checkout .site-main,
.woocommerce-cart .content-area,
.woocommerce-checkout .content-area {
	margin-bottom: 0;
}
.woocommerce-cart .site-content,
.woocommerce-checkout .site-content {
	padding-bottom: 24px;
}
/* Storefront's form{margin-bottom:1.618em} is the last thing in the checkout and order-pay column. */
.woocommerce-checkout form.checkout,
.woocommerce-checkout form#order_review {
	margin-bottom: 0;
}

/* Owner 2026-10-04 (scr 12): the order card's text on the iPhone. The free-delivery hint is printed inside <small>
   (ShippingFee::free_shipping_hint), which Storefront sets to 75 % — the 12.5 px the checkout block gives it came
   out as 9.4 px at every width. And Storefront's `#order_review .shop_table{margin-bottom:2.618em}` (1,1,0, ≥768)
   outranked the block's 14 px, leaving ~37 px between the hint and the payment cards on desktop. */
.woocommerce-checkout .woocommerce-checkout-review-order-table .mh-free-shipping-hint small {
	font-size: inherit;
}
.woocommerce-checkout #order_review .woocommerce-checkout-review-order-table {
	margin-bottom: 16px;
}
/* Phones: the checkout's own text up to a 14 px floor (body 16) — the sizes report F proposed for the checkout,
   which the type pass leaves to this block. */
@media (max-width: 600px) {
	/* Owner 2026-10-06: each size is its 360 px value × --mh-k — unchanged at 360, grown with a wider phone (TYPE block at the end). */
	body.woocommerce-checkout:not(.woocommerce-order-received):not(.woocommerce-order-pay) .site-main {
		font-size: calc(16px * var(--mh-k, 1));
	}
	.woocommerce-checkout .form-row label {
		font-size: calc(14px * var(--mh-k, 1));
	}
	.woocommerce-checkout #ship-to-different-address {
		font-size: calc(15px * var(--mh-k, 1));
	}
	.woocommerce-checkout .form-row a[href*="xerite"],
	.woocommerce-checkout .form-row .mh-geo-pick,
	.woocommerce-checkout .form-row .mh-geo-status {
		font-size: calc(14px * var(--mh-k, 1));
	}
	.woocommerce-checkout .woocommerce-checkout-review-order-table {
		font-size: calc(15px * var(--mh-k, 1));
	}
	.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total th,
	.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total td {
		font-size: calc(18px * var(--mh-k, 1));
	}
	.woocommerce-checkout .woocommerce-checkout-review-order-table .mh-free-shipping-hint td {
		font-size: calc(14px * var(--mh-k, 1));
	}
}

/* ==== Owner 2026-10-04 — cluster C: «Yeni hərəkət» — parameter lines, the tab's draft ==== */
/* scr 5: the short «— məhsul —» list of a parameter line names products, not facet values — wider than a facet
   select (10em); its title carries the whole label and what is left. */
.mh-no-paramrow select.mh-no-varsel {
	max-width: 18em;
}
/* scr 6: «Formanı təmizlə» — a quiet control under the step rail: starting over is a choice, not the next step. */
.mh-staff-new-order .mh-no-reset {
	margin: -12px 0 14px;
	text-align: right;
}
.mh-staff-new-order .mh-no-reset .button,
.mh-no-draftnote .button {
	font-size: 12px;
	line-height: 1.4;
	padding: 4px 12px;
	min-height: 0;
	background: #fff;
	color: #374151;
	border: 1px solid #d1d5db;
	box-shadow: none;
}
.mh-staff-new-order .mh-no-reset .button:hover,
.mh-no-draftnote .button:hover {
	transform: none;
	border-color: #9ca3af;
}
/* The notes of a restore and the offer «Bərpa et / Sil»: room for their own ✕ at the right. */
.mh-no-draftnote {
	position: relative;
	padding-right: 40px;
}
.mh-no-draftnote .button {
	margin-left: 6px;
	vertical-align: baseline;
}
.mh-no-draftnote__x {
	position: absolute;
	top: 6px;
	right: 8px;
	padding: 4px 6px;
	border: 0;
	background: none;
	color: inherit;
	font-size: 14px;
	line-height: 1;
	opacity: 0.55;
	cursor: pointer;
}
.mh-no-draftnote__x:hover,
.mh-no-draftnote__x:focus-visible {
	opacity: 1;
}
@media (max-width: 600px) {
	.mh-staff-new-order .mh-no-reset {
		margin-top: -8px;
	}
	.mh-no-draftnote .button {
		margin: 8px 8px 0 0;
	}
	/* the line's cell is the visible part of a table that scrolls sideways on a phone */
	.mh-no-paramrow select.mh-no-varsel {
		max-width: 15em;
	}
}

/* ==== Owner 2026-10-04 — cluster E: product cards ==== */

/* Owner 2026-10-04 (scr 10, 20, 21): «В корзину» stood at different heights on neighbouring cards. The card had no
   floor — the price and the buy row simply followed the title, so the button sat «image + title lines + label +
   price» down the card. Round 24g dropped the 2-line title reserve («with a grid they align anyway»: the grid row
   stretches the BOXES, not what is inside them), and no reserve could absorb names of 1 to 9 lines anyway. Each
   card is now a column and its link fills it; the title's bottom margin swallows the spare height, so the label,
   the price, the stepper and the button stand on the floor of every card in the row. Images and titles stay
   top-aligned. No line clamp: the variant («0 / 1», «40 / 50», «белый XL») lives in the middle and at the end of
   the name, and a clamp would make neighbours look identical. */
.woocommerce ul.products li.product {
	display: flex;
	flex-direction: column;
}

.woocommerce ul.products li.product > .woocommerce-LoopProduct-link {
	display: flex;
	flex-direction: column;
	flex: 1 0 auto;
	min-width: 0;
}

/* A flex item may shrink; the picture box must keep its size. */
.woocommerce ul.products li.product > .woocommerce-LoopProduct-link > img {
	flex: none;
}

/* !important: Round 24g sets the title margin with !important at the same weight. overflow-wrap:anywhere — no word
   may leave the card in any language. */
.woocommerce ul.products li.product .woocommerce-loop-product__title {
	margin: 0 0 auto !important;
	padding-bottom: 4px;
	overflow-wrap: anywhere;
}

/* Russian typesetting expects a hyphen: «быстрорассасывающийся» (167 px against 141-150 px of card) was cut
   mid-word with none. The pages are served as lang="ru-RU", so the browser hyphenates with its Russian rules. */
html[lang^='ru'] .woocommerce ul.products li.product .woocommerce-loop-product__title {
	-webkit-hyphens: auto;
	hyphens: auto;
	hyphenate-limit-chars: 12 5 4;
}

.woocommerce ul.products li.product > .mh-loop-buy {
	flex: none;
}

/* A column stretches its children; the bare buttons («Ətraflı», «Seçim edin», the filter-chosen variation) keep
   their centred content width, as before. */
.woocommerce ul.products li.product > .button,
.woocommerce ul.products li.product > .added_to_cart {
	flex: none;
	align-self: center;
}

/* After an AJAX add WooCommerce puts «Səbətə bax» after the button; it goes ABOVE the stepper instead, so that
   card's button stays level with the rest of its row. catalog.js moves the node there in the DOM as well (focus
   and screen-reader order follow the eye); order:-1 keeps the picture right if that script never ran. On the card
   it is the green text link designed at the top of this file: Storefront paints .added_to_cart as a dark button,
   which in a 150 px card became a 2-line dark pill with green text (about 3:1) taller than the buy row itself.
   #4a7a22 is 5.1:1 on white. On phones it keeps a 40 px tap target (the ≤600 px block below). */
.woocommerce ul.products li.product .mh-loop-buy > .added_to_cart {
	order: -1;
	flex-basis: 100%;
}

.woocommerce ul.products li.product .added_to_cart {
	background: none;
	border: 0;
	padding: 2px 0;
	color: #4a7a22;
	font-size: 0.85rem;
	line-height: 1.3;
	text-decoration: underline;
}

/* Owner 2026-10-04 (scr 20/21): the «per package of 12» label was a heavy blue 2-line pill. The staff counters'
   global .mh-badge (Round 12, procurement funnel) has the same weight as the designed green/amber labels and comes
   later, so it painted them blue and bold — on the card and on the product page. One class heavier and scoped to
   .mh-badges, which only ProductBadges prints: the staff badges keep their look. Text green #4a7a22 on the tint is
   4.7:1 (the old #588f2b was 3.6:1, under AA); amber 6.9:1. A 6 px radius, because a 2-line «stadium» reads as a
   blob, not a label. */
.mh-badges .mh-badge {
	min-width: 0;
	padding: 2px 8px;
	border-radius: 6px;
	font-size: 0.75rem;
	font-weight: 600;
	line-height: 1.35;
	letter-spacing: 0;
	text-align: inherit;
	text-wrap: balance;
}

.mh-badges .mh-badge--pack {
	background: var(--mh-green-bg);
	color: #4a7a22;
	border: 1px solid #cde3b3;
}

.mh-badges .mh-badge--preorder {
	background: #fff7ed;
	color: #9a3412;
	border: 1px solid #fed7aa;
}

/* Owner 2026-10-04 (Q3): three cards per row from 768 to 991 px, where the catalogue showed 2 cards 430 px wide.
   From 992 px the four per row of Round 25c stay (the filters open in a drawer, so a card is ~225 px at 1024).
   Phones keep 2 per row. The 3 related products on a product page fill one row. */
@media (min-width: 768px) and (max-width: 991px) {
	.woocommerce ul.products {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

/* Sale cards: Storefront's inline «Endirim!» flash sat ABOVE the picture and pushed it ~37 px down on sale cards
   only. It now sits on the picture's corner (li.product is position:relative; the link's R28 overflow does not
   clip it, the link is not its containing block). */
.woocommerce ul.products li.product .onsale {
	position: absolute;
	top: 8px;
	left: 8px;
	z-index: 2;
	margin: 0;
	background: #fff;
	color: #b91c1c;
	border-color: #fca5a5;
	font-size: 0.7rem;
}

/* «(qüvvədədir: 01.10 – 15.10)» is ~163 px and was nowrap inside the link's overflow:hidden — clipped. */
.woocommerce ul.products li.product .mh-sale-until {
	display: block;
	white-space: normal;
}

/* The sizer's fixed 15 px note ran 4 lines in a 150 px card. */
.woocommerce ul.products li.product .mh-sizer-note {
	font-size: 0.8rem;
}

/* Unified search cards (already a column): the price — and the pack label above it — on the floor. */
.mh-usr__price {
	margin-top: auto;
}

.mh-usr__card > .mh-badges {
	margin-top: auto;
}

.mh-usr__card > .mh-badges + .mh-usr__price {
	margin-top: 0;
}

/* Home featured strip: its price already sits on the floor; the pack label joins it there. */
.mhf-feat-card a > .mh-badges {
	margin-top: auto;
}

.mhf-feat-card a > .mh-badges + .mhf-feat-price {
	margin-top: 0;
}

.mh-usr__card > .mh-badges .mh-badge,
.mhf-feat-card a > .mh-badges .mh-badge {
	margin: 0;
}

/* Pre-order garments grid (?sifarisle=1): «Sifariş formasında aç →» on the floor of every card. */
.mh-preorder-cat__card > .mh-preorder-cat__cta {
	margin-top: auto;
}

/* Owner 2026-10-04 (scr 10, report F): type and targets on the 2-per-row phone grid — names 14.5 px, the buy
   button 15 px and 40 px tall, the stepper's buttons 40 px tall. The stepper is NOT widened: at 360 px a card has
   ~133 px inside for a stepper that already takes 120. «Səbətə əlavə et» is 112 px at 15 px: with Round 24g's 14 px
   sides it no longer fits a 360 px card (140 > 133) and broke onto 2 lines, so the sides come down to 8 px and the
   button is at least as wide as the stepper above it (short labels such as «В корзину» do not shrink to a stub).
   !important where Round 24g's rule is !important. */
@media (max-width: 600px) {
	/* Owner 2026-10-06: each size is its 360 px value × --mh-k — unchanged at 360, grown with a wider phone (TYPE block at the end). */
	.woocommerce ul.products li.product .woocommerce-loop-product__title {
		font-size: calc(14.5px * var(--mh-k, 1)) !important;
	}

	.woocommerce ul.products li.product .add_to_cart_button,
	.woocommerce ul.products li.product .button {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		min-height: 40px;
		min-width: min(120px, 100%);
		padding-left: 8px !important;
		padding-right: 8px !important;
		font-size: calc(15px * var(--mh-k, 1)) !important;
	}

	.woocommerce ul.products li.product .mh-qty--loop .mh-qty__btn {
		min-height: 40px;
	}

	/* Review 2026-10-06: the view-cart text link was ~22 px tall beside a 40 px stepper and button — same 40 px
	   target here; it still reads as a link (no fill, underlined). Block alignment, not flex: a flex box made
	   Storefront's «→» (::after) a separate item and pushed it to the card's edge. Where align-content on a block
	   is unsupported (before Safari 17.4) the text sits at the top of the same 40 px box. */
	.woocommerce ul.products li.product .added_to_cart {
		min-height: 40px;
		align-content: center;
	}
}

/* ==== Owner 2026-10-04 — cluster F: mobile type, tap targets and empty space ==== */
/* Owner 2026-10-04 (scr 11, 12, 15, 16, 17, 19): on his iPhone the text was small, the buttons hard to hit and
   the page stayed zoomed after a tap in a field; on the Android everything looked bigger. The iPhone renders the
   site 430 CSS px wide against the Android's 360, and the type here is fixed px tuned for ~360 — so the phone
   sizes are raised in place (no rem refactor: px declarations outnumber rem four to one). Type target on a phone:
   body 16px, secondary text 14px floor, captions and badges 13px (12.5px only for UPPERCASE kickers); tap
   targets 44px, 40px where a card cannot grow. The staff cabinet stays dense desktop UI (out of B); the
   checkout (cluster B), the product grid (cluster E) and the act-signing page's own sheet (cluster D) have their
   own passes. */

/* A — no iOS focus zoom. iOS WebKit (every iPhone browser, Chrome included) zooms the page when a text field
   under 16px takes focus and never zooms back — scr 11 is that 110 % page with «Меню» cut off. Touch devices
   only, staff pages too; a mouse never triggers it, so desktops keep their denser controls. No blanket
   !important: (1) a light floor, specificity (0,2,0), for every text-entry control whose size is inherited or
   set by a one- or two-class rule; (2) the heavier rules that set a smaller size, repeated so the later copy
   wins. Never shrunk: .mh-otp (the 28px code box) and .mh-cat-select (21px — the category TITLE on phones). */
@media (pointer: coarse) {
	:where(input:not([type="checkbox"], [type="radio"], [type="range"], [type="file"], [type="submit"], [type="button"], [type="reset"], [type="image"], [type="color"], [type="hidden"]), select, textarea):not(.mh-otp):not(.mh-cat-select) {
		font-size: 16px;
	}

	.widget_product_search input[type="search"],
	.mh-head-actions .site-search input[type="search"],
	.storefront-sorting .woocommerce-ordering select,
	.woocommerce ul.products li.product .mh-qty--loop .mh-loop-qty,
	.wc-pao-addon .wc-pao-addon-wrap select,
	.select2-container .select2-search--inline .select2-search__field,
	.woocommerce-checkout .form-row .input-text,
	.woocommerce-checkout .form-row select,
	.woocommerce-checkout .form-row textarea,
	.mh-cabsearch__form input[type="search"],
	.mh-cabsearch--head .mh-cabsearch__form input[type="search"],
	.mh-staff-new-order select.mh-no-cosel,
	form.mh-selbar.is-on select,
	form.mh-selbar.is-on input:not([type="checkbox"]):not([type="radio"]),
	.mh-co__attrs-t input[type="text"],
	.mh-co__attrs-t input[type="number"],
	#mh-co-lines .mh-co__ser select,
	.mh-co__form input[type="text"],
	.mh-co__form input[type="number"],
	.mh-sat__foot input[type="password"],
	.mh-np .mh-np-f input[type="text"],
	.mh-np .mh-np-f select,
	.mh-np .mh-np-f textarea,
	.mh-np .mh-np-tabs textarea,
	.mh-np select.mh-np-wide,
	.mh-np .mh-np-sibpick select,
	.mh-np .mh-np-cg__adder select,
	.mh-np .mh-np-cg__adder input,
	.mh-np .mh-np-pall input[type="text"],
	.mh-np table.mh-np-vars input[type="text"] {
		font-size: 16px;
	}
}

/* B — phone sizes on the customer's own pages (≤600px). Classes that only the customer pages print need no
   scope; the shared ones are scoped to the customer cabinet (body.mh-cab-c — the theme adds it to a signed-in
   customer's account pages and never to a staff cabinet page, the act-signing page or the checkout, so the
   signing page's own .mh-btn keeps its 17px/48px), or to body:not(.mh-staff-cabinet) outside the cabinet. */
@media (max-width: 600px) {
	/* Owner 2026-10-06: each size is its 360 px value × --mh-k — unchanged at 360, grown with a wider phone (TYPE block at
	   the end); the menu ✕ and the assistant's note keep their px. */
	/* cabinet home (scr 15/16): the card subtitles were 12.5px */
	.mh-home__contact {
		font-size: calc(15px * var(--mh-k, 1));
	}
	.mh-home__chip {
		font-size: calc(14px * var(--mh-k, 1));
	}
	.mh-home__card {
		gap: 14px;
		min-height: 72px;
		padding: 16px;
	}
	.mh-home__icon {
		width: 44px;
		height: 44px;
	}
	.mh-home__label {
		font-size: calc(17px * var(--mh-k, 1));
	}
	.mh-home__count {
		padding: 2px 9px;
		font-size: calc(13px * var(--mh-k, 1));
	}
	.mh-home__desc {
		font-size: calc(14.5px * var(--mh-k, 1));
		line-height: 1.4;
	}

	/* the back pill on every inner page */
	body.mh-cab-c a.mh-back.mh-cab-back {
		min-height: 44px;
		box-sizing: border-box;
		font-size: calc(15px * var(--mh-k, 1));
	}

	/* the buttons of the orders list and the delivery page (scr 17 «Запрос на отмену» was 36px, 13px). Russian
	   labels sit in half-width cells on a phone, so they wrap instead of running out of the button. */
	body.mh-cab-c .mh-btn {
		height: auto;
		min-height: 44px;
		padding-top: 8px;
		padding-bottom: 8px;
		box-sizing: border-box;
		font-size: calc(15px * var(--mh-k, 1));
		line-height: 1.25;
		white-space: normal;
		overflow-wrap: normal;
		text-align: center;
	}
	body.mh-cab-c .mh-btn--s {
		min-height: 40px;
		font-size: calc(14px * var(--mh-k, 1));
	}
	body.mh-cab-c .mh-btn--l {
		min-height: 48px;
		font-size: calc(16px * var(--mh-k, 1));
	}
	body.mh-cab-c .mh-btns .mh-movements__side .button {
		height: auto;
		min-height: 44px;
		font-size: calc(15px * var(--mh-k, 1));
		line-height: 1.25;
		white-space: normal;
	}
	/* the orders list's card: one class heavier than the phone card rules (height:40px; flex:1 1 0) — memory
	   note wc-responsive-table-specificity. Equal zero-basis thirds broke «Подписать акты» and «Подтвердить»
	   mid-word (the cell's overflow-wrap:anywhere) and pushed «✕ Отменить» past the card; each button now takes
	   its own width and the row wraps — two buttons a line, the rest full width below. */
	body.mh-cab-c.woocommerce-page table.account-orders-table.shop_table_responsive .woocommerce-orders-table__cell-order-actions .mh-btns > *,
	body.mh-cab-c.woocommerce-page table.account-orders-table.shop_table_responsive .woocommerce-orders-table__cell-order-actions .mh-btns form {
		flex: 1 1 auto;
	}
	body.mh-cab-c.woocommerce-page table.account-orders-table.shop_table_responsive .woocommerce-orders-table__cell-order-actions .mh-btns > .mh-btn {
		width: auto;
	}
	body.mh-cab-c.woocommerce-page table.account-orders-table.shop_table_responsive .woocommerce-orders-table__cell-order-actions .mh-btn,
	body.mh-cab-c.woocommerce-page table.account-orders-table.shop_table_responsive .woocommerce-orders-table__cell-order-actions .mh-movements__side .button {
		height: auto;
		min-height: 44px;
		overflow-wrap: normal;
	}
	body.mh-cab-c.woocommerce-page table.account-orders-table.shop_table_responsive .woocommerce-orders-table__cell-order-date,
	body.mh-cab-c.woocommerce-page table.account-orders-table.shop_table_responsive .woocommerce-orders-table__cell-order-kind {
		font-size: calc(14px * var(--mh-k, 1));
	}
	body.mh-cab-c .mh-cabtable .mh-ord__cat {
		font-size: calc(14px * var(--mh-k, 1));
	}
	body.mh-cab-c .mh-cabtable .mh-ord__no {
		font-size: calc(13.5px * var(--mh-k, 1));
	}
	.mh-cab-mtool__clear {
		padding: 11px 2px;
		font-size: calc(14px * var(--mh-k, 1));
	}

	/* the delivery page (?sebet= / ?herekat=) */
	.mh-dp .mh-dg__t {
		font-size: calc(16px * var(--mh-k, 1));
	}
	.mh-dp .mh-dg__t td.mh-dg__ser {
		font-size: calc(13.5px * var(--mh-k, 1));
	}
	.mh-dg__no {
		font-size: calc(13px * var(--mh-k, 1));
	}
	.mh-dg__pill {
		font-size: calc(13px * var(--mh-k, 1));
	}
	/* the long RU state («Доставка в пути — подтвердите, когда товар прибудет») ran past the card's edge; the
	   orders table already lets this pill wrap */
	.mh-dp .mh-ol-pill {
		max-width: 100%;
		box-sizing: border-box;
		white-space: normal;
		border-radius: 14px;
		line-height: 1.35;
	}
	/* the cancel-request lines: a row per product you can actually hit, and a 20px box. Pinned at flex 0 0 auto
	   although the cabinet's own `label` rule (0,3,1, inline-block) currently outranks these lists' flex rules —
	   a flex label with a long product name would shrink the box to a sliver on iOS (the scr 11 consent box). */
	.mh-dp__cx label.mh-dp__cxline {
		min-height: 40px;
		margin: 2px 0;
	}
	.mh-dp__cxline > input[type="checkbox"],
	.mh-vo__cxform label > input[type="checkbox"] {
		flex: 0 0 auto;
		width: 20px;
		height: 20px;
		margin: 0;
	}
	.mh-dp__cxline > .mh-dg__qty {
		flex: 0 0 auto;
	}

	/* the order page (view-order): the timeline's times were 11px */
	.mh-vo__tl small {
		font-size: calc(13px * var(--mh-k, 1));
	}

	/* Sənədlərim */
	.mh-cdl__chip {
		min-height: 40px;
		font-size: calc(14px * var(--mh-k, 1));
	}
	.mh-cdl__month {
		font-size: calc(12.5px * var(--mh-k, 1));
	}
	.mh-cdl__op {
		font-size: calc(13px * var(--mh-k, 1));
	}
	.mh-cdl__num {
		font-size: calc(14px * var(--mh-k, 1));
	}
	.mh-cdl__typ {
		font-size: calc(13px * var(--mh-k, 1));
	}
	.mh-cdl__goods {
		font-size: calc(14px * var(--mh-k, 1));
	}
	.mh-cdl__when {
		font-size: calc(13px * var(--mh-k, 1));
	}
	.mh-cdl__b {
		display: inline-flex;
		align-items: center;
		min-height: 40px;
		box-sizing: border-box;
		padding: 9px 14px;
		font-size: calc(14px * var(--mh-k, 1));
	}

	/* Bildirişlər */
	.mh-ntf__day {
		font-size: calc(12.5px * var(--mh-k, 1));
	}
	.mh-ntf__tx b {
		font-size: calc(15px * var(--mh-k, 1));
	}
	.mh-ntf__tx p {
		font-size: calc(14px * var(--mh-k, 1));
	}
	.mh-ntf__when,
	.mh-ntf__dest {
		font-size: calc(13px * var(--mh-k, 1));
	}
	/* the time and the «Sifariş →» door move under the text, so the title gets the row's width instead of a
	   145px column (three lines for «Akt imzanızı gözləyir» at 375) */
	.mh-ntf__row {
		flex-wrap: wrap;
		row-gap: 4px;
	}
	.mh-ntf__tx {
		flex: 1 1 calc(100% - 46px);
	}
	.mh-ntf__go {
		flex: 1 1 100%;
		flex-direction: row;
		align-items: baseline;
		justify-content: space-between;
		padding-left: 46px;
	}

	/* the bell's bottom sheet (customer bell only): the line under each title was 9.75px */
	.mh-bell--customer .mh-bell__menu a {
		min-height: 44px;
		box-sizing: border-box;
		padding: 11px 14px;
		font-size: calc(15px * var(--mh-k, 1));
		line-height: 1.35;
	}
	.mh-bell--customer .mh-bell__menu a small {
		font-size: calc(13px * var(--mh-k, 1));
	}

	/* footer: the links are the only way to the legal pages — bigger, and a 44px target each (the padding
	   takes over the row gap, so the lines sit only a little further apart) */
	body:not(.mh-staff-cabinet) .mh-footer-legal {
		font-size: calc(15px * var(--mh-k, 1));
	}
	body:not(.mh-staff-cabinet) .mh-footer-links {
		row-gap: 0;
	}
	body:not(.mh-staff-cabinet) .mh-footer-links a {
		padding: 10px 0;
	}

	/* the assistant's privacy notice */
	.mh-ai--pub .mh-ai__notice {
		font-size: 12.5px;
	}

	/* the menu sheet's ✕: a 44px target, the same small circle drawn inside it (background clipped to the
	   content box), and the negative margin keeps the sheet's head exactly as tall as before */
	body:not(.mh-staff-cabinet) .mh-drawer-x {
		width: 44px !important;
		height: 44px !important;
		margin: -7px -7px -7px 0;
		padding: 5px !important;
		background-clip: content-box !important;
		font-size: 15px !important;
	}

	/* Owner 2026-10-04 (scr 12, report F question 2): the floating assistant covered the payment options and the
	   totals. Hidden on the checkout and order-pay (both carry .woocommerce-checkout; the thank-you page keeps
	   it) and on the act-signing page shown inside the cabinet — ConfirmationPage prints
	   <main class="site-main mh-confirm-embed"> and no body class of its own. The bare SMS-link page prints no
	   wp_footer(), so it never had the bubble. */
	body.woocommerce-checkout:not(.woocommerce-order-received) .mh-ai,
	body:has(.mh-confirm-embed) .mh-ai {
		display: none;
	}
}

/* A notification row is one link, not prose: Storefront's `.hentry .entry-content a` underline (0,2,1) outranked
   the row's own text-decoration:none and underlined every title, body and time on Bildirişlər. */
.hentry .entry-content a.mh-ntf__row {
	text-decoration: none;
}

/* 16-17 — empty space under the last card (the rest is next to «one 24 px breath», above). */
/* scr 17: the cancel form's bottom margin stacked on the step's padding and the card's — and the card's own
   1.6em margin stacked on the content's padding when the card ends the page. */
.mh-dp__cx {
	margin-bottom: 0;
}
.woocommerce-MyAccount-content > .mh-mv-card:last-of-type {
	margin-bottom: 0;
}
/* The view-order (and thank-you) grid reserves room for its fixed action bar — but the bar is printed only when
   there is something to pay, cancel, return or adjust. A finished order kept 160px of nothing inside its card. */
@media (max-width: 800px) {
	.mh-vo:not(:has(> .mh-vo__actbar)) {
		padding-bottom: 0;
	}
}

/* ==== Owner 2026-10-04 — cluster G: phone menu chevrons, the filter sheet ==== */

/* (1) scr 14: one chevron, a real target. The ▾ was a 7px text glyph in a
   56px strip at the screen edge, unlike the language row's arrow (a different
   glyph 16px from the edge), and a tap that missed it landed on the label and
   opened the parent page. Now the label is a link as wide as its words (its
   page stays one tap away on the word itself) and the REST of the row is the
   toggle; the toggles and the language row draw the same .mh-chev, 16px from
   the sheet's edge, and only the icon rotates. Rows stay 48px, the sheet and
   its type are unchanged. Scoped to .handheld-navigation, so the desktop
   header's dropdown arrows are untouched. */
.handheld-navigation li.menu-item-has-children > a,
.site-header .main-navigation.toggled .handheld-navigation ul.menu > li.menu-item-has-children > a,
body.mh-compact-head .site-header .main-navigation.toggled .handheld-navigation ul.menu > li.menu-item-has-children > a,
body.mh-menu-open > .handheld-navigation ul.menu > li.menu-item-has-children > a {
	flex: 0 1 auto;
	width: auto;
	min-width: 0;
	max-width: calc(100% - 64px);
}

.handheld-navigation li.menu-item-has-children > .mh-submenu-toggle,
body.mh-menu-open > .handheld-navigation li.menu-item-has-children > .mh-submenu-toggle {
	float: none;
	flex: 1 0 64px;
	align-self: stretch;
	display: flex;
	align-items: center;
	justify-content: flex-end;
	width: auto;
	height: auto;
	min-height: 48px;
	margin: 0;
	padding: 0 16px 0 8px; /* chevron 16px from the edge = the language row's (padding 14px 16px) */
	border: 0;
	border-radius: 0;
	font-size: inherit;
	line-height: 1;
	background: none; /* outranks Storefront's button:hover grey on the now-wide target */
	color: inherit;
	box-shadow: none;
	-webkit-tap-highlight-color: transparent;
}

/* Rotating the whole (now wide) button would throw the chevron to the left. */
.handheld-navigation li.menu-item-has-children.mh-open > .mh-submenu-toggle {
	transform: none;
}

.handheld-navigation .mh-chev {
	display: block;
	flex: none;
	width: 20px;
	height: 20px;
	border-radius: 50%;
	transition: transform 0.18s ease, background-color 0.12s, box-shadow 0.12s;
}

.handheld-navigation li.menu-item-has-children.mh-open > .mh-submenu-toggle .mh-chev {
	transform: rotate(180deg);
}

/* Tap feedback on the icon replaces the grey flash over the wide row. */
.handheld-navigation .mh-submenu-toggle:active .mh-chev {
	background-color: #eef2f6;
	box-shadow: 0 0 0 7px #eef2f6;
}

.handheld-navigation .mh-submenu-toggle:focus {
	outline: none;
}

.handheld-navigation .mh-submenu-toggle:focus-visible .mh-chev {
	outline: 2px solid var(--mh-blue, #1789d6);
	outline-offset: 5px;
}

/* The language row prints its own .mh-chev (inc/lang.php); Storefront's Font
   Awesome arrow on nav buttons would make it two. nav.js injects the same kill
   for a phone on a stale stylesheet. */
.handheld-navigation ul.menu li .mh-langrow__btn::after {
	display: none !important;
	content: none !important;
}

@media (prefers-reduced-motion: reduce) {
	.handheld-navigation .mh-chev {
		transition: none;
	}
}

/* Compact head (the handheld menu opened inside the desktop header): the
   desktop row gap `.main-navigation ul.menu > li + li { margin-left: 1.4em }`
   reached these rows too, so every row but the first sat 22px to the right
   and their chevrons out of line with the first one's. */
body.mh-compact-head .site-header .main-navigation.toggled .handheld-navigation ul.menu > li {
	margin-left: 0;
}

/* (2) scr 13: the count label now speaks the page's language, and Russian is
   the longest («Показать 59 результатов», ~193px of bold text). With the 18px
   insets it broke onto two lines below 390px — a 360px Android included.
   Slightly tighter insets keep it on one line down to 360px; a narrower
   screen still wraps rather than clipping the number. */
@media (max-width: 400px) {
	.mh-drawer__foot {
		gap: 8px;
		padding-left: 14px;
		padding-right: 14px;
	}

	.mh-drawer__reset,
	.mh-drawer__apply {
		padding-left: 12px;
		padding-right: 12px;
	}
}

/* (3) scr 20-27.e: the filter sheet's own state. filters.js sets
   body.mh-filters-sheet-open instead of the menu's mh-drawer-open, which
   nav.js re-synced to the MENU's state on every resize (an iOS toolbar
   show/hide is one) and so stripped this sheet's lock. These give it exactly
   what mh-drawer-open gave it until now — the lock, the admin-bar header
   offset (see the note above body.admin-bar.mh-drawer-open), and on phones
   the header lift and the second dim layer — so the sheet looks as it did. */
body.mh-filters-sheet-open {
	overflow: hidden;
}

body.admin-bar.mh-filters-sheet-open .site-header {
	top: 0;
}

@media (max-width: 66.4989em) {
	body.mh-filters-sheet-open .site-header {
		z-index: 99996;
	}

	body.mh-filters-sheet-open .mh-drawer-dim {
		opacity: 1;
		pointer-events: auto;
	}

/* ==== Owner 2026-10-04 — cluster H: iPhone scroll «jumping» (scr 20–27) ==== */

/* 20-27.a — the handheld bar's room lives INSIDE the midnight footer.
   It was body padding of 68px + env(safe-area-inset-bottom). Chrome on the
   iPhone reports that inset as 0 while its toolbar is shown and ~34px while it
   is hidden, so the page grew and shrank by 34px in the middle of a scroll
   (the bottom of the page hopped), and the room was WHITE body background
   between the dark footer and the dark bar (scr 23–26).
   89 = 20 footer rhythm + 69 bar (68 row + 1 border), so the footer's
   content ends 20px above the bar. On iOS WebKit only — every iPhone browser,
   Chrome included; -webkit-touch-callout exists nowhere else — the room is
   CONSTANT: 123 = 89 + 34, the tallest portrait gesture zone, so the inset
   switching no longer changes the page height (max() still grows for a
   larger inset). Android and desktop keep 89 + env(), static there.
   Not on the brand sites: they hide the bar.
   Anything printed in normal flow on wp_footer would now sit UNDER the bar —
   print it on storefront_before_footer instead (MicrothaneNotice does).
   The staff phone rule body.mh-staff-user.mh-cabinet-mode { padding-bottom:
   64px } is gone too: this room is taller than the agent tab bar, and the
   body padding was a white band under the footer. */
	body:not(.mh-brandsite) .site-footer {
		padding-bottom: calc(89px + env(safe-area-inset-bottom, 0px));
	}
}

@media (min-width: 66.5em) {
	body.mh-compact-head:not(.mh-brandsite) .site-footer {
		padding-bottom: calc(89px + env(safe-area-inset-bottom, 0px));
	}
}

@supports (-webkit-touch-callout: none) {
	@media (max-width: 66.4989em) {
		body:not(.mh-brandsite) .site-footer {
			padding-bottom: max(123px, calc(89px + env(safe-area-inset-bottom, 0px)));
		}
	}

	@media (min-width: 66.5em) {
		body.mh-compact-head:not(.mh-brandsite) .site-footer {
			padding-bottom: max(123px, calc(89px + env(safe-area-inset-bottom, 0px)));
		}
	}
}

/* The Microthane®* patent footnote now prints above the footer (on
   storefront_before_footer, not after it on wp_footer): the same air below
   it as above, so it does not sit on the footer's blue rule. */
.mh-microthane-note {
	margin-bottom: 18px;
}

/* 20-27.c — no frosted glass on touch screens: a solid white header. The blur
   made WebKit re-sample and blur the page under the sticky header on every
   scroll frame — main-thread and compositor work at the very moment the
   iPhone's toolbar animation re-places the fixed layers (scr 25–26). The 88%
   white was visually almost identical. */
@media (hover: none) and (pointer: coarse) {
	.site-header {
		background: var(--mh-surface);
		-webkit-backdrop-filter: none;
		backdrop-filter: none;
	}
}

/* 20-27.d — the staff selection bar rides above the handheld bar wherever that
   bar shows (≤66.4989em and the compact head), not only ≤782px: between 783
   and 1063px it sat at bottom 18px on top of the bar's buttons.
   It must clear the assistant bubble too (review round). From 601px the
   bubble is the ~174px «AI Köməkçi» pill at 86px + env() (top 142px + env()):
   at 74px the bar shared its height band, and at 601–782px the «Yeni məhsul»
   list bar ran under the pill (measured; 4px clear at 783px). There the bar
   rises above the bubble: 86 + 56 + 8px air = 150px, whatever the label's
   language. On a phone (≤600px) the bubble is a 54px circle at right 10px;
   the bar (shrink-to-fit from left: 50%) stays low beside it — the real bars
   clear it by 26–33px at 360–390px. */
@media (max-width: 66.4989em) {
	form.mh-selbar.is-on {
		bottom: calc(150px + env(safe-area-inset-bottom, 0px));
	}
}

@media (max-width: 600px) {
	form.mh-selbar.is-on {
		bottom: calc(74px + env(safe-area-inset-bottom, 0px));
	}
}

@media (min-width: 66.5em) {
	body.mh-compact-head form.mh-selbar.is-on {
		bottom: calc(150px + env(safe-area-inset-bottom, 0px));
	}
}

/* ==== Owner 2026-10-04 — cluster I: the agent's «Ehtiyatım» on a phone ==== */
/* scr 29/30 (AgentDesk::render_reserve): «Haradan» is gone, the serial and a
   delivery's status sit under the SKU at every width, and on a phone (and a
   phone held sideways) «Əlimdəki mal» is ONE short grid per row —
   SKU + serial | Say | «19 gün» | «Sat» over «☐ Qaytar» — that fits 360 px
   in AZ, EN and RU without sideways scrolling. A grid of its own rather than
   the cabinet's .mh-staff-table--cards: the owner asked for a short TABLE,
   not cards; its breakpoints follow the phone (≤600 px, or ≤900 × ≤500 when
   held sideways). Cabinet rules on these cells are (0,2,3)–(0,3,1), so the
   phone rules below are written one class heavier. */
.mh-agd__table .mh-agd__ser {
	display: block;
	font-weight: 400;
	font-size: 11.5px;
	white-space: nowrap;
}

.mh-agd__table .mh-agd__note {
	display: block;
	margin-top: 4px;
}

.mh-agd__table .mh-agd__note .mh-agd__chip {
	white-space: normal;
	border-radius: 8px;
}

.mh-agd__table .mh-agd__retake {
	display: block;
	margin-top: 4px;
}

/* d-only / m-only: the same cell says «2026-10-23 · 19 gün» on a computer and
   «19 gün» on a phone — two text nodes, each translated on its own. */
.mh-agd__m-only {
	display: none;
}

@media (max-width: 600px), (max-width: 900px) and (max-height: 500px) {
	.mh-staff-table.mh-agd__table--mine,
	.mh-agd__table--mine thead,
	.mh-agd__table--mine tbody {
		display: block;
		width: 100%;
		overflow: visible;
	}

	.mh-staff-table.mh-agd__table--mine {
		font-size: 13px;
	}

	.mh-agd__table--mine tr {
		display: grid;
		grid-template-columns: minmax(0, 1fr) 2em 4.8em 6em;
		column-gap: 3px;
		align-items: center;
		padding: 8px 2px 8px 4px;
		border-bottom: 1px solid #e5eaf0;
	}

	.mh-agd__table--mine thead tr {
		background: #f1f5f9;
		border-bottom: 2px solid #cbd5e1;
		padding-top: 6px;
		padding-bottom: 6px;
	}

	.mh-agd__table--mine tbody tr:nth-child(even) {
		background: #e9eef5;
	}

	/* The header row scrolls with the page here: a grid row has no room for
	   a frozen cell, and short landscape screens have no room for one. */
	.mh-staff-table.mh-agd__table--mine th,
	.mh-staff-table.mh-agd__table--mine td,
	.mh-staff-table.mh-agd__table--mine thead tr:first-child th,
	.mh-staff-table.mh-agd__table--mine tbody tr:nth-child(n) > td {
		display: block;
		position: static;
		padding: 0;
		border: 0;
		background: transparent;
		box-shadow: none;
		min-width: 0;
	}

	.mh-agd__table--mine .mh-agd__name,
	.mh-agd__table--mine .mh-agd__exp,
	.mh-agd__table--mine th.mh-agd__sell {
		display: none !important;
	}

	.mh-agd__table--mine th.mh-agd__sku {
		grid-column: 1;
		grid-row: 1;
	}

	/* The SKU cell lends its three parts to the row: the SKU beside «Sat»,
	   the serial beside «☐ Qaytar», and a delivery's status note across the
	   whole row underneath — in the first column alone it was ~90 px wide. */
	.mh-staff-table.mh-agd__table--mine tbody tr:nth-child(n) > td.mh-agd__sku {
		display: contents;
	}

	.mh-agd__table--mine td.mh-agd__sku > b {
		grid-column: 1;
		grid-row: 1;
		align-self: end;
	}

	.mh-agd__table--mine td.mh-agd__sku > .mh-agd__ser {
		grid-column: 1;
		grid-row: 2;
		align-self: start;
	}

	.mh-agd__table--mine td.mh-agd__sku > .mh-agd__note {
		grid-column: 1 / -1;
		grid-row: 3;
		margin-top: 6px;
	}

	.mh-agd__table--mine .mh-agd__n {
		grid-column: 2;
		grid-row: 1 / span 2;
		text-align: center;
	}

	.mh-agd__table--mine .mh-agd__dl {
		grid-column: 3;
		grid-row: 1 / span 2;
	}

	.mh-agd__table--mine td.mh-agd__sell {
		grid-column: 4;
		grid-row: 1;
	}

	/* 2026-11-03: «Sat» per row is gone — the one «Seç» tick takes both rows of the last column. */
	.mh-agd__table--mine .mh-agd__ret {
		grid-column: 4;
		grid-row: 1 / span 2;
		align-self: center;
	}

	.mh-agd__table--mine th.mh-agd__ret {
		grid-row: 1;
		margin: 0;
		font-size: 0;
	}

	.mh-agd__table--mine thead th {
		font-size: 11.5px;
		line-height: 1.2;
		white-space: normal;
	}

	.mh-agd__table--mine .mh-agd__d-only {
		display: none;
	}

	.mh-agd__table--mine .mh-agd__m-only {
		display: inline;
	}

	.mh-agd__table--mine .mh-agd__sku b {
		overflow-wrap: anywhere;
	}

	.mh-agd__table--mine .mh-agd__ser {
		font-size: 11px;
		white-space: normal;
		overflow-wrap: normal;
		word-break: keep-all;
	}

	.mh-staff-table.mh-agd__table--mine .mh-agd__retake {
		white-space: normal;
		text-align: left;
	}

	.mh-agd__table--mine .mh-agd__dl .mh-agd__chip {
		white-space: normal;
		border-radius: 8px;
		padding: 1px 4px;
	}

	.mh-staff-table.mh-agd__table--mine .mh-agd__sell .button {
		display: block;
		width: 100%;
		text-align: center;
		padding: 6px 4px;
		font-size: 12.5px;
		white-space: nowrap;
	}

	.woocommerce-account.logged-in .woocommerce-MyAccount-content .mh-agd__table--mine .mh-agd__ret label {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		gap: 4px 5px;
		margin: 0;
		font-size: 12.5px;
		font-weight: 600;
	}

	.mh-agd__table--mine .mh-agd__ret input[type="checkbox"] {
		width: 18px;
		height: 18px;
		margin: 0;
		flex: none;
	}

	/* The count box shows only when more than one unit is held. Sized in px:
	   on touch screens every text input is set to 16 px (no iOS focus zoom),
	   and an em width would grow with it past the column. */
	.mh-staff-table.mh-agd__table--mine input.mh-agd__qty {
		width: 56px;
		max-width: 100%;
		padding: 4px 5px;
	}

	/* The siblings on the same page fit 360 px too: «Anbara aparılan mal»
	   keeps SKU (serial under it), Say, Kimdən and the action; «Sorğularım»
	   prints its action under the state and hides the action column. */
	.mh-staff-table.mh-agd__table--carried,
	.mh-staff-table.mh-agd__table--req {
		display: table;
		width: 100%;
	}

	.mh-agd__table--carried .mh-agd__name,
	.mh-agd__table--carried .mh-agd__doc,
	.mh-agd__table--carried .mh-agd__since,
	.mh-agd__table--req .mh-agd__actcol {
		display: none;
	}

	.mh-staff-table--dense.mh-agd__table--carried td:first-child,
	.mh-staff-table--dense.mh-agd__table--req td:first-child {
		min-width: 0;
	}

	.mh-agd__table--carried .mh-agd__sku b {
		overflow-wrap: anywhere;
	}

	.mh-agd__table--carried .mh-agd__chip,
	.mh-agd__table--req .mh-agd__chip {
		white-space: normal;
		border-radius: 8px;
	}

	.mh-agd__table--carried .button,
	.mh-agd__table--req .button {
		white-space: normal;
	}

	.mh-agd__table--req div.mh-agd__m-only {
		display: block;
		margin-top: 4px;
	}

	.mh-staff-table.mh-agd__table--req td:first-child {
		white-space: nowrap;
	}

	.mh-staff-table.mh-agd__table--req td:nth-child(2) {
		overflow-wrap: anywhere;
	}

	.mh-staff-table--dense.mh-agd__table--req .button {
		padding: 4px 8px;
	}

	/* «Ehtiyatımı artır»'s request list (drawn by the picker script): the
	   «anbarda N» figure goes under the count box instead of beside it. */
	.mh-staff-table#mh-agd-req-table {
		display: table;
		width: 100%;
	}

	.mh-staff-table--dense#mh-agd-req-table td:first-child {
		min-width: 0;
		overflow-wrap: anywhere;
	}

	#mh-agd-req-table .mh-agd__left {
		display: block;
		margin: 4px 0 0;
		white-space: normal;
	}

	.mh-staff-table#mh-agd-req-table input.mh-agd__qty {
		width: 56px;
	}
}

/* The narrowest phones (320 px): «Sorğularım»'s date may wrap again, or the
   EN / RU state column would push the table past its box. */
@media (max-width: 339px) {
	.mh-staff-table.mh-agd__table--req td:first-child {
		white-space: normal;
	}

	.mh-staff-table--dense.mh-agd__table--req td,
	.mh-staff-table--dense.mh-agd__table--req th {
		padding-left: 3px;
		padding-right: 3px;
	}
}

/* ==== Owner 2026-10-04 — found on the walk after the merge ==== */
/* The side buttons of a delivery page («↩ Ещё не доставлено», «Запрос на отмену») outside an .mh-btns row were
   still 12px text in a 29px box on a phone — the tap target the owner's scr 11–19 complain about. */
@media (max-width: 600px) {
	/* Owner 2026-10-06: each size is its 360 px value × --mh-k — unchanged at 360, grown with a wider phone (TYPE block at the end). */
	body.mh-cab-c .mh-movements__side .button {
		font-size: calc(14px * var(--mh-k, 1));
		line-height: 1.25;
		padding: 9px 14px;
		min-height: 40px;
	}
}

/* ==== Owner 2026-10-06 — TYPE ==== */
/* Owner 2026-10-06 («Currently font size on my android is good. Should be good also on iPhone»): his Android draws
   the site 360 CSS px wide, his iPhone 430 (report F, measured on the screenshots), so the same px reads ~19 %
   smaller on the iPhone. The phone sizes of 2026-10-04 were tuned at 360 and stay exactly as they are there; on a
   wider phone the customer's text grows with the screen, so every phone keeps the Android's proportions.
   --mh-k = this phone's width / 360, in bands (portrait phones only): 1 up to 374, 1.04 at 375–389 (iPhone mini /
   SE / 8), 1.083 at 390–409 (iPhone 12–16), 1.139 at 410–427 (Plus / XR / large Android), 1.194 at 428–600 (Pro Max
   / Plus 430). Nothing above 600 px — a phone held sideways and every tablet or desktop keep k = 1.
   Used as calc(<px at 360> * var(--mh-k, 1)) by the ≤600 px rules of the cluster B, E and F blocks (and the walk
   block) above, and here by the customer pages' base text, so em and inherited text follow. Fixed-size controls
   keep their px (the qty stepper, the menu ✕), text fields keep the 16 px focus-zoom floor of block A, and the
   assistant's panel (capped at 360 px, its own text 14 px) keeps its 12.5 px privacy note under the conversation. */
:root {
	--mh-k: 1;
}
@media (min-width: 375px) and (max-width: 389.98px) {
	:root {
		--mh-k: 1.04;
	}
}
@media (min-width: 390px) and (max-width: 409.98px) {
	:root {
		--mh-k: 1.083;
	}
}
@media (min-width: 410px) and (max-width: 427.98px) {
	:root {
		--mh-k: 1.139;
	}
}
@media (min-width: 428px) and (max-width: 600px) {
	:root {
		--mh-k: 1.194;
	}
}
/* The staff and agent cabinet is dense desktop UI (tables an agent reads at 14 px on any phone): k = 1 there, so no
   shared phone rule above can grow it. mh-staff-cabinet = an account page seen by staff (StaffCabinet). */
body.mh-staff-cabinet {
	--mh-k: 1;
}
@media (max-width: 600px) {
	/* The customer's base text: inherited and em sizes grow with the phone too (body was a flat 16 px). */
	body:not(.mh-staff-cabinet) {
		font-size: calc(16px * var(--mh-k, 1));
	}

	/* The same surfaces' text whose size sits outside those ≤600 px rules, where leaving it would turn the order
	   upside down on a 430 phone. Each keeps its original selector (same weight, same winner) and its 360 px size.
	   Product cards — the price (1rem) would end smaller than the name above it, and the label, the view-cart link,
	   the sale flash and the sizer note belong to the same card. The qty stepper is NOT here: 120 px wide, it must
	   still fit a 360 px card. */
	.woocommerce ul.products li.product .price {
		font-size: calc(1rem * var(--mh-k, 1)) !important;
	}
	.mh-badges .mh-badge {
		font-size: calc(0.75rem * var(--mh-k, 1));
	}
	.woocommerce ul.products li.product .added_to_cart {
		font-size: calc(0.85rem * var(--mh-k, 1));
	}
	.woocommerce ul.products li.product .onsale {
		font-size: calc(0.7rem * var(--mh-k, 1));
	}
	.woocommerce ul.products li.product .mh-sizer-note {
		font-size: calc(0.8rem * var(--mh-k, 1));
	}
	/* Checkout — the page title and the section headings («Ваш заказ», 18 px) would end smaller than the rows and
	   the payment cards under them (19.1 px at 430). The consent rows: one text line = the 22 px box (cluster B), so
	   the line grows with the text and the box moves down by half the difference — still centred on line one. */
	.woocommerce-checkout:not(.woocommerce-order-received):not(.woocommerce-order-pay) .entry-title {
		font-size: calc(22px * var(--mh-k, 1));
	}
	.woocommerce-checkout #customer_details h3,
	.woocommerce-checkout #order_review_heading {
		font-size: calc(18px * var(--mh-k, 1));
	}
	.woocommerce-checkout .validate-required .woocommerce-form__label-for-checkbox {
		line-height: calc(22px * var(--mh-k, 1));
	}
	.woocommerce-checkout .validate-required .woocommerce-form__label-for-checkbox > input[type="checkbox"] {
		margin-top: calc((var(--mh-k, 1) - 1) * 11px);
	}
	/* Customer cabinet — the page title, the greeting, and the product lines of the two cancel-request lists (the
	   cabinet's 0.92rem label size) beside the delivery page's goods table. */
	.woocommerce-account.logged-in .entry-header .entry-title {
		font-size: calc(1.45rem * var(--mh-k, 1));
	}
	.mh-home__hi {
		font-size: calc(26px * var(--mh-k, 1));
	}
	.woocommerce-account.logged-in .woocommerce-MyAccount-content label.mh-dp__cxline,
	.woocommerce-account.logged-in .woocommerce-MyAccount-content .mh-vo__cxform label {
		font-size: calc(0.92rem * var(--mh-k, 1));
	}

	/* Review round (Owner 2026-10-06 goal: every phone keeps the 360 px proportions). The base rule above also
	   reached pages whose own design sets nearly every size in px / rem, which k does not touch: there only the
	   inherited text grew, so one page carried two scales. Measured at 430: on the home page (.mhf-*, no wrapper of
	   its own) the hero lead and five more paragraphs 16 → 19.1 px under 26 px headings, the professionals'
	   subtitle above smaller step titles (16.5 px); on the brand / about / contact / info pages (.mh-brand) and
	   «Tibb mütəxəssisləri üçün» (.mhp) the closing band's text and buttons 19.1 px under a 22.4 px heading; on the
	   search page (.mh-brand.mh-usr) the article titles 19.1 px against a fixed 18.4 px «Материалы». These designs
	   keep today's 16 px base, i.e. exactly what is deployed, until the owner says whether they should grow too
	   (record, question 2). Header, footer, handheld bar, menu sheet and assistant sit outside these wrappers and
	   keep their own sizes. */
	body.home #content,
	.mh-brand,
	.mhp {
		font-size: 16px;
	}
	/* The pack label scaled above is the only k-sized text inside those wrappers (the home page's featured strip,
	   the search cards): beside their fixed 14 / 15.2 px names it keeps its 360 px size there too. */
	body.home #content .mh-badges .mh-badge,
	.mh-brand .mh-badges .mh-badge {
		font-size: 0.75rem;
	}
	/* The guest price notice (catalogue, product page) and the configurator's notices: the title is a fixed
	   1rem !important (≤991 px), the line under it 0.92em of the body — at 430 the line (17.6 px) outgrew its
	   bold title (16 px). The line keeps its 360 px size, so the notice stays one compact unit above the products
	   (the amber notice is all rem already and keeps its own heavier rule). */
	.mh-cta-banner__text span {
		font-size: 0.92rem;
	}
}

/* Audit 2026-10-11 b7: attention-first Panel and explicit register identities. */
.mh-pa.mh-pa--ordered { display: block; }
.mh-pa--ordered .mh-pa__kpis { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.mh-pa__mail-tab { margin: 16px 0 8px; }
.mh-pa__attention-item { min-width: 0; }
.mh-pa__attention-item + .mh-pa__attention-item { border-top: 1px solid #eef1f4; }
.mh-pa__attention-item > .mh-crm-card-link { display: inline-block; margin: 0 0 6px 20px; font-size: 12px; }
.mh-co__links { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 12px; }
.mh-co__links .button { white-space: normal; }
.mh-pa__activity { display: flex; flex-wrap: wrap; gap: 6px 14px; margin: 14px 0; font-size: 13px; }
.mh-mobile-summary { display: none; }
@media (max-width: 640px) {
	.mh-pa--ordered .mh-pa__kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.mh-scroll .mh-staff-table--cards tbody tr:not(.is-open) td.mh-cell-summary { width: 100%; }
	.mh-scroll .mh-staff-table--cards tbody tr:not(.is-open) .mh-cell-original { display: none; }
	.mh-scroll .mh-staff-table--cards tbody tr:not(.is-open) .mh-mobile-summary { display: block; overflow-wrap: anywhere; line-height: 1.45; }
	.mh-scroll .mh-staff-table--cards tbody tr.is-open .mh-cell-summary::before { display: inline; }
	/* Journal owns its table: keep every existing column filter reachable on phones. */
	.mh-scroll .mh-jr__table thead { display: block; }
	.mh-scroll .mh-jr__table thead > tr:first-child { display: none; }
	.mh-scroll .mh-jr__table .mh-filter-row { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; padding: 8px; }
	.mh-scroll .mh-jr__table .mh-filter-row th { display: block; min-width: 0; padding: 0; }
	.mh-scroll .mh-jr__table .mh-filter-row th:last-child { display: none; }
	.mh-scroll .mh-jr__table .mh-filter-row th::before { content: attr(data-label); display: block; font-size: 12px; }
	.mh-scroll .mh-jr__table .mh-filter-row input { width: 100%; min-width: 0; }
}
@media (max-width: 600px) {
	.mh-cabhub .mh-cabhub__grid { gap: 8px; }
	.mh-cabhub a.mh-cabhub__card { flex-direction: row; align-items: center; min-width: 0; }
	.mh-cabhub .mh-cabhub__media { flex: 0 0 44px; height: 44px; margin: 10px; border-radius: 8px; }
	.mh-cabhub .mh-cabhub__media svg { width: 26px; height: 26px; }
	.mh-cabhub .mh-cabhub__body { min-width: 0; padding: 10px 10px 10px 0; gap: 2px; }
	.mh-cabhub .mh-cabhub__name { font-size: calc(14px * var(--mh-k, 1)); line-height: 1.3; overflow-wrap: anywhere; }
	.mh-cabhub .mh-cabhub__lead { font-size: calc(12px * var(--mh-k, 1)); line-height: 1.4; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
	.mh-mobile-summary { font-size: calc(13px * var(--mh-k, 1)); }
	.mh-pa__activity { font-size: calc(12px * var(--mh-k, 1)); }
}

/* b13: operational settings, glossary and compact collection/archive surfaces. */
.mh-settings__tabs,
.mh-document-filters { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 12px 0 20px; }
.mh-settings__tabs [aria-current="page"] { box-shadow: inset 0 -3px #0f6aa8; }
.mh-staff .mh-document-filters__pill {
	display: inline-flex; align-items: center; gap: 7px; width: auto; min-width: 0;
	height: auto; min-height: 28px; padding: 4px 10px; border: 1px solid #d6e1ea;
	border-radius: 999px; background: #f5f8fb; color: #304354; font-size: 12px;
	line-height: 1.2; white-space: nowrap; text-decoration: none;
}
.mh-staff .mh-document-filters__pill[aria-current="page"] { border-color: #0f6aa8; background: #eaf3fb; color: #0f6aa8; }
.mh-document-filters__count { display: inline-block; padding: 2px 6px; border-radius: 9px; background: #fff; font-size: 11px; font-variant-numeric: tabular-nums; }
.mh-debts > h2,
.mh-debts > h3 { font-size: calc(18px * var(--mh-k, 1)); line-height: 1.35; margin: 28px 0 12px; }
.mh-help-link--context { display: inline-flex; align-items: center; justify-content: center; min-width: 24px; min-height: 24px; border: 1px solid #c5d4e0; border-radius: 50%; font-size: 12px; color: #0f6aa8; vertical-align: middle; text-decoration: none; }
dialog.mh-help { box-sizing: border-box; position: fixed; inset: 0 0 0 auto; width: min(460px, 100vw); max-width: 100vw; height: 100dvh; max-height: 100dvh; margin: 0; padding: 24px; border: 0; background: #fff; color: #263746; overflow-y: auto; box-shadow: -8px 0 40px #13263826; }
dialog.mh-help::backdrop { background: #13263866; }
.mh-help header { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.mh-help header h2 { margin: 0; }
.mh-help header button { min-width: 44px; min-height: 44px; padding: 6px; background: #eef3f7; color: #263746; font-size: 24px; border-radius: 8px; }
.mh-help nav { display: flex; flex-wrap: wrap; gap: 8px 14px; margin: 24px 0; }
.mh-help section { padding: 18px 0; border-top: 1px solid #e4ebf1; scroll-margin-top: 16px; }
.mh-help section:focus { outline: 2px solid #0f6aa8; outline-offset: 4px; }
.mh-help h3 { margin: 0 0 8px; font-size: 18px; }
.mh-help p { line-height: 1.6; margin: 8px 0; }
@media (max-width: 640px) {
	.mh-debts .mh-scroll { overflow-x: visible; }
	.mh-debts .mh-debts-table { min-width: 0; width: 100%; }
	.mh-debts .mh-debts-table tbody tr:not(.is-open) td:not(.mh-cell-summary):not(.mh-debts-action) { display: none; }
	.mh-debts .mh-debts-table tbody tr:not(.is-open) td.mh-debts-action { display: block; width: 100%; padding-top: 4px; }
	.mh-debts .mh-debts-table .mh-debts-action form { margin: 0; }
	.mh-debts .mh-debts-table td { overflow-wrap: anywhere; }
	.mh-help-link--context { min-width: 32px; min-height: 32px; }
}

/* =====================================================================
   Owner GO 2026-10-16 — sign-in, registration, phone code, the online
   contract page (Users\OtpLogin, Users\Registration\Registration,
   Users\PhoneGate, Account\ContractPage). Inputs stay at 16 px or iOS
   Safari zooms in on focus; every control is at least 44 px tall.
   ===================================================================== */
.mh-auth-page { max-width: 560px; margin: 0 auto; padding: 8px 0 96px; display: flex; flex-direction: column; gap: 18px; }
.mh-auth-tabs { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-bottom: 1px solid var(--mh-line); }
.mh-auth-tabs__tab { display: flex; align-items: center; justify-content: center; min-height: 48px; font-weight: 600; color: var(--mh-muted); text-decoration: none; border-bottom: 3px solid transparent; margin-bottom: -1px; }
.mh-auth-tabs__tab.is-active { color: var(--mh-blue-dark); border-bottom-color: var(--mh-blue); }
.mh-auth, .mh-contract { display: flex; flex-direction: column; gap: 16px; color: var(--mh-ink); }
.mh-auth p, .mh-contract p { margin: 0; }
.mh-auth__title { margin: 0; font-size: 28px; font-weight: 800; letter-spacing: -0.02em; line-height: 1.2; text-wrap: balance; }
.mh-auth__lead { font-size: 15px; line-height: 1.55; color: var(--mh-muted); }
.mh-auth__lead strong { color: var(--mh-ink); font-weight: 600; }
.mh-auth__form, .mh-contract__form { display: flex; flex-direction: column; gap: 16px; margin: 0; }
.mh-auth__field { display: flex; flex-direction: column; gap: 6px; margin: 0; }
.mh-auth__field label, .mh-choice legend, .mh-sups legend { font-size: 14px; font-weight: 600; color: var(--mh-ink); }
.mh-auth__opt { font-weight: 400; color: var(--mh-muted); }
.mh-auth .input-text, .mh-contract .input-text, .mh-auth input[type="tel"], .mh-auth input[type="email"], .mh-auth input[type="text"], .mh-auth input[type="password"] {
	width: 100%; min-height: 48px; box-sizing: border-box; padding: 10px 12px; font-size: 16px; line-height: 1.4;
	border: 1px solid #c9d5e0; border-radius: 2px; background: #fff; color: var(--mh-ink); box-shadow: none;
}
.mh-contract textarea.input-text { min-height: 72px; resize: vertical; }
.mh-auth .input-text:focus, .mh-contract .input-text:focus { outline: none; border-color: var(--mh-blue); box-shadow: 0 0 0 2px rgba(23, 137, 214, 0.25); }
.mh-auth__hint { font-size: 13px; line-height: 1.45; color: var(--mh-muted); }
.mh-auth__fine { font-size: 13px; line-height: 1.5; color: var(--mh-muted); }
.mh-auth__pair { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.mh-auth__code { text-align: center; font-size: 26px !important; font-weight: 600; letter-spacing: 0.3em; min-height: 56px !important; border: 2px solid var(--mh-blue) !important; }
.mh-auth__code--sign { border-color: #0f766e !important; }
.mh-auth__primary, .mh-auth .button.mh-auth__primary { display: flex; align-items: center; justify-content: center; width: 100%; min-height: 48px; border: 0; border-radius: 999px; background: var(--mh-blue); color: #fff; font-size: 16px; font-weight: 600; text-decoration: none; cursor: pointer; }
/* Owner 2026-11-03 (scr 15): «Войти» sat flush under «Запомнить меня» — both live in one <p> with no margins. */
.woocommerce-account .mh-auth-page label.mh-check.woocommerce-form-login__rememberme { margin-bottom: 22px; }
.mh-auth__primary:hover { background: var(--mh-blue-dark); color: #fff; }
.mh-auth__secondary, .mh-contract .button.mh-auth__secondary { display: flex; align-items: center; justify-content: center; width: 100%; min-height: 48px; border: 1px solid #c9d5e0; border-radius: 8px; background: #fff; color: var(--mh-ink); font-size: 15px; font-weight: 600; text-decoration: none; cursor: pointer; }
.mh-auth__alt { margin: 0; }
.mh-auth__link { display: inline-flex; align-items: center; min-height: 44px; padding: 0; border: 0; background: none; color: var(--mh-blue-dark); font-size: 15px; font-weight: 600; text-decoration: none; cursor: pointer; }
.mh-auth__switch { margin: 0; text-align: center; font-size: 15px; color: var(--mh-muted); }
.mh-auth__divider { display: flex; align-items: center; gap: 12px; color: var(--mh-muted); font-size: 13px; }
.mh-auth__divider::before, .mh-auth__divider::after { content: ""; flex: 1; height: 1px; background: var(--mh-line); }
.mh-auth-page .mh-google-login { margin: 0; }
.mh-auth-page .mh-google-btn { display: flex; align-items: center; justify-content: center; width: 100%; min-height: 48px; border: 1px solid #c9d5e0; border-radius: 999px; background: #fff; color: var(--mh-ink); font-weight: 600; }
.mh-check { display: flex; gap: 12px; align-items: flex-start; font-size: 15px; line-height: 1.45; cursor: pointer; margin: 0; }
.mh-check input[type="checkbox"] { flex: none; width: 22px; height: 22px; margin: 1px 0 0; accent-color: #0f766e; }
.mh-steps { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; }
.mh-steps__item { display: flex; flex-direction: column; gap: 6px; margin: 0; }
.mh-steps__bar { height: 4px; background: var(--mh-line); }
.mh-steps__label { font-size: 12px; color: var(--mh-muted); }
.mh-steps__item.is-done .mh-steps__bar { background: var(--mh-green); }
.mh-steps__item.is-done .mh-steps__label { color: var(--mh-green-dark); }
.mh-steps__item.is-now .mh-steps__bar { background: var(--mh-blue); }
.mh-steps__item.is-now .mh-steps__label { color: var(--mh-blue-dark); font-weight: 600; }
.mh-choice { border: 0; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.mh-choice legend { padding: 0; margin-bottom: 8px; }
.mh-choice__opt { display: flex; gap: 12px; align-items: center; min-height: 56px; box-sizing: border-box; padding: 10px 14px; border: 1px solid #c9d5e0; border-radius: 2px; cursor: pointer; margin: 0; }
.mh-choice__opt input { flex: none; width: 22px; height: 22px; margin: 0; accent-color: var(--mh-blue); }
.mh-choice__opt:has(input:checked) { border: 2px solid var(--mh-blue); background: var(--mh-accent-bg); padding: 9px 13px; }
.mh-choice__text { display: flex; flex-direction: column; gap: 2px; }
.mh-choice__title { font-size: 15px; font-weight: 600; }
.mh-choice__opt:has(input:checked) .mh-choice__title { color: var(--mh-blue-dark); }
.mh-choice__sub { font-size: 13px; color: var(--mh-muted); }
/* Owner 2026-11-03: «Həkiminiz» belongs to «Digər alıcı» only (without :has() support it simply stays visible). */
.mh-auth__form:has(input[name="mh_reg_kind"]:checked) .mh-reg-doctor { display: none; }
.mh-auth__form:has(input[name="mh_reg_kind"][value="other"]:checked) .mh-reg-doctor { display: flex; }
.mh-seg { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.mh-seg__opt { position: relative; display: flex; align-items: center; justify-content: center; min-height: 48px; border: 1px solid #c9d5e0; border-radius: 2px; font-size: 15px; font-weight: 500; cursor: pointer; margin: 0; }
.mh-seg__opt input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.mh-seg__opt:has(input:checked) { border: 2px solid var(--mh-blue); background: var(--mh-accent-bg); color: var(--mh-blue-dark); font-weight: 600; }
.mh-seg__opt:has(input:focus-visible) { outline: 2px solid var(--mh-blue); outline-offset: 2px; }
.mh-contract h2 { margin: 0; font-size: 18px; font-weight: 700; }
.mh-sups { border: 0; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
.mh-sups legend { padding: 0; margin-bottom: 8px; }
.mh-sups__all { font-weight: 700; padding: 12px 14px; background: var(--mh-accent-bg); }
.mh-sups__list { list-style: none; margin: 0; padding: 0; border: 1px solid var(--mh-line); }
.mh-sups__item { margin: 0; padding: 12px 14px; border-bottom: 1px solid var(--mh-line); }
.mh-sups__item:last-child { border-bottom: 0; }
.mh-sups__text { display: flex; flex-direction: column; gap: 2px; }
.mh-sups__name { font-size: 15px; font-weight: 600; }
.mh-sups__line { font-size: 13px; color: var(--mh-muted); }
.mh-sups__state { font-size: 12px; font-weight: 700; color: #0f766e; }
.mh-sups__item.is-signed { background: #f3faf8; }
/* REG-FIX flow: supplier windows and actionable validation (constant height on iOS). */
.mh-auth-page.mh-auth-page--wide { max-width: 760px; width: 100%; }
.mh-auth__existing { padding: 16px; border: 1px solid #b9dcf3; background: var(--mh-accent-bg); display: grid; gap: 12px; }
.mh-ma-doc { display: grid; gap: 12px; min-width: 0; }
.mh-ma-tabs { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; }
.mh-contract .mh-ma-tabs button { min-height: 44px; padding: 8px; white-space: normal; background: #fff; color: var(--mh-blue-dark); border: 1px solid #c9d5e0; }
.mh-contract .mh-ma-tabs button[aria-selected="true"], .mh-contract .mh-ma-tabs button:hover, .mh-contract .mh-ma-tabs button:focus { background: var(--mh-accent-bg); color: var(--mh-blue-dark); border-color: var(--mh-blue); }
.mh-ma-panel[hidden], .mh-contract__missing[hidden] { display: none; }
.mh-ma-panel__bar { display: grid; gap: 6px; padding: 12px; background: var(--mh-canvas); border: 1px solid var(--mh-line); }
.mh-ma-panel__scroll { position: relative; height: 420px; overflow-y: auto; -webkit-overflow-scrolling: touch; padding: 14px 16px; box-sizing: border-box; border: 1px solid #c9d5e0; font-family: Georgia, "Times New Roman", serif; font-size: 16px; line-height: 1.6; overflow-wrap: anywhere; scroll-margin-top: 110px; }
.mh-ma-panel__scroll h3 { font-size: 17px; line-height: 1.4; }
.mh-ma-panel__scroll .sec { margin: 18px 0 8px; font-weight: 700; }
.mh-ma-panel__scroll .clause { margin-bottom: 10px; }
.mh-ma-panel__scroll .is-key { border-left: 3px solid #0f766e; padding: 10px; background: #eff8f5; }
.mh-ma-panel__scroll .is-key::before { content: attr(data-mh-tag); display: block; font: 600 12px/1.4 system-ui, sans-serif; color: #0f766e; margin-bottom: 4px; }
.mh-ma-requisites { display: grid; gap: 16px; }
.mh-ma-pdfs { display: flex; flex-wrap: wrap; gap: 8px 16px; }
.mh-ma-pdfs p { flex-basis: 100%; }
.mh-ma-pdf { display: inline-flex; align-items: center; min-height: 44px; }
.mh-contract .mh-acks__goto, .mh-contract__missing button { padding: 6px 0; min-height: 44px; text-align: left; white-space: normal; border: 0; background: transparent; color: var(--mh-blue-dark); font-size: 14px; line-height: 1.5; text-decoration: underline; }
.mh-contract .mh-acks__goto:hover, .mh-contract .mh-acks__goto:focus, .mh-contract__missing button:hover, .mh-contract__missing button:focus { background: var(--mh-accent-bg); color: var(--mh-blue-dark); }
.mh-contract__missing { padding: 14px; border: 1px solid #a94132; background: #fff6f4; }
.mh-contract__missing ul { margin: 8px 0 0; padding-left: 20px; }
.mh-contract [data-mh-key] { scroll-margin-top: 110px; }
.mh-contract .input-text[aria-invalid="true"], .mh-contract .is-missing { border-color: #a94132; outline-color: #a94132; }
.mh-contract__hash { overflow-wrap: anywhere; }
@keyframes mhAutofill { from { opacity: 1; } to { opacity: 1; } }
.mh-contract input:-webkit-autofill { animation: mhAutofill 0.01s; }
@media (min-width:600px) { .mh-ma-panel__scroll { height: 560px; } .mh-ma-tabs { grid-template-columns: repeat(3, minmax(0, 1fr)); } .mh-ma-requisites { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.mh-party { display: flex; flex-direction: column; gap: 14px; }
.mh-party__block { display: flex; flex-direction: column; gap: 14px; }
.mh-party__block[hidden], .mh-poa[hidden] { display: none; }
.mh-party__who { font-size: 15px; display: flex; flex-direction: column; gap: 2px; }
.mh-party__who span { font-size: 13px; color: var(--mh-muted); }
.mh-poa { display: flex; flex-direction: column; gap: 12px; padding: 14px; border: 1px dashed var(--mh-blue); background: var(--mh-accent-bg); }
.mh-poa input[type="file"] { font-size: 16px; min-height: 44px; }
.mh-acks { display: flex; flex-direction: column; gap: 14px; }
.mh-acks__key { border: 1px solid #c9d5e0; padding: 16px; display: flex; flex-direction: column; gap: 10px; }
.mh-acks__key ul { margin: 0 0 0 34px; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 4px; font-size: 14px; }
.mh-acks__prop { margin-left: 34px; }
.mh-acks__prop summary { min-height: 44px; display: flex; align-items: center; color: var(--mh-blue-dark); font-weight: 600; font-size: 14px; cursor: pointer; }
.mh-acks__prop textarea { margin: 6px 0; }
.mh-sign-btn, .mh-contract .button.mh-sign-btn, .mh-auth .button.mh-sign-btn { display: flex; align-items: center; justify-content: center; width: 100%; min-height: 54px; border: 0; border-radius: 8px; background: #0f766e; color: #fff; font-size: 17px; font-weight: 700; cursor: pointer; }
.mh-contract .button.mh-sign-btn[aria-disabled="true"] { background: #9fb7b4; cursor: pointer; }
.mh-contract__submit { display: flex; flex-direction: column; gap: 10px; }
.mh-contract__other { display: flex; flex-direction: column; gap: 6px; align-items: stretch; border-top: 1px solid var(--mh-line); padding-top: 18px; }
.mh-contract__other form { margin: 0; }
.mh-contract__other .mh-auth__link { justify-content: center; }
.mh-sign-sum { margin: 0; border: 1px solid var(--mh-line); display: grid; grid-template-columns: 110px minmax(0, 1fr); font-size: 14px; line-height: 1.45; }
.mh-sign-sum dt { padding: 10px 12px; color: var(--mh-muted); border-bottom: 1px solid var(--mh-line); }
.mh-sign-sum dd { margin: 0; padding: 10px 12px; font-weight: 600; border-bottom: 1px solid var(--mh-line); overflow-wrap: anywhere; }
.mh-sign-sum dt:nth-last-of-type(1), .mh-sign-sum dd:last-child { border-bottom: 0; }
.mh-sign-sum__hash { font-family: ui-monospace, Menlo, Consolas, monospace; font-weight: 400 !important; }
.mh-note { background: var(--mh-canvas); padding: 12px 14px; font-size: 14px; line-height: 1.5; }
.mh-done__icon { width: 64px; height: 64px; border-radius: 50%; background: #e7f5f1; color: #0f766e; display: flex; align-items: center; justify-content: center; }
.mh-done__list { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--mh-line); }
.mh-done__list li { margin: 0; padding: 12px 0; border-bottom: 1px solid var(--mh-line); display: flex; flex-wrap: wrap; gap: 4px 10px; align-items: baseline; font-size: 15px; }
.mh-done__name { font-weight: 600; }
.mh-done__no { color: var(--mh-muted); font-variant-numeric: tabular-nums; }
.mh-done__actions { display: flex; flex-direction: column; gap: 10px; }
.mh-contract-banner { margin: 0 0 18px; padding: 18px 16px; background: #fff; border: 1px solid #b9dcf3; display: flex; flex-wrap: wrap; align-items: center; gap: 14px 24px; }
.mh-contract-banner__text { flex: 1 1 280px; min-width: 0; }
.mh-contract-banner h2 { margin: 0 0 4px; font-size: 17px; font-weight: 700; line-height: 1.35; }
.mh-contract-banner p { margin: 0; font-size: 14px; color: var(--mh-muted); }
.mh-contract-banner .button.mh-contract-banner__btn { min-height: 48px; padding: 0 22px; display: inline-flex; align-items: center; border-radius: 8px; background: #0f766e; color: #fff; font-weight: 700; }
/* D15 fallback A: phone auth/contract pages never toggle chat in response to keyboard focus. */
body.mh-typing .mh-ai { display: none; }
@media (max-width: 600px) {
	body:has(.mh-auth, .mh-contract) .mh-ai { display: none; }
	.mh-auth__title { font-size: 26px; }
	.mh-auth__pair { grid-template-columns: minmax(0, 1fr); }
	.mh-contract-banner .button.mh-contract-banner__btn { width: 100%; justify-content: center; }
}
@media (min-width: 900px) {
	.mh-contract { max-width: 760px; margin: 0 auto; }
	.mh-done__actions { flex-direction: row; }
	.mh-done__actions .button { width: auto; padding: 0 28px; }
	.mh-contract__other { flex-direction: row; align-items: center; justify-content: space-between; }
	.mh-contract__other .button.mh-auth__secondary { width: auto; padding: 0 20px; }
}
/* The cabinet's own label rule (.woocommerce-account.logged-in .woocommerce-MyAccount-content label: inline-block,
   600, 0.92rem) outranked the form's labels: one class heavier here. */
.woocommerce-account.logged-in .woocommerce-MyAccount-content label.mh-check,
.woocommerce-account .mh-auth-page label.mh-check {
	display: flex; align-items: flex-start; gap: 12px; margin: 0; font-size: 15px; font-weight: 400; line-height: 1.45;
}
.woocommerce-account.logged-in .woocommerce-MyAccount-content label.mh-choice__opt,
.woocommerce-account .mh-auth-page label.mh-choice__opt {
	display: flex; align-items: center; gap: 12px; margin: 0; font-size: 15px; font-weight: 400;
}
.woocommerce-account.logged-in .woocommerce-MyAccount-content label.mh-seg__opt,
.woocommerce-account .mh-auth-page label.mh-seg__opt {
	display: flex; align-items: center; justify-content: center; margin: 0; font-size: 15px; font-weight: 500;
}
.woocommerce-account.logged-in .woocommerce-MyAccount-content label.mh-seg__opt:has(input:checked),
.woocommerce-account .mh-auth-page label.mh-seg__opt:has(input:checked) { font-weight: 600; }
.mh-seg__opt input[type="radio"] { -webkit-appearance: none; appearance: none; width: 0; height: 0; margin: 0; padding: 0; border: 0; opacity: 0; position: absolute; pointer-events: none; }
.mh-check input[type="checkbox"], .mh-choice__opt input[type="radio"] { flex: none; }
.mh-choice legend, .mh-sups legend { float: none; width: auto; margin-left: 0; }
.woocommerce-account.logged-in .woocommerce-MyAccount-content label.mh-seg__opt,
.woocommerce-account .mh-auth-page label.mh-seg__opt { background: #fff; color: var(--mh-ink); }
.woocommerce-account.logged-in .woocommerce-MyAccount-content label.mh-seg__opt:has(input:checked),
.woocommerce-account .mh-auth-page label.mh-seg__opt:has(input:checked) { background: var(--mh-accent-bg); color: var(--mh-blue-dark); }

/* ==== Owner 2026-10-16 — iPhone scroll «dropping lines» (REG-FIX iphone-1) ==== */
/* H scr 23–26: beyond a short page the canvas used to be white between the
   midnight footer and bar. Keep the body white; only the touch canvas changes,
   where the handheld bar exists. Brand sites and mouse desktops stay as before. */
@media screen and (hover: none) and (pointer: coarse) {
	@media (max-width: 66.4989em) {
		html:has(> body:not(.mh-brandsite) .storefront-handheld-footer-bar) {
			background: #0d2231;
		}
	}
	@media (min-width: 66.5em) {
		html:has(> body.mh-compact-head:not(.mh-brandsite) .storefront-handheld-footer-bar) {
			background: #0d2231;
		}
	}
}

/* H scr 24: cover the address lines above a header drawn ~32px too low.
   H scr 21, 24–25: cover products/white below a bar drawn 75–115px too high.
   These are inert paint extensions, not layout space or moving viewport units.
   Preserve Safari's translucent bottom toolbar: only iOS browser apps get the
   lower skirt. No transforms, scroll handlers or extra compositor layers.
   A fixed 600px header skirt covers a hard pull-down without viewport resizing;
   require :has() so older WebKit never gets skirts without the typing gate. */
@supports (-webkit-touch-callout: none) and selector(:has(*)) {
	@media (max-width: 66.4989em) {
		body:not(.mh-brandsite) .site-header::before {
			content: "";
			display: block;
			position: absolute;
			left: 0;
			right: 0;
			bottom: 100%;
			height: 600px;
			background: #fff;
			pointer-events: none;
		}
		html.mh-ios-app body:not(.mh-brandsite) .storefront-handheld-footer-bar::before {
			content: "";
			display: block;
			position: absolute;
			left: 0;
			right: 0;
			top: 100%;
			height: 240px;
			background: #0d2231;
			pointer-events: none;
		}
	}
	@media (min-width: 66.5em) {
		body.mh-compact-head:not(.mh-brandsite) .site-header::before {
			content: "";
			display: block;
			position: absolute;
			left: 0;
			right: 0;
			bottom: 100%;
			height: 600px;
			background: #fff;
			pointer-events: none;
		}
		html.mh-ios-app body.mh-compact-head:not(.mh-brandsite) .storefront-handheld-footer-bar::before {
			content: "";
			display: block;
			position: absolute;
			left: 0;
			right: 0;
			top: 100%;
			height: 240px;
			background: #0d2231;
			pointer-events: none;
		}
	}
	/* D15: auth/contract pages keep skirts off throughout, including temporary picker blur.
	   H .c keyboard risk elsewhere: a lagging layer must not cover a focused field.
	   :has() also covers guest registration/contract fields without depending on
	   the chat's mh-typing listener. Exclusions give this gate more specificity
	   than both compact-head/app selectors, without overriding form styles. */
	@media (max-width: 66.4989em) {
		html body:not(.mh-brandsite):has(.mh-auth, .mh-contract) :is(.site-header, html.mh-ios-app .storefront-handheld-footer-bar)::before,
		html body:not(.mh-brandsite):has(input:focus:not([type="checkbox"]):not([type="radio"]):not([type="button"]):not([type="submit"]):not([type="reset"]):not([type="range"]):not([type="color"]):not([type="file"]), textarea:focus, select:focus, [contenteditable]:not([contenteditable="false"]):focus) :is(.site-header, html.mh-ios-app .storefront-handheld-footer-bar)::before {
			display: none;
		}
	}
	@media (min-width: 66.5em) {
		html body.mh-compact-head:not(.mh-brandsite):has(.mh-auth, .mh-contract) :is(.site-header, html.mh-ios-app .storefront-handheld-footer-bar)::before,
		html body.mh-compact-head:not(.mh-brandsite):has(input:focus:not([type="checkbox"]):not([type="radio"]):not([type="button"]):not([type="submit"]):not([type="reset"]):not([type="range"]):not([type="color"]):not([type="file"]), textarea:focus, select:focus, [contenteditable]:not([contenteditable="false"]):focus) :is(.site-header, html.mh-ios-app .storefront-handheld-footer-bar)::before {
			display: none;
		}
	}
}
/* ==== End Owner 2026-10-16 — iPhone scroll «dropping lines» (REG-FIX iphone-1) ==== */
/* ==== m1 2026-10-20 — Mədaxil: the switch buttons show which one is on; the mailbox's read marker ==== */
/* The Növ (Satlıq / Promo / Hamısı) and Yer (Anbar / Müştərilərdə / Agentdə) switches mark the active button with
   `alt`, but the theme paints `.button` and `.button.alt` the same blue — the owner saw three identical buttons and
   read them as dead. The inactive ones are outlined now; the active one stays solid. One class heavier than
   `.woocommerce-active .button.alt` and `.button:hover`. Phones (≤ 640 px) show the select instead (rule above). */
.mh-swx .mh-swx__btns a.button:not(.alt) {
	background: #fff;
	color: var(--mh-blue-dark, #0b5cab);
	border: 1px solid var(--mh-line, #dde4ea);
	box-shadow: none;
}
.mh-swx .mh-swx__btns a.button:not(.alt):hover,
.mh-swx .mh-swx__btns a.button:not(.alt):focus-visible {
	background: #eef6fd;
	color: var(--mh-blue-dark, #0b5cab);
	border-color: #bfdcf3;
}
.mh-swx .mh-swx__btns a.button.alt {
	border: 1px solid transparent;
	cursor: default;
}
/* «📋 Sifariş təklifi (6 / 18 / 12)»: the suggestion on screen is the solid one, like the switches. */
.mh-proc__teklif a.button:not(.alt) {
	background: #fff;
	color: var(--mh-blue-dark, #0b5cab);
	border: 1px solid var(--mh-line, #dde4ea);
	box-shadow: none;
}
.mh-proc__teklif a.button:not(.alt):hover {
	background: #eef6fd;
	color: var(--mh-blue-dark, #0b5cab);
}
/* A letter opened in Gmail: a small marker, not a greyed-out row (the box read as dead). */
.mh-mail-seen {
	display: inline-block;
	margin-left: 6px;
	padding: 1px 8px;
	border-radius: 999px;
	background: #eef2f6;
	color: #5b6b7b;
	font-size: 11px;
	font-weight: 600;
	line-height: 1.6;
	white-space: nowrap;
	vertical-align: 1px;
}
.mh-proc__mailstate {
	margin: 4px 0 8px;
}
.mh-proc__mailinv {
	margin-top: 14px;
	padding-top: 10px;
	border-top: 1px solid var(--mh-line, #e3e9ef);
}
/* ==== End m1 2026-10-20 ==== */

/* ==== m2 (2026-10-20) — Anbar «− Silinmə», the write-off form, «Təchizatçıdan alınacaq» ==== */
/* The button beside «＋ Yeni məhsul»: a quiet red outline; pressed while the table is in selection mode. */
.mh-np-anbarbar .button.mh-sil-btn {
	white-space: nowrap;
	color: #b42318;
	border-color: #f4b4ae;
	background: #fff;
}
.mh-np-anbarbar .button.mh-sil-btn.is-active {
	color: #fff;
	border-color: #b42318;
	background: #b42318;
}
.mh-staff .mh-sil-intro .mh-sil-claims-link {
	white-space: nowrap;
	font-weight: 600;
}
/* Step 1: the bar under the table stays in sight while scrolling the rows. */
.mh-staff form.mh-sil-bar {
	position: sticky;
	bottom: 0;
	z-index: 9;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-end;
	gap: 8px 10px;
	margin: 10px 0 0;
	padding: 10px 12px;
	border: 1px solid #e3e8ee;
	border-radius: 12px;
	background: #fff;
	box-shadow: 0 -4px 14px rgba(16, 24, 40, .08);
}
.mh-staff form.mh-sil-bar .mh-sil-bar__count {
	margin-right: auto;
	font-weight: 700;
}
.mh-staff form.mh-sil-bar:not(.has-sel) .mh-sil-bar__go {
	opacity: .55;
}
/* Step 2. */
.mh-staff .mh-sil-h {
	margin: 4px 0 10px;
}
.mh-staff .mh-sil-lines .num,
.mh-staff .mh-sil-ctable .num {
	text-align: right;
	white-space: nowrap;
}
.mh-staff .mh-sil-lines input.mh-sil-qty {
	width: 7em;
	text-align: right;
}
.mh-staff .mh-sil-lines input.mh-sil-sup {
	width: 12em;
}
/* The return-only fields appear while «İstehsalçıya qaytarma» is chosen (the server checks them either way). */
.mh-staff .mh-sil-form .mh-sil-ret {
	display: none;
}
.mh-staff .mh-sil-form.is-return th.mh-sil-ret,
.mh-staff .mh-sil-form.is-return td.mh-sil-ret {
	display: table-cell;
}
.mh-staff .mh-sil-form.is-return fieldset.mh-sil-ret {
	display: block;
}
.mh-staff .mh-sil-form fieldset {
	margin: 12px 0;
	padding: 10px 12px;
	border: 1px solid #e3e8ee;
	border-radius: 10px;
}
.mh-staff .mh-sil-form legend {
	padding: 0 6px;
	font-weight: 700;
}
.woocommerce-account.logged-in .woocommerce-MyAccount-content .mh-staff label.mh-sil-reason {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	margin: 4px 14px 4px 0;
	font-weight: 600;
}
.woocommerce-account.logged-in .woocommerce-MyAccount-content .mh-staff label.mh-sil-field {
	display: inline-flex;
	flex-direction: column;
	gap: 4px;
	margin: 0 12px 8px 0;
	font-weight: 600;
	vertical-align: top;
}
.woocommerce-account.logged-in .woocommerce-MyAccount-content .mh-staff label.mh-sil-field--wide {
	display: flex;
	width: 100%;
	max-width: 640px;
}
.mh-staff .mh-sil-field textarea,
.mh-staff .mh-sil-field--wide input {
	width: 100%;
	box-sizing: border-box;
}
.mh-staff .mh-sil-hint {
	display: block;
	margin-top: 4px;
}
.mh-staff .mh-sil-acts {
	margin: 0 0 12px 1.2em;
}
.mh-staff .mh-sil-acts li {
	margin: 0 0 8px;
}
/* The claims list and its closings. */
.mh-staff .mh-sil-claims {
	margin: 18px 0 0;
}
.mh-staff .mh-sil-cactions details.mh-sil-close {
	margin: 8px 0;
	padding: 8px 12px;
	border: 1px solid #e3e8ee;
	border-radius: 10px;
	background: #fff;
}
.mh-staff .mh-sil-cactions details.mh-sil-close > summary {
	cursor: pointer;
}
.mh-staff details.mh-sil-closed {
	margin: 12px 0 0;
}
.mh-reg .mh-t--sil,
.mh-t.mh-t--sil {
	background: #fde8e7;
	color: #9f1c12;
}
@media (max-width: 640px) {
	.mh-np-anbarbar .button.mh-sil-btn {
		width: 100%;
		box-sizing: border-box;
		text-align: center;
	}
	/* Step 1 on a phone: a collapsed row still offers its box, left of the summary. */
	.woocommerce-account .mh-sil-on .mh-scroll .mh-staff-table--cards tbody tr:not(.is-open) td.mh-check-col {
		display: inline-flex;
		width: 26px;
		padding: 0 !important;
		vertical-align: middle;
	}
	.woocommerce-account .mh-sil-on .mh-scroll .mh-staff-table--cards tbody tr:not(.is-open) td.mh-check-col::before {
		display: none;
	}
	.woocommerce-account .mh-sil-on .mh-scroll .mh-staff-table--cards tbody tr:not(.is-open) td.mh-check-col + td.mh-cell-lead {
		width: calc(100% - 34px);
	}
	.woocommerce-account .mh-sil-on .mh-scroll .mh-staff-table--cards tbody td.mh-check-col input {
		width: 20px;
		height: 20px;
	}
	.mh-staff form.mh-sil-bar {
		justify-content: stretch;
	}
	.mh-staff form.mh-sil-bar .mh-sil-bar__count {
		flex: 1 1 100%;
	}
	.mh-staff form.mh-sil-bar .button {
		flex: 1 1 0;
		text-align: center;
	}
	/* Step 2 and the claims: every row a card, every cell labelled (no tap-to-open — the fields stay in reach). */
	.mh-staff .mh-scroll:has(.mh-sil-cards) {
		overflow-x: visible;
	}
	.mh-staff table.mh-sil-cards thead {
		display: none;
	}
	.mh-staff table.mh-sil-cards,
	.mh-staff table.mh-sil-cards tbody {
		display: block;
		width: 100%;
	}
	.mh-staff table.mh-sil-cards tbody tr {
		display: block;
		margin: 0 0 10px;
		padding: 8px 12px;
		border: 1px solid #e3e8ee;
		border-radius: 10px;
		background: #fff;
	}
	.mh-staff table.mh-sil-cards tbody td,
	.mh-staff .mh-sil-form.is-return table.mh-sil-cards td.mh-sil-ret {
		display: flex;
		justify-content: space-between;
		align-items: center;
		gap: 10px;
		padding: 4px 0;
		border: 0;
		text-align: right;
		overflow-wrap: anywhere;
	}
	.mh-staff table.mh-sil-cards tbody td::before {
		content: attr(data-label);
		flex: none;
		max-width: 45%;
		font-weight: 600;
		color: #5b6b7b;
		text-align: left;
	}
	.mh-staff table.mh-sil-cards tbody td.mh-check-col::before {
		content: "";
	}
	.mh-staff table.mh-sil-cards tbody td.mh-cell-lead {
		font-weight: 700;
	}
	.mh-staff .mh-sil-form:not(.is-return) table.mh-sil-cards td.mh-sil-ret {
		display: none;
	}
	.mh-staff .mh-sil-lines input.mh-sil-qty,
	.mh-staff .mh-sil-lines input.mh-sil-sup {
		width: 55%;
	}
	.woocommerce-account.logged-in .woocommerce-MyAccount-content .mh-staff label.mh-sil-field {
		display: flex;
		width: 100%;
		margin-right: 0;
	}
	.mh-staff .mh-sil-field input,
	.mh-staff .mh-sil-field select {
		width: 100%;
		box-sizing: border-box;
	}
	.mh-staff .mh-sil-submit .button {
		width: 100%;
	}
}
/* ==== End m2 (2026-10-20) ==== */
/* ==== m3 (2026-10-20) — polish after 0.8.276: «− Silinmə» on a phone, the cards' empty state ==== */
/* Step 2: the write-off button is red like «− Silinmə» itself — `.woocommerce-active button.button.alt` (0,3,1) painted
   `button alt mh-danger` the theme's blue. */
.mh-staff .mh-sil-form button.button.alt.mh-danger {
	background-color: #b32d2e;
	border-color: #b32d2e;
	color: #fff;
}
.mh-staff .mh-sil-form button.button.alt.mh-danger:hover {
	background-color: #8f2223;
	border-color: #8f2223;
	color: #fff;
}
/* Step 1: the sticky bar rides above the handheld bar (fixed, ~69 px + the gesture zone) wherever that bar shows —
   at bottom 0 it slid under it and hid «Davam et →» while the list scrolled. Same heights as form.mh-selbar (20-27.d):
   above the «AI Köməkçi» pill from 601 px; on a phone low, and short of the 54 px bubble at the right. */
@media (max-width: 66.4989em) {
	.mh-staff form.mh-sil-bar {
		bottom: calc(150px + env(safe-area-inset-bottom, 0px));
	}
}
@media (max-width: 600px) {
	.mh-staff form.mh-sil-bar {
		bottom: calc(74px + env(safe-area-inset-bottom, 0px));
		margin-right: 44px;
	}
}
@media (min-width: 66.5em) {
	body.mh-compact-head .mh-staff form.mh-sil-bar {
		bottom: calc(150px + env(safe-area-inset-bottom, 0px));
	}
}
@media (max-width: 640px) {
	/* Step 1 (item 1): in a card table with checkboxes the box cell is the row's FIRST cell, and
	   `.mh-staff-table--dense td:first-child { min-width: 8em }` (meant for a name column) made the 26 px box cell 8em
	   wide — the empty zebra-grey box beside the box, which pushed the row's summary down a line. Also the «Yeni məhsul»
	   list, which has the same box column. */
	.woocommerce-account .mh-scroll .mh-staff-table--cards tbody td.mh-check-col {
		min-width: 0;
	}
	/* Step 2 and the claims list (item 2): a label and ONE value per row. The label wraps inside its 45 % (it inherited
	   `white-space: nowrap` from the .num cells and ran under «757,80 ₼»); the value (.mh-sil-v) takes the rest and breaks
	   at spaces and hyphens — a word only when nothing else fits. Before, a cell's bare text, <br /> and span were three
	   flex items with `overflow-wrap: anywhere`, and each shrank to one character («1562 / 7- / 260L / W25»). */
	.mh-staff table.mh-sil-cards tbody td,
	.mh-staff .mh-sil-form.is-return table.mh-sil-cards td.mh-sil-ret {
		align-items: baseline;
		overflow-wrap: normal;
	}
	.mh-staff table.mh-sil-cards tbody td::before {
		white-space: normal;
		overflow-wrap: break-word;
	}
	.mh-staff table.mh-sil-cards tbody td > .mh-sil-v {
		flex: 1 1 auto;
		min-width: 0;
		text-align: right;
		overflow-wrap: break-word;
	}
	.mh-staff .mh-sil-lines .mh-sil-v input.mh-sil-qty,
	.mh-staff .mh-sil-lines .mh-sil-v input.mh-sil-sup {
		width: 100%;
		max-width: 14em;
		box-sizing: border-box;
	}
	/* Every card table: «No rows match the filters» is a row whose one cell is no lead cell, so the collapsed-card rule
	   hid it — an empty card with a «›» under the toolbar (Mədaxil journal, 0 rows). It is a message, not a row. */
	.woocommerce-account .mh-scroll .mh-staff-table--cards tbody tr.mh-ft-empty:not(.is-open) > td:not(.mh-cell-lead):not(.mh-cell-key) {
		display: block;
	}
	.mh-scroll .mh-staff-table--cards tbody tr.mh-ft-empty {
		padding-right: 12px;
		cursor: default;
	}
	.mh-scroll .mh-staff-table--cards tbody tr.mh-ft-empty::after {
		content: none;
	}
}
/* ==== End m3 (2026-10-20) ==== */

/* ==== m5 (2026-10-20) — Anbar: «＋ Yeni məhsul» and «− Silinmə» on the switch row, far right ==== */
/* Owner: «bring them one row down, so that they sit on the same level as the other buttons (sklad, u klientov,
   u agenta), but on the opposite side — far right … the new product button to the left of write off button, but pretty
   close — same distance between them as between the 3 above mentioned buttons». The switch buttons and the two
   action buttons both lay out with one 6px gap (the whitespace between inline buttons is gone). */
@media (min-width: 641px) {
	.mh-swx .mh-swx__btns {
		display: inline-flex;
		flex-wrap: wrap;
		gap: 6px;
	}
}
.mh-swx .mh-swx__acts {
	display: inline-flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 6px;
	margin-left: auto;
}
.mh-swx .mh-swx__acts .button {
	white-space: nowrap;
	margin: 0;
}
.mh-swx .mh-swx__acts .button.mh-sil-btn {
	color: #b42318;
	border: 1px solid #f4b4ae;
	background: #fff;
	box-shadow: none;
}
.mh-swx .mh-swx__acts .button.mh-sil-btn:hover,
.mh-swx .mh-swx__acts .button.mh-sil-btn:focus-visible {
	background: #fdf1f0;
	border-color: #b42318;
}
.mh-swx .mh-swx__acts .button.mh-sil-btn.is-active {
	color: #fff;
	border-color: #b42318;
	background: #b42318;
}
@media (max-width: 640px) {
	/* Phones: the switch is a select; the two buttons take the next line side by side. */
	.mh-swx .mh-swx__acts {
		flex-basis: 100%;
		margin-left: 0;
	}
	.mh-swx .mh-swx__acts .button {
		flex: 1 1 0;
		box-sizing: border-box;
		text-align: center;
	}
}
/* ==== End m5 (2026-10-20) ==== */

/* ==== p1 (2026-10-20) — Mədaxil stage 1 «Sifarişlər» (the forecast / order table, the supplier confirmation) and stage 2 (order cards) ==== */
/* Owner GO on the procurement-flow proposal (screens A, B, C): the cabinet's blue, pill buttons and tiles. On a phone
   (≤ 640 px) the tables become cards — their own rules, not .mh-staff-table--cards, whose Anbar collapse hides every
   cell but the lead one (the quantity inputs must stay usable). Labels are written one class heavier than the
   cabinet's `.woocommerce-account.logged-in .woocommerce-MyAccount-content label`. */
.mh-po-editor {
	margin-top: 18px;
	padding-top: 14px;
	border-top: 1px solid #e3eaf1;
}
.mh-po-h {
	margin: 0 0 8px;
	font-size: 17px;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
}
.mh-po-h .mh-po-close {
	font-size: 13px;
	font-weight: 600;
	margin-left: auto;
}
.mh-po-chip {
	display: inline-block;
	font-size: 11.5px;
	font-weight: 700;
	line-height: 1.5;
	padding: 2px 9px;
	border-radius: 999px;
	white-space: nowrap;
	background: #eef2f6;
	color: #475569;
	text-decoration: none;
}
.mh-po-chip--draft { background: #fff4d6; color: #8a5a00; }
.mh-po-chip--sent { background: #e9f4fc; color: #0f6aa8; }
.mh-po-chip--miss { background: #fff4d6; color: #8a5a00; }
a.mh-po-chip--miss:hover { background: #fde7a6; }
.mh-po-chip--eq { background: #e8f5e0; color: #2f7d18; }
.mh-po-chip--dn { background: #fff4d6; color: #8a5a00; }
.mh-po-chip--up { background: #e9f4fc; color: #0f6aa8; }
.mh-po-chip--x { background: #fdecea; color: #b42318; }
.mh-po-chip--add { background: #efeafd; color: #5b3fb4; }
.mh-po-chip--closed { background: #eef2f6; color: #475569; }
.mh-po-chip--warn { background: #fdecea; color: #b42318; font-weight: 600; }
.mh-po-list .mh-po-acts .button,
.mh-po-card .mh-po-acts .button {
	margin: 2px 0;
	white-space: nowrap;
}
.mh-po-list tr.mh-po-sub td {
	font-size: 12.5px;
	padding-top: 2px;
	padding-bottom: 2px;
}
.mh-po-ctl {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px 12px;
	margin: 6px 0 10px;
}
.mh-po-lbl {
	font-weight: 700;
	font-size: 13px;
}
.mh-po-seg {
	display: inline-flex;
	border: 1px solid #bfdcf3;
	border-radius: 999px;
	overflow: hidden;
}
.mh-po-seg button {
	font: inherit;
	font-size: 13px;
	font-weight: 600;
	border: 0;
	border-radius: 0;
	background: #fff;
	color: #0f6aa8;
	padding: 7px 14px;
	cursor: pointer;
	line-height: 1.2;
}
.mh-po-seg button + button {
	border-left: 1px solid #bfdcf3;
}
.mh-po-seg button[aria-pressed="true"] {
	background: #1789d6;
	color: #fff;
}
.mh-po-seg button:focus-visible,
.mh-po-table input:focus-visible {
	outline: 3px solid #bfdcf3;
	outline-offset: 1px;
}
.mh-po-note {
	font-size: 12.5px;
}
.woocommerce-account .woocommerce-MyAccount-content .mh-po-form label.mh-po-all {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	margin: 0 0 0 auto;
	font-size: 13px;
	font-weight: 600;
}
.mh-po-tiles {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0 0 10px;
}
.mh-po-tile {
	background: #e9f4fc;
	border: 1px solid #bfdcf3;
	border-radius: 10px;
	padding: 6px 14px;
	min-width: 110px;
}
.mh-po-tile b {
	display: block;
	font-size: 18px;
	color: #0f6aa8;
	font-variant-numeric: tabular-nums;
}
.mh-po-tile span {
	font-size: 12px;
	color: #5f6e7c;
}
.mh-po-wrap {
	border: 1px solid #e3eaf1;
	border-radius: 10px;
}
.mh-po-table {
	margin: 0;
	border-collapse: collapse;
}
.mh-po-table th {
	white-space: nowrap;
	vertical-align: bottom;
	background: #f4f7fa;
	font-size: 12.5px;
}
.mh-po-table th small {
	display: block;
	font-weight: 500;
	color: #5f6e7c;
	font-size: 11px;
}
.mh-po-table td {
	vertical-align: middle;
}
.mh-po-table th.num,
.mh-po-table td.num {
	text-align: right;
	font-variant-numeric: tabular-nums;
	white-space: nowrap;
}
.mh-po-table td.mh-po-sku {
	font-family: ui-monospace, Menlo, Consolas, monospace;
	font-size: 12px;
	white-space: nowrap;
}
.mh-po-table td.mh-po-need {
	font-weight: 700;
	color: #0f6aa8;
}
.mh-po-table td.is-pipe {
	color: #5b3fb4;
	font-weight: 600;
}
.mh-po-table tr.is-off {
	display: none;
}
.mh-po-table.is-all tr.is-off {
	display: table-row;
}
.mh-po-table input.mh-po-qty,
.mh-po-table input.mh-po-eur {
	width: 5.4em;
	padding: 5px 7px;
	font-size: 13px;
	text-align: right;
	border: 1px solid #bfdcf3;
	border-radius: 7px;
	background: #fff;
	box-shadow: none;
	font-variant-numeric: tabular-nums;
}
.mh-po-table input.mh-po-eur {
	width: 6.6em;
}
.mh-po-table input.mh-po-qty.is-edited {
	border-color: #c98a00;
	box-shadow: 0 0 0 2px #fff4d6;
}
.mh-po-table input.mh-po-namein,
.mh-po-table tfoot input.mh-po-addsku,
.mh-po-actions input.mh-po-addsku {
	padding: 5px 8px;
	font-size: 13px;
	border: 1px solid #d6dee6;
	border-radius: 7px;
	background: #fff;
	box-shadow: none;
	max-width: 100%;
}
.mh-po-table input.mh-po-namein {
	width: 14em;
}
.mh-po-table tfoot input.mh-po-addsku,
.mh-po-actions input.mh-po-addsku {
	width: 18em;
}
.mh-po-table tfoot td {
	background: #f4f7fa;
	font-weight: 700;
}
.mh-po-table button.mh-po-rm {
	border: 0;
	background: none;
	color: #b42318;
	cursor: pointer;
	padding: 0 4px;
	margin-left: 4px;
	font-size: 13px;
}
.mh-po-formula {
	margin: 10px 0 0;
	font-size: 13px;
	background: #f4f7fa;
	border: 1px dashed #d6dee6;
	border-radius: 10px;
	padding: 8px 12px;
}
.mh-po-fields {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	gap: 10px 14px;
	margin: 12px 0 0;
}
.woocommerce-account .woocommerce-MyAccount-content .mh-po-form label.mh-po-date,
.woocommerce-account .woocommerce-MyAccount-content .mh-po-form label.mh-po-fld,
.mh-po-form span.mh-po-fld {
	display: inline-flex;
	flex-direction: column;
	gap: 4px;
	margin: 0;
	font-size: 12.5px;
	font-weight: 600;
}
.mh-po-paste {
	flex-basis: 100%;
}
.mh-po-paste textarea {
	width: 100%;
	max-width: 640px;
	font-family: ui-monospace, Menlo, Consolas, monospace;
	font-size: 12.5px;
}
.mh-po-actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
	margin: 14px 0 6px;
}
.mh-po-actions .button {
	margin: 0;
}
.mh-po-sp {
	flex: 1 1 auto;
}
.mh-po-card {
	border: 1px solid #e3eaf1;
	border-radius: 12px;
	margin: 12px 0;
	overflow: hidden;
	background: #fff;
}
.mh-po-card.is-closed {
	opacity: 0.85;
}
.mh-po-card__h {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 6px 12px;
	padding: 10px 14px;
	background: #f4f7fa;
	border-bottom: 1px solid #e3eaf1;
}
.mh-po-card__h h4 {
	margin: 0;
	font-size: 14.5px;
}
.mh-po-card .mh-scroll {
	margin: 0;
}
.mh-po-card .mh-po-table {
	border: 0;
}
.mh-po-dropped {
	margin: 6px 14px 10px;
	font-size: 12.5px;
}
@media (max-width: 640px) {
	/* Phones: one card per row, each figure on its own labelled line; the inputs keep a thumb-sized box. */
	.mh-po-wrap,
	.mh-po-card .mh-scroll {
		border: 0;
		overflow-x: visible;
	}
	.mh-po-table,
	.mh-po-table tbody,
	.mh-po-table tfoot,
	.mh-po-table tr,
	.mh-po-table td,
	.mh-po-list,
	.mh-po-list tbody,
	.mh-po-list tr,
	.mh-po-list td {
		display: block;
		width: auto;
	}
	.mh-po-table thead,
	.mh-po-list thead {
		display: none;
	}
	.mh-po-table tbody tr,
	.mh-po-list tbody tr.mh-po-head {
		border: 1px solid #e3eaf1;
		border-radius: 11px;
		padding: 8px 12px;
		margin: 0 0 8px;
		background: #fff;
	}
	.mh-po-table tr.is-off {
		display: none;
	}
	.mh-po-table.is-all tr.is-off {
		display: block;
	}
	.mh-po-table tbody td,
	.mh-po-list tbody tr.mh-po-head td {
		border: 0 !important;
		padding: 3px 0 !important;
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 12px;
		font-size: 13px;
		text-align: right;
	}
	.mh-po-table tbody td::before,
	.mh-po-list tbody tr.mh-po-head td::before {
		content: attr(data-label);
		flex: 0 0 auto;
		font-size: 11px;
		font-weight: 600;
		color: #64748b;
		text-align: left;
		font-family: system-ui, -apple-system, "Segoe UI", sans-serif;
	}
	.mh-po-table tbody td.mh-cell-lead,
	.mh-po-list tbody tr.mh-po-head td.mh-cell-lead {
		display: block;
		font-size: 14px;
		font-weight: 700;
		text-align: left;
		white-space: normal;
	}
	.mh-po-table tbody td.mh-cell-lead::before,
	.mh-po-list tbody tr.mh-po-head td.mh-cell-lead::before,
	.mh-po-list tbody tr.mh-po-head td.mh-po-acts::before {
		display: none;
	}
	.mh-po-table tbody td.mh-po-name {
		text-align: right;
		white-space: normal;
	}
	.mh-po-table tbody td:empty,
	.mh-po-list tbody td:empty {
		display: none;
	}
	.mh-po-table input.mh-po-qty,
	.mh-po-table input.mh-po-eur {
		width: 8em;
		padding: 8px 9px;
		font-size: 15px;
	}
	.mh-po-list tbody tr.mh-po-head td.mh-po-acts {
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
		gap: 6px;
		padding-top: 8px !important;
	}
	.mh-po-list tbody tr.mh-po-sub {
		margin: -6px 0 8px;
		padding: 0 12px;
	}
	.mh-po-list tbody tr.mh-po-sub td {
		padding: 1px 0;
		border: 0;
	}
	.mh-po-table tfoot tr {
		border: 1px dashed #bfdcf3;
		border-radius: 11px;
		padding: 8px 12px;
		background: #f4f7fa;
	}
	.mh-po-table tfoot td {
		border: 0;
		padding: 3px 0;
		background: none;
	}
	.mh-po-table tfoot td:empty {
		display: none;
	}
	.mh-po-table tfoot input.mh-po-addsku,
	.mh-po-actions input.mh-po-addsku {
		width: 100%;
		margin-bottom: 6px;
		font-size: 15px;
	}
	.woocommerce-account .woocommerce-MyAccount-content .mh-po-form label.mh-po-all {
		margin-left: 0;
	}
	.mh-po-actions .button {
		flex: 1 1 calc(50% - 8px);
		text-align: center;
		box-sizing: border-box;
	}
	.mh-po-sp {
		display: none;
	}
	.mh-po-card__h .mh-po-acts {
		flex-basis: 100%;
	}
}
/* ==== End p1 (2026-10-20) ==== */

/* ==== p1b (2026-10-20) — the stage-1 forecast table fits its box ==== */
/* Walk of 0.8.279 at 1320 px: Storefront's default cell padding (1em 1.41em) pushed «Sifariş / € qiymət / € cəmi» —
   the columns the owner edits — out of the box. Compact cells and wrapping headers keep all 12 columns in view. */
@media (min-width: 641px) {
	.mh-po-wrap table.mh-po-table th,
	.mh-po-wrap table.mh-po-table td {
		padding: 6px 7px;
	}
	.mh-po-wrap table.mh-po-table th {
		white-space: normal;
		font-size: 12px;
		line-height: 1.25;
	}
	.mh-po-wrap table.mh-po-table td {
		font-size: 13px;
	}
	.mh-po-wrap table.mh-po-table td:nth-child(2) {
		min-width: 10em;
	}
	/* Sutura SKUs run to ~75 characters («PETCRYL 910 FAST, 6-0, iynə: …»): they wrap at their own commas and spaces. */
	.mh-po-wrap table.mh-po-table td.mh-po-sku {
		white-space: normal;
		min-width: 8.6em;
		max-width: 14em;
	}
	.mh-po-wrap table.mh-po-table input.mh-po-qty {
		width: 4.6em;
	}
	.mh-po-wrap table.mh-po-table input.mh-po-eur {
		width: 5.6em;
	}
}
/* ==== End p1b (2026-10-20) ==== */
/* ==== p2 (2026-10-20) — Mədaxil stage 6 «Anbara qəbul» (screen D): the product-group buttons, the section switch, the invoice receipt cards (serial chips, scan field, lot / expiry), «＋ Sifarişsiz mədaxil» (garment grid) and the Polytech mail panel on stage 3 ==== */
/* The tables reuse p1's .mh-po-table (desktop table, phone cards with labelled lines) and its inputs; labels are written
   one class heavier than the cabinet's `.woocommerce-account.logged-in .woocommerce-MyAccount-content label`; links out-
   specify Storefront's `.hentry .entry-content a` underline. */
.mh-rc-h {
	margin: 4px 0 10px;
	font-size: 18px;
}
.mh-rc-groups {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
	gap: 10px;
	margin: 0 0 12px;
}
.entry-content a.mh-rc-grp,
a.mh-rc-grp {
	display: flex;
	flex-direction: column;
	gap: 3px;
	padding: 12px 14px;
	border: 1px solid #e3eaf1;
	border-radius: 12px;
	background: #fff;
	color: #1f2937;
	text-decoration: none;
	box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
}
a.mh-rc-grp b {
	font-size: 14.5px;
}
a.mh-rc-grp span {
	font-size: 12.5px;
	color: #64748b;
}
.entry-content a.mh-rc-grp.is-on,
a.mh-rc-grp.is-on {
	border-color: #1789d6;
	background: #eef6fd;
	box-shadow: inset 0 0 0 1px #1789d6;
}
a.mh-rc-grp.is-on span {
	color: #0f6aa8;
}
a.mh-rc-grp:focus-visible,
.mh-rc-seg a:focus-visible,
.mh-rc-chip:focus-visible {
	outline: 3px solid #bfdcf3;
	outline-offset: 1px;
}
.mh-rc-seg {
	display: inline-flex;
	flex-wrap: wrap;
	border: 1px solid #bfdcf3;
	border-radius: 999px;
	overflow: hidden;
	margin: 0 0 14px;
	background: #fff;
}
.entry-content .mh-rc-seg a,
.mh-rc-seg a {
	font-size: 13px;
	font-weight: 600;
	color: #0f6aa8;
	padding: 8px 15px;
	text-decoration: none;
	line-height: 1.2;
}
.mh-rc-seg a + a {
	border-left: 1px solid #bfdcf3;
}
.entry-content .mh-rc-seg a.is-on,
.mh-rc-seg a.is-on {
	background: #1789d6;
	color: #fff;
}
.mh-rc-empty {
	padding: 14px 16px;
	border: 1px dashed #d6dee6;
	border-radius: 12px;
	background: #f8fafc;
}
.mh-rc-card.is-wait {
	opacity: 0.72;
	background: #f8fafc;
}
.mh-rc-meta {
	font-size: 12.5px;
}
.woocommerce-account.logged-in .woocommerce-MyAccount-content label.mh-rc-date {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin: 0;
	font-size: 13px;
}
.mh-rc-date input[type="date"] {
	padding: 5px 8px;
}
.mh-rc-table input.mh-rc-sn {
	width: 100%;
	min-width: 16em;
	margin-top: 6px;
	padding: 6px 8px;
	font-family: ui-monospace, Menlo, Consolas, monospace;
	font-size: 13px;
}
.mh-rc-table input.mh-rc-lot {
	width: 8em;
}
.mh-rc-table input.mh-rc-exp {
	width: 10em;
}
.mh-rc-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
}
.mh-rc-chip {
	font: inherit;
	font-family: ui-monospace, Menlo, Consolas, monospace;
	font-size: 12px;
	line-height: 1.2;
	padding: 4px 8px;
	border: 1px solid #d6dee6;
	border-radius: 999px;
	background: #fff;
	color: #64748b;
	cursor: pointer;
}
.mh-rc-chip[aria-pressed="true"] {
	background: #e8f5e0;
	border-color: #9fd18a;
	color: #2f7d18;
	font-weight: 600;
}
.mh-rc-chip[aria-pressed="true"]::before {
	content: "✓ ";
}
.mh-rc-chip.is-in,
.mh-rc-chip:disabled {
	background: #eef2f6;
	border-color: #e3eaf1;
	color: #94a3b8;
	text-decoration: line-through;
	cursor: default;
}
.mh-rc-actions {
	margin: 0;
	padding: 10px 14px 12px;
	border-top: 1px solid #e3eaf1;
}
.mh-rc-actions .mh-muted {
	font-size: 12.5px;
	flex: 1 1 320px;
}
.mh-rc-waitnote {
	margin: 0;
	padding: 8px 14px 12px;
	font-size: 12.5px;
}
.mh-rc-manual {
	border: 1px solid #e3eaf1;
	border-radius: 12px;
	padding: 14px 16px;
	background: #fff;
}
.mh-rc-mh {
	margin: 0 0 4px;
	font-size: 16px;
}
.mh-rc-lead,
.mh-rc-hints {
	font-size: 12.5px;
	margin: 0 0 6px;
}
.mh-rc-hints span[hidden] {
	display: none;
}
.mh-rc-mform input.mh-rc-sku {
	min-width: 16em;
}
.woocommerce-account .woocommerce-MyAccount-content .mh-po-form label.mh-po-fld[hidden] {
	display: none;
}
.mh-rc-snwrap {
	margin: 10px 0 0;
}
.woocommerce-account .woocommerce-MyAccount-content .mh-po-form label.mh-rc-snlbl {
	display: flex;
	max-width: 520px;
}
.mh-rc-snwrap textarea {
	width: 100%;
	font-family: ui-monospace, Menlo, Consolas, monospace;
	font-size: 13px;
}
.mh-rc-gridwrap {
	margin: 10px 0 0;
}
.mh-rc-grid {
	width: auto;
}
.mh-rc-grid th,
.mh-rc-grid td {
	text-align: center;
	padding: 4px 5px;
}
.mh-rc-grid tbody th {
	text-align: left;
	white-space: nowrap;
}
.mh-rc-grid input.mh-po-qty {
	width: 3.2em;
	padding: 5px 4px;
	text-align: center;
}
.mh-rc-note input {
	min-width: 14em;
}
.mh-rc-bulk {
	margin-top: 14px;
	padding-top: 10px;
	border-top: 1px dashed #d6dee6;
}
.mh-rc-histh {
	margin-top: 4px;
}
.mh-proc-mail > summary .mh-badge.is-hot {
	background: #fde68a;
	color: #92400e;
}
@media (max-width: 640px) {
	/* Phones: the group buttons stack, the section switch takes the full width, every receipt line is a card (p1's
	   .mh-po-table rules); the serial cell is a block of its own (chips over the scan field), inputs thumb-sized. */
	.mh-rc-groups {
		grid-template-columns: 1fr;
		gap: 8px;
	}
	.mh-rc-seg {
		display: flex;
		border-radius: 12px;
	}
	.mh-rc-seg a {
		flex: 1 1 auto;
		text-align: center;
	}
	.woocommerce-account.logged-in .woocommerce-MyAccount-content label.mh-rc-date {
		flex-basis: 100%;
		justify-content: space-between;
	}
	.mh-rc-table tbody td.mh-rc-sncell {
		display: block;
		text-align: left;
	}
	.mh-rc-table tbody td.mh-rc-sncell::before {
		display: block;
		margin-bottom: 4px;
	}
	.mh-rc-table input.mh-rc-sn {
		min-width: 0;
		font-size: 15px;
		padding: 8px 9px;
	}
	.mh-rc-table input.mh-rc-lot,
	.mh-rc-table input.mh-rc-exp {
		width: 10em;
		font-size: 15px;
	}
	.mh-rc-chip {
		font-size: 13px;
		padding: 6px 10px;
	}
	.mh-rc-actions .button {
		flex: 1 1 100%;
	}
	.mh-rc-manual {
		padding: 12px;
	}
	.mh-rc-mform input.mh-rc-sku,
	.mh-rc-note input {
		min-width: 0;
		width: 100%;
	}
	.woocommerce-account .woocommerce-MyAccount-content .mh-po-form label.mh-rc-model,
	.woocommerce-account .woocommerce-MyAccount-content .mh-po-form label.mh-po-fld[data-mh-single],
	.woocommerce-account .woocommerce-MyAccount-content .mh-po-form label.mh-rc-note {
		flex: 1 1 100%;
	}
	.mh-rc-grid input.mh-po-qty {
		width: 2.8em;
		font-size: 15px;
	}
}
/* ==== End p2 (2026-10-20) ==== */
/* ==== p3 (2026-10-20): «Saytda məhsulu olmayan SKU-lar» — the «Satış (arxiv)» source chip (muted: a legacy sale, not a live one). ==== */
.mh-agd__chip.mh-np-chip--arxiv {
	background: #f1eef8;
	color: #6b5a8e;
}
/* ==== End p3 (2026-10-20) ==== */
/* ==== p4 (2026-10-20) — the Anbar card's count booking preview, the costing rule line on the receipt screens ==== */
/* The preview sits in the card's grid under «Say» across both columns; it shows in edit mode only (the card's own
   `.mh-skc__i` rule carries !important, so the line has a class of its own instead of [hidden]). */
.mh-skc__book {
	display: none;
}
.mh-skc.is-editing .mh-skc__book {
	display: block;
	grid-column: 1 / -1;
	margin: 0 0 6px;
	font-size: 12.5px;
	line-height: 1.45;
	overflow-wrap: anywhere;
}
.mh-skc__book-out {
	display: block;
	margin-bottom: 2px;
	font-size: 13.5px;
	color: #1d4ed8;
}
.mh-skc__book-out:empty {
	display: none;
}
.mh-p4-costrule {
	margin: 2px 0 8px;
	font-size: 12.5px;
	overflow-wrap: anywhere;
}
/* ==== End p4 (2026-10-20) ==== */
/* ==== p7 (2026-10-20): a count change on the Anbar card waits for the owner's confirmation — the request's block above
   the card and on the list (?sayim=gozleyir), the count row's marker, the card's note field, the Anbar link line ==== */
.mh-cr {
	max-width: 760px;
	margin: 0 0 12px;
	padding: 12px 16px;
	border: 1px solid #f3d38a;
	border-left: 4px solid #d99a06;
	border-radius: 12px;
	background: #fffaf0;
	overflow-wrap: anywhere;
}
.mh-cr p {
	margin: 0 0 6px;
}
.mh-cr__line {
	font-size: 14px;
	line-height: 1.45;
}
.mh-cr__hint {
	font-size: 12.5px;
}
.mh-cr__act {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
	margin: 4px 0 0;
}
.mh-cr__pw {
	position: relative;
	display: inline-flex;
	align-items: center;
}
.mh-staff .mh-cr__act .mh-cr__pw input[type=password] {
	width: 12em;
	height: 36px;
	min-height: 0;
	padding: 2px 34px 2px 10px;
	border: 1px solid #c9d3de;
	border-radius: 8px;
	background: #fff;
	box-shadow: none;
}
.mh-staff .mh-cr__pw .show-password-input {
	position: absolute;
	top: 50%;
	right: 4px;
	transform: translateY(-50%);
	width: 26px;
	height: 26px;
	min-height: 0;
	padding: 0;
	margin: 0;
	border: 0;
	background: transparent;
	color: #5b6b82;
}
.mh-staff .mh-cr__act .button {
	margin: 0;
	white-space: nowrap;
}
.mh-staff .mh-cr__act .mh-cr__no {
	background: #fff;
	color: #9f1239;
	border: 1px solid #f1b7c3;
}
.mh-cr-list .mh-cr {
	max-width: none;
}
.mh-cr__what {
	font-size: 14px;
}
.mh-cr-mark {
	display: inline-block;
	margin-left: 6px;
	padding: 1px 8px;
	border-radius: 999px;
	background: #fdecc8;
	color: #8a5a00;
	font-size: 12px;
	font-weight: 600;
	white-space: nowrap;
}
.mh-cr-pwline {
	display: block;
	margin-top: 2px;
}
.mh-cr-qnote {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 4px 8px;
	margin-top: 6px;
}
.mh-staff .mh-skc .mh-cr-qnote input[type=text] {
	flex: 1 1 16em;
	min-width: 0;
	max-width: 420px;
	padding: 5px 9px;
	border: 1px solid #dde4ea;
	border-radius: 7px;
}
.mh-cr-link a {
	font-weight: 600;
}
@media (max-width: 640px) {
	.mh-cr {
		padding: 10px 12px;
	}
	.mh-cr__pw {
		flex: 1 1 100%;
	}
	.mh-staff .mh-cr__act .mh-cr__pw input[type=password] {
		width: 100%;
		height: 40px;
		font-size: 16px; /* no zoom on focus (iOS) */
	}
	.mh-staff .mh-cr__act .button {
		flex: 1 1 0;
		min-height: 40px;
	}
	.mh-staff .mh-skc .mh-cr-qnote input[type=text] {
		flex-basis: 100%;
		max-width: none;
		font-size: 16px;
	}
}
/* ==== End p7 (2026-10-20) ==== */
/* ==== p6 (2026-10-20) — Parametrlər › «Təchizatçılar» (one card per product group: supplier, purchasing company, delivery time, terms) and the company chip a Mədaxil document carries once two companies have bought for its group ==== */
.mh-sup {
	max-width: 980px;
}
.mh-sup__h {
	margin: 0 0 6px;
}
.mh-sup__lead {
	margin: 0 0 14px;
	font-size: 13px;
	line-height: 1.5;
	overflow-wrap: anywhere;
}
.mh-sup__ro {
	margin: 0 0 12px;
}
.woocommerce-account .woocommerce-MyAccount-content .mh-sup fieldset.mh-sup__card {
	margin: 0 0 14px;
	padding: 12px 16px 14px;
	border: 1px solid #e3e8ee;
	border-radius: 12px;
	background: #fff;
	min-width: 0;
}
.woocommerce-account .woocommerce-MyAccount-content .mh-sup legend.mh-sup__legend {
	padding: 0 6px;
	margin: 0;
	font-weight: 700;
	font-size: 15px;
	background: transparent;
}
.mh-sup__legend code {
	font-size: 12px;
	color: #5f6e7c;
	background: #f1f5f9;
	padding: 1px 6px;
	border-radius: 6px;
}
.mh-sup__grid {
	display: grid;
	grid-template-columns: minmax(0, 1.2fr) minmax(0, 1.2fr) minmax(0, 0.7fr);
	gap: 10px 14px;
	align-items: end;
}
.woocommerce-account.logged-in .woocommerce-MyAccount-content .mh-sup label.mh-sup__f {
	display: flex;
	flex-direction: column;
	gap: 4px;
	margin: 0;
	min-width: 0;
	font-weight: 400;
}
.mh-sup__f > span {
	font-size: 12px;
	color: #5f6e7c;
	line-height: 1.35;
}
.mh-sup__f input[type="text"],
.mh-sup__f input[type="number"],
.mh-sup__f select {
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
	min-height: 38px;
	padding: 6px 10px;
	border: 1px solid #d6e1ea;
	border-radius: 8px;
	font-size: 15px;
	background: #fff;
}
.mh-sup__terms,
.mh-sup__note,
.mh-sup__hist {
	margin: 10px 0 0;
	font-size: 12.5px;
	line-height: 1.5;
	overflow-wrap: anywhere;
}
.mh-sup__note {
	padding: 6px 10px;
	border-radius: 8px;
	background: #fff8e6;
	color: #7a5a00;
}
.mh-sup__actions {
	margin: 4px 0 0;
}
.mh-po-chip.mh-p6-co {
	margin-left: 6px;
	background: #eef4fb;
	color: #1d4f7a;
	font-weight: 600;
	vertical-align: middle;
}
@media (max-width: 640px) {
	.mh-sup__grid {
		grid-template-columns: minmax(0, 1fr);
	}
	.woocommerce-account .woocommerce-MyAccount-content .mh-sup fieldset.mh-sup__card {
		padding: 10px 12px 12px;
	}
	.mh-sup__actions .button {
		width: 100%;
	}
}
/* ==== End p6 (2026-10-20) ==== */
/* ==== p8 (2026-10-20): every count correction waits for the confirmer — the password field of «− Silinmə · Sayım əskikliyi»
   and «＋ Sifarişsiz mədaxil · Sayım düzəlişi (+) / Tapılan mal», the door requests on the list (?sayim=gozleyir), and the
   disabled undo of a confirmed booking (Jurnal, the act page, the receipt entry) with its reason ==== */
.mh-staff .mh-sil-form .mh-sil-count {
	display: none;
}
.mh-staff .mh-sil-form.is-count .mh-sil-count {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 6px 12px;
	margin: 10px 0;
	padding: 10px 12px;
	border: 1px solid #f3d38a;
	border-radius: 10px;
	background: #fffaf0;
}
.mh-p8-pw {
	position: relative;
	display: inline-flex;
	align-items: center;
	max-width: 100%;
}
.mh-staff .mh-p8-pw input[type=password] {
	width: 14em;
	max-width: 100%;
	height: 36px;
	min-height: 0;
	padding: 2px 34px 2px 10px;
	border: 1px solid #c9d3de;
	border-radius: 8px;
	background: #fff;
	box-shadow: none;
}
.mh-staff .mh-p8-pw .show-password-input {
	position: absolute;
	top: 50%;
	right: 4px;
	transform: translateY(-50%);
	width: 26px;
	height: 26px;
	min-height: 0;
	padding: 0;
	margin: 0;
	border: 0;
	background: transparent;
	color: #5b6b82;
}
.woocommerce-account.logged-in .woocommerce-MyAccount-content label.mh-p8-pass {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 4px 10px;
}
.woocommerce-account.logged-in .woocommerce-MyAccount-content label.mh-p8-pass[hidden] {
	display: none;
}
.mh-p8-passhint {
	display: block;
	flex: 1 1 100%;
	font-size: 12.5px;
	line-height: 1.4;
}
.mh-staff .mh-sil-count .mh-sil-hint {
	flex: 1 1 18em;
	font-size: 12.5px;
	line-height: 1.4;
}
.mh-cr-door {
	display: inline-block;
	margin-right: 4px;
	padding: 1px 8px;
	border-radius: 999px;
	background: #eef2f7;
	color: #334155;
	font-size: 12px;
	font-weight: 600;
	white-space: nowrap;
}
.mh-cr-lines {
	margin: 4px 0 8px;
	padding-left: 18px;
	font-size: 13.5px;
	line-height: 1.45;
}
.mh-cr-lines li {
	margin: 0 0 2px;
	overflow-wrap: anywhere;
}
.mh-p8-locked button[disabled],
.mh-jr__table button[disabled] {
	opacity: 0.55;
	cursor: not-allowed;
}
.mh-p8-why {
	display: block;
	margin-top: 4px;
	font-size: 12px;
	line-height: 1.35;
}
.mh-jr__table .mh-p8-why {
	max-width: 22em;
}
@media (max-width: 640px) {
	.mh-staff .mh-p8-pw {
		flex: 1 1 100%;
	}
	.mh-staff .mh-p8-pw input[type=password] {
		width: 100%;
		height: 40px;
		font-size: 16px; /* no zoom on focus (iOS) */
	}
	.mh-cr-door {
		white-space: normal;
	}
	.mh-jr__table .mh-p8-why {
		max-width: none;
	}
}
/* ==== End p8 (2026-10-20) ==== */
/* ==== p9 (2026-10-21): the receipt entry's «Düzəliş et» on a «Sayım düzəlişi (+)» / «Tapılan mal» receipt — its password
   field (p8's classes) and, at phone width, the fields taking the row (the serials box's inline 420 px min-width ran off
   a 390 px screen); the «Qəbul düzəlişi» request above it is p7 / p8's amber block ==== */
.mh-staff .mh-p9-fix .mh-p8-pass {
	margin: 0;
}
@media (max-width: 640px) {
	.mh-staff .mh-p9-fix textarea,
	.mh-staff .mh-p9-fix input[type=text] {
		min-width: 0 !important; /* the inline style="min-width:…" */
		width: 100%;
		box-sizing: border-box;
	}
	.mh-staff .mh-p9-fix input[type=text],
	.mh-staff .mh-p9-fix input[type=number],
	.mh-staff .mh-p9-fix textarea {
		font-size: 16px; /* no zoom on focus (iOS) */
	}
}
/* ==== End p9 (2026-10-21) ==== */
/* ==== p10 (2026-10-21): the full void of a «Sayım düzəlişi (+)» / «Tapılan mal» receipt — the entry's void form with its
   password field (p8's classes), the Jurnal row's «Geri al» with its own password field and, while a «Qəbul ləğvi» request
   waits, the row's pending line; the request block itself is p7 / p8's amber block ==== */
.mh-staff .mh-p10-void .mh-p8-pass {
	margin: 0;
}
.mh-jr__table .mh-p10-jundo {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 4px 6px;
}
.mh-staff .mh-jr__table .mh-p10-jundo .mh-p8-pw input[type=password] {
	width: 10em;
	height: 30px;
}
.mh-jr__table .mh-p10-jundo .mh-p8-why {
	flex: 1 1 100%;
	margin-top: 0;
}
.mh-p10-pending {
	display: inline-block;
	padding: 1px 8px;
	border: 1px solid #f3d38a;
	border-radius: 999px;
	background: #fffaf0;
	color: #7a5a12;
	font-size: 12px;
	line-height: 1.5;
}
.mh-p10-pending__link {
	font-size: 12px;
	white-space: nowrap;
}
.mh-staff .mh-p10-wait {
	display: block;
	margin-top: 2px;
}
@media (max-width: 640px) {
	.mh-staff .mh-jr__table .mh-p10-jundo .mh-p8-pw {
		flex: 1 1 100%;
	}
	.mh-staff .mh-jr__table .mh-p10-jundo .mh-p8-pw input[type=password] {
		width: 100%;
		height: 40px;
		font-size: 16px; /* no zoom on focus (iOS) */
	}
	.mh-p10-pending {
		display: block;
		border-radius: 8px;
	}
	.mh-p10-pending__link {
		white-space: normal;
	}
}
/* ==== End p10 (2026-10-21) ==== */
.header-widget-region .widget_brand_thumbnails ul.brand-thumbnails{text-align:center}.header-widget-region .widget_brand_thumbnails ul.brand-thumbnails::before,.header-widget-region .widget_brand_thumbnails ul.brand-thumbnails::after{content:"";display:table}.header-widget-region .widget_brand_thumbnails ul.brand-thumbnails::after{clear:both}.header-widget-region .widget_brand_thumbnails ul.brand-thumbnails li{display:inline-block;width:auto !important;float:none !important;margin-bottom:0 !important}.header-widget-region .widget_brand_thumbnails ul.brand-thumbnails li img{max-height:16px;width:auto;display:block}.widget_brand_nav ul li .count{float:right}.tax-product_brand .woocommerce-products-header{display:flex;flex-direction:column;margin:0 0 2.2906835em;text-align:center}.tax-product_brand .woocommerce-products-header .brand-thumbnail{margin:0 0 1em;width:auto;max-height:2.2906835em;align-self:center;order:1}.tax-product_brand .woocommerce-products-header .woocommerce-products-header__title,.tax-product_brand .woocommerce-products-header .term-description{order:2}div#brands_a_z::before,div#brands_a_z::after{content:"";display:table}div#brands_a_z::after{clear:both}div#brands_a_z ul.brands_index{margin-left:0;padding:0}div#brands_a_z ul.brands_index li{float:none;display:inline-block;margin:0 .3342343017em .2360828548em 0;padding:0;text-transform:uppercase}div#brands_a_z ul.brands_index li a,div#brands_a_z ul.brands_index li span{float:none;display:block;border:0;padding:.3819820591em;min-width:1.618em;text-align:center;background-color:#eee;color:#43454b;line-height:1}div#brands_a_z ul.brands_index li span{opacity:.3}div#brands_a_z h3{text-transform:uppercase}div#brands_a_z a.top{padding:.6180469716em;background-color:#eee;color:#43454b;border:0;line-height:1}div#brands_a_z ul.brands{margin-left:0;list-style-position:inside}div#brands_a_z ul.brands li{margin:0 0 .3819820591em;padding:0 0 .3819820591em;border-bottom:1px solid rgba(0,0,0,.05)}.storefront-wc-brands-single-product{margin:0 0 .5407911001em}.storefront-wc-brands-single-product img{max-height:2.2906835em}@media(min-width: 768px){div#brands_a_z ul.brands_index{width:21.7391304348%;float:left;margin-right:4.347826087%;transition:all .5s ease}div#brands_a_z h3{width:73.9130434783%;float:right;margin-right:0;clear:right;text-transform:uppercase}div#brands_a_z h3:first-of-type{margin-top:0}div#brands_a_z a.top{clear:right}div#brands_a_z ul.brands{width:73.9130434783%;float:right;margin-right:0;clear:right}}
