/* ==========================================================================
   پنل مشتری — نادی‌کالا
   --------------------------------------------------------------------------
   دامنهٔ این فایل فقط داخل .cp-wrap است تا با استایل هیچ‌کدام از پنج قالب
   تداخل نکند. متغیر --cp-accent را site/customer/lib.plx از رنگ برندِ
   فروشگاه پر می‌کند، پس همین فایل روی همهٔ فروشگاه‌های همکار هم‌رنگ می‌شود.
   ========================================================================== */

/* پشتیبانِ رنگ برند.
   site/customer/lib.plx مقدار واقعی را از رنگِ همان فروشگاه (--theme-deafult
   قالب) حساب می‌کند و روی :root می‌گذارد. این‌ها فقط پشتیبان‌اند تا اگر
   صفحه‌ای آن تزریق را نداشت، دکمه‌ها بی‌رنگ (سفید روی سفید) نشوند.
   --theme-deafult نامش همین است؛ غلطِ املایی در قالب‌های اصلی است و عوض
   کردنش یعنی دست‌زدن به پنج قالب. */
:root{
	--cp-accent:var(--theme-deafult,#1f7a5a);
	--cp-accent-d:var(--theme-deafultborder,#186047);
	--cp-accent-fg:#fff;
	--cp-accent-soft:rgba(31,122,90,.10);
	--cp-accent-line:rgba(31,122,90,.30);
}

.cp-wrap{
	--cp-bg:#f4f6f8;
	--cp-card:#fff;
	--cp-line:#e5e9ee;
	--cp-text:#1b2330;
	--cp-dim:#6b7787;
	--cp-radius:14px;
	--cp-shadow:0 1px 2px rgba(20,30,45,.05), 0 6px 20px rgba(20,30,45,.05);

	background:var(--cp-bg);
	color:var(--cp-text);
	padding:22px 0 46px;
	font-size:14px;
	line-height:1.85;
	direction:rtl;
	text-align:right;
}
.cp-wrap *{box-sizing:border-box;}
.cp-wrap a{text-decoration:none;}
/* ⛔ color:inherit فقط برای لینک‌های معمولی — نه برای لینکی که دکمه است.
   پیش از این هر دو اعلان روی `.cp-wrap a` بودند و چون وزن آن (۰,۱,۱) از
   `.cp-btn-accent` (۰,۱,۰) بیشتر است، هر دکمه‌ای که تگ a بود رنگ متنش را از
   والد می‌گرفت: دکمه نارنجی با متن تیره (rgb(27,35,48)) به‌جای سفید.
   `.cp-btn-danger` و `.cp-btn-ghost` هم قربانی همین بودند.

   چرا دیر دیده شد: دکمه‌های <button> اصلا درگیر نبودند، و صفحه ورود مشتری
   تماما button است — پس آنجا همه‌چیز سفید و درست رندر می‌شد. فقط صفحه‌های
   واردشده که دکمه‌هایشان <a> است (افزودن آدرس، میان‌برهای همکار، دکمه خالیِ
   کارت‌ها) متن خاکستری داشتند. */
.cp-wrap a:not(.cp-btn){color:inherit;}
.cp-ico{flex-shrink:0;vertical-align:-.18em;}

/* ---------- چیدمان ---------- */
.cp-grid{display:flex;gap:20px;align-items:flex-start;}
.cp-side{width:250px;flex-shrink:0;position:sticky;top:14px;}
.cp-main{flex:1;min-width:0;}

/* ---------- کارت کاربر ---------- */
.cp-user{
	background:var(--cp-card);border:1px solid var(--cp-line);
	border-radius:var(--cp-radius);box-shadow:var(--cp-shadow);
	padding:20px 14px;text-align:center;margin-bottom:12px;
}
.cp-avatar{position:relative;display:inline-block;cursor:pointer;margin:0 0 10px;}
.cp-avatar img{
	width:92px;height:92px;border-radius:50%;object-fit:cover;
	border:3px solid #fff;box-shadow:0 0 0 2px var(--cp-accent);
	display:block;
}
.cp-avatar input{display:none;}
.cp-avatar-edit{
	position:absolute;inset-inline-start:2px;bottom:2px;
	width:28px;height:28px;border-radius:50%;
	background:var(--cp-accent);color:#fff;
	display:flex;align-items:center;justify-content:center;
	border:2px solid #fff;font-style:normal;
}
/* نام و نام خانوادگیِ درشت از این کارت برداشته شد؛ کاربر نامِ خودش را
   می‌داند و آن سطر فقط جا می‌گرفت. فقط آواتار و شمارهٔ حساب می‌ماند. */
.cp-user{padding:18px 14px 14px;}
.cp-user-mob{display:block;color:var(--cp-dim);font-size:12.5px;direction:ltr;font-weight:700;}

/* ---------- منوی کناری ---------- */
.cp-nav{
	background:var(--cp-card);border:1px solid var(--cp-line);
	border-radius:var(--cp-radius);box-shadow:var(--cp-shadow);
	overflow:hidden;
}
.cp-nav-item{
	display:flex;align-items:center;gap:11px;
	padding:13px 16px;border-bottom:1px solid var(--cp-line);
	color:var(--cp-text);transition:background .15s,color .15s;
	position:relative;
}
.cp-nav-item:last-child{border-bottom:0;}
.cp-nav-item:hover{background:#f7f9fb;color:var(--cp-accent);}
.cp-nav-item.cp-on{color:var(--cp-accent);background:var(--cp-accent-soft);font-weight:700;}
.cp-nav-item.cp-on::before{
	content:"";position:absolute;inset-inline-end:0;top:8px;bottom:8px;
	width:3px;border-radius:3px;background:var(--cp-accent);
}
.cp-nav-out{color:#b4232b;}
.cp-nav-out:hover{background:#fdf3f3;color:#b4232b;}
/* یک شماره می‌تواند هم حساب مشتری داشته باشد هم پنل همکار فروش؛ راهِ
   رفتن به آن یکی باید پیدا باشد وگرنه کاربر فکر می‌کند پنلش پاک شده. */
.cp-nav-hk{color:#8a5a00;background:#fffaf0;}
.cp-nav-hk:hover{background:#fff3dc;color:#8a5a00;}

/* ---------- چیپ‌های موبایل ---------- */
.cp-chips{display:none;gap:8px;overflow-x:auto;padding:2px 0 12px;-webkit-overflow-scrolling:touch;}
.cp-chips::-webkit-scrollbar{display:none;}
.cp-chip{
	display:inline-flex;align-items:center;gap:6px;white-space:nowrap;
	padding:8px 14px;border-radius:999px;font-size:13px;
	background:var(--cp-card);border:1px solid var(--cp-line);color:var(--cp-dim);
}
.cp-chip.cp-on{background:var(--cp-accent);border-color:var(--cp-accent);color:var(--cp-accent-fg);font-weight:700;}

/* ---------- کارت ---------- */
.cp-card{
	background:var(--cp-card);border:1px solid var(--cp-line);
	border-radius:var(--cp-radius);box-shadow:var(--cp-shadow);
	padding:18px;margin-bottom:14px;
}
.cp-card-head{
	display:flex;align-items:center;justify-content:space-between;gap:10px;
	margin:-4px 0 14px;
}
.cp-card-head h2{font-size:16px;font-weight:800;margin:0;display:flex;align-items:center;gap:8px;}
.cp-card-head a{font-size:12.5px;color:var(--cp-accent);font-weight:700;}

/* ---------- کاشی‌های آماری ---------- */
.cp-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:14px;}
.cp-stat{
	background:var(--cp-card);border:1px solid var(--cp-line);
	border-radius:var(--cp-radius);box-shadow:var(--cp-shadow);
	padding:16px;display:flex;align-items:center;gap:12px;
}
.cp-stat-ico{
	width:44px;height:44px;border-radius:12px;flex-shrink:0;
	display:flex;align-items:center;justify-content:center;
	/* رنگِ ثابت اول می‌آید تا مرورگرهای بدون color-mix هم پس‌زمینه داشته باشند */
	background:var(--cp-accent-soft);
	color:var(--cp-accent);
}
.cp-stat-t{font-size:12px;color:var(--cp-dim);display:block;line-height:1.5;}
.cp-stat-v{font-size:17px;font-weight:800;display:block;line-height:1.5;}
.cp-stat-v small{font-size:11px;font-weight:400;color:var(--cp-dim);}

/* ---------- بج وضعیت ---------- */
.cp-badge{
	display:inline-flex;align-items:center;gap:5px;
	padding:4px 10px;border-radius:999px;font-size:12px;font-weight:700;
	border:1px solid transparent;white-space:nowrap;
}
.cp-badge-ok{background:#e8f6ee;color:#1a7a45;border-color:#c6e8d5;}
.cp-badge-ship{background:#e8f1fd;color:#1856a8;border-color:#c8ddf8;}
.cp-badge-wait{background:#fdf3e3;color:#95610d;border-color:#f6e0b8;}
.cp-badge-danger{background:#fdecec;color:#b4232b;border-color:#f7cdcd;}
.cp-badge-muted{background:#f0f2f5;color:#6b7787;border-color:#e0e4ea;}

/* ---------- کارت سفارش ---------- */
.cp-order{
	border:1px solid var(--cp-line);border-radius:12px;
	padding:14px;margin-bottom:10px;background:#fff;
}
.cp-order:last-child{margin-bottom:0;}
.cp-order-top{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:8px;}
.cp-order-id{font-weight:800;font-size:13.5px;}
.cp-order-meta{display:flex;gap:16px;flex-wrap:wrap;color:var(--cp-dim);font-size:12.5px;}
.cp-order-meta b{color:var(--cp-text);font-weight:700;}

.cp-dim{color:var(--cp-dim);font-size:12.5px;}
.cp-ltr{direction:ltr;display:inline-block;unicode-bidi:embed;}

/* ---------- فیلترها ---------- */
.cp-filters{display:flex;gap:8px;overflow-x:auto;padding-bottom:12px;margin-bottom:4px;}
.cp-filter{
	padding:6px 14px;border-radius:999px;font-size:12.5px;white-space:nowrap;
	border:1px solid var(--cp-line);color:var(--cp-dim);background:#fff;
}
.cp-filter.cp-on{background:var(--cp-accent);border-color:var(--cp-accent);color:var(--cp-accent-fg);font-weight:700;}

/* ---------- کارت سفارش (فهرست) ---------- */
.cp-order-link{display:block;transition:border-color .15s,box-shadow .15s;}
.cp-order-link:hover{border-color:var(--cp-accent);box-shadow:0 4px 14px rgba(20,30,45,.07);}
.cp-order-id .cp-ico{color:var(--cp-dim);}
.cp-order-body{display:flex;align-items:center;gap:14px;}
.cp-order-body .cp-order-meta{flex:1;}
.cp-order-go{color:var(--cp-dim);flex-shrink:0;}
.cp-thumbs{display:flex;align-items:center;gap:-8px;flex-shrink:0;}
.cp-thumbs img{
	width:46px;height:46px;border-radius:9px;object-fit:cover;
	border:2px solid #fff;box-shadow:0 1px 4px rgba(20,30,45,.12);
	margin-inline-start:-12px;background:#f4f6f8;
}
.cp-thumbs img:first-child{margin-inline-start:0;}
.cp-more{
	font-size:11.5px;font-weight:700;color:var(--cp-dim);
	background:#eef1f5;border-radius:9px;padding:4px 7px;margin-inline-start:4px;
}

/* ---------- صفحه‌بندی ---------- */
.cp-pager{display:flex;gap:6px;justify-content:center;flex-wrap:wrap;margin-top:16px;}
.cp-page{
	min-width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;
	border:1px solid var(--cp-line);border-radius:9px;font-size:13px;background:#fff;
}
.cp-page.cp-on{background:var(--cp-accent);border-color:var(--cp-accent);color:var(--cp-accent-fg);font-weight:700;}

/* ---------- سربرگ جزئیات ---------- */
.cp-od-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:18px;}
.cp-od-head h2{font-size:17px;font-weight:800;margin:4px 0 2px;}
.cp-back{font-size:12.5px;color:var(--cp-accent);font-weight:700;display:inline-flex;align-items:center;gap:3px;}

/* ---------- تایم‌لاین ---------- */
.cp-tl{display:flex;align-items:flex-start;padding:6px 0 2px;}
.cp-tl-i{flex:1;text-align:center;position:relative;color:#b9c2cd;}
.cp-tl-i::before{
	content:"";position:absolute;top:15px;height:2px;background:#e5e9ee;
	inset-inline-start:50%;width:100%;
}
.cp-tl-i:last-child::before{display:none;}
.cp-tl-dot{
	width:32px;height:32px;border-radius:50%;background:#fff;
	border:2px solid #e5e9ee;color:#b9c2cd;
	display:inline-flex;align-items:center;justify-content:center;
	position:relative;z-index:1;
}
.cp-tl-t{display:block;font-size:11.5px;margin-top:6px;}
.cp-tl-done{color:var(--cp-accent);}
.cp-tl-done .cp-tl-dot{border-color:var(--cp-accent);color:var(--cp-accent);}
.cp-tl-done::before{background:var(--cp-accent);}
.cp-tl-now{color:var(--cp-accent);font-weight:800;}
.cp-tl-now .cp-tl-dot{background:var(--cp-accent);border-color:var(--cp-accent);color:var(--cp-accent-fg);}
.cp-tl-off{
	display:flex;align-items:center;gap:8px;background:#f4f6f8;
	border-radius:10px;padding:12px 14px;color:var(--cp-dim);font-size:13px;
}

/* ---------- قلم سفارش ---------- */
.cp-item{display:flex;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid var(--cp-line);}
.cp-item:last-child{border-bottom:0;padding-bottom:0;}
.cp-item>img{width:62px;height:62px;border-radius:10px;object-fit:cover;background:#f4f6f8;flex-shrink:0;}
.cp-item-b{flex:1;min-width:0;}
.cp-item-b b{font-size:13.5px;display:block;line-height:1.7;}
.cp-item-var{display:block;font-size:12px;color:var(--cp-dim);}
.cp-item-p{font-weight:800;font-size:13.5px;white-space:nowrap;}
.cp-item-p small{font-weight:400;color:var(--cp-dim);font-size:11px;}
.cp-dot{
	width:11px;height:11px;border-radius:50%;display:inline-block;
	vertical-align:-1px;margin-inline-end:4px;border:1px solid rgba(0,0,0,.12);
}

/* ---------- صورت‌حساب ---------- */
.cp-sum div{display:flex;justify-content:space-between;padding:7px 0;font-size:13.5px;}
.cp-sum span{color:var(--cp-dim);}
.cp-sum-off b{color:#1a7a45;}
.cp-sum-total{border-top:1px dashed var(--cp-line);margin-top:6px;padding-top:12px !important;font-size:15px !important;}
.cp-sum-total b{font-size:16px;font-weight:800;}
.cp-sum-pay .cp-ok{color:#1a7a45;}
.cp-sum-pay .cp-no{color:#b4232b;}

/* ---------- کلید/مقدار ---------- */
.cp-kv{display:grid;grid-template-columns:1fr 1fr;gap:10px 18px;}
.cp-kv-wide{grid-column:1/-1;}
.cp-kv div{display:flex;flex-direction:column;gap:1px;}
.cp-kv span{font-size:11.5px;color:var(--cp-dim);}
.cp-kv b{font-size:13.5px;font-weight:700;line-height:1.8;}

/* ---------- رهگیری پستی ---------- */
.cp-track{
	display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;
	margin-top:16px;padding:12px 14px;border-radius:12px;
	background:#f7f9fb;border:1px dashed var(--cp-line);
}
.cp-track-code{font-size:15px;font-weight:800;letter-spacing:.5px;}

/* ---------- کیف پول ---------- */
.cp-wallet{display:flex;gap:22px;align-items:stretch;}
.cp-wallet-bal{
	flex:0 0 240px;border-radius:12px;padding:20px;
	display:flex;flex-direction:column;justify-content:center;
	background:var(--cp-accent-soft);
	border:1px solid var(--cp-line);
}
.cp-wallet-bal b{font-size:26px;font-weight:800;color:var(--cp-accent);line-height:1.5;}
.cp-wallet-bal small{font-size:13px;font-weight:400;}
.cp-wallet-form{flex:1;min-width:0;}
.cp-amounts{display:flex;gap:7px;flex-wrap:wrap;margin:10px 0 14px;}
.cp-amount{
	padding:6px 13px;border-radius:999px;font-size:12.5px;cursor:pointer;
	border:1px solid var(--cp-line);background:#fff;color:var(--cp-dim);
	transition:border-color .15s,color .15s;
}
.cp-amount:hover{border-color:var(--cp-accent);color:var(--cp-accent);}
.cp-wallet-form .cp-btn{width:100%;}

/* ---------- تراکنش ---------- */
.cp-tx{display:flex;align-items:center;gap:12px;padding:13px 0;border-bottom:1px solid var(--cp-line);}
.cp-tx-link{display:block;}
.cp-tx-link:hover .cp-tx b{color:var(--cp-accent);}
.cp-tx-link:last-child .cp-tx,.cp-tx:last-child{border-bottom:0;}
.cp-tx-ico{
	width:38px;height:38px;border-radius:11px;flex-shrink:0;
	display:flex;align-items:center;justify-content:center;
}
.cp-tx-in{background:#e8f6ee;color:#1a7a45;}
.cp-tx-out{background:#f0f2f5;color:#5c6775;}
.cp-tx-b{flex:1;min-width:0;}
.cp-tx-b b{display:block;font-size:13.5px;line-height:1.7;}
.cp-tx-b span{display:block;font-size:11.5px;color:var(--cp-dim);}
.cp-tx-p{font-weight:800;font-size:14px;white-space:nowrap;}
.cp-tx-p small{font-weight:400;font-size:11px;color:var(--cp-dim);}
.cp-tx-p.cp-in{color:#1a7a45;}
.cp-tx-p.cp-out{color:#1b2330;}
.cp-tx-note{margin:14px 0 0;text-align:center;}

/* ---------- نوار کارها ---------- */
.cp-actions{display:flex;gap:10px;flex-wrap:wrap;}
.cp-actions .cp-btn{flex:1;min-width:150px;}

/* ---------- دکمه ---------- */
.cp-btn{
	display:inline-flex;align-items:center;justify-content:center;gap:7px;
	padding:9px 18px;border-radius:10px;font-size:13px;font-weight:700;
	border:1px solid var(--cp-line);background:#fff;color:var(--cp-text);
	cursor:pointer;transition:filter .15s,background .15s;
}
.cp-btn:hover{background:#f7f9fb;}
.cp-btn-accent{background:var(--cp-accent);border-color:var(--cp-accent);color:var(--cp-accent-fg);}
.cp-btn-accent:hover{background:var(--cp-accent-d);border-color:var(--cp-accent-d);color:var(--cp-accent-fg);}
.cp-btn-sm{padding:6px 12px;font-size:12px;border-radius:8px;}
.cp-btn-danger{color:#b4232b;border-color:#f0cfcf;}
.cp-btn-danger:hover{background:#fdf3f3;}

/* ---------- هشدار ---------- */
.cp-alert{
	display:flex;align-items:flex-start;gap:10px;
	border-radius:var(--cp-radius);padding:14px 16px;margin-bottom:14px;
	border:1px solid;font-size:13.5px;
}
.cp-alert-danger{background:#fdecec;border-color:#f7cdcd;color:#8e1c23;}
.cp-alert-ok{background:#e8f6ee;border-color:#c6e8d5;color:#146138;}
.cp-alert .cp-btn{margin-inline-start:auto;flex-shrink:0;}

/* ---------- حالت خالی ---------- */
.cp-empty{
	text-align:center;padding:44px 20px;color:var(--cp-dim);
	display:flex;flex-direction:column;align-items:center;gap:8px;
}
.cp-empty .cp-ico{color:#c3ccd6;}
.cp-empty b{font-size:15px;color:var(--cp-text);}
.cp-empty span{font-size:13px;max-width:340px;}
.cp-empty .cp-btn{margin-top:8px;}

/* ---------- فرم ---------- */
.cp-main .form-control{
	border:1px solid var(--cp-line);border-radius:10px;
	padding:9px 12px;height:auto;font-size:13.5px;background:#fff;
	width:100%;color:var(--cp-text);
}
.cp-main .form-control:focus{
	border-color:var(--cp-accent);outline:none;
	box-shadow:0 0 0 3px var(--cp-accent-soft);
}
.cp-main label{font-size:12.5px;color:var(--cp-dim);margin-bottom:5px;display:block;font-weight:700;}
.cp-main h3{font-size:16px;font-weight:800;margin:0 0 14px;}

/* ---------- جدول‌های قدیمی که هنوز بازنویسی نشده‌اند ---------- */
.cp-main table.table{font-size:13px;margin-bottom:0;}
.cp-main table.table th{
	background:#f7f9fb;border-bottom:1px solid var(--cp-line);
	font-weight:700;font-size:12.5px;color:var(--cp-dim);white-space:nowrap;
}
.cp-main table.table td,.cp-main table.table th{padding:11px 10px;vertical-align:middle;border-top:0;}
.cp-main table.table tbody tr{border-bottom:1px solid var(--cp-line);}

/* ---------- دسترسی سریع ---------- */
.cp-quick{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;}
.cp-quick-i{
	border:1px solid var(--cp-line);border-radius:12px;padding:14px 12px;
	display:flex;flex-direction:column;gap:2px;text-align:center;align-items:center;
	transition:border-color .15s,background .15s;
}
.cp-quick-i:hover{border-color:var(--cp-accent);background:var(--cp-accent-soft);}
.cp-quick-i .cp-ico{color:var(--cp-accent);margin-bottom:4px;}
.cp-quick-i b{font-size:13px;}
.cp-quick-i span{font-size:11.5px;color:var(--cp-dim);}

/* ---------- صفحهٔ همکار ---------- */
.cp-hk{max-width:760px;margin:0 auto;}
.cp-hk-head{display:flex;gap:14px;align-items:flex-start;}
.cp-hk-head .cp-ico{color:var(--cp-accent);flex-shrink:0;margin-top:2px;}
.cp-hk-head b{display:block;font-size:16px;font-weight:800;margin-bottom:4px;}
.cp-hk-head span{font-size:13.5px;color:var(--cp-dim);line-height:1.9;}
.cp-hk-cta{width:100%;margin-top:16px;}

/* ---------- شبکهٔ فرم ---------- */
.cp-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 18px;margin-bottom:16px;}
.cp-form-wide{grid-column:1/-1;}
.cp-form-grid small{display:block;margin-top:4px;font-size:11.5px;line-height:1.7;}
.cp-modal-body{background:transparent;padding:18px;}

/* ---------- آدرس‌ها ---------- */
.cp-addr-add{margin-bottom:14px;}
.cp-addr-list{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.cp-addr{border:1px solid var(--cp-line);border-radius:12px;padding:14px;background:#fff;}
.cp-addr-def{border-color:var(--cp-accent);box-shadow:0 0 0 1px var(--cp-accent) inset;}
.cp-addr-top{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px;}
.cp-addr-top b{font-size:13.5px;display:inline-flex;align-items:center;gap:5px;}
.cp-addr-top .cp-ico{color:var(--cp-accent);}
.cp-addr-b span{display:block;font-size:12px;color:var(--cp-dim);}
.cp-addr-b p{margin:4px 0;font-size:13px;line-height:1.9;}
.cp-addr-a{display:flex;gap:7px;flex-wrap:wrap;margin-top:12px;}
.cp-addr-a .cp-btn{flex:1;min-width:auto;}

/* ---------- ایمیل و تولد ---------- */
.cp-email-row{display:flex;gap:9px;align-items:center;}
.cp-email-row .form-control{flex:1;min-width:0;}
.cp-email-row .cp-btn,.cp-email-row .cp-badge{flex-shrink:0;}
.cp-birth{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;}

/* ---------- علاقه‌مندی‌ها ---------- */
.cp-wish{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.cp-wish-i{
	display:flex;gap:12px;align-items:center;
	border:1px solid var(--cp-line);border-radius:12px;padding:12px;background:#fff;
}
.cp-wish-gone{opacity:.75;justify-content:space-between;}
.cp-wish-img{flex-shrink:0;}
.cp-wish-img img{width:70px;height:70px;border-radius:10px;object-fit:cover;background:#f4f6f8;}
.cp-wish-b{flex:1;min-width:0;}
.cp-wish-b b{font-size:13px;display:block;line-height:1.7;}
.cp-wish-p{display:flex;align-items:center;gap:7px;margin:3px 0;flex-wrap:wrap;}
.cp-wish-p b{font-size:14px;font-weight:800;}
.cp-wish-old{font-size:11.5px;color:var(--cp-dim);text-decoration:line-through;}
.cp-wish-off{
	font-size:11px;font-weight:800;color:#fff;background:#d33;
	border-radius:6px;padding:1px 6px;
}
.cp-wish-a{display:flex;flex-direction:column;gap:6px;flex-shrink:0;}

/* ---------- اطلاع‌رسانی‌ها ---------- */
.cp-noti-a{display:flex;flex-direction:column;gap:6px;align-items:flex-end;flex-shrink:0;}

/* ---------- دیدگاه‌ها ---------- */
.cp-rev{display:flex;gap:12px;padding:14px 0;border-bottom:1px solid var(--cp-line);}
.cp-rev:last-child{border-bottom:0;}
.cp-rev>img{width:56px;height:56px;border-radius:10px;object-fit:cover;background:#f4f6f8;flex-shrink:0;}
.cp-rev-b{flex:1;min-width:0;}
.cp-rev-top{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;}
.cp-rev-top b{font-size:13.5px;}
.cp-rev-b p{margin:6px 0 4px;font-size:13px;line-height:1.95;color:#333c49;}
.cp-stars{display:inline-flex;gap:1px;font-size:14px;line-height:1;}
.cp-stars i{font-style:normal;color:#d8dee6;}
.cp-stars i.on{color:#f2b01e;}

/* ==========================================================================
   ورود / ثبت‌نام
   ========================================================================== */
.cp-auth-wrap{padding:34px 0 60px;}
.cp-auth{
	max-width:430px;margin:0 auto;background:var(--cp-card);
	border:1px solid var(--cp-line);border-radius:18px;
	box-shadow:0 2px 6px rgba(20,30,45,.05),0 18px 44px rgba(20,30,45,.07);
	padding:26px 24px 24px;
}
.cp-auth-tabs{display:flex;background:#f0f3f6;border-radius:12px;padding:4px;margin-bottom:22px;}
.cp-auth-tab{
	flex:1;padding:10px;border:0;background:transparent;border-radius:9px;
	font-size:13.5px;font-weight:700;color:var(--cp-dim);cursor:pointer;
	font-family:inherit;transition:background .15s,color .15s;
}
.cp-auth-tab:hover{color:var(--cp-accent);}
/* تبِ انتخاب‌شده رنگِ فروشگاه می‌گیرد و متنش سفید می‌شود */
.cp-auth-tab.cp-on{
	background:var(--cp-accent);color:var(--cp-accent-fg);
	box-shadow:0 2px 8px rgba(20,30,45,.16);
}
.cp-auth-tab.cp-on:hover{color:var(--cp-accent-fg);}
.cp-auth-form{display:none;}
.cp-auth-form.cp-on{display:block;}
.cp-auth-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:2px 0 16px;}
.cp-auth-row a{font-size:12.5px;color:var(--cp-accent);font-weight:700;}
.cp-btn-lg{width:100%;padding:12px;font-size:14px;border-radius:12px;}
.cp-btn-ghost{width:100%;background:transparent;border-color:transparent;color:var(--cp-dim);margin-top:8px;}
.cp-btn-ghost:hover{background:#f4f6f8;}

/* ---------- فیلد و خطای زیرِ آن ---------- */
.cp-field{margin-bottom:14px;}
.cp-field label{font-size:12.5px;color:var(--cp-dim);font-weight:700;margin-bottom:5px;display:block;}
.cp-err{display:none;font-size:12px;color:#c62b35;margin-top:5px;line-height:1.7;}
.cp-err.cp-on{display:block;}
.cp-err.cp-ok-msg{color:#1a7a45;}
.form-control.cp-bad{border-color:#e08a8a;}
.form-control.cp-bad:focus{box-shadow:0 0 0 3px rgba(198,43,53,.12);}

/* ---------- رمز با چشم ---------- */
.cp-pass{position:relative;}
.cp-pass .form-control{padding-inline-start:42px;}
.cp-eye{
	position:absolute;inset-inline-start:6px;top:50%;transform:translateY(-50%);
	width:32px;height:32px;border:0;background:transparent;color:#9aa5b1;
	display:flex;align-items:center;justify-content:center;cursor:pointer;border-radius:8px;
}
.cp-eye:hover{background:#f0f3f6;color:var(--cp-text);}
.cp-eye.cp-on{color:var(--cp-accent);}

/* ---------- چک‌باکس ---------- */
.cp-check{display:flex;align-items:center;gap:8px;font-size:13px;cursor:pointer;margin-bottom:14px;font-weight:400;color:var(--cp-text);}
.cp-check input{width:17px;height:17px;accent-color:var(--cp-accent);flex-shrink:0;cursor:pointer;margin:0;}
.cp-check a{color:var(--cp-accent);font-weight:700;}
.cp-check-inline{margin-bottom:0;background:#f7f9fb;border:1px solid var(--cp-line);border-radius:10px;padding:11px 13px;}

/* ==========================================================================
   آواتار SVG
   ========================================================================== */
.cp-avatar-svg{display:inline-block;line-height:0;}
.cp-avatar-svg .cp-av-svg{display:block;width:100%;height:100%;}
.cp-avatar-lg{width:92px;height:92px;margin-bottom:10px;}
.cp-avatar-lg .cp-av-svg{border-radius:50%;box-shadow:0 4px 14px rgba(20,30,45,.14);}

/* ==========================================================================
   تب‌های سفارش
   ========================================================================== */
.cp-tabs{display:flex;gap:8px;overflow-x:auto;padding:2px 2px 14px;-webkit-overflow-scrolling:touch;}
.cp-tabs::-webkit-scrollbar{display:none;}
.cp-tab{
	flex:1;min-width:112px;display:flex;align-items:center;justify-content:center;gap:6px;
	padding:11px 10px;border:1px solid var(--cp-line);border-radius:12px;background:#fff;
	font-size:13px;color:var(--cp-dim);white-space:nowrap;transition:all .15s;
}
.cp-tab .cp-ico{opacity:.75;}
.cp-tab b{
	font-size:11.5px;font-weight:800;background:#eef1f5;color:var(--cp-dim);
	border-radius:999px;padding:1px 7px;min-width:22px;text-align:center;
}
.cp-tab:hover{border-color:var(--cp-accent);color:var(--cp-accent);}
.cp-tab.cp-on{background:var(--cp-accent);border-color:var(--cp-accent);color:var(--cp-accent-fg);font-weight:700;}
.cp-tab.cp-on .cp-ico{opacity:1;}
.cp-tab.cp-on b{background:rgba(255,255,255,.26);color:var(--cp-accent-fg);}

.cp-order-badges{display:flex;gap:6px;flex-wrap:wrap;}
.cp-order-desc{font-size:12.5px;color:var(--cp-dim);margin:0 0 10px;line-height:1.85;}

/* ==========================================================================
   کاشی‌های آماری رنگی
   ========================================================================== */
.cp-stat-ico svg{width:100%;height:100%;display:block;}
.cp-ico-wallet,.cp-ico-bag,.cp-ico-heart,.cp-ico-ok,.cp-ico-store,.cp-ico-bell{
	background:transparent !important;padding:0;
}
.cp-stats-4{grid-template-columns:repeat(4,1fr);}

/* ==========================================================================
   بخش‌های مشخصات فردی
   ========================================================================== */
.cp-sec-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:-2px 0 14px;}
.cp-sec-head h2{font-size:15.5px;font-weight:800;margin:0;display:flex;align-items:center;gap:8px;}
.cp-sec-head .cp-ico{color:var(--cp-accent);}
/* روی دسکتاپ فرمِ یک‌فیلدی نباید تا انتهای کارت کش بیاید؛ همین باعث
   می‌شد بخش «شغل» و «ایمیل» یک اینپوتِ ۹۰۰ پیکسلی داشته باشند. */
.cp-sec-form{display:none;max-width:720px;}
.cp-sec.cp-editing .cp-sec-view{display:none;}
.cp-sec.cp-editing .cp-sec-form{display:block;}
.cp-sec.cp-editing{border-color:var(--cp-accent);box-shadow:0 0 0 1px var(--cp-accent) inset;}
.cp-sec-actions{display:flex;gap:9px;margin-top:6px;}
.cp-sec-actions .cp-btn{flex:0 0 auto;}
.cp-sec-actions .cp-btn-ghost{width:auto;margin-top:0;}
.cp-empty-v{color:#a8b2bd;font-weight:400;}
.cp-hint{
	display:flex;align-items:flex-start;gap:7px;margin:12px 0 0;
	font-size:12px;color:var(--cp-dim);line-height:1.85;
}
.cp-hint .cp-ico{flex-shrink:0;margin-top:3px;}
.cp-sec-off{opacity:.85;background:#fafbfc;}
.cp-legal-note{margin:0 0 14px;line-height:2;}
.cp-sec-off .cp-btn[disabled]{opacity:.5;cursor:not-allowed;}

/* ---------- کد یک‌بارمصرف ---------- */
.cp-otp-box{margin-top:14px;padding-top:14px;border-top:1px dashed var(--cp-line);}
.cp-otp{display:flex;gap:9px;justify-content:center;margin:10px 0;}
.cp-otp-d{
	width:52px;height:56px;text-align:center;font-size:22px;font-weight:800;
	border:1px solid var(--cp-line);border-radius:12px;background:#fff;color:var(--cp-text);
}
.cp-otp-d:focus{border-color:var(--cp-accent);outline:none;box-shadow:0 0 0 3px var(--cp-accent-soft);}
.cp-otp-busy{opacity:.55;pointer-events:none;}
/* مهلتِ ماندن روی صفحه بعد از تأیید کد.
   عمداً نه قرمز است نه هشدار — یک اطلاعِ خنثا، وگرنه کاربر وسط ثبت‌نام
   دستپاچه می‌شود. زمان فقط به دقیقه نوشته می‌شود، نه ثانیه. */
.cp-otp-ok{
	display:block;margin:10px 0 0;padding:10px 12px;border-radius:10px;
	background:#f6f8fa;border:1px solid var(--cp-line);
	font-size:12.5px;color:var(--cp-dim);line-height:1.95;
}

/* ---------- صفحهٔ همکار ---------- */
.cp-hk-hero{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;}
.cp-hk-id{display:flex;align-items:center;gap:14px;}
.cp-hk-id .cp-avatar-lg{width:66px;height:66px;margin:0;}
.cp-hk-id b{display:block;font-size:16px;font-weight:800;}
.cp-hk-id .cp-dim{display:block;font-size:12px;}
.cp-hk-hero .cp-btn-lg{width:auto;}
.cp-hk-stars{font-size:15px;margin-top:2px;}
.cp-note{
	display:flex;gap:10px;align-items:flex-start;background:#fff8e8;
	border:1px solid #f3e2bc;color:#7a5a12;border-radius:var(--cp-radius);
	padding:13px 15px;margin-bottom:14px;font-size:13px;line-height:1.9;
}
.cp-note .cp-ico{flex-shrink:0;margin-top:3px;}
.cp-hk-foot{text-align:center;margin:6px 0 0;}

/* ---------- دکمهٔ فقط‌آیکون ---------- */
.cp-btn-icon{width:40px;padding:0;height:40px;flex:0 0 40px !important;}
.cp-wish-cart{flex:1;}
.cp-wish-a{flex-direction:row !important;align-items:stretch;}

/* ---------- دیالوگ تأیید ---------- */
.cp-modal{
	position:fixed;inset:0;z-index:99999;
	background:rgba(15,22,32,.5);
	display:flex;align-items:center;justify-content:center;padding:18px;
	direction:rtl;
}
.cp-modal-box{
	background:#fff;border-radius:16px;padding:22px;
	width:100%;max-width:400px;text-align:center;
	box-shadow:0 20px 60px rgba(10,18,30,.28);
	animation:cpPop .16s ease-out;
}
@keyframes cpPop{from{transform:scale(.94);opacity:0;}to{transform:scale(1);opacity:1;}}
.cp-modal-t{display:block;font-size:16px;font-weight:800;margin-bottom:6px;color:#1b2330;}
.cp-modal-d{font-size:13.5px;color:#6b7787;margin:0 0 18px;line-height:1.8;}
.cp-modal-a{display:flex;gap:10px;}
.cp-modal-a .cp-btn{flex:1;}

/* ---------- اسپینر ---------- */
.cp-spin{
	display:inline-block;width:16px;height:16px;border-radius:50%;
	border:2px solid #d8dee6;border-top-color:var(--cp-accent,#1f7a5a);
	animation:cpSpin .7s linear infinite;vertical-align:-3px;
}
@keyframes cpSpin{to{transform:rotate(360deg);}}

/* ==========================================================================
   رنگِ هر بخش
   --------------------------------------------------------------------------
   وقتی کاربر روی کاشیِ «کیف پول» می‌زند، انتظار دارد داخل همان صفحه هم
   همان آبی را ببیند نه رنگِ عمومیِ فروشگاه را. این سه بخش آیکونِ رنگیِ
   مخصوص خودشان را دارند (nk_cp_svg_wallet/bag/heart) و رنگشان همان است.
   دامنه فقط .cp-main است تا منوی کناری رنگِ فروشگاه را نگه دارد.
   ========================================================================== */
.cp-p-upprice .cp-main{
	--cp-accent:#3d7bfd; --cp-accent-d:#2b5fd9; --cp-accent-fg:#fff;
	--cp-accent-soft:rgba(61,123,253,.10); --cp-accent-line:rgba(61,123,253,.30);
}
.cp-p-orders .cp-main{
	--cp-accent:#12a594; --cp-accent-d:#0e7f73; --cp-accent-fg:#fff;
	--cp-accent-soft:rgba(18,165,148,.10); --cp-accent-line:rgba(18,165,148,.30);
}
.cp-p-wishlist .cp-main{
	--cp-accent:#f0416a; --cp-accent-d:#d42f56; --cp-accent-fg:#fff;
	--cp-accent-soft:rgba(240,65,106,.10); --cp-accent-line:rgba(240,65,106,.30);
}
/* بقیهٔ بخش‌ها (آدرس، مشخصات، دیدگاه‌ها) رنگِ خودِ فروشگاه را نگه می‌دارند؛
   کاشیِ رنگی ندارند و رنگِ دلبخواهی دادن به آن‌ها فقط پنل را شلوغ می‌کرد. */

/* ---------- ابزار ---------- */
.cp-hide{display:none !important;}
.cp-mono{font-variant-numeric:tabular-nums;letter-spacing:.6px;}
.cp-field-half{max-width:380px;}
.cp-birth{max-width:460px;}

/* ==========================================================================
   فرم آدرس
   ========================================================================== */
.cp-af{max-width:720px;}
.cp-af-sec{
	border:1px solid var(--cp-line);border-radius:12px;
	padding:14px 16px;margin-bottom:12px;background:#fcfdfe;
}
.cp-af-t{
	display:flex;align-items:center;gap:8px;
	font-size:13.5px;font-weight:800;margin-bottom:12px;color:var(--cp-text);
}
.cp-af-n{
	width:22px;height:22px;border-radius:50%;flex-shrink:0;
	display:inline-flex;align-items:center;justify-content:center;
	background:var(--cp-accent);color:var(--cp-accent-fg);
	font-size:11.5px;font-weight:800;
}
.cp-af .cp-form-grid{margin-bottom:0;}
.cp-af-3{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr 1.4fr;gap:14px 18px;}
.cp-area{min-height:64px;resize:vertical;line-height:1.9;}

/* ---------- انتخابِ تکه‌ای (عنوان آدرس / گیرنده) ---------- */
.cp-picks{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;}
.cp-picks-2{grid-template-columns:repeat(2,1fr);}
.cp-picks-3{grid-template-columns:repeat(3,1fr);}
.cp-pick{margin:0;cursor:pointer;font-weight:400;}
.cp-pick input{position:absolute;opacity:0;width:0;height:0;}
.cp-pick span{
	display:flex;align-items:center;justify-content:center;gap:7px;
	padding:11px 8px;border:1px solid var(--cp-line);border-radius:10px;
	background:#fff;font-size:13px;color:var(--cp-dim);
	transition:border-color .15s,color .15s,background .15s;
}
.cp-pick span .cp-ico{opacity:.8;}
.cp-pick:hover span{border-color:var(--cp-accent-line);color:var(--cp-accent);}
.cp-pick input:checked + span{
	border-color:var(--cp-accent);background:var(--cp-accent-soft);
	color:var(--cp-accent);font-weight:700;
}
.cp-pick input:disabled + span{opacity:.45;cursor:not-allowed;}
.cp-pick input:focus-visible + span{box-shadow:0 0 0 3px var(--cp-accent-soft);}

.cp-af-me{
	display:flex;align-items:center;gap:7px;flex-wrap:wrap;
	margin:12px 0 0;padding:10px 12px;border-radius:10px;
	background:var(--cp-accent-soft);font-size:12.5px;color:var(--cp-text);
}
.cp-af-me .cp-ico{color:var(--cp-accent);}
.cp-af-me b{font-weight:700;}
.cp-af-warn{background:#fff8e8;color:#7a5a12;}
.cp-af-warn .cp-ico{color:#c08a12;}
.cp-af-warn a{color:#7a5a12;text-decoration:underline;font-weight:700;}
.cp-af-other{margin-top:14px;}
.cp-af-def{background:#fff;}
.cp-af-def .cp-check-inline{background:#fff;}
.cp-af-def small{display:block;margin-top:7px;}

/* ==========================================================================
   کارت آدرس
   ========================================================================== */
/* نوارِ نقشه روی کارت — فقط برای نشانی‌هایی که مختصات دارند.
   ارتفاع ثابت و object-fit:cover تا کارت‌های با و بدون نقشه هم‌تراز نمانند
   و تصویرِ ۵۶۰×۲۰۰ در عرض‌های باریک کش نیاید. */
.cp-addr-map{
	margin:0 0 10px;border-radius:10px;overflow:hidden;
	border:1px solid var(--cp-line);background:var(--cp-soft);
}
.cp-addr-map img{display:block;width:100%;height:104px;object-fit:cover;}

.cp-addr-line{margin-bottom:10px;}
.cp-addr-k{
	display:flex;align-items:center;gap:5px;
	font-size:11.5px;color:var(--cp-dim);margin-bottom:2px;
}
.cp-addr-k .cp-ico{color:var(--cp-dim);}
.cp-addr-b p{margin:0;font-size:13px;line-height:1.95;}
.cp-addr-mini{
	display:flex;flex-wrap:wrap;gap:6px 8px;
	border-top:1px dashed var(--cp-line);padding-top:10px;
}
.cp-addr-mini span{
	display:inline-flex;align-items:center;gap:5px;
	font-size:12px;color:var(--cp-text);
	background:#f6f8fa;border-radius:8px;padding:4px 9px;
}
.cp-addr-mini i{font-style:normal;color:var(--cp-dim);font-size:11px;}
.cp-addr-me{
	font-size:10.5px;font-weight:800;color:var(--cp-accent);
	background:var(--cp-accent-soft);border-radius:6px;padding:1px 6px;
}
.cp-addr-a .cp-btn-icon{flex:0 0 36px !important;height:36px;width:36px;}

/* ==========================================================================
   شمارهٔ کارت و شبا
   ========================================================================== */
.cp-bankin{position:relative;display:flex;align-items:center;}
.cp-bankin .form-control{flex:1;min-width:0;padding-inline-end:44px;}
.cp-bankin-ir .form-control{padding-inline-start:48px;}
.cp-ir{
	position:absolute;inset-inline-start:1px;top:1px;bottom:1px;
	width:44px;display:flex;align-items:center;justify-content:center;
	background:#f0f3f6;border-radius:9px 0 0 9px;
	font-weight:800;font-size:13px;color:var(--cp-dim);
	pointer-events:none;letter-spacing:.5px;
}
html[dir="rtl"] .cp-ir,.cp-wrap .cp-ir{border-radius:0 9px 9px 0;}
.cp-bank-out{
	position:absolute;inset-inline-end:8px;top:50%;transform:translateY(-50%);
	display:none;pointer-events:none;
}
.cp-bank-out.cp-on{display:block;}
.nk-bank-chip{
	display:inline-flex;align-items:center;gap:6px;
	background:#fff;border:1px solid var(--cp-line);border-radius:999px;
	padding:2px 9px 2px 3px;font-size:11.5px;white-space:nowrap;
	box-shadow:0 1px 3px rgba(20,30,45,.08);
	border-color:color-mix(in srgb,var(--nkb,#999) 35%,#e5e9ee);
}
.nk-bank-chip b{font-weight:700;color:var(--cp-text);}
.nk-bank-logo{border-radius:50%;background:#fff;display:block;flex-shrink:0;}
.cp-kv .nk-bank-chip{margin-top:4px;}
.cp-bad-bank .nk-bank-chip{opacity:.5;}

/* ==========================================================================
   بازیابی رمز — سه گام
   ========================================================================== */
.cp-rc-resend{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:12px 0 0;flex-wrap:wrap;}
.cp-rc-resend a{color:var(--cp-accent);font-weight:700;}
.cp-rc-resend span{color:var(--cp-dim);}
.recoverform .cp-otp,.registerform .cp-otp{margin:14px 0 4px;}
.rcPick .cp-picks{margin-bottom:6px;}

/* شمارهٔ تأییدشده در بالای گام دوم ثبت‌نام */
.cp-mobbar{
	display:flex;align-items:center;justify-content:space-between;gap:10px;
	background:var(--cp-accent-soft);border-radius:10px;
	padding:10px 13px;margin-bottom:18px;font-size:13px;
}
.cp-mobbar span{display:inline-flex;align-items:center;gap:6px;}
.cp-mobbar .cp-ico{color:var(--cp-accent);}
.cp-mobbar b{font-weight:800;}
.cp-mobbar a{color:var(--cp-accent);font-weight:700;font-size:12.5px;white-space:nowrap;}

/* ==========================================================================
   انتخاب نقش — «یک شماره، دو حساب»
   ========================================================================== */
.cp-role{max-width:620px;margin:0 auto;}
.cp-role-intro{margin-bottom:18px;}
.cp-role-intro b{display:block;font-size:17px;font-weight:800;margin-bottom:8px;}
.cp-role-intro p{margin:0;font-size:13px;color:var(--cp-dim);line-height:2.1;}
.cp-role-intro p b{display:inline;font-size:inherit;}

.cp-role-grid{display:grid;gap:12px;}
.cp-role-card{
	position:relative;display:grid;gap:4px;
	grid-template-columns:52px 1fr auto;grid-template-rows:auto auto auto;
	align-items:center;
	border:1px solid var(--cp-line);border-radius:14px;padding:16px;background:#fff;
	transition:border-color .15s,box-shadow .15s,transform .1s;
}
.cp-role-card:hover{border-color:var(--cp-accent);box-shadow:0 6px 20px rgba(20,30,45,.09);}
.cp-role-card:active{transform:translateY(1px);}
.cp-role-ico{grid-row:1/4;grid-column:1;width:46px;height:46px;flex-shrink:0;}
.cp-role-ico svg{width:100%;height:100%;display:block;}
.cp-role-card b{grid-column:2;font-size:15px;font-weight:800;}
.cp-role-d{grid-column:2;font-size:12px;color:var(--cp-dim);line-height:1.9;}
.cp-role-card .cp-badge{grid-column:2;justify-self:start;margin-top:5px;}
.cp-role-go{grid-column:3;grid-row:1/4;color:var(--cp-dim);}

/* یادآوریِ قفل‌بودنِ نقش */
.cp-role-lock{
	display:flex;align-items:flex-start;gap:9px;
	margin:16px 0 0;padding:13px 15px;border-radius:12px;
	background:#f6f8fa;border:1px solid var(--cp-line);
	font-size:12.5px;color:var(--cp-dim);line-height:2;
}
.cp-role-lock .cp-ico{flex-shrink:0;margin-top:5px;color:var(--cp-dim);}
.cp-role-lock b{color:var(--cp-text);font-weight:800;}
.cp-role-lock code{
	background:#fff;border:1px solid var(--cp-line);border-radius:6px;
	padding:1px 7px;font-size:12px;color:var(--cp-text);
}

/* ==========================================================================
   موبایل
   ========================================================================== */
@media (max-width:991px){
	.cp-chips{display:flex;}
	.cp-side{display:none;}
	.cp-grid{display:block;}
	.cp-stats{grid-template-columns:1fr 1fr;}
	.cp-quick{grid-template-columns:1fr 1fr;}
	.cp-wrap{padding:14px 0 34px;}
	.cp-card{padding:15px;border-radius:12px;}
}
@media (max-width:520px){
	.cp-stats{grid-template-columns:1fr;}
	.cp-stat{padding:13px;}
	.cp-order-meta{gap:10px;}
	.cp-alert{flex-wrap:wrap;}
	.cp-alert .cp-btn{margin-inline-start:0;width:100%;}
	.cp-kv{grid-template-columns:1fr;}
	.cp-order-body{flex-wrap:wrap;}
	.cp-thumbs{order:-1;}
	.cp-order-go{display:none;}
	.cp-tl-t{font-size:10.5px;}
	.cp-tl-dot{width:28px;height:28px;}
	.cp-tl-i::before{top:13px;}
	.cp-actions .cp-btn{min-width:100%;}
	.cp-item>img{width:52px;height:52px;}
	.cp-wallet-bal b{font-size:22px;}
}
@media (max-width:767px){
	.cp-wallet{flex-direction:column;gap:16px;}
	.cp-wallet-bal{flex:none;text-align:center;padding:16px;}
	.cp-form-grid{grid-template-columns:1fr;}
	.cp-addr-list{grid-template-columns:1fr;}
	.cp-wish{grid-template-columns:1fr;}
	.cp-noti-a{flex-direction:row;align-items:center;}
	.cp-stats-4{grid-template-columns:1fr 1fr;}
	.cp-hk-hero{flex-direction:column;align-items:stretch;}
	.cp-hk-hero .cp-btn-lg{width:100%;}
	.cp-auth{padding:22px 18px 20px;border-radius:16px;box-shadow:none;}
	.cp-auth-wrap{padding:16px 0 40px;}
	.cp-tab{min-width:104px;font-size:12.5px;padding:10px 8px;}
	.cp-otp-d{width:46px;height:50px;font-size:19px;}
	.cp-sec-head h2{font-size:14.5px;}
	.cp-email-row{flex-wrap:wrap;}
	.cp-email-row .form-control{flex:1 1 100%;}

	/* فرم آدرس روی موبایل */
	.cp-af-3{grid-template-columns:1fr 1fr;}
	.cp-af-3 .cp-field:last-child{grid-column:1/-1;}
	.cp-picks-3{grid-template-columns:1fr;}
	.cp-field-half{max-width:none;}
	.cp-af-sec{padding:13px;}
	.cp-addr-mini{flex-direction:column;align-items:flex-start;}
	.cp-addr-mini span{width:100%;}
}
@media (max-width:420px){
	.cp-picks{grid-template-columns:1fr;}
	.cp-af-3{grid-template-columns:1fr;}
	.cp-otp-d{width:42px;height:46px;font-size:18px;}
	.cp-role-go{display:none;}
	.cp-role-card{grid-template-columns:44px 1fr;}
	.cp-role-ico{width:40px;height:40px;}
}

/* ==========================================================================
   چاپ فاکتور — «چاپ فاکتور» در صفحهٔ جزئیات همین را تولید می‌کند.
   به‌جای ساختِ یک صفحهٔ جدا، همین صفحه برای چاپ تمیز می‌شود.
   ========================================================================== */
@media print{
	body *{visibility:hidden !important;}
	.cp-wrap,.cp-wrap *{visibility:visible !important;}
	.cp-wrap{position:absolute;inset-inline-start:0;top:0;width:100%;background:#fff;padding:0;}
	.cp-side,.cp-chips,.cp-noprint,.cp-back,.cp-alert,.cp-track .cp-btn{display:none !important;}
	.cp-grid{display:block;}
	.cp-card{box-shadow:none;border:1px solid #ccc;page-break-inside:avoid;margin-bottom:10px;}
	.cp-order-go{display:none;}
	a[href]::after{content:none !important;}
}

/* ── درخواست لغو سفارش (site/customer/order.plx) ──
   دکمه عمداً کم‌رنگ و ثانویه است: کنشِ اصلیِ این صفحه پیگیری سفارش است، نه لغو
   آن. باز شدنِ کادر علت هم یک گام عمدی است تا لغو با یک کلیکِ اتفاقی رخ ندهد. */
.cp-cancelreq{margin-top:14px;}
.cp-cancelreq .cp-btn-ghost{width:auto;border:1px solid #eadada;color:#b4232b;}
.cp-cancelreq .cp-btn-ghost:hover{background:#fdf3f3;}
.cp-cancelreq-box{margin-top:12px;padding:14px;border:1px solid #f0cfcf;border-radius:12px;background:#fffafa;}
.cp-cancelreq-box label{display:block;font-size:13px;margin-bottom:6px;}
.cp-cancelreq-box textarea{width:100%;padding:10px;border:1px solid #e3e6ea;border-radius:10px;font-family:inherit;font-size:14px;resize:vertical;}
.cp-cancelreq-off{margin-top:12px;font-size:13px;}
