/* سبد خرید مینیمال — همه رنگ‌ها و فاصله‌ها از متغیرهای CSS می‌آیند تا المنتور بتواند آن‌ها را override کند */
.mwe-cart {
	--mwe-accent: #1f2937;
	--mwe-on-accent: #ffffff;
	--mwe-text: #1f2937;
	--mwe-muted: #6b7280;
	--mwe-border: #e5e7eb;
	--mwe-surface: #f8f9fb;
	--mwe-card-bg: #ffffff;
	--mwe-danger: #b91c1c;
	--mwe-success: #15803d;
	--mwe-radius: 14px;
	--mwe-gap: 16px;

	color: var(--mwe-text);
	position: relative;
}
.mwe-cart *,
.mwe-cart *::before,
.mwe-cart *::after { box-sizing: border-box; }

.mwe-cart a { color: inherit; text-decoration: none; }
.mwe-cart button { font-family: inherit; cursor: pointer; }
.mwe-muted { color: var(--mwe-muted); }

.mwe-cart :focus-visible {
	outline: 2px solid var(--mwe-accent);
	outline-offset: 2px;
}

/* حالت در حال بارگذاری */
.mwe-cart__inner { transition: opacity .15s ease; }
.mwe-cart.is-loading .mwe-cart__inner { opacity: .5; pointer-events: none; }

/* ---------- چیدمان ---------- */
.mwe-cart__layout {
	display: grid;
	gap: calc(var(--mwe-gap) * 2);
	align-items: start;
}
.mwe-cart--split .mwe-cart__layout { grid-template-columns: minmax(0, 1fr) 360px; }
.mwe-cart--split .mwe-summary { position: sticky; top: 24px; }

@media (max-width: 900px) {
	.mwe-cart--split .mwe-cart__layout { grid-template-columns: minmax(0, 1fr); }
	.mwe-cart--split .mwe-summary { position: static; }
}

/* ---------- پیام‌ها ---------- */
.mwe-notice:empty { display: none; }
.mwe-notice {
	margin-block-end: var(--mwe-gap);
	padding: 12px 16px;
	border-radius: calc(var(--mwe-radius) - 4px);
	font-size: .92em;
	line-height: 1.7;
}
.mwe-notice--error { background: #fef2f2; color: var(--mwe-danger); }
.mwe-notice--success { background: #f0fdf4; color: var(--mwe-success); }

/* ---------- آیتم‌ها ---------- */
.mwe-items { display: flex; flex-direction: column; }

.mwe-item {
	display: grid;
	grid-template-columns: 84px minmax(0, 1fr) auto 120px 36px;
	grid-template-areas: "thumb info qty subtotal remove";
	align-items: center;
	gap: var(--mwe-gap);
	padding-block: var(--mwe-gap);
	border-block-end: 1px solid var(--mwe-border);
	transition: opacity .15s ease;
}
.mwe-item:first-child { padding-block-start: 0; }
.mwe-item--no-thumb {
	grid-template-columns: minmax(0, 1fr) auto 120px 36px;
	grid-template-areas: "info qty subtotal remove";
}

.mwe-item__thumb { grid-area: thumb; }
.mwe-item__thumb img {
	display: block;
	width: 84px;
	height: 84px;
	object-fit: cover;
	border-radius: calc(var(--mwe-radius) - 4px);
	background: var(--mwe-surface);
}
.mwe-item__info { grid-area: info; min-width: 0; }
.mwe-item__qty { grid-area: qty; }
.mwe-item__subtotal { grid-area: subtotal; text-align: end; font-weight: 600; }
.mwe-item__remove { grid-area: remove; }

.mwe-item__name { margin: 0; font-size: 1rem; font-weight: 600; line-height: 1.6; }
.mwe-item__name a:hover { color: var(--mwe-muted); }
.mwe-item__meta { margin-block-start: 2px; color: var(--mwe-muted); font-size: .85em; }
.mwe-item__meta dl, .mwe-item__meta p { margin: 0; }
.mwe-item__meta dt, .mwe-item__meta dd { display: inline; margin: 0; }
.mwe-item__meta dd p { display: inline; }
.mwe-item__unit { margin-block-start: 4px; color: var(--mwe-muted); font-size: .9em; }
.mwe-item__unit del { opacity: .65; margin-inline-end: 6px; }
.mwe-item__unit ins { text-decoration: none; }

.mwe-item__remove {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: transparent;
	color: var(--mwe-muted);
	transition: background .15s ease, color .15s ease;
}
.mwe-item__remove:hover { background: #fef2f2; color: var(--mwe-danger); }

/* ---------- انتخاب تعداد ---------- */
.mwe-qty {
	display: inline-flex;
	align-items: center;
	border: 1px solid var(--mwe-border);
	border-radius: 999px;
	padding: 3px;
}
.mwe-qty__btn {
	width: 32px;
	height: 32px;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: transparent;
	color: var(--mwe-text);
	font-size: 1.1rem;
	line-height: 1;
	transition: background .15s ease;
}
.mwe-qty__btn:hover { background: var(--mwe-surface); }
.mwe-qty__input {
	width: 42px;
	height: 32px;
	padding: 0;
	border: 0;
	background: transparent;
	color: inherit;
	text-align: center;
	font: inherit;
	font-weight: 600;
	-moz-appearance: textfield;
	appearance: textfield;
}
.mwe-qty__input::-webkit-outer-spin-button,
.mwe-qty__input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }

/* ---------- لینک ادامه خرید ---------- */
.mwe-link {
	align-self: flex-start;
	margin-block-start: var(--mwe-gap);
	color: var(--mwe-muted) !important;
	font-size: .92em;
	border-block-end: 1px solid var(--mwe-border);
	padding-block-end: 2px;
}
.mwe-link:hover { color: var(--mwe-text) !important; }

/* ---------- خلاصه سفارش ---------- */
.mwe-summary {
	background: var(--mwe-surface);
	border-radius: var(--mwe-radius);
	padding: calc(var(--mwe-gap) * 1.5);
}
.mwe-summary__title { margin: 0 0 var(--mwe-gap); font-size: 1.05rem; font-weight: 700; }

.mwe-coupon { display: flex; gap: 8px; margin-block-end: var(--mwe-gap); }
.mwe-coupon__input {
	flex: 1;
	min-width: 0;
	height: 44px;
	padding-inline: 14px;
	border: 1px solid var(--mwe-border);
	border-radius: calc(var(--mwe-radius) - 4px);
	background: #fff;
	color: var(--mwe-text);
	font: inherit;
	font-size: .92em;
}
.mwe-coupon__input:focus { border-color: var(--mwe-accent); outline: none; }

.mwe-rows { display: flex; flex-direction: column; gap: 12px; margin-block-end: calc(var(--mwe-gap) * 1.25); }
.mwe-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; font-size: .95em; }
.mwe-row__value { font-weight: 600; text-align: end; }
.mwe-row--discount .mwe-row__value { color: var(--mwe-success); }
.mwe-row--total {
	margin-block-start: 4px;
	padding-block-start: var(--mwe-gap);
	border-block-start: 1px solid var(--mwe-border);
	font-size: 1.1em;
	font-weight: 700;
}

.mwe-chip {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	margin-inline-start: 6px;
	padding: 2px 4px 2px 10px;
	border-radius: 999px;
	background: #fff;
	border: 1px solid var(--mwe-border);
	font-size: .8em;
	font-weight: 600;
	direction: ltr;
}
.mwe-chip__x {
	display: inline-flex;
	padding: 4px;
	border: 0;
	border-radius: 50%;
	background: transparent;
	color: var(--mwe-muted);
}
.mwe-chip__x:hover { color: var(--mwe-danger); }

/* ---------- دکمه‌ها ---------- */
.mwe-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 48px;
	padding-inline: 20px;
	border: 0;
	border-radius: calc(var(--mwe-radius) - 2px);
	font-size: .95rem;
	font-weight: 600;
	text-align: center;
	transition: opacity .15s ease, background .15s ease;
}
.mwe-btn--primary { background: var(--mwe-accent); color: var(--mwe-on-accent) !important; }
.mwe-btn--primary:hover { opacity: .88; }
.mwe-btn--soft { width: auto; height: 44px; background: var(--mwe-accent); color: var(--mwe-on-accent); }
.mwe-btn--soft:hover { opacity: .88; }
.mwe-btn--auto { width: auto; }

/* ---------- سبد خالی ---------- */
.mwe-empty { display: flex; flex-direction: column; align-items: center; gap: 12px; padding: 56px 16px; text-align: center; }
.mwe-empty__icon { color: var(--mwe-muted); }
.mwe-empty__text { margin: 0 0 8px; color: var(--mwe-muted); }

/* ---------- موبایل ---------- */
@media (max-width: 640px) {
	.mwe-item {
		grid-template-columns: 72px minmax(0, 1fr) auto;
		grid-template-areas:
			"thumb info remove"
			"thumb qty subtotal";
		row-gap: 10px;
	}
	.mwe-item--no-thumb {
		grid-template-columns: minmax(0, 1fr) auto;
		grid-template-areas:
			"info remove"
			"qty subtotal";
	}
	.mwe-item__thumb img { width: 72px; height: 72px; }
	.mwe-summary { padding: var(--mwe-gap); }
}

/* ============================================================
   سبک‌های ظاهری (preset) — سبک «minimal» همان پایه‌ی بالاست
   ============================================================ */

/* --- کارتی: هر محصول یک کارت، خلاصه سفارش سفید و قاب‌دار --- */
.mwe-cart--style-cards .mwe-items { gap: var(--mwe-gap); }
.mwe-cart--style-cards .mwe-item {
	padding: var(--mwe-gap);
	border: 1px solid var(--mwe-border);
	border-radius: var(--mwe-radius);
	background: var(--mwe-card-bg);
}
.mwe-cart--style-cards .mwe-item:first-child { padding-block-start: var(--mwe-gap); }
.mwe-cart--style-cards .mwe-item__thumb img { border-radius: calc(var(--mwe-radius) - 6px); }
.mwe-cart--style-cards .mwe-summary { background: var(--mwe-card-bg); border: 1px solid var(--mwe-border); }
.mwe-cart--style-cards .mwe-coupon__input { background: var(--mwe-surface); }

/* --- کنتراست: خلاصه سفارش با رنگ اصلی، دکمه معکوس --- */
.mwe-cart--style-contrast .mwe-summary { background: var(--mwe-accent); color: var(--mwe-on-accent); }
.mwe-cart--style-contrast .mwe-summary .mwe-muted { color: inherit; opacity: .7; }
.mwe-cart--style-contrast .mwe-row--total { border-color: rgba(255, 255, 255, .22); }
.mwe-cart--style-contrast .mwe-row--discount .mwe-row__value { color: #86efac; }
.mwe-cart--style-contrast .mwe-summary .mwe-btn--primary {
	background: var(--mwe-on-accent);
	color: var(--mwe-accent) !important;
}
.mwe-cart--style-contrast .mwe-summary .mwe-btn--soft { background: rgba(255, 255, 255, .16); color: inherit; }
.mwe-cart--style-contrast .mwe-coupon__input {
	background: rgba(255, 255, 255, .1);
	border-color: rgba(255, 255, 255, .28);
	color: inherit;
}
.mwe-cart--style-contrast .mwe-coupon__input::placeholder { color: inherit; opacity: .6; }
.mwe-cart--style-contrast .mwe-coupon__input:focus { border-color: var(--mwe-on-accent); }
.mwe-cart--style-contrast .mwe-chip { background: rgba(255, 255, 255, .12); border-color: rgba(255, 255, 255, .28); }
.mwe-cart--style-contrast .mwe-chip__x { color: inherit; }

@media (prefers-reduced-motion: reduce) {
	.mwe-cart * { transition: none !important; }
}


/* MWE visual refresh 0.3.1 */
.mwe-cart{--mwe-accent:#5145cd;--mwe-text:#24263a;--mwe-muted:#777b90;--mwe-border:#e9e9f2;--mwe-surface:#fafaff;--mwe-card-bg:#fff;--mwe-danger:#c43b52;--mwe-success:#16804a;--mwe-radius:18px;--mwe-gap:16px}
.mwe-cart__inner{gap:20px}
.mwe-cart__layout{align-items:start;gap:22px}
.mwe-cart__items,.mwe-cart .mwe-summary{border:1px solid #e9e9f2;border-radius:20px;background:#fff;box-shadow:0 5px 22px rgba(30,31,65,.035);overflow:hidden}
.mwe-cart .mwe-summary{padding:22px}
.mwe-cart .mwe-item{padding:17px;border-bottom:1px solid #f0f0f6}
.mwe-cart .mwe-item__thumb img{border-radius:12px}
.mwe-cart .mwe-btn{min-height:43px;border-radius:12px;font-weight:750;transition:all .2s}
.mwe-cart .mwe-btn--primary{background:#5145cd;color:#fff;border:1px solid #5145cd}
.mwe-cart .mwe-btn--primary:hover{background:#4034b6;transform:translateY(-1px)}
.mwe-cart .mwe-btn--soft{background:#fff;color:#555970;border:1px solid #e5e5ef}
.mwe-cart .mwe-coupon__input{min-height:42px;border:1px solid #e4e5ef;border-radius:11px;background:#fff;padding:10px 12px}
.mwe-cart .mwe-coupon__input:focus{outline:0;border-color:#8d84ed;box-shadow:0 0 0 3px rgba(81,69,205,.10)}
.mwe-cart .mwe-row--total{padding-top:15px;margin-top:12px;border-top:1px solid #ededf4;font-weight:850;font-size:16px}
.mwe-cart .mwe-chip{border-radius:999px;background:#f0eeff;color:#5145cd}
@media(max-width:767px){.mwe-cart .mwe-summary{padding:16px}.mwe-cart .mwe-item{padding:12px}}



/* MWE 0.3.2 — visual refinement */
.mwe-cart{
 --mwe-accent:#5145cd;--mwe-on-accent:#fff;--mwe-text:#202235;--mwe-muted:#777b90;
 --mwe-border:#e8e9f1;--mwe-surface:#f7f7fb;--mwe-card-bg:#fff;--mwe-radius:18px;--mwe-gap:20px;
 font-family:inherit;line-height:1.7;
}
.mwe-cart__layout{gap:24px}
.mwe-cart .mwe-items{gap:12px}
.mwe-cart .mwe-item{grid-template-columns:64px minmax(0,1fr) 112px 100px 30px;gap:16px;padding:18px;border:1px solid var(--mwe-border);border-radius:16px;background:#fff;box-shadow:0 3px 14px rgba(31,35,70,.035)}
.mwe-cart .mwe-item:first-child{padding-block:18px}
.mwe-cart .mwe-item__thumb img{width:64px;height:76px;object-fit:contain;background:#f8f8fc;border-radius:12px}
.mwe-cart .mwe-item__name{font-size:15px;font-weight:650;line-height:1.8}
.mwe-cart .mwe-item__unit{font-size:13px;color:#5145cd;font-weight:600}
.mwe-cart .mwe-item__subtotal{font-size:14px;color:#5145cd;white-space:nowrap}
.mwe-cart .mwe-qty{display:flex;align-items:center;justify-content:center;gap:4px;padding:4px;border:1px solid #e7e7f0;border-radius:999px;background:#fafaff}
.mwe-cart .mwe-qty__btn{width:30px;height:30px;border:0;border-radius:50%;background:#fff;color:#45465b;box-shadow:0 1px 4px #20204010}
.mwe-cart .mwe-qty__btn:hover{background:#5145cd;color:#fff}
.mwe-cart .mwe-qty__input{width:38px;min-height:30px;border:0;background:transparent;font-weight:600}
.mwe-cart .mwe-item__remove{width:30px;height:30px;color:#9a9caf}
.mwe-cart .mwe-item__remove:hover{background:#fff0f1;color:#d43e52}
.mwe-cart .mwe-summary{padding:24px;border:1px solid var(--mwe-border);border-radius:18px;background:#fff;box-shadow:0 8px 28px rgba(31,35,70,.045)}
.mwe-cart .mwe-summary__title{font-size:21px;margin-block-end:20px;letter-spacing:-.3px}
.mwe-cart .mwe-summary__row{padding-block:12px;border-block-end:1px solid #f0f0f5}
.mwe-cart .mwe-summary__total{font-size:17px;font-weight:750;padding-block:18px}
.mwe-cart .mwe-coupon{gap:8px;margin-block:18px}
.mwe-cart .mwe-coupon__input{min-width:0;border-radius:12px;background:#fafaff}
.mwe-cart .mwe-btn{min-height:44px;border-radius:12px;font-weight:650;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}
.mwe-cart .mwe-btn--primary{background:#5145cd;color:#fff;box-shadow:0 6px 14px rgba(81,69,205,.18)}
.mwe-cart .mwe-btn--primary:hover{background:#4035b5;transform:translateY(-1px);box-shadow:0 9px 18px rgba(81,69,205,.24)}
.mwe-cart--style-contrast .mwe-summary{background:#24243a;border-color:#24243a;color:#fff}
.mwe-cart--style-contrast .mwe-summary .mwe-btn--primary{background:#8c83ff;color:#fff}
.mwe-cart .mwe-empty{padding:48px 24px;border:1px dashed #d9d9e8;border-radius:18px;background:#fafaff;text-align:center}
@media(max-width:767px){
 .mwe-cart .mwe-item,.mwe-cart .mwe-item--no-thumb{grid-template-columns:56px minmax(0,1fr) 28px;grid-template-areas:"thumb info remove" "thumb qty subtotal";gap:8px 12px;padding:14px}
 .mwe-cart .mwe-item__thumb img{width:56px;height:64px}
 .mwe-cart .mwe-item__qty{justify-self:start}
 .mwe-cart .mwe-item__subtotal{align-self:center;font-size:13px}
 .mwe-cart .mwe-summary{padding:18px}
}
