/*
 * Melika Momeni Academy — design layer
 * Loaded only on pages that use a "ملیکا" page template.
 * Everything is scoped under .mlk so it cannot leak into Woodmart pages.
 */

/* ---------- Fonts (Vazirmatn, SIL Open Font License) ---------- */
@font-face { font-family: "Vazirmatn"; font-style: normal; font-weight: 300; font-display: swap; src: url("../fonts/vazirmatn-arabic-300-normal.woff2") format("woff2"); unicode-range: U+0600-06FF, U+200C-200E, U+2010-2011, U+204F, U+2E41, U+FB50-FDFF, U+FE80-FEFC; }
@font-face { font-family: "Vazirmatn"; font-style: normal; font-weight: 400; font-display: swap; src: url("../fonts/vazirmatn-arabic-400-normal.woff2") format("woff2"); unicode-range: U+0600-06FF, U+200C-200E, U+2010-2011, U+204F, U+2E41, U+FB50-FDFF, U+FE80-FEFC; }
@font-face { font-family: "Vazirmatn"; font-style: normal; font-weight: 500; font-display: swap; src: url("../fonts/vazirmatn-arabic-500-normal.woff2") format("woff2"); unicode-range: U+0600-06FF, U+200C-200E, U+2010-2011, U+204F, U+2E41, U+FB50-FDFF, U+FE80-FEFC; }
@font-face { font-family: "Vazirmatn"; font-style: normal; font-weight: 600; font-display: swap; src: url("../fonts/vazirmatn-arabic-600-normal.woff2") format("woff2"); unicode-range: U+0600-06FF, U+200C-200E, U+2010-2011, U+204F, U+2E41, U+FB50-FDFF, U+FE80-FEFC; }
@font-face { font-family: "Vazirmatn"; font-style: normal; font-weight: 700; font-display: swap; src: url("../fonts/vazirmatn-arabic-700-normal.woff2") format("woff2"); unicode-range: U+0600-06FF, U+200C-200E, U+2010-2011, U+204F, U+2E41, U+FB50-FDFF, U+FE80-FEFC; }
@font-face { font-family: "Vazirmatn"; font-style: normal; font-weight: 400; font-display: swap; src: url("../fonts/vazirmatn-latin-400-normal.woff2") format("woff2"); unicode-range: U+0000-00FF, U+2000-206F; }
@font-face { font-family: "Vazirmatn"; font-style: normal; font-weight: 600; font-display: swap; src: url("../fonts/vazirmatn-latin-600-normal.woff2") format("woff2"); unicode-range: U+0000-00FF, U+2000-206F; }

/* ---------- Tokens ---------- */
.mlk {
	--mlk-bg: #f7f8f4;
	--mlk-surface: #ffffff;
	--mlk-ink: #12261c;
	--mlk-muted: #5c6b63;
	--mlk-deep: #0c2419;
	--mlk-jade: #1f5a40;
	--mlk-jade-tint: #e1eee2;
	--mlk-mist: #eef2ea;
	--mlk-celadon: #e2ede1;
	--mlk-gold: #d4a441;
	--mlk-gold-soft: #ecc875;
	--mlk-gold-ink: #7d5c12;
	--mlk-sand: #f3ead2;
	--mlk-on-dark: #c9d6cd;
	--mlk-line: rgba(18, 38, 28, 0.08);
	--mlk-radius: 22px;
	--mlk-shadow: 0 1px 2px rgba(18, 38, 28, 0.03), 0 14px 30px -22px rgba(18, 38, 28, 0.25);
	--mlk-shadow-lift: 0 26px 44px -30px rgba(12, 36, 25, 0.4);
	--mlk-gutter: 24px;
	--mlk-max: 1392px;
}

/* ---------- Page shell ---------- */
html { scroll-behavior: smooth; }
body.mlk-page { margin: 0; background: #f7f8f4; }

.mlk {
	background: var(--mlk-bg);
	color: var(--mlk-ink);
	font-family: "Vazirmatn", Tahoma, sans-serif;
	font-size: 15px;
	line-height: 1.9;
	padding: 20px var(--mlk-gutter) 0;
	overflow-x: clip;
	-webkit-font-smoothing: antialiased;
}
/* Resets use :where() so they carry no specificity and every component class wins over them. */
.mlk *, .mlk *::before, .mlk *::after { box-sizing: border-box; }
.mlk :where(h1, h2, h3, p, ul, figure, blockquote){ margin: 0; padding: 0; }
.mlk ul{ list-style: none; }
.mlk :where(h1, h2, h3){ font-family: inherit; color: inherit; font-weight: 700; line-height: 1.5; text-transform: none; }
.mlk a{ color: inherit; text-decoration: none; }
/* Woodmart's link hover/focus colours stay out, without beating the colours of our own buttons. */
.mlk a:where(:hover, :focus, :active) { color: inherit; }
.mlk :where(a, button, summary, label) { -webkit-tap-highlight-color: transparent; }
.mlk :where(h4, h5, h6, label, legend) { font-family: inherit; color: inherit; margin: 0; }
.mlk :where(button, input, select, textarea) { font-family: inherit; letter-spacing: normal; text-transform: none; box-shadow: none; }
.mlk :where(img, svg){ display: block; max-width: 100%; }
.mlk a:focus-visible, .mlk summary:focus-visible { outline: 2px solid var(--mlk-gold); outline-offset: 3px; border-radius: 8px; }
.mlk .mlk-icon{ flex: none; }

.mlk .mlk-skip{ position: absolute; inset-inline-start: 12px; top: -60px; z-index: 100000; background: #0c2419; color: #fff; padding: 8px 16px; border-radius: 10px; font-family: "Vazirmatn", Tahoma, sans-serif; font-size: 14px; text-decoration: none; }
.mlk .mlk-skip:focus{ top: 12px; }

.mlk .mlk-wrap{ max-width: var(--mlk-max); margin-inline: auto; }
.mlk .mlk-section{ margin-top: 96px; }

/* ---------- Shared pieces ---------- */
.mlk .mlk-btn{ display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 44px; padding: 0 20px; border-radius: 12px; border: 1px solid transparent; font-size: 14px; font-weight: 600; line-height: 1.4; white-space: nowrap; transition: transform 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease; }
.mlk .mlk-btn:hover{ transform: translateY(-1px); }
.mlk .mlk-btn--lg{ min-height: 54px; padding: 0 28px; border-radius: 14px; font-size: 15px; }
.mlk .mlk-btn--gold{ background: linear-gradient(180deg, #e2b759, #cf9f3a); color: var(--mlk-ink); font-weight: 700; box-shadow: 0 14px 30px -14px rgba(212, 164, 65, 0.9); }
.mlk .mlk-btn--jade{ background: var(--mlk-jade); color: #fff; box-shadow: 0 10px 24px -12px rgba(31, 90, 64, 0.7); }
.mlk .mlk-btn--dark{ background: var(--mlk-ink); color: #fff; box-shadow: 0 16px 30px -16px rgba(18, 38, 28, 0.8); }
.mlk .mlk-btn--dark .mlk-icon{ color: var(--mlk-gold); }
.mlk .mlk-btn--outline-light{ border-color: rgba(255, 255, 255, 0.28); color: #fff; }
.mlk .mlk-btn--glass{ background: rgba(255, 255, 255, 0.1); border-color: rgba(255, 255, 255, 0.2); color: #fff; }
.mlk .mlk-btn--ghost{ background: var(--mlk-mist); border-color: rgba(18, 38, 28, 0.06); color: var(--mlk-ink); }
.mlk .mlk-btn--ghost:hover{ background: var(--mlk-celadon); }
.mlk .mlk-btn.is-loading{ position: relative; color: transparent !important; pointer-events: none; }
.mlk .mlk-btn.is-loading::after{ content: ""; position: absolute; left: 50%; top: 50%; width: 20px; height: 20px; margin: -10px 0 0 -10px; border: 2px solid rgba(18, 38, 28, 0.25); border-top-color: var(--mlk-ink); border-radius: 50%; animation: mlk-spin 0.7s linear infinite; }
@keyframes mlk-spin { to { transform: rotate(360deg); } }
.mlk button{ font: inherit; cursor: pointer; }
.mlk .mlk-iconbtn{ border: 0; background: transparent; color: inherit; padding: 0; }

.mlk .mlk-iconbtn{ position: relative; display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; border-radius: 12px; cursor: pointer; }
.mlk .mlk-iconbtn__badge{ position: absolute; top: 4px; left: 4px; min-width: 16px; height: 16px; border-radius: 999px; background: #b8892b; color: #fff; font-size: 11px; font-weight: 600; line-height: 16px; text-align: center; }

.mlk .mlk-pill{ display: inline-flex; align-items: center; gap: 8px; align-self: flex-start; padding: 4px 14px 4px 12px; border-radius: 999px; font-size: 13px; font-weight: 500; line-height: 1.9; }
.mlk .mlk-pill--gold{ background: rgba(212, 164, 65, 0.14); border: 1px solid rgba(212, 164, 65, 0.35); color: var(--mlk-gold-soft); }
.mlk .mlk-pill--gold::before{ content: ""; width: 6px; height: 6px; border-radius: 50%; background: var(--mlk-gold); }
.mlk .mlk-pill--dark{ background: var(--mlk-ink); color: var(--mlk-gold-soft); font-size: 12px; font-weight: 600; padding: 2px 14px; }

.mlk .mlk-eyebrow{ font-size: 13px; font-weight: 600; color: var(--mlk-gold-ink); }
.mlk .mlk-link{ display: inline-flex; align-items: center; gap: 8px; min-height: 44px; font-size: 14px; font-weight: 600; color: var(--mlk-jade); }

.mlk .mlk-head{ display: flex; justify-content: space-between; align-items: flex-end; gap: 24px; flex-wrap: wrap; margin-bottom: 28px; }
.mlk .mlk-head h2{ font-size: 34px; line-height: 1.4; }
.mlk .mlk-head p{ margin-top: 4px; color: var(--mlk-muted); }
.mlk .mlk-head--center{ justify-content: center; text-align: center; }

.mlk .mlk-octs{ position: absolute; width: 300px; height: 300px; pointer-events: none; }

/* ---------- Header (sticky) ---------- */
.mlk .mlk-header{ position: sticky; top: 12px; z-index: 60; max-width: 1392px; margin: 0 auto 24px; }
body.admin-bar .mlk-header { top: 44px; }
.mlk .mlk-header--overlay{ margin-top: 20px; margin-bottom: -84px; padding-inline: 24px; }

.mlk .mlk-nav{ position: relative; display: grid; grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); align-items: center; gap: 20px; height: 64px; padding: 0 12px 0 10px; border-radius: 20px; background: rgba(255, 255, 255, 0.82); border: 1px solid var(--mlk-line); box-shadow: 0 14px 30px -24px rgba(18, 38, 28, 0.35); color: var(--mlk-ink); transition: height 0.3s ease, background-color 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease, color 0.3s ease; }
.mlk .mlk-header.is-stuck .mlk-nav{ height: 58px; background: rgba(255, 255, 255, 0.86); -webkit-backdrop-filter: saturate(1.6) blur(16px); backdrop-filter: saturate(1.6) blur(16px); box-shadow: 0 20px 40px -26px rgba(12, 36, 25, 0.5); }
.mlk .mlk-header.is-over-dark .mlk-nav{ background: rgba(255, 255, 255, 0.07); border-color: rgba(255, 255, 255, 0.14); box-shadow: none; color: #fff; }
.mlk .mlk-header.is-over-dark.is-stuck .mlk-nav{ background: rgba(12, 36, 25, 0.66); border-color: rgba(255, 255, 255, 0.12); -webkit-backdrop-filter: saturate(1.4) blur(18px); backdrop-filter: saturate(1.4) blur(18px); box-shadow: 0 20px 40px -24px rgba(0, 0, 0, 0.6); }

.mlk .mlk-nav__burger{ display: none; }
.mlk .mlk-nav__links{ display: flex; align-items: center; gap: 30px; padding-inline-start: 18px; font-size: 14px; font-weight: 500; }
.mlk .mlk-nav__links a{ position: relative; display: inline-flex; align-items: center; gap: 4px; min-height: 44px; color: var(--mlk-muted); transition: color 0.2s ease; }
.mlk .mlk-nav__links a:hover, .mlk .mlk-nav__links a.is-active{ color: var(--mlk-ink); }
.mlk .mlk-nav__links a.is-active{ font-weight: 600; }
.mlk .mlk-nav__links a.is-active::after{ content: ""; position: absolute; left: 50%; bottom: 2px; width: 7px; height: 7px; margin-left: -3.5px; transform: rotate(45deg); background: var(--mlk-gold); }
.mlk .mlk-nav__links .has-sub > a.is-active::after{ left: calc(50% - 8px); }
.mlk .mlk-header.is-over-dark .mlk-nav__links a{ color: rgba(255, 255, 255, 0.74); }
.mlk .mlk-header.is-over-dark .mlk-nav__links a:hover, .mlk .mlk-header.is-over-dark .mlk-nav__links a.is-active{ color: #fff; }
.mlk .mlk-nav__links .mlk-icon{ opacity: 0.6; transition: transform 0.2s ease; }
.mlk .mlk-nav__item{ position: relative; }
.mlk .mlk-nav__item:hover > a .mlk-icon, .mlk .mlk-nav__item:focus-within > a .mlk-icon{ transform: rotate(180deg); }

.mlk .mlk-sub{ position: absolute; top: calc(100% + 16px); right: -24px; z-index: 5; width: 500px; padding: 18px; border-radius: 22px; background: #fff; color: var(--mlk-ink); border: 1px solid var(--mlk-line); box-shadow: 0 30px 60px -28px rgba(12, 36, 25, 0.45); opacity: 0; visibility: hidden; transform: translateY(8px); transition: opacity 0.2s ease, transform 0.2s ease, visibility 0.2s; }
.mlk .mlk-sub::before{ content: ""; position: absolute; inset: -18px 0 auto; height: 18px; }
.mlk .mlk-nav__item:hover .mlk-sub, .mlk .mlk-nav__item:focus-within .mlk-sub{ opacity: 1; visibility: visible; transform: none; }
.mlk .mlk-sub__title{ margin-bottom: 10px; padding: 0 6px; font-size: 12px; font-weight: 600; color: var(--mlk-gold-ink); }
.mlk .mlk-sub__grid{ display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 4px; }
.mlk .mlk-nav .mlk-sub a, .mlk .mlk-header.is-over-dark .mlk-sub a{ color: var(--mlk-ink); }
.mlk .mlk-sub__item{ display: flex !important; align-items: center; gap: 12px; padding: 8px !important; border-radius: 14px; transition: background-color 0.2s ease; }
.mlk .mlk-sub__item:hover{ background: var(--mlk-mist); }
.mlk .mlk-sub__item > span:last-child{ display: flex; flex-direction: column; line-height: 1.6; }
.mlk .mlk-sub__item strong{ font-size: 14px; font-weight: 600; }
.mlk .mlk-sub__item small{ font-size: 12px; color: var(--mlk-muted); }
.mlk .mlk-sub__icon{ flex: none; display: inline-flex; align-items: center; justify-content: center; width: 42px; height: 42px; border-radius: 12px; background: var(--mlk-jade-tint); color: var(--mlk-jade); }
.mlk .mlk-sub__icon .mlk-icon{ opacity: 1 !important; transform: none !important; }
.mlk .mlk-sub__all{ display: flex !important; justify-content: space-between; margin-top: 10px; padding: 12px 14px !important; border-radius: 14px; background: var(--mlk-ink); color: #fff !important; font-weight: 600; }
.mlk .mlk-sub__all::after{ display: none; }

.mlk .mlk-nav__tools{ display: flex; align-items: center; justify-content: flex-end; gap: 4px; }
.mlk .mlk-nav__tools .mlk-iconbtn{ transition: background-color 0.2s ease; }
.mlk .mlk-nav__tools .mlk-iconbtn:hover{ background: rgba(18, 38, 28, 0.06); }
.mlk .mlk-header.is-over-dark .mlk-nav__tools .mlk-iconbtn:hover{ background: rgba(255, 255, 255, 0.1); }
.mlk .mlk-nav__account{ margin-inline-start: 6px; }
.mlk .mlk-header:not(.is-over-dark) .mlk-nav__account{ background: var(--mlk-jade); border-color: var(--mlk-jade); }

.mlk .mlk-cartcount{ position: absolute; top: 3px; left: 3px; min-width: 18px; height: 18px; padding: 0 5px; border-radius: 999px; background: var(--mlk-gold); color: var(--mlk-ink); font-size: 11px; font-weight: 700; line-height: 18px; text-align: center; box-shadow: 0 0 0 2px #fff; }
.mlk .mlk-header.is-over-dark .mlk-cartcount{ box-shadow: 0 0 0 2px var(--mlk-deep); }
.mlk .mlk-cartcount[data-count="0"]{ display: none; }
.mlk .mlk-cartcount.is-bump{ animation: mlk-bump 0.5s ease; }
@keyframes mlk-bump { 0% { transform: scale(1); } 40% { transform: scale(1.35); } 100% { transform: scale(1); } }

.mlk .mlk-brand{ display: grid; grid-template-columns: 92px auto 92px; align-items: center; gap: 12px; font-size: 15px; font-weight: 600; white-space: nowrap; }
.mlk .mlk-brand__word--start{ text-align: left; }
.mlk .mlk-brand__medal{ display: inline-flex; align-items: center; justify-content: center; width: 84px; height: 84px; margin: -10px 0; border-radius: 50%; background: #fff; border: 1px solid var(--mlk-gold); box-shadow: 0 0 0 5px rgba(212, 164, 65, 0.14), 0 16px 26px -16px rgba(12, 36, 25, 0.6); transition: width 0.3s ease, height 0.3s ease, margin 0.3s ease, background-color 0.3s ease; }
.mlk .mlk-brand__medal img{ width: 62px; height: 62px; object-fit: contain; transition: width 0.3s ease, height 0.3s ease; }
.mlk .mlk-header.is-over-dark .mlk-brand__medal{ background: var(--mlk-deep); }
.mlk .mlk-header.is-stuck .mlk-brand__medal{ width: 62px; height: 62px; margin: -2px 0; }
.mlk .mlk-header.is-stuck .mlk-brand__medal img{ width: 46px; height: 46px; }

/* ---------- Panels: backdrop, search, drawers ---------- */
html.mlk-lock { overflow: hidden; }
.mlk .mlk-sr{ position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
.mlk .mlk-backdrop{ position: fixed; inset: 0; z-index: 440; background: rgba(8, 22, 15, 0.46); -webkit-backdrop-filter: blur(3px); backdrop-filter: blur(3px); opacity: 0; transition: opacity 0.25s ease; }
.mlk .mlk-backdrop.is-open{ opacity: 1; }
.mlk .mlk-backdrop[hidden], .mlk .mlk-search[hidden], .mlk .mlk-drawer[hidden]{ display: none; }

.mlk .mlk-search{ position: fixed; inset: 0; z-index: 100; display: flex; justify-content: center; align-items: flex-start; padding: 12vh 16px 16px; opacity: 0; transition: opacity 0.2s ease; }
.mlk .mlk-search.is-open{ opacity: 1; }
.mlk .mlk-search__box{ width: min(680px, 100%); max-height: 76vh; overflow: auto; padding: 10px; border-radius: 24px; background: #fff; box-shadow: 0 40px 80px -30px rgba(0, 0, 0, 0.5); transform: translateY(-12px) scale(0.98); transition: transform 0.25s ease; }
.mlk .mlk-search.is-open .mlk-search__box{ transform: none; }
.mlk .mlk-search__form{ display: flex; align-items: center; gap: 10px; padding: 4px 10px 4px 4px; border-radius: 16px; background: var(--mlk-mist); color: var(--mlk-muted); }
.mlk .mlk-search__form > .mlk-icon{ margin-inline-start: 10px; }
.mlk .mlk-search__form input{ flex: 1; min-width: 0; height: 56px; padding: 0; border: 0; background: transparent; color: var(--mlk-ink); font: inherit; font-size: 17px; outline: none; box-shadow: none; }
.mlk .mlk-search__form input::-webkit-search-cancel-button{ display: none; }
.mlk .mlk-search__results:empty{ display: none; }
.mlk .mlk-search__list{ display: flex; flex-direction: column; padding: 8px 0 4px; }
.mlk .mlk-search__list a{ display: flex; align-items: center; gap: 14px; padding: 8px 10px; border-radius: 14px; transition: background-color 0.15s ease; }
.mlk .mlk-search__list a:hover, .mlk .mlk-search__list a:focus-visible{ background: var(--mlk-mist); }
.mlk .mlk-search__list img, .mlk .mlk-search__ph{ flex: none; width: 56px; height: 56px; border-radius: 12px; object-fit: cover; background: var(--mlk-mist); }
.mlk .mlk-search__name{ flex: 1; min-width: 0; display: flex; flex-direction: column; line-height: 1.7; }
.mlk .mlk-search__name b{ overflow: hidden; font-size: 15px; font-weight: 600; text-overflow: ellipsis; white-space: nowrap; }
.mlk .mlk-search__name small{ font-size: 12px; color: var(--mlk-muted); }
.mlk .mlk-search__price{ flex: none; font-size: 14px; font-weight: 700; color: var(--mlk-gold-ink); }
.mlk .mlk-search__price small{ font-weight: 400; color: var(--mlk-muted); }
.mlk .mlk-search__all{ display: flex; justify-content: center; align-items: center; min-height: 48px; margin-top: 4px; border-radius: 14px; background: var(--mlk-ink); color: #fff; font-size: 14px; font-weight: 600; }
.mlk .mlk-search__none{ padding: 22px 12px; text-align: center; color: var(--mlk-muted); }
.mlk .mlk-search__loading{ display: flex; justify-content: center; gap: 6px; padding: 26px; }
.mlk .mlk-search__loading span{ width: 8px; height: 8px; border-radius: 50%; background: var(--mlk-gold); animation: mlk-dot 1s infinite ease-in-out; }
.mlk .mlk-search__loading span:nth-child(2){ animation-delay: 0.15s; }
.mlk .mlk-search__loading span:nth-child(3){ animation-delay: 0.3s; }
@keyframes mlk-dot { 0%, 100% { opacity: 0.25; transform: translateY(0); } 50% { opacity: 1; transform: translateY(-4px); } }
.mlk .mlk-search__hints{ padding: 16px 8px 8px; }
.mlk .mlk-search__hints > p{ margin-bottom: 10px; font-size: 12px; font-weight: 600; color: var(--mlk-gold-ink); }
.mlk .mlk-search__hints .mlk-chip{ gap: 8px; min-height: 40px; background: var(--mlk-mist); }
.mlk .mlk-search__hints .mlk-chip .mlk-icon{ color: var(--mlk-jade); }

.mlk .mlk-drawer{ position: fixed; top: 0; bottom: 0; left: 0; z-index: 100; display: flex; flex-direction: column; width: min(420px, 92vw); background: #fff; color: var(--mlk-ink); box-shadow: 30px 0 60px -30px rgba(0, 0, 0, 0.45); transform: translateX(-104%); transition: transform 0.32s cubic-bezier(0.2, 0.8, 0.2, 1); }
.mlk .mlk-drawer.is-open{ transform: none; }
.mlk .mlk-drawer--menu{ left: auto; right: 0; box-shadow: -30px 0 60px -30px rgba(0, 0, 0, 0.45); transform: translateX(104%); }
.mlk .mlk-drawer__head{ flex: none; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 14px 16px 14px 20px; border-bottom: 1px solid var(--mlk-line); }
.mlk .mlk-drawer__title{ display: flex; align-items: center; gap: 10px; font-size: 17px; font-weight: 700; }
.mlk .mlk-drawer__title .mlk-cartcount{ position: static; box-shadow: none; background: var(--mlk-jade-tint); color: var(--mlk-jade); min-width: 26px; height: 24px; line-height: 24px; font-size: 13px; }
.mlk .mlk-drawer__brand{ display: flex; align-items: center; gap: 10px; font-size: 15px; font-weight: 600; }
.mlk .mlk-drawer__added{ flex: none; display: flex; align-items: center; gap: 8px; padding: 10px 20px; background: var(--mlk-jade); color: #fff; font-size: 14px; font-weight: 600; }
.mlk .mlk-drawer__added[hidden]{ display: none; }
.mlk .mlk-drawer__body{ flex: 1; min-height: 0; display: flex; flex-direction: column; }
.mlk .mlk-cartlist{ flex: 1; overflow-y: auto; padding: 6px 20px; }
.mlk .mlk-cartitem{ display: grid; grid-template-columns: 72px minmax(0, 1fr) auto; align-items: center; gap: 14px; padding: 14px 0; border-bottom: 1px solid var(--mlk-line); }
.mlk .mlk-cartitem:last-child{ border-bottom: 0; }
.mlk .mlk-cartitem__media img, .mlk .mlk-cartitem__img{ width: 72px; height: 72px; border-radius: 14px; object-fit: cover; background: var(--mlk-mist); }
.mlk .mlk-cartitem__text{ display: flex; flex-direction: column; line-height: 1.7; }
.mlk .mlk-cartitem__name{ font-size: 14px; font-weight: 600; }
.mlk .mlk-cartitem__meta{ font-size: 12px; color: var(--mlk-muted); }
.mlk .mlk-cartitem__price{ font-size: 13px; font-weight: 600; color: var(--mlk-gold-ink); }
.mlk .mlk-cartitem__price small{ font-weight: 400; color: var(--mlk-muted); }
.mlk .mlk-cartitem__remove{ display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; border-radius: 12px; color: var(--mlk-muted); transition: background-color 0.2s ease, color 0.2s ease; }
.mlk .mlk-cartitem__remove:hover{ background: #fbeceb; color: #b3261e; }
.mlk .mlk-cartfoot{ flex: none; display: flex; flex-direction: column; gap: 12px; padding: 16px 20px calc(16px + env(safe-area-inset-bottom)); border-top: 1px solid var(--mlk-line); background: #fcfcfa; }
.mlk .mlk-cartfoot__total{ display: flex; justify-content: space-between; align-items: baseline; font-size: 14px; color: var(--mlk-muted); }
.mlk .mlk-cartfoot__total b{ font-size: 20px; font-weight: 700; color: var(--mlk-ink); }
.mlk .mlk-cartfoot__total small{ font-size: 12px; font-weight: 400; color: var(--mlk-muted); }
.mlk .mlk-cartfoot__actions{ display: flex; flex-direction: column; gap: 8px; }
.mlk .mlk-cartfoot__actions .mlk-btn{ width: 100%; }
.mlk .mlk-freeship p{ margin-bottom: 6px; font-size: 13px; color: var(--mlk-jade); }
.mlk .mlk-freeship__bar{ display: block; height: 6px; border-radius: 999px; background: var(--mlk-jade-tint); overflow: hidden; }
.mlk .mlk-freeship__bar span{ display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, var(--mlk-gold), var(--mlk-jade)); transition: width 0.4s ease; }
.mlk .mlk-cartempty{ flex: 1; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 10px; padding: 32px; text-align: center; color: var(--mlk-muted); }
.mlk .mlk-cartempty__icon{ display: inline-flex; align-items: center; justify-content: center; width: 72px; height: 72px; margin-bottom: 6px; border-radius: 50%; background: var(--mlk-sand); color: var(--mlk-gold-ink); }
.mlk .mlk-cartempty__title{ font-size: 17px; font-weight: 700; color: var(--mlk-ink); }
.mlk .mlk-cartempty .mlk-btn{ margin-top: 8px; }

.mlk .mlk-mmenu{ display: flex; flex-direction: column; padding: 8px 12px; }
.mlk .mlk-mmenu a{ display: flex; justify-content: space-between; align-items: center; min-height: 52px; padding: 0 12px; border-radius: 14px; font-size: 16px; font-weight: 600; }
.mlk .mlk-mmenu a:hover{ background: var(--mlk-mist); }
.mlk .mlk-mmenu a .mlk-icon{ color: var(--mlk-muted); }
.mlk .mlk-mmenu__cats{ padding: 8px 24px 0; }
.mlk .mlk-mmenu__cats > p{ margin-bottom: 10px; font-size: 12px; font-weight: 600; color: var(--mlk-gold-ink); }
.mlk .mlk-mmenu__grid{ display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.mlk .mlk-mmenu__grid a{ display: flex; align-items: center; gap: 10px; padding: 8px; border-radius: 14px; background: var(--mlk-mist); font-size: 13px; font-weight: 600; line-height: 1.5; }
.mlk .mlk-mmenu__grid .mlk-sub__icon{ width: 36px; height: 36px; background: #fff; }
.mlk .mlk-mmenu__foot{ display: flex; flex-direction: column; gap: 8px; margin-top: auto; padding: 20px 24px calc(20px + env(safe-area-inset-bottom)); }
.mlk .mlk-drawer--menu{ overflow-y: auto; }

/* ---------- Hero ---------- */
.mlk .mlk-hero{ position: relative; isolation: isolate; overflow: hidden; display: flex; flex-direction: column; max-width: var(--mlk-max); min-height: 620px; margin-inline: auto; padding: 24px 24px 0; border-radius: 32px; background: var(--mlk-deep); color: #fff; }
.mlk .mlk-hero__photo{ position: absolute; z-index: -2; top: 0; left: 0; width: 66%; max-width: none; height: 100%; object-fit: cover; object-position: 62% 30%; }
.mlk .mlk-hero__shade{ position: absolute; z-index: -1; inset: 0; background:
	linear-gradient(to top, rgba(12, 36, 25, 0.9) 0%, rgba(12, 36, 25, 0) 30%),
	linear-gradient(to bottom, rgba(12, 36, 25, 0.6) 0%, rgba(12, 36, 25, 0) 16%),
	linear-gradient(to left, #0c2419 0%, #0c2419 38%, rgba(12, 36, 25, 0.7) 48%, rgba(12, 36, 25, 0) 62%); }
.mlk .mlk-hero__body{ flex: 1; display: flex; flex-direction: column; justify-content: center; gap: 20px; max-width: 600px; padding: 40px 48px 150px; }
.mlk .mlk-hero__title{ display: flex; flex-direction: column; gap: 2px; }
.mlk .mlk-hero__line1{ font-size: 34px; font-weight: 300; line-height: 1.6; color: #e9efe9; }
.mlk .mlk-hero__line2{ font-size: clamp(34px, 3.6vw, 50px); font-weight: 700; line-height: 1.5; color: var(--mlk-gold-soft); white-space: nowrap; }
.mlk .mlk-hero__text{ max-width: 500px; font-size: 16px; line-height: 2.1; color: var(--mlk-on-dark); }
.mlk .mlk-hero__actions{ display: flex; flex-wrap: wrap; gap: 12px; margin-top: 4px; }
.mlk .mlk-hero__stats{ display: flex; align-items: center; margin-top: 12px; }
.mlk .mlk-hero__stats li{ display: flex; flex-direction: column; line-height: 1.6; padding-inline-end: 18px; }
.mlk .mlk-hero__stats li + li{ padding-inline-start: 18px; border-inline-start: 1px solid rgba(255, 255, 255, 0.18); }
.mlk .mlk-hero__stats strong{ font-size: 17px; font-weight: 700; }
.mlk .mlk-hero__stats span{ font-size: 12px; color: var(--mlk-on-dark); }
.mlk .mlk-hero__badge{ position: absolute; left: 36px; top: 112px; display: inline-flex; align-items: center; gap: 10px; padding: 7px 16px 7px 10px; border-radius: 999px; background: rgba(12, 36, 25, 0.55); border: 1px solid rgba(255, 255, 255, 0.16); font-size: 13px; line-height: 1.6; }
.mlk .mlk-hero__badge::before{ content: ""; width: 8px; height: 8px; border-radius: 50%; background: var(--mlk-gold); }

/* ---------- "Where do I start" cards ---------- */
.mlk .mlk-intents{ position: relative; z-index: 2; margin-top: -96px; }
.mlk .mlk-intents__title{ margin-bottom: 12px; padding: 0 6px; font-size: 14px; font-weight: 500; line-height: 1.9; color: #fff; }
.mlk .mlk-intents__grid{ display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.mlk .mlk-intent{ display: flex; align-items: center; gap: 14px; padding: 18px 20px; border-radius: 20px; background: #fff; border: 1px solid rgba(18, 38, 28, 0.06); box-shadow: 0 24px 40px -26px rgba(12, 36, 25, 0.45); transition: transform 0.2s ease; }
.mlk .mlk-intent:hover{ transform: translateY(-3px); }
.mlk .mlk-intent__icon{ flex: none; display: inline-flex; align-items: center; justify-content: center; width: 52px; height: 52px; border-radius: 14px; background: var(--mlk-jade-tint); color: var(--mlk-jade); }
.mlk .mlk-intent--free .mlk-intent__icon{ background: var(--mlk-sand); color: var(--mlk-gold-ink); }
.mlk .mlk-intent--course .mlk-intent__icon{ background: var(--mlk-ink); }
.mlk .mlk-intent--course .mlk-intent__icon svg{ width: 30px; height: 30px; }
.mlk .mlk-intent__text{ flex: 1; min-width: 0; display: flex; flex-direction: column; line-height: 1.7; }
.mlk .mlk-intent__text span{ font-size: 13px; color: var(--mlk-muted); }
.mlk .mlk-intent__text strong{ font-size: 16px; font-weight: 700; }
.mlk .mlk-intent__go{ flex: none; display: inline-flex; align-items: center; justify-content: center; width: 36px; height: 36px; border-radius: 50%; background: var(--mlk-mist); color: var(--mlk-jade); }

/* ---------- Course cards ---------- */
.mlk .mlk-courses{ display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 22px; padding-top: 30px; }
.mlk .mlk-course{ display: flex; flex-direction: column; gap: 14px; padding: 10px 10px 14px; border-radius: 24px; background: #fff; border: 1px solid rgba(18, 38, 28, 0.07); box-shadow: var(--mlk-shadow-lift); transition: transform 0.25s ease, box-shadow 0.25s ease; }
.mlk .mlk-course:hover{ transform: translateY(-4px); }
.mlk .mlk-course.is-featured{ border: 1.5px solid var(--mlk-gold); box-shadow: 0 30px 50px -30px rgba(184, 137, 43, 0.65); }
.mlk .mlk-course__cover{ position: relative; overflow: hidden; display: flex; align-items: center; justify-content: center; aspect-ratio: 3 / 2; border-radius: 16px; background: linear-gradient(140deg, #eaf3e8 0%, #c9dfcc 100%); color: var(--mlk-jade); }
.mlk .mlk-course__cover > svg:not(.mlk-octs){ position: relative; height: 56%; width: auto; }
.mlk .mlk-course__cover .mlk-octs{ left: -90px; bottom: -110px; opacity: 0.35; }
.mlk .mlk-course__cover img{ position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform 0.5s ease; }
.mlk .mlk-course:hover .mlk-course__cover img{ transform: scale(1.03); }
.mlk .mlk-course--bagua .mlk-course__cover, .mlk .mlk-course--photo .mlk-course__cover{ background: var(--mlk-deep); color: #fff; }
.mlk .mlk-course--nine .mlk-course__cover{ background: linear-gradient(140deg, #f8efd6 0%, #ead29a 100%); color: var(--mlk-gold-ink); }
.mlk .mlk-course--nine .mlk-octs{ opacity: 0.45; }
.mlk .mlk-course__nine{ position: relative; font-size: 110px; font-weight: 300; line-height: 1; color: #b8892b; }
.mlk .mlk-course--stars .mlk-course__cover{ background: linear-gradient(140deg, #24684a 0%, #0f3324 100%); color: #fff; }
.mlk .mlk-course__meta{ display: flex; flex-direction: column; gap: 4px; padding: 0 6px; }
.mlk .mlk-course__tags{ display: flex; flex-wrap: wrap; align-items: center; gap: 4px 8px; min-height: 22px; font-size: 12.5px; color: var(--mlk-muted); }
.mlk .mlk-course__badge{ display: inline-flex; align-items: center; padding: 0 10px; border-radius: 999px; background: #f6ecd2; color: var(--mlk-gold-ink); font-size: 11.5px; font-style: normal; font-weight: 700; line-height: 22px; }
.mlk .mlk-course__badge.is-soon{ background: #e7efe6; color: var(--mlk-jade); }
.mlk .mlk-course__meta strong{ font-size: 18px; font-weight: 700; line-height: 1.6; color: var(--mlk-ink); }
.mlk .mlk-course__price{ display: flex; align-items: flex-end; justify-content: space-between; gap: 8px; margin-top: auto; padding: 12px 6px 0; border-top: 1px dashed rgba(18, 38, 28, 0.14); line-height: 1.7; font-size: 12px; color: var(--mlk-muted); }
.mlk .mlk-course__was{ display: flex; flex-direction: column; align-items: flex-start; gap: 2px; }
.mlk .mlk-course__was del, .mlk .mlk-course__label{ font-size: 12.5px; color: #8a968f; }
.mlk .mlk-course__was i{ padding: 0 8px; border-radius: 999px; background: #fbe9e4; color: #b4432a; font-size: 11px; font-style: normal; font-weight: 700; line-height: 20px; }
.mlk .mlk-course__price > span:last-child{ white-space: nowrap; }
.mlk .mlk-course__price b{ font-size: 19px; font-weight: 700; color: var(--mlk-ink); }
.mlk .mlk-course__price b.is-soon{ font-size: 16px; color: var(--mlk-jade); }
.mlk .mlk-course__cta{ display: flex; align-items: center; justify-content: center; gap: 8px; min-height: 46px; border-radius: 14px; background: #e7f0e6; color: var(--mlk-jade); font-size: 14px; font-weight: 600; transition: background 0.2s ease, color 0.2s ease; }
.mlk .mlk-course:hover .mlk-course__cta{ background: var(--mlk-jade); color: #fff; }
.mlk .mlk-course.is-featured .mlk-course__cta{ background: var(--mlk-jade); color: #fff; box-shadow: 0 10px 22px -12px rgba(31, 90, 64, 0.8); }

/* ---------- Free course banner ---------- */
.mlk .mlk-free{ position: relative; overflow: hidden; display: flex; align-items: center; gap: 40px; margin-top: 88px; padding: 36px 48px; border-radius: 28px; background: linear-gradient(110deg, #f7edd2 0%, #ecd7a0 100%); }
.mlk .mlk-free > .mlk-octs{ left: -150px; top: 50%; width: 520px; height: 520px; transform: translateY(-50%); opacity: 0.5; }
.mlk .mlk-free__portrait{ position: relative; flex: none; width: 210px; height: 210px; object-fit: contain; }
.mlk .mlk-free__body{ position: relative; flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 8px; }
.mlk .mlk-free__body h2{ font-size: 34px; line-height: 1.45; }
.mlk .mlk-free__body p:last-child{ max-width: 470px; line-height: 2; color: #4d4424; }
.mlk .mlk-free > .mlk-btn{ position: relative; flex: none; }

/* ---------- Shop band ---------- */
.mlk .mlk-shopband{ margin: 88px calc(var(--mlk-gutter) * -1) 0; padding: 80px var(--mlk-gutter); background: var(--mlk-celadon); }
.mlk .mlk-shopband .mlk-head p{ color: #4a5d52; }
.mlk .mlk-chips{ display: flex; flex-wrap: wrap; gap: 8px; }
.mlk .mlk-chip{ display: inline-flex; align-items: center; min-height: 44px; padding: 0 20px; border-radius: 999px; background: #fff; font-size: 14px; font-weight: 500; }
.mlk .mlk-chip.is-active{ background: var(--mlk-ink); color: #fff; }
.mlk .mlk-products{ display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; }
.mlk .mlk-product{ display: flex; flex-direction: column; gap: 12px; padding: 12px 12px 18px; border-radius: 22px; background: #fff; box-shadow: 0 18px 34px -24px rgba(12, 36, 25, 0.4); transition: transform 0.25s ease; }
.mlk .mlk-product:hover{ transform: translateY(-4px); }
.mlk .mlk-product__tile{ position: relative; display: flex; align-items: center; justify-content: center; height: 190px; border-radius: 14px; background: var(--mlk-mist); }
.mlk .mlk-product__tile--sand{ background: var(--mlk-sand); }
.mlk .mlk-product__tile svg{ height: 100px; width: auto; }
.mlk .mlk-product__tile{ overflow: hidden; }
.mlk .mlk-product__tile img{ position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.mlk .mlk-product__need{ position: absolute; right: 10px; top: 10px; padding: 1px 10px; border-radius: 999px; background: rgba(255, 255, 255, 0.8); color: var(--mlk-jade); font-size: 12px; }
.mlk .mlk-product__row{ display: flex; justify-content: space-between; align-items: center; gap: 10px; padding: 0 6px; }
.mlk .mlk-product__text{ display: flex; flex-direction: column; line-height: 1.7; }
.mlk .mlk-product__text strong{ font-size: 16px; font-weight: 600; }
.mlk .mlk-product__text span{ font-size: 14px; font-weight: 600; color: var(--mlk-gold-ink); }
.mlk .mlk-product__cart{ flex: none; display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; border-radius: 12px; background: var(--mlk-jade); color: #fff; }
.mlk .mlk-shopband__foot{ display: flex; justify-content: space-between; align-items: center; gap: 24px; flex-wrap: wrap; margin-top: 32px; }
.mlk .mlk-assure{ display: flex; flex-wrap: wrap; gap: 12px 32px; font-size: 14px; color: #33473c; }
.mlk .mlk-assure li{ display: inline-flex; align-items: center; gap: 10px; }
.mlk .mlk-assure .mlk-icon{ color: var(--mlk-jade); }
.mlk .mlk-shopband__foot .mlk-btn{ min-height: 48px; padding: 0 24px; }

/* ---------- Story ---------- */
.mlk .mlk-story{ display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 56px; align-items: center; }
.mlk .mlk-story__media{ position: relative; padding: 0 0 28px 28px; }
.mlk .mlk-story__media::before{ content: ""; position: absolute; left: 0; bottom: 0; width: 70%; height: 70%; border-radius: 28px; background: var(--mlk-sand); }
.mlk .mlk-story__media img{ position: relative; width: 100%; height: 430px; object-fit: cover; border-radius: 28px; }
.mlk .mlk-story__stat{ position: absolute; left: 0; bottom: 60px; display: flex; flex-direction: column; padding: 12px 18px; border-radius: 16px; background: #fff; line-height: 1.6; box-shadow: 0 20px 36px -20px rgba(12, 36, 25, 0.45); }
.mlk .mlk-story__stat strong{ font-size: 22px; font-weight: 700; color: var(--mlk-jade); }
.mlk .mlk-story__stat span{ font-size: 12px; color: var(--mlk-muted); }
.mlk .mlk-story__body{ display: flex; flex-direction: column; gap: 18px; }
.mlk .mlk-story__body h2{ font-size: 34px; line-height: 1.45; }
.mlk .mlk-story__body > p:not(.mlk-eyebrow){ max-width: 480px; line-height: 2.1; color: var(--mlk-muted); }
.mlk .mlk-story__steps{ display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin-top: 6px; }
.mlk .mlk-story__steps li{ display: flex; flex-direction: column; padding: 14px 16px; border-radius: 16px; background: #fff; border: 1px solid rgba(18, 38, 28, 0.07); line-height: 1.7; }
.mlk .mlk-story__steps span:first-child{ font-size: 12px; color: var(--mlk-gold-ink); }
.mlk .mlk-story__steps strong{ font-size: 17px; font-weight: 700; }
.mlk .mlk-story__steps span:last-child{ font-size: 13px; color: var(--mlk-muted); }

/* ---------- Testimonials ---------- */
.mlk .mlk-quotes{ display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.mlk .mlk-quote{ display: flex; flex-direction: column; justify-content: space-between; gap: 22px; padding: 28px; border-radius: 22px; background: #fff; border: 1px solid rgba(18, 38, 28, 0.07); }
.mlk .mlk-quote svg{ color: #e3d4a8; }
.mlk .mlk-quote blockquote{ font-size: 15px; line-height: 2.1; }
.mlk .mlk-quote figcaption{ display: flex; flex-direction: column; line-height: 1.7; }
.mlk .mlk-quote figcaption strong{ font-size: 14px; font-weight: 600; }
.mlk .mlk-quote figcaption span{ font-size: 12px; color: var(--mlk-muted); }
.mlk .mlk-quote.is-featured{ background: var(--mlk-jade); border-color: var(--mlk-jade); color: #fff; box-shadow: 0 30px 50px -30px rgba(31, 90, 64, 0.8); }
.mlk .mlk-quote.is-featured svg{ color: var(--mlk-gold); }
.mlk .mlk-quote.is-featured figcaption span{ color: var(--mlk-on-dark); }

/* ---------- Footer ---------- */
.mlk .mlk-footer{ margin: 96px calc(var(--mlk-gutter) * -1) 0; padding: 56px var(--mlk-gutter) 28px; background: var(--mlk-deep); color: #fff; }
.mlk .mlk-footer__cta{ display: flex; justify-content: space-between; align-items: center; gap: 24px; flex-wrap: wrap; padding-bottom: 36px; border-bottom: 1px solid rgba(255, 255, 255, 0.12); }
.mlk .mlk-footer__title{ font-size: 26px; font-weight: 700; line-height: 1.5; }
.mlk .mlk-footer__text{ color: var(--mlk-on-dark); }
.mlk .mlk-footer__actions{ display: flex; flex-wrap: wrap; gap: 10px; }
.mlk .mlk-footer__actions .mlk-btn{ min-height: 50px; border-radius: 14px; }
.mlk .mlk-footer__actions .mlk-btn--gold{ box-shadow: none; padding: 0 26px; }
.mlk .mlk-footer__grid{ display: grid; grid-template-columns: 2fr 1fr 1fr; gap: 32px; padding: 40px 0 28px; }
.mlk .mlk-footer__brand{ display: flex; align-items: center; gap: 10px; font-size: 16px; font-weight: 600; }
.mlk .mlk-footer__brand img{ width: 44px; height: 44px; }
.mlk .mlk-footer__about p{ max-width: 340px; margin-top: 12px; font-size: 14px; line-height: 2; color: var(--mlk-on-dark); }
.mlk .mlk-footer nav{ display: flex; flex-direction: column; gap: 4px; font-size: 14px; }
.mlk .mlk-footer nav a{ color: var(--mlk-on-dark); transition: color 0.2s ease; }
.mlk .mlk-footer nav a:hover{ color: #fff; }
.mlk .mlk-footer__head{ margin-bottom: 4px; font-weight: 600; color: var(--mlk-gold-soft); }
.mlk .mlk-footer__copy{ padding-top: 20px; border-top: 1px solid rgba(255, 255, 255, 0.08); font-size: 12px; color: rgba(255, 255, 255, 0.55); }

/* ---------- 404 ---------- */
.mlk .mlk-404{ position: relative; overflow: hidden; display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 48px; margin-top: 56px; padding: 64px 56px; border-radius: 32px; background: var(--mlk-deep); color: #fff; }
.mlk .mlk-404 > .mlk-octs{ left: -120px; bottom: -160px; width: 520px; height: 520px; opacity: 0.3; }
.mlk .mlk-404__body{ position: relative; display: flex; flex-direction: column; gap: 16px; max-width: 520px; }
.mlk .mlk-404__body h1{ font-size: 40px; line-height: 1.5; }
.mlk .mlk-404__body > p:not(.mlk-pill){ line-height: 2.1; color: var(--mlk-on-dark); }
.mlk .mlk-404__actions{ display: flex; flex-wrap: wrap; gap: 10px; margin-top: 8px; }
.mlk .mlk-404__code{ position: relative; font-size: 180px; font-weight: 700; line-height: 1; color: var(--mlk-gold-soft); opacity: 0.9; }
.mlk .mlk-404__links{ display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin-top: 24px; }
.mlk .mlk-404__links .mlk-intent{ box-shadow: var(--mlk-shadow); }

/* ---------- Tablet ---------- */
@media (max-width: 1100px) {
	.mlk .mlk-nav__links{ gap: 20px; padding-inline-start: 8px; }
	.mlk .mlk-nav__account{ display: none; }
	.mlk .mlk-brand{ grid-template-columns: auto auto auto; }
	.mlk .mlk-sub{ width: 440px; }
	.mlk .mlk-hero__body{ padding-inline: 24px; max-width: 520px; }
	.mlk .mlk-hero__line1{ font-size: 28px; }
	.mlk .mlk-courses{ grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: 24px; }
	.mlk .mlk-products{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.mlk .mlk-free{ flex-wrap: wrap; gap: 24px; }
	.mlk .mlk-story{ gap: 32px; }
}

/* ---------- Mobile ---------- */
@media (max-width: 820px) {
	.mlk { --mlk-gutter: 16px; padding-top: 0; font-size: 14px; }
	.mlk .mlk-section{ margin-top: 56px; }
	.mlk .mlk-head{ margin-bottom: 18px; }
	.mlk .mlk-head h2, .mlk .mlk-story__body h2{ font-size: 22px; line-height: 1.5; }
	.mlk .mlk-head--center{ justify-content: flex-start; text-align: start; }

	.mlk .mlk-header{ top: 0; margin: 0 calc(var(--mlk-gutter) * -1) 16px; padding: 0; }
	body.admin-bar .mlk-header { top: 0; }
	.mlk .mlk-header--overlay{ margin-top: 0; margin-bottom: -60px; }
	.mlk .mlk-nav, .mlk .mlk-header.is-stuck .mlk-nav{ display: flex; align-items: center; gap: 2px; height: 60px; padding: 0 6px; border-radius: 0; border: 0; border-bottom: 1px solid var(--mlk-line); background: rgba(247, 248, 244, 0.9); -webkit-backdrop-filter: saturate(1.6) blur(16px); backdrop-filter: saturate(1.6) blur(16px); box-shadow: none; }
	.mlk .mlk-header.is-stuck .mlk-nav{ box-shadow: 0 12px 28px -22px rgba(12, 36, 25, 0.5); }
	.mlk .mlk-header.is-over-dark .mlk-nav{ background: transparent; border-bottom-color: transparent; -webkit-backdrop-filter: none; backdrop-filter: none; }
	.mlk .mlk-header.is-over-dark.is-stuck .mlk-nav{ background: rgba(12, 36, 25, 0.78); border-bottom-color: rgba(255, 255, 255, 0.08); -webkit-backdrop-filter: blur(18px); backdrop-filter: blur(18px); }
	.mlk .mlk-nav__burger{ display: inline-flex; }
	.mlk .mlk-nav__links, .mlk .mlk-nav__account{ display: none; }
	.mlk .mlk-nav__tools{ margin-inline-start: auto; gap: 0; }
	.mlk .mlk-brand{ display: flex; gap: 6px; font-size: 14px; }
	.mlk .mlk-brand__medal, .mlk .mlk-header.is-stuck .mlk-brand__medal{ order: -1; width: 38px; height: 38px; margin: 0 0 0 2px; border: 0; box-shadow: none; background: transparent; }
	.mlk .mlk-header.is-over-dark .mlk-brand__medal{ background: transparent; }
	.mlk .mlk-brand__medal img, .mlk .mlk-header.is-stuck .mlk-brand__medal img{ width: 36px; height: 36px; }
	.mlk .mlk-cartcount{ top: 4px; left: 4px; }

	.mlk .mlk-hero{ min-height: 0; margin-inline: 0; padding: 0 4px; border-radius: 24px; }
	.mlk .mlk-hero__photo{ width: 100%; height: 380px; object-position: 62% 20%; }
	.mlk .mlk-hero__shade{ background: linear-gradient(to bottom, rgba(12, 36, 25, 0.6) 0%, rgba(12, 36, 25, 0) 90px, rgba(12, 36, 25, 0) 230px, #0c2419 380px); }
	.mlk .mlk-hero__body{ max-width: none; gap: 14px; padding: 232px 14px 96px; }
	.mlk .mlk-hero__line1{ font-size: 20px; line-height: 1.7; }
	.mlk .mlk-hero__line2{ font-size: clamp(22px, 7vw, 30px); line-height: 1.6; }
	.mlk .mlk-hero__text{ font-size: 14px; }
	.mlk .mlk-hero__actions .mlk-btn{ width: 100%; }
	.mlk .mlk-hero__actions .mlk-btn--outline-light{ display: none; }
	.mlk .mlk-hero__stats{ justify-content: space-between; margin-top: 10px; }
	.mlk .mlk-hero__badge{ display: none; }

	.mlk .mlk-intents{ margin-top: -72px; }
	.mlk .mlk-intents__grid{ grid-template-columns: 1fr; gap: 10px; }
	.mlk .mlk-intent{ padding: 14px; }

	.mlk .mlk-courses{ display: flex; gap: 14px; margin-inline: calc(var(--mlk-gutter) * -1); padding: 24px var(--mlk-gutter) 24px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; }
	.mlk .mlk-courses::-webkit-scrollbar{ display: none; }
	.mlk .mlk-course{ flex: none; width: min(78vw, 300px); scroll-snap-align: center; }
	.mlk .mlk-course__nine{ font-size: 104px; }

	.mlk .mlk-free{ flex-direction: column; align-items: stretch; gap: 14px; margin-top: 40px; padding: 22px; border-radius: 22px; }
	.mlk .mlk-free__portrait{ width: 96px; height: 96px; }
	.mlk .mlk-free__body h2{ font-size: 20px; }
	.mlk .mlk-free > .mlk-btn{ min-height: 48px; }

	.mlk .mlk-shopband{ margin-top: 40px; padding-block: 36px; }
	.mlk .mlk-chips{ flex-wrap: nowrap; margin-inline: calc(var(--mlk-gutter) * -1); padding-inline: var(--mlk-gutter); overflow-x: auto; scrollbar-width: none; }
	.mlk .mlk-chips::-webkit-scrollbar{ display: none; }
	.mlk .mlk-chip{ flex: none; padding: 0 16px; font-size: 13px; }
	.mlk .mlk-products{ gap: 10px; }
	.mlk .mlk-product{ padding: 8px 8px 12px; border-radius: 20px; }
	.mlk .mlk-product__tile{ height: 124px; }
	.mlk .mlk-product__tile svg{ height: 64px; }
	.mlk .mlk-product__text strong{ font-size: 14px; }
	.mlk .mlk-product__text span{ font-size: 13px; }
	.mlk .mlk-product__cart{ width: 36px; height: 36px; }
	.mlk .mlk-shopband__foot{ margin-top: 22px; }
	.mlk .mlk-shopband__foot .mlk-btn{ width: 100%; }

	.mlk .mlk-story{ grid-template-columns: 1fr; }
	.mlk .mlk-story__media img{ height: 260px; }
	.mlk .mlk-story__steps{ grid-template-columns: 1fr; }

	.mlk .mlk-quotes{ grid-template-columns: 1fr; gap: 12px; }
	.mlk .mlk-quote{ padding: 22px; }

	.mlk .mlk-404{ grid-template-columns: 1fr; gap: 12px; margin-top: 12px; padding: 32px 22px; border-radius: 24px; }
	.mlk .mlk-404__code{ order: -1; font-size: 96px; }
	.mlk .mlk-404__body h1{ font-size: 26px; }
	.mlk .mlk-404__actions .mlk-btn{ width: 100%; }
	.mlk .mlk-404__links{ grid-template-columns: 1fr; gap: 10px; }

	.mlk .mlk-footer{ margin-top: 56px; padding-top: 36px; }
	.mlk .mlk-footer__title{ font-size: 20px; }
	.mlk .mlk-footer__actions, .mlk .mlk-footer__actions .mlk-btn{ width: 100%; }
	.mlk .mlk-footer__grid{ grid-template-columns: 1fr 1fr; }
	.mlk .mlk-footer__about{ grid-column: 1 / -1; }
}

/* =========================================================================
   Shop pages — follows the canvas boards "فروشگاه" and "صفحه‌ی محصول"
   ========================================================================= */

/* ---------- Woodmart icon font glyphs ---------- */
.mlk .mlk-wdi{ display: inline-flex; align-items: center; justify-content: center; width: var(--mlk-i, 20px); height: var(--mlk-i, 20px); font-family: "mlk-woodmart"; font-size: var(--mlk-i, 20px); font-style: normal; font-weight: 400; line-height: 1; text-transform: none; speak: never; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
.mlk .mlk-glyph{ flex: none; display: block; }

/* ---------- Strip above the header ---------- */
.mlk .mlk-strip{ display: flex; justify-content: space-between; align-items: center; gap: 16px; max-width: var(--mlk-max); min-height: 40px; margin: 0 auto; padding: 0 18px; border-radius: 14px; background: #0c2419; color: #c9d6cd; font-size: 13px; }
.mlk .mlk-strip p{ display: inline-flex; align-items: center; gap: 10px; margin: 0; }
.mlk .mlk-strip__dot{ width: 6px; height: 6px; border-radius: 50%; background: var(--mlk-gold); }
.mlk .mlk-strip__news a{ display: inline-flex; align-items: center; gap: 4px; color: #ecc875; font-weight: 600; }
.mlk .mlk-strip__tools{ gap: 18px !important; }
.mlk .mlk-strip__tools > *{ display: inline-flex; align-items: center; gap: 6px; color: #c9d6cd; }
.mlk .mlk-strip__tools a:hover{ color: #fff; }
.mlk .mlk-strip + .mlk-header{ max-width: var(--mlk-max); margin: 20px auto 0; }
.mlk .mlk-nav__user, .mlk .mlk-nav__back{ display: none !important; }

/* ---------- Breadcrumb: "خانه / فروشگاه / …" ---------- */
.mlk .mlk-crumbs ol{ display: flex; flex-wrap: wrap; gap: 0; margin: 0; padding: 0; list-style: none; font-size: 13px; color: var(--mlk-muted); }
.mlk .mlk-crumbs li + li::before{ content: "/"; margin: 0 5px; }
.mlk .mlk-crumbs a{ color: var(--mlk-muted); }
.mlk .mlk-crumbs a:hover{ color: var(--mlk-jade); }

/* ---------- Notices ---------- */
.mlk .mlk-notices{ max-width: var(--mlk-max); margin: 24px auto 0; }
.mlk .mlk-notices :where(.woocommerce-message, .woocommerce-error, .woocommerce-info){ display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px 16px; margin: 0 0 10px; padding: 14px 18px; border-radius: 16px; list-style: none; background: var(--mlk-jade-tint); color: var(--mlk-jade); font-size: 14px; font-weight: 500; }
.mlk .mlk-notices .woocommerce-error{ background: #fbeceb; color: #8c1d18; }
.mlk .mlk-notices .woocommerce-info{ background: var(--mlk-sand); color: #5f4a14; }
.mlk .mlk-notices .woocommerce-error li{ margin: 0; }
.mlk .mlk-notices :where(a.button, .wc-forward){ display: inline-flex; align-items: center; min-height: 38px; padding: 0 16px; border-radius: 10px; background: var(--mlk-ink); color: #fff; font-size: 13px; font-weight: 600; }

/* ---------- Shop heading ---------- */
.mlk .mlk-shop, .mlk .mlk-pdp{ max-width: var(--mlk-max); margin: 0 auto; }
.mlk .mlk-shead{ display: flex; justify-content: space-between; align-items: flex-end; flex-wrap: wrap; gap: 24px; margin-top: 48px; }
.mlk .mlk-shead__text{ display: flex; flex-direction: column; gap: 6px; }
.mlk .mlk-shead h1{ font-size: 42px; line-height: 1.4; }
.mlk .mlk-shead__text > p{ max-width: 520px; color: var(--mlk-muted); }
.mlk .mlk-shead__count{ font-size: 14px; color: var(--mlk-muted); }
.mlk .mlk-shead__count b{ font-weight: 700; color: var(--mlk-ink); }

/* ---------- Need tiles ---------- */
.mlk .mlk-needs{ display: grid; grid-template-columns: repeat(var(--mlk-n, 5), minmax(0, 1fr)); gap: 14px; margin-top: 48px; }
.mlk .mlk-need{ display: flex; align-items: center; gap: 14px; padding: 16px 18px; border-radius: 18px; background: #fff; border: 1px solid rgba(18, 38, 28, 0.07); color: var(--mlk-ink); transition: transform 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease; }
.mlk .mlk-need:hover{ transform: translateY(-2px); box-shadow: 0 16px 30px -24px rgba(12, 36, 25, 0.5); }
.mlk .mlk-need__icon{ flex: none; display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; border-radius: 12px; background: #eef2ea; color: var(--mlk-jade); }
.mlk .mlk-need__text{ min-width: 0; display: flex; flex-direction: column; line-height: 1.6; }
.mlk .mlk-need__text strong{ font-size: 16px; font-weight: 600; }
.mlk .mlk-need__text small{ overflow: hidden; font-size: 12px; color: var(--mlk-muted); text-overflow: ellipsis; white-space: nowrap; }
.mlk .mlk-need.is-active{ background: var(--mlk-ink); border-color: var(--mlk-ink); color: #fff; }
.mlk .mlk-need.is-active .mlk-need__icon{ background: rgba(255, 255, 255, 0.1); color: var(--mlk-gold); }
.mlk .mlk-need.is-active small{ color: #c5d3ca; }

/* ---------- Filters + results ---------- */
.mlk .mlk-shopbody{ display: flex; align-items: flex-start; gap: 32px; margin-top: 48px; }
.mlk .mlk-filters{ position: sticky; top: 92px; flex: 0 0 264px; display: flex; flex-direction: column; gap: 14px; max-height: calc(100vh - 108px); overflow-y: auto; scrollbar-width: thin; scrollbar-color: rgba(18, 38, 28, 0.15) transparent; }
body.admin-bar .mlk-filters { top: 124px; max-height: calc(100vh - 140px); }
.mlk .mlk-filters__head{ display: none; }
.mlk .mlk-ff{ display: flex; flex-direction: column; padding: 6px 18px 10px; border-radius: 22px; background: #fff; border: 1px solid rgba(18, 38, 28, 0.07); box-shadow: 0 1px 2px rgba(18, 38, 28, 0.03), 0 14px 30px -22px rgba(18, 38, 28, 0.25); }
.mlk .mlk-ff__top{ display: flex; justify-content: space-between; align-items: center; gap: 8px; min-height: 48px; }
.mlk .mlk-ff__title{ display: inline-flex; align-items: center; gap: 8px; margin: 0; font-size: 15px; font-weight: 700; }
.mlk .mlk-ff__title .mlk-icon{ color: var(--mlk-jade); }
.mlk .mlk-ff__clear{ font-size: 12px; font-weight: 600; color: #b3261e; }
.mlk .mlk-ff__clear:hover{ text-decoration: underline; text-underline-offset: 3px; }

.mlk .mlk-fsearch{ display: flex; align-items: center; gap: 8px; min-height: 44px; margin: 4px 0 8px; padding: 0 12px; border-radius: 12px; background: #f3f5f0; color: var(--mlk-muted); transition: box-shadow 0.2s ease, background-color 0.2s ease; }
.mlk .mlk-fsearch:focus-within{ background: #fff; box-shadow: 0 0 0 1.5px var(--mlk-jade), 0 0 0 5px rgba(31, 90, 64, 0.1); }
.mlk .mlk-fsearch input{ flex: 1; min-width: 0; height: 42px; padding: 0; border: 0; background: transparent; color: var(--mlk-ink); font: inherit; font-size: 14px; outline: none; box-shadow: none; }
.mlk .mlk-fsearch input::-webkit-search-cancel-button{ cursor: pointer; }

.mlk .mlk-fg{ margin: 0; padding: 0; border: 0; border-top: 1px solid rgba(18, 38, 28, 0.08); }
.mlk .mlk-fg > summary{ display: flex; align-items: center; gap: 8px; min-height: 52px; list-style: none; cursor: pointer; font-size: 14px; font-weight: 700; user-select: none; }
.mlk .mlk-fg > summary::-webkit-details-marker{ display: none; }
.mlk .mlk-fg > summary > span{ flex: 1; }
.mlk .mlk-fg > summary small{ font-size: 12px; font-weight: 500; color: var(--mlk-muted); }
.mlk .mlk-fg > summary em{ min-width: 20px; height: 20px; padding: 0 6px; border-radius: 999px; background: var(--mlk-jade); color: #fff; font-size: 11px; font-style: normal; font-weight: 700; line-height: 20px; text-align: center; }
.mlk .mlk-fg > summary .mlk-icon{ color: var(--mlk-muted); transition: transform 0.25s ease; }
.mlk .mlk-fg[open] > summary .mlk-icon{ transform: rotate(180deg); }
.mlk .mlk-fg > summary:focus-visible{ outline: 2px solid var(--mlk-gold); outline-offset: 2px; border-radius: 8px; }
.mlk .mlk-fg__body{ display: flex; flex-direction: column; gap: 2px; padding-bottom: 16px; }
.mlk .mlk-fg--plain{ display: flex; flex-direction: column; gap: 2px; padding: 8px 0 6px; }

/* Checkbox row: box, line icon, name, count. */
.mlk .mlk-check{ position: relative; display: flex; align-items: center; gap: 10px; min-height: 42px; margin: 0 -8px; padding: 0 8px; border-radius: 12px; font-size: 14px; color: #33463c; cursor: pointer; transition: background-color 0.15s ease; }
.mlk .mlk-check:hover{ background: #f3f5f0; }
.mlk .mlk-check input{ position: absolute; opacity: 0; width: 1px; height: 1px; }
.mlk .mlk-check__box{ flex: none; display: inline-flex; align-items: center; justify-content: center; width: 20px; height: 20px; border-radius: 6px; border: 1.5px solid rgba(18, 38, 28, 0.25); background: #fff; color: transparent; transition: background-color 0.15s ease, border-color 0.15s ease; }
.mlk .mlk-check input:checked ~ .mlk-check__box{ border-color: var(--mlk-jade); background: var(--mlk-jade); color: #fff; }
.mlk .mlk-check input:focus-visible ~ .mlk-check__box{ outline: 2px solid var(--mlk-gold); outline-offset: 2px; }
.mlk .mlk-check__icon{ flex: none; display: inline-flex; align-items: center; justify-content: center; width: 30px; height: 30px; border-radius: 9px; background: #eef2ea; color: var(--mlk-jade); }
.mlk .mlk-check input:checked ~ .mlk-check__icon{ background: var(--mlk-ink); color: var(--mlk-gold); }
.mlk .mlk-check__name{ flex: 1; min-width: 0; }
.mlk .mlk-check input:checked ~ .mlk-check__name{ font-weight: 600; color: var(--mlk-ink); }
.mlk .mlk-check__count{ min-width: 24px; padding: 0 7px; border-radius: 999px; background: #f3f5f0; font-size: 11px; line-height: 20px; text-align: center; color: var(--mlk-muted); }
.mlk .mlk-check--sub{ padding-inline-start: 36px; font-size: 13px; }

/* Chips: sort, sizes, product type. */
.mlk .mlk-chiprow{ flex-direction: row; flex-wrap: wrap; gap: 6px; }
.mlk .mlk-chiprow--2 > *{ flex: 1 1 0; }
.mlk .mlk-opt{ position: relative; display: inline-flex; cursor: pointer; }
.mlk .mlk-opt input{ position: absolute; opacity: 0; width: 1px; height: 1px; }
.mlk .mlk-opt span{ display: inline-flex; align-items: center; justify-content: center; gap: 6px; width: 100%; min-height: 36px; padding: 0 13px; border-radius: 10px; border: 1px solid rgba(18, 38, 28, 0.1); background: #fff; color: #33463c; font-size: 13px; transition: border-color 0.15s ease, background-color 0.15s ease, color 0.15s ease; }
.mlk .mlk-opt:hover span{ border-color: rgba(31, 90, 64, 0.5); }
.mlk .mlk-opt input:checked + span{ border-color: var(--mlk-jade); background: #e7efe6; color: var(--mlk-jade); font-weight: 600; box-shadow: inset 0 0 0 0.5px var(--mlk-jade); }
.mlk .mlk-opt input[type="radio"]:checked + span{ border-color: var(--mlk-ink); background: var(--mlk-ink); color: #fff; box-shadow: none; }
.mlk .mlk-opt input:focus-visible + span{ outline: 2px solid var(--mlk-gold); outline-offset: 2px; }
.mlk .mlk-opt--card span{ flex-direction: column; min-height: 66px; padding: 8px; font-size: 12px; text-align: center; }
.mlk .mlk-opt--card .mlk-icon{ color: var(--mlk-jade); }

/* Price: presets, slider, fields. */
.mlk .mlk-preset{ min-height: 32px; padding: 0 11px; border-radius: 999px; border: 0; background: #f3f5f0; color: #33463c; font-size: 12px; transition: background-color 0.15s ease, color 0.15s ease; }
.mlk .mlk-preset:hover{ background: #e7efe6; }
.mlk .mlk-preset.is-on{ background: var(--mlk-ink); color: #fff; }
.mlk .mlk-slider{ position: relative; height: 34px; margin: 10px 0 2px; --a: 0%; --b: 100%; }
.mlk .mlk-slider__track{ position: absolute; top: 15px; right: 0; left: 0; height: 4px; border-radius: 999px; background: #e3e9e1; }
.mlk .mlk-slider__fill{ position: absolute; top: 0; bottom: 0; right: var(--a); left: calc(100% - var(--b)); border-radius: inherit; background: var(--mlk-jade); }
.mlk .mlk-slider input{ position: absolute; inset: 0; width: 100%; height: 34px; margin: 0; background: none; pointer-events: none; -webkit-appearance: none; appearance: none; direction: rtl; }
.mlk .mlk-slider input::-webkit-slider-runnable-track{ height: 34px; background: none; }
.mlk .mlk-slider input::-moz-range-track{ background: none; }
.mlk .mlk-slider input::-webkit-slider-thumb{ width: 22px; height: 22px; margin-top: 6px; border-radius: 50%; border: 2px solid var(--mlk-jade); background: #fff; box-shadow: 0 4px 10px -4px rgba(12, 36, 25, 0.5); pointer-events: auto; cursor: grab; -webkit-appearance: none; appearance: none; }
.mlk .mlk-slider input::-moz-range-thumb{ width: 18px; height: 18px; border-radius: 50%; border: 2px solid var(--mlk-jade); background: #fff; pointer-events: auto; cursor: grab; }
.mlk .mlk-slider input:focus-visible::-webkit-slider-thumb{ box-shadow: 0 0 0 4px rgba(212, 164, 65, 0.45); }
.mlk .mlk-fprice{ display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.mlk .mlk-fprice label{ display: flex; align-items: center; gap: 6px; min-height: 42px; padding: 0 10px; border-radius: 12px; background: #f3f5f0; transition: box-shadow 0.2s ease, background-color 0.2s ease; }
.mlk .mlk-fprice label:focus-within{ background: #fff; box-shadow: 0 0 0 1.5px var(--mlk-jade); }
.mlk .mlk-fprice small{ font-size: 12px; color: var(--mlk-muted); }
.mlk .mlk-fprice input{ width: 100%; min-width: 0; height: 40px; padding: 0; border: 0; background: transparent; color: var(--mlk-ink); font: inherit; font-size: 13px; font-weight: 600; outline: none; box-shadow: none; }

/* Switches. */
.mlk .mlk-switch{ position: relative; display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 44px; font-size: 14px; color: #33463c; cursor: pointer; }
.mlk .mlk-switch input{ position: absolute; opacity: 0; width: 1px; height: 1px; }
.mlk .mlk-switch__ui{ position: relative; flex: none; width: 40px; height: 24px; border-radius: 999px; background: #d5ddd7; transition: background-color 0.2s ease; }
.mlk .mlk-switch__ui::after{ content: ""; position: absolute; top: 3px; right: 3px; width: 18px; height: 18px; border-radius: 50%; background: #fff; box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2); transition: transform 0.2s ease; }
.mlk .mlk-switch input:checked ~ .mlk-switch__ui{ background: var(--mlk-jade); }
.mlk .mlk-switch input:checked ~ .mlk-switch__ui::after{ transform: translateX(-16px); }
.mlk .mlk-switch input:focus-visible ~ .mlk-switch__ui{ outline: 2px solid var(--mlk-gold); outline-offset: 2px; }

.mlk .mlk-ff__actions{ display: none; }
.mlk .mlk-helpcard{ display: flex; flex-direction: column; gap: 8px; padding: 18px; border-radius: 18px; background: #e7efe6; }
.mlk .mlk-helpcard p{ margin: 0; font-size: 13px; line-height: 1.9; color: #33463c; }
.mlk .mlk-helpcard .mlk-helpcard__title{ font-size: 14px; font-weight: 600; color: var(--mlk-ink); }
.mlk .mlk-helpcard a{ display: inline-flex; align-items: center; gap: 4px; min-height: 40px; font-size: 14px; font-weight: 600; color: var(--mlk-jade); }

.mlk .mlk-results{ flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 18px; transition: opacity 0.2s ease; }
.mlk .mlk-results.is-loading{ opacity: 0.45; pointer-events: none; }
.mlk .mlk-rbar{ display: flex; justify-content: space-between; align-items: center; gap: 12px; }
.mlk .mlk-rbar__count{ margin: 0; font-size: 13px; color: var(--mlk-muted); }
.mlk .mlk-rbar__filter{ display: none !important; }
.mlk .mlk-dot{ display: inline-flex; align-items: center; justify-content: center; min-width: 20px; height: 20px; padding: 0 5px; border-radius: 999px; background: var(--mlk-gold); color: var(--mlk-ink); font-size: 11px; font-weight: 700; }
.mlk .mlk-tags{ display: flex; flex-wrap: wrap; gap: 8px; margin: -4px 0 0; }
.mlk .mlk-tags a{ display: inline-flex; align-items: center; gap: 6px; min-height: 32px; padding: 0 10px 0 12px; border-radius: 999px; background: #e7efe6; color: var(--mlk-jade); font-size: 12px; font-weight: 500; }
.mlk .mlk-tags a:hover{ background: var(--mlk-celadon); }
.mlk .mlk-tags .mlk-tags__clear{ background: transparent; color: var(--mlk-muted); text-decoration: underline; text-underline-offset: 4px; }

/* ---------- Product card ---------- */
.mlk .mlk-grid{ display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.mlk .mlk-grid--4{ grid-template-columns: repeat(4, minmax(0, 1fr)); }
.mlk .mlk-card{ position: relative; display: flex; flex-direction: column; gap: 12px; padding: 12px 12px 18px; border-radius: 22px; background: #fff; border: 1px solid rgba(18, 38, 28, 0.07); box-shadow: 0 1px 2px rgba(18, 38, 28, 0.03), 0 14px 30px -22px rgba(18, 38, 28, 0.25); transition: transform 0.25s ease, box-shadow 0.25s ease; }
.mlk .mlk-card:hover{ transform: translateY(-3px); box-shadow: 0 1px 2px rgba(18, 38, 28, 0.03), 0 24px 40px -26px rgba(18, 38, 28, 0.4); }
.mlk .mlk-card__tile{ position: relative; display: flex; align-items: center; justify-content: center; overflow: hidden; height: 190px; border-radius: 14px; }
.mlk .mlk-card--compact .mlk-card__tile{ height: 160px; }
.mlk .mlk-tone--mist{ background: #eef2ea; }
.mlk .mlk-tone--sand{ background: #f3ead2; }
.mlk .mlk-tone--celadon{ background: #e7efe6; }
.mlk .mlk-card__tile > svg{ height: 100px; width: auto; }
.mlk .mlk-card__img{ position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: opacity 0.35s ease, transform 0.5s ease; }
.mlk .mlk-card__img--alt{ opacity: 0; }
.mlk .mlk-card:hover .mlk-card__img{ transform: scale(1.04); }
.mlk .mlk-card:hover .mlk-card__img--alt{ opacity: 1; }
.mlk .mlk-card__badge{ position: absolute; top: 10px; right: 10px; padding: 2px 12px; border-radius: 999px; background: #fff; border: 1px solid rgba(18, 38, 28, 0.07); color: var(--mlk-jade); font-size: 12px; font-weight: 500; line-height: 1.9; }
.mlk .mlk-card__off{ position: absolute; top: 10px; left: 10px; padding: 2px 10px; border-radius: 999px; background: var(--mlk-gold); color: var(--mlk-ink); font-size: 12px; font-weight: 700; line-height: 1.9; }
.mlk .mlk-card.is-out .mlk-card__img{ filter: grayscale(0.6); opacity: 0.75; }
.mlk .mlk-card__text{ display: flex; flex-direction: column; padding: 0 6px; line-height: 1.7; }
.mlk .mlk-card__need{ font-size: 12px; color: var(--mlk-muted); }
.mlk .mlk-card__title{ overflow: hidden; font-size: 16px; font-weight: 600; line-height: 1.7; text-overflow: ellipsis; white-space: nowrap; }
.mlk .mlk-card__title a::after{ content: ""; position: absolute; inset: 0; z-index: 1; border-radius: 22px; }
.mlk .mlk-card__row{ display: flex; justify-content: space-between; align-items: center; gap: 8px; }
.mlk .mlk-card__price{ font-size: 14px; font-weight: 600; color: var(--mlk-gold-ink); }
.mlk .mlk-card__price del{ margin-inline-start: 6px; font-size: 12px; font-weight: 400; color: #8a968f; }
.mlk .mlk-card__stock{ flex: none; font-size: 12px; color: var(--mlk-jade); }
.mlk .mlk-card__stock.is-out{ color: #8a968f; }
/* Quick add: appears on the tile on hover (desktop) — the card itself stays as in the design. */
.mlk .mlk-card__add{ position: absolute; z-index: 2; left: 20px; top: 150px; display: inline-flex; align-items: center; gap: 6px; height: 40px; padding: 0 14px; border-radius: 12px; background: var(--mlk-jade); color: #fff !important; font-size: 13px; font-weight: 600; box-shadow: 0 10px 22px -12px rgba(31, 90, 64, 0.8); opacity: 0; transform: translateY(6px); transition: opacity 0.2s ease, transform 0.2s ease, background-color 0.2s ease; }
.mlk .mlk-card--compact .mlk-card__add{ top: 120px; }
.mlk .mlk-card:hover .mlk-card__add, .mlk .mlk-card__add:focus-visible, .mlk .mlk-card__add.loading, .mlk .mlk-card__add.added{ opacity: 1; transform: none; }
.mlk .mlk-card__add.loading{ color: transparent !important; pointer-events: none; }
.mlk .mlk-card__add.loading::after{ content: ""; position: absolute; left: 50%; top: 50%; width: 16px; height: 16px; margin: -8px 0 0 -8px; border: 2px solid rgba(255, 255, 255, 0.35); border-top-color: #fff; border-radius: 50%; animation: mlk-spin 0.7s linear infinite; }
.mlk .mlk-card__add.added{ background: var(--mlk-gold); color: var(--mlk-ink) !important; }
.mlk .mlk-card .added_to_cart{ display: none !important; }

.mlk .mlk-more{ align-self: center; display: inline-flex; align-items: center; min-height: 48px; margin-top: 14px; padding: 0 26px; border-radius: 14px; background: #fff; border: 1px solid rgba(18, 38, 28, 0.1); color: var(--mlk-ink); font-size: 14px; font-weight: 600; transition: background-color 0.2s ease; }
.mlk .mlk-more:hover{ background: var(--mlk-mist); }
.mlk .mlk-more.is-loading{ opacity: 0.6; pointer-events: none; }
.mlk .mlk-empty{ display: flex; flex-direction: column; align-items: center; gap: 10px; padding: 48px 24px; border-radius: 22px; background: #fff; border: 1px dashed rgba(18, 38, 28, 0.16); text-align: center; color: var(--mlk-muted); }
.mlk .mlk-empty p{ margin: 0; }
.mlk .mlk-empty__icon{ display: inline-flex; align-items: center; justify-content: center; width: 64px; height: 64px; border-radius: 50%; background: #eef2ea; color: var(--mlk-jade); }
.mlk .mlk-empty__title{ font-size: 17px; font-weight: 700; color: var(--mlk-ink); }
.mlk .mlk-empty__actions{ display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; margin-top: 8px; }

/* ---------- Light footer of the shop pages ---------- */
.mlk .mlk-sfoot{ display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 24px; max-width: var(--mlk-max); margin: 88px auto 0; padding: 32px 0; border-top: 1px solid rgba(18, 38, 28, 0.1); }
.mlk .mlk-sfoot__brand{ display: flex; align-items: center; gap: 10px; font-size: 15px; font-weight: 600; }
.mlk .mlk-sfoot__brand img{ width: 40px; height: 40px; object-fit: contain; }
.mlk .mlk-sfoot__links{ display: flex; flex-wrap: wrap; gap: 28px; font-size: 14px; }
.mlk .mlk-sfoot__links a{ color: var(--mlk-muted); }
.mlk .mlk-sfoot__links a:hover{ color: var(--mlk-jade); }
.mlk .mlk-sfoot__tag{ margin: 0; font-size: 13px; color: var(--mlk-muted); }

/* ---------- Product page ---------- */
.mlk .mlk-pdp > .mlk-crumbs{ margin-top: 48px; }
.mlk .mlk-pdp__top{ display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: flex-start; gap: 56px; margin-top: 48px; }
.mlk .mlk-gallery{ display: flex; flex-direction: column; gap: 14px; min-width: 0; }
.mlk .mlk-gallery__stage{ position: relative; overflow: hidden; height: 500px; border-radius: 28px; background: #eef2ea; }
.mlk .mlk-gallery__track{ display: flex; height: 100%; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; overscroll-behavior-x: contain; }
.mlk .mlk-gallery__track::-webkit-scrollbar{ display: none; }
.mlk .mlk-gallery__slide{ position: relative; flex: 0 0 100%; height: 100%; margin: 0; scroll-snap-align: start; }
.mlk .mlk-gallery__slide img{ width: 100%; height: 100%; object-fit: cover; }
.mlk .mlk-gallery__slide--ph{ display: flex; align-items: center; justify-content: center; }
.mlk .mlk-gallery__slide--ph > svg:not(.mlk-octs){ position: relative; height: 40%; width: auto; }
.mlk .mlk-gallery__slide--ph .mlk-octs{ inset: 0; width: 100%; height: 100%; opacity: 0.35; }
.mlk .mlk-gallery__badge{ position: absolute; right: 16px; top: 16px; padding: 2px 12px; border-radius: 999px; background: #fff; border: 1px solid rgba(18, 38, 28, 0.07); color: var(--mlk-jade); font-size: 12px; font-weight: 500; line-height: 1.9; }
.mlk .mlk-gallery__off{ position: absolute; left: 16px; top: 16px; padding: 2px 12px; border-radius: 999px; background: var(--mlk-gold); color: var(--mlk-ink); font-size: 12px; font-weight: 700; line-height: 1.9; }
.mlk .mlk-gallery__dots{ position: absolute; left: 50%; bottom: 14px; display: none; gap: 5px; transform: translateX(-50%); }
.mlk .mlk-gallery__dots i{ width: 4px; height: 4px; border-radius: 999px; background: rgba(18, 38, 28, 0.25); transition: width 0.25s ease, background-color 0.25s ease; }
.mlk .mlk-gallery__dots i.is-active{ width: 16px; background: var(--mlk-jade); }
.mlk .mlk-gallery__thumbs{ display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.mlk .mlk-gallery__thumb{ overflow: hidden; height: 96px; padding: 0; border-radius: 16px; border: 1.5px solid transparent; transition: border-color 0.2s ease; }
.mlk .mlk-gallery__thumb img{ width: 100%; height: 100%; object-fit: cover; }
.mlk .mlk-gallery__thumb.is-active{ border-color: var(--mlk-jade); }

.mlk .mlk-pinfo{ display: flex; flex-direction: column; gap: 24px; min-width: 0; padding-top: 12px; }
.mlk .mlk-pinfo__head{ display: flex; flex-direction: column; gap: 8px; }
.mlk .mlk-pinfo__pill{ align-self: flex-start; padding: 2px 12px; border-radius: 999px; background: #e7efe6; color: var(--mlk-jade); font-size: 12px; font-weight: 500; line-height: 1.9; }
.mlk .mlk-pinfo h1{ font-size: 42px; line-height: 1.4; }
.mlk .mlk-pinfo__rate{ display: inline-flex; align-items: center; gap: 6px; align-self: flex-start; font-size: 13px; color: var(--mlk-muted); }
.mlk .mlk-pinfo__rate b{ color: var(--mlk-ink); }
.mlk .mlk-pinfo__lead{ max-width: 460px; line-height: 2; color: var(--mlk-muted); }
.mlk .mlk-pinfo__lead p{ margin: 0; }
.mlk .mlk-cartform{ display: flex; flex-direction: column; gap: 24px; }
.mlk .mlk-variations{ display: flex; flex-direction: column; gap: 16px; }
.mlk .mlk-varpick{ min-width: 0; margin: 0; padding: 0; border: 0; }
.mlk .mlk-varpick legend{ margin-bottom: 10px; padding: 0; font-size: 14px; font-weight: 600; }
.mlk .mlk-sizes{ display: grid; grid-template-columns: repeat(var(--mlk-n, 4), minmax(0, 1fr)); gap: 10px; }
.mlk .mlk-size{ display: flex; flex-direction: column; align-items: center; justify-content: center; min-height: 68px; padding: 6px; border-radius: 14px; border: 1px solid rgba(18, 38, 28, 0.1); background: #fff; color: var(--mlk-ink); line-height: 1.6; transition: border-color 0.2s ease, background-color 0.2s ease; }
.mlk .mlk-size:hover{ border-color: var(--mlk-jade); }
.mlk .mlk-size__name{ font-size: 15px; font-weight: 500; }
.mlk .mlk-size__sub{ font-size: 12px; color: var(--mlk-muted); }
.mlk .mlk-size.is-on{ border: 1.5px solid var(--mlk-jade); background: #e7efe6; }
.mlk .mlk-size.is-on .mlk-size__name{ font-weight: 600; }
.mlk .mlk-size.is-on .mlk-size__sub{ color: var(--mlk-jade); }
.mlk .mlk-size.is-off{ opacity: 0.4; }
.mlk .mlk-size.is-off .mlk-size__name{ text-decoration: line-through; }
.mlk .mlk-size:focus-visible{ outline: 2px solid var(--mlk-gold); outline-offset: 2px; }
.mlk .mlk-varpick__select{ position: absolute; opacity: 0; width: 1px; height: 1px; pointer-events: none; }
.mlk .mlk-varpick.is-missing legend{ color: #b3261e; }
.mlk .mlk-varpick.is-missing legend::after{ content: " · یک گزینه انتخاب کن"; font-size: 12px; font-weight: 500; }
.mlk .mlk-varpick.is-missing .mlk-size{ border-color: rgba(179, 38, 30, 0.5); animation: mlk-nudge 0.4s ease; }
@keyframes mlk-nudge { 25% { transform: translateX(-4px); } 75% { transform: translateX(4px); } }
.mlk .mlk-reset[style*="hidden"]{ display: none; }
.mlk .mlk-reset{ align-self: flex-start; font-size: 12px; color: var(--mlk-muted); text-decoration: underline; text-underline-offset: 3px; }
.mlk .single_variation:empty{ display: none; }
.mlk .mlk-pdp .single_variation :where(.woocommerce-variation-price, .woocommerce-variation-description){ display: none; }
.mlk .single_variation_wrap{ display: flex; flex-direction: column; gap: 10px; }
.mlk .mlk-varnote{ font-size: 13px; color: var(--mlk-jade); }
.mlk .mlk-varnote p{ margin: 0; }
.mlk .mlk-varnote.is-bad, .mlk .mlk-varnote .out-of-stock{ color: #b3261e; }
.mlk .mlk-pricerow{ display: flex; align-items: baseline; flex-wrap: wrap; gap: 8px; padding-top: 20px; border-top: 1px solid rgba(18, 38, 28, 0.1); }
.mlk .mlk-pricerow__price{ display: inline-flex; align-items: baseline; gap: 8px; color: var(--mlk-gold-ink); }
.mlk .mlk-pricerow__price b{ font-size: 34px; font-weight: 700; line-height: 1.3; }
.mlk .mlk-pricerow__price small{ font-size: 15px; font-weight: 500; }
.mlk .mlk-pricerow__price del{ font-size: 15px; color: #8a968f; }
.mlk .mlk-pricerow__stock{ display: inline-flex; align-items: center; gap: 8px; margin-inline-start: auto; font-size: 13px; color: var(--mlk-jade); }
.mlk .mlk-pricerow__stock i{ width: 7px; height: 7px; border-radius: 50%; background: currentColor; }
.mlk .mlk-pricerow__stock.is-out{ color: #8a968f; }
.mlk .mlk-buyrow{ display: flex; gap: 10px; }
.mlk .mlk-qty{ flex: none; display: flex; align-items: center; gap: 2px; padding: 4px; border-radius: 14px; border: 1px solid rgba(18, 38, 28, 0.1); background: #fff; }
.mlk .mlk-qty button{ width: 44px; height: 44px; padding: 0; border: 0; border-radius: 10px; background: transparent; color: var(--mlk-ink); font-size: 20px; line-height: 1; }
.mlk .mlk-qty button:hover{ background: var(--mlk-mist); }
.mlk .mlk-qty input{ width: 32px; padding: 0; border: 0; background: transparent; color: var(--mlk-ink); font: inherit; font-size: 15px; font-weight: 600; text-align: center; -moz-appearance: textfield; appearance: textfield; }
.mlk .mlk-qty input::-webkit-outer-spin-button, .mlk .mlk-qty input::-webkit-inner-spin-button{ -webkit-appearance: none; margin: 0; }
.mlk .mlk-addbtn{ position: relative; flex: 1; display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 54px; padding: 0 20px; border: 0; border-radius: 14px; background: var(--mlk-jade); color: #fff; font-size: 15px; font-weight: 600; box-shadow: 0 10px 24px -12px rgba(31, 90, 64, 0.7); transition: transform 0.2s ease, background-color 0.2s ease; }
.mlk .mlk-addbtn:hover{ background: #194d36; }
.mlk .mlk-addbtn:active{ transform: scale(0.98); }
.mlk .mlk-addbtn.disabled, .mlk .mlk-addbtn.wc-variation-selection-needed{ opacity: 0.55; }
.mlk .mlk-addbtn--muted{ flex: none; background: #fff; color: var(--mlk-jade); border: 1px solid rgba(18, 38, 28, 0.1); box-shadow: none; }
.mlk .mlk-addbtn.is-loading{ color: transparent; pointer-events: none; }
.mlk .mlk-addbtn.is-loading::after{ content: ""; position: absolute; left: 50%; top: 50%; width: 20px; height: 20px; margin: -10px 0 0 -10px; border: 2px solid rgba(255, 255, 255, 0.35); border-top-color: #fff; border-radius: 50%; animation: mlk-spin 0.7s linear infinite; }
.mlk .mlk-inforows{ display: flex; flex-direction: column; margin: 0; padding: 0; list-style: none; }
.mlk .mlk-inforows li{ border-top: 1px solid rgba(18, 38, 28, 0.08); }
.mlk .mlk-inforows li:last-child{ border-bottom: 1px solid rgba(18, 38, 28, 0.08); }
.mlk .mlk-inforow{ display: flex; align-items: center; gap: 14px; padding: 14px 0; font-size: 14px; color: var(--mlk-ink); }
.mlk .mlk-inforow > .mlk-icon:first-child{ color: var(--mlk-jade); }
.mlk .mlk-inforow > span:not(.mlk-icon){ flex: 1; }
.mlk .mlk-inforows a:hover span{ color: var(--mlk-jade); }

.mlk .mlk-pmore{ display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr); align-items: start; gap: 20px; margin-top: 64px; }
.mlk .mlk-psec{ padding: 28px 32px; border-radius: 22px; background: #fff; border: 1px solid rgba(18, 38, 28, 0.07); }
.mlk .mlk-psec--wide{ grid-column: 1 / -1; }
.mlk .mlk-psec h2{ margin-bottom: 14px; font-size: 22px; line-height: 1.5; }
.mlk .mlk-psec__head{ display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 12px; margin-bottom: 14px; }
.mlk .mlk-psec__head h2{ margin: 0; }
.mlk .mlk-prose{ font-size: 15px; line-height: 2.1; color: #2c3d34; }
.mlk .mlk-prose :where(p, ul, ol){ margin: 0 0 12px; }
.mlk .mlk-prose :where(h2, h3, h4){ margin: 18px 0 6px; font-size: 17px; line-height: 1.6; color: var(--mlk-ink); }
.mlk .mlk-prose ul{ padding: 0; list-style: none; }
.mlk .mlk-prose ul li{ position: relative; padding-inline-start: 18px; }
.mlk .mlk-prose ul li::before{ content: ""; position: absolute; right: 2px; top: 0.9em; width: 6px; height: 6px; border-radius: 50%; background: var(--mlk-gold); }
.mlk .mlk-prose a{ color: var(--mlk-jade); text-decoration: underline; text-underline-offset: 3px; }
.mlk .mlk-prose img{ height: auto; border-radius: 16px; }
.mlk .mlk-specs{ margin: 0; }
.mlk .mlk-specs > div{ display: flex; justify-content: space-between; gap: 16px; padding: 12px 0; border-top: 1px solid rgba(18, 38, 28, 0.08); font-size: 14px; }
.mlk .mlk-specs dt{ color: var(--mlk-muted); }
.mlk .mlk-specs dd{ margin: 0; font-weight: 600; text-align: left; }
.mlk .mlk-stars{ position: relative; display: inline-flex; line-height: 1; vertical-align: middle; font-family: "mlk-woodmart"; font-size: var(--mlk-i, 14px); letter-spacing: 1px; }
.mlk .mlk-stars svg{ flex: none; width: var(--mlk-i, 14px); height: var(--mlk-i, 14px); fill: currentColor; }
.mlk .mlk-stars__base{ display: inline-flex; color: #d8cfb5; white-space: nowrap; }
.mlk .mlk-stars__fill{ position: absolute; top: 0; right: 0; display: inline-flex; overflow: hidden; white-space: nowrap; color: var(--mlk-gold); }
.mlk .mlk-rsum{ display: inline-flex; align-items: center; gap: 8px; margin: 0; font-size: 13px; color: var(--mlk-muted); }
.mlk .mlk-rsum b{ font-size: 22px; color: var(--mlk-ink); }
.mlk .mlk-rlist{ display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.mlk .mlk-review{ padding: 16px 18px; border-radius: 18px; background: #f7f8f4; }
.mlk .mlk-review header{ display: flex; justify-content: space-between; align-items: center; gap: 10px; margin-bottom: 6px; }
.mlk .mlk-review__who{ display: flex; flex-direction: column; line-height: 1.6; }
.mlk .mlk-review__who b{ font-size: 14px; }
.mlk .mlk-review__who small{ font-size: 12px; color: var(--mlk-muted); }
.mlk .mlk-review__text{ font-size: 14px; line-height: 2; color: #2c3d34; }
.mlk .mlk-review__text p{ margin: 0; }
.mlk .mlk-muted{ color: var(--mlk-muted); }
.mlk .mlk-rform{ margin-top: 20px; padding-top: 20px; border-top: 1px solid rgba(18, 38, 28, 0.08); }
.mlk .mlk-rform .comment-respond{ margin: 0; }
.mlk .mlk-rform__title{ margin-bottom: 12px; font-size: 17px; font-weight: 700; }
.mlk .mlk-rform__title small{ display: none; }
.mlk .mlk-rform form{ display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.mlk .mlk-rform form > *{ grid-column: 1 / -1; margin: 0; }
.mlk .mlk-rform .mlk-field:not(.mlk-field--wide){ grid-column: auto; }
.mlk .mlk-field{ display: flex; flex-direction: column; gap: 6px; font-size: 13px; font-weight: 600; }
.mlk .mlk-field small{ font-weight: 400; color: var(--mlk-muted); }
.mlk .mlk-field input, .mlk .mlk-field textarea{ width: 100%; min-height: 44px; padding: 0 12px; border-radius: 12px; border: 1px solid rgba(18, 38, 28, 0.12); background: #fff; color: var(--mlk-ink); font: inherit; font-size: 14px; }
.mlk .mlk-field input:focus, .mlk .mlk-field textarea:focus{ outline: none; border-color: var(--mlk-jade); box-shadow: 0 0 0 3px rgba(31, 90, 64, 0.12); }
.mlk .mlk-field textarea{ min-height: 110px; padding: 10px 12px; line-height: 2; resize: vertical; }
.mlk .mlk-rform .comment-form-cookies-consent{ display: flex; align-items: center; gap: 8px; font-size: 12px; color: var(--mlk-muted); }
.mlk .mlk-rform .form-submit{ margin: 0; }
.mlk .mlk-rate-in{ margin: 0; padding: 0; border: 0; min-width: 0; }
.mlk .mlk-rate-in legend{ margin-bottom: 2px; padding: 0; font-size: 13px; font-weight: 600; }
.mlk .mlk-rate-in__stars{ display: flex; flex-direction: row-reverse; justify-content: flex-end; gap: 2px; }
.mlk .mlk-rate-in input{ position: absolute; opacity: 0; width: 1px; height: 1px; }
.mlk .mlk-rate-in label{ display: inline-flex; padding: 2px; color: #d8cfb5; cursor: pointer; transition: color 0.15s ease, transform 0.15s ease; }
.mlk .mlk-rate-in label:hover, .mlk .mlk-rate-in label:hover ~ label, .mlk .mlk-rate-in input:checked ~ label{ color: var(--mlk-gold); }
.mlk .mlk-rate-in label:hover{ transform: scale(1.12); }
.mlk .mlk-rate-in input:focus-visible + label{ outline: 2px solid var(--mlk-gold); outline-offset: 2px; border-radius: 6px; }

.mlk .mlk-related{ display: flex; flex-direction: column; gap: 28px; margin-top: 56px; }
.mlk .mlk-related h2{ font-size: 28px; line-height: 1.4; }
.mlk .mlk-buybar{ display: none; }

@media (max-width: 1100px) {
	.mlk .mlk-needs{ grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.mlk .mlk-grid{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.mlk .mlk-grid--4{ grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.mlk .mlk-pdp__top{ gap: 32px; }
	.mlk .mlk-pmore{ grid-template-columns: 1fr; }
	.mlk .mlk-rlist{ grid-template-columns: 1fr; }
}

/* Filters become a sheet ("فیلتر و مرتب‌سازی") below desktop width. */
@media (max-width: 960px) {
	.mlk .mlk-shopbody{ display: block; }
	.mlk .mlk-filters, body.admin-bar .mlk-filters { position: fixed; top: 0; right: 0; bottom: 0; z-index: 450; width: min(380px, 92vw); max-height: none; gap: 0; padding: 0; overflow-y: auto; background: #fff; box-shadow: -30px 0 60px -30px rgba(0, 0, 0, 0.45); transform: translateX(104%); visibility: hidden; transition: transform 0.32s cubic-bezier(0.2, 0.8, 0.2, 1), visibility 0.32s; }
	.mlk .mlk-filters.is-open{ transform: none; visibility: visible; }
	.mlk .mlk-filters__head{ position: sticky; top: 0; z-index: 2; display: flex; justify-content: space-between; align-items: center; padding: 10px 12px 10px 20px; background: #fff; border-bottom: 1px solid rgba(18, 38, 28, 0.08); font-size: 16px; font-weight: 700; }
	.mlk .mlk-filters__head p{ margin: 0; }
	.mlk .mlk-ff{ padding: 4px 20px 20px; border: 0; border-radius: 0; box-shadow: none; }
	.mlk .mlk-ff__top{ display: none; }
	.mlk .mlk-ff__actions{ position: sticky; bottom: 0; z-index: 2; display: flex; gap: 8px; margin: 8px -20px -20px; padding: 12px 20px calc(12px + env(safe-area-inset-bottom)); background: #fff; border-top: 1px solid rgba(18, 38, 28, 0.08); }
	.mlk .mlk-ff__actions .mlk-btn:first-child{ flex: 1; }
	.mlk .mlk-helpcard{ display: none; }
	.mlk .mlk-rbar__filter{ display: inline-flex !important; }
}

@media (max-width: 820px) {
	.mlk .mlk-strip{ display: none; }
	.mlk .mlk-strip + .mlk-header, .mlk .mlk-header:not(.mlk-header--overlay){ top: 8px; margin: 12px -4px 0; }
	.mlk .mlk-header:not(.mlk-header--overlay) .mlk-nav, .mlk .mlk-header:not(.mlk-header--overlay).is-stuck .mlk-nav{ height: 58px; padding: 6px 8px 6px 6px; border-radius: 16px; border: 1px solid rgba(18, 38, 28, 0.08); background: rgba(255, 255, 255, 0.86); box-shadow: 0 10px 24px -20px rgba(12, 36, 25, 0.5); }
	.mlk .mlk-header:not(.mlk-header--overlay) .mlk-nav__burger{ order: 9; }
	.mlk .mlk-header:not(.mlk-header--overlay) .mlk-nav__user{ display: inline-flex !important; }
	.mlk .mlk-header.has-back .mlk-brand{ display: none; }
	.mlk .mlk-header.has-back .mlk-nav__back{ display: inline-flex !important; align-items: center; gap: 2px; font-size: 15px; font-weight: 600; }
	.mlk .mlk-header.has-back .mlk-nav__burger{ display: none; }

	.mlk .mlk-shead{ margin-top: 24px; padding: 0 4px; }
	.mlk .mlk-shead h1{ font-size: 26px; line-height: 1.5; }
	.mlk .mlk-shead__text > p{ font-size: 14px; }
	.mlk .mlk-shead .mlk-crumbs ol{ font-size: 12px; }
	.mlk .mlk-shead__count{ display: none; }
	.mlk .mlk-needs{ display: flex; gap: 8px; margin: 16px calc(var(--mlk-gutter) * -1) 0; padding: 0 var(--mlk-gutter); overflow-x: auto; scrollbar-width: none; }
	.mlk .mlk-needs::-webkit-scrollbar{ display: none; }
	.mlk .mlk-need{ flex: none; min-height: 44px; padding: 0 18px; border-radius: 999px; border-color: rgba(18, 38, 28, 0.1); font-size: 13px; }
	.mlk .mlk-need:hover{ transform: none; box-shadow: none; }
	.mlk .mlk-need__icon, .mlk .mlk-need__text small{ display: none; }
	.mlk .mlk-need__text strong{ font-size: 13px; font-weight: 500; }
	.mlk .mlk-shopbody{ margin-top: 14px; }
	.mlk .mlk-results{ gap: 14px; }
	.mlk .mlk-rbar__filter{ min-height: 44px; padding: 0 14px; background: #fff; border: 1px solid rgba(18, 38, 28, 0.1); font-size: 13px; }
	.mlk .mlk-grid, .mlk .mlk-grid--4{ grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
	.mlk .mlk-card{ gap: 8px; padding: 8px 8px 12px; border-radius: 18px; box-shadow: none; }
	.mlk .mlk-card:hover{ transform: none; }
	.mlk .mlk-card__tile, .mlk .mlk-card--compact .mlk-card__tile{ height: 124px; border-radius: 12px; }
	.mlk .mlk-card__text{ padding: 0 4px; }
	.mlk .mlk-card__need{ font-size: 11px; }
	.mlk .mlk-card__title{ font-size: 14px; }
	.mlk .mlk-card__price{ font-size: 13px; }
	.mlk .mlk-card__price del, .mlk .mlk-card__stock{ display: none; }
	.mlk .mlk-card__badge, .mlk .mlk-card__off{ top: 6px; padding: 0 8px; font-size: 11px; }
	.mlk .mlk-card__badge{ right: 6px; }
	.mlk .mlk-card__off{ left: 6px; }
	.mlk .mlk-card__add{ display: none; }
	.mlk .mlk-more{ margin-top: 6px; min-height: 44px; }
	.mlk .mlk-sfoot{ flex-direction: column; align-items: flex-start; gap: 10px; margin-top: 28px; padding: 22px 4px 24px; }
	.mlk .mlk-sfoot__brand img{ width: 34px; height: 34px; }
	.mlk .mlk-sfoot__brand{ font-size: 14px; }
	.mlk .mlk-sfoot__links{ order: 3; gap: 22px; font-size: 13px; }
	.mlk .mlk-sfoot__links a{ line-height: 44px; }

	.mlk .mlk-pdp{ padding-bottom: 96px; }
	.mlk .mlk-pdp > .mlk-crumbs{ display: none; }
	.mlk .mlk-pdp__top{ grid-template-columns: 1fr; gap: 0; margin-top: 14px; }
	.mlk .mlk-gallery__stage{ height: 320px; border-radius: 22px; }
	.mlk .mlk-gallery__thumbs{ display: none; }
	.mlk .mlk-gallery__dots{ display: flex; }
	.mlk .mlk-gallery__badge{ right: 12px; top: 12px; border: 0; }
	.mlk .mlk-pinfo{ gap: 18px; padding: 20px 4px 0; }
	.mlk .mlk-pinfo__head{ gap: 6px; }
	.mlk .mlk-pinfo__pill{ padding: 0; background: none; color: var(--mlk-gold-ink); font-weight: 400; }
	.mlk .mlk-pinfo h1{ font-size: 26px; line-height: 1.5; }
	.mlk .mlk-pinfo__lead{ font-size: 14px; }
	.mlk .mlk-varpick legend{ margin-bottom: 8px; font-size: 13px; }
	.mlk .mlk-sizes{ gap: 8px; }
	.mlk .mlk-size{ min-height: 60px; border-radius: 12px; }
	.mlk .mlk-size__name{ font-size: 14px; }
	.mlk .mlk-size__sub{ font-size: 11px; }
	.mlk .mlk-pricerow, .mlk .mlk-buyrow{ display: none; }
	.mlk .mlk-inforows{ padding: 4px 16px; border-radius: 18px; background: #fff; border: 1px solid rgba(18, 38, 28, 0.08); }
	.mlk .mlk-inforows li{ border-top: 0; }
	.mlk .mlk-inforows li:last-child{ border-bottom: 0; }
	.mlk .mlk-inforows li + li{ border-top: 1px solid rgba(18, 38, 28, 0.07); }
	.mlk .mlk-inforow{ min-height: 48px; padding: 0; font-size: 13px; gap: 12px; }
	.mlk .mlk-pmore{ margin-top: 28px; gap: 12px; }
	.mlk .mlk-psec{ padding: 20px 18px; border-radius: 18px; }
	.mlk .mlk-psec h2{ font-size: 18px; }
	.mlk .mlk-rform form{ grid-template-columns: 1fr; }
	.mlk .mlk-related{ gap: 16px; margin-top: 36px; }
	.mlk .mlk-related h2{ font-size: 21px; }
	.mlk .mlk-buybar{ position: fixed; left: 0; right: 0; bottom: var(--mlk-tb, 0px); z-index: 70; display: flex; align-items: center; gap: 14px; padding: 12px 16px calc(16px + env(safe-area-inset-bottom)); background: rgba(255, 255, 255, 0.92); border-top: 1px solid rgba(18, 38, 28, 0.08); -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px); }
	.mlk .mlk-buybar__info{ display: flex; flex-direction: column; line-height: 1.5; }
	.mlk .mlk-buybar__info > small{ font-size: 11px; color: var(--mlk-muted); }
	.mlk .mlk-buybar__info b{ font-size: 20px; font-weight: 700; }
	.mlk .mlk-buybar__info span small{ font-size: 12px; color: var(--mlk-muted); }
	.mlk .mlk-buybar .mlk-addbtn{ min-height: 52px; padding: 0 16px; font-size: 15px; }
}

/* =========================================================================
   Cart & checkout — canvas board "سبد خرید و پرداخت"
   ========================================================================= */
.mlk .mlk-co{ max-width: var(--mlk-max); margin: 0 auto; }
.mlk .mlk-cohead{ display: flex; justify-content: space-between; align-items: flex-end; flex-wrap: wrap; gap: 20px 32px; margin-top: 48px; }
.mlk .mlk-cohead__text{ display: flex; flex-direction: column; gap: 6px; }
.mlk .mlk-coback{ display: inline-flex; align-items: center; gap: 6px; align-self: flex-start; font-size: 13px; color: var(--mlk-muted); }
.mlk .mlk-coback:hover{ color: var(--mlk-jade); }
.mlk .mlk-cohead h1{ font-size: 42px; line-height: 1.4; }
.mlk .mlk-steps{ display: flex; align-items: center; gap: 0; margin: 0 0 8px; padding: 0; list-style: none; }
.mlk .mlk-steps li{ display: flex; align-items: center; gap: 10px; font-size: 13px; color: var(--mlk-muted); }
.mlk .mlk-steps li + li::before{ content: ""; width: 72px; height: 1px; margin: 0 16px; background: rgba(18, 38, 28, 0.15); }
.mlk .mlk-steps__dot{ display: inline-flex; align-items: center; justify-content: center; width: 30px; height: 30px; border-radius: 50%; border: 1.5px solid rgba(18, 38, 28, 0.2); background: #fff; font-size: 13px; font-weight: 600; }
.mlk .mlk-steps li.is-done .mlk-steps__dot{ border-color: var(--mlk-jade); background: var(--mlk-jade); color: #fff; }
.mlk .mlk-steps li.is-done{ color: var(--mlk-ink); font-weight: 600; }
.mlk .mlk-steps li.is-done + li::before{ background: var(--mlk-jade); }
.mlk .mlk-steps li.is-on .mlk-steps__dot{ border-color: var(--mlk-jade); color: var(--mlk-jade); }
.mlk .mlk-steps li.is-on{ color: var(--mlk-ink); font-weight: 700; }
.mlk .mlk-co__page{ margin-top: 32px; }
.mlk .mlk-co__page > .woocommerce{ display: block; }

.mlk .mlk-cogrid{ display: grid; grid-template-columns: minmax(0, 1fr) 300px; align-items: start; gap: 24px; }
.mlk .mlk-co__main{ display: flex; flex-direction: column; gap: 20px; min-width: 0; }
.mlk .mlk-co__side{ position: sticky; top: 96px; display: flex; flex-direction: column; gap: 16px; min-width: 0; }
body.admin-bar .mlk-co__side { top: 128px; }
.mlk .mlk-cocard{ padding: 22px 24px; border-radius: 22px; background: #fff; border: 1px solid rgba(18, 38, 28, 0.07); box-shadow: 0 1px 2px rgba(18, 38, 28, 0.03), 0 14px 30px -22px rgba(18, 38, 28, 0.25); }
.mlk .mlk-cocard__head{ display: flex; justify-content: space-between; align-items: baseline; flex-wrap: wrap; gap: 8px; margin-bottom: 16px; }
.mlk .mlk-cocard__head h2, .mlk .mlk-summary__title{ margin: 0; font-size: 19px; font-weight: 700; line-height: 1.5; }
.mlk .mlk-cocard__head span{ font-size: 12px; color: var(--mlk-muted); }

/* Items */
.mlk .mlk-coitems{ padding-block: 8px; }
.mlk .mlk-coitem{ display: grid; grid-template-columns: 52px minmax(0, 1fr) auto auto 32px; align-items: center; gap: 14px; padding: 14px 0; }
.mlk .mlk-coitem + .mlk-coitem{ border-top: 1px solid rgba(18, 38, 28, 0.08); }
.mlk .mlk-coitem__thumb{ display: block; width: 52px; height: 52px; }
.mlk .mlk-coitem__thumb img, .mlk .mlk-coitem__ph{ display: flex; align-items: center; justify-content: center; width: 52px; height: 52px; border-radius: 12px; object-fit: cover; background: #eef2ea; }
.mlk .mlk-coitem__ph svg{ width: 26px; height: 26px; }
.mlk .mlk-coitem__ph.is-dark{ background: var(--mlk-ink); }
.mlk .mlk-coitem__text{ display: flex; flex-direction: column; min-width: 0; line-height: 1.6; }
.mlk .mlk-coitem__kind{ font-size: 12px; color: var(--mlk-gold-ink); }
.mlk .mlk-coitem__name{ overflow: hidden; font-size: 16px; font-weight: 700; text-overflow: ellipsis; white-space: nowrap; }
.mlk a.mlk-coitem__name:hover{ color: var(--mlk-jade); }
.mlk .mlk-coitem__sub{ font-size: 12px; color: var(--mlk-muted); }
.mlk .mlk-coitem__price{ font-size: 14px; white-space: nowrap; }
.mlk .mlk-coitem__price b{ font-weight: 600; }
.mlk .mlk-coitem__price small{ font-size: 11px; color: var(--mlk-muted); }
.mlk .mlk-coitem__remove a{ display: inline-flex; align-items: center; justify-content: center; width: 32px; height: 32px; border-radius: 10px; color: var(--mlk-muted); transition: background-color 0.2s ease, color 0.2s ease; }
.mlk .mlk-coitem__remove a:hover{ background: #fbeceb; color: #b3261e; }
.mlk .mlk-coitems > .mlk-coitem:only-of-type .mlk-coitem__qty:empty{ display: none; }
.mlk .mlk-coitem__qty:empty{ display: none; }
.mlk .mlk-qty--sm{ padding: 2px; border-radius: 12px; }
.mlk .mlk-qty--sm button{ width: 34px; height: 34px; font-size: 18px; }
.mlk .mlk-qty--sm input{ width: 26px; font-size: 14px; }
.mlk .mlk-coitems__foot{ display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 12px 0 6px; border-top: 1px solid rgba(18, 38, 28, 0.08); }
.mlk .mlk-coupdate{ min-height: 38px; padding: 0 14px; font-size: 13px; }
.mlk .mlk-coupdate[disabled]{ opacity: 0.45; cursor: default; }

/* Fields */
.mlk .mlk-cofields .woocommerce-billing-fields > h3, .mlk .mlk-cofields .woocommerce-additional-fields > h3{ display: none; }
.mlk .mlk-cofields :where(.woocommerce-billing-fields__field-wrapper, .woocommerce-shipping-fields__field-wrapper, .woocommerce-additional-fields__field-wrapper){ display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px 16px; }
.mlk .mlk-co .form-row{ display: flex; flex-direction: column; gap: 6px; float: none; width: auto; margin: 0; padding: 0; }
.mlk .mlk-co .form-row-wide, .mlk .mlk-co .form-row.notes, .mlk .mlk-co #billing_address_1_field{ grid-column: 1 / -1; }
.mlk .mlk-co .form-row label{ font-size: 13px; font-weight: 600; color: var(--mlk-ink); line-height: 1.6; }
.mlk .mlk-co .form-row label .optional{ font-weight: 400; color: var(--mlk-muted); }
.mlk .mlk-co .form-row .required{ color: #b3261e; text-decoration: none; border: 0; }
.mlk .mlk-co .form-row :where(input.input-text, textarea, select), .mlk .mlk-coupon input{ width: 100%; min-height: 48px; padding: 0 14px; border-radius: 12px; border: 1px solid rgba(18, 38, 28, 0.14); background: #fff; color: var(--mlk-ink); font: inherit; font-size: 14px; transition: border-color 0.2s ease, box-shadow 0.2s ease; }
.mlk .mlk-co .form-row textarea{ min-height: 96px; padding: 12px 14px; line-height: 2; }
.mlk .mlk-co .form-row select{ -webkit-appearance: none; appearance: none; padding-left: 36px; background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2312261c' stroke-width='2.4' stroke-linecap='round'%3E%3Cpath d='M6 9.5l6 6 6-6'/%3E%3C/svg%3E") no-repeat left 14px center; }
.mlk .mlk-co .form-row :where(input.input-text, textarea, select):focus, .mlk .mlk-coupon input:focus{ outline: none; border-color: var(--mlk-jade); box-shadow: 0 0 0 3px rgba(31, 90, 64, 0.12); }
.mlk .mlk-co .form-row ::placeholder, .mlk .mlk-coupon input::placeholder{ color: #9aa59f; }
.mlk .mlk-co .woocommerce-invalid :where(input.input-text, select){ border-color: #b3261e; }
.mlk .mlk-co .woocommerce-validated :where(input.input-text, select){ border-color: rgba(31, 90, 64, 0.45); }
.mlk .mlk-co .mlk-hidden-field, .mlk .mlk-co .woocommerce-shipping-fields:empty{ display: none !important; }
.mlk .mlk-co .woocommerce-account-fields, .mlk .mlk-co .woocommerce-shipping-fields, .mlk .mlk-co .woocommerce-additional-fields{ margin-top: 16px; }
.mlk .mlk-co :where(#ship-to-different-address, .create-account) label{ display: flex; align-items: center; gap: 8px; font-size: 14px; font-weight: 600; cursor: pointer; }
.mlk .mlk-co input[type="checkbox"]{ width: 18px; height: 18px; margin: 0; accent-color: var(--mlk-jade); }

/* Payment methods: cards side by side, the chosen method's box below them. */
.mlk .mlk-paylist{ display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin: 0; padding: 0; list-style: none; }
.mlk .mlk-payopt{ display: contents; }
.mlk .mlk-payopt > input{ position: absolute; opacity: 0; width: 1px; height: 1px; }
.mlk .mlk-payopt__card{ order: 1; display: flex; align-items: center; gap: 12px; min-height: 76px; padding: 14px 16px; border-radius: 16px; border: 1px solid rgba(18, 38, 28, 0.12); background: #fff; cursor: pointer; transition: border-color 0.2s ease, background-color 0.2s ease; }
.mlk .mlk-payopt__card:hover{ border-color: rgba(31, 90, 64, 0.5); }
.mlk .mlk-payopt > input:checked + .mlk-payopt__card{ border: 1.5px solid var(--mlk-jade); background: #eef4ee; }
.mlk .mlk-payopt > input:focus-visible + .mlk-payopt__card{ outline: 2px solid var(--mlk-gold); outline-offset: 2px; }
.mlk .mlk-payopt__radio{ flex: none; width: 20px; height: 20px; border-radius: 50%; border: 1.5px solid rgba(18, 38, 28, 0.3); background: #fff; }
.mlk .mlk-payopt > input:checked + .mlk-payopt__card .mlk-payopt__radio{ border-color: var(--mlk-jade); box-shadow: inset 0 0 0 4px #fff; background: var(--mlk-jade); }
.mlk .mlk-payopt__text{ flex: 1; min-width: 0; display: flex; flex-direction: column; line-height: 1.6; }
.mlk .mlk-payopt__text b{ font-size: 15px; font-weight: 700; }
.mlk .mlk-payopt__text small{ font-size: 12px; color: var(--mlk-muted); }
.mlk .mlk-payopt__icon{ flex: none; color: var(--mlk-jade); }
.mlk .mlk-paybox{ order: 2; grid-column: 1 / -1; padding: 16px 18px; border-radius: 16px; background: #f3f5f0; font-size: 13px; line-height: 2; color: #33463c; }
.mlk .mlk-paybox p{ margin: 0 0 8px; }
.mlk .mlk-paybox p:last-child{ margin: 0; }
.mlk .mlk-paybox :where(input[type="file"]){ width: 100%; padding: 18px; border-radius: 14px; border: 1.5px dashed rgba(31, 90, 64, 0.4); background: #fff; font: inherit; font-size: 13px; }
.mlk .mlk-paylist__none{ grid-column: 1 / -1; }

/* Summary */
.mlk .mlk-summary{ display: flex; flex-direction: column; gap: 14px; }
.mlk .mlk-summary__rows{ display: flex; flex-direction: column; gap: 12px; }
.mlk .mlk-summary__rows > p{ display: flex; justify-content: space-between; align-items: baseline; gap: 10px; margin: 0; font-size: 14px; color: var(--mlk-muted); }
.mlk .mlk-summary__rows > p b{ font-weight: 600; color: var(--mlk-ink); white-space: nowrap; }
.mlk .mlk-summary__rows > p small{ font-size: 11px; color: var(--mlk-muted); }
.mlk .mlk-summary__rows .is-discount b{ color: var(--mlk-jade); }
.mlk .mlk-summary__rows .is-discount a{ margin-inline-start: 4px; font-size: 12px; color: #b3261e; }
.mlk .mlk-summary__note{ font-size: 12px; color: var(--mlk-muted); }
.mlk .mlk-ship{ display: flex; flex-direction: column; gap: 8px; font-size: 14px; color: var(--mlk-muted); }
.mlk .mlk-ship__one{ color: var(--mlk-ink); }
.mlk .mlk-ship__one b{ font-weight: 600; }
.mlk .mlk-ship__list{ display: flex; flex-direction: column; gap: 6px; margin: 0; padding: 0; list-style: none; }
.mlk .mlk-ship__opt{ position: relative; display: flex; align-items: center; gap: 10px; min-height: 44px; padding: 0 12px; border-radius: 12px; border: 1px solid rgba(18, 38, 28, 0.1); color: var(--mlk-ink); font-size: 13px; cursor: pointer; }
.mlk .mlk-ship__opt input{ position: absolute; opacity: 0; width: 1px; height: 1px; }
.mlk .mlk-ship__dot{ flex: none; width: 16px; height: 16px; border-radius: 50%; border: 1.5px solid rgba(18, 38, 28, 0.3); }
.mlk .mlk-ship__name{ flex: 1; }
.mlk .mlk-ship__opt b{ font-weight: 600; }
.mlk .mlk-ship__opt:has(input:checked){ border-color: var(--mlk-jade); background: #eef4ee; }
.mlk .mlk-ship__opt input:checked + .mlk-ship__dot{ border-color: var(--mlk-jade); background: var(--mlk-jade); box-shadow: inset 0 0 0 3px #fff; }
.mlk .mlk-ship__opt input:focus-visible + .mlk-ship__dot{ outline: 2px solid var(--mlk-gold); outline-offset: 2px; }
.mlk .mlk-coupon{ display: flex; gap: 8px; }
.mlk .mlk-coupon input{ flex: 1; min-width: 0; min-height: 44px; }
.mlk .mlk-coupon .mlk-btn{ flex: none; min-height: 44px; padding: 0 16px; }
.mlk .mlk-coupon__msg{ margin: -6px 0 0; font-size: 12px; }
.mlk .mlk-coupon__msg:empty{ display: none; }
.mlk .mlk-coupon__msg.is-bad{ color: #b3261e; }
.mlk .mlk-coupon__msg.is-ok{ color: var(--mlk-jade); }
.mlk .mlk-summary__total{ display: flex; align-items: baseline; gap: 6px; margin: 0; padding-top: 14px; border-top: 1px solid rgba(18, 38, 28, 0.1); font-size: 14px; color: var(--mlk-muted) !important; }
.mlk .mlk-summary__total span{ flex: 1; }
.mlk .mlk-summary__total b{ font-size: 30px; font-weight: 700; line-height: 1.3; color: var(--mlk-ink); }
.mlk .mlk-summary__total small{ font-size: 13px !important; }
.mlk .mlk-addbtn--block{ width: 100%; flex: none; }
.mlk .mlk-placeorder{ display: flex; flex-direction: column; gap: 10px; }
.mlk .mlk-placeorder__note{ display: flex; justify-content: center; align-items: center; gap: 6px; margin: 0; font-size: 12px; color: var(--mlk-muted); text-align: center; }
.mlk .mlk-co .woocommerce-terms-and-conditions-wrapper{ font-size: 12px; color: var(--mlk-muted); }
.mlk .mlk-co .woocommerce-terms-and-conditions-wrapper :where(p, label){ margin: 0; }
.mlk .mlk-co .woocommerce-privacy-policy-text p{ margin: 0; font-size: 11px; line-height: 1.9; }
.mlk .mlk-cotrust{ display: flex; flex-direction: column; gap: 10px; margin: 0; padding: 4px 8px; list-style: none; font-size: 13px; color: var(--mlk-muted); }
.mlk .mlk-cotrust li{ display: flex; align-items: center; gap: 10px; }
.mlk .mlk-cotrust .mlk-icon{ color: var(--mlk-jade); }
.mlk .mlk-cobar{ display: none; }

/* WooCommerce notices and the login reminder on these pages */
.mlk .mlk-co :where(.woocommerce-error, .woocommerce-message, .woocommerce-info){ display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 16px; margin: 0 0 16px; padding: 14px 18px; border-radius: 16px; list-style: none; background: var(--mlk-jade-tint); color: var(--mlk-jade); font-size: 14px; }
.mlk .mlk-co .woocommerce-error{ flex-direction: column; align-items: flex-start; background: #fbeceb; color: #8c1d18; }
.mlk .mlk-co .woocommerce-error li{ margin: 0; }
.mlk .mlk-co .woocommerce-info{ background: var(--mlk-sand); color: #5f4a14; }
.mlk .mlk-co :where(.woocommerce-error, .woocommerce-message, .woocommerce-info) a:not(.button){ font-weight: 600; text-decoration: underline; text-underline-offset: 3px; }
.mlk .mlk-co :where(.woocommerce-message, .woocommerce-info) .button{ display: inline-flex; align-items: center; min-height: 36px; padding: 0 14px; border-radius: 10px; background: var(--mlk-ink); color: #fff; font-size: 13px; }
.mlk .mlk-co .woocommerce-NoticeGroup{ grid-column: 1 / -1; }
.mlk .mlk-co form.woocommerce-form-login{ margin: 0 0 20px; padding: 20px 24px; border-radius: 22px; background: #fff; border: 1px solid rgba(18, 38, 28, 0.07); }
.mlk .mlk-co form.woocommerce-form-login .button{ min-height: 44px; padding: 0 20px; border: 0; border-radius: 12px; background: var(--mlk-jade); color: #fff; font: inherit; font-weight: 600; }
.mlk .mlk-co .blockUI.blockOverlay{ border-radius: 22px; }

/* Empty cart + order received */
.mlk .mlk-coempty, .mlk .mlk-thanks__hero{ display: flex; flex-direction: column; align-items: center; gap: 10px; padding: 48px 24px; text-align: center; color: var(--mlk-muted); }
.mlk .mlk-coempty p, .mlk .mlk-thanks__hero p{ margin: 0; max-width: 460px; line-height: 2; }
.mlk .mlk-coempty__icon, .mlk .mlk-thanks__icon{ display: inline-flex; align-items: center; justify-content: center; width: 72px; height: 72px; margin-bottom: 4px; border-radius: 50%; background: var(--mlk-sand); color: var(--mlk-gold-ink); }
.mlk .mlk-coempty__title, .mlk .mlk-thanks__hero h2{ font-size: 20px; font-weight: 700; color: var(--mlk-ink); }
.mlk .mlk-coempty__actions{ display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin-top: 8px; }
.mlk .mlk-thanks{ display: flex; flex-direction: column; gap: 20px; }
.mlk .mlk-thanks__icon{ background: var(--mlk-jade); color: #fff; box-shadow: 0 0 0 8px var(--mlk-jade-tint); }
.mlk .mlk-thanks__hero.is-failed .mlk-thanks__icon{ background: #b3261e; box-shadow: 0 0 0 8px #fbeceb; }
.mlk .mlk-thanks__facts{ display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; width: 100%; max-width: 760px; margin: 10px 0 0; padding: 0; list-style: none; }
.mlk .mlk-thanks__facts li{ display: flex; flex-direction: column; gap: 2px; padding: 12px; border-radius: 14px; background: #f3f5f0; font-size: 12px; line-height: 1.6; }
.mlk .mlk-thanks__facts b{ font-size: 14px; color: var(--mlk-ink); }
.mlk .mlk-thanks__details{ font-size: 14px; }
.mlk .mlk-thanks__details h2{ margin: 0 0 12px; font-size: 18px; font-weight: 700; }
.mlk .mlk-thanks__details table{ width: 100%; border-collapse: collapse; }
.mlk .mlk-thanks__details :where(th, td){ padding: 10px 0; border-bottom: 1px solid rgba(18, 38, 28, 0.08); text-align: right; font-weight: 400; }
.mlk .mlk-thanks__details tfoot th{ color: var(--mlk-muted); }
.mlk .mlk-thanks__details tfoot tr:last-child :where(th, td){ border: 0; font-weight: 700; }
.mlk .mlk-thanks__details address{ padding: 14px; border-radius: 14px; background: #f3f5f0; font-style: normal; line-height: 2; }
.mlk .mlk-thanks__details :where(.woocommerce-customer-details, .woocommerce-order-downloads){ margin-top: 20px; }

@media (max-width: 960px) {
	.mlk .mlk-cogrid{ grid-template-columns: 1fr; }
	.mlk .mlk-co__side{ position: static; }
	.mlk .mlk-thanks__facts{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 820px) {
	.mlk .mlk-co{ padding-bottom: 24px; }
	.mlk .mlk-cohead{ margin-top: 16px; gap: 0; }
	.mlk .mlk-cohead__text{ display: none; }
	.mlk .mlk-steps{ width: 100%; justify-content: space-between; margin: 0; padding: 0 4px; }
	.mlk .mlk-steps li{ gap: 6px; font-size: 12px; }
	.mlk .mlk-steps li + li::before{ flex: 1; width: auto; min-width: 16px; margin: 0 8px; }
	.mlk .mlk-steps li{ flex: 1 1 auto; }
	.mlk .mlk-steps li:first-child{ flex: none; }
	.mlk .mlk-steps__dot{ width: 26px; height: 26px; font-size: 12px; }
	.mlk .mlk-co__page{ margin-top: 18px; }
	.mlk .mlk-cogrid, .mlk .mlk-co__main{ gap: 12px; }
	.mlk .mlk-cocard{ padding: 18px; border-radius: 20px; box-shadow: none; }
	.mlk .mlk-coitems{ padding-block: 4px; }
	.mlk .mlk-coitem{ grid-template-columns: 52px minmax(0, 1fr) auto; grid-template-areas: "t x p" "t x r"; gap: 4px 12px; }
	.mlk .mlk-coitem__thumb{ grid-area: t; }
	.mlk .mlk-coitem__text{ grid-area: x; }
	.mlk .mlk-coitem__price{ grid-area: p; justify-self: end; font-size: 13px; }
	.mlk .mlk-coitem__remove{ grid-area: r; justify-self: end; }
	.mlk .mlk-coitem__qty{ grid-column: 2 / -1; }
	.mlk .mlk-coitem__name{ font-size: 15px; white-space: normal; }
	.mlk .mlk-cofields :where(.woocommerce-billing-fields__field-wrapper, .woocommerce-shipping-fields__field-wrapper){ grid-template-columns: 1fr; }
	.mlk .mlk-paylist{ grid-template-columns: 1fr; }
	.mlk .mlk-co--step2 .mlk-placeorder{ display: none; }
	.mlk .mlk-co--step2 .mlk-cotrust{ display: none; }
	.mlk .mlk-cobar{ position: fixed; left: 0; right: 0; bottom: var(--mlk-tb, 0px); z-index: 70; display: flex; align-items: center; gap: 14px; padding: 12px 16px calc(14px + env(safe-area-inset-bottom)); background: rgba(255, 255, 255, 0.94); border-top: 1px solid rgba(18, 38, 28, 0.08); -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px); }
	.mlk .mlk-cobar__info{ display: flex; flex-direction: column; line-height: 1.5; }
	.mlk .mlk-cobar__info > small{ font-size: 11px; color: var(--mlk-muted); }
	.mlk .mlk-cobar__info b{ font-size: 20px; font-weight: 700; }
	.mlk .mlk-cobar__info span small{ font-size: 12px; color: var(--mlk-muted); }
	.mlk .mlk-cobar .mlk-addbtn{ min-height: 52px; }
	.mlk .mlk-co--step2{ padding-bottom: 96px; }
	.mlk .mlk-thanks__hero{ padding: 32px 18px; }
}

/* =========================================================================
   Courses — canvas boards "دوره‌ها" and "صفحه‌ی دوره"
   ========================================================================= */
.mlk .mlk-courses-page, .mlk .mlk-cpage{ max-width: var(--mlk-max); margin: 0 auto; }
.mlk .mlk-btn--outline{ background: #fff; border-color: rgba(18, 38, 28, 0.12); color: var(--mlk-ink); }
.mlk .mlk-btn--outline:hover{ background: var(--mlk-mist); }

/* List: chips + sort */
.mlk .mlk-cbar{ display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 16px; margin-top: 40px; }
.mlk .mlk-cchips{ display: flex; flex-wrap: wrap; gap: 8px; }
.mlk .mlk-cchip{ min-height: 44px; padding: 0 20px; border-radius: 999px; border: 1px solid rgba(18, 38, 28, 0.1); background: #fff; color: var(--mlk-ink); font-size: 14px; font-weight: 500; transition: background-color 0.2s ease, color 0.2s ease; }
.mlk .mlk-cchip:hover{ border-color: rgba(31, 90, 64, 0.4); }
.mlk .mlk-cchip.is-on{ background: var(--mlk-ink); border-color: var(--mlk-ink); color: #fff; font-weight: 600; }
.mlk .mlk-csort{ display: inline-flex; align-items: center; gap: 6px; min-height: 44px; padding: 0 14px; border-radius: 12px; border: 1px solid rgba(18, 38, 28, 0.1); background: #fff; font-size: 14px; color: var(--mlk-ink); cursor: pointer; }
.mlk .mlk-csort .mlk-icon{ color: var(--mlk-muted); }
.mlk .mlk-csort select{ border: 0; background: transparent; color: var(--mlk-ink); font: inherit; font-weight: 600; cursor: pointer; -webkit-appearance: none; appearance: none; padding: 0 2px; }
.mlk .mlk-csort select:focus-visible{ outline: 2px solid var(--mlk-gold); outline-offset: 2px; }

.mlk .mlk-cgrid{ display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; margin-top: 32px; }
.mlk .mlk-ccard{ position: relative; display: flex; flex-direction: column; gap: 16px; padding: 12px 12px 18px; border-radius: 24px; background: #fff; border: 1px solid rgba(18, 38, 28, 0.07); box-shadow: 0 1px 2px rgba(18, 38, 28, 0.03), 0 14px 30px -22px rgba(18, 38, 28, 0.25); transition: transform 0.25s ease, box-shadow 0.25s ease; }
.mlk .mlk-ccard:hover{ transform: translateY(-3px); box-shadow: 0 1px 2px rgba(18, 38, 28, 0.03), 0 26px 44px -28px rgba(18, 38, 28, 0.4); }
.mlk .mlk-ccard[hidden]{ display: none; }
.mlk .mlk-ccard > .mlk-icon:last-child{ display: none; }
.mlk .mlk-ccard__cover{ position: relative; display: flex; align-items: center; justify-content: center; overflow: hidden; aspect-ratio: 3 / 2; border-radius: 16px; background: var(--mlk-deep); }
.mlk .mlk-ccard__cover > img{ position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.mlk .mlk-ccard__cover > svg{ position: relative; height: 56%; width: auto; }
.mlk .mlk-ccard__cover--sand{ background: linear-gradient(140deg, #f8efd6 0%, #ecd8a2 100%); }
.mlk .mlk-ccard__cover--mint{ background: #e2ede1; }
.mlk .mlk-ccard__cover--jade{ background: #1f5a40; }
.mlk .mlk-ccard__cover--gold{ background: linear-gradient(140deg, #f7edd2 0%, #ecd7a0 100%); }
.mlk .mlk-ccard__cover--photo::after{ content: ""; position: absolute; inset: 0; background: linear-gradient(to top, rgba(12, 36, 25, 0.35), rgba(12, 36, 25, 0) 55%); }
.mlk .mlk-ccard__nine{ position: relative; font-size: 120px; font-weight: 300; line-height: 1; color: #b8892b; }
.mlk .mlk-ccard__cover > .mlk-ccard__portrait{ position: relative; inset: auto; width: 128px; height: 128px; object-fit: contain; }
.mlk .mlk-ccard__tags{ display: flex; flex-wrap: wrap; align-items: center; gap: 4px 8px; }
.mlk .mlk-ccard__badge{ display: inline-flex; padding: 0 10px; border-radius: 999px; background: #f6ecd2; color: var(--mlk-gold-ink); font-size: 11.5px; font-style: normal; font-weight: 700; line-height: 22px; }
.mlk .mlk-ccard__badge.is-soon{ background: #e7efe6; color: var(--mlk-jade); }
.mlk .mlk-ccard__price b.is-soon{ font-size: 16px; color: var(--mlk-jade); }
.mlk .mlk-ccard.is-free .mlk-ccard__badge{ background: var(--mlk-ink); color: var(--mlk-gold-soft); }
.mlk .mlk-ccard__cover > img{ transition: transform 0.5s ease; }
.mlk .mlk-ccard:hover .mlk-ccard__cover > img{ transform: scale(1.03); }
.mlk .mlk-ccard__body{ flex: 1; display: flex; flex-direction: column; gap: 6px; padding: 0 8px; }
.mlk .mlk-ccard__topic{ font-size: 13px; color: var(--mlk-gold-ink); }
.mlk .mlk-ccard__title{ font-size: 22px; line-height: 1.5; }
.mlk .mlk-ccard__title a::after{ content: ""; position: absolute; inset: 0; border-radius: 24px; }
.mlk .mlk-ccard__text{ display: -webkit-box; overflow: hidden; margin: 0; font-size: 14px; line-height: 2; color: var(--mlk-muted); -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.mlk .mlk-ccard__sessions{ display: inline-flex; align-items: center; gap: 6px; font-size: 13px; color: var(--mlk-muted); }
.mlk .mlk-ccard__sessions .mlk-icon{ color: var(--mlk-jade); }
.mlk .mlk-ccard__foot{ display: flex; justify-content: space-between; align-items: flex-end; gap: 12px; margin-top: auto; padding-top: 14px; border-top: 1px dashed rgba(18, 38, 28, 0.14); }
.mlk .mlk-ccard__foot .mlk-btn{ position: relative; z-index: 2; min-height: 44px; padding: 0 18px; }
.mlk .mlk-ccard__price{ display: flex; flex-direction: column; line-height: 1.6; }
.mlk .mlk-ccard__price b{ font-size: 19px; font-weight: 700; color: var(--mlk-gold-ink); }
.mlk .mlk-ccard__price small{ font-size: 12px; color: var(--mlk-muted); }
.mlk .mlk-ccard__was{ display: inline-flex; align-items: center; gap: 6px; }
.mlk .mlk-ccard__was del{ font-size: 12px; color: #8a968f; }
.mlk .mlk-ccard__was em{ padding: 0 8px; border-radius: 999px; background: #e7efe6; color: var(--mlk-jade); font-size: 11px; font-style: normal; font-weight: 600; line-height: 20px; }
.mlk .mlk-ccard__free{ font-size: 20px; font-weight: 700; color: var(--mlk-jade); }
.mlk .mlk-ccard__meta{ display: none; }
.mlk .mlk-ccard__was em i{ font-style: normal; }
.mlk .mlk-ccard__price > span:last-child{ white-space: nowrap; }
.mlk .mlk-chelp{ position: relative; overflow: hidden; display: flex; flex-direction: column; justify-content: flex-start; gap: 10px; min-height: 340px; padding: 28px; border-radius: 24px; background: var(--mlk-deep); color: #fff; }
.mlk .mlk-chelp > .mlk-octs{ left: -120px; bottom: -150px; width: 400px; height: 400px; opacity: 0.35; }
.mlk .mlk-chelp__icon{ position: relative; display: inline-flex; align-items: center; justify-content: center; width: 48px; height: 48px; margin-bottom: 8px; border-radius: 14px; background: rgba(255, 255, 255, 0.1); color: var(--mlk-gold-soft); }
.mlk .mlk-chelp h2{ position: relative; font-size: 24px; line-height: 1.5; }
.mlk .mlk-chelp p{ position: relative; margin: 0; font-size: 14px; line-height: 2; color: var(--mlk-on-dark); }
.mlk .mlk-chelp .mlk-btn{ position: relative; align-self: flex-start; margin-top: auto; }
.mlk .mlk-cempty{ grid-column: 1 / -1; }

/* Course page */

.mlk .mlk-cblock{ display: flex; flex-direction: column; gap: 20px; }
.mlk .mlk-cblock h2{ font-size: 28px; line-height: 1.4; }
.mlk .mlk-cblock__head{ display: flex; justify-content: space-between; align-items: baseline; gap: 12px; }
.mlk .mlk-cblock__head span{ font-size: 13px; color: var(--mlk-muted); }
.mlk .mlk-cbox{ padding: 6px 28px; border-radius: 22px; background: #fff; border: 1px solid rgba(18, 38, 28, 0.07); }
.mlk .mlk-cbox.mlk-prose{ padding: 22px 28px; }
.mlk .mlk-learn{ display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 32px; margin: 0; padding: 12px 28px; border-radius: 22px; background: #fff; border: 1px solid rgba(18, 38, 28, 0.07); list-style: none; }
.mlk .mlk-learn li{ display: flex; align-items: center; gap: 12px; padding: 14px 0; border-bottom: 1px solid rgba(18, 38, 28, 0.07); font-size: 15px; }
.mlk .mlk-learn li:nth-last-child(-n+2):nth-child(odd), .mlk .mlk-learn li:last-child{ border-bottom: 0; }
.mlk .mlk-learn .mlk-icon{ flex: none; color: var(--mlk-gold); }
.mlk .mlk-teacher{ display: flex; align-items: center; gap: 24px; padding: 28px; }
.mlk .mlk-teacher img{ flex: none; width: 120px; height: 120px; object-fit: contain; }
.mlk .mlk-teacher > div{ display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.mlk .mlk-teacher__role{ font-size: 13px; font-weight: 500; color: var(--mlk-gold-ink); }
.mlk .mlk-teacher h3{ font-size: 22px; line-height: 1.5; }
.mlk .mlk-teacher p{ margin: 0; font-size: 14px; line-height: 2; color: var(--mlk-muted); }

.mlk .mlk-ctool{ display: flex; align-items: center; gap: 14px; padding: 20px; border-radius: 22px; background: #e7efe6; }
.mlk .mlk-ctool__img{ flex: none; display: inline-flex; align-items: center; justify-content: center; overflow: hidden; width: 64px; height: 64px; border-radius: 16px; background: #fff; }
.mlk .mlk-ctool__img img{ width: 100%; height: 100%; object-fit: cover; }
.mlk .mlk-ctool__img svg{ width: 40px; height: 40px; }
.mlk .mlk-ctool__text{ flex: 1; min-width: 0; display: flex; flex-direction: column; line-height: 1.6; }
.mlk .mlk-ctool__text small{ font-size: 12px; color: var(--mlk-jade); }
.mlk .mlk-ctool__text a{ font-size: 15px; font-weight: 600; }
.mlk .mlk-ctool__text b{ font-size: 13px; font-weight: 600; color: var(--mlk-gold-ink); }
.mlk .mlk-ctool__add{ flex: none; display: inline-flex; align-items: center; min-height: 40px; padding: 0 14px; border-radius: 12px; background: #fff; font-size: 13px; font-weight: 600; }
.mlk .mlk-ctool .added_to_cart{ display: none !important; }
.mlk .mlk-cbar-m{ display: none; }
.mlk .mlk-vdialog{ width: min(900px, 94vw); padding: 0; border: 0; border-radius: 22px; background: #000; overflow: hidden; }
.mlk .mlk-vdialog::backdrop{ background: rgba(8, 22, 15, 0.75); }
.mlk .mlk-vdialog__frame{ aspect-ratio: 16 / 9; }
.mlk .mlk-vdialog__frame :where(iframe, video){ display: block; width: 100%; height: 100%; border: 0; }
.mlk .mlk-vdialog__close{ position: absolute; z-index: 2; top: 8px; left: 8px; background: rgba(255, 255, 255, 0.9); color: var(--mlk-ink); }

@media (max-width: 1100px) {
	.mlk .mlk-cgrid{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.mlk .mlk-learn{ grid-template-columns: 1fr; }
	.mlk .mlk-learn li:nth-last-child(-n+2):nth-child(odd){ border-bottom: 1px solid rgba(18, 38, 28, 0.07); }
	.mlk .mlk-learn li:last-child{ border-bottom: 0; }
}

@media (max-width: 820px) {
	.mlk .mlk-cbar{ margin-top: 16px; }
	.mlk .mlk-cchips{ flex-wrap: nowrap; margin: 0 calc(var(--mlk-gutter) * -1); padding: 0 var(--mlk-gutter); overflow-x: auto; scrollbar-width: none; }
	.mlk .mlk-cchips::-webkit-scrollbar{ display: none; }
	.mlk .mlk-cchip{ flex: none; padding: 0 18px; font-size: 13px; }
	.mlk .mlk-csort{ display: none; }
	.mlk .mlk-cgrid{ grid-template-columns: 1fr; gap: 10px; margin-top: 16px; }
	.mlk .mlk-cgrid{ gap: 16px; }
	.mlk .mlk-ccard{ gap: 12px; padding: 8px 8px 14px; border-radius: 20px; }
	.mlk .mlk-ccard:hover{ transform: none; }
	.mlk .mlk-ccard__cover{ border-radius: 14px; }
	.mlk .mlk-ccard__body{ gap: 4px; padding: 0 6px; min-width: 0; }
	.mlk .mlk-ccard__title{ font-size: 18px; }
	.mlk .mlk-ccard__text{ font-size: 13px; line-height: 1.9; }
	.mlk .mlk-ccard__foot{ padding-top: 12px; }
	.mlk .mlk-ccard__foot .mlk-btn{ min-height: 42px; padding: 0 16px; font-size: 14px; }
	.mlk .mlk-ccard__price b{ font-size: 17px; }
	.mlk .mlk-chelp{ min-height: 0; padding: 22px; border-radius: 22px; }
	.mlk .mlk-chelp__icon{ display: none; }
	.mlk .mlk-chelp h2{ font-size: 18px; }
	.mlk .mlk-chelp .mlk-btn{ align-self: stretch; margin-top: 8px; }

	.mlk .mlk-cpage{ padding-bottom: 96px; }
	.mlk .mlk-cblock{ gap: 12px; }
	.mlk .mlk-cblock h2{ font-size: 21px; }
	.mlk .mlk-learn{ padding: 6px 18px; border-radius: 18px; }
	.mlk .mlk-learn li{ padding: 12px 0; font-size: 14px; }
	.mlk .mlk-cbox{ padding: 4px 18px; border-radius: 18px; }
	.mlk .mlk-teacher{ gap: 14px; padding: 16px; }
	.mlk .mlk-teacher img{ width: 72px; height: 72px; }
	.mlk .mlk-teacher h3{ font-size: 18px; }
	.mlk .mlk-teacher p{ font-size: 13px; }
	.mlk .mlk-cbar-m{ position: fixed; left: 0; right: 0; bottom: var(--mlk-tb, 0px); z-index: 70; display: flex; align-items: center; gap: 14px; padding: 12px 16px calc(16px + env(safe-area-inset-bottom)); background: rgba(255, 255, 255, 0.92); border-top: 1px solid rgba(18, 38, 28, 0.08); -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px); }
	.mlk .mlk-cbar-m .mlk-buybar__info{ display: flex; flex-direction: column; line-height: 1.5; }
	.mlk .mlk-cbar-m .mlk-buybar__info > small{ font-size: 11px; color: var(--mlk-muted); }
	.mlk .mlk-cbar-m .mlk-buybar__info b{ font-size: 20px; font-weight: 700; }
	.mlk .mlk-cbar-m .mlk-buybar__info span small{ font-size: 12px; color: var(--mlk-muted); }
	.mlk .mlk-cbar-m .mlk-addbtn{ min-height: 52px; }
}



.mlk .mlk-cempty{ grid-column: span 2; display: flex; flex-direction: column; align-items: flex-start; justify-content: center; gap: 10px; min-height: 280px; padding: 36px; border: 1px dashed rgba(18, 38, 28, 0.16); border-radius: var(--mlk-radius); background: rgba(255, 255, 255, 0.6); }
.mlk .mlk-cempty__icon{ display: inline-flex; width: 52px; height: 52px; align-items: center; justify-content: center; border-radius: 16px; background: var(--mlk-sand); color: var(--mlk-gold-ink, #8a6a1f); }
.mlk .mlk-cempty__icon svg{ width: 30px; height: 30px; }
.mlk .mlk-cempty h2{ font-size: 20px; }
.mlk .mlk-cempty p{ max-width: 460px; color: var(--mlk-muted); font-size: 14px; line-height: 2; }
@media (max-width: 820px) { .mlk .mlk-cempty{ grid-column: auto; min-height: 0; padding: 24px; } }

/* ---------- About page ---------- */
.mlk .mlk-about{ max-width: var(--mlk-max); margin: 0 auto; }
.mlk .mlk-about__story{ margin-top: 8px; }
.mlk .mlk-about__stats{ display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; margin-top: 48px; }
.mlk .mlk-about__stats li{ display: flex; flex-direction: column; gap: 2px; padding: 22px 24px; border-radius: 20px; background: #fff; border: 1px solid var(--mlk-line); }
.mlk .mlk-about__stats strong{ font-size: 28px; font-weight: 700; color: var(--mlk-jade); line-height: 1.4; }
.mlk .mlk-about__stats span{ font-size: 13px; color: var(--mlk-muted); }
.mlk .mlk-about__content{ margin-top: 40px; padding: 32px 36px; line-height: 2.1; }
.mlk .mlk-about__content p + p{ margin-top: 14px; }
.mlk .mlk-about__content h2, .mlk .mlk-about__content h3{ margin: 22px 0 8px; font-size: 20px; }
.mlk .mlk-about__next{ display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 18px; margin-top: 48px; padding: 30px 32px; border-radius: var(--mlk-radius); background: var(--mlk-celadon); }
.mlk .mlk-about__next h2{ font-size: 22px; }
.mlk .mlk-about__next p{ color: var(--mlk-muted); font-size: 14px; }
.mlk .mlk-about__actions{ display: flex; flex-wrap: wrap; gap: 10px; }
@media (max-width: 820px) {
	.mlk .mlk-about__stats{ grid-template-columns: 1fr; gap: 10px; margin-top: 28px; }
	.mlk .mlk-about__content{ margin-top: 28px; padding: 22px 18px; }
	.mlk .mlk-about__next{ margin-top: 32px; padding: 22px 18px; }
	.mlk .mlk-about__actions, .mlk .mlk-about__actions .mlk-btn{ width: 100%; }
}

/* ---------- Student dashboard / account ---------- */
.mlk .mlk-acc{ display: grid; grid-template-columns: 264px minmax(0, 1fr); gap: 28px; align-items: start; max-width: var(--mlk-max); margin: 8px auto 0; }
.mlk .mlk-acc__side{ position: sticky; top: 110px; display: flex; flex-direction: column; gap: 18px; padding: 18px; border-radius: 24px; background: #fff; border: 1px solid var(--mlk-line); }
body.admin-bar .mlk .mlk-acc__side{ top: 142px; }
.mlk .mlk-acc__me{ display: flex; align-items: center; gap: 12px; padding: 4px 4px 16px; border-bottom: 1px solid var(--mlk-line); }
.mlk .mlk-acc__me strong{ display: block; font-size: 15px; }
.mlk .mlk-acc__me small{ display: block; max-width: 170px; overflow: hidden; color: var(--mlk-muted); font-size: 12px; text-overflow: ellipsis; white-space: nowrap; direction: ltr; text-align: right; }
.mlk .mlk-acc__avatar{ flex: none; display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; border-radius: 50%; background: var(--mlk-celadon); color: var(--mlk-jade); font-size: 17px; font-weight: 700; }
.mlk .mlk-acc__nav{ display: flex; flex-direction: column; gap: 4px; }
.mlk .mlk-acc__link{ display: flex; align-items: center; gap: 12px; min-height: 46px; padding: 0 14px; border-radius: 14px; color: var(--mlk-muted); font-size: 14px; font-weight: 500; transition: background-color 0.2s ease, color 0.2s ease; }
.mlk .mlk-acc__link:hover{ background: var(--mlk-mist, #f1f3ee); color: var(--mlk-ink); }
.mlk .mlk-acc__link.is-current{ background: var(--mlk-celadon); color: var(--mlk-jade); font-weight: 700; }
.mlk .mlk-acc__link.is-logout{ margin-top: 6px; color: #9a5a4a; }
.mlk .mlk-acc__link span{ flex: 1; }
.mlk .mlk-acc__badge{ display: inline-flex; align-items: center; justify-content: center; min-width: 20px; height: 20px; padding: 0 6px; border-radius: 10px; background: var(--mlk-gold); color: var(--mlk-deep); font-size: 11px; }
.mlk .mlk-acc__help{ padding: 16px; border-radius: 18px; background: var(--mlk-celadon); font-size: 13px; line-height: 1.9; }
.mlk .mlk-acc__help strong{ display: block; font-size: 14px; }
.mlk .mlk-acc__help p{ color: var(--mlk-muted); }
.mlk .mlk-acc__help a{ display: inline-flex; align-items: center; gap: 6px; margin-top: 8px; color: var(--mlk-jade); font-weight: 700; }
.mlk .mlk-acc__main{ min-width: 0; }
.mlk .mlk-acc__head{ margin-bottom: 22px; }
.mlk .mlk-acc__head h1{ font-size: 28px; line-height: 1.5; }
.mlk .mlk-acc__head p{ color: var(--mlk-muted); font-size: 14px; }
.mlk .mlk-acc-bar{ position: relative; display: block; height: 5px; overflow: hidden; border-radius: 4px; background: rgba(18, 38, 28, 0.08); }
.mlk .mlk-acc-bar i{ position: absolute; inset-block: 0; right: 0; border-radius: 4px; background: var(--mlk-jade); }
.mlk .mlk-acc-bar--gold{ background: rgba(255, 255, 255, 0.14); }
.mlk .mlk-acc-bar--gold i{ background: var(--mlk-gold); }

.mlk .mlk-dash__top{ display: grid; grid-template-columns: minmax(0, 1fr) 220px; gap: 16px; }
.mlk .mlk-dash__cont{ position: relative; isolation: isolate; overflow: hidden; display: flex; align-items: center; gap: 24px; min-height: 230px; padding: 24px; border-radius: 26px; background: var(--mlk-deep); color: #fff; }
.mlk .mlk-dash__cont > svg{ position: absolute; z-index: -1; left: -60px; bottom: -80px; width: 340px; opacity: 0.35; }
.mlk .mlk-dash__thumb{ position: relative; flex: none; width: 42%; max-width: 300px; aspect-ratio: 16 / 10; overflow: hidden; border-radius: 18px; }
.mlk .mlk-dash__thumb img{ width: 100%; height: 100%; object-fit: cover; }
.mlk .mlk-dash__play{ position: absolute; top: 50%; left: 50%; display: inline-flex; align-items: center; justify-content: center; width: 48px; height: 48px; margin: -24px 0 0 -24px; border-radius: 50%; background: #fff; color: var(--mlk-deep); box-shadow: 0 10px 24px -10px rgba(0, 0, 0, 0.6); }
.mlk .mlk-dash__cont-body{ display: flex; flex: 1; flex-direction: column; align-items: flex-start; gap: 12px; min-width: 0; }
.mlk .mlk-dash__eyebrow{ color: var(--mlk-gold-soft, #ecc875); font-size: 13px; font-weight: 600; }
.mlk .mlk-dash__cont-body strong{ font-size: 21px; line-height: 1.6; color: #fff; }
.mlk .mlk-dash__cont-body > small{ color: var(--mlk-on-dark); font-size: 14px; }
.mlk .mlk-dash__prog{ display: flex; align-items: center; gap: 12px; width: 100%; }
.mlk .mlk-dash__prog .mlk-acc-bar{ flex: 1; }
.mlk .mlk-dash__prog small{ flex: none; color: var(--mlk-on-dark); font-size: 12px; }
.mlk .mlk-dash__actions{ display: flex; flex-wrap: wrap; gap: 10px; }
.mlk .mlk-dash__cont.is-empty{ min-height: 200px; }
.mlk .mlk-dash__stats{ display: grid; gap: 10px; }
.mlk .mlk-dash__stats li{ display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 16px 18px; border-radius: 18px; background: #fff; border: 1px solid var(--mlk-line); }
.mlk .mlk-dash__stats span{ color: var(--mlk-muted); font-size: 13px; }
.mlk .mlk-dash__stats strong{ font-size: 22px; font-weight: 700; color: var(--mlk-ink); }

.mlk .mlk-dash__grid{ display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin-top: 16px; }
.mlk .mlk-dash__card{ display: flex; flex-direction: column; gap: 6px; padding: 22px; border-radius: 24px; background: #fff; border: 1px solid var(--mlk-line); }
.mlk .mlk-dash__card-head{ display: flex; align-items: center; justify-content: space-between; margin-bottom: 6px; }
.mlk .mlk-dash__card-head h2{ font-size: 17px; }
.mlk .mlk-dash__card-head a{ color: var(--mlk-jade); font-size: 13px; font-weight: 700; }
.mlk .mlk-dash__muted{ color: var(--mlk-muted); font-size: 14px; }
.mlk .mlk-acc-course{ display: flex; align-items: center; gap: 14px; padding: 12px 0; border-bottom: 1px solid var(--mlk-line); color: var(--mlk-ink); }
.mlk .mlk-acc-course:last-child{ border-bottom: 0; }
.mlk .mlk-acc-course > .mlk-icon:last-child{ flex: none; color: var(--mlk-muted); }
.mlk .mlk-acc-course__cover{ position: relative; flex: none; display: inline-flex; align-items: center; justify-content: center; width: 56px; height: 56px; overflow: hidden; border-radius: 14px; }
.mlk .mlk-acc-course__cover > *{ max-width: 70%; max-height: 70%; }
.mlk .mlk-acc-course__cover img{ width: 100%; height: 100%; max-width: none; max-height: none; object-fit: cover; }
.mlk .mlk-acc-course__body{ display: flex; flex: 1; flex-direction: column; gap: 4px; min-width: 0; }
.mlk .mlk-acc-course__body strong{ font-size: 15px; }
.mlk .mlk-acc-course__body small{ color: var(--mlk-muted); font-size: 12px; }

.mlk .mlk-dash__order-head{ display: flex; align-items: center; gap: 12px; }
.mlk .mlk-dash__order-head > span:nth-child(2){ display: flex; flex: 1; flex-direction: column; min-width: 0; }
.mlk .mlk-dash__order-head small{ color: var(--mlk-gold-ink); font-size: 12px; font-weight: 600; }
.mlk .mlk-dash__order-head strong{ overflow: hidden; font-size: 15px; text-overflow: ellipsis; white-space: nowrap; }
.mlk .mlk-dash__order-head b{ flex: none; font-size: 14px; }
.mlk .mlk-dash__order-icon{ flex: none; display: inline-flex; align-items: center; justify-content: center; width: 52px; height: 52px; border-radius: 14px; background: var(--mlk-celadon); color: var(--mlk-jade); }
.mlk .mlk-dash__steps{ display: flex; margin: 22px 0 10px; padding: 0; list-style: none; }
.mlk .mlk-dash__steps li{ position: relative; display: flex; flex: 1; flex-direction: column; align-items: center; gap: 8px; color: var(--mlk-muted); font-size: 12px; text-align: center; }
.mlk .mlk-dash__steps li::before{ content: ""; position: absolute; top: 11px; left: 50%; width: 100%; height: 2px; background: rgba(18, 38, 28, 0.1); }
.mlk .mlk-dash__steps li:first-child::before{ display: none; }
.mlk .mlk-dash__steps li.is-done::before, .mlk .mlk-dash__steps li.is-now::before{ background: var(--mlk-jade); }
.mlk .mlk-dash__dot{ position: relative; z-index: 1; display: inline-flex; align-items: center; justify-content: center; width: 24px; height: 24px; border-radius: 50%; border: 2px solid rgba(18, 38, 28, 0.16); background: #fff; color: #fff; }
.mlk .mlk-dash__steps li.is-done .mlk-dash__dot{ border-color: var(--mlk-jade); background: var(--mlk-jade); }
.mlk .mlk-dash__steps li.is-now{ color: var(--mlk-ink); font-weight: 600; }
.mlk .mlk-dash__steps li.is-now .mlk-dash__dot{ border-color: var(--mlk-gold); box-shadow: inset 0 0 0 4px #fff; background: var(--mlk-gold); }
.mlk .mlk-dash__order-foot{ display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px; padding-top: 12px; border-top: 1px solid var(--mlk-line); color: var(--mlk-muted); font-size: 13px; }

.mlk .mlk-dash__next{ flex-direction: row; flex-wrap: wrap; align-items: center; gap: 16px; background: var(--mlk-sand); border-color: transparent; color: var(--mlk-ink); }
.mlk .mlk-dash__next-cover{ flex: none; display: inline-flex; align-items: center; justify-content: center; width: 64px; height: 64px; overflow: hidden; border-radius: 16px; background: #fff; }
.mlk .mlk-dash__next-cover > *{ max-width: 70%; max-height: 70%; }
.mlk .mlk-dash__next-cover img{ width: 100%; height: 100%; max-width: none; max-height: none; object-fit: cover; }
.mlk .mlk-dash__next-body{ display: flex; flex: 1; flex-direction: column; gap: 2px; min-width: 0; }
.mlk .mlk-dash__next-body small{ color: var(--mlk-gold-ink); font-size: 12px; font-weight: 600; }
.mlk .mlk-dash__next-body strong{ font-size: 17px; }
.mlk .mlk-dash__next-body span{ color: var(--mlk-muted); font-size: 13px; }
.mlk .mlk-dash__next-foot{ display: flex; align-items: center; justify-content: space-between; gap: 12px; width: 100%; }
.mlk .mlk-dash__next-foot b{ color: var(--mlk-gold-ink); font-size: 16px; }

.mlk .mlk-acc-empty{ display: flex; flex-direction: column; align-items: flex-start; gap: 8px; padding: 28px; border-radius: 22px; background: #fff; border: 1px dashed rgba(18, 38, 28, 0.16); }
.mlk .mlk-acc-empty__title{ font-size: 18px; font-weight: 700; }
.mlk .mlk-acc-empty p{ color: var(--mlk-muted); font-size: 14px; }
.mlk .mlk-acc-courses{ padding: 6px 22px; border-radius: 24px; background: #fff; border: 1px solid var(--mlk-line); }
.mlk .mlk-acc-courses .mlk-acc-empty{ margin: 16px -6px; border: 0; padding: 12px 0; }

/* WooCommerce's own account tabs inside the frame */
.mlk .mlk-acc__panel{ padding: 24px; border-radius: 24px; background: #fff; border: 1px solid var(--mlk-line); font-size: 14px; line-height: 2; }
.mlk .mlk-acc__panel table{ width: 100%; border-collapse: collapse; }
.mlk .mlk-acc__panel th, .mlk .mlk-acc__panel td{ padding: 12px 10px; border-bottom: 1px solid var(--mlk-line); text-align: right; vertical-align: middle; }
.mlk .mlk-acc__panel th{ color: var(--mlk-muted); font-size: 13px; font-weight: 600; }
.mlk .mlk-acc__panel :is(.button, button[type="submit"], .woocommerce-button){ display: inline-flex; align-items: center; justify-content: center; min-height: 40px; padding: 0 16px; border: 0; border-radius: 12px; background: var(--mlk-jade); color: #fff; font-size: 13px; font-weight: 600; }
.mlk .mlk-acc__panel :is(input[type="text"], input[type="email"], input[type="tel"], input[type="password"], select, textarea){ width: 100%; min-height: 46px; padding: 8px 14px; border: 1px solid rgba(18, 38, 28, 0.14); border-radius: 12px; background: #fff; font-size: 14px; }
.mlk .mlk-acc__panel .form-row{ margin: 0 0 14px; }
.mlk .mlk-acc__panel label{ display: block; margin-bottom: 4px; font-size: 13px; font-weight: 600; }
.mlk .mlk-acc__panel fieldset{ margin: 18px 0; padding: 16px; border: 1px solid var(--mlk-line); border-radius: 16px; }
.mlk .mlk-acc__panel .woocommerce-Addresses, .mlk .mlk-acc__panel .u-columns{ display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.mlk .mlk-acc__panel .woocommerce-Address{ padding: 18px; border-radius: 16px; background: var(--mlk-mist, #f1f3ee); }
.mlk .mlk-acc__panel .woocommerce-Address-title{ display: flex; align-items: center; justify-content: space-between; }
.mlk .mlk-acc__panel .woocommerce-Address-title h2{ font-size: 16px; }
.mlk .mlk-acc__panel a{ color: var(--mlk-jade); }
.mlk .mlk-acc__panel mark{ background: none; color: var(--mlk-ink); font-weight: 700; }

/* ---------- Lesson player ---------- */
.mlk .mlk-player{ max-width: var(--mlk-max); margin: 8px auto 0; }
.mlk .mlk-player__bar{ display: flex; align-items: center; gap: 16px; min-height: 64px; padding: 10px 12px; border-radius: 22px; background: #fff; border: 1px solid var(--mlk-line); }
.mlk .mlk-player__back{ display: inline-flex; align-items: center; gap: 6px; min-height: 42px; padding: 0 14px; border-radius: 14px; border: 1px solid var(--mlk-line); color: var(--mlk-ink); font-size: 14px; font-weight: 600; }
.mlk .mlk-player__course{ overflow: hidden; color: var(--mlk-ink); font-size: 15px; font-weight: 700; text-overflow: ellipsis; white-space: nowrap; }
.mlk .mlk-player__prog{ display: flex; align-items: center; gap: 12px; margin-inline-start: auto; }
.mlk .mlk-player__prog .mlk-acc-bar{ width: 200px; }
.mlk .mlk-player__prog small{ color: var(--mlk-muted); font-size: 12px; white-space: nowrap; }
.mlk .mlk-player__grid{ display: grid; grid-template-columns: minmax(0, 1fr) 340px; gap: 24px; align-items: start; margin-top: 20px; }
.mlk .mlk-player__main{ min-width: 0; }
.mlk .mlk-player__head{ margin-bottom: 16px; }
.mlk .mlk-player__eyebrow{ color: var(--mlk-gold-ink); font-size: 13px; font-weight: 600; }
.mlk .mlk-player__head h1{ font-size: 26px; line-height: 1.55; }
.mlk .mlk-player__content{ font-size: 15px; line-height: 2.1; }
.mlk .mlk-player__content > * + *{ margin-top: 16px; }
.mlk .mlk-player__content :is(iframe, video, .wp-video, .wp-block-embed__wrapper, .ld-video, .ld-video iframe){ display: block; width: 100% !important; max-width: 100%; border: 0; border-radius: 22px; }
.mlk .mlk-player__content :is(iframe, video){ aspect-ratio: 16 / 9; height: auto !important; background: #0c2419; box-shadow: 0 30px 60px -36px rgba(12, 36, 25, 0.6); }
.mlk .mlk-player__content :is(.ld-breadcrumbs, .ld-lesson-status, .ld-topic-status, .ld-course-status){ display: none; }
.mlk .mlk-player__content :is(.ld-tabs, .ld-tab-content){ border: 0; }
.mlk .mlk-player__content .ld-content-actions{ display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px; margin-top: 22px; padding: 14px 0 0; border-top: 1px solid var(--mlk-line); }
.mlk .mlk-player__content :is(.ld-button, .learndash_mark_complete_button, input[type="submit"].learndash_mark_complete_button){ display: inline-flex; align-items: center; justify-content: center; min-height: 46px; padding: 0 20px; border: 0; border-radius: 14px; background: var(--mlk-jade) !important; color: #fff !important; font-family: inherit; font-size: 14px; font-weight: 600; }
.mlk .mlk-player__content .ld-content-action:not(.ld-content-action-mark-complete) .ld-button{ background: var(--mlk-mist, #f1f3ee) !important; color: var(--mlk-ink) !important; }
.mlk .mlk-player__content:has(.ld-content-actions) ~ .mlk-player__steps{ display: none; }
.mlk .mlk-player__steps{ display: flex; justify-content: space-between; gap: 10px; margin-top: 22px; }
.mlk .mlk-player__steps a:only-child:last-child{ margin-inline-start: auto; }
.mlk .mlk-player__ask{ display: flex; align-items: center; gap: 14px; margin-top: 24px; padding: 18px; border-radius: 20px; background: var(--mlk-celadon); }
.mlk .mlk-player__ask > span:nth-child(2){ display: flex; flex: 1; flex-direction: column; }
.mlk .mlk-player__ask strong{ font-size: 15px; }
.mlk .mlk-player__ask small{ color: var(--mlk-muted); font-size: 13px; }
.mlk .mlk-player__ask-icon{ flex: none; display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; border-radius: 14px; background: #fff; color: var(--mlk-jade); }
.mlk .mlk-player__side{ position: sticky; top: 110px; max-height: calc(100vh - 130px); overflow-y: auto; padding: 18px; border-radius: 24px; background: #fff; border: 1px solid var(--mlk-line); scrollbar-width: thin; }
body.admin-bar .mlk .mlk-player__side{ top: 142px; max-height: calc(100vh - 162px); }
.mlk .mlk-player__side-head{ display: flex; align-items: baseline; justify-content: space-between; margin-bottom: 8px; padding: 0 4px; }
.mlk .mlk-player__side-head h2{ font-size: 17px; }
.mlk .mlk-player__side-head span{ color: var(--mlk-muted); font-size: 12px; }
.mlk .mlk-player__group{ padding: 6px 0; border-bottom: 1px solid var(--mlk-line); }
.mlk .mlk-player__group:last-child{ border-bottom: 0; }
.mlk .mlk-player__lesson, .mlk .mlk-player__topic{ display: flex; align-items: center; gap: 10px; min-height: 42px; padding: 6px 10px; border-radius: 12px; color: var(--mlk-ink); font-size: 14px; transition: background-color 0.2s ease; }
.mlk .mlk-player__lesson:hover, .mlk .mlk-player__topic:hover{ background: var(--mlk-mist, #f1f3ee); }
.mlk .mlk-player__lesson strong{ flex: 1; font-size: 14px; }
.mlk .mlk-player__lesson small{ color: var(--mlk-muted); font-size: 11px; }
.mlk .mlk-player__topic{ padding-inline-start: 18px; color: var(--mlk-muted); }
.mlk .mlk-player__topic span:last-child{ flex: 1; }
.mlk :is(.mlk-player__lesson, .mlk-player__topic).is-now{ background: var(--mlk-celadon); color: var(--mlk-ink); font-weight: 700; }
.mlk .mlk-player__tick{ flex: none; display: inline-flex; align-items: center; justify-content: center; width: 22px; height: 22px; border-radius: 50%; border: 1.5px solid rgba(18, 38, 28, 0.2); color: #fff; }
.mlk .is-done .mlk-player__tick{ border-color: transparent; background: #dfeadf; color: var(--mlk-jade); }
.mlk .is-now .mlk-player__tick{ border-color: transparent; background: var(--mlk-jade); color: #fff; }

@media (max-width: 1100px) {
	.mlk .mlk-acc{ grid-template-columns: 220px minmax(0, 1fr); gap: 20px; }
	.mlk .mlk-dash__top{ grid-template-columns: 1fr; }
	.mlk .mlk-dash__stats{ grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.mlk .mlk-player__grid{ grid-template-columns: minmax(0, 1fr) 290px; }
}
@media (max-width: 820px) {
	.mlk .mlk-acc{ grid-template-columns: minmax(0, 1fr); gap: 16px; margin-top: 0; }
	.mlk .mlk-acc__side{ min-width: 0; }
	.mlk .mlk-acc__side{ position: static; order: 2; padding: 14px; }
	.mlk .mlk-acc__me{ display: none; }
	.mlk .mlk-acc__nav{ flex-direction: row; gap: 6px; margin: 0 -14px; padding: 0 14px; overflow-x: auto; scrollbar-width: none; }
	.mlk .mlk-acc__link{ flex: none; min-height: 40px; padding: 0 12px; border: 1px solid var(--mlk-line); font-size: 13px; }
	.mlk .mlk-acc__link.is-logout{ margin-top: 0; }
	.mlk .mlk-acc__link .mlk-icon{ display: none; }
	.mlk .mlk-acc__help{ display: none; }
	.mlk .mlk-acc__side{ order: -1; padding: 10px; border-radius: 18px; }
	.mlk .mlk-acc__nav{ margin: 0; padding: 0; }
	.mlk .mlk-acc__head h1{ font-size: 22px; }
	.mlk .mlk-dash__cont{ flex-direction: column; align-items: stretch; gap: 16px; min-height: 0; padding: 18px; border-radius: 22px; }
	.mlk .mlk-dash__thumb{ width: 100%; max-width: none; }
	.mlk .mlk-dash__cont-body strong{ font-size: 18px; }
	.mlk .mlk-dash__cont-body .mlk-btn{ width: 100%; }
	.mlk .mlk-dash__stats li{ flex-direction: column-reverse; align-items: center; justify-content: center; gap: 2px; padding: 12px 6px; text-align: center; }
	.mlk .mlk-dash__stats span{ font-size: 11px; }
	.mlk .mlk-dash__stats strong{ font-size: 20px; }
	.mlk .mlk-dash__grid{ grid-template-columns: 1fr; }
	.mlk .mlk-dash__card{ padding: 18px; border-radius: 20px; }
	.mlk .mlk-acc__panel{ padding: 16px; border-radius: 20px; overflow-x: auto; }
	.mlk .mlk-acc__panel .woocommerce-Addresses, .mlk .mlk-acc__panel .u-columns{ grid-template-columns: 1fr; }
	.mlk .mlk-player__bar{ flex-wrap: wrap; gap: 10px; padding: 10px; }
	.mlk .mlk-player__course{ flex: 1; font-size: 14px; }
	.mlk .mlk-player__prog{ width: 100%; margin: 0; }
	.mlk .mlk-player__prog .mlk-acc-bar{ flex: 1; width: auto; }
	.mlk .mlk-player__grid{ grid-template-columns: 1fr; gap: 18px; margin-top: 14px; }
	.mlk .mlk-player__head h1{ font-size: 20px; }
	.mlk .mlk-player__content :is(iframe, video){ border-radius: 16px; }
	.mlk .mlk-player__side{ position: static; max-height: none; padding: 14px; }
	.mlk .mlk-player__ask{ flex-wrap: wrap; }
	.mlk .mlk-player__ask .mlk-btn{ width: 100%; }
}


/* ================================================================== Course page (1.8) */
.mlk .mlk-chero{ display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.08fr); align-items: center; gap: 48px; margin-top: 36px; }
.mlk .mlk-chero__text{ display: flex; flex-direction: column; gap: 16px; min-width: 0; }
.mlk .mlk-chero__tags{ display: flex; flex-wrap: wrap; align-items: center; gap: 6px 10px; font-size: 13px; color: var(--mlk-muted); }
.mlk .mlk-chero__tags em{ padding: 0 12px; border-radius: 999px; background: #f6ecd2; color: var(--mlk-gold-ink); font-size: 12px; font-style: normal; font-weight: 700; line-height: 24px; }
.mlk .mlk-chero__tags em.is-soon{ background: var(--mlk-celadon); color: var(--mlk-jade); }
.mlk .mlk-chero h1{ font-size: 44px; line-height: 1.4; }
.mlk .mlk-chero__lead{ max-width: 520px; font-size: 16px; line-height: 2; color: var(--mlk-muted); }
.mlk .mlk-chero__facts{ display: flex; flex-wrap: wrap; gap: 8px; margin: 2px 0 0; }
.mlk .mlk-chero__facts li{ display: inline-flex; align-items: center; gap: 8px; padding: 6px 12px 6px 14px; border-radius: 999px; background: #fff; border: 1px solid var(--mlk-line); font-size: 13px; font-weight: 500; }
.mlk .mlk-chero__facts li > span{ display: inline-flex; color: var(--mlk-jade); }
.mlk .mlk-chero__buy{ display: flex; align-items: center; gap: 20px; margin-top: 10px; padding: 16px 18px; border-radius: 22px; background: #fff; border: 1px solid var(--mlk-line); box-shadow: var(--mlk-shadow); }
.mlk .mlk-chero__buy .mlk-cprice{ flex: 1; min-width: 0; }
.mlk .mlk-chero__buy .mlk-addbtn{ flex: none; min-width: 190px; }
.mlk .mlk-chero__buy .mlk-cprice__note{ display: none; }
.mlk .mlk-chero__media{ position: relative; display: block; overflow: hidden; width: 100%; aspect-ratio: 3 / 2; padding: 0; border: 0; border-radius: 26px; background: var(--mlk-deep); box-shadow: 0 30px 60px -32px rgba(18, 38, 28, 0.55); }
.mlk button.mlk-chero__media{ cursor: pointer; }
.mlk .mlk-chero__media img{ position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.mlk .mlk-chero__play{ position: absolute; z-index: 1; left: 50%; top: 50%; display: inline-flex; align-items: center; justify-content: center; width: 72px; height: 72px; border-radius: 50%; background: rgba(255, 255, 255, 0.94); color: var(--mlk-ink); transform: translate(-50%, -50%); transition: transform 0.2s ease; box-shadow: 0 12px 30px -10px rgba(0, 0, 0, 0.5); }
.mlk button.mlk-chero__media:hover .mlk-chero__play{ transform: translate(-50%, -50%) scale(1.08); }
.mlk .mlk-chero__tag{ position: absolute; z-index: 1; right: 16px; bottom: 16px; padding: 4px 14px; border-radius: 999px; background: rgba(12, 36, 25, 0.6); color: #fff; font-size: 13px; }

/* Price (hero and card) */
.mlk .mlk-cprice{ display: flex; flex-direction: column; gap: 2px; }
.mlk .mlk-cprice__label{ font-size: 12.5px; color: var(--mlk-muted); }
.mlk .mlk-cprice__was{ display: inline-flex; align-items: center; gap: 8px; }
.mlk .mlk-cprice__was del{ font-size: 13px; color: #8a968f; }
.mlk .mlk-cprice__was em{ padding: 0 8px; border-radius: 999px; background: #fbe9e4; color: #b4432a; font-size: 11.5px; font-style: normal; font-weight: 700; line-height: 21px; }
.mlk .mlk-cprice__now{ display: flex; align-items: baseline; gap: 6px; margin: 0; color: var(--mlk-ink); }
.mlk .mlk-cprice__now b{ font-size: 28px; font-weight: 800; line-height: 1.35; letter-spacing: -0.3px; }
.mlk .mlk-cprice__now span{ font-size: 14px; font-weight: 500; color: var(--mlk-muted); }
.mlk .mlk-cprice__now.is-free b, .mlk .mlk-cprice__now.is-soon b{ color: var(--mlk-jade); }
.mlk .mlk-cprice__note{ font-size: 13px; line-height: 1.9; color: var(--mlk-muted); }
.mlk .mlk-cbuy__progress{ display: flex; align-items: center; gap: 12px; }
.mlk .mlk-cbuy__progress b{ font-size: 26px; font-weight: 800; color: var(--mlk-jade); }
.mlk .mlk-cbuy__bar{ flex: 1; height: 8px; border-radius: 999px; background: #e3e9e1; overflow: hidden; }
.mlk .mlk-cbuy__bar i{ display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, var(--mlk-gold), var(--mlk-jade)); }

/* Body */
.mlk .mlk-cbody{ display: flex; align-items: flex-start; gap: 36px; margin-top: 56px; }
.mlk .mlk-cbody__main{ flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 40px; }
.mlk .mlk-cbody__side{ position: sticky; top: 100px; flex: 0 0 340px; display: flex; flex-direction: column; gap: 14px; }
body.admin-bar .mlk .mlk-cbody__side{ top: 132px; }
.mlk .mlk-cblock{ gap: 16px; }
.mlk .mlk-cblock h2{ font-size: 24px; }

/* "About the course" — long texts fold */
.mlk .mlk-fold{ position: relative; padding: 22px 28px; }
.mlk .mlk-fold__body{ max-height: 300px; overflow: hidden; transition: max-height 0.4s ease; }
.mlk .mlk-fold.is-open .mlk-fold__body{ max-height: none; }
.mlk .mlk-fold:not(.is-open):not(.is-short) .mlk-fold__body{ -webkit-mask-image: linear-gradient(to bottom, #000 62%, transparent); mask-image: linear-gradient(to bottom, #000 62%, transparent); }
.mlk .mlk-fold.is-short .mlk-fold__body{ max-height: none; }
.mlk .mlk-fold.is-short .mlk-fold__btn{ display: none; }
.mlk .mlk-fold__btn{ display: inline-flex; align-items: center; gap: 6px; margin-top: 10px; padding: 0; border: 0; background: none; color: var(--mlk-jade); font-size: 14px; font-weight: 700; }
.mlk .mlk-fold__btn .mlk-icon{ transition: transform 0.25s ease; }
.mlk .mlk-fold.is-open .mlk-fold__btn .mlk-icon{ transform: rotate(180deg); }
.mlk .mlk-fold .mlk-prose p{ margin-bottom: 6px; }

/* Session list */
.mlk .mlk-lessons{ padding: 8px; }
.mlk .mlk-lessons__list{ display: flex; flex-direction: column; margin: 0; padding: 0; list-style: none; counter-reset: none; }
.mlk .mlk-les{ margin: 0; padding: 0; }
.mlk .mlk-les + .mlk-les{ border-top: 1px solid var(--mlk-line); }
.mlk .mlk-les__row, .mlk .mlk-les summary{ display: flex; align-items: center; gap: 14px; min-height: 56px; padding: 8px 14px; border-radius: 14px; list-style: none; color: var(--mlk-ink); }
.mlk .mlk-les summary{ cursor: pointer; }
.mlk .mlk-les summary::-webkit-details-marker{ display: none; }
.mlk a.mlk-les__row:hover, .mlk .mlk-les summary:hover{ background: var(--mlk-mist); }
.mlk .mlk-les__n{ flex: none; display: inline-flex; align-items: center; justify-content: center; width: 30px; height: 30px; border-radius: 10px; background: var(--mlk-mist); color: var(--mlk-jade); font-size: 13px; font-weight: 700; }
.mlk .mlk-les__t{ flex: 1; min-width: 0; display: flex; flex-direction: column; font-size: 15px; font-weight: 600; line-height: 1.7; }
.mlk .mlk-les__t small{ font-size: 12.5px; font-weight: 400; color: var(--mlk-muted); }
.mlk .mlk-les__i{ flex: none; display: inline-flex; color: #9aa69f; }
.mlk a.mlk-les__row .mlk-les__i{ color: var(--mlk-jade); }
.mlk .mlk-les details[open] .mlk-les__i{ transform: rotate(180deg); }
.mlk .mlk-les__topics{ margin: 0 0 8px; padding: 0 58px 0 14px; list-style: none; }
.mlk .mlk-les__topics :where(a, span){ display: flex; align-items: center; gap: 10px; min-height: 40px; font-size: 14px; color: #33463c; }
.mlk .mlk-les__topics a:hover{ color: var(--mlk-jade); }
.mlk .mlk-lessons.is-folded .mlk-les.is-extra{ display: none; }
.mlk .mlk-lessons__all{ display: flex; align-items: center; justify-content: center; gap: 8px; width: 100%; min-height: 50px; margin-top: 4px; border: 0; border-top: 1px solid var(--mlk-line); border-radius: 0 0 16px 16px; background: none; color: var(--mlk-jade); font-size: 14px; font-weight: 700; }
.mlk .mlk-lessons__all:hover{ background: var(--mlk-mist); }
.mlk .mlk-lessons:not(.is-folded) .mlk-lessons__all .mlk-icon{ transform: rotate(180deg); }

/* Teacher */
.mlk .mlk-teacher .mlk-link{ min-height: 36px; margin-top: 4px; font-size: 13px; }

/* Price card */
.mlk .mlk-cbuy{ display: flex; flex-direction: column; gap: 14px; padding: 14px 14px 20px; border-radius: 26px; background: #fff; border: 1px solid var(--mlk-line); box-shadow: 0 1px 2px rgba(18, 38, 28, 0.03), 0 24px 48px -28px rgba(18, 38, 28, 0.3); }
.mlk .mlk-cbuy > :not(.mlk-cbuy__thumb){ margin-inline: 8px; }
.mlk .mlk-cbuy__thumb{ display: block; overflow: hidden; aspect-ratio: 3 / 2; border-radius: 16px; background: var(--mlk-deep); }
.mlk .mlk-cbuy__thumb img{ width: 100%; height: 100%; object-fit: cover; }
.mlk .mlk-cbuy__title{ font-size: 16px; font-weight: 700; line-height: 1.7; }
.mlk .mlk-cbuy .mlk-addbtn{ min-height: 52px; }
.mlk .mlk-cbuy .mlk-btn--lg{ width: auto; min-height: 48px; border-radius: 14px; }
.mlk .mlk-cbuy .added_to_cart{ display: none !important; }
.mlk .mlk-cbuy .mlk-btn.added{ background: #e7efe6; border-color: var(--mlk-jade); color: var(--mlk-jade); }
.mlk .mlk-cbuy .mlk-btn.loading{ opacity: 0.6; }
.mlk .mlk-cbuy__ld :where(input[type="submit"], .btn-join, button){ width: 100%; min-height: 52px; border: 0; border-radius: 14px; background: var(--mlk-jade); color: #fff; font: inherit; font-size: 15px; font-weight: 600; cursor: pointer; }
.mlk .mlk-cbuy__notes{ display: flex; flex-direction: column; gap: 6px; margin: 0; padding: 14px 0 0; border-top: 1px solid var(--mlk-line); font-size: 13.5px; color: #33463c; }
.mlk .mlk-cbuy__notes li{ display: flex; align-items: center; gap: 10px; }
.mlk .mlk-cbuy__notes li::before{ content: ""; flex: none; width: 5px; height: 5px; border-radius: 50%; background: #b8892b; }
.mlk .mlk-cbar-m .mlk-buybar__info del{ color: #8a968f; }
.mlk .mlk-cbar-m .mlk-buybar__info em{ color: #b4432a; font-style: normal; font-weight: 700; }

@media (max-width: 1100px) {
	.mlk .mlk-chero{ grid-template-columns: 1fr 1fr; gap: 28px; }
	.mlk .mlk-chero h1{ font-size: 34px; }
	.mlk .mlk-chero__buy{ flex-wrap: wrap; }
	.mlk .mlk-chero__buy .mlk-addbtn{ flex: 1 1 100%; }
	.mlk .mlk-cbody{ gap: 22px; }
	.mlk .mlk-cbody__side{ flex-basis: 300px; }
}
@media (max-width: 820px) {
	.mlk .mlk-cpage{ padding-bottom: 104px; }
	.mlk .mlk-chero{ display: flex; flex-direction: column-reverse; align-items: stretch; gap: 16px; margin-top: 12px; }
	.mlk .mlk-chero .mlk-crumbs{ display: none; }
	.mlk .mlk-chero__text{ gap: 10px; padding: 0 2px; }
	.mlk .mlk-chero h1{ font-size: 25px; line-height: 1.55; }
	.mlk .mlk-chero__lead{ font-size: 14px; line-height: 1.95; }
	.mlk .mlk-chero__facts{ gap: 6px; }
	.mlk .mlk-chero__facts li{ padding: 4px 10px 4px 12px; font-size: 12px; }
	.mlk .mlk-chero__buy{ display: none; }
	.mlk .mlk-chero__media{ border-radius: 20px; }
	.mlk .mlk-chero__play{ width: 54px; height: 54px; }
	.mlk .mlk-cbody{ flex-direction: column; gap: 28px; margin-top: 28px; }
	.mlk .mlk-cbody__main{ gap: 28px; }
	.mlk .mlk-cbody__side{ position: static; flex: none; width: 100%; }
	.mlk .mlk-cbody__side .mlk-cbuy{ display: none; }
	.mlk .mlk-cbody__side .mlk-cbuy:has(.mlk-cbuy__ld){ display: flex; }
	.mlk .mlk-cblock{ gap: 12px; }
	.mlk .mlk-cblock h2{ font-size: 20px; }
	.mlk .mlk-fold{ padding: 16px 18px; }
	.mlk .mlk-fold__body{ max-height: 260px; }
	.mlk .mlk-lessons{ padding: 4px; }
	.mlk .mlk-les__row, .mlk .mlk-les summary{ gap: 12px; min-height: 52px; padding: 6px 10px; }
	.mlk .mlk-les__n{ width: 28px; height: 28px; font-size: 12px; }
	.mlk .mlk-les__t{ font-size: 14px; }
	.mlk .mlk-les__topics{ padding: 0 50px 0 10px; }
}

/* ================================================================== Sign in / sign up (1.8) */
.mlk .mlk-auth{ max-width: 1080px; margin: 28px auto 80px; }
.mlk .mlk-auth__wrap{ display: grid; grid-template-columns: minmax(0, 0.95fr) minmax(0, 1fr); overflow: hidden; border-radius: 32px; background: #fff; border: 1px solid var(--mlk-line); box-shadow: 0 50px 90px -60px rgba(12, 36, 25, 0.55); }

/* Brand side (desktop) / welcome hero (phones) */
.mlk .mlk-auth__side{ position: relative; isolation: isolate; overflow: hidden; display: flex; flex-direction: column; align-items: flex-start; justify-content: center; gap: 14px; min-height: 600px; padding: 48px; background: radial-gradient(130% 100% at 90% 0%, #23664a 0%, #123526 45%, var(--mlk-deep) 100%); color: #fff; }
.mlk .mlk-auth__side > svg{ position: absolute; z-index: -1; left: -120px; bottom: -120px; width: 460px; opacity: 0.22; }
.mlk .mlk-auth__glow{ position: absolute; z-index: -1; right: -80px; top: -80px; width: 320px; height: 320px; border-radius: 50%; background: radial-gradient(circle, rgba(212, 164, 65, 0.35), rgba(212, 164, 65, 0) 70%); }
.mlk .mlk-auth__portrait{ position: relative; display: block; width: 132px; height: 132px; margin-bottom: 10px; filter: drop-shadow(0 18px 30px rgba(0, 0, 0, 0.45)); animation: mlk-auth-float 6s ease-in-out infinite; }
.mlk .mlk-auth__portrait img{ width: 100%; height: 100%; object-fit: contain; }
@keyframes mlk-auth-float{ 50%{ transform: translateY(-6px); } }
.mlk .mlk-auth__brand{ display: inline-flex; align-items: center; gap: 8px; padding: 4px 12px; border-radius: 999px; background: rgba(212, 164, 65, 0.14); border: 1px solid rgba(212, 164, 65, 0.3); color: var(--mlk-gold-soft); font-size: 13px; font-weight: 600; }
.mlk .mlk-auth__side h2{ max-width: 360px; font-size: 30px; line-height: 1.55; color: #fff; text-wrap: balance; }
.mlk .mlk-auth__side ul{ display: flex; flex-direction: column; gap: 12px; margin-top: 8px; }
.mlk .mlk-auth__side li{ display: flex; align-items: center; gap: 12px; color: var(--mlk-on-dark); font-size: 14px; }
.mlk .mlk-auth__side li > span{ flex: none; display: inline-flex; align-items: center; justify-content: center; width: 32px; height: 32px; border-radius: 10px; background: rgba(255, 255, 255, 0.08); color: var(--mlk-gold); }

/* Form card */
.mlk .mlk-auth__card{ position: relative; display: flex; flex-direction: column; justify-content: center; gap: 18px; padding: 44px 48px; background: #fff; }
.mlk .mlk-auth__head h1{ font-size: 28px; line-height: 1.5; }
.mlk .mlk-auth__head p{ margin-top: 4px; color: var(--mlk-muted); font-size: 14px; line-height: 1.9; }
.mlk .mlk-auth__tabs{ position: relative; display: grid; grid-template-columns: 1fr 1fr; padding: 5px; border-radius: 16px; background: var(--mlk-mist); }
.mlk .mlk-auth__tabs button{ position: relative; z-index: 1; min-height: 44px; border: 0; border-radius: 12px; background: none; color: var(--mlk-muted); font-size: 14px; font-weight: 700; transition: color 0.25s ease; }
.mlk .mlk-auth__tabs button[aria-selected="true"]{ color: var(--mlk-ink); }
.mlk .mlk-auth__pill{ position: absolute; top: 5px; bottom: 5px; right: 5px; width: calc(50% - 5px); border-radius: 12px; background: #fff; box-shadow: 0 6px 16px -8px rgba(18, 38, 28, 0.35); transition: transform 0.35s cubic-bezier(0.2, 0.8, 0.2, 1); }
.mlk [data-tab="login"] .mlk-auth__pill{ transform: translateX(-100%); }
.mlk .mlk-auth__form{ display: flex; flex-direction: column; gap: 14px; animation: mlk-auth-in 0.35s ease both; }
.mlk .mlk-auth__form[hidden]{ display: none; }
@keyframes mlk-auth-in{ from{ opacity: 0; transform: translateY(8px); } }
.mlk .mlk-auth__field{ display: flex; flex-direction: column; gap: 6px; }
.mlk .mlk-auth__field > span:first-child{ font-size: 13px; font-weight: 600; color: var(--mlk-ink); }
.mlk .mlk-auth__field small{ font-weight: 400; color: var(--mlk-muted); }
.mlk .mlk-auth__ctl{ position: relative; display: block; }
.mlk .mlk-auth__ico{ position: absolute; right: 14px; top: 50%; z-index: 1; display: inline-flex; margin-top: -9px; color: #9aa69f; pointer-events: none; transition: color 0.2s ease; }
.mlk .mlk-auth__ico svg{ width: 18px; height: 18px; }
.mlk .mlk-auth__ctl:focus-within .mlk-auth__ico{ color: var(--mlk-jade); }
.mlk .mlk-auth__ctl input, .mlk .mlk-auth__lost input.input-text{ width: 100%; min-height: 54px; padding: 0 46px 0 16px; border: 1.5px solid rgba(18, 38, 28, 0.1); border-radius: 16px; background: #f7f9f5; color: var(--mlk-ink); font-size: 15px; transition: border-color 0.2s ease, box-shadow 0.2s ease, background 0.2s ease; }
.mlk .mlk-auth__ctl input[dir="ltr"]{ text-align: right; }
.mlk .mlk-auth__ctl input[dir="ltr"]:not(:placeholder-shown){ text-align: left; letter-spacing: 0.5px; }
.mlk .mlk-auth__lost input.input-text{ padding: 0 16px; }
.mlk .mlk-auth__ctl input:focus, .mlk .mlk-auth__lost input.input-text:focus{ outline: none; border-color: var(--mlk-jade); background: #fff; box-shadow: 0 0 0 4px rgba(31, 90, 64, 0.1); }
.mlk .mlk-auth__ctl input::placeholder{ color: #a9b2ad; }
.mlk .mlk-auth__ctl.is-pass input{ padding-left: 52px; }
.mlk .mlk-auth__eye{ position: absolute; left: 7px; top: 50%; z-index: 1; display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; margin-top: -20px; border: 0; border-radius: 12px; background: none; color: var(--mlk-muted); }
.mlk .mlk-auth__eye svg{ flex: none; width: 18px; height: 18px; }
.mlk .mlk-auth__eye:hover, .mlk .mlk-auth__eye.is-on{ color: var(--mlk-jade); background: var(--mlk-mist); }
.mlk .mlk-auth__note{ font-size: 12px; color: var(--mlk-muted); }
.mlk .mlk-auth__row{ display: flex; align-items: center; justify-content: space-between; gap: 10px; font-size: 13px; }
.mlk .mlk-auth__row a, .mlk .mlk-auth__link{ padding: 0; border: 0; background: none; color: var(--mlk-jade); font-size: 13px; font-weight: 600; }
.mlk .mlk-auth__check{ display: inline-flex; align-items: center; gap: 8px; cursor: pointer; }
.mlk .mlk-auth__check input{ width: 18px; height: 18px; margin: 0; accent-color: var(--mlk-jade); }
.mlk .mlk-auth__submit, .mlk .mlk-auth__lost button[type="submit"]{ position: relative; overflow: hidden; display: inline-flex; align-items: center; justify-content: center; gap: 10px; width: 100%; min-height: 56px; margin-top: 4px; border: 0; border-radius: 16px; background: linear-gradient(180deg, #246a4b, #1b5139); color: #fff !important; font-size: 15.5px; font-weight: 700; box-shadow: 0 18px 30px -16px rgba(31, 90, 64, 0.9), inset 0 1px 0 rgba(255, 255, 255, 0.12); transition: transform 0.2s ease, box-shadow 0.2s ease; }
.mlk .mlk-auth__submit::after{ content: ""; position: absolute; inset: 0; background: linear-gradient(110deg, transparent 30%, rgba(255, 255, 255, 0.18) 50%, transparent 70%); transform: translateX(120%); transition: transform 0.7s ease; }
.mlk .mlk-auth__submit:hover::after{ transform: translateX(-120%); }
.mlk .mlk-auth__submit:hover{ box-shadow: 0 22px 34px -16px rgba(31, 90, 64, 0.95), inset 0 1px 0 rgba(255, 255, 255, 0.12); }
.mlk .mlk-auth__submit:active{ transform: scale(0.99); }
.mlk .mlk-auth__submit.is-busy{ pointer-events: none; opacity: 0.85; }
.mlk .mlk-auth__submit.is-busy::before{ content: ""; width: 18px; height: 18px; border: 2px solid rgba(255, 255, 255, 0.35); border-top-color: #fff; border-radius: 50%; animation: mlk-spin 0.7s linear infinite; }
.mlk .mlk-auth__alt{ text-align: center; color: var(--mlk-muted); font-size: 13.5px; }
.mlk .mlk-auth__alt button, .mlk .mlk-auth__alt a{ display: inline-flex; align-items: center; gap: 4px; padding: 0; border: 0; background: none; color: var(--mlk-jade); font-weight: 700; }
.mlk .mlk-auth__safe{ display: flex; align-items: center; justify-content: center; gap: 6px; margin-top: 2px; padding-top: 16px; border-top: 1px solid var(--mlk-line); color: #8a968f; font-size: 12px; text-align: center; }
.mlk .mlk-auth__safe svg, .mlk .mlk-auth__safe .mlk-icon{ color: var(--mlk-jade); }
.mlk .mlk-auth__hint{ padding: 12px 14px; border-radius: 14px; background: var(--mlk-sand); color: #5d4a1c; font-size: 13px; line-height: 1.9; }
.mlk .mlk-auth__hint a{ color: var(--mlk-jade); font-weight: 700; }
.mlk .mlk-auth__lost form{ display: flex; flex-direction: column; gap: 12px; }
.mlk .mlk-auth__lost form > p:first-child{ display: none; }
.mlk .mlk-auth__lost label{ display: block; margin-bottom: 6px; font-size: 13px; font-weight: 600; }
.mlk .mlk-auth__lost .form-row{ margin: 0; padding: 0; width: 100%; float: none; }
.mlk .mlk-auth__lost .clear{ display: none; }
.mlk .mlk-auth__notices:empty{ display: none; }
.mlk .mlk-auth__notices :where(.woocommerce-error, .woocommerce-message, .woocommerce-info){ margin: 0; padding: 12px 16px; border-radius: 14px; list-style: none; font-size: 13.5px; line-height: 1.9; }
.mlk .mlk-auth__notices .woocommerce-error{ background: #fbeeea; color: #8f2f1c; border: 1px solid #f2d3ca; }
.mlk .mlk-auth__notices :where(.woocommerce-message, .woocommerce-info){ background: var(--mlk-celadon); color: var(--mlk-jade); border: 1px solid rgba(31, 90, 64, 0.15); }
.mlk .mlk-auth__notices a{ color: inherit; font-weight: 700; text-decoration: underline; }
.mlk .mlk-auth__form .woocommerce-privacy-policy-text{ font-size: 12px; line-height: 1.9; color: var(--mlk-muted); }
.mlk .mlk-auth__form .woocommerce-privacy-policy-text p{ margin: 0; }

@media (max-width: 820px) {
	/* Phones: a welcome hero edge to edge, the form rises over it like an app sheet */
	.mlk .mlk-auth{ margin: -20px calc(var(--mlk-gutter, 16px) * -1) 24px; }
	.mlk .mlk-auth__wrap{ display: block; overflow: visible; border: 0; border-radius: 0; background: none; box-shadow: none; }
	.mlk .mlk-auth__side{ align-items: center; justify-content: flex-start; gap: 8px; min-height: 0; padding: 26px 20px 74px; border-radius: 0 0 34px 34px; text-align: center; }
	.mlk .mlk-auth__side > svg{ left: auto; right: -150px; bottom: -170px; width: 380px; }
	.mlk .mlk-auth__glow{ right: auto; left: 50%; top: -120px; margin-left: -160px; }
	.mlk .mlk-auth__portrait{ width: 92px; height: 92px; margin-bottom: 4px; }
	.mlk .mlk-auth__brand{ font-size: 12px; }
	.mlk .mlk-auth__side h2{ max-width: 280px; font-size: 20px; }
	.mlk .mlk-auth__side ul{ display: none; }
	.mlk .mlk-auth__card{ gap: 16px; margin: -52px 12px 0; padding: 24px 18px 20px; border-radius: 28px; border: 1px solid var(--mlk-line); box-shadow: 0 30px 60px -36px rgba(12, 36, 25, 0.5); animation: mlk-auth-sheet 0.55s cubic-bezier(0.2, 0.8, 0.2, 1) both; }
	@keyframes mlk-auth-sheet{ from{ opacity: 0; transform: translateY(26px); } }
	.mlk .mlk-auth__head{ text-align: center; }
	.mlk .mlk-auth__head h1{ font-size: 21px; }
	.mlk .mlk-auth__head p{ font-size: 13px; }
	.mlk .mlk-auth__ctl input, .mlk .mlk-auth__lost input.input-text{ min-height: 52px; font-size: 16px; }
	.mlk .mlk-auth__submit, .mlk .mlk-auth__lost button[type="submit"]{ min-height: 54px; }
}
@media (prefers-reduced-motion: reduce) {
	.mlk .mlk-auth__portrait, .mlk .mlk-auth__card, .mlk .mlk-auth__form{ animation: none; }
}


/* One-time code */
.mlk .mlk-otp__step{ display: flex; flex-direction: column; gap: 14px; }
.mlk .mlk-otp__step[hidden]{ display: none; }
.mlk .mlk-otp__sent{ display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 4px 10px; color: var(--mlk-muted); font-size: 13.5px; text-align: center; }
.mlk .mlk-otp__sent b{ color: var(--mlk-ink); font-weight: 700; letter-spacing: 0.5px; }
.mlk .mlk-otp__sent button{ padding: 2px 10px; border: 0; border-radius: 999px; background: var(--mlk-mist); color: var(--mlk-jade); font-size: 12.5px; font-weight: 700; }
.mlk .mlk-otp__boxes{ display: flex; justify-content: center; gap: 10px; }
.mlk .mlk-otp__boxes input{ width: 56px; height: 62px; padding: 0; border: 1.5px solid rgba(18, 38, 28, 0.12); border-radius: 16px; background: #f7f9f5; color: var(--mlk-ink); font-size: 24px; font-weight: 700; text-align: center; caret-color: var(--mlk-jade); transition: border-color 0.2s ease, box-shadow 0.2s ease, background 0.2s ease, transform 0.2s ease; }
.mlk .mlk-otp__boxes input:focus{ outline: none; border-color: var(--mlk-jade); background: #fff; box-shadow: 0 0 0 4px rgba(31, 90, 64, 0.1); }
.mlk .mlk-otp__boxes input.is-filled{ border-color: rgba(31, 90, 64, 0.45); background: #fff; }
.mlk .mlk-otp__boxes.is-error input{ border-color: #d26a52; animation: mlk-otp-shake 0.35s ease; }
@keyframes mlk-otp-shake{ 25%{ transform: translateX(-4px); } 75%{ transform: translateX(4px); } }
.mlk .mlk-otp__resend{ display: flex; justify-content: center; color: var(--mlk-muted); font-size: 13px; }
.mlk .mlk-otp__resend button[hidden]{ display: none; }
.mlk .mlk-otp__resend button{ padding: 0; border: 0; background: none; color: var(--mlk-jade); font-size: 13px; font-weight: 700; }
.mlk .mlk-otp__msg{ min-height: 0; margin: -4px 0 0; font-size: 13px; line-height: 1.9; text-align: center; color: #9b3a24; }
.mlk .mlk-otp__msg:empty{ display: none; }
.mlk .mlk-otp__msg.is-ok{ color: var(--mlk-jade); }
@media (max-width: 380px) {
	.mlk .mlk-otp__boxes{ gap: 8px; }
	.mlk .mlk-otp__boxes input{ width: 50px; height: 56px; }
}

/* ================================================================== Student panel (1.8) */
.mlk .mlk-acc__mbar{ display: none; }
.mlk .mlk-dash__thumb{ aspect-ratio: 3 / 2; }
.mlk .mlk-dash__cont{ gap: 28px; min-height: 0; padding: 22px; }
.mlk .mlk-dash__top{ grid-template-columns: minmax(0, 1fr) 210px; gap: 18px; align-items: stretch; }
.mlk .mlk-dash__stats{ grid-template-rows: repeat(3, 1fr); }
.mlk .mlk-dash__stats li{ padding: 14px 18px; border-radius: 20px; }
.mlk .mlk-dash__grid{ gap: 18px; margin-top: 18px; align-items: start; }
.mlk .mlk-dash__card{ gap: 4px; padding: 22px 24px; }
.mlk .mlk-dash__card-head{ margin-bottom: 8px; padding-bottom: 12px; border-bottom: 1px solid var(--mlk-line); }
.mlk .mlk-acc-course{ gap: 14px; padding: 12px 0; }
.mlk .mlk-acc-course__cover{ width: 84px; height: 56px; border-radius: 12px; background: var(--mlk-deep); }
.mlk .mlk-acc-courses{ padding: 8px 24px; }
.mlk .mlk-acc__head{ margin-bottom: 20px; }
@media (max-width: 1100px) {
	.mlk .mlk-dash__top{ grid-template-columns: 1fr; }
	.mlk .mlk-dash__stats{ grid-template-columns: repeat(3, minmax(0, 1fr)); grid-template-rows: none; }
}
@media (max-width: 820px) {
	.mlk .mlk-acc{ gap: 14px; }
	.mlk .mlk-acc__side{ display: none; }
	.mlk .mlk-acc__mbar{ display: flex; align-items: center; gap: 12px; padding: 10px 10px 10px 12px; border-radius: 20px; background: #fff; border: 1px solid var(--mlk-line); }
	.mlk .mlk-acc__mbar .mlk-acc__avatar{ width: 40px; height: 40px; font-size: 16px; }
	.mlk .mlk-acc__mbar > span:nth-child(2){ flex: 1; min-width: 0; display: flex; flex-direction: column; line-height: 1.6; }
	.mlk .mlk-acc__mbar strong{ overflow: hidden; font-size: 14px; text-overflow: ellipsis; white-space: nowrap; }
	.mlk .mlk-acc__mbar small{ color: var(--mlk-muted); font-size: 12px; }
	.mlk .mlk-acc__mbtn{ display: inline-flex; align-items: center; gap: 8px; min-height: 40px; padding: 0 14px; border: 0; border-radius: 12px; background: var(--mlk-mist); color: var(--mlk-ink); font-size: 13px; font-weight: 700; }
	.mlk .mlk-acc__head{ margin: 6px 2px 14px; }
	.mlk .mlk-acc__head h1{ font-size: 21px; }
	.mlk .mlk-dash__cont{ gap: 14px; padding: 14px 14px 18px; border-radius: 22px; }
	.mlk .mlk-dash__cont-body{ gap: 10px; padding: 0 4px; }
	.mlk .mlk-dash__top{ gap: 12px; }
	.mlk .mlk-dash__stats{ gap: 8px; }
	.mlk .mlk-dash__stats li{ border-radius: 16px; }
	.mlk .mlk-dash__grid{ gap: 12px; margin-top: 12px; }
	.mlk .mlk-dash__card{ padding: 16px 18px; border-radius: 20px; }
	.mlk .mlk-acc-courses{ padding: 4px 16px; border-radius: 20px; }
	.mlk .mlk-acc-course__cover{ width: 72px; height: 48px; }
}

/* ================================================================== Checkout (1.8) */
.mlk .mlk-cologin{ display: flex; align-items: center; gap: 8px; margin: -4px 0 14px; padding: 10px 14px; border-radius: 14px; background: var(--mlk-mist); color: var(--mlk-muted); font-size: 13.5px; }
.mlk .mlk-cologin svg{ color: var(--mlk-jade); }
.mlk .mlk-cologin a{ color: var(--mlk-jade); font-weight: 700; }
.mlk .mlk-co .woocommerce-account-fields{ margin-top: 6px; padding-top: 14px; border-top: 1px dashed rgba(18, 38, 28, 0.14); }
.mlk .mlk-co .woocommerce-account-fields .create-account{ margin: 0; }
.mlk .mlk-co .woocommerce-account-fields label.checkbox{ display: inline-flex; align-items: center; gap: 8px; font-size: 14px; }
.mlk .mlk-co .woocommerce-form__label-for-checkbox input{ width: 18px; height: 18px; accent-color: var(--mlk-jade); }

@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
	.mlk * { transition: none !important; }
}
/* Cart / checkout notices: no "view cart" button on these pages, brand colours */
.mlk .mlk-co .woocommerce-message .button.wc-forward{ display: none; }
.mlk .mlk-co :where(.woocommerce-error, .woocommerce-message, .woocommerce-info) .button{ min-height: 38px; padding: 0 16px; border-radius: 12px; background: var(--mlk-jade); color: #fff; font-size: 13px; }
.mlk .mlk-co .woocommerce-error{ background: #fbeeea; color: #8f2f1c; }
.mlk .mlk-co .woocommerce-error a{ color: inherit; font-weight: 700; text-decoration: underline; }
