/* فونت‌ها از داخل خود قالب بارگذاری می‌شوند (بدون وابستگی به CDN یا Google Fonts که در ایران کند/فیلتر است).
   Vazirmatn و Lalezar هر دو با مجوز OFL هستند؛ فایل مجوز در assets/fonts است. */
@font-face{font-family:'Vazirmatn';font-style:normal;font-weight:100 900;font-display:swap;src:url(fonts/vazirmatn-var.woff2) format('woff2')}
@font-face{font-family:'Lalezar';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/lalezar-arabic.woff2) format('woff2');unicode-range:U+0600-06FF,U+200C-200E,U+2010-2011,U+FB50-FDFF,U+FE70-FEFC}
@font-face{font-family:'Lalezar';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/lalezar-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122}
html, body{ overflow-x:hidden; max-width:100%; }
:root{
	--cmm-orange:#f2871f;
	--cmm-orange-dark:#e0740f;
	--cmm-rgb:242,135,31;
	--cmm-price:#ef5a1e;
	--cmm-text:#22242a;
	--cmm-gray:#8a8f98;
	--cmm-bg:#fbfbfc;
	--cmm-card:#ffffff;
	--cmm-border:#eef0f2;
	--cmm-radius:16px;
	--font-body:'Vazirmatn', Tahoma, sans-serif;
	--font-display:'Lalezar', 'Vazirmatn', Tahoma, sans-serif;
}
#cmm-app{
	font-family:var(--font-body);
	background:var(--cmm-bg);
	color:var(--cmm-text);
	max-width:1100px;
	margin:0 auto;
	padding:24px 20px 100px;
	box-sizing:border-box;
	overflow-x:hidden;
}
#cmm-app *{ box-sizing:border-box; }

.cmm-header{ text-align:center; margin-bottom:18px; position:relative; }
.cmm-logo{ width:64px; height:64px; object-fit:contain; margin:0 auto 10px; display:block; }
.cmm-logo-placeholder{ display:flex; align-items:center; justify-content:center; }
.cmm-cafe-name{ font-family:var(--font-display); font-size:32px; font-weight:400; letter-spacing:.5px; margin:6px 0 0; line-height:1.4; }

.cmm-tabs{
	display:flex; gap:10px; overflow-x:auto; padding:14px 2px 16px;
	position:sticky; top:0; background:var(--cmm-bg); z-index:20;
	scrollbar-width:none;
}
.cmm-tabs::-webkit-scrollbar{ display:none; }
.cmm-tab{
	flex:0 0 auto; padding:10px 18px; border-radius:10px; background:transparent;
	border:none; color:var(--cmm-text); font-family:inherit; font-size:14px; font-weight:600;
	cursor:pointer; white-space:nowrap; transition:.15s;
}
.cmm-tab.active{ background:var(--cmm-orange); color:#fff; box-shadow:0 4px 10px rgba(var(--cmm-rgb),.35); }

.cmm-section{ margin-bottom:34px; }
.cmm-section-title{
	display:flex; align-items:center; gap:14px; justify-content:center;
	font-family:var(--font-display); font-size:24px; font-weight:400; margin:6px 0 20px; color:var(--cmm-text);
}
.cmm-section-title::before,.cmm-section-title::after{
	content:""; flex:1; max-width:120px; border-top:3px dotted #d8dadd;
}

.cmm-grid{ display:grid; grid-template-columns:1fr 1fr; gap:16px; }

.cmm-card{
	background:var(--cmm-card); border:1px solid var(--cmm-border); border-radius:var(--cmm-radius);
	display:flex; align-items:stretch; overflow:hidden; box-shadow:0 2px 10px rgba(20,20,30,.04);
	position:relative;
}
.cmm-card-body{ flex:1; padding:14px 14px 14px 10px; display:flex; flex-direction:column; min-width:0; }
.cmm-card-title{ font-size:15px; font-weight:800; margin:0 0 6px; }
.cmm-card-desc{ font-size:12.5px; color:var(--cmm-gray); line-height:1.9; margin:0 0 10px; flex:1;
	display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
.cmm-card-bottom{ display:flex; align-items:center; justify-content:space-between; margin-top:auto; }
.cmm-add-btn{
	background:var(--cmm-orange); color:#fff; border:none; border-radius:9px; padding:0 18px;
	font-family:inherit; font-weight:700; font-size:13px; cursor:pointer; transition:.15s;
	height:34px; box-sizing:border-box;
}
.cmm-add-btn:hover{ background:var(--cmm-orange-dark); }
.cmm-add-btn.in-cart{ background:#2fa860; }
.cmm-price{ font-weight:800; color:var(--cmm-price); font-size:13.5px; white-space:nowrap; }
.cmm-price-old{ text-decoration:line-through; color:#b9bcc2; font-size:11.5px; margin-inline-start:6px; }

.cmm-card-img{ flex:0 0 118px; position:relative; }
.cmm-card-img img{ width:100%; height:100%; object-fit:cover; display:block; }
.cmm-card-img .cmm-noimg{ width:100%; height:100%; background:#f1f2f4; display:flex; align-items:center; justify-content:center; color:#c7cad0; font-size:12px; }

.cmm-qty-stepper{ display:flex; align-items:center; gap:10px; background:rgba(var(--cmm-rgb),.1); border-radius:9px; padding:0 10px; height:34px; box-sizing:border-box; }
.cmm-qty-stepper button{ background:none; border:none; font-size:16px; font-weight:700; color:var(--cmm-orange); cursor:pointer; width:20px; }
.cmm-qty-stepper span{ font-weight:700; font-size:13px; min-width:16px; text-align:center; }

/* نوار پایین ثابت */
.cmm-bottom-nav{
	position:fixed; bottom:0; left:0; right:0; background:#fff; border-top:1px solid var(--cmm-border);
	display:flex; justify-content:space-around; align-items:center; padding:8px 10px 10px; z-index:40;
	box-shadow:0 -6px 18px rgba(20,20,30,.06);
}
.cmm-bn-item{
	background:none; border:none; display:flex; flex-direction:column; align-items:center; gap:4px;
	color:#4a4d54; font-family:inherit; font-size:11.5px; font-weight:600; cursor:pointer; position:relative; padding:4px 14px;
}
.cmm-bn-cart-circle{ position:relative; }
.cmm-bn-badge{
	position:absolute; top:-8px; left:-10px; background:var(--cmm-orange); color:#fff;
	font-size:10px; font-weight:700; width:16px; height:16px; border-radius:50%;
	display:flex; align-items:center; justify-content:center;
}

/* کشوهای پایین‌رونده (سبد خرید / حساب کاربری) */
.cmm-overlay{ position:fixed; inset:0; background:rgba(20,20,30,.45); z-index:60; display:none; }
.cmm-overlay.open{ display:block; }
.cmm-cart-drawer{
	position:fixed; left:0; right:0; bottom:0; background:#fff; z-index:70; border-radius:22px 22px 0 0;
	max-width:520px; margin:0 auto; max-height:90vh; max-height:90dvh; display:block; overflow-y:auto; overscroll-behavior:contain; -webkit-overflow-scrolling:touch;
	transform:translateY(100%); transition:transform .25s ease; box-shadow:0 -10px 30px rgba(0,0,0,.15);
}
.cmm-cart-drawer.open{ transform:translateY(0); }
.cmm-drawer-handle{ width:44px; height:5px; background:#e3e5e8; border-radius:6px; margin:10px auto 0; }
.cmm-drawer-head{ display:flex; align-items:center; justify-content:space-between; padding:10px 18px; border-bottom:1px solid var(--cmm-border); }
.cmm-drawer-head h3{ margin:0; font-size:16px; }
.cmm-close{ background:none; border:none; font-size:22px; color:var(--cmm-gray); cursor:pointer; }
.cmm-drawer-body{ padding:14px 18px; }
.cmm-cart-drawer > .cmm-drawer-head{ position:sticky; top:0; background:inherit; z-index:2; }
.cmm-cart-drawer > .cmm-drawer-handle{ position:sticky; top:0; z-index:3; background:inherit; padding-top:0; }
.cmm-drawer-foot{ padding:14px 18px 20px; border-top:1px solid var(--cmm-border); }

.cmm-cart-row{ display:flex; align-items:center; gap:10px; padding:10px 0; border-bottom:1px dashed var(--cmm-border); }
.cmm-cart-row-title{ flex:1; font-size:13.5px; font-weight:700; }
.cmm-cart-row-price{ font-size:12.5px; color:var(--cmm-gray); }
.cmm-cart-empty{ text-align:center; color:var(--cmm-gray); padding:40px 0; font-size:13px; }

.cmm-field{ margin-bottom:12px; }
.cmm-field label{ display:block; font-size:12.5px; font-weight:700; margin-bottom:6px; color:#555; }
.cmm-field input, .cmm-field textarea, .cmm-field select{
	width:100%; border:1px solid var(--cmm-border); border-radius:10px; padding:10px 12px;
	font-family:inherit; font-size:13.5px; background:#fafafb;
}
.cmm-toggle-group{ display:flex; gap:8px; margin-bottom:14px; }
.cmm-toggle-btn{ flex:1; padding:10px; border-radius:10px; border:1px solid var(--cmm-border); background:#fafafb;
	font-family:inherit; font-weight:700; font-size:13px; cursor:pointer; color:#555; }
.cmm-toggle-btn.active{ background:var(--cmm-orange); color:#fff; border-color:var(--cmm-orange); }

.cmm-total-row{ display:flex; justify-content:space-between; align-items:center; font-weight:800; font-size:15px; margin-bottom:14px; }
.cmm-subtotal-row{ padding-bottom:12px; border-bottom:1px solid var(--cmm-border); }
.cmm-sum-line{ display:flex; justify-content:space-between; align-items:center; font-size:13px; color:#666; margin-bottom:8px; }
.cmm-sum-discount{ color:#2fa860; }
.cmm-delivery-notice{
	background:rgba(var(--cmm-rgb),.1); border:1px solid rgba(var(--cmm-rgb),.28); border-radius:10px; padding:10px 14px;
	font-size:12.5px; font-weight:700; color:var(--cmm-orange-dark); margin-bottom:12px;
}

/* بنر پیشنهاد نصب اپ روی صفحه اصلی */
.cmm-install-banner{
	position:fixed; bottom:78px; left:12px; right:12px; z-index:55;
	background:#fff; border:1px solid var(--cmm-border); border-radius:16px;
	box-shadow:0 8px 28px rgba(20,20,30,.18); padding:12px 14px;
	display:none; align-items:center; gap:12px;
	transform:translateY(16px); opacity:0; transition:.28s;
}
.cmm-install-banner.show{ display:flex; transform:translateY(0); opacity:1; }
.cmm-install-icon{ flex:0 0 42px; height:42px; border-radius:11px; background:#f4f5f7; display:flex; align-items:center; justify-content:center; overflow:hidden; font-size:22px; }
.cmm-install-icon img{ width:100%; height:100%; object-fit:cover; }
.cmm-install-text{ flex:1; display:flex; flex-direction:column; min-width:0; }
.cmm-install-text b{ font-size:13.5px; }
.cmm-install-text span{ font-size:11.5px; color:var(--cmm-gray); }
.cmm-install-btn{
	background:var(--cmm-orange); color:#fff; border:none; border-radius:10px;
	padding:9px 18px; font-family:inherit; font-weight:700; font-size:13px; cursor:pointer; flex-shrink:0;
}
.cmm-install-close{ background:none; border:none; font-size:20px; color:#bbb; cursor:pointer; padding:0 4px; flex-shrink:0; }
.cmm-submit-btn{
	width:100%; background:var(--cmm-orange); color:#fff; border:none; border-radius:12px; padding:14px;
	font-family:inherit; font-weight:800; font-size:15px; cursor:pointer;
}
.cmm-submit-btn:disabled{ opacity:.5; }
.cmm-submit-btn.secondary{ background:#2fa860; margin-top:8px; }

.cmm-link-inline{
	background:none; border:none; color:var(--cmm-gray); font-family:inherit; font-size:12.5px;
	text-decoration:underline; cursor:pointer; display:block; width:100%; text-align:center; margin-top:10px;
}

.cmm-wallet-box{ background:rgba(var(--cmm-rgb),.08); border:1px solid rgba(var(--cmm-rgb),.25); border-radius:14px; padding:16px; text-align:center; margin-bottom:16px; }

/* ==================== سفارش‌های من (در کشوی حساب کاربری مشتری) ==================== */
.cmm-my-orders-title{ font-size:14px; margin:4px 0 10px; color:var(--cmm-text); }
.cmm-my-orders-list{ display:flex; flex-direction:column; gap:10px; margin-bottom:10px; }
.cmm-my-order-card{ background:var(--cmm-card); border:1px solid var(--cmm-border); border-radius:12px; padding:12px 14px; }
.cmm-my-order-head{ display:flex; align-items:center; justify-content:space-between; gap:8px; margin-bottom:6px; }
.cmm-my-order-date{ font-size:11.5px; color:var(--cmm-gray); }
.cmm-my-order-badge{ font-size:11px; font-weight:700; padding:3px 10px; border-radius:20px; white-space:nowrap; }
.cmm-mo-new{ background:#eef0f3; color:#5b6270; }
.cmm-mo-preparing{ background:#e3f2fd; color:#1565c0; }
.cmm-mo-done{ background:#e8f5e9; color:#2e7d32; }
.cmm-mo-canceled{ background:#fdecea; color:#c62828; }
.cmm-my-order-items{ font-size:13px; color:var(--cmm-text); line-height:1.8; margin-bottom:8px; }
.cmm-my-order-foot{ display:flex; align-items:center; justify-content:space-between; gap:8px; padding-top:8px; border-top:1px dashed var(--cmm-border); font-size:13px; }
.cmm-my-order-pay{ color:var(--cmm-gray); }
.cmm-my-order-foot b{ color:var(--cmm-price); font-size:14px; }
.cmm-wallet-balance{ font-size:22px; font-weight:800; color:var(--cmm-orange); margin:6px 0; }

.cmm-about-section{ margin-top:22px; padding-top:18px; border-top:1px solid var(--cmm-border); }
.cmm-about-section h4{ font-size:14px; font-weight:800; margin:0 0 10px; }
.cmm-about-row{ font-size:13px; color:#444; line-height:2; margin:0 0 4px; }
.cmm-about-row a{ color:var(--cmm-text); text-decoration:none; }
.cmm-social-row{ display:flex; gap:10px; flex-wrap:wrap; }
.cmm-social-btn{
	background:rgba(var(--cmm-rgb),.1); color:var(--cmm-orange-dark); text-decoration:none; font-size:12.5px; font-weight:700;
	padding:9px 16px; border-radius:9px; display:inline-block;
}
.cmm-policy-list{ margin:0; padding-inline-start:20px; font-size:12.5px; color:#555; line-height:2; }
.cmm-policy-list li{ margin-bottom:4px; }

.cmm-toast{
	position:fixed; bottom:90px; left:50%; transform:translateX(-50%) translateY(20px); background:#22242a; color:#fff;
	padding:10px 20px; border-radius:10px; font-size:13px; opacity:0; pointer-events:none; transition:.25s; z-index:100;
}
.cmm-toast.show{ opacity:1; transform:translateX(-50%) translateY(0); }

.cmm-share-btn{
	position:absolute; top:0; left:0; width:38px; height:38px; border-radius:50%;
	background:#fff; border:1px solid var(--cmm-border); color:var(--cmm-text);
	display:flex; align-items:center; justify-content:center; cursor:pointer;
	box-shadow:0 2px 8px rgba(20,20,30,.06);
}
.cmm-share-grid{ display:grid; grid-template-columns:repeat(2,1fr); gap:12px; }
.cmm-share-opt{
	display:flex; flex-direction:column; align-items:center; gap:8px; padding:18px 10px;
	background:#fafbfc; border:1px solid var(--cmm-border); border-radius:14px; text-decoration:none;
	color:var(--cmm-text); font-size:13px; font-weight:700; font-family:inherit; cursor:pointer;
}
.cmm-share-icon{ font-size:26px; }

.cmm-manage-fab{
	position:fixed; bottom:96px; left:16px; z-index:50; background:#22242a; color:#fff;
	text-decoration:none; padding:11px 18px; border-radius:30px; font-size:13px; font-weight:700;
	display:flex; align-items:center; gap:6px; box-shadow:0 6px 18px rgba(0,0,0,.25);
}

@media (max-width:680px){
	.cmm-grid{ grid-template-columns:1fr; }
	#cmm-app{ padding:18px 14px 100px; }
	.cmm-cafe-name{ font-size:21px; }
	.cmm-card-img{ flex-basis:96px; }
}

/* ===== میز از روی QR + دکمه‌ی صدا زدن ویتر ===== */
.cmm-table-bar{ display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:10px; margin:0 0 6px; }
.cmm-table-bar[hidden], .cmm-table-badge[hidden], .cmm-waiter-btn[hidden]{ display:none !important; }
.cmm-table-badge{ background:rgba(var(--cmm-rgb),.12); color:var(--cmm-orange-dark); border-radius:999px; padding:8px 14px; font-size:13.5px; font-weight:700; }
.cmm-table-badge button{ background:none; border:0; color:var(--cmm-gray); font:inherit; font-size:12px; text-decoration:underline; cursor:pointer; margin-inline-start:6px; }
.cmm-waiter-btn{
	display:inline-flex; align-items:center; gap:8px; border:0; cursor:pointer; font:inherit; font-weight:700; font-size:15px;
	color:#fff; background:linear-gradient(135deg,var(--cmm-orange),var(--cmm-orange-dark)); border-radius:999px;
	padding:12px 22px; box-shadow:0 6px 18px rgba(var(--cmm-rgb),.35); animation:cmmWaiterPulse 2.4s ease-in-out infinite;
}
.cmm-waiter-btn:active{ transform:scale(.97); }
@keyframes cmmWaiterPulse{ 0%,100%{ box-shadow:0 6px 18px rgba(var(--cmm-rgb),.35); } 50%{ box-shadow:0 6px 26px rgba(var(--cmm-rgb),.6); } }
.cmm-waiter-overlay{ position:fixed; inset:0; background:rgba(15,15,25,.5); z-index:2000; display:flex; align-items:center; justify-content:center; padding:20px; animation:cmmWaiterFade .2s ease; }
@keyframes cmmWaiterFade{ from{ opacity:0; } to{ opacity:1; } }
.cmm-waiter-box{ background:#fff; border-radius:20px; padding:24px 20px; width:100%; max-width:360px; text-align:center; direction:rtl; }
.cmm-waiter-emoji{ font-size:44px; }
.cmm-waiter-box h3{ margin:6px 0 8px; font-size:18px; }
.cmm-waiter-box p{ color:var(--cmm-gray); font-size:14px; line-height:1.9; margin:0 0 14px; }
.cmm-waiter-box input{ width:100%; box-sizing:border-box; padding:12px; border:1px solid #e5e7eb; border-radius:12px; font:inherit; font-size:16px; text-align:center; margin-bottom:14px; }
.cmm-waiter-actions{ display:flex; flex-direction:column; gap:8px; }
.cmm-waiter-cancel{ background:none; border:0; color:var(--cmm-gray); font:inherit; padding:8px; cursor:pointer; }
@media (prefers-reduced-motion:reduce){ .cmm-waiter-btn{ animation:none; } }

/* ===== افزودنی‌ها، توضیح سفارش و پیگیری ===== */
.cmm-cart-row-opts{ display:block; color:var(--cmm-gray); font-size:12px; font-weight:400; line-height:1.6; margin-top:2px; }
.cmm-opt-box{ max-height:86vh; display:flex; flex-direction:column; text-align:right; }
.cmm-opt-box h3{ text-align:center; }
.cmm-opt-body{ overflow-y:auto; margin-bottom:12px; }
.cmm-optg{ margin-bottom:14px; }
.cmm-optg-title{ font-weight:700; font-size:14.5px; margin-bottom:6px; display:flex; align-items:baseline; gap:8px; }
.cmm-optg-title small{ color:var(--cmm-gray); font-weight:400; font-size:12px; }
.cmm-optc{ display:flex; align-items:center; gap:10px; padding:10px 12px; border:1px solid #e8eaee; border-radius:12px; margin-bottom:6px; cursor:pointer; }
.cmm-optc:has(input:checked){ border-color:var(--cmm-orange); background:rgba(var(--cmm-rgb),.08); }
.cmm-optc input{ accent-color:var(--cmm-orange); width:18px; height:18px; margin:0; }
.cmm-optc span{ flex:1; font-size:14.5px; }
.cmm-optc em{ font-style:normal; color:var(--cmm-gray); font-size:12.5px; }
.cmm-opt-box .cmm-submit-btn:disabled{ opacity:.5; }
.cmm-track-bar{ background:#fff; border:1px solid #f3dcc2; border-inline-start:5px solid var(--cmm-orange); border-radius:14px; padding:12px 14px; margin:0 0 12px; box-shadow:0 4px 16px rgba(0,0,0,.06); animation:cmmWaiterFade .3s ease; }
.cmm-track-bar[hidden]{ display:none !important; }
.cmm-track-bar.st-done{ border-inline-start-color:#22c55e; background:#f0fdf4; }
.cmm-track-top{ display:flex; justify-content:space-between; gap:8px; font-size:14.5px; }
.cmm-track-top span{ color:var(--cmm-gray); font-size:12px; white-space:nowrap; }
.cmm-track-sub{ color:var(--cmm-gray); font-size:13px; margin:4px 0 2px; }
.cmm-steps{ display:flex; margin-top:10px; gap:6px; }
.cmm-step{ flex:1; text-align:center; font-size:11.5px; color:var(--cmm-gray); }
.cmm-step i{ display:block; height:6px; border-radius:6px; background:#e5e7eb; margin-bottom:5px; }
.cmm-step.done i{ background:var(--cmm-orange); }
.cmm-step.now i{ background:linear-gradient(90deg,var(--cmm-orange),rgba(var(--cmm-rgb),.35),var(--cmm-orange)); background-size:200% 100%; animation:cmmStepFlow 1.6s linear infinite; }
.st-done .cmm-step i{ background:#22c55e; animation:none; }
.cmm-step.now, .cmm-step.done{ color:var(--cmm-text); font-weight:700; }
@keyframes cmmStepFlow{ from{ background-position:200% 0; } to{ background-position:0 0; } }
@media (prefers-reduced-motion:reduce){ .cmm-step.now i{ animation:none; } }

/* ===== کش‌بک ===== */
.cmm-cashback-promo{ background:linear-gradient(135deg,#fff1f2,#fff7ed); border:1px solid #fecdd3; color:#9f1239; border-radius:14px; padding:10px 14px; margin:0 0 12px; font-size:13.5px; text-align:center; font-weight:600; }
.cmm-cashback-promo[hidden]{ display:none !important; }
.cmm-cashback-note{ background:#fff1f2; border:1px dashed #fda4af; color:#9f1239; border-radius:12px; padding:10px 12px; margin:10px 0; font-size:13.5px; line-height:1.8; }
.cmm-cashback-note small{ display:block; color:#be123c; opacity:.8; font-size:11.5px; }
.cmm-cashback-note.small{ padding:6px 10px; font-size:12.5px; margin:8px 0 0; }
.cmm-cashback-note.pending{ background:#fffbeb; border-color:#fcd34d; color:#92400e; }

/* موجودی */
.cmm-soldout{ background:#fee2e2; color:#991b1b; font-weight:700; font-size:12px; padding:6px 12px; border-radius:99px; }
.cmm-left{ background:#fef3c7; color:#92400e; font-size:11px; font-weight:700; padding:2px 8px; border-radius:99px; }
.cmm-card:has(.cmm-soldout) .cmm-card-img{ filter:grayscale(1); opacity:.6; }

/* ---------- باشگاه مشتریان ---------- */
.cmm-club-box{background:linear-gradient(135deg,#faf5ff,#eef2ff);border:1px solid #e4d9fb;border-radius:16px;padding:14px;margin-bottom:14px}
.cmm-club-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}
.cmm-club-head .lvl{font-weight:700;padding:4px 12px;border-radius:999px;background:#fff;border:1px solid #e4d9fb}
.cmm-club-head .lvl-gold{background:#fff7d6;border-color:#f0d36a}
.cmm-club-head .lvl-silver{background:#eef1f5;border-color:#c9d1dc}
.cmm-club-head .lvl-bronze{background:#fbeee3;border-color:#e2b88f}
.cmm-club-head .pts b{font-size:22px;color:#7c3aed}
.cmm-club-bar{height:8px;border-radius:99px;background:#e5e7eb;overflow:hidden}
.cmm-club-bar i{display:block;height:100%;background:linear-gradient(90deg,#8b5cf6,#6366f1);border-radius:99px;transition:width .8s cubic-bezier(.2,.8,.2,1)}
.cmm-club-next,.cmm-club-perk{font-size:12px;margin-top:6px;color:#6b7280}
.cmm-club-perk{color:#7c3aed;font-weight:600}
.cmm-club-redeem{margin-top:10px}
.cmm-club-birth,.cmm-club-ref{margin-top:12px;font-size:13px}
.cmm-club-birth.done{color:#6b7280}
.cmm-club-ref p{margin:4px 0 8px;color:#4b5563;line-height:1.8}
.cmm-club-box .row{display:flex;gap:6px;margin-top:6px}
.cmm-club-box .row input,.cmm-club-box .row select{flex:1;min-width:0;padding:8px;border:1px solid #d9d4ee;border-radius:10px;font-family:inherit;background:#fff}
.cmm-club-box .row input[readonly]{direction:ltr;font-size:11px}
.cmm-club-box .cmm-btn-sm{padding:8px 14px;border:0;border-radius:10px;background:#7c3aed;color:#fff;font-family:inherit;cursor:pointer}
.cmm-club-hist{margin-top:12px;font-size:12px}
.cmm-club-hist summary{cursor:pointer;color:#6b7280}
.cmm-club-hist div{display:flex;justify-content:space-between;padding:6px 0;border-bottom:1px dashed #e5e7eb}
.cmm-club-hist small{display:block;color:#9ca3af}
.cmm-club-hist .pos{color:#059669}.cmm-club-hist .neg{color:#dc2626}

/* ---------- پنجره‌ی ثبت تولد ---------- */
.cmm-bd-overlay{position:fixed;inset:0;background:rgba(17,24,39,.5);z-index:9999;display:flex;align-items:flex-end;justify-content:center;opacity:0;transition:opacity .25s}
.cmm-bd-overlay.show{opacity:1}
.cmm-bd-sheet{background:#fff;width:100%;max-width:460px;border-radius:22px 22px 0 0;padding:22px 18px 26px;text-align:center;transform:translateY(40px);transition:transform .3s cubic-bezier(.2,.8,.2,1)}
.cmm-bd-overlay.show .cmm-bd-sheet{transform:none}
.cmm-bd-emoji{font-size:44px;animation:cmmBdPop .6s ease both}
@keyframes cmmBdPop{0%{transform:scale(.3) rotate(-15deg);opacity:0}70%{transform:scale(1.15) rotate(6deg)}100%{transform:none;opacity:1}}
.cmm-bd-sheet h3{margin:6px 0}
.cmm-bd-sheet p{color:#4b5563;line-height:1.9;margin:6px 0 14px}
.cmm-bd-row{display:flex;gap:8px;margin-bottom:8px}
.cmm-bd-row input,.cmm-bd-row select{flex:1;min-width:0;padding:11px 8px;border:1px solid #d9d4ee;border-radius:12px;font-family:inherit;font-size:15px;text-align:center;background:#fff}
.cmm-bd-sheet small{display:block;color:#9ca3af;margin-bottom:12px}
.cmm-bd-actions{display:flex;flex-direction:column;gap:6px;align-items:stretch}
.cmm-bd-link{display:block;width:100%;margin-top:10px;padding:8px;border:1px dashed #c4b5fd;background:#faf5ff;color:#6d28d9;border-radius:12px;font-family:inherit;cursor:pointer}

/* ---------- صفحه‌بندی سفارش‌های من ---------- */
.cmm-my-orders-more{text-align:center;padding:10px 0 4px;min-height:36px}
.cmm-my-orders-morebtn{background:#f5f3ff;border:1px dashed #c4b5fd;color:#6d28d9;border-radius:12px;padding:9px 18px;font-family:inherit;cursor:pointer}
.cmm-my-order-card{content-visibility:auto;contain-intrinsic-size:auto 120px}

/* =====================================================================
   طرح‌های ظاهری انتخابی (کلاس cmm-d-* روی #cmm-app) — رنگ اصلی مدیر روی همه اعمال می‌شود
   ===================================================================== */
.cmm-demo-bar{ position:fixed; top:8px; left:50%; transform:translateX(-50%); z-index:90; display:flex; gap:4px; background:rgba(20,20,25,.88); padding:5px; border-radius:30px; max-width:96vw; overflow-x:auto; scrollbar-width:none; }
.cmm-demo-bar a{ color:#fff; text-decoration:none; font:600 12px var(--font-body); padding:6px 12px; border-radius:20px; white-space:nowrap; }
.cmm-demo-bar a.on{ background:var(--cmm-orange); }

/* --- مدرن: عکس بالا، دو ستون حتی در موبایل --- */
.cmm-d-modern{ --cmm-bg:#f6f7f9; --cmm-radius:20px; }
.cmm-d-modern .cmm-grid{ gap:14px; }
.cmm-d-modern .cmm-card{ flex-direction:column-reverse; box-shadow:0 8px 24px rgba(20,20,30,.07); border:none; }
.cmm-d-modern .cmm-card-img{ flex:none; aspect-ratio:4/3; }
.cmm-d-modern .cmm-card-img img,.cmm-d-modern .cmm-card-img .cmm-noimg{ position:absolute; inset:0; height:100%; }
.cmm-d-modern .cmm-card-body{ padding:12px 14px 14px; }
.cmm-d-modern .cmm-card-bottom{ flex-wrap:wrap; gap:8px; }
.cmm-d-modern .cmm-tab{ background:#fff; box-shadow:0 2px 8px rgba(0,0,0,.05); border-radius:30px; }
.cmm-d-modern .cmm-tab.active{ background:var(--cmm-orange); }
.cmm-d-modern .cmm-section-title::before,.cmm-d-modern .cmm-section-title::after{ border-top-style:solid; border-top-width:1px; }
@media (max-width:680px){
	.cmm-d-modern .cmm-grid{ grid-template-columns:1fr 1fr; gap:10px; }
	.cmm-d-modern .cmm-card-img{ flex-basis:auto; }
	.cmm-d-modern .cmm-card-title{ font-size:13.5px; }
	.cmm-d-modern .cmm-card-desc{ -webkit-line-clamp:2; font-size:11.5px; }
	.cmm-d-modern .cmm-add-btn{ padding:0 12px; }
}

/* --- تیره لوکس --- */
body.cmm-design-dark, body.cmm-design-dark html{ background:#121214; }
.cmm-d-dark{ --cmm-bg:#121214; --cmm-card:#1c1c20; --cmm-text:#f2efe9; --cmm-gray:#9b9aa1; --cmm-border:#2b2b31; --cmm-radius:14px; }
.cmm-d-dark .cmm-tabs{ background:var(--cmm-bg); }
.cmm-d-dark .cmm-tab{ color:#d8d5cc; border:1px solid #2f2f36; border-radius:30px; }
.cmm-d-dark .cmm-tab.active{ color:#fff; border-color:transparent; }
.cmm-d-dark .cmm-card{ box-shadow:none; border:1px solid #2b2b31; }
.cmm-d-dark .cmm-card-img .cmm-noimg{ background:#26262b; color:#555; }
.cmm-d-dark .cmm-qty-stepper{ background:#2a2a30; }
.cmm-d-dark .cmm-qty-stepper span{ color:#fff; }
.cmm-d-dark .cmm-section-title{ color:var(--cmm-orange); letter-spacing:1px; }
.cmm-d-dark .cmm-section-title::before,.cmm-d-dark .cmm-section-title::after{ border-top:1px solid var(--cmm-orange); opacity:.5; }
.cmm-d-dark .cmm-bottom-nav{ background:#1a1a1e; border-top-color:#2b2b31; }
.cmm-d-dark .cmm-bn-item{ color:#c9c7c0; }
.cmm-d-dark .cmm-table-badge{ background:#2a2a30; }
.cmm-d-dark .cmm-share-btn{ background:#26262b; color:#eee; }

/* --- مینیمال: فهرست متنی با تصویر کوچک گرد --- */
.cmm-d-minimal{ --cmm-bg:#ffffff; --cmm-radius:0; --cmm-border:#e6e6e6; }
.cmm-d-minimal .cmm-grid{ grid-template-columns:1fr; gap:0; max-width:720px; margin:0 auto; }
.cmm-d-minimal .cmm-card{ border:none; border-bottom:1px solid var(--cmm-border); box-shadow:none; background:transparent; border-radius:0; padding:14px 0; align-items:center; }
.cmm-d-minimal .cmm-card-body{ padding:0 0 0 12px; }
.cmm-d-minimal .cmm-card-img{ flex:0 0 64px; height:64px; border-radius:50%; overflow:hidden; order:-1; margin-inline-end:14px; }
.cmm-d-minimal .cmm-card-title{ font-size:15.5px; font-weight:700; }
.cmm-d-minimal .cmm-card-desc{ -webkit-line-clamp:2; margin-bottom:6px; }
.cmm-d-minimal .cmm-price{ font-weight:600; color:var(--cmm-text); }
.cmm-d-minimal .cmm-add-btn{ background:transparent; color:var(--cmm-orange); border:1.5px solid var(--cmm-orange); border-radius:30px; }
.cmm-d-minimal .cmm-add-btn:hover{ background:var(--cmm-orange); color:#fff; }
.cmm-d-minimal .cmm-add-btn.in-cart{ background:#2fa860; color:#fff; border-color:#2fa860; }
.cmm-d-minimal .cmm-tab{ border-radius:0; background:none; border-bottom:2px solid transparent; padding:10px 14px; }
.cmm-d-minimal .cmm-tab.active{ background:none; color:var(--cmm-orange); border-bottom-color:var(--cmm-orange); box-shadow:none; }
.cmm-d-minimal .cmm-section-title{ font-family:var(--font-body); font-weight:800; font-size:20px; justify-content:flex-start; }
.cmm-d-minimal .cmm-section-title::before{ display:none; }
.cmm-d-minimal .cmm-section-title::after{ max-width:none; border-top:1px solid var(--cmm-text); }
@media (max-width:680px){ .cmm-d-minimal .cmm-card-img{ flex-basis:58px; height:58px; } }

/* --- بولد / فست‌فود --- */
.cmm-d-bold{ --cmm-bg:#fff8e8; --cmm-border:#22242a; --cmm-radius:18px; }
.cmm-d-bold .cmm-header{ background:var(--cmm-orange); color:#fff; margin:-24px -20px 14px; padding:26px 20px 22px; border-radius:0 0 28px 28px; }
.cmm-d-bold .cmm-cafe-name{ font-size:38px; color:#fff; text-shadow:2px 2px 0 rgba(0,0,0,.18); }
.cmm-d-bold .cmm-share-btn{ background:#fff; color:#22242a; }
.cmm-d-bold .cmm-card{ border:2.5px solid #22242a; box-shadow:4px 4px 0 #22242a; }
.cmm-d-bold .cmm-card-title{ font-size:16px; font-weight:900; }
.cmm-d-bold .cmm-price{ background:#22242a; color:#ffd23f; padding:3px 10px; border-radius:20px; font-size:13px; }
.cmm-d-bold .cmm-add-btn{ border:2px solid #22242a; border-radius:12px; box-shadow:2px 2px 0 #22242a; font-weight:900; }
.cmm-d-bold .cmm-tab{ border:2px solid #22242a; border-radius:30px; background:#fff; font-weight:800; }
.cmm-d-bold .cmm-tab.active{ box-shadow:2px 2px 0 #22242a; }
.cmm-d-bold .cmm-section-title{ font-size:28px; }
.cmm-d-bold .cmm-section-title::before,.cmm-d-bold .cmm-section-title::after{ border-top:4px solid #22242a; border-top-style:solid; }
.cmm-d-bold .cmm-card-img{ border-inline-start:2.5px solid #22242a; }
@media (max-width:680px){ .cmm-d-bold .cmm-header{ margin:-18px -14px 12px; } .cmm-d-bold .cmm-cafe-name{ font-size:28px; } }

/* --- سنتی / سفره‌خانه --- */
body.cmm-design-persian{ background:#f3e9d6; }
.cmm-d-persian{ --cmm-bg:#f3e9d6; --cmm-card:#fffaf0; --cmm-text:#3b2a1d; --cmm-gray:#8c7762; --cmm-border:#c9a66b; --cmm-radius:6px; }
.cmm-d-persian .cmm-cafe-name{ color:#5b3a1e; font-size:36px; }
.cmm-d-persian .cmm-header::after{ content:"❖  ❖  ❖"; display:block; color:#b98a3e; letter-spacing:6px; margin-top:6px; font-size:14px; }
.cmm-d-persian .cmm-card{ border:1px solid #c9a66b; outline:1px solid #c9a66b; outline-offset:-5px; box-shadow:0 3px 10px rgba(91,58,30,.12); }
.cmm-d-persian .cmm-card-body{ padding:16px 16px 14px 12px; }
.cmm-d-persian .cmm-card-title{ font-family:var(--font-display); font-weight:400; font-size:18px; color:#5b3a1e; }
.cmm-d-persian .cmm-card-img{ padding:6px 0 6px 6px; flex-basis:112px; }
.cmm-d-persian .cmm-card-img img,.cmm-d-persian .cmm-card-img .cmm-noimg{ border-radius:4px; }
.cmm-d-persian .cmm-price{ color:#8a5a1f; }
.cmm-d-persian .cmm-add-btn{ border-radius:4px; }
.cmm-d-persian .cmm-tab{ border-radius:4px; border:1px solid #c9a66b; background:#fffaf0; }
.cmm-d-persian .cmm-tab.active{ border-color:transparent; }
.cmm-d-persian .cmm-section-title{ color:#5b3a1e; }
.cmm-d-persian .cmm-section-title::before,.cmm-d-persian .cmm-section-title::after{ border-top:3px double #b98a3e; }
.cmm-d-persian .cmm-bottom-nav{ background:#fffaf0; border-top:1px solid #c9a66b; }
.cmm-d-bold .cmm-tab.active,.cmm-d-persian .cmm-tab.active{ background:var(--cmm-orange); color:#fff; }

/* ===== طرح‌های گروه دوم ===== */
/* مودال‌ها/کشوها داخل #cmm-app هستند و پس‌زمینه‌ی سفید دارند؛ در طرح‌های تیره رنگ متن‌شان را تیره نگه می‌داریم */
.cmm-d-dark .cmm-cart-drawer,.cmm-d-glass .cmm-cart-drawer,.cmm-d-chalk .cmm-cart-drawer,.cmm-d-neon .cmm-cart-drawer{
	--cmm-text:#22242a; --cmm-gray:#8a8f98; --cmm-border:#eef0f2; --cmm-card:#fff; color:#22242a; }

/* --- عکس‌محور --- */
.cmm-d-overlay{ --cmm-radius:22px; --cmm-bg:#f4f4f6; }
.cmm-d-overlay .cmm-grid{ gap:12px; }
.cmm-d-overlay .cmm-card{ min-height:230px; flex-direction:column; justify-content:flex-end; border:none; background:#2a2a2e; color:#fff; box-shadow:0 8px 22px rgba(0,0,0,.18); }
.cmm-d-overlay .cmm-card-img{ position:absolute; inset:0; flex:none; }
.cmm-d-overlay .cmm-card-img img,.cmm-d-overlay .cmm-card-img .cmm-noimg{ position:absolute; inset:0; height:100%; }
.cmm-d-overlay .cmm-card::after{ content:""; position:absolute; inset:0; background:linear-gradient(to top,rgba(0,0,0,.88) 0%,rgba(0,0,0,.45) 45%,transparent 75%); z-index:1; pointer-events:none; }
.cmm-d-overlay .cmm-card-body{ position:relative; z-index:2; flex:none; padding:14px; }
.cmm-d-overlay .cmm-card-title{ color:#fff; font-size:16px; }
.cmm-d-overlay .cmm-card-desc{ display:none; }
.cmm-d-overlay .cmm-price{ color:#fff; }
.cmm-d-overlay .cmm-price-old{ color:#ccc; }
.cmm-d-overlay .cmm-left{ color:#ffd9a8; }
.cmm-d-overlay .cmm-card-bottom{ flex-wrap:wrap; gap:8px; }
.cmm-d-overlay .cmm-qty-stepper{ background:rgba(255,255,255,.92); }
.cmm-d-overlay .cmm-tab{ background:#fff; border-radius:30px; }
.cmm-d-overlay .cmm-tab.active{ background:var(--cmm-orange); }
@media (max-width:680px){ .cmm-d-overlay .cmm-grid{ grid-template-columns:1fr 1fr; gap:10px; } .cmm-d-overlay .cmm-card{ min-height:210px; } .cmm-d-overlay .cmm-card-title{ font-size:14px; } .cmm-d-overlay .cmm-add-btn{ padding:0 12px; } }

/* --- شیشه‌ای --- */
body.cmm-design-glass{ background:#14142b; }
#cmm-app.cmm-d-glass{ --cmm-text:#fff; --cmm-gray:rgba(255,255,255,.7); --cmm-border:rgba(255,255,255,.22); --cmm-card:rgba(255,255,255,.12); --cmm-radius:22px;
	background:linear-gradient(160deg,var(--cmm-orange-dark) 0%,#1b1b3a 55%,#0d0d1f 100%); background-attachment:fixed; min-height:100vh; }
.cmm-d-glass .cmm-tabs{ background:transparent; backdrop-filter:blur(10px); }
.cmm-d-glass .cmm-tab{ color:#fff; background:rgba(255,255,255,.12); border:1px solid rgba(255,255,255,.2); border-radius:30px; }
.cmm-d-glass .cmm-tab.active{ background:#fff; color:var(--cmm-orange-dark); box-shadow:none; }
.cmm-d-glass .cmm-card{ background:rgba(255,255,255,.12); border:1px solid rgba(255,255,255,.25); backdrop-filter:blur(14px); -webkit-backdrop-filter:blur(14px); box-shadow:0 10px 30px rgba(0,0,0,.25); }
.cmm-d-glass .cmm-card-img{ padding:8px 0 8px 8px; } .cmm-d-glass .cmm-card-img img,.cmm-d-glass .cmm-card-img .cmm-noimg{ border-radius:16px; }
.cmm-d-glass .cmm-price{ color:#fff; }
.cmm-d-glass .cmm-add-btn{ background:#fff; color:var(--cmm-orange-dark); }
.cmm-d-glass .cmm-qty-stepper{ background:rgba(255,255,255,.2); } .cmm-d-glass .cmm-qty-stepper span{ color:#fff; } .cmm-d-glass .cmm-qty-stepper button{ color:#fff; }
.cmm-d-glass .cmm-section-title::before,.cmm-d-glass .cmm-section-title::after{ border-top:1px solid rgba(255,255,255,.4); }
.cmm-d-glass .cmm-bottom-nav{ background:rgba(20,20,43,.7); backdrop-filter:blur(14px); border-top:1px solid rgba(255,255,255,.15); }
.cmm-d-glass .cmm-bn-item{ color:#fff; } .cmm-d-glass .cmm-share-btn{ background:rgba(255,255,255,.18); color:#fff; }
.cmm-d-glass .cmm-table-badge{ background:rgba(255,255,255,.18); color:#fff; }

/* --- تخته‌سیاه --- */
body.cmm-design-chalk{ background:#1f2a26; }
#cmm-app.cmm-d-chalk{ --cmm-bg:#1f2a26; --cmm-text:#f4f0e4; --cmm-gray:#b9b7a8; --cmm-border:rgba(244,240,228,.35); --cmm-card:transparent; --cmm-radius:10px;
	background-image:radial-gradient(rgba(255,255,255,.05) 1px,transparent 1px); background-size:14px 14px; }
.cmm-d-chalk .cmm-cafe-name,.cmm-d-chalk .cmm-section-title,.cmm-d-chalk .cmm-card-title{ font-family:var(--font-display); font-weight:400; }
.cmm-d-chalk .cmm-cafe-name{ font-size:40px; border-bottom:3px double rgba(244,240,228,.5); display:inline-block; padding:0 14px 4px; }
.cmm-d-chalk .cmm-tabs{ background:#1f2a26; }
.cmm-d-chalk .cmm-tab{ color:#f4f0e4; border:1.5px dashed rgba(244,240,228,.5); border-radius:8px; }
.cmm-d-chalk .cmm-tab.active{ border-style:solid; border-color:transparent; color:#fff; box-shadow:none; }
.cmm-d-chalk .cmm-card{ background:transparent; border:1.5px dashed rgba(244,240,228,.4); box-shadow:none; }
.cmm-d-chalk .cmm-card-title{ font-size:19px; }
.cmm-d-chalk .cmm-card-img{ flex-basis:96px; padding:10px; } .cmm-d-chalk .cmm-card-img img,.cmm-d-chalk .cmm-card-img .cmm-noimg{ border-radius:50%; border:2px solid #f4f0e4; aspect-ratio:1; height:auto; }
.cmm-d-chalk .cmm-price{ color:#ffe27a; font-size:15px; }
.cmm-d-chalk .cmm-add-btn{ background:transparent; border:1.5px solid #f4f0e4; color:#f4f0e4; border-radius:8px; } .cmm-d-chalk .cmm-add-btn:hover{ background:#f4f0e4; color:#1f2a26; }
.cmm-d-chalk .cmm-add-btn.in-cart{ background:#2fa860; border-color:#2fa860; color:#fff; }
.cmm-d-chalk .cmm-qty-stepper{ background:rgba(244,240,228,.12); } .cmm-d-chalk .cmm-qty-stepper span{ color:#fff; }
.cmm-d-chalk .cmm-section-title::before,.cmm-d-chalk .cmm-section-title::after{ border-top:2px dashed rgba(244,240,228,.45); }
.cmm-d-chalk .cmm-bottom-nav{ background:#18211e; border-top:1.5px dashed rgba(244,240,228,.4); } .cmm-d-chalk .cmm-bn-item{ color:#f4f0e4; }
.cmm-d-chalk .cmm-share-btn{ background:rgba(244,240,228,.12); color:#f4f0e4; } .cmm-d-chalk .cmm-table-badge{ background:rgba(244,240,228,.14); color:#f4f0e4; }

/* --- پاستلی --- */
body.cmm-design-pastel{ background:#fff6f8; }
.cmm-d-pastel{ --cmm-bg:#fff6f8; --cmm-radius:28px; --cmm-border:transparent; }
.cmm-d-pastel .cmm-cafe-name{ color:var(--cmm-orange-dark); }
.cmm-d-pastel .cmm-tab{ background:rgba(var(--cmm-rgb),.1); color:var(--cmm-orange-dark); border-radius:30px; font-weight:700; }
.cmm-d-pastel .cmm-tab.active{ background:var(--cmm-orange); color:#fff; box-shadow:0 6px 14px rgba(var(--cmm-rgb),.3); }
.cmm-d-pastel .cmm-card{ background:#fff; border:none; box-shadow:0 8px 24px rgba(var(--cmm-rgb),.14); padding:8px; }
.cmm-d-pastel .cmm-card-img{ flex-basis:112px; border-radius:22px; overflow:hidden; order:-1; }
.cmm-d-pastel .cmm-card-body{ padding:6px 14px 6px 8px; }
.cmm-d-pastel .cmm-card-title{ font-size:16px; } .cmm-d-pastel .cmm-price{ background:rgba(var(--cmm-rgb),.12); padding:5px 12px; border-radius:20px; }
.cmm-d-pastel .cmm-add-btn{ border-radius:20px; } .cmm-d-pastel .cmm-qty-stepper{ border-radius:20px; }
.cmm-d-pastel .cmm-section-title{ color:var(--cmm-orange-dark); }
.cmm-d-pastel .cmm-section-title::before,.cmm-d-pastel .cmm-section-title::after{ border-top:6px dotted rgba(var(--cmm-rgb),.3); border-radius:6px; }
@media (max-width:680px){ .cmm-d-pastel .cmm-card-img{ flex-basis:100px; } }

/* --- فید بزرگ --- */
.cmm-d-feed{ --cmm-bg:#fff; --cmm-radius:24px; max-width:560px; }
.cmm-d-feed .cmm-header{ text-align:start; display:flex; flex-direction:row-reverse; justify-content:flex-end; align-items:center; gap:12px; padding-inline-end:48px; } .cmm-d-feed .cmm-logo{ margin:0; width:48px; height:48px; } .cmm-d-feed .cmm-cafe-name{ margin:0; font-size:26px; }
.cmm-d-feed .cmm-grid{ grid-template-columns:1fr; gap:26px; }
.cmm-d-feed .cmm-card{ flex-direction:column-reverse; border:none; box-shadow:0 14px 34px rgba(20,20,30,.1); }
.cmm-d-feed .cmm-card-img{ flex:none; aspect-ratio:16/10; } .cmm-d-feed .cmm-card-img img,.cmm-d-feed .cmm-card-img .cmm-noimg{ position:absolute; inset:0; height:100%; }
.cmm-d-feed .cmm-card-body{ padding:16px 18px 18px; } .cmm-d-feed .cmm-card-title{ font-size:19px; } .cmm-d-feed .cmm-card-desc{ font-size:13.5px; -webkit-line-clamp:3; }
.cmm-d-feed .cmm-price{ font-size:18px; } .cmm-d-feed .cmm-add-btn{ height:40px; padding:0 24px; border-radius:30px; font-size:14px; }
.cmm-d-feed .cmm-qty-stepper{ height:40px; border-radius:30px; }
.cmm-d-feed .cmm-tab{ border-radius:0; border-bottom:3px solid transparent; background:none; padding:10px 12px; }
.cmm-d-feed .cmm-tab.active{ background:none; color:var(--cmm-orange); border-bottom-color:var(--cmm-orange); box-shadow:none; }
.cmm-d-feed .cmm-section-title{ justify-content:flex-start; font-size:26px; } .cmm-d-feed .cmm-section-title::before{ display:none; } .cmm-d-feed .cmm-section-title::after{ max-width:none; border:0; border-top:3px solid var(--cmm-orange); max-width:60px; flex:none; width:60px; }

/* --- نئون --- */
body.cmm-design-neon{ background:#07070d; }
.cmm-d-neon{ --cmm-bg:#07070d; --cmm-card:#0e0e18; --cmm-text:#f1f1ff; --cmm-gray:#8d8da8; --cmm-border:rgba(var(--cmm-rgb),.55); --cmm-radius:16px; }
.cmm-d-neon .cmm-cafe-name{ color:#fff; text-shadow:0 0 8px var(--cmm-orange),0 0 22px var(--cmm-orange); }
.cmm-d-neon .cmm-tabs{ background:var(--cmm-bg); }
.cmm-d-neon .cmm-tab{ color:#d9d9ff; border:1px solid rgba(var(--cmm-rgb),.5); border-radius:30px; }
.cmm-d-neon .cmm-tab.active{ background:transparent; color:#fff; border-color:var(--cmm-orange); box-shadow:0 0 12px rgba(var(--cmm-rgb),.7),inset 0 0 10px rgba(var(--cmm-rgb),.4); text-shadow:0 0 8px var(--cmm-orange); }
.cmm-d-neon .cmm-card{ border:1px solid rgba(var(--cmm-rgb),.55); box-shadow:0 0 14px rgba(var(--cmm-rgb),.28); }
.cmm-d-neon .cmm-card-img .cmm-noimg{ background:#171726; color:#555; }
.cmm-d-neon .cmm-price{ color:#fff; text-shadow:0 0 8px var(--cmm-orange); }
.cmm-d-neon .cmm-add-btn{ background:transparent; border:1px solid var(--cmm-orange); color:#fff; box-shadow:0 0 10px rgba(var(--cmm-rgb),.6); } .cmm-d-neon .cmm-add-btn:hover{ background:var(--cmm-orange); }
.cmm-d-neon .cmm-add-btn.in-cart{ background:#2fa860; border-color:#2fa860; }
.cmm-d-neon .cmm-qty-stepper{ background:#1a1a2c; } .cmm-d-neon .cmm-qty-stepper span{ color:#fff; }
.cmm-d-neon .cmm-section-title{ color:#fff; text-shadow:0 0 10px var(--cmm-orange); }
.cmm-d-neon .cmm-section-title::before,.cmm-d-neon .cmm-section-title::after{ border-top:2px solid var(--cmm-orange); box-shadow:0 0 8px var(--cmm-orange); }
.cmm-d-neon .cmm-bottom-nav{ background:#0b0b14; border-top:1px solid rgba(var(--cmm-rgb),.6); } .cmm-d-neon .cmm-bn-item{ color:#d9d9ff; }
.cmm-d-neon .cmm-share-btn{ background:#171726; color:#fff; } .cmm-d-neon .cmm-table-badge{ background:#171726; color:#fff; }

/* ===== گروه سوم: منوی چاپی، کاشی دسته‌ها، ریترو، سایدبار، کتاب‌چه‌ای ===== */
/* صفحه‌بندی (tiles/book): فقط بخش باز نمایش داده می‌شود */
.cmm-d-tiles .cmm-section,.cmm-d-book .cmm-section{ display:none; }
.cmm-d-tiles .cmm-section.cmm-sec-on,.cmm-d-book .cmm-section.cmm-sec-on{ display:block; animation:cmmPgIn .3s ease; }
.cmm-d-book .cmm-section.cmm-sec-on[data-dir="prev"]{ animation-name:cmmPgInPrev; }
@keyframes cmmPgIn{ from{ opacity:0; transform:translateX(-28px); } to{ opacity:1; transform:none; } }
@keyframes cmmPgInPrev{ from{ opacity:0; transform:translateX(28px); } to{ opacity:1; transform:none; } }
@media (prefers-reduced-motion:reduce){ .cmm-d-tiles .cmm-section.cmm-sec-on,.cmm-d-book .cmm-section.cmm-sec-on{ animation:none; } }

/* --- منوی چاپی --- */
body.cmm-design-fine{ background:#fdfbf6; }
.cmm-d-fine{ --cmm-bg:#fdfbf6; --cmm-card:transparent; --cmm-radius:0; --cmm-border:transparent; max-width:680px; }
.cmm-d-fine .cmm-cafe-name{ font-size:34px; letter-spacing:2px; }
.cmm-d-fine .cmm-header::after{ content:"❖"; display:block; color:var(--cmm-orange); margin-top:6px; }
.cmm-d-fine .cmm-tabs{ justify-content:center; background:var(--cmm-bg); }
.cmm-d-fine .cmm-tab{ background:none; border-radius:0; font-weight:500; padding:8px 12px; border-bottom:1px solid transparent; }
.cmm-d-fine .cmm-tab.active{ background:none; color:var(--cmm-orange-dark); border-bottom-color:var(--cmm-orange); box-shadow:none; }
.cmm-d-fine .cmm-section-title{ font-family:var(--font-body); font-weight:300; letter-spacing:4px; font-size:22px; }
.cmm-d-fine .cmm-section-title::before,.cmm-d-fine .cmm-section-title::after{ border-top:1px solid var(--cmm-orange); }
.cmm-d-fine .cmm-grid{ grid-template-columns:1fr; gap:0; }
.cmm-d-fine .cmm-card{ border:0; box-shadow:none; background:transparent; padding:12px 0; display:block; }
.cmm-d-fine .cmm-card-img{ display:none; }
.cmm-d-fine .cmm-card-body{ padding:0; display:grid; grid-template-columns:1fr auto auto; align-items:center; column-gap:10px; }
.cmm-d-fine .cmm-card-bottom{ display:contents; }
.cmm-d-fine .cmm-card-title{ grid-column:1; grid-row:1; display:flex; align-items:center; gap:10px; margin:0; font-size:16px; font-weight:700; }
.cmm-d-fine .cmm-card-title::after{ content:""; flex:1; border-bottom:2px dotted #c9c3b4; transform:translateY(4px); }
.cmm-d-fine .cmm-price{ grid-column:2; grid-row:1; color:var(--cmm-text); font-weight:700; }
.cmm-d-fine .cmm-card-bottom > :not(.cmm-price):not(.cmm-left){ grid-column:3; grid-row:1; }
.cmm-d-fine .cmm-add-btn{ height:28px; padding:0 12px; font-size:12px; background:transparent; color:var(--cmm-orange-dark); border:1px solid var(--cmm-orange); border-radius:0; }
.cmm-d-fine .cmm-add-btn.in-cart{ background:#2fa860; color:#fff; border-color:#2fa860; }
.cmm-d-fine .cmm-qty-stepper{ height:28px; }
.cmm-d-fine .cmm-card-desc{ grid-column:1/-1; grid-row:2; margin:4px 0 0; font-style:italic; -webkit-line-clamp:2; text-align:start; }
.cmm-d-fine .cmm-left{ grid-column:1/-1; grid-row:3; }

/* --- کاشی دسته‌ها --- */
.cmm-d-tiles .cmm-tabs{ display:none; }
.cmm-d-tiles[data-view="cat"] .cmm-tiles{ display:none; }
.cmm-tiles{ display:grid; grid-template-columns:repeat(2,1fr); gap:12px; margin-top:6px; }
@media (min-width:760px){ .cmm-tiles{ grid-template-columns:repeat(3,1fr); gap:16px; } }
.cmm-tile{ position:relative; border:0; padding:0; min-height:150px; border-radius:22px; overflow:hidden; cursor:pointer; font-family:inherit; color:#fff; display:flex; flex-direction:column; justify-content:flex-end; align-items:flex-start; text-align:start;
	background:linear-gradient(135deg,var(--cmm-orange),var(--cmm-orange-dark)); background-size:cover; background-position:center; box-shadow:0 8px 20px rgba(0,0,0,.14); transition:transform .15s; }
.cmm-tile:active{ transform:scale(.97); }
.cmm-tile::before{ content:""; position:absolute; inset:0; background:linear-gradient(to top,rgba(0,0,0,.72),rgba(0,0,0,.1) 70%); }
.cmm-tile-name,.cmm-tile-count{ position:relative; padding:0 14px; }
.cmm-tile-name{ font-family:var(--font-display); font-size:21px; line-height:1.3; }
.cmm-tile-count{ font-size:12px; opacity:.85; padding-bottom:12px; }
.cmm-back-home{ background:rgba(var(--cmm-rgb),.1); color:var(--cmm-orange-dark); border:0; border-radius:20px; padding:8px 16px; font:700 13px var(--font-body); cursor:pointer; margin-bottom:6px; }

/* --- ریترو --- */
body.cmm-design-retro{ background:#fff1d6; }
.cmm-d-retro{ --cmm-bg:#fff1d6; --cmm-card:#fffaf0; --cmm-text:#3a2a20; --cmm-gray:#7a6656; --cmm-border:#3a2a20; --cmm-radius:16px; }
.cmm-d-retro .cmm-header{ margin:-24px -20px 18px; padding:30px 20px 20px; color:#fff;
	background:repeating-linear-gradient(90deg,var(--cmm-orange) 0 26px,var(--cmm-orange-dark) 26px 52px); border-bottom:5px solid #3a2a20; }
.cmm-d-retro .cmm-cafe-name{ display:inline-block; background:#fff1d6; color:#3a2a20; padding:2px 24px; border:4px solid #3a2a20; border-radius:40px; transform:rotate(-2deg); font-size:34px; }
.cmm-d-retro .cmm-share-btn{ background:#fff1d6; color:#3a2a20; }
.cmm-d-retro .cmm-tab{ border:3px solid #3a2a20; border-radius:40px; background:#fffaf0; font-weight:800; }
.cmm-d-retro .cmm-tab.active{ background:var(--cmm-orange); color:#fff; box-shadow:0 4px 0 #3a2a20; }
.cmm-d-retro .cmm-section-title{ font-size:30px; color:var(--cmm-orange-dark); text-shadow:2px 2px 0 #3a2a20; }
.cmm-d-retro .cmm-section-title::before,.cmm-d-retro .cmm-section-title::after{ border-top:5px dashed #3a2a20; }
.cmm-d-retro .cmm-card{ border:3px solid #3a2a20; box-shadow:0 6px 0 #3a2a20; }
.cmm-d-retro .cmm-card-title{ font-family:var(--font-display); font-weight:400; font-size:19px; }
.cmm-d-retro .cmm-card-img{ flex-basis:104px; padding:10px; } .cmm-d-retro .cmm-card-img img,.cmm-d-retro .cmm-card-img .cmm-noimg{ border-radius:50%; border:3px solid #3a2a20; aspect-ratio:1; height:auto; transform:rotate(-5deg); }
.cmm-d-retro .cmm-price{ background:#ffd23f; color:#3a2a20; padding:3px 12px; border:2px solid #3a2a20; border-radius:8px; transform:rotate(-2deg); }
.cmm-d-retro .cmm-add-btn{ border:2px solid #3a2a20; border-radius:40px; box-shadow:0 3px 0 #3a2a20; font-weight:800; }
.cmm-d-retro .cmm-bottom-nav{ background:#fffaf0; border-top:4px solid #3a2a20; }
@media (max-width:680px){ .cmm-d-retro .cmm-header{ margin:-18px -14px 14px; } .cmm-d-retro .cmm-cafe-name{ font-size:26px; } }

/* --- سایدبار (دسکتاپ/تبلت)؛ در موبایل مثل کلاسیک است --- */
@media (min-width:900px){
	.cmm-d-sidebar{ max-width:1280px; display:grid; grid-template-columns:240px 1fr; column-gap:32px; align-items:start; }
	.cmm-d-sidebar > .cmm-header,.cmm-d-sidebar > .cmm-cashback-promo,.cmm-d-sidebar > .cmm-track-bar,.cmm-d-sidebar > .cmm-table-bar{ grid-column:1/-1; }
	.cmm-d-sidebar > .cmm-tabs{ grid-column:1; grid-row:20; position:sticky; top:16px; flex-direction:column; align-items:stretch; background:var(--cmm-card); border:1px solid var(--cmm-border); border-radius:20px; padding:12px; gap:4px; max-height:calc(100vh - 32px); overflow-y:auto; }
	.cmm-d-sidebar > .cmm-sections{ grid-column:2; grid-row:20; min-width:0; }
	.cmm-d-sidebar .cmm-tab{ text-align:start; font-size:15px; padding:12px 16px; }
	.cmm-d-sidebar .cmm-grid{ grid-template-columns:repeat(2,1fr); }
	.cmm-d-sidebar .cmm-section-title{ justify-content:flex-start; }
	.cmm-d-sidebar .cmm-card-img{ flex-basis:130px; } .cmm-d-sidebar .cmm-card-title{ font-size:16.5px; }
}
@media (min-width:1280px){ .cmm-d-sidebar .cmm-grid{ grid-template-columns:repeat(3,1fr); } }

/* --- کتاب‌چه‌ای --- */
body.cmm-design-book{ background:#e9e0cf; }
.cmm-d-book{ --cmm-bg:#fbf6ea; --cmm-card:transparent; --cmm-text:#33291c; --cmm-gray:#857762; --cmm-border:#e2d7bd; --cmm-radius:4px; max-width:620px; background:#fbf6ea; box-shadow:0 0 0 1px #d9cdb0,0 12px 40px rgba(60,40,10,.18); margin-top:14px; margin-bottom:14px; border-radius:6px; position:relative; }
.cmm-d-book::before{ content:""; position:absolute; top:0; bottom:0; inset-inline-start:0; width:18px; background:linear-gradient(to left,transparent,rgba(120,90,40,.12)); pointer-events:none; }
.cmm-d-book .cmm-tabs{ background:#fbf6ea; justify-content:center; }
.cmm-d-book .cmm-tab{ background:none; border-radius:0; border-bottom:2px solid transparent; font-weight:500; }
.cmm-d-book .cmm-tab.active{ background:none; color:var(--cmm-orange-dark); border-bottom-color:var(--cmm-orange); box-shadow:none; }
.cmm-d-book .cmm-grid{ grid-template-columns:1fr; gap:0; }
.cmm-d-book .cmm-card{ background:transparent; border:0; border-bottom:1px solid #e2d7bd; box-shadow:none; padding:12px 0; }
.cmm-d-book .cmm-card-img{ flex-basis:84px; padding:6px; } .cmm-d-book .cmm-card-img img,.cmm-d-book .cmm-card-img .cmm-noimg{ border-radius:3px; border:4px solid #fff; box-shadow:0 2px 8px rgba(60,40,10,.25); transform:rotate(2deg); }
.cmm-d-book .cmm-card-title{ font-family:var(--font-display); font-weight:400; font-size:19px; }
.cmm-d-book .cmm-section-title{ font-size:30px; }
.cmm-pager{ display:flex; align-items:center; justify-content:center; gap:18px; margin-top:10px; }
.cmm-pager[hidden]{ display:none; }
.cmm-pager button{ width:44px; height:44px; border-radius:50%; border:1px solid var(--cmm-orange); background:transparent; color:var(--cmm-orange-dark); font-size:26px; line-height:1; cursor:pointer; }
.cmm-pager-num{ font-weight:700; color:var(--cmm-gray); min-width:60px; text-align:center; }

/* ===== فونت‌های انتخابی (محلی، OFL) — فقط فونتِ انتخاب‌شده دانلود می‌شود ===== */
@font-face{font-family:'Noto Naskh Arabic';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/naskh-400.woff2) format('woff2')}
@font-face{font-family:'Noto Naskh Arabic';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/naskh-700.woff2) format('woff2')}
@font-face{font-family:'Cairo';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/cairo-400.woff2) format('woff2')}
@font-face{font-family:'Cairo';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/cairo-700.woff2) format('woff2')}
@font-face{font-family:'Mada';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/mada-400.woff2) format('woff2')}
@font-face{font-family:'Mada';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/mada-700.woff2) format('woff2')}
@font-face{font-family:'Amiri';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/amiri-400.woff2) format('woff2')}
@font-face{font-family:'Amiri';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/amiri-700.woff2) format('woff2')}
@font-face{font-family:'El Messiri';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/messiri-400.woff2) format('woff2')}
@font-face{font-family:'El Messiri';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/messiri-700.woff2) format('woff2')}
@font-face{font-family:'Lemonada';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/lemonada-400.woff2) format('woff2')}
@font-face{font-family:'Lemonada';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/lemonada-700.woff2) format('woff2')}
@font-face{font-family:'Sahel';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/sahel-400.woff2) format('woff2')}
@font-face{font-family:'Sahel';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/sahel-700.woff2) format('woff2')}
@font-face{font-family:'Shabnam';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/shabnam-400.woff2) format('woff2')}
@font-face{font-family:'Shabnam';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/shabnam-700.woff2) format('woff2')}
@font-face{font-family:'Samim';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/samim-400.woff2) format('woff2')}
@font-face{font-family:'Samim';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/samim-700.woff2) format('woff2')}
@font-face{font-family:'Gandom';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/gandom-400.woff2) format('woff2')}
@font-face{font-family:'Parastoo';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/parastoo-400.woff2) format('woff2')}
@font-face{font-family:'Parastoo';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/parastoo-700.woff2) format('woff2')}
@font-face{font-family:'Tanha';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/tanha-400.woff2) format('woff2')}
@font-face{font-family:'Estedad';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/estedad-400.woff2) format('woff2')}
@font-face{font-family:'Estedad';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/estedad-700.woff2) format('woff2')}
@font-face{font-family:'Noto Sans Arabic';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/notosans-400.woff2) format('woff2')}
@font-face{font-family:'Noto Sans Arabic';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/notosans-700.woff2) format('woff2')}
@font-face{font-family:'Noto Kufi Arabic';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/notokufi-400.woff2) format('woff2')}
@font-face{font-family:'Noto Kufi Arabic';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/notokufi-700.woff2) format('woff2')}
@font-face{font-family:'Almarai';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/almarai-400.woff2) format('woff2')}
@font-face{font-family:'Almarai';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/almarai-700.woff2) format('woff2')}
@font-face{font-family:'IBM Plex Sans Arabic';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/plex-400.woff2) format('woff2')}
@font-face{font-family:'IBM Plex Sans Arabic';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/plex-700.woff2) format('woff2')}
@font-face{font-family:'Markazi Text';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/markazi-400.woff2) format('woff2')}
@font-face{font-family:'Markazi Text';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/markazi-700.woff2) format('woff2')}
@font-face{font-family:'Scheherazade New';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/schehe-400.woff2) format('woff2')}
@font-face{font-family:'Scheherazade New';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/schehe-700.woff2) format('woff2')}
@font-face{font-family:'Alexandria';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/alexandria-400.woff2) format('woff2')}
@font-face{font-family:'Alexandria';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/alexandria-700.woff2) format('woff2')}
@font-face{font-family:'Changa';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/changa-400.woff2) format('woff2')}
@font-face{font-family:'Changa';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/changa-700.woff2) format('woff2')}
@font-face{font-family:'Baloo Bhaijaan 2';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/baloo-400.woff2) format('woff2')}
@font-face{font-family:'Baloo Bhaijaan 2';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/baloo-700.woff2) format('woff2')}
@font-face{font-family:'Rakkas';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/rakkas-400.woff2) format('woff2')}
@font-face{font-family:'Aref Ruqaa';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/aref-400.woff2) format('woff2')}
@font-face{font-family:'Aref Ruqaa';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/aref-700.woff2) format('woff2')}
#cmm-app.cmm-f-naskh{--font-body:'Noto Naskh Arabic','Vazirmatn',Tahoma,sans-serif;--font-display:'Noto Naskh Arabic','Vazirmatn',Tahoma,sans-serif}
#cmm-app.cmm-f-cairo{--font-body:Cairo,'Vazirmatn',Tahoma,sans-serif;--font-display:Cairo,'Vazirmatn',Tahoma,sans-serif}
#cmm-app.cmm-f-mada{--font-body:Mada,'Vazirmatn',Tahoma,sans-serif;--font-display:Mada,'Vazirmatn',Tahoma,sans-serif}
#cmm-app.cmm-f-amiri{--font-body:Amiri,'Vazirmatn',Tahoma,sans-serif;--font-display:Amiri,'Vazirmatn',Tahoma,sans-serif}
#cmm-app.cmm-f-messiri{--font-body:'El Messiri','Vazirmatn',Tahoma,sans-serif;--font-display:'El Messiri','Vazirmatn',Tahoma,sans-serif}
#cmm-app.cmm-f-lemonada{--font-body:Lemonada,'Vazirmatn',Tahoma,sans-serif;--font-display:Lemonada,'Vazirmatn',Tahoma,sans-serif}
#cmm-app.cmm-f-lalezar{--font-body:'Lalezar','Vazirmatn',Tahoma,sans-serif}
.cmm-f-amiri .cmm-card-title,.cmm-f-naskh .cmm-card-title{font-weight:700}
body:has(.cmm-demo-bar){padding-top:44px}

/* قیمت اصلی خط‌خورده + قیمت نهایی بعد از تخفیف */
.cmm-old{ text-decoration:line-through; color:#b0b3ba; font-weight:500; font-size:.88em; display:inline-block; margin:0 6px; }
.cmm-final-row > span:last-child,.cmm-subtotal-row > span:last-child{ white-space:nowrap; }
.cmm-final-row > span:first-child{ white-space:nowrap; }
.cmm-final-row{ display:flex; justify-content:space-between; align-items:center; font-weight:800; font-size:16px; margin:6px 0 14px; padding-top:10px; border-top:1px solid var(--cmm-border); }
.cmm-final-row b{ color:var(--cmm-price); }

/* خط میز در سبد + پاپ‌آپ میز */
.cmm-table-line{ display:flex; align-items:center; gap:8px; background:rgba(var(--cmm-rgb),.08); border-radius:12px; padding:10px 14px; font-size:14px; margin-bottom:12px; }
.cmm-table-line-muted{ color:var(--cmm-gray); font-size:12.5px; background:#f6f7f9; }
.cmm-linkbtn{ background:none; border:0; color:var(--cmm-orange-dark); font:inherit; font-size:12.5px; text-decoration:underline; cursor:pointer; margin-inline-start:auto; }
.cmm-shake{ animation:cmmShake .35s; border-color:#e5555a !important; }
@keyframes cmmShake{ 20%,60%{ transform:translateX(-6px); } 40%,80%{ transform:translateX(6px); } }

/* ---------- رزرو اتاق VIP ---------- */
.cmm-vip-entry{ display:grid; grid-template-columns:1fr auto; grid-template-areas:"t go" "s go"; align-items:center; gap:2px 12px; width:100%; margin:0 0 14px; padding:14px 16px; border:0; border-radius:18px; cursor:pointer; text-align:right; font-family:inherit; color:#fff;
	background:linear-gradient(135deg,var(--cmm-orange),var(--cmm-orange-dark)); box-shadow:0 8px 20px rgba(var(--cmm-rgb),.28); }
.cmm-vip-entry[hidden]{ display:none; }
.cmm-vip-entry-t{ grid-area:t; font-weight:800; font-size:16px; }
.cmm-vip-entry-s{ grid-area:s; font-size:12.5px; opacity:.92; line-height:1.7; }
.cmm-vip-entry-go{ grid-area:go; background:rgba(255,255,255,.22); padding:8px 14px; border-radius:30px; font-weight:700; font-size:13px; white-space:nowrap; }
.cmm-vip-acc-btn{ width:100%; margin:0 0 12px; padding:12px; border:1.5px solid var(--cmm-orange); border-radius:14px; background:rgba(var(--cmm-rgb),.08); color:var(--cmm-orange-dark); font-weight:700; font-size:14px; font-family:inherit; cursor:pointer; }
.cmm-vip-tabs{ display:flex; gap:8px; margin-bottom:12px; }
.cmm-vip-tabs button{ flex:1; padding:10px; border:1.5px solid #e5e7eb; border-radius:12px; background:#fff; font-weight:700; font-size:13.5px; font-family:inherit; cursor:pointer; }
.cmm-vip-tabs button.on{ background:var(--cmm-orange); border-color:var(--cmm-orange); color:#fff; }
.cmm-vip-intro{ font-size:13.5px; line-height:2; color:#555; margin:0 0 12px; }
.cmm-vip-room{ border:1px solid #eceef1; border-radius:18px; overflow:hidden; margin-bottom:14px; background:#fff; }
.cmm-vip-room-img{ width:100%; height:160px; object-fit:cover; display:block; }
.cmm-vip-room-body{ padding:14px; } .cmm-vip-room-body h4{ margin:0 0 6px; font-size:17px; } .cmm-vip-room-body p{ margin:0 0 8px; font-size:13px; line-height:1.9; color:#666; }
.cmm-vip-chips{ display:flex; flex-wrap:wrap; gap:6px; margin-bottom:8px; }
.cmm-vip-chips span{ background:#f4f5f7; border-radius:20px; padding:4px 10px; font-size:12px; font-weight:600; color:#444; }
.cmm-vip-feat{ margin:0 0 12px; padding:0 18px 0 0; font-size:12.5px; color:#555; line-height:1.9; }
.cmm-vip-back{ background:none; border:0; color:var(--cmm-orange-dark); font-weight:700; font-size:13.5px; font-family:inherit; cursor:pointer; padding:0 0 8px; }
.cmm-vip-h{ margin:0 0 10px; font-size:18px; }
.cmm-vip-sec{ background:#fafbfc; border:1px solid #eceef1; border-radius:16px; padding:12px; margin-bottom:12px; }
.cmm-vip-sec[hidden]{ display:none; }
.cmm-vip-sec > b{ display:block; margin-bottom:8px; font-size:14px; }
.cmm-vip-calhead{ display:flex; align-items:center; justify-content:space-between; margin-bottom:8px; }
.cmm-vip-calhead button{ width:38px; height:38px; border-radius:50%; border:1px solid #e5e7eb; background:#fff; font-size:20px; cursor:pointer; }
.cmm-vip-calhead button:disabled{ opacity:.3; cursor:default; }
.cmm-vip-cal{ display:grid; grid-template-columns:repeat(7,1fr); gap:5px; }
.cmm-vip-cal i.hd{ font-style:normal; text-align:center; font-size:11.5px; font-weight:700; color:#999; padding:3px 0; }
.cmm-vip-day{ aspect-ratio:1/1; border:1px solid #e5e7eb; border-radius:10px; background:#fff; font-weight:700; font-size:14px; font-family:inherit; cursor:pointer; position:relative; display:flex; align-items:center; justify-content:center; flex-direction:column; padding:0; }
.cmm-vip-day small{ font-size:9px; font-weight:600; color:#999; margin-top:-2px; }
.cmm-vip-day.s-past,.cmm-vip-day.s-closed{ background:transparent; border-color:transparent; color:#c4c7cc; cursor:default; }
.cmm-vip-day.s-full{ background:#f3f4f6; color:#a1a5ab; text-decoration:line-through; cursor:default; }
.cmm-vip-day.today{ border-color:var(--cmm-orange); }
.cmm-vip-day.sel{ background:var(--cmm-orange); border-color:var(--cmm-orange); color:#fff; }
.cmm-vip-times{ display:flex; flex-wrap:wrap; gap:8px; margin-top:6px; }
.cmm-vip-times button{ padding:9px 14px; border:1.5px solid #e5e7eb; border-radius:12px; background:#fff; font-weight:700; font-size:13.5px; font-family:inherit; cursor:pointer; }
.cmm-vip-times button.sel{ background:var(--cmm-orange); border-color:var(--cmm-orange); color:#fff; }
.cmm-vip-step{ display:inline-flex; align-items:center; gap:14px; border:1.5px solid #e5e7eb; border-radius:12px; padding:4px 8px; background:#fff; }
.cmm-vip-step button{ width:34px; height:34px; border:0; border-radius:50%; background:rgba(var(--cmm-rgb),.12); color:var(--cmm-orange-dark); font-size:20px; cursor:pointer; }
.cmm-vip-step b{ min-width:26px; text-align:center; font-size:16px; }
.cmm-vip-sum{ display:flex; flex-direction:column; gap:2px; margin-bottom:10px; }
.cmm-vip-sum > div{ display:flex; justify-content:space-between; gap:12px; padding:7px 0; border-bottom:1px dashed #e5e7eb; font-size:13.5px; }
.cmm-vip-sum > div span{ color:#777; } .cmm-vip-sum > div b{ text-align:left; }
.cmm-vip-sum > div.hl{ color:var(--cmm-orange-dark); font-size:15px; }
.cmm-vip-methods{ display:flex; flex-direction:column; gap:8px; margin:10px 0; }
.cmm-vip-methods label{ display:flex; align-items:center; gap:8px; padding:11px 12px; border:1.5px solid #e5e7eb; border-radius:12px; font-size:13.5px; font-weight:600; cursor:pointer; background:#fff; }
.cmm-vip-methods label.on{ border-color:var(--cmm-orange); background:rgba(var(--cmm-rgb),.07); }
.cmm-vip-rules{ background:#fff; border:1px solid #eceef1; border-radius:12px; padding:8px 12px; margin:8px 0; font-size:13px; } .cmm-vip-rules summary{ cursor:pointer; font-weight:700; } .cmm-vip-rules p{ line-height:2; margin:6px 0 0; color:#555; }
.cmm-vip-done{ text-align:center; padding:10px 0; } .cmm-vip-done .e{ font-size:54px; } .cmm-vip-done h4{ margin:6px 0; font-size:19px; } .cmm-vip-done p{ color:#666; margin:0 0 14px; }
.cmm-vip-res{ border:1px solid #eceef1; border-right:4px solid #d1d5db; border-radius:14px; padding:12px; margin-bottom:12px; background:#fff; }
.cmm-vip-res.st-pending{ border-right-color:#f2871f; } .cmm-vip-res.st-approved{ border-right-color:#16a34a; } .cmm-vip-res.st-completed{ border-right-color:#3b82f6; }
.cmm-vip-res .top{ display:flex; justify-content:space-between; align-items:center; gap:8px; margin-bottom:6px; }
.cmm-vip-res .b{ font-size:12px; font-weight:700; padding:3px 10px; border-radius:20px; background:#eee; color:#555; white-space:nowrap; }
.cmm-vip-res .b.st-pending{ background:#fff0dc; color:#c2610a; } .cmm-vip-res .b.st-approved{ background:#dcfce7; color:#15803d; } .cmm-vip-res .b.st-completed{ background:#dbeafe; color:#1d4ed8; }
.cmm-vip-res .w{ font-size:13.5px; line-height:2; font-weight:600; } .cmm-vip-res .m{ font-size:12.5px; color:#666; line-height:1.9; margin-top:4px; }
.cmm-vip-res .n{ background:#f6f7f9; border-radius:10px; padding:8px 10px; font-size:12.5px; margin-top:6px; line-height:1.8; }
.cmm-vip-paybox{ margin-top:10px; padding:10px; background:#fff8ec; border-radius:12px; display:flex; flex-direction:column; gap:8px; font-size:13px; }
.cmm-vip-cancel{ margin-top:10px; background:none; border:1px solid #fecaca; color:#dc2626; border-radius:10px; padding:8px 14px; font-weight:700; font-size:13px; font-family:inherit; cursor:pointer; }

/* فونت پنجره‌های شناور (ویتر، میز، گزینه‌ها، تولد، اطلاع‌رسانی) */
.cmm-waiter-overlay,.cmm-waiter-overlay *,.cmm-bd-overlay,.cmm-bd-overlay *,.cmm-opt-overlay,.cmm-opt-overlay *{font-family:inherit}
.cmm-waiter-overlay button,.cmm-waiter-overlay input,.cmm-waiter-overlay select,.cmm-waiter-overlay textarea,.cmm-bd-overlay button,.cmm-bd-overlay input,.cmm-bd-overlay select{font-family:inherit}

/* ========== بلوک‌های صفحه‌ی اصلی (وبلاگ و رزرو VIP): همه‌ی مدل‌ها و رنگ‌بندی‌ها ========== */
.cmm-hb-zone:empty{ display:none; }
.cmm-hb{ --hb-bg:rgba(var(--cmm-rgb),.08); --hb-fg:var(--cmm-text); --hb-accent:var(--cmm-orange-dark); --hb-bd:rgba(var(--cmm-rgb),.22); --hb-btn-bg:var(--cmm-orange); --hb-btn-fg:#fff; --hb-sub:#6b7078;
	display:block; width:100%; margin:0 0 14px; padding:14px 16px; border-radius:18px; text-decoration:none; font-family:inherit; text-align:right; color:var(--hb-fg); background:var(--hb-bg); border:1px solid var(--hb-bd); box-sizing:border-box; }
.cmm-hb[hidden]{ display:none; }
.cmm-hb-v-solid{ --hb-bg:linear-gradient(135deg,var(--cmm-orange),var(--cmm-orange-dark)); --hb-fg:#fff; --hb-accent:#fff; --hb-bd:transparent; --hb-btn-bg:#fff; --hb-btn-fg:var(--cmm-orange-dark); --hb-sub:rgba(255,255,255,.9); box-shadow:0 8px 20px rgba(var(--cmm-rgb),.26); }
.cmm-hb-v-outline{ --hb-bg:transparent; --hb-bd:var(--cmm-orange); --hb-btn-bg:transparent; --hb-btn-fg:var(--cmm-orange-dark); }
.cmm-hb-v-outline .cmm-hb-btn{ border:1.5px solid var(--cmm-orange); }
.cmm-hb-v-dark{ --hb-bg:#2a2622; --hb-fg:#fff; --hb-accent:#ffd9a8; --hb-bd:#2a2622; --hb-btn-bg:var(--cmm-orange); --hb-btn-fg:#fff; --hb-sub:#cfc7bb; }
.cmm-hb-title{ font-family:var(--font-display); font-size:17px; font-weight:800; line-height:1.6; margin:0; color:inherit; }
.cmm-hb-sub{ display:block; font-size:12.5px; line-height:1.8; color:var(--hb-sub); margin:2px 0 0; }
p.cmm-hb-sub{ margin:0 0 10px; }
.cmm-hb-note{ display:block; font-size:12px; line-height:1.9; color:var(--hb-sub); margin:10px 0 0; padding:8px 12px; border-radius:12px; background:rgba(127,127,127,.12); }
.cmm-hb-btn{ display:inline-block; background:var(--hb-btn-bg); color:var(--hb-btn-fg) !important; padding:8px 16px; border-radius:30px; font-weight:700; font-size:13px; white-space:nowrap; text-decoration:none; }
.cmm-hb-arrow{ font-size:20px; line-height:1; }
.cmm-hb-head{ display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:10px; }
button.cmm-hb{ cursor:pointer; }

/* VIP: بنر */
.cmm-hb-vip.cmm-hb-s-banner{ display:grid; grid-template-columns:1fr auto; grid-template-areas:"t go" "s go" "n n"; align-items:center; gap:2px 12px; }
.cmm-hb-vip.cmm-hb-s-banner .cmm-hb-title{ grid-area:t; } .cmm-hb-vip.cmm-hb-s-banner .cmm-hb-sub{ grid-area:s; } .cmm-hb-vip.cmm-hb-s-banner .cmm-hb-btn{ grid-area:go; } .cmm-hb-vip.cmm-hb-s-banner .cmm-hb-note{ grid-area:n; }
/* VIP: کارت */
.cmm-hb-vip.cmm-hb-s-card{ text-align:center; padding:22px 18px; display:flex; flex-direction:column; align-items:center; gap:4px; }
.cmm-hb-vip.cmm-hb-s-card .cmm-hb-title{ font-size:20px; } .cmm-hb-vip.cmm-hb-s-card .cmm-hb-btn{ margin-top:10px; padding:10px 26px; font-size:14px; }
/* VIP: بلیت */
.cmm-hb-vip.cmm-hb-s-ticket{ display:grid; grid-template-columns:1fr auto; grid-template-areas:"t go" "s go" "n n"; align-items:center; gap:2px 14px; border:2px dashed var(--cmm-orange); background:var(--hb-bg); }
.cmm-hb-vip.cmm-hb-s-ticket.cmm-hb-v-solid, .cmm-hb-vip.cmm-hb-s-ticket.cmm-hb-v-dark{ border-color:rgba(255,255,255,.7); }
.cmm-hb-vip.cmm-hb-s-ticket .cmm-hb-title{ grid-area:t; } .cmm-hb-vip.cmm-hb-s-ticket .cmm-hb-sub{ grid-area:s; } .cmm-hb-vip.cmm-hb-s-ticket .cmm-hb-btn{ grid-area:go; border-radius:12px; } .cmm-hb-vip.cmm-hb-s-ticket .cmm-hb-note{ grid-area:n; }
/* دکمه (VIP و وبلاگ) */
.cmm-hb-s-button{ display:flex; align-items:center; justify-content:space-between; padding:13px 18px; border-radius:16px; }
.cmm-hb-s-button .cmm-hb-title{ font-size:15px; }
/* قرص کوچک */
.cmm-hb-vip.cmm-hb-s-pill{ display:inline-flex; width:auto; margin:0 0 14px; padding:8px 18px; border-radius:999px; align-items:center; }
.cmm-hb-vip.cmm-hb-s-pill .cmm-hb-title{ font-size:14px; }
.cmm-hb-zone{ display:flex; flex-wrap:wrap; gap:0 10px; }
.cmm-hb-zone > .cmm-hb:not(.cmm-hb-s-pill){ flex:1 1 100%; }

/* وبلاگ: بنر */
.cmm-hb-blog.cmm-hb-s-banner{ display:flex; align-items:center; justify-content:space-between; gap:14px; flex-wrap:wrap; }
.cmm-hb-blog.cmm-hb-s-banner .cmm-hb-txt{ flex:1; min-width:180px; }
.cmm-hb-blog.cmm-hb-s-banner .cmm-hb-sub{ margin:2px 0 0; }
/* وبلاگ: کارت/اسلایدر/ویژه */
.cmm-hb-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:12px; }
.cmm-hb-card{ display:flex; flex-direction:column; gap:5px; background:var(--cmm-card); color:var(--cmm-text); border:1px solid var(--cmm-border); border-radius:14px; overflow:hidden; text-decoration:none; padding-bottom:11px; min-width:0; }
.cmm-hb-img{ display:flex; align-items:center; justify-content:center; aspect-ratio:16/10; background:rgba(var(--cmm-rgb),.1); font-size:30px; overflow:hidden; }
.cmm-hb-img img{ width:100%; height:100%; object-fit:cover; display:block; }
.cmm-hb-card b{ padding:0 11px; font-size:13.5px; line-height:1.8; }
.cmm-hb-card small, .cmm-hb-rt small, .cmm-hb-links small{ color:var(--cmm-gray); font-size:11.5px; }
.cmm-hb-card small{ padding:0 11px; }
.cmm-hb-s-slider .cmm-hb-grid{ display:flex; overflow-x:auto; scroll-snap-type:x mandatory; padding-bottom:6px; gap:12px; scrollbar-width:thin; }
.cmm-hb-s-slider .cmm-hb-card{ flex:0 0 min(260px,72%); scroll-snap-align:start; }
.cmm-hb-s-hero .cmm-hb-grid{ grid-template-columns:2fr 1fr; grid-template-rows:auto auto; }
.cmm-hb-s-hero .cmm-hb-card.big{ grid-row:1/3; } .cmm-hb-s-hero .cmm-hb-card.big b{ font-size:16px; } .cmm-hb-s-hero .cmm-hb-card.big .cmm-hb-img{ aspect-ratio:auto; flex:1; min-height:150px; }
/* وبلاگ: فهرست */
.cmm-hb-rows{ display:flex; flex-direction:column; gap:8px; }
.cmm-hb-row{ display:flex; align-items:center; gap:12px; background:var(--cmm-card); color:var(--cmm-text); border:1px solid var(--cmm-border); border-radius:14px; padding:8px 10px; text-decoration:none; }
.cmm-hb-th{ width:54px; height:54px; flex:none; border-radius:11px; background:rgba(var(--cmm-rgb),.1); display:flex; align-items:center; justify-content:center; overflow:hidden; font-size:22px; }
.cmm-hb-th img{ width:100%; height:100%; object-fit:cover; }
.cmm-hb-rt{ flex:1; min-width:0; display:flex; flex-direction:column; } .cmm-hb-rt b{ font-size:13.5px; line-height:1.8; }
.cmm-hb-row i{ font-style:normal; color:var(--cmm-gray); font-size:18px; }
/* وبلاگ: متنی */
.cmm-hb-links{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:8px; }
.cmm-hb-links li{ display:flex; align-items:baseline; justify-content:space-between; gap:10px; border-bottom:1px dashed var(--hb-bd); padding-bottom:7px; }
.cmm-hb-links a{ color:var(--hb-fg); font-size:13.5px; font-weight:600; text-decoration:none; line-height:1.8; }
.cmm-hb-links small{ white-space:nowrap; color:var(--hb-sub); }
.cmm-hb-v-solid .cmm-hb-links a, .cmm-hb-v-dark .cmm-hb-links a{ color:#fff; }
.cmm-hb-about{ margin-bottom:14px; } .cmm-hb-about .cmm-hb{ margin-bottom:8px; }
@media (max-width:640px){
	.cmm-hb-grid{ grid-template-columns:none; grid-auto-flow:column; grid-auto-columns:72%; overflow-x:auto; scroll-snap-type:x mandatory; padding-bottom:6px; }
	.cmm-hb-card{ scroll-snap-align:start; }
	.cmm-hb-s-hero .cmm-hb-grid{ display:grid; grid-template-columns:1fr 1fr; grid-auto-flow:row; grid-auto-columns:auto; overflow:visible; }
	.cmm-hb-s-hero .cmm-hb-card.big{ grid-column:1/-1; grid-row:auto; } .cmm-hb-s-hero .cmm-hb-card.big .cmm-hb-img{ aspect-ratio:16/9; flex:none; }
}

/* ===================== طرح‌های گروه چهارم ===================== */
/* --- جمع‌وجور --- */
.cmm-d-compact{ --cmm-radius:12px; }
.cmm-d-compact .cmm-grid{ gap:8px; }
.cmm-d-compact .cmm-card{ box-shadow:none; align-items:center; }
.cmm-d-compact .cmm-card-img{ flex:0 0 64px; height:64px; margin:6px; border-radius:10px; overflow:hidden; }
.cmm-d-compact .cmm-card-body{ padding:8px 10px; }
.cmm-d-compact .cmm-card-title{ font-size:13.5px; margin:0 0 4px; }
.cmm-d-compact .cmm-card-desc{ display:none; }
.cmm-d-compact .cmm-add-btn,.cmm-d-compact .cmm-qty-stepper{ height:28px; font-size:12px; }
.cmm-d-compact .cmm-add-btn{ padding:0 12px; }
.cmm-d-compact .cmm-section-title{ font-size:19px; margin:2px 0 12px; }
.cmm-d-compact .cmm-section{ margin-bottom:22px; }
@media (max-width:680px){ .cmm-d-compact .cmm-grid{ gap:6px; } }

/* --- گالری مربعی --- */
.cmm-d-gallery{ --cmm-radius:16px; }
.cmm-d-gallery .cmm-grid{ grid-template-columns:repeat(3,1fr); gap:14px; }
.cmm-d-gallery .cmm-card{ flex-direction:column-reverse; box-shadow:0 4px 14px rgba(20,20,30,.06); }
.cmm-d-gallery .cmm-card-img{ flex:none; aspect-ratio:1; }
.cmm-d-gallery .cmm-card-img img,.cmm-d-gallery .cmm-card-img .cmm-noimg{ position:absolute; inset:0; height:100%; }
.cmm-d-gallery .cmm-card-body{ padding:10px 10px 12px; text-align:center; }
.cmm-d-gallery .cmm-card-title{ font-size:14px; margin-bottom:2px; }
.cmm-d-gallery .cmm-card-desc{ display:none; }
.cmm-d-gallery .cmm-card-bottom{ flex-direction:column; gap:8px; }
.cmm-d-gallery .cmm-add-btn,.cmm-d-gallery .cmm-qty-stepper{ width:100%; justify-content:center; }
@media (max-width:680px){ .cmm-d-gallery .cmm-grid{ grid-template-columns:1fr 1fr; gap:10px; } .cmm-d-gallery .cmm-card-title{ font-size:13px; } }

/* --- مجله‌ای --- */
.cmm-d-magazine .cmm-grid{ grid-template-columns:1fr 1fr; gap:12px; }
.cmm-d-magazine .cmm-card:first-child{ grid-column:1/-1; flex-direction:column-reverse; }
.cmm-d-magazine .cmm-card:first-child .cmm-card-img{ flex:none; aspect-ratio:16/8; }
.cmm-d-magazine .cmm-card:first-child .cmm-card-img img,.cmm-d-magazine .cmm-card:first-child .cmm-card-img .cmm-noimg{ position:absolute; inset:0; height:100%; }
.cmm-d-magazine .cmm-card:first-child .cmm-card-title{ font-family:var(--font-display); font-size:21px; }
.cmm-d-magazine .cmm-card:first-child .cmm-card-body{ padding:14px 16px 16px; }
.cmm-d-magazine .cmm-card:not(:first-child) .cmm-card-img{ flex-basis:84px; }
.cmm-d-magazine .cmm-card:not(:first-child) .cmm-card-desc{ display:none; }
@media (max-width:680px){ .cmm-d-magazine .cmm-grid{ grid-template-columns:1fr; } }

/* --- ردیف افقی --- */
.cmm-d-rows .cmm-grid{ display:flex; overflow-x:auto; gap:12px; padding:2px 2px 12px; scroll-snap-type:x mandatory; scrollbar-width:none; }
.cmm-d-rows .cmm-grid::-webkit-scrollbar{ display:none; }
.cmm-d-rows .cmm-card{ flex:0 0 min(230px,66%); flex-direction:column-reverse; scroll-snap-align:start; }
.cmm-d-rows .cmm-card-img{ flex:none; aspect-ratio:4/3; }
.cmm-d-rows .cmm-card-img img,.cmm-d-rows .cmm-card-img .cmm-noimg{ position:absolute; inset:0; height:100%; }
.cmm-d-rows .cmm-card-body{ padding:10px 12px 12px; }
.cmm-d-rows .cmm-card-desc{ -webkit-line-clamp:2; font-size:12px; }
.cmm-d-rows .cmm-card-bottom{ flex-wrap:wrap; gap:8px; }
.cmm-d-rows .cmm-section-title{ justify-content:flex-start; font-size:21px; }
.cmm-d-rows .cmm-section-title::before{ display:none; }
.cmm-d-rows .cmm-section-title::after{ max-width:none; border-top:2px solid var(--cmm-border); }

/* --- بشقابی --- */
.cmm-d-plate{ --cmm-radius:22px; --cmm-bg:#faf7f2; }
.cmm-d-plate .cmm-grid{ gap:58px 14px; padding-top:52px; }
.cmm-d-plate .cmm-card{ overflow:visible; flex-direction:column; text-align:center; padding-top:56px; box-shadow:0 8px 22px rgba(60,40,10,.08); border:none; }
.cmm-d-plate .cmm-card-img{ position:absolute; top:-46px; left:50%; margin-left:-52px; width:104px; height:104px; flex:none; }
.cmm-d-plate .cmm-card-img img,.cmm-d-plate .cmm-card-img .cmm-noimg{ border-radius:50%; border:4px solid #fff; box-shadow:0 8px 18px rgba(0,0,0,.18); }
.cmm-d-plate .cmm-card-body{ padding:6px 14px 14px; }
.cmm-d-plate .cmm-card-title{ font-size:16px; }
.cmm-d-plate .cmm-card-bottom{ flex-direction:column; gap:8px; }
.cmm-d-plate .cmm-add-btn,.cmm-d-plate .cmm-qty-stepper{ border-radius:30px; }
@media (max-width:680px){ .cmm-d-plate .cmm-grid{ grid-template-columns:1fr; } }

/* --- پولاروید --- */
.cmm-d-polaroid{ --cmm-bg:#efe9df; --cmm-radius:3px; }
.cmm-d-polaroid .cmm-grid{ gap:26px 18px; padding:6px 4px; }
.cmm-d-polaroid .cmm-card{ flex-direction:column-reverse; background:#fff; padding:10px 10px 4px; border:none; box-shadow:0 6px 16px rgba(60,40,10,.18); transform:rotate(-1.2deg); transition:transform .2s; }
.cmm-d-polaroid .cmm-card:nth-child(even){ transform:rotate(1.1deg); }
.cmm-d-polaroid .cmm-card:hover{ transform:rotate(0) scale(1.02); }
.cmm-d-polaroid .cmm-card-img{ flex:none; aspect-ratio:1; }
.cmm-d-polaroid .cmm-card-img img,.cmm-d-polaroid .cmm-card-img .cmm-noimg{ position:absolute; inset:0; height:100%; }
.cmm-d-polaroid .cmm-card-body{ padding:12px 4px 10px; text-align:center; }
.cmm-d-polaroid .cmm-card-title{ font-family:var(--font-display); font-weight:400; font-size:18px; }
.cmm-d-polaroid .cmm-card-desc{ display:none; }
.cmm-d-polaroid .cmm-card-bottom{ flex-direction:column; gap:8px; }
.cmm-d-polaroid .cmm-add-btn,.cmm-d-polaroid .cmm-qty-stepper{ border-radius:3px; }
@media (max-width:680px){ .cmm-d-polaroid .cmm-grid{ grid-template-columns:1fr 1fr; gap:20px 12px; } .cmm-d-polaroid .cmm-card-title{ font-size:15px; } }

/* --- فیش و رسید --- */
.cmm-d-receipt{ --cmm-bg:#e9e5dc; --cmm-radius:2px; }
.cmm-d-receipt .cmm-tabs{ background:#e9e5dc; }
.cmm-d-receipt .cmm-section{ background:#fffefb; padding:20px 16px 14px; margin-bottom:34px; position:relative; box-shadow:0 3px 10px rgba(0,0,0,.08); max-width:640px; margin-left:auto; margin-right:auto; }
.cmm-d-receipt .cmm-section::after{ content:""; position:absolute; left:0; right:0; bottom:-9px; height:10px; background:linear-gradient(-45deg,transparent 7px,#fffefb 0) 0 0/14px 10px, linear-gradient(45deg,transparent 7px,#fffefb 0) 0 0/14px 10px; }
.cmm-d-receipt .cmm-section-title{ font-size:20px; letter-spacing:1px; }
.cmm-d-receipt .cmm-section-title::before,.cmm-d-receipt .cmm-section-title::after{ border-top:2px dashed #b9b5aa; }
.cmm-d-receipt .cmm-grid{ grid-template-columns:1fr; gap:0; }
.cmm-d-receipt .cmm-card{ border:0; border-bottom:1.5px dashed #cfcabd; box-shadow:none; background:transparent; align-items:center; }
.cmm-d-receipt .cmm-card-img{ flex:0 0 44px; height:44px; margin:8px 4px; filter:grayscale(.85); }
.cmm-d-receipt .cmm-card-body{ padding:10px 6px; }
.cmm-d-receipt .cmm-card-title{ font-size:14px; margin:0; }
.cmm-d-receipt .cmm-card-desc{ font-size:11.5px; margin:2px 0 6px; -webkit-line-clamp:1; }
.cmm-d-receipt .cmm-price{ color:#22242a; font-size:14px; }
.cmm-d-receipt .cmm-add-btn,.cmm-d-receipt .cmm-qty-stepper{ border-radius:2px; height:30px; }
@media (max-width:680px){ .cmm-d-receipt .cmm-section{ padding:16px 12px 12px; } }

/* --- کاغذ کرافت --- */
#cmm-app.cmm-d-kraft{ --cmm-bg:#d8bd93; --cmm-text:#3a2916; --cmm-gray:#7a6244; --cmm-card:#f5e8cf; --cmm-border:#9a7a49; --cmm-radius:10px;
	background-image:repeating-linear-gradient(45deg,rgba(255,255,255,.05) 0 2px,transparent 2px 6px); }
.cmm-d-kraft .cmm-tabs{ background:#d8bd93; }
.cmm-d-kraft .cmm-tab{ border:1.5px dashed #8a6a3b; border-radius:6px; color:#3a2916; }
.cmm-d-kraft .cmm-tab.active{ border-style:solid; border-color:transparent; color:#fff; }
.cmm-d-kraft .cmm-section-title{ font-size:26px; color:#3a2916; }
.cmm-d-kraft .cmm-section-title::before,.cmm-d-kraft .cmm-section-title::after{ content:"✦"; border:0; flex:none; max-width:none; color:#8a6a3b; font-size:16px; }
.cmm-d-kraft .cmm-card{ border:2px dashed #8a6a3b; box-shadow:2px 3px 0 rgba(58,41,22,.25); }
.cmm-d-kraft .cmm-card-title{ font-family:var(--font-display); font-weight:400; font-size:18px; }
.cmm-d-kraft .cmm-card-img{ padding:8px 0 8px 8px; } .cmm-d-kraft .cmm-card-img img,.cmm-d-kraft .cmm-card-img .cmm-noimg{ border-radius:6px; border:2px solid #fff; transform:rotate(-2deg); }
.cmm-d-kraft .cmm-price{ background:#3a2916; color:#f5e8cf; padding:2px 10px; border-radius:20px; font-size:12.5px; }
.cmm-d-kraft .cmm-add-btn{ border-radius:6px; }

/* --- نئوبروتال --- */
#cmm-app.cmm-d-brutal{ --cmm-bg:#fffdf5; --cmm-text:#111; --cmm-gray:#444; --cmm-border:#111; --cmm-radius:0; }
.cmm-d-brutal .cmm-tabs{ background:#fffdf5; }
.cmm-d-brutal .cmm-tab{ border:3px solid #111; border-radius:0; background:#fff; box-shadow:3px 3px 0 #111; color:#111; font-weight:800; }
.cmm-d-brutal .cmm-tab.active{ background:#ffe066; color:#111; box-shadow:3px 3px 0 #111; transform:translate(-1px,-1px); }
.cmm-d-brutal .cmm-section-title{ font-weight:900; font-size:26px; justify-content:flex-start; }
.cmm-d-brutal .cmm-section-title::before{ display:none; }
.cmm-d-brutal .cmm-section-title::after{ max-width:none; border-top:5px solid #111; }
.cmm-d-brutal .cmm-grid{ gap:20px; }
.cmm-d-brutal .cmm-card{ border:3px solid #111; box-shadow:6px 6px 0 #111; background:#ffe066; }
.cmm-d-brutal .cmm-card:nth-child(4n+2){ background:#ff9ecb; } .cmm-d-brutal .cmm-card:nth-child(4n+3){ background:#9ef0d0; } .cmm-d-brutal .cmm-card:nth-child(4n){ background:#9ec9ff; }
.cmm-d-brutal .cmm-card-title{ font-weight:900; font-size:17px; color:#111; }
.cmm-d-brutal .cmm-card-desc{ color:#222; }
.cmm-d-brutal .cmm-card-img{ border-right:3px solid #111; border-left:0; } .cmm-d-brutal .cmm-card-img .cmm-noimg{ background:#fff; color:#555; }
.cmm-d-brutal .cmm-price{ color:#111; font-weight:900; background:#fff; border:2px solid #111; padding:1px 8px; }
.cmm-d-brutal .cmm-add-btn{ background:#111; color:#fff; border-radius:0; box-shadow:2px 2px 0 #fff; }
.cmm-d-brutal .cmm-qty-stepper{ background:#fff; border:2px solid #111; border-radius:0; } .cmm-d-brutal .cmm-qty-stepper button{ color:#111; }

/* --- اسپرسو --- */
#cmm-app.cmm-d-espresso{ --cmm-bg:#f4ebdf; --cmm-text:#3b2a1f; --cmm-gray:#8b7461; --cmm-card:#fffaf3; --cmm-border:#e8d8c3; --cmm-radius:22px; }
.cmm-d-espresso .cmm-tabs{ background:#f4ebdf; }
.cmm-d-espresso .cmm-tab{ background:#fffaf3; border:1px solid #e8d8c3; border-radius:999px; color:#5a4332; }
.cmm-d-espresso .cmm-tab.active{ border-color:transparent; color:#fff; }
.cmm-d-espresso .cmm-section-title{ color:#4a3426; }
.cmm-d-espresso .cmm-section-title::before,.cmm-d-espresso .cmm-section-title::after{ border-top:2px solid #dcc8ad; }
.cmm-d-espresso .cmm-card{ box-shadow:0 8px 22px rgba(90,60,30,.08); border:1px solid #efe1cf; }
.cmm-d-espresso .cmm-card-img{ padding:10px 0 10px 10px; flex-basis:116px; } .cmm-d-espresso .cmm-card-img img,.cmm-d-espresso .cmm-card-img .cmm-noimg{ border-radius:18px; }
.cmm-d-espresso .cmm-card-title{ color:#3b2a1f; }
.cmm-d-espresso .cmm-add-btn,.cmm-d-espresso .cmm-qty-stepper{ border-radius:30px; }

/* --- طلایی لوکس --- */
#cmm-app.cmm-d-gold{ --cmm-bg:#fff; --cmm-text:#1a1a1a; --cmm-gray:#7b7b7b; --cmm-border:#e8dcc0; --cmm-radius:0; --cmm-price:#a9831f; }
.cmm-d-gold .cmm-tabs{ background:#fff; border-bottom:1px solid #e8dcc0; padding-bottom:0; gap:4px; }
.cmm-d-gold .cmm-tab{ border-radius:0; color:#666; padding:12px 16px; border-bottom:2px solid transparent; }
.cmm-d-gold .cmm-tab.active{ background:none; color:#a9831f; box-shadow:none; border-bottom-color:#c9a227; }
.cmm-d-gold .cmm-section-title{ font-size:24px; letter-spacing:2px; color:#1a1a1a; }
.cmm-d-gold .cmm-section-title::before,.cmm-d-gold .cmm-section-title::after{ border-top:1px solid #c9a227; max-width:90px; }
.cmm-d-gold .cmm-grid{ gap:26px 20px; }
.cmm-d-gold .cmm-card{ flex-direction:column-reverse; border:0; border-bottom:1px solid #d9c27a; background:transparent; box-shadow:none; text-align:center; padding-bottom:14px; }
.cmm-d-gold .cmm-card-img{ flex:none; aspect-ratio:4/3; }
.cmm-d-gold .cmm-card-img img,.cmm-d-gold .cmm-card-img .cmm-noimg{ position:absolute; inset:0; height:100%; }
.cmm-d-gold .cmm-card-body{ padding:14px 6px 0; }
.cmm-d-gold .cmm-card-title{ font-family:var(--font-display); font-weight:400; font-size:19px; }
.cmm-d-gold .cmm-card-bottom{ flex-direction:column; gap:10px; }
.cmm-d-gold .cmm-price{ font-size:15px; letter-spacing:.5px; }
.cmm-d-gold .cmm-add-btn{ background:transparent; color:#a9831f; border:1px solid #c9a227; border-radius:0; min-width:120px; }
.cmm-d-gold .cmm-add-btn:hover{ background:#c9a227; color:#fff; }
.cmm-d-gold .cmm-qty-stepper{ background:transparent; border:1px solid #c9a227; border-radius:0; } .cmm-d-gold .cmm-qty-stepper button{ color:#a9831f; }
@media (max-width:680px){ .cmm-d-gold .cmm-grid{ grid-template-columns:1fr; } }

/* ===================== طرح‌های جدید (۱۱ مدل) ===================== */
/* --- دایره‌ای: عکس‌های گرد، بدون کارت --- */
.cmm-d-circle .cmm-grid{ grid-template-columns:repeat(3,1fr); gap:24px 12px; }
.cmm-d-circle .cmm-card{ flex-direction:column; align-items:center; text-align:center; background:none; border:0; box-shadow:none; overflow:visible; }
.cmm-d-circle .cmm-card-img{ order:-1; flex:none; width:100%; max-width:132px; aspect-ratio:1; border-radius:50%; overflow:hidden; border:4px solid #fff; box-shadow:0 8px 22px rgba(60,40,10,.18); }
.cmm-d-circle .cmm-card-img img,.cmm-d-circle .cmm-card-img .cmm-noimg{ position:absolute; inset:0; height:100%; }
.cmm-d-circle .cmm-card-body{ padding:10px 2px 0; align-items:center; width:100%; }
.cmm-d-circle .cmm-card-title{ font-size:14px; margin:0 0 2px; } .cmm-d-circle .cmm-card-desc{ display:none; }
.cmm-d-circle .cmm-card-bottom{ flex-direction:column; gap:7px; } .cmm-d-circle .cmm-add-btn{ border-radius:30px; height:30px; padding:0 14px; font-size:12px; }
@media (max-width:680px){ .cmm-d-circle .cmm-card-title{ font-size:12.5px; } .cmm-d-circle .cmm-price{ font-size:12px; } .cmm-d-circle .cmm-grid{ gap:20px 8px; } }
@media (min-width:1000px){ .cmm-d-circle .cmm-grid{ grid-template-columns:repeat(5,1fr); } }

/* --- بنتو: کاشی‌های نامتقارن --- */
.cmm-d-bento .cmm-grid{ grid-template-columns:1fr 1fr; gap:12px; grid-auto-flow:dense; }
.cmm-d-bento .cmm-card{ flex-direction:column-reverse; border:0; border-radius:24px; box-shadow:0 6px 20px rgba(20,20,30,.07); }
.cmm-d-bento .cmm-card-img{ flex:none; aspect-ratio:1; } .cmm-d-bento .cmm-card-img img,.cmm-d-bento .cmm-card-img .cmm-noimg{ position:absolute; inset:0; height:100%; }
.cmm-d-bento .cmm-card-body{ padding:12px 14px 14px; } .cmm-d-bento .cmm-card-desc{ display:none; }
.cmm-d-bento .cmm-card-bottom{ flex-wrap:wrap; gap:8px; }
.cmm-d-bento .cmm-card:nth-child(5n+1){ grid-column:span 2; } .cmm-d-bento .cmm-card:nth-child(5n+1) .cmm-card-img{ aspect-ratio:16/8; }
.cmm-d-bento .cmm-card:nth-child(5n+1) .cmm-card-title{ font-size:19px; font-family:var(--font-display); font-weight:400; }
.cmm-d-bento .cmm-card:nth-child(5n+1) .cmm-card-desc{ display:-webkit-box; -webkit-line-clamp:2; }
.cmm-d-bento .cmm-card:nth-child(5n+4){ background:rgba(var(--cmm-rgb),.1); }
@media (min-width:900px){ .cmm-d-bento .cmm-grid{ grid-template-columns:repeat(4,1fr); } }

/* --- زیگزاگ: عکس یک‌درمیان چپ و راست --- */
.cmm-d-zigzag .cmm-grid{ grid-template-columns:1fr; gap:14px; max-width:780px; margin:0 auto; }
.cmm-d-zigzag .cmm-card{ border:0; border-radius:26px; box-shadow:0 8px 24px rgba(20,20,30,.07); }
.cmm-d-zigzag .cmm-card-img{ flex:0 0 42%; min-height:150px; }
.cmm-d-zigzag .cmm-card:nth-child(even){ flex-direction:row-reverse; }
.cmm-d-zigzag .cmm-card-body{ padding:16px 18px; justify-content:center; } .cmm-d-zigzag .cmm-card-title{ font-size:17px; font-family:var(--font-display); font-weight:400; }
.cmm-d-zigzag .cmm-card-bottom{ gap:10px; flex-wrap:wrap; }

/* --- خط زمانی: نقطه و خط عمودی --- */
.cmm-d-timeline .cmm-grid{ grid-template-columns:1fr; gap:16px; padding-inline-start:32px; position:relative; max-width:760px; margin:0 auto; }
.cmm-d-timeline .cmm-grid::before{ content:""; position:absolute; inset-inline-start:9px; top:8px; bottom:8px; width:2px; background:linear-gradient(var(--cmm-orange),rgba(var(--cmm-rgb),.15)); border-radius:2px; }
.cmm-d-timeline .cmm-card{ overflow:visible; border-radius:18px; }
.cmm-d-timeline .cmm-card::before{ content:""; position:absolute; inset-inline-start:-31px; top:22px; width:12px; height:12px; border-radius:50%; background:var(--cmm-orange); box-shadow:0 0 0 5px rgba(var(--cmm-rgb),.2); }
.cmm-d-timeline .cmm-card-img{ margin:8px; border-radius:14px; overflow:hidden; flex-basis:100px; }
.cmm-d-timeline .cmm-card-img img,.cmm-d-timeline .cmm-card-img .cmm-noimg{ border-radius:14px; }

/* --- برچسب قیمت: قیمت روی عکس --- */
.cmm-d-pricetag .cmm-grid{ gap:14px; }
.cmm-d-pricetag .cmm-card{ flex-direction:column-reverse; border:0; box-shadow:0 8px 24px rgba(20,20,30,.08); }
.cmm-d-pricetag .cmm-card-img{ flex:none; aspect-ratio:4/3; } .cmm-d-pricetag .cmm-card-img img,.cmm-d-pricetag .cmm-card-img .cmm-noimg{ position:absolute; inset:0; height:100%; }
.cmm-d-pricetag .cmm-card-body{ padding:12px 14px 14px; }
.cmm-d-pricetag .cmm-card-bottom{ justify-content:stretch; } .cmm-d-pricetag .cmm-card-bottom > .cmm-add-btn,.cmm-d-pricetag .cmm-card-bottom > .cmm-qty-stepper{ width:100%; justify-content:space-between; }
.cmm-d-pricetag .cmm-price{ position:absolute; top:12px; inset-inline-start:12px; z-index:3; background:var(--cmm-orange); color:#fff; padding:7px 13px; border-radius:30px; font-size:13.5px; box-shadow:0 6px 14px rgba(0,0,0,.25); transform:rotate(-4deg); }
.cmm-d-pricetag .cmm-price-old{ color:rgba(255,255,255,.7); }
@media (max-width:680px){ .cmm-d-pricetag .cmm-grid{ grid-template-columns:1fr 1fr; gap:10px; } .cmm-d-pricetag .cmm-card-title{ font-size:13.5px; } .cmm-d-pricetag .cmm-card-desc{ display:none; } .cmm-d-pricetag .cmm-price{ font-size:12px; padding:5px 10px; top:8px; inset-inline-start:8px; } }

/* --- سیاه و سفید: مجله‌ی تک‌رنگ --- */
#cmm-app.cmm-d-mono{ --cmm-bg:#fff; --cmm-card:#fff; --cmm-text:#111; --cmm-gray:#777; --cmm-border:#111; --cmm-radius:0; --cmm-price:#111; }
.cmm-d-mono .cmm-cafe-name{ letter-spacing:2px; }
.cmm-d-mono .cmm-tabs{ background:#fff; border-bottom:2px solid #111; padding-bottom:0; gap:2px; }
.cmm-d-mono .cmm-tab{ border-radius:0; font-weight:800; padding:11px 16px; border-bottom:4px solid transparent; }
.cmm-d-mono .cmm-tab.active{ background:#111; color:#fff; box-shadow:none; }
.cmm-d-mono .cmm-section-title{ justify-content:flex-start; font-size:28px; font-weight:900; border-top:4px solid #111; padding-top:10px; } .cmm-d-mono .cmm-section-title::before,.cmm-d-mono .cmm-section-title::after{ display:none; }
.cmm-d-mono .cmm-card{ box-shadow:none; border:1px solid #111; background:#fff; }
.cmm-d-mono .cmm-card-img img{ filter:grayscale(1) contrast(1.05); transition:filter .3s; } .cmm-d-mono .cmm-card:hover .cmm-card-img img{ filter:none; }
.cmm-d-mono .cmm-card-title{ font-weight:900; } .cmm-d-mono .cmm-price{ font-weight:900; border-bottom:2px solid #111; }
.cmm-d-mono .cmm-add-btn{ background:#111; color:#fff; border-radius:0; } .cmm-d-mono .cmm-add-btn:hover{ background:#fff; color:#111; box-shadow:inset 0 0 0 2px #111; }
.cmm-d-mono .cmm-qty-stepper{ background:#111; border-radius:0; } .cmm-d-mono .cmm-qty-stepper button,.cmm-d-mono .cmm-qty-stepper span{ color:#fff; }

/* --- غروب: گرادیان گرم --- */
body.cmm-design-sunset{ background:#f6a98f; }
#cmm-app.cmm-d-sunset{ --cmm-text:#4a2511; --cmm-gray:#8d5a3b; --cmm-card:rgba(255,255,255,.8); --cmm-border:rgba(255,255,255,.75); --cmm-radius:22px; --cmm-price:#c2410c;
	background:linear-gradient(180deg,#ffd9a0 0%,#ffb88a 38%,#f48fa0 75%,#b68ad8 100%); background-attachment:fixed; min-height:100vh; }
.cmm-d-sunset .cmm-tabs{ background:transparent; backdrop-filter:blur(8px); -webkit-backdrop-filter:blur(8px); }
.cmm-d-sunset .cmm-tab{ background:rgba(255,255,255,.55); border-radius:30px; color:#5a2d12; } .cmm-d-sunset .cmm-tab.active{ background:#fff; color:var(--cmm-orange-dark); box-shadow:0 4px 12px rgba(120,50,20,.2); }
.cmm-d-sunset .cmm-card{ backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(10px); box-shadow:0 10px 28px rgba(120,50,20,.16); }
.cmm-d-sunset .cmm-section-title{ color:#fff; text-shadow:0 2px 10px rgba(120,50,20,.35); } .cmm-d-sunset .cmm-section-title::before,.cmm-d-sunset .cmm-section-title::after{ border-top-color:rgba(255,255,255,.7); }
.cmm-d-sunset .cmm-cafe-name{ color:#fff; text-shadow:0 2px 12px rgba(120,50,20,.4); }

/* --- اقیانوس: آبی عمیق و فیروزه‌ای --- */
body.cmm-design-ocean{ background:#06202e; }
#cmm-app.cmm-d-ocean{ --cmm-bg:#06202e; --cmm-card:#0c3347; --cmm-text:#e8f7ff; --cmm-gray:#8fb7c9; --cmm-border:#14506b; --cmm-radius:18px; --cmm-price:#5eead4;
	background:radial-gradient(120% 60% at 50% 0%,#0b4a63 0%,#06202e 60%); min-height:100vh; }
.cmm-d-ocean .cmm-tabs{ background:#06202e; } .cmm-d-ocean .cmm-tab{ color:#bfe6f5; border:1px solid #14506b; border-radius:30px; } .cmm-d-ocean .cmm-tab.active{ border-color:transparent; color:#fff; }
.cmm-d-ocean .cmm-card{ box-shadow:0 10px 26px rgba(0,0,0,.3); } .cmm-d-ocean .cmm-card-img .cmm-noimg{ background:#0a2a3b; color:#4d7e92; }
.cmm-d-ocean .cmm-section-title{ color:#5eead4; } .cmm-d-ocean .cmm-section-title::before,.cmm-d-ocean .cmm-section-title::after{ border-top-color:#14506b; }
.cmm-d-ocean .cmm-card-title{ color:#fff; } .cmm-d-ocean .cmm-qty-stepper{ background:rgba(94,234,212,.12); }

/* --- نعنایی: ارگانیک و سبز --- */
#cmm-app.cmm-d-mint{ --cmm-bg:#f1f8f3; --cmm-card:#fff; --cmm-text:#1f3a2c; --cmm-gray:#6b8a78; --cmm-border:#d6eadc; --cmm-radius:28px 8px 28px 8px; --cmm-price:#2e8b57; }
.cmm-d-mint .cmm-tab{ background:#e1f1e6; color:#2e6b49; border-radius:20px 6px 20px 6px; } .cmm-d-mint .cmm-tab.active{ background:#2e8b57; color:#fff; box-shadow:0 6px 14px rgba(46,139,87,.3); }
.cmm-d-mint .cmm-card{ border-inline-start:6px solid #7bc99a; box-shadow:0 6px 18px rgba(46,139,87,.09); }
.cmm-d-mint .cmm-card-img img,.cmm-d-mint .cmm-card-img .cmm-noimg{ border-radius:0 0 0 28px; } .cmm-d-mint .cmm-card-img{ overflow:hidden; }
.cmm-d-mint .cmm-add-btn{ background:#2e8b57; border-radius:14px 4px 14px 4px; } .cmm-d-mint .cmm-add-btn:hover{ background:#256f46; }
.cmm-d-mint .cmm-qty-stepper{ background:#e1f1e6; border-radius:14px 4px 14px 4px; } .cmm-d-mint .cmm-qty-stepper button{ color:#2e8b57; }
.cmm-d-mint .cmm-section-title{ color:#1f5c3a; } .cmm-d-mint .cmm-section-title::before,.cmm-d-mint .cmm-section-title::after{ border-top:3px solid #a9dcbd; border-style:solid none none; }

/* --- آب‌نباتی: کارت‌های رنگارنگ --- */
#cmm-app.cmm-d-candy{ --cmm-bg:#fffdf8; --cmm-radius:30px; }
.cmm-d-candy .cmm-grid{ gap:14px; }
.cmm-d-candy .cmm-card{ flex-direction:column-reverse; border:4px solid #fff; box-shadow:0 8px 22px rgba(20,20,30,.1); background:#ffe4ec; }
.cmm-d-candy .cmm-card:nth-child(4n+2){ background:#e0f1ff; } .cmm-d-candy .cmm-card:nth-child(4n+3){ background:#fff1c2; } .cmm-d-candy .cmm-card:nth-child(4n){ background:#dcf8df; }
.cmm-d-candy .cmm-card-img{ flex:none; aspect-ratio:1; margin:8px 8px 0; border-radius:22px; overflow:hidden; }
.cmm-d-candy .cmm-card-img img,.cmm-d-candy .cmm-card-img .cmm-noimg{ position:absolute; inset:0; height:100%; }
.cmm-d-candy .cmm-card-body{ padding:12px 14px 14px; text-align:center; } .cmm-d-candy .cmm-card-title{ font-size:16px; font-weight:900; } .cmm-d-candy .cmm-card-desc{ display:none; }
.cmm-d-candy .cmm-card-bottom{ flex-direction:column; gap:8px; } .cmm-d-candy .cmm-price{ background:#fff; padding:4px 14px; border-radius:20px; color:var(--cmm-orange-dark); }
.cmm-d-candy .cmm-add-btn,.cmm-d-candy .cmm-qty-stepper{ border-radius:20px; width:100%; justify-content:center; } .cmm-d-candy .cmm-qty-stepper{ background:#fff; }
.cmm-d-candy .cmm-tab{ background:#fff; border-radius:30px; box-shadow:0 2px 8px rgba(0,0,0,.06); } .cmm-d-candy .cmm-tab.active{ background:var(--cmm-orange); }
@media (max-width:680px){ .cmm-d-candy .cmm-grid{ grid-template-columns:1fr 1fr; gap:10px; } .cmm-d-candy .cmm-card-title{ font-size:13.5px; } }

/* --- ژاپندی: آرام، فضای خالی و رنگ‌های خاکی --- */
#cmm-app.cmm-d-japandi{ --cmm-bg:#f5f1ea; --cmm-card:#faf7f2; --cmm-text:#3d3a35; --cmm-gray:#8b857b; --cmm-border:#e4ddd0; --cmm-radius:4px; --cmm-price:#6b705c; }
.cmm-d-japandi .cmm-tabs{ background:var(--cmm-bg); gap:4px; } .cmm-d-japandi .cmm-tab{ border-radius:0; background:none; color:#7a7468; font-weight:500; border-bottom:1.5px solid transparent; }
.cmm-d-japandi .cmm-tab.active{ background:none; color:#3d3a35; box-shadow:none; border-bottom-color:#6b705c; }
.cmm-d-japandi .cmm-section-title{ font-weight:300; font-size:22px; letter-spacing:3px; } .cmm-d-japandi .cmm-section-title::before,.cmm-d-japandi .cmm-section-title::after{ border-top:1px solid #cfc7b6; border-style:solid none none; max-width:70px; }
.cmm-d-japandi .cmm-grid{ gap:18px 22px; }
.cmm-d-japandi .cmm-card{ box-shadow:none; border:1px solid var(--cmm-border); padding:10px; }
.cmm-d-japandi .cmm-card-img{ flex-basis:96px; order:-1; } .cmm-d-japandi .cmm-card-img img,.cmm-d-japandi .cmm-card-img .cmm-noimg{ border-radius:2px; filter:saturate(.8); }
.cmm-d-japandi .cmm-card-body{ padding:6px 14px; } .cmm-d-japandi .cmm-card-title{ font-weight:600; font-size:15px; } .cmm-d-japandi .cmm-price{ font-weight:500; }
.cmm-d-japandi .cmm-add-btn{ background:transparent; color:#6b705c; border:1px solid #6b705c; border-radius:2px; font-weight:500; } .cmm-d-japandi .cmm-add-btn:hover{ background:#6b705c; color:#fff; }
.cmm-d-japandi .cmm-qty-stepper{ background:transparent; border:1px solid #6b705c; border-radius:2px; } .cmm-d-japandi .cmm-qty-stepper button{ color:#6b705c; }
