/* Miss Merylin .in: editorial layer (Phase 4 design pass). Loaded last on every storefront page.
   Tokens and rules: docs/DESIGN-MM.md. Black, white, one warm neutral (sand), one accent (sale/status only).
   Corners 0–2px (pills only for filter chips). One sans (Inter subset). Motion: fades 150–200 ms.
   Every length below comes from a token; one-off values are a bug. */

/* ── 1 · Tokens. html:root beats WoodMart's inline theme-settings :root and the older layers. ── */
html:root {
	/* colour */
	--mm-ink: #111;
	--mm-ink-2: #5f5f5f;           /* secondary text: 6.4:1 on white, 5.7:1 on sand */
	--mm-paper: #fff;
	--mm-sand: #f4f1ec;            /* the one warm neutral: image wells, quiet panels, selected chips */
	--mm-hair: #e4e0da;            /* hairlines */
	--mm-accent: #a62b43;          /* sale prices, status needing attention: 6.9:1 on white */
	--mm-scrim: rgb(17 17 17 / .45);

	/* older names, re-pointed so the existing layers follow the new world */
	--mm-black: var(--mm-ink);
	--mm-white: var(--mm-paper);
	--mm-blush: var(--mm-sand);
	--mm-offwhite: var(--mm-sand);
	--mm-border: var(--mm-hair);
	--mm-line: var(--mm-hair);
	--mm-gray: var(--mm-ink-2);
	--mm-muted: var(--mm-ink-2);
	--mm-rose: var(--mm-accent);
	--mm-rose-text: var(--mm-accent);
	--mm-rose-ink: var(--mm-accent);
	--mm-success: var(--mm-ink);
	--mm-warn: var(--mm-ink);
	--mm-error: var(--mm-accent);

	/* type: one family */
	--mm-font: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
	--mm-font-body: var(--mm-font);
	--mm-font-heading: var(--mm-font);
	--mm-ff-text: var(--mm-font);
	--mm-ff-display: var(--mm-font);
	--mm-t-label: 11px;            /* tiny uppercase labels only */
	--mm-t-legal: 11px;            /* legal footer lines only */
	--mm-t-small: 12px;
	--mm-t-meta: 13px;             /* field labels, counts, product names on phones */
	--mm-t-name: 13px;
	--mm-t-price: 14px;
	--mm-t-body: 15px;
	--mm-t-sec: 22px;              /* section titles */
	--mm-t-page: 28px;             /* page titles */
	--mm-t-hero: 34px;
	--mm-track: .1em;              /* uppercase labels: 0.08–0.12em */
	--mm-tight: -.02em;            /* headings */

	/* space: 4 8 12 16 24 32 48 64 96 */
	--mm-s-1: 4px; --mm-s-2: 8px; --mm-s-3: 12px; --mm-s-4: 16px; --mm-s-5: 24px;
	--mm-s-6: 32px; --mm-s-7: 48px; --mm-s-8: 64px; --mm-s-9: 96px;
	--mm-gutter: var(--mm-s-4);    /* page side margin */
	--mm-tile-gap: var(--mm-s-1);  /* image-to-image gutter */
	--mm-section: 56px;            /* between sections */
	--mm-title-gap: 20px;          /* section title → content */
	--mm-row-gap: 28px;            /* grid rows */
	--mm-card-text: 10px;          /* image → product name */
	--mm-container: 1440px;
	--mm-header-h: 64px;
	--mm-control-h: 52px;          /* buttons and fields */

	/* shape */
	--mm-r: 2px;
	--mm-r-xs: var(--mm-r); --mm-r-s: var(--mm-r); --mm-r-m: 0px; --mm-r-l: 0px; --mm-r-xl: 0px;
	--mm-card-radius: 0px;
	--mm-h-radius: 0px;
	--mm-pill: 999px;              /* filter chips only */

	/* elevation: none on cards; one soft shadow for floating sheets */
	--mm-e1: none;
	--mm-e2: 0 1px 0 var(--mm-hair);
	--mm-e3: 0 -8px 32px rgb(0 0 0 / .1);

	/* motion */
	--mm-fade: 180ms;
	--mm-ease: ease;
	--mm-d-state: var(--mm-fade);
	--mm-focus: 0 0 0 2px var(--mm-paper), 0 0 0 4px var(--mm-ink);
}
@media (min-width: 1024px) {
	html:root {
		--mm-gutter: 40px;
		--mm-tile-gap: var(--mm-s-4);
		--mm-section: var(--mm-s-9);
		--mm-title-gap: 28px;
		--mm-row-gap: 40px;
		--mm-t-label: 12px;
		--mm-t-name: 14px;
		--mm-t-price: 15px;
		--mm-t-body: 16px;
		--mm-t-sec: var(--mm-s-6);
		--mm-t-page: 44px;
		--mm-t-hero: 56px;
		--mm-header-h: 72px;
	}
}

/* ── 2 · Base ── */
html, body { overflow-x: clip; }
body.mm-shell :is(.website-wrapper, .main-page-wrapper) { background: var(--mm-paper); }
body.mm-home-app .main-page-wrapper > .wd-content-layout { max-width: none; padding: 0; }
body.mm-shell { background: var(--mm-paper); color: var(--mm-ink); font: 400 var(--mm-t-body)/1.5 var(--mm-font); -webkit-font-smoothing: antialiased; }
body.mm-shell :is(h1, h2, h3, h4, .title, .wd-entities-title, .product_title) { font-family: var(--mm-font); letter-spacing: var(--mm-tight); color: var(--mm-ink); }
body.mm-shell a { transition: color var(--mm-fade) var(--mm-ease), opacity var(--mm-fade) var(--mm-ease); }
body.mm-shell :focus-visible { outline: 2px solid var(--mm-ink); outline-offset: 2px; box-shadow: none; }
body.mm-shell img { border-radius: 0; }
.mm-label, body.mm-shell .mm-hsec__more { font: 500 var(--mm-t-label)/1.2 var(--mm-font); letter-spacing: var(--mm-track); text-transform: uppercase; }

/* Buttons: square-ish, 52px, black; secondary = 1px ink outline. Corners 2px. */
body.mm-shell :is(.btn, .button, button.button, .wp-element-button, .single_add_to_cart_button, .checkout-button, .wc-block-components-button:not(.is-link), .mm-c-btn, input[type="submit"]) {
	min-height: var(--mm-control-h); border-radius: var(--mm-r) !important; box-shadow: none !important;
	font: 500 var(--mm-t-meta)/1 var(--mm-font) !important; letter-spacing: var(--mm-track) !important; text-transform: uppercase;
	transition: background-color var(--mm-fade) var(--mm-ease), color var(--mm-fade) var(--mm-ease), opacity var(--mm-fade) var(--mm-ease);
}
body.mm-shell :is(.single_add_to_cart_button, .checkout-button, .wc-block-cart__submit-button, .wc-block-components-checkout-place-order-button, .mm-c-btn--primary) { background: var(--mm-ink) !important; color: var(--mm-paper) !important; border: 0 !important; }
body.mm-shell :is(.single_add_to_cart_button, .checkout-button, .wc-block-cart__submit-button, .wc-block-components-checkout-place-order-button):hover { opacity: .86; }

/* Fields: 52px, 1px hairline, 2px corners, labels above (13px). */
body.mm-shell :is(input[type="text"], input[type="email"], input[type="tel"], input[type="password"], input[type="number"], input[type="search"], select, textarea):not(.mm-sbar__input) {
	min-height: var(--mm-control-h); border: 1px solid var(--mm-hair); border-radius: var(--mm-r); background: var(--mm-paper); box-shadow: none; font-size: 16px; color: var(--mm-ink);
}
body.mm-shell :is(input, select, textarea):focus { border-color: var(--mm-ink); outline: none; }

/* WooCommerce notices: AA contrast (was near-invisible on checkout). */
body.mm-shell :is(.woocommerce-message, .woocommerce-info, .woocommerce-error, .woocommerce-notice, .wc-block-components-notice-banner, .wc-block-store-notice) {
	background: var(--mm-sand) !important; color: var(--mm-ink) !important; border: 1px solid var(--mm-ink) !important; border-radius: var(--mm-r) !important; box-shadow: none !important;
	font: 400 var(--mm-t-meta)/1.5 var(--mm-font); padding: var(--mm-s-3) var(--mm-s-4) !important;
}
body.mm-shell :is(.woocommerce-error, .wc-block-components-notice-banner.is-error) { border-color: var(--mm-accent) !important; }
body.mm-shell :is(.woocommerce-message, .woocommerce-info, .woocommerce-error, .wc-block-components-notice-banner) :is(a, .wc-block-components-notice-banner__content, li, p) { color: var(--mm-ink) !important; }
body.mm-shell :is(.woocommerce-message, .woocommerce-info, .woocommerce-error) a { text-decoration: underline; }
body.mm-shell :is(.woocommerce-message, .woocommerce-info, .woocommerce-error)::before,
body.mm-shell .wc-block-components-notice-banner > svg { color: var(--mm-ink) !important; fill: currentColor !important; background: none !important; }

/* ── 3 · Off-canvas panels stay hidden until opened (1280/1440/1920 leaked "Sign in" and the cart). ── */
body.mm-shell .wd-side-hidden { position: fixed; top: 0; bottom: 0; z-index: 10010; visibility: hidden; transition: transform var(--mm-fade) var(--mm-ease), visibility 0s var(--mm-fade); }
body.mm-shell .wd-side-hidden.wd-right { right: 0; left: auto; transform: translate3d(100%, 0, 0); }
body.mm-shell .wd-side-hidden.wd-left { left: 0; right: auto; transform: translate3d(-100%, 0, 0); }
body.mm-shell .wd-side-hidden.wd-opened { visibility: visible; transform: none; transition: transform var(--mm-fade) var(--mm-ease), visibility 0s; }

/* ── 4 · Announcement: one short line, fading through the messages (no marquee). ── */
body.mm-shell .mm-announcement { position: relative; background: var(--mm-ink); height: 36px; overflow: hidden; }
body.mm-shell .mm-announcement__track { display: block; animation: none; height: 100%; }
body.mm-shell .mm-announcement__item { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; padding: 0 var(--mm-gutter); color: var(--mm-paper); font: 500 var(--mm-t-label)/1.2 var(--mm-font); letter-spacing: var(--mm-track); text-transform: uppercase; margin: 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; opacity: 0; transition: opacity var(--mm-fade) var(--mm-ease); }
body.mm-shell .mm-announcement__item.is-on, body.mm-shell .mm-announcement__track:not(:has(.is-on)) .mm-announcement__item:first-child { opacity: 1; }

/* ── 5 · Header ── */
/* phone: logo + icons, then a quiet search field */
body.mm-shell .mm-sbar { background: var(--mm-paper); }
body.mm-shell :is(.mm-sbar__field, .mm-sbar__box, .mm-sbar form) { border-radius: var(--mm-r) !important; }
body.mm-shell .mm-sbar__input { border-radius: var(--mm-r) !important; background: var(--mm-sand) !important; border: 0 !important; font-size: 16px; }
body.mm-shell .whb-header .site-logo img { max-width: 168px !important; }

@media (min-width: 1025px) {
	body.mm-shell .whb-header { overflow-x: clip; }
	body.mm-shell .whb-general-header .container { width: 100%; max-width: var(--mm-container) !important; padding: 0 var(--mm-gutter) !important; box-sizing: border-box; }
	body.mm-shell .whb-general-header .whb-flex-row > .whb-column:first-child { padding-left: 0; margin-left: 0; }
	body.mm-shell .whb-general-header .whb-flex-row > .whb-column:last-child { padding-right: 0; margin-right: 0; }
	body.mm-shell .whb-general-header .wd-header-my-account .wd-tools-text { display: none; } /* icons right: the account label made the bar wider than 1280 */
	body.mm-shell .whb-general-header-inner { min-height: var(--mm-header-h); height: var(--mm-header-h); }
	body.mm-shell .whb-general-header { border-bottom: 1px solid var(--mm-hair); }
	body.mm-shell .wd-header-main-nav .wd-nav > li > a { font: 500 var(--mm-t-meta)/1 var(--mm-font) !important; letter-spacing: var(--mm-track) !important; text-transform: uppercase; color: var(--mm-ink) !important; padding: 0 var(--mm-s-3) !important; height: var(--mm-header-h); }
	body.mm-shell .wd-header-main-nav .wd-nav > li > a:hover { opacity: .6; }
	body.mm-shell .wd-header-main-nav .wd-nav > li > a .nav-link-text { border-bottom: 1px solid transparent; }
	body.mm-shell .wd-header-main-nav .wd-nav > li.current-menu-item > a .nav-link-text { border-bottom-color: var(--mm-ink); }
	body.mm-shell .wd-header-main-nav .wd-nav { flex-wrap: nowrap; }
	body.mm-shell .wd-header-main-nav .wd-nav > li > a .nav-link-text { white-space: nowrap; } /* "PHONE ACCESSORIES" wrapped at 1440 */
	body.mm-shell .wd-dropdown-menu { border-radius: 0 !important; box-shadow: 0 1px 0 var(--mm-hair) !important; border-top: 1px solid var(--mm-hair); }
	body.mm-shell .wd-dropdown-menu .wd-sub-menu a { font: 400 var(--mm-t-meta)/1.6 var(--mm-font) !important; text-transform: none; color: var(--mm-ink) !important; }
	body.mm-shell .wd-header-my-account .wd-tools-text, body.mm-shell .wd-header-cart .wd-tools-text { font: 500 var(--mm-t-label)/1 var(--mm-font) !important; letter-spacing: var(--mm-track) !important; text-transform: uppercase; }
	body.mm-shell .wd-header-cart .wd-cart-subtotal { display: none; }
	/* mega menu: type minimums (was 9–11px) */
	body.mm-shell :is(.mm-mega__head, .mm-mega__viewall) { font-size: var(--mm-t-label) !important; letter-spacing: var(--mm-track); }
	body.mm-shell .mm-mega__price, body.mm-shell .mm-mega__price .amount { font-size: var(--mm-t-meta) !important; }
}

/* ── 6 · Tab bar (phones) ── */
body.mm-shell .mm-tabbar { background: var(--mm-paper); border-top: 1px solid var(--mm-hair); -webkit-backdrop-filter: none; backdrop-filter: none; }
body.mm-shell .mm-tabbar .mm-tab { font: 500 var(--mm-t-label)/1.2 var(--mm-font); letter-spacing: .02em; }
body.mm-shell .mm-tabbar .mm-tab:not(.is-active) { color: var(--mm-ink-2) !important; }
body.mm-shell .mm-tabbar .mm-tab.is-active { color: var(--mm-ink) !important; }
body.mm-shell .mm-tab__badge, body.mm-shell .wd-cart-number, body.mm-shell .mm-sbar__count { background: var(--mm-ink) !important; color: var(--mm-paper) !important; font-size: var(--mm-t-label) !important; }

/* ── 7 · Product card: image 3:4, no box; name 1–2 lines; price; heart on the image corner only ── */
body.mm-shell .wd-product.product-grid-item.mm-card { background: transparent; border: 0; border-radius: 0; box-shadow: none; overflow: visible; }
body.mm-shell .wd-product.product-grid-item.mm-card .mm-card__media { aspect-ratio: 3 / 4; border-radius: 0; background: var(--mm-sand); }
body.mm-shell .wd-product.product-grid-item.mm-card .mm-card__media img { aspect-ratio: 3 / 4; object-fit: cover; object-position: center; transition: opacity var(--mm-fade) var(--mm-ease); }
body.mm-shell .wd-product.product-grid-item.mm-card:hover .mm-card__media img { transform: none; }
body.mm-shell .wd-product.product-grid-item.mm-card .mm-card__body { padding: var(--mm-card-text) 0 0; }
body.mm-shell .wd-product.product-grid-item.mm-card .mm-card__name { margin: 0 0 var(--mm-s-1); min-height: 0; }
body.mm-shell .wd-product.product-grid-item.mm-card .mm-card__name,
body.mm-shell .wd-product.product-grid-item.mm-card .mm-card__name a { font: 400 var(--mm-t-name)/1.4 var(--mm-font); letter-spacing: 0; color: var(--mm-ink); }
body.mm-shell .wd-product.product-grid-item.mm-card .mm-card__row { display: block; min-height: 0; margin: 0; }
body.mm-shell .wd-product.product-grid-item.mm-card .mm-card__price { column-gap: var(--mm-s-2); font-size: var(--mm-t-price); }
body.mm-shell .wd-product.product-grid-item.mm-card :is(.mm-card__now, .mm-card__now .amount) { font: 500 var(--mm-t-price)/1.3 var(--mm-font); color: var(--mm-ink); font-variant-numeric: tabular-nums; }
body.mm-shell .wd-product.product-grid-item.mm-card:has(.mm-card__off) :is(.mm-card__now, .mm-card__now .amount) { color: var(--mm-accent); }
body.mm-shell .wd-product.product-grid-item.mm-card :is(.mm-card__was, .mm-card__was .amount) { font: 400 var(--mm-t-small)/1.3 var(--mm-font); color: var(--mm-ink-2); }
body.mm-shell .wd-product.product-grid-item.mm-card .mm-card__off { font: 500 var(--mm-t-small)/1.3 var(--mm-font); color: var(--mm-accent); background: none; padding: 0; }
body.mm-shell .wd-product.product-grid-item.mm-card .mm-card__from { font-size: var(--mm-t-small); color: var(--mm-ink-2); }
body.mm-shell .mm-card__add { display: none !important; } /* the round "+" is gone (founder, design pass) */

/* heart: bare icon on the image corner, 44px tap target; saved = filled ink */
body.mm-shell .mm-card__wish { top: 0; right: 0; width: 44px; height: 44px; border-radius: 0; background: none; box-shadow: none; color: var(--mm-ink); }
body.mm-shell .mm-card__wish .mm-wish__ic { width: 20px; height: 20px; }
body.mm-shell .mm-wish.is-on .mm-wish__ic { fill: var(--mm-ink); stroke: var(--mm-ink); }
body.mm-shell .mm-wish:focus-visible { outline-color: var(--mm-ink); }

/* "Global" tag on cards: off by default (founder review); .mm-badge-quiet shows a tiny tag bottom-left of the image.
   The PDP always keeps a small "GLOBAL" text label above the title. */
body.mm-shell .mm-imported-tag { position: absolute; top: auto; bottom: var(--mm-s-2); left: var(--mm-s-2); display: inline-block; padding: 2px var(--mm-s-1); border-radius: var(--mm-r); background: rgb(255 255 255 / .9); color: var(--mm-ink); font: 500 var(--mm-t-label)/1.3 var(--mm-font); letter-spacing: var(--mm-track); text-transform: uppercase; box-shadow: none; border: 0; }
body.mm-shell .wd-product.product-grid-item.mm-card .mm-imported-tag { top: auto; left: var(--mm-s-2); border-radius: var(--mm-r); padding: 2px var(--mm-s-1); }
body.mm-shell .mm-imported-tag__ic { display: none; }
body.mm-shell .mm-imported-tag--pdp { position: static; display: block; margin: 0 0 var(--mm-s-2); padding: 0; background: none; color: var(--mm-ink-2); }
body.mm-badge-off .mm-imported-tag:not(.mm-imported-tag--pdp) { display: none !important; }

/* ── 8 · Home ── */
body.mm-shell .mm-home { --mm-h-gutter: var(--mm-gutter); padding-bottom: var(--mm-section); }
/* hero: full bleed, ~75% of a phone screen, short headline, one button */
body.mm-shell .mm-hhero { max-width: none; margin: 0; padding: 0; }
body.mm-shell .mm-hhero__track, body.mm-shell .mm-hhero__slide { border-radius: 0; background: var(--mm-sand); }
body.mm-shell .mm-hhero__media { aspect-ratio: auto; height: 75svh; min-height: 420px; max-height: none; }
body.mm-shell .mm-hhero__img { object-position: center 20%; }
body.mm-shell .mm-hhero__media + .mm-hhero__content { left: 0; right: 0; bottom: 0; padding: var(--mm-s-9) var(--mm-gutter) var(--mm-s-6); text-align: left; background: linear-gradient(180deg, rgb(17 17 17 / 0) 0%, rgb(17 17 17 / .5) 100%); }
body.mm-shell .mm-hhero__title, body.mm-shell .mm-hhero__media + .mm-hhero__content .mm-hhero__title { margin: 0 0 var(--mm-s-5); max-width: 12em; font: 500 var(--mm-t-hero)/1.05 var(--mm-font); letter-spacing: -.03em; color: var(--mm-paper); }
body.mm-shell .mm-hhero__cta, body.mm-shell .mm-hhero__media + .mm-hhero__content .mm-hhero__cta { display: inline-flex; align-items: center; min-height: var(--mm-control-h); padding: 0 var(--mm-s-6); border-radius: var(--mm-r); background: var(--mm-paper); color: var(--mm-ink); font: 500 var(--mm-t-meta)/1 var(--mm-font); letter-spacing: var(--mm-track); text-transform: uppercase; }
body.mm-shell .mm-hhero__cta:hover { background: var(--mm-paper); color: var(--mm-ink); opacity: .86; }
body.mm-shell .mm-hhero__dot { border-radius: 0; height: 2px; width: var(--mm-s-5); background: var(--mm-hair); }
body.mm-shell .mm-hhero__dot[aria-current="true"] { width: var(--mm-s-5); background: var(--mm-ink); border-radius: 0; }
@media (min-width: 1024px) {
	body.mm-shell .mm-hhero__media { height: min(82vh, 860px); }
	body.mm-shell .mm-hhero__media + .mm-hhero__content { padding: var(--mm-s-9) var(--mm-gutter) var(--mm-s-8); }
	body.mm-shell .mm-hhero__media + .mm-hhero__content > * { max-width: var(--mm-container); }
}

/* category row: text tabs (default, founder review); image tiles (3:4, label under) stay available as a setting. */
body.mm-shell .mm-hcats { max-width: var(--mm-container); margin: 0 auto; padding: var(--mm-s-5) 0 0; }
body.mm-shell .mm-hcats__list { grid-template-rows: none; grid-auto-flow: column; grid-auto-columns: calc((100% - 2 * var(--mm-gutter) - 3 * var(--mm-tile-gap)) / 3.4); gap: var(--mm-tile-gap); padding: 0 var(--mm-gutter); scroll-padding: 0 var(--mm-gutter); justify-content: start; }
body.mm-shell .mm-tile { align-items: stretch; gap: var(--mm-s-2); color: var(--mm-ink); }
body.mm-shell .mm-tile__img { width: 100%; height: auto; aspect-ratio: 3 / 4; border-radius: 0; background: var(--mm-sand); border: 0; box-shadow: none; overflow: hidden; }
body.mm-shell .mm-tile__img img { width: 100%; height: 100%; object-fit: cover; border-radius: 0; }
body.mm-shell .mm-tile__label { font: 500 var(--mm-t-label)/1.3 var(--mm-font); letter-spacing: var(--mm-track); text-transform: uppercase; text-align: left; color: var(--mm-ink); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
body.mm-shell .mm-tile:hover .mm-tile__label { color: var(--mm-ink); opacity: .6; }
@media (min-width: 1024px) {
	body.mm-shell .mm-hcats { padding-top: var(--mm-s-7); }
	body.mm-shell .mm-hcats__list { grid-auto-flow: row; grid-template-columns: repeat(auto-fit, minmax(0, 1fr)); grid-auto-columns: auto; overflow: visible; }
	body.mm-shell .mm-hcats__cell { min-width: 0; }
}
body.mm-cats-tabs .mm-hcats { position: sticky; top: 0; z-index: 20; padding: 0; background: var(--mm-paper); border-bottom: 1px solid var(--mm-hair); }
body.mm-cats-tabs .mm-hcats__list { grid-auto-columns: max-content; gap: var(--mm-s-5); }
body.mm-cats-tabs .mm-tile__img { display: none; }
body.mm-cats-tabs .mm-tile { display: flex; align-items: center; min-height: 48px; padding: 0; }
body.mm-cats-tabs .mm-tile__label { font-size: var(--mm-t-meta); overflow: visible; }
@media (min-width: 1024px) { body.mm-cats-tabs .mm-hcats__list { grid-auto-flow: column; grid-template-columns: none; grid-auto-columns: max-content; justify-content: center; gap: var(--mm-s-7); } }

/* sections and rails: generous; 2.3 cards on phones, 5 on desktop */
body.mm-shell .mm-hsec { max-width: var(--mm-container); margin: var(--mm-section) auto 0; padding: 0; }
body.mm-shell .mm-hsec__head { display: flex; align-items: baseline; justify-content: space-between; gap: var(--mm-s-4); margin: 0 0 var(--mm-title-gap); padding: 0 var(--mm-gutter); }
body.mm-shell .mm-hsec__title { margin: 0; font: 500 var(--mm-t-sec)/1.15 var(--mm-font); letter-spacing: var(--mm-tight); color: var(--mm-ink); }
body.mm-shell .mm-hsec__more { color: var(--mm-ink); text-decoration: underline; text-underline-offset: 4px; white-space: nowrap; }
body.mm-shell .mm-hsec__more { font: 500 var(--mm-t-meta)/1.2 var(--mm-font); letter-spacing: 0; text-transform: none; }
body.mm-shell .mm-hsec__more span { display: none; }
body.mm-shell .mm-rail__track { grid-auto-columns: calc((100% - var(--mm-gutter) - 2 * var(--mm-tile-gap)) / 2.3); gap: var(--mm-tile-gap); margin-inline: 0 !important; padding: 0 var(--mm-gutter) !important; scroll-padding: 0 var(--mm-gutter); }
body.mm-shell .mm-rail__track .mm-card .mm-card__body { padding-right: var(--mm-s-3); }
body.mm-shell .mm-skel--card { aspect-ratio: 3 / 5; border-radius: 0; background: var(--mm-sand); }
@media (min-width: 1024px) {
	body.mm-shell .mm-rail__track { grid-auto-columns: calc((100% - 2 * var(--mm-gutter) - 4 * var(--mm-tile-gap)) / 5); }
	body.mm-shell .mm-rail__track .mm-card .mm-card__body { padding-right: 0; }
}
/* shop by price: plain text links on a hairline */
body.mm-shell .mm-hprice__list { display: flex; flex-wrap: wrap; gap: var(--mm-s-2); padding: 0 var(--mm-gutter); margin: 0; list-style: none; }
body.mm-shell .mm-hprice__tile { display: inline-flex; align-items: center; min-height: 44px; padding: 0 var(--mm-s-4); border: 1px solid var(--mm-ink); border-radius: var(--mm-r); background: none; color: var(--mm-ink); font: 500 var(--mm-t-meta)/1 var(--mm-font); box-shadow: none; }
body.mm-shell .mm-hprice__tile:hover { background: var(--mm-ink); color: var(--mm-paper); }
/* how delivery works: three quiet columns */
body.mm-shell .mm-hsteps { padding: 0 var(--mm-gutter); }
body.mm-shell .mm-hsteps .mm-hsec__title { margin-bottom: var(--mm-title-gap); }
body.mm-shell .mm-hsteps__list { display: grid; gap: var(--mm-s-5); margin: 0; padding: var(--mm-s-5) 0 0; list-style: none; border-top: 1px solid var(--mm-hair); }
body.mm-shell .mm-hsteps__item { display: grid; grid-template-columns: var(--mm-s-5) 1fr; column-gap: var(--mm-s-4); row-gap: var(--mm-s-1); padding: 0; background: none; border: 0; border-radius: 0; box-shadow: none; text-align: left; }
body.mm-shell .mm-hsteps__icon { grid-row: span 2; color: var(--mm-ink); }
body.mm-shell .mm-hsteps__t { font: 500 var(--mm-t-body)/1.4 var(--mm-font); color: var(--mm-ink); }
body.mm-shell .mm-hsteps__d { font: 400 var(--mm-t-meta)/1.5 var(--mm-font); color: var(--mm-ink-2); }
@media (min-width: 1024px) { body.mm-shell .mm-hsteps__list { grid-template-columns: repeat(3, 1fr); gap: var(--mm-s-6); } }
/* newsletter: sand band, no card */
body.mm-shell .mm-hjoin { padding: 0; }
body.mm-shell .mm-hjoin__card { margin: 0; padding: var(--mm-s-7) var(--mm-gutter); border-radius: 0; border: 0; box-shadow: none; background: var(--mm-sand); text-align: left; }
body.mm-shell .mm-hjoin__title { margin: 0 0 var(--mm-s-5); max-width: 18em; font: 500 var(--mm-t-sec)/1.15 var(--mm-font); letter-spacing: var(--mm-tight); }
body.mm-shell .mm-hjoin__or { margin: var(--mm-s-4) 0; color: var(--mm-ink-2); font-size: var(--mm-t-meta); }
body.mm-shell .mm-hjoin__wa { display: inline-flex; align-items: center; min-height: var(--mm-control-h); padding: 0 var(--mm-s-5); border: 1px solid var(--mm-ink); border-radius: var(--mm-r); background: none; color: var(--mm-ink); font: 500 var(--mm-t-meta)/1 var(--mm-font); letter-spacing: var(--mm-track); text-transform: uppercase; }
@media (min-width: 1024px) { body.mm-shell .mm-hjoin__card { padding: var(--mm-s-8) var(--mm-gutter); } }

/* ── 9 · Listing: sticky slim Filter · Sort bar, 2-column grid edge to edge, quiet count ── */
body.mm-shell .main-page-wrapper > .wd-content-layout:has(.mm-listing) { max-width: var(--mm-container); padding: 0; }
body.mm-shell .mm-listing { max-width: var(--mm-container); margin: 0 auto; }
body.mm-shell .mm-listing :is(.mm-lgrid, .mm-lhead, .mm-fbar__chips, .mm-fbar__active, .mm-pagination) { max-width: none; }
body.mm-shell .mm-listing :is(.wd-products-per-page, .wd-products-shop-view, .woocommerce-result-count, .wd-shop-tools) { display: none !important; }
body.mm-shell .mm-lhead { display: flex; align-items: baseline; justify-content: space-between; gap: var(--mm-s-4); margin: 0; padding: var(--mm-s-5) var(--mm-gutter) var(--mm-s-4); text-align: left; }
body.mm-shell .mm-lhead__title { margin: 0; font: 500 var(--mm-t-page)/1.05 var(--mm-font); letter-spacing: -.03em; }
body.mm-shell .mm-lhead__count { margin: 0; font: 400 var(--mm-t-meta)/1.3 var(--mm-font); color: var(--mm-ink-2); white-space: nowrap; }
body.mm-shell .mm-fbar { position: sticky; top: 0; z-index: 30; margin: 0 0 var(--mm-s-4); padding: 0 var(--mm-gutter); max-width: none; background: var(--mm-paper); border-top: 1px solid var(--mm-hair); border-bottom: 1px solid var(--mm-hair); box-shadow: none; }
body.mm-shell .mm-fbar__chips { display: flex; align-items: center; gap: var(--mm-s-2); min-height: 48px; padding: 0; overflow: visible; }
body.mm-shell .mm-fchip__btn { min-height: 36px; padding: 0 var(--mm-s-3); border: 1px solid var(--mm-hair); border-radius: var(--mm-pill); background: var(--mm-paper); color: var(--mm-ink); font: 500 var(--mm-t-meta)/1 var(--mm-font); box-shadow: none; }
body.mm-shell .mm-fchip__btn.is-on, body.mm-shell .mm-fchip__btn[aria-pressed="true"] { border-color: var(--mm-ink); background: var(--mm-ink); color: var(--mm-paper); }
body.mm-shell .mm-fchip--sort { margin-left: auto; }
@media (max-width: 1023px) {
	/* phones: just "Filters" and "Sort"; the facet shortcuts live in the sheet */
	body.mm-shell .mm-fbar__chips > .mm-fchip__btn:not(.mm-fchip__btn--all) { display: none; }
	body.mm-shell .mm-fchip__btn--all, body.mm-shell .mm-fchip--sort > .mm-fchip__btn { border: 0; padding: 0; min-height: 48px; border-radius: 0; background: none; font: 500 var(--mm-t-label)/1 var(--mm-font); letter-spacing: var(--mm-track); text-transform: uppercase; }
}
body.mm-shell .mm-fo__chip { border-radius: var(--mm-pill); border: 1px solid var(--mm-hair); background: var(--mm-paper); }
body.mm-shell .mm-fo input:checked + .mm-fo__chip { border-color: var(--mm-ink); background: var(--mm-ink); color: var(--mm-paper); }
body.mm-shell .mm-fo input:checked + .mm-fo__chip .mm-fo__n { color: inherit; opacity: .7; }

body.mm-shell .mm-listing .products, body.mm-shell .mm-listing .wd-products { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: var(--mm-tile-gap) !important; row-gap: var(--mm-row-gap) !important; margin: 0 !important; padding: 0 !important; --wd-gap-lg: 0; --wd-gap-sm: 0; }
body.mm-shell .mm-listing .products > .mm-card { width: auto !important; max-width: none !important; padding: 0 !important; margin: 0 !important; }
@media (max-width: 1023px) {
	/* images edge to edge; the text lines up with the 16px page margin */
	body.mm-shell .mm-listing .products > .mm-card:nth-child(odd) .mm-card__body { padding-left: var(--mm-gutter); padding-right: var(--mm-s-2); }
	body.mm-shell .mm-listing .products > .mm-card:nth-child(even) .mm-card__body { padding-left: var(--mm-s-2); padding-right: var(--mm-gutter); }
}
@media (min-width: 1024px) {
	body.mm-shell .mm-listing .products, body.mm-shell .mm-listing .wd-products { grid-template-columns: repeat(4, minmax(0, 1fr)); padding: 0 var(--mm-gutter) !important; }
}
body.mm-shell .mm-listing :is(.wd-loop-footer, .woocommerce-pagination) { margin-top: var(--mm-s-7); }
body.mm-shell .mm-listing :is(.wd-load-more, .load-more-button) { border: 1px solid var(--mm-ink) !important; background: none !important; color: var(--mm-ink) !important; border-radius: var(--mm-r) !important; min-height: var(--mm-control-h); }

/* ── 10 · Product page ── */
body.mm-shell.single-product .single-breadcrumbs-wrapper .wd-products-nav,
body.mm-shell.single-product .mm-pdp__overline { display: none !important; } /* no ‹ ⊞ › and no category label above the title */
body.mm-shell.single-product .wd-breadcrumbs { font: 400 var(--mm-t-small)/1.4 var(--mm-font); color: var(--mm-ink-2); }
body.mm-shell.single-product .wd-breadcrumbs a { color: var(--mm-ink-2); }
body.mm-shell.single-product .wd-breadcrumbs .wd-last { display: none; }
body.mm-shell.single-product .product_title { margin: 0 0 var(--mm-s-2); font: 500 var(--mm-t-sec)/1.2 var(--mm-font); letter-spacing: var(--mm-tight); }
body.mm-shell.single-product .summary .price { margin: 0 0 var(--mm-s-5); font: 500 var(--mm-t-body)/1.3 var(--mm-font) !important; color: var(--mm-ink) !important; font-variant-numeric: tabular-nums; }
body.mm-shell.single-product .summary .price :is(.amount, bdi) { font: inherit !important; color: inherit !important; }
body.mm-shell.single-product .summary .price ins { color: var(--mm-accent); text-decoration: none; }
body.mm-shell.single-product .summary .price del { color: var(--mm-ink-2); }
body.mm-shell.single-product .mm-sc-btn:not(.mm-sc-btn--inline) { display: none; } /* duplicate size-chart button; "Size guide" sits on the size row */
body.mm-shell.single-product .mm-sc-btn--inline { display: inline-flex; align-items: center; min-height: 44px; margin-left: auto; padding: 0; border: 0; background: none; color: var(--mm-ink); font: 400 var(--mm-t-meta)/1 var(--mm-font); letter-spacing: 0; text-transform: none; text-decoration: underline; text-underline-offset: 3px; }
body.mm-shell.single-product .mm-sc-btn--inline svg { display: none; }
body.mm-shell.single-product .variations th.mm-has-sg { display: flex; align-items: center; }
/* variations: label row, square chips */
body.mm-shell.single-product .variations_form .variations { margin: 0 0 var(--mm-s-5); }
body.mm-shell.single-product .variations, body.mm-shell.single-product .variations :is(tbody, tr) { display: block; width: 100%; }
body.mm-shell.single-product .variations :is(th, td) { display: block; width: 100%; padding: 0; text-align: left; }
body.mm-shell.single-product .variations th { margin: 0 0 var(--mm-s-3); }
body.mm-shell.single-product .variations :is(th, .label, label) { font: 500 var(--mm-t-label)/1.2 var(--mm-font) !important; letter-spacing: var(--mm-track); text-transform: uppercase; color: var(--mm-ink); }
body.mm-shell.single-product .variations tr, body.mm-shell.single-product .variations .wd-swatches-product { margin-bottom: var(--mm-s-5); }
body.mm-shell.single-product .wd-swatch, body.mm-shell.single-product .mm-chip:not(:is(.is-selected, [aria-pressed="true"])), body.mm-shell.single-product .variations .wd-swatch.wd-text { min-width: 48px; min-height: 48px; border-radius: var(--mm-r) !important; border: 1px solid var(--mm-hair) !important; box-shadow: none !important; background: var(--mm-paper); color: var(--mm-ink); font: 500 var(--mm-t-meta)/1 var(--mm-font); }
body.mm-shell.single-product .wd-swatch.wd-active, body.mm-shell.single-product .wd-swatch:has(input:checked), body.mm-shell.single-product :is(.mm-chip.is-selected, .mm-chip[aria-pressed="true"]) { border-color: var(--mm-ink) !important; background: var(--mm-ink) !important; color: var(--mm-paper) !important; }
body.mm-shell.single-product .wd-swatch.wd-active .wd-swatch-text { color: var(--mm-paper); }
body.mm-shell.single-product .mm-chip { min-width: 48px; min-height: 48px; padding: 0 var(--mm-s-3); border-radius: var(--mm-r) !important; font: 500 var(--mm-t-meta)/1 var(--mm-font); transition: background-color var(--mm-fade) var(--mm-ease), color var(--mm-fade) var(--mm-ease); }
body.mm-shell.single-product .mm-chips__list { gap: var(--mm-s-2); }
body.mm-shell.single-product .reset_variations { display: none !important; }
body.mm-shell.single-product :is(.mm-sizeguide, .mm-pdp__sizeguide, .mm-sc-link) { font: 400 var(--mm-t-meta)/1 var(--mm-font); color: var(--mm-ink); text-decoration: underline; text-underline-offset: 3px; }
body.mm-shell.single-product .single_add_to_cart_button { width: 100%; }
body.mm-shell.single-product .woocommerce-variation-add-to-cart { display: flex; gap: var(--mm-s-2); }
body.mm-shell.single-product .quantity { display: none !important; }
/* delivery line: one quiet row */
body.mm-shell.single-product :is(.mm-pdp__delivery, .mm-pdp-delivery, .mm-pdp-facts) { margin: var(--mm-s-5) 0 0; padding: var(--mm-s-4) 0; border: 0; border-top: 1px solid var(--mm-hair); border-bottom: 1px solid var(--mm-hair); border-radius: 0; background: none; font: 400 var(--mm-t-meta)/1.5 var(--mm-font); color: var(--mm-ink); }
body.mm-shell.single-product .mm-pdp-facts__row { font-size: var(--mm-t-meta); }
body.mm-shell.single-product .mm-pdp-facts__row--origin { font-size: var(--mm-t-small); color: var(--mm-ink-2); }
body.mm-shell.single-product .mm-pdp-facts__icon { color: var(--mm-ink); }
body.mm-shell.single-product .summary .wd-wishlist-btn { margin: var(--mm-s-4) 0 0; }
body.mm-shell.single-product .wd-wishlist-btn a { font: 500 var(--mm-t-label)/1 var(--mm-font); letter-spacing: var(--mm-track); text-transform: uppercase; color: var(--mm-ink); }
/* accordions */
body.mm-shell.single-product :is(.wd-accordion-title, .wd-nav-tabs > li > a, .tabs > li > a) { font: 500 var(--mm-t-label)/1.2 var(--mm-font) !important; letter-spacing: var(--mm-track) !important; text-transform: uppercase; color: var(--mm-ink) !important; }
body.mm-shell.single-product .wd-accordion-item { border-top: 1px solid var(--mm-hair); }
@media (min-width: 1024px) { body.mm-shell.single-product :is(.wd-nav-tabs > li > a, .tabs > li > a) .nav-link-text, body.mm-shell.single-product :is(.wd-nav-tabs > li > a, .tabs > li > a) { font-size: var(--mm-t-meta) !important; } }
body.mm-shell.single-product :is(.woocommerce-Tabs-panel, .wd-accordion-content) { font: 400 var(--mm-t-body)/1.6 var(--mm-font); color: var(--mm-ink); }
body.mm-shell.single-product :is(.woocommerce-Tabs-panel, .wd-accordion-content) :is(h2, h3, h4) { font: 500 var(--mm-t-body)/1.4 var(--mm-font); letter-spacing: 0; margin: var(--mm-s-5) 0 var(--mm-s-2); }
body.mm-shell.single-product :is(.related, .upsells, .mm-ctl) > h2, body.mm-shell.single-product :is(.related-products, .upsells-products) .title { font: 500 var(--mm-t-sec)/1.15 var(--mm-font) !important; letter-spacing: var(--mm-tight); text-transform: none; }
body.mm-shell.single-product .product-tabs-wrapper { border-top: 0; background: none; }

@media (max-width: 1023px) {
	/* one column: gallery full width (no thumbnails, thin progress line), then name, price, colour, size, bag, delivery, accordions */
	body.mm-shell.single-product .single-product-page > .container { padding: 0; }
	body.mm-shell.single-product .product-image-summary-inner { --wd-gap-sm: 0px; row-gap: 0; }
	body.mm-shell.single-product .product-images { padding: 0; }
	body.mm-shell.single-product .wd-gallery-thumb { display: none !important; }
	body.mm-shell.single-product .wd-gallery-images { overflow: hidden; }
	body.mm-shell.single-product .wd-gallery-images :is(.wd-nav-arrows, .product-additional-galleries) { display: none !important; }
	body.mm-shell.single-product .woocommerce-product-gallery img { width: 100%; aspect-ratio: 1; object-fit: cover; }
	body.mm-shell.single-product .summary { padding: var(--mm-s-5) var(--mm-gutter) 0; }
	body.mm-shell.single-product .single-breadcrumbs-wrapper { display: none; }
}
.mm-gprog { position: relative; height: 2px; margin: 0; background: var(--mm-hair); overflow: hidden; }
.mm-gprog > span { position: absolute; top: 0; bottom: 0; left: 0; width: var(--mm-gprog-w, 20%); transform: translateX(var(--mm-gprog-x, 0%)); background: var(--mm-ink); transition: transform var(--mm-fade) var(--mm-ease); }
@media (min-width: 1024px) {
	.mm-gprog { display: none; }
	/* gallery ~60% left, details ~40% right and sticky, 48px apart */
	body.mm-shell.single-product .single-product-page > .container { max-width: var(--mm-container); padding: var(--mm-s-6) var(--mm-gutter) 0; }
	body.mm-shell.single-product .product-image-summary-inner { display: grid !important; grid-template-columns: minmax(0, 3fr) minmax(0, 2fr); column-gap: var(--mm-s-7); align-items: start; }
	body.mm-shell.single-product .product-image-summary-inner > .wd-grid-col { width: auto !important; max-width: none !important; grid-column: auto !important; }
	body.mm-shell.single-product .summary { position: sticky; top: calc(var(--mm-header-h) + var(--mm-s-5)); }
	body.mm-shell.single-product .product-tabs-wrapper .container, body.mm-shell.single-product :is(.related, .upsells, .mm-ctl) { max-width: var(--mm-container); padding-left: var(--mm-gutter); padding-right: var(--mm-gutter); }
	body.mm-shell.single-product .woocommerce-Tabs-panel { max-width: 760px; margin-left: auto; margin-right: auto; }
	body.mm-shell.single-product .mm-rail__track { padding-inline: 0 !important; scroll-padding: 0; } /* the section already sits on the 40px margin */
}

/* sticky "Add to bag": full width on phones */
body.mm-shell .mm-sticky-atc { background: var(--mm-paper); border-top: 1px solid var(--mm-hair); box-shadow: none; padding: var(--mm-s-2) var(--mm-gutter) calc(var(--mm-s-2) + env(safe-area-inset-bottom, 0px)); transform: none; opacity: 0; visibility: hidden; transition: opacity var(--mm-fade) var(--mm-ease), visibility 0s var(--mm-fade); }
body.mm-shell .mm-sticky-atc.is-visible { opacity: 1; visibility: visible; transition: opacity var(--mm-fade) var(--mm-ease), visibility 0s; } /* only after the main button has scrolled away */
body.mm-shell .mm-sticky-atc__btn { min-height: var(--mm-control-h); border-radius: var(--mm-r); background: var(--mm-ink); color: var(--mm-paper) !important; font: 500 var(--mm-t-meta)/1 var(--mm-font); letter-spacing: var(--mm-track); text-transform: uppercase; }
body.mm-shell .mm-sticky-atc__btn:hover { background: var(--mm-ink); opacity: .86; }
@media (max-width: 1023px) {
	body.mm-shell .mm-sticky-atc__info { display: none; }
	body.mm-shell .mm-sticky-atc__btn { flex: 1 1 auto; width: 100%; }
}

/* Size & fit tab */
.mm-fit__table { width: 100%; border-collapse: collapse; font: 400 var(--mm-t-meta)/1.4 var(--mm-font); font-variant-numeric: tabular-nums; }
.mm-fit__table :is(th, td) { padding: var(--mm-s-2) var(--mm-s-2) var(--mm-s-2) 0; border-bottom: 1px solid var(--mm-hair); text-align: left; }
.mm-fit__table thead th { font: 500 var(--mm-t-label)/1.2 var(--mm-font); letter-spacing: var(--mm-track); text-transform: uppercase; }
.mm-fit__unit { margin: var(--mm-s-2) 0 var(--mm-s-5); font-size: var(--mm-t-small); color: var(--mm-ink-2); }

/* ── 11 · Cart and checkout ── */
body.mm-shell :is(.mm-mini__add, .mm-freq .button) { border-radius: var(--mm-r) !important; }
body.mm-shell :is(.wc-block-cart, .wc-block-checkout) { font-family: var(--mm-font); color: var(--mm-ink); }
body.mm-shell .wc-block-components-title, body.mm-shell .wc-block-components-checkout-step__title { font: 500 var(--mm-t-body)/1.3 var(--mm-font) !important; letter-spacing: 0; text-transform: none; }
body.mm-shell .wc-block-components-checkout-step { margin-bottom: var(--mm-s-6) !important; }
/* COD phone check (mm-wa-notifier, inline styles): editorial colours; stays under the sticky header when scrolled */
body.mm-shell #mwan-otp { position: relative; z-index: 0; border: 1px solid var(--mm-hair) !important; border-radius: var(--mm-r) !important; background: var(--mm-sand) !important; color: var(--mm-ink); }
body.mm-shell #mwan-otp #mwan-otp-code { min-height: 44px; border-radius: var(--mm-r); }
body.mm-shell #mwan-otp #mwan-otp-msg { color: var(--mm-ink); }
body.mm-shell .wp-block-woocommerce-checkout :is(.wc-block-components-checkout-order-summary__title-text, .wc-block-components-order-summary .wc-block-components-panel__button) { font: 500 var(--mm-t-label)/1.2 var(--mm-font) !important; letter-spacing: var(--mm-track) !important; text-transform: uppercase; }
/* labels above the field, 13px; fields 52px with a 1px hairline; 16px between fields */
body.mm-shell :is(.wc-block-components-text-input, .wc-block-components-combobox .wc-block-components-combobox-control, .wc-blocks-components-select) { margin-top: var(--mm-s-4) !important; }
body.mm-shell .wc-block-components-text-input { display: flex; flex-direction: column-reverse; }
body.mm-shell .wc-block-components-text-input label,
body.mm-shell .wc-block-components-text-input.is-active label { position: static !important; transform: none !important; margin: 0 0 var(--mm-s-1) !important; max-width: none !important; font: 500 var(--mm-t-meta)/1.3 var(--mm-font) !important; color: var(--mm-ink) !important; white-space: normal; }
body.mm-shell .wc-block-components-text-input :is(input, textarea),
body.mm-shell .wc-block-components-text-input.is-active :is(input, textarea) { height: var(--mm-control-h) !important; min-height: var(--mm-control-h); padding: 0 var(--mm-s-3) !important; border: 1px solid var(--mm-hair) !important; border-radius: var(--mm-r) !important; background: var(--mm-paper) !important; font: 400 16px/1.2 var(--mm-font) !important; color: var(--mm-ink) !important; box-shadow: none !important; }
body.mm-shell .wc-block-components-text-input :is(input, textarea):focus { border-color: var(--mm-ink) !important; }
body.mm-shell :is(.wc-blocks-components-select__container, .wc-block-components-combobox .components-form-token-field__input-container) { height: var(--mm-control-h) !important; border: 1px solid var(--mm-hair) !important; border-radius: var(--mm-r) !important; background: var(--mm-paper) !important; box-shadow: none !important; }
body.mm-shell .wc-blocks-components-select__label { font: 500 var(--mm-t-meta)/1.3 var(--mm-font) !important; color: var(--mm-ink-2) !important; }
body.mm-shell .wc-block-components-validation-error p { color: var(--mm-accent) !important; font-size: var(--mm-t-meta) !important; }
/* option cards (shipping, payment): hairline; black border + check when selected */
body.mm-shell :is(.wc-block-components-radio-control--highlight-checked, .wc-block-components-radio-control-accordion-option, .wc-block-components-radio-control__option) { border-radius: var(--mm-r) !important; }
body.mm-shell .wc-block-components-radio-control--highlight-checked { border: 0 !important; box-shadow: none !important; }
body.mm-shell .wc-block-components-radio-control--highlight-checked > :is(.wc-block-components-radio-control__option, .wc-block-components-radio-control-accordion-option) { border: 1px solid var(--mm-hair) !important; box-shadow: none !important; margin-bottom: var(--mm-s-2); }
body.mm-shell .wc-block-components-radio-control--highlight-checked > :is(.wc-block-components-radio-control__option--checked-option-highlighted, .wc-block-components-radio-control-accordion-option--checked-option-highlighted) { border-color: var(--mm-ink) !important; box-shadow: inset 0 0 0 1px var(--mm-ink) !important; }
body.mm-shell .wc-block-components-radio-control--highlight-checked::after { display: none !important; }
body.mm-shell .wc-block-components-radio-control__input { border-color: var(--mm-ink) !important; }
body.mm-shell .wc-block-components-radio-control__input:checked { background: var(--mm-ink) !important; border-color: var(--mm-ink) !important; }
body.mm-shell .wc-block-components-radio-control__input:checked::before { background: var(--mm-paper) !important; }
body.mm-shell .wc-block-components-checkbox__input[type="checkbox"] { border-radius: var(--mm-r) !important; border-color: var(--mm-ink) !important; }
body.mm-shell .wc-block-components-checkbox__input[type="checkbox"]:checked { background: var(--mm-ink) !important; }
body.mm-shell .wc-block-components-checkbox__mark { fill: var(--mm-paper) !important; }
body.mm-shell :is(.wc-block-cart__submit-button, .wc-block-components-checkout-place-order-button) { height: var(--mm-control-h); width: 100%; }
body.mm-shell .wc-block-components-totals-item__label, body.mm-shell .wc-block-components-totals-item__value { font-size: var(--mm-t-body); }
body.mm-shell .wc-block-components-totals-footer-item :is(.wc-block-components-totals-item__label, .wc-block-components-totals-item__value) { font-weight: 500; }
body.mm-shell .wc-block-components-product-name { font: 400 var(--mm-t-name)/1.4 var(--mm-font) !important; color: var(--mm-ink) !important; }
body.mm-shell .wc-block-components-sidebar-layout .wc-block-components-main, body.mm-shell .wc-block-components-sidebar { box-shadow: none; }
body.mm-shell :is(.wc-block-components-order-summary, .wc-block-checkout__sidebar .wp-block-woocommerce-checkout-order-summary-block) { border: 1px solid var(--mm-hair) !important; border-radius: var(--mm-r) !important; }

/* ── 12 · Account, orders, /track/: centred, max 880 ── */
body.mm-shell :is(.woocommerce-account .woocommerce, .mm-track) { max-width: 880px; margin-left: auto; margin-right: auto; }
body.mm-shell :is(.mm-order-card, .mm-track__card) { border: 1px solid var(--mm-hair) !important; border-radius: var(--mm-r) !important; box-shadow: none !important; background: var(--mm-paper) !important; }
body.mm-shell :is(.mm-order-card__id, .mm-c-order__no) { white-space: nowrap; letter-spacing: 0; }
body.mm-shell .mm-order-card__meta, body.mm-shell .mm-order-card :is(.mm-order-card__top, header) { flex-wrap: wrap; row-gap: var(--mm-s-1); }
/* status: neutral tag; the accent only when something needs attention */
body.mm-shell :is(.mm-pill, .mm-c-status) { min-height: 24px; padding: 0 var(--mm-s-2); border: 1px solid var(--mm-hair); border-radius: var(--mm-r) !important; background: var(--mm-paper) !important; color: var(--mm-ink) !important; font: 500 var(--mm-t-label)/1 var(--mm-font) !important; letter-spacing: var(--mm-track); text-transform: uppercase; }
body.mm-shell :is(.mm-pill--done, .mm-c-status--ok) { background: var(--mm-ink) !important; border-color: var(--mm-ink); color: var(--mm-paper) !important; }
body.mm-shell :is(.mm-pill--attention, .mm-c-status--warn) { border-color: var(--mm-accent); color: var(--mm-accent) !important; }
body.mm-shell :is(.mm-pill--cancelled) { color: var(--mm-ink-2) !important; }
body.mm-shell .mm-c-status::before { display: none; }
body.mm-shell .mm-order-card__bar, body.mm-shell .mm-order-card__bar span, body.mm-shell .mm-c-progress { border-radius: 0; height: 2px; }
body.mm-shell .mm-order-card__bar span { background: var(--mm-ink); }
/* actions: square-ish, ink */
body.mm-shell :is(.mm-act, .mm-auth__ghost, .mm-c-btn) { min-height: 44px; border-radius: var(--mm-r) !important; font: 500 var(--mm-t-meta)/1 var(--mm-font); letter-spacing: 0; }
body.mm-shell :is(.mm-act--primary, .mm-c-btn--primary) { background: var(--mm-ink); border-color: var(--mm-ink); color: var(--mm-paper); }
body.mm-shell .mm-c-btn--primary, body.mm-shell .mm-auth .mm-auth__submit.button { min-height: var(--mm-control-h); border-radius: var(--mm-r) !important; text-transform: uppercase; letter-spacing: var(--mm-track); font-size: var(--mm-t-meta); }
body.mm-shell :is(.mm-auth .mm-field input, .mm-c-input) { height: var(--mm-control-h); border: 1px solid var(--mm-hair); border-radius: var(--mm-r); }
body.mm-shell .mm-auth .mm-field label, body.mm-shell .mm-c-field label { font: 500 var(--mm-t-meta)/1.3 var(--mm-font); color: var(--mm-ink); }
body.mm-shell .woocommerce-MyAccount-navigation a { border-radius: var(--mm-pill) !important; }
body.mm-shell :is(.mm-c-h1, .mm-auth__title) { font: 500 var(--mm-t-page)/1.05 var(--mm-font); letter-spacing: -.03em; }
body.mm-shell .mm-c-h2 { font: 500 var(--mm-t-sec)/1.15 var(--mm-font); letter-spacing: var(--mm-tight); }
body.mm-shell .mm-btn-outline { min-height: var(--mm-control-h); border-radius: var(--mm-r); }
body.mm-shell .mm-btn-outline--primary { background: var(--mm-ink); border-color: var(--mm-ink); color: var(--mm-paper); }
body.mm-shell .mm-btn-outline--danger { color: var(--mm-accent); border-color: var(--mm-accent); }
body.mm-shell .mm-btn-outline--danger:hover { background: var(--mm-accent); border-color: var(--mm-accent); color: var(--mm-paper); }
body.mm-shell .mm-c-timeline__dot { background: var(--mm-hair); }
body.mm-shell .mm-c-timeline :is(.is-done, .is-current) .mm-c-timeline__dot { background: var(--mm-ink); border-color: var(--mm-ink); box-shadow: none; }

/* ── 13 · Policy and FAQ: editorial on white, max 680 text, no WoodMart title band ── */
body.mm-shell :is(.mm-policy-template, .mm-faq-template) :is(.wd-page-title, .wd-sidebar-opener, .wd-show-sidebar-btn) { display: none !important; }
body.mm-shell :is(.mm-policy-page, .mm-faq, .mm-policy-page__inner, .mm-faq__inner, .mm-policy-page__hero, .mm-faq__hero),
body.mm-shell:is(.mm-policy-template, .mm-faq-template) :is(.main-page-wrapper, #main-content) { background: var(--mm-paper) !important; }
body.mm-shell :is(.mm-policy-page__inner, .mm-faq__inner) { max-width: 680px; margin-left: auto; margin-right: auto; padding-left: var(--mm-gutter); padding-right: var(--mm-gutter); }
body.mm-shell :is(.mm-policy-page__title, .mm-faq__title) { font: 500 var(--mm-t-page)/1.05 var(--mm-font) !important; letter-spacing: -.03em; color: var(--mm-ink); }
body.mm-shell :is(.mm-policy-page__subtitle, .mm-faq__subtitle) { font: 400 var(--mm-t-body)/1.5 var(--mm-font); color: var(--mm-ink-2); }
body.mm-shell .mm-policy-page :is(h2, h3) { font: 500 var(--mm-t-label)/1.2 var(--mm-font) !important; letter-spacing: var(--mm-track) !important; text-transform: uppercase; color: var(--mm-ink); }
body.mm-shell :is(.mm-policy-page, .mm-faq) :is(p, li) { font-size: var(--mm-t-body); line-height: 1.6; color: var(--mm-ink); }
body.mm-shell .mm-faq-tabs button, body.mm-shell .mm-faq-tabs [role="tab"] { border-radius: var(--mm-pill); }
body.mm-shell :is(.mm-policy-page, .mm-faq) :is(.mm-policy-page__cta, .mm-faq__cta, a.button, .mm-wa-btn) { border-radius: var(--mm-r) !important; }

/* ── 14 · Footer ── */
body.mm-shell .mm-ft { background: var(--mm-paper); border-top: 1px solid var(--mm-hair); color: var(--mm-ink); }
body.mm-shell .mm-ft :is(h2, h3, .mm-ft__h) { font: 500 var(--mm-t-label)/1.2 var(--mm-font); letter-spacing: var(--mm-track); text-transform: uppercase; }
body.mm-shell .mm-ft a { color: var(--mm-ink); }
body.mm-shell .mm-ft li { font-size: max(var(--mm-t-small), 1em); }
body.mm-shell .mm-ft :is(.mm-ft__legal, .mm-ft__copy, small) { font-size: var(--mm-t-legal); color: var(--mm-ink-2); }

@media (prefers-reduced-motion: reduce) {
	body.mm-shell *, body.mm-shell *::before, body.mm-shell *::after { transition-duration: 0s !important; animation-duration: 0s !important; }
}
