/* Мобильная версия (макета нет — правила ТЗ, раздел 6 opencart-implementation.md) */
@media (max-width:1023px){
	:root{--mdm-page-pad:20px}
	/* закрытый рейл скрыт и от клавиатуры (visibility), открытый — виден сразу */
	.mdm-rail{position:fixed;left:0;top:0;bottom:0;z-index:40;transform:translateX(-100%);visibility:hidden;transition:transform 120ms,visibility 0s 120ms;height:100%}
	body.mdm-rail-open .mdm-rail{transform:none;visibility:visible;transition:transform 120ms}
	body.mdm-rail-open .mdm-overlay{display:block;position:fixed;inset:0;background:rgba(22,23,26,.5);z-index:30}
	.mdm-topbar{gap:8px;padding:0 12px}
	.mdm-topbar__contact{display:none}
	/* телефоны и почта в мобильном меню — область нажатия не меньше 32 px (аудит 09.11.2026) */
	.mdm-rail__contacts a{padding:6px 0}
	/* проверка мобильной версии 09.11.2026: область нажатия от 24 px, подписи и надзаголовки — от 12 px */
	.mdm-calc__delivery a,.mdm-filters__reset,.mdm-th__foot a{display:inline-flex;align-items:center;min-height:32px}
	.mdm-check{min-height:32px}
	.mdm-overline,.mdm-th__title,.mdm-forms__link small,small.mdm-mono{font-size:12px}
	.mdm-burger,.mdm-search-toggle,.mdm-topbar__call{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:0;background:transparent;border-radius:var(--mdm-r-md);cursor:pointer;color:var(--mdm-ink);text-decoration:none}
	/* знак по центру шапки по вертикали и крупнее (фото пользователя 10.11.2026: был 40×22 и прижат к верху) */
	.mdm-topbar__mark{display:flex;align-items:center;min-height:44px;margin-right:auto}
	.mdm-topbar__mark img{display:block;width:58px;height:auto}
	.mdm-search{display:none}
	body.mdm-search-open .mdm-search{display:flex;position:absolute;left:12px;right:12px;top:calc(var(--mdm-topbar-h) + 8px);background:var(--mdm-surface);border:1px solid var(--mdm-line);box-shadow:0 8px 24px rgba(0,0,0,.08)}
	.mdm-search kbd{display:none}
	.mdm-cart-btn{padding:0 12px}
	.mdm-cart-btn [data-mdm-cart-sum]{display:none}
	.mdm-topbar__file{display:none}
	.mdm-picker{grid-template-columns:1fr 1fr}
	.mdm-picker__step:nth-child(3){border-left:0}
	.mdm-text--aside{grid-template-columns:1fr}
	.mdm-product{grid-template-columns:1fr}
	.mdm-split{grid-template-columns:1fr}
	.mdm-cart-card{position:static}
}
@media (max-width:767px){
	.mdm-h1{font-size:28px}
	.mdm-head{flex-direction:column;align-items:stretch;gap:16px}
	.mdm-product-head{flex-direction:column;align-items:flex-start;gap:12px}
	.mdm-plate{width:100%}
	.mdm-picker{grid-template-columns:1fr}
	.mdm-picker__step+.mdm-picker__step{border-left:0;border-top:1px solid var(--mdm-line-soft)}
	.mdm-chips{flex-wrap:wrap}
	.mdm-chip{height:44px}
	.mdm-chip[hidden]{display:none}
	.mdm-chip--more{background:transparent;border-style:dashed}
	.mdm-adv{grid-template-columns:1fr}
	.mdm-text{padding:20px}
	.mdm-specs dl{grid-template-columns:1fr}
	/* эскиз: на телефоне — вариант с паспортом под изделием (сбоку подписи слишком мелкие) */
	.mdm-sketch--wide{display:none}
	.mdm-sketch--tall{display:block}
	.mdm-sketch-card{padding:12px}
	/* строки таблиц — карточки: название крупно, характеристики строкой, количество + кнопка на всю ширину */
	.mdm-table thead{display:none}
	.mdm-table,.mdm-table tbody,.mdm-table tr,.mdm-table td{display:block;width:100%}
	.mdm-table tr{padding:14px 16px;border-top:1px solid var(--mdm-line-soft)}
	.mdm-table td{height:auto;padding:2px 0;border:0}
	.mdm-table td[data-label]{display:flex;justify-content:space-between;gap:12px}
	.mdm-table td[data-label]:empty,.mdm-table td.mdm-cell--empty{display:none}
	.mdm-table td[data-label]::before{content:attr(data-label);font-family:var(--mdm-font-mono);font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--mdm-muted)}
	.mdm-table__name{font-size:16px;font-weight:600;padding-bottom:6px!important}
	.mdm-table__buy{display:block!important;padding-top:10px!important}
	.mdm-buy{grid-template-columns:auto auto 1fr;justify-content:stretch}
	.mdm-buy .mdm-btn{grid-column:auto}
	.mdm-table__buy .mdm-qty{width:72px;height:44px}
	.mdm-table__buy .mdm-unit{height:44px}
	.mdm-qty-hint{text-align:left}
	.mdm-table__buy .mdm-btn{flex-grow:1;height:44px}
	/* матрица — прокрутка внутри блока, первый столбец закреплён */
	.mdm-btn{min-height:44px}
	.mdm-toast{left:12px;right:12px;bottom:12px}
}
@media (max-width:767px){
	.mdm-prose .main.inline{grid-template-columns:repeat(2,minmax(0,1fr))}
	.mdm-picker .mdm-chips{max-height:none}
}
@media (max-width:767px){
	.mdm-form__pair{grid-template-columns:1fr}
	.mdm-form__submit{align-self:stretch}
}
@media (max-width:767px){
	.mdm-calc-widget__grid{grid-template-columns:1fr}
}
@media (max-width:1023px){
	.mdm-footer__cols{grid-template-columns:repeat(2,minmax(0,1fr))}
	.mdm-footer__side{grid-column:1/-1}
}
@media (max-width:767px){
	.mdm-footer__cols{grid-template-columns:1fr}
	.mdm-footer__side{grid-template-columns:1fr}
}
@media (max-width:767px){.mdm-offices{grid-template-columns:1fr}.mdm-office{padding:20px}}

@media (max-width:767px){
	/* шапки нет — её списки и «Цена» строкой кнопок над карточками */
	.mdm-table:has(.mdm-th--ctl) thead{display:block}
	.mdm-table:has(.mdm-th--ctl) thead tr{display:flex;flex-wrap:wrap;gap:6px;padding:12px 16px 4px;border:0}
	.mdm-table thead th{display:none}
	.mdm-table thead th.mdm-th--ctl{display:block;width:auto;padding:0;background:transparent}
	.mdm-th__sum,a.mdm-th{min-height:44px;justify-content:center;padding:4px 12px;border:1px solid var(--mdm-line);background:var(--mdm-surface)}
	.mdm-th__opt{min-height:44px}
	/* на телефоне панель во всю ширину, значения — строками в 2–3 колонки и прокрутка вниз, а не вбок */
	.mdm-th__drop.is-floating .mdm-th__panel{width:calc(100vw - 32px);min-width:0}
	.mdm-th__group{grid-auto-flow:row;grid-template-rows:none;grid-template-columns:repeat(auto-fill,minmax(104px,1fr))}
}
@media (max-width:767px){
	.mdm-article img:not(.border1menu){float:none!important;display:block;width:100%;max-width:100%;max-height:240px;margin:0 0 14px!important;object-fit:cover}
	.mdm-article .wp-caption{float:none!important;width:100%!important;margin:0 0 14px!important}
	.mdm-article .wp-caption img:not(.border1menu){margin:0!important}
}

/* iPhone приближает страницу при вводе, если шрифт поля меньше 16px */
@media (pointer:coarse){
	input:not([type=checkbox]):not([type=radio]):not([type=file]),select,textarea{font-size:16px!important}
}
@media (max-width:1023px){
	body.mdm-rail-open{overflow:hidden}
	body.mdm-rail-open .mdm-rail-close{display:inline-flex;position:fixed;left:272px;top:14px;z-index:41;align-items:center;justify-content:center;width:44px;height:44px;border:0;border-radius:var(--mdm-r-md);background:rgba(22,23,26,.75);color:#fff;cursor:pointer}
}
@media (max-width:767px){
	.mdm-form__pair{grid-template-columns:minmax(0,1fr)}
	.mdm-field select{width:100%;min-width:0}
	/* подвал: ссылки выше для пальца */
	.mdm-footer__col{gap:0}
	.mdm-footer__col a{display:block;padding:8px 0}
	/* корзина: количество единой группой справа, крестик — в углу карточки */
	.mdm-table tr:has(>td>[data-mdm-remove]){position:relative}
	.mdm-table tr:has(>td>[data-mdm-remove]) .mdm-table__name{padding-right:52px}
	.mdm-table td:has(>[data-mdm-remove]){position:absolute;top:10px;right:12px;width:auto;padding:0}
	.mdm-table td[data-label]:has(>.mdm-qty){justify-content:flex-start;align-items:center;gap:8px}
	.mdm-table td[data-label]:has(>.mdm-qty)::before{margin-right:auto}
}

/* Строка товара на телефоне: название, характеристики без подписей, цена и покупка в один ряд (макет B, 02.11.2026). Все значения на месте.
   ::before — разрыв ряда: иначе при короткой строке характеристик цена поднималась бы к ним. Корзина (.mdm-table без покупки) не затронута. */
@media (max-width:767px){
	.mdm-table:has(.mdm-table__buy) tbody tr{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;padding:12px 16px}
	.mdm-table:has(.mdm-table__buy) tbody tr::before{content:"";flex-basis:100%;height:0;order:3}
	.mdm-table:has(.mdm-table__buy) tbody td,.mdm-table:has(.mdm-table__buy) tbody td[data-label]{display:block;width:auto;padding:0;font-size:13px}
	.mdm-table:has(.mdm-table__buy) tbody td[data-label]::before{display:none}
	.mdm-table:has(.mdm-table__buy) tbody td[data-label]:empty,.mdm-table:has(.mdm-table__buy) tbody td.mdm-cell--empty{display:none}
	.mdm-table:has(.mdm-table__buy) tbody td.mdm-table__name{flex:0 0 100%;font-size:15px;line-height:1.3;padding:0!important}
	.mdm-table:has(.mdm-table__buy) .mdm-table__name a{display:block;padding:4px 0}
	/* в шапке колонка «Размер, мм»; шапки на телефоне нет */
	.mdm-table:has(.mdm-table__buy) tbody td[data-label="Размер"]:not(:empty)::after{content:" мм"}
	.mdm-table:has(.mdm-table__buy) tbody td[data-label="Цена"]{flex:1 1 60px;min-width:0;order:4;font-size:16px;font-weight:700;color:var(--mdm-ink)}
	/* цена не рвётся на «1 855 ₽/» и «кг»: не помещается рядом с покупкой — покупка уходит строкой ниже (проверка 09.11.2026) */
	.mdm-table:has(.mdm-table__buy) tbody td[data-label="Цена"]{white-space:nowrap;min-width:fit-content}
	.mdm-table:has(.mdm-table__buy) tbody td.mdm-table__buy{flex:0 0 auto;order:5;display:block!important;padding:0!important}
	.mdm-table:has(.mdm-table__buy) .mdm-buy{grid-template-columns:52px 58px auto;gap:4px}
	.mdm-table:has(.mdm-table__buy) .mdm-table__buy .mdm-qty{width:52px}
	.mdm-table:has(.mdm-table__buy) .mdm-table__buy .mdm-btn{padding:0 10px}

	/* Фильтры одной строкой под шапкой при прокрутке; строка сдвигается пальцем вбок */
	.mdm-table-card:has(.mdm-th--ctl),.mdm-table-wrap:has(.mdm-th--ctl){overflow:visible}
	.mdm-table:has(.mdm-th--ctl) thead{position:sticky;top:var(--mdm-topbar-h);z-index:6;background:var(--mdm-surface);border-radius:var(--mdm-r-xl) var(--mdm-r-xl) 0 0;box-shadow:0 1px 0 var(--mdm-line-soft)}
	.mdm-table:has(.mdm-th--ctl) thead tr{flex-wrap:nowrap;overflow-x:auto;padding:8px 12px;scrollbar-width:none}
	.mdm-table:has(.mdm-th--ctl) thead th.mdm-th--ctl{flex:0 0 auto}
	.mdm-table:has(.mdm-th--ctl) .mdm-th__sub{display:inline;margin-left:6px}
	.mdm-table:has(.mdm-th--ctl) .mdm-th__sum,.mdm-table:has(.mdm-th--ctl) a.mdm-th{flex-direction:row;align-items:center;min-height:40px;white-space:nowrap}
}

/* Карточка товара: цена и кнопка в полосе внизу экрана (макет B, 02.11.2026) */
.mdm-buybar{display:none}
@media (max-width:1023px){
	.mdm-buybar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:20;align-items:center;justify-content:space-between;gap:12px;padding:10px 16px;background:var(--mdm-rail);color:#fff}
	.mdm-buybar.is-hidden{display:none}
	.mdm-buybar__price{font-size:18px;font-weight:700}
	.mdm-buybar .mdm-btn{flex-shrink:0;min-width:150px;min-height:44px}
	body:has(.mdm-buybar){padding-bottom:64px}
	body:has(.mdm-buybar:not(.is-hidden)) .mdm-toast{bottom:76px}
}
/* узкие телефоны: покупка компактнее, чтобы цена осталась с ней в одном ряду */
@media (max-width:379px){
	.mdm-table:has(.mdm-table__buy) .mdm-buy{grid-template-columns:48px 56px auto}
	.mdm-table:has(.mdm-table__buy) .mdm-table__buy .mdm-qty{width:48px}
	.mdm-table:has(.mdm-table__buy) .mdm-table__buy .mdm-btn{padding:0 8px}
}
/* самые узкие телефоны (320–400 px): заголовок помещается без переноса посреди слова */
@media (max-width:400px){.mdm-h1{font-size:24px}.mdm-h1--product{font-size:22px}}
