/* داشبورد پلتفرم - فاز ۱ */

.dcp-dashboard {
	display: flex;
	gap: 24px;
	max-width: 1400px;
	margin: 24px auto;
	font-family: Tahoma, Vazirmatn, sans-serif;
	color: #24292f;
	align-items: flex-start;

	/* پالت رنگی داشبورد — دقیقاً از روی طرح مرجع نمونه‌برداری شده (نسخه‌ی ۲.۳۹.۰).
	   محدود به .dcp-dashboard است تا با متغیرهای دیگر بخش‌های وردپرس/قالب تداخل نکند. */
	--dcp-teal-dark: #015245;
	--dcp-teal-avatar-start: #4cb3a5;
	--dcp-teal-avatar-end: #2f8577;
	--dcp-mint-bg: #ddf2ef;
	--dcp-sidebar-bg: #f8f8f8;
	--dcp-notice-bg: #f1f1f1;
	--dcp-warning: #e67733;
	--dcp-accent-gold: #e8cda1;
	--dcp-heading-color: #1a1a1a;
	--dcp-icon-gray: #5f5f5f;
}

/* سایدبار - در dir=rtl اولین آیتم flex سمت راست قرار می‌گیرد */
.dcp-sidebar {
	width: 240px;
	flex-shrink: 0;
	background: var(--dcp-sidebar-bg);
	border: 1px solid #ececec;
	border-radius: 18px;
	padding: 20px;
	position: sticky;
	top: 24px;
}

.dcp-sidebar-user {
	display: flex;
	align-items: center;
	gap: 12px;
	padding-bottom: 18px;
	margin-bottom: 14px;
	border-bottom: 1px solid #ececec;
}

.dcp-avatar {
	width: 46px;
	height: 46px;
	border-radius: 50%;
	background: linear-gradient(135deg, var(--dcp-teal-avatar-start), var(--dcp-teal-avatar-end));
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: bold;
	flex-shrink: 0;
	overflow: hidden;
}

/* وقتی ادمین از تنظیمات داشبورد یک آیکون سفارشی برای آواتار آپلود کرده،
   دیگر پس‌زمینه‌ی دایره‌ای رنگیِ پیش‌فرض نمایش داده نمی‌شود — چون آیکون
   آپلودی معمولاً خودش رنگ/طرح دارد (مثلاً از قبل سبز است) و پس‌زمینه‌ی
   اضافه فقط باعث دورنگی/کادر ناخواسته دور آن می‌شود. */
.dcp-avatar.dcp-avatar-custom {
	background: transparent;
}

.dcp-avatar.dcp-avatar-custom img {
	width: 100%;
	height: 100%;
	border-radius: 50%;
}

.dcp-avatar img {
	width: 24px;
	height: 24px;
	object-fit: contain;
}

.dcp-avatar svg {
	width: 22px;
	height: 22px;
}

.dcp-user-info {
	min-width: 0;
	text-align: right;
}

.dcp-user-name {
	font-weight: bold;
	font-size: 15px;
	color: var(--dcp-heading-color);
}

.dcp-user-role-badge {
	font-size: 12.5px;
	color: #979797;
	margin-top: 2px;
}

.dcp-sidebar-code {
	background: #ffffff;
	border: 1px dashed #d1d5db;
	border-radius: 10px;
	padding: 10px 12px;
	margin-bottom: 14px;
	text-align: center;
}

.dcp-sidebar-code-label {
	font-size: 11px;
	color: #6b7280;
	margin-bottom: 4px;
}

.dcp-sidebar-code-value {
	font-family: "Courier New", monospace;
	font-weight: bold;
	font-size: 15px;
	letter-spacing: 1px;
	color: var(--dcp-teal-dark);
}

.dcp-menu {
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.dcp-menu-item {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 12px 14px;
	border-radius: 12px;
	color: var(--dcp-icon-gray);
	text-decoration: none;
	font-size: 14px;
	transition: background 0.15s, color 0.15s;
}

.dcp-menu-item:hover {
	background: #efefef;
}

.dcp-menu-item.is-active {
	background: var(--dcp-mint-bg);
	color: var(--dcp-teal-dark);
	font-weight: bold;
}

.dcp-menu-item i {
	font-size: 18px;
}

/* آیکون‌های تب‌های منو — چه دیفالت (SVG داخلی، رنگش با currentColor از خودِ
   .dcp-menu-item تبعیت می‌کند) چه آپلودی ادمین (تصویر ثابت) — نگاه کنید به
   dcp_render_dashboard_icon() در includes/core/dashboard-icons-functions.php */
.dcp-menu-icon {
	width: 20px;
	height: 20px;
	flex-shrink: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.dcp-menu-icon svg {
	width: 100%;
	height: 100%;
	stroke: currentColor;
}

.dcp-menu-icon img {
	width: 20px;
	height: 20px;
	object-fit: contain;
}

/* محتوای اصلی — دقیقاً روی پس‌زمینه‌ی صفحه، بدون قاب/کارت (طبق طرح مرجع) */
.dcp-content {
	flex: 1;
	min-width: 0;
	background: transparent;
	border: none;
	border-radius: 0;
	padding: 4px 6px 40px;
}

/* ===== صفحه‌ی خانه‌ی داشبورد (tab-home.php) — دقیقاً مطابق طرح مرجع نسخه‌ی ۲.۳۹.۰ ===== */

.dcp-welcome-header {
	margin-bottom: 26px;
}

.dcp-welcome-title {
	display: flex;
	align-items: center;
	gap: 8px;
	margin: 0 0 10px;
	font-size: 20px;
	font-weight: bold;
	color: var(--dcp-heading-color, #1a1a1a);
}

.dcp-welcome-wave-icon {
	width: 22px;
	height: 22px;
	display: inline-flex;
	flex-shrink: 0;
}

.dcp-welcome-wave-icon svg {
	width: 100%;
	height: 100%;
}

.dcp-welcome-wave-icon img {
	width: 22px;
	height: 22px;
	object-fit: contain;
}

.dcp-welcome-subtitle {
	color: #8a8a8a;
	font-size: 13.5px;
	line-height: 2;
	max-width: 100%;
}

/* از نسخه‌ی ۲.۴۳.۰: این ناحیه از ویرایشگر کامل وردپرس می‌آید، پس ممکن است
   چند پاراگراف یا یک تصویر/بنر داشته باشد — استایل‌های زیر برای نمایش تمیز
   همان محتوای دلخواه ادمین هستند. */
.dcp-welcome-subtitle p {
	margin: 0 0 10px;
}

.dcp-welcome-subtitle p:last-child {
	margin-bottom: 0;
}

.dcp-welcome-subtitle img {
	max-width: 100%;
	height: auto;
	border-radius: 12px;
	margin-bottom: 14px;
	display: block;
}

.dcp-welcome-subtitle a {
	color: var(--dcp-teal-dark, #015245);
	font-weight: bold;
}

.dcp-section-heading {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 0 0 20px;
}

.dcp-section-accent-bar {
	width: 4px;
	height: 20px;
	border-radius: 3px;
	background: var(--dcp-accent-gold, #e8cda1);
	flex-shrink: 0;
}

.dcp-section-heading h2,
.dcp-section-heading h3 {
	margin: 0;
	font-size: 15px;
	font-weight: bold;
	color: var(--dcp-heading-color, #1a1a1a);
}

.dcp-account-status-box {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	background: var(--dcp-notice-bg, #f1f1f1);
	border-radius: 12px;
	padding: 16px 18px;
	font-size: 13.5px;
	line-height: 2;
	color: #4b4b4b;
}

.dcp-account-status-box p {
	margin: 0;
}

.dcp-status-icon {
	width: 20px;
	height: 20px;
	flex-shrink: 0;
	margin-top: 2px;
	display: inline-flex;
}

.dcp-status-icon svg {
	width: 100%;
	height: 100%;
	stroke: currentColor;
}

.dcp-status-icon img {
	width: 20px;
	height: 20px;
	object-fit: contain;
}

.dcp-account-status-box.is-warning .dcp-status-icon {
	color: var(--dcp-warning, #e67733);
}

.dcp-account-status-box.is-success .dcp-status-icon {
	color: #16a34a;
}

.dcp-account-status-box.is-pending .dcp-status-icon {
	color: #d97706;
}

.dcp-status-highlight {
	font-weight: bold;
	color: #1a1a1a;
}

.dcp-status-link {
	font-weight: bold;
	color: var(--dcp-teal-dark, #015245);
	text-decoration: none;
}

.dcp-status-link:hover {
	text-decoration: underline;
}

.dcp-page-header h2 {
	margin: 0 0 4px;
	font-size: 20px;
}

.dcp-muted {
	color: #6b7280;
	font-size: 13px;
}

.dcp-cards {
	display: flex;
	flex-wrap: wrap;
	gap: 16px;
	margin-top: 16px;
}

.dcp-card {
	flex: 1;
	min-width: 240px;
	border: 1px solid #eef0f2;
	border-radius: 10px;
	padding: 16px;
}

.dcp-card-title {
	font-weight: bold;
	margin-bottom: 8px;
	font-size: 14px;
}

/* ===== کارت‌های آماری صفحه‌ی «پورسانت من» (مشترک پزشک/مرکز درمانی/ویزیتور)
   — عنوان بالای خودِ کارت (نه داخلش)، بوردر رنگی به‌ازای هر کارت، عدد بزرگ
   وسط‌چین، دقیقاً مطابق طرح مرجع نسخه‌ی ۲.۵۵.۰. ===== */
.dcp-commission-cards {
	display: flex !important;
	flex-wrap: wrap !important;
	align-items: stretch !important;
	gap: 16px;
	margin-top: 18px;
}

.dcp-commission-card-wrap {
	flex: 1 1 200px;
	min-width: 200px;
	display: flex !important;
	flex-direction: column !important;
}

.dcp-commission-card-label {
	font-weight: bold;
	font-size: 13px;
	color: #1a1a1a;
	margin-bottom: 10px;
}

.dcp-commission-card {
	background: #ffffff !important;
	border: 1.5px solid #e5e7eb !important;
	border-radius: 14px !important;
	padding: 22px 18px !important;
	text-align: center !important;
	flex: 1 !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	justify-content: center !important;
	box-sizing: border-box !important;
}

.dcp-commission-card.is-dark {
	border-color: #1c2b28 !important;
}

.dcp-commission-card.is-teal {
	border-color: #14b8a6 !important;
}

.dcp-commission-card.is-gold {
	border-color: #d4a94f !important;
}

.dcp-commission-card-value {
	font-size: 20px;
	font-weight: bold;
	color: #1a1a1a;
	margin-bottom: 6px;
}

.dcp-commission-card-status {
	font-size: 12.5px;
	color: #9ca3af;
}

.dcp-commission-card p.dcp-muted {
	text-align: right !important;
	width: 100%;
	box-sizing: border-box;
}

/* بخش‌های کارت‌مانند زیر کارت‌های آماری (جزئیات خریدها، تراکنش‌های پورسانت) —
   یک کارت با تیتر و خط جداکننده‌ی زیرش، محتوا (جدول یا پیام خالی) زیرِ آن */
.dcp-commission-section {
	margin-top: 24px;
	background: #ffffff;
	border: 1px solid #eef0f2;
	border-radius: 14px;
	padding: 18px 22px 22px;
}

.dcp-commission-section-title {
	font-weight: bold;
	font-size: 14px;
	color: #1a1a1a;
	padding-bottom: 14px;
	margin: 0 0 18px;
	border-bottom: 1px solid #eef0f2;
}

.dcp-commission-section-empty {
	text-align: center;
	color: #9ca3af;
	font-size: 13px;
	padding: 30px 0;
}

/* ===== کارت‌های اتصال/فرمِ شبکه — «شبکه من» پزشک، «پزشکان زیرمجموعه» مرکز
   درمانی، «افزودن پزشک/مرکز» ویزیتور. دقیقاً مطابق طرح مرجع نسخه‌ی ۲.۵۸.۰:
   تیتر+توضیح بالای خودِ کارت، فیلد با بوردر تیل هنگام فعال، بوردر خاکستری و
   ظاهر کم‌رنگ هنگام غیرفعال (چون سرور اجازه‌ی هم‌زمان پرکردن هر دو راه را
   نمی‌دهد — نگاه کنید به includes/referral/referral-functions.php). ===== */
.dcp-network-card {
	background: #ffffff !important;
	border: 1px solid #eef0f2 !important;
	border-radius: 14px !important;
	padding: 20px !important;
	box-sizing: border-box;
}

.dcp-network-card-title {
	font-weight: bold;
	font-size: 14px;
	color: #1a1a1a;
	margin-bottom: 4px;
}

.dcp-network-card-desc {
	font-size: 12.5px;
	color: #9ca3af;
	margin-bottom: 16px;
	line-height: 1.7;
}

.dcp-network-card .dcp-form-row {
	margin-bottom: 14px;
}

.dcp-network-card .dcp-form-row label {
	font-size: 12.5px;
	color: #6b7280;
}

.dcp-network-card input[type="text"],
.dcp-network-card select {
	width: 100% !important;
	background: #f6f6f6 !important;
	border: 1.5px solid #a7c4bf !important;
	border-radius: 10px !important;
	padding: 12px 14px !important;
	font-size: 14px !important;
	box-sizing: border-box !important;
	color: #1f2937 !important;
	font-family: inherit !important;
}

.dcp-network-card input[type="text"]:focus,
.dcp-network-card select:focus {
	outline: none;
	border-color: #015245 !important;
	background: #ffffff !important;
}

.dcp-network-card input[type="text"]:disabled {
	border-color: #e5e7eb !important;
	background: #f6f6f6 !important;
	color: #9ca3af !important;
	cursor: not-allowed !important;
}

.dcp-network-card .dcp-btn-primary {
	background: #015245 !important;
	color: #ffffff !important;
	border-radius: 10px !important;
	padding: 10px 22px !important;
	font-weight: bold !important;
	border: none !important;
	width: auto !important;
	font-size: 13.5px !important;
}

.dcp-network-card .dcp-btn-primary:disabled {
	background: #ebebeb !important;
	color: #9ca3af !important;
	cursor: not-allowed !important;
}

.dcp-network-card .dcp-status {
	margin: 0;
}

@media (max-width: 480px) {
	.dcp-network-card {
		padding: 16px !important;
	}
}

.dcp-status {
	padding: 12px 14px;
	border-radius: 8px;
	background: #f3f4f6;
	font-size: 14px;
	line-height: 1.8;
}

.dcp-status-success {
	background: #ecfdf3;
	color: #067647;
}

.dcp-status-pending {
	background: #fff7ed;
	color: #b54708;
}

.dcp-status-error {
	background: #fef3f2;
	color: #b42318;
}

.dcp-alert {
	padding: 10px 14px;
	border-radius: 8px;
	margin-bottom: 16px;
	font-size: 14px;
}

.dcp-alert-success {
	background: #ecfdf3;
	color: #067647;
}

.dcp-alert-error {
	background: #fef3f2;
	color: #b42318;
}

/* انتخاب نقش برای ارتقا */
.dcp-role-select {
	display: flex !important;
	gap: 10px;
	margin: 16px 0 24px;
	flex-wrap: wrap;
}

.dcp-role-btn {
	padding: 11px 22px !important;
	border: 1.5px solid #e5e7eb !important;
	border-radius: 10px !important;
	background: #ffffff !important;
	text-decoration: none;
	color: #374151 !important;
	font-size: 14px !important;
	font-weight: 600;
	cursor: pointer;
	transition: border-color 0.15s, background 0.15s, color 0.15s;
}

.dcp-role-btn:hover {
	border-color: #a7c4bf !important;
}

.dcp-role-btn.is-selected {
	background: #015245 !important;
	border-color: #015245 !important;
	color: #fff !important;
}

/* فرم داینامیک ارتقا سطح — تمام عرض ستون محتوا (قبلاً به ۴۸۰px محدود بود) */
.dcp-upgrade-form {
	max-width: 100%;
	width: 100%;
	box-sizing: border-box;
}

.dcp-form-row {
	margin-bottom: 16px;
}

.dcp-form-row label {
	display: block;
	margin-bottom: 6px;
	font-size: 13px;
	font-weight: bold;
}

.dcp-required {
	color: #b42318;
}

.dcp-form-row input[type="text"],
.dcp-form-row input[type="number"],
.dcp-form-row input[type="file"],
.dcp-form-row textarea,
.dcp-form-row select {
	width: 100%;
	padding: 9px 12px;
	border: 1px solid #d1d5db;
	border-radius: 8px;
	font-size: 14px;
	box-sizing: border-box;
	font-family: inherit;
}

.dcp-hint {
	font-size: 12px;
	color: #6b7280;
	margin-top: 4px;
}

/* بخش کدهای معرف خوداظهاری در فرم ارتقا سطح */
.dcp-referrer-section {
	margin-top: 20px;
	padding: 18px;
	background: #f9fafb;
	border: 1px solid #eef0f2;
	border-radius: 12px;
}

.dcp-referrer-section-title {
	margin: 0 0 12px;
	font-size: 14px;
	font-weight: bold;
	color: #1a1a1a;
}

.dcp-referrer-input-group {
	display: flex;
	gap: 8px;
}

.dcp-referrer-input-group input {
	flex: 1;
}

.dcp-referrer-input-group input:disabled {
	background: #f3f4f6;
	color: #9ca3af;
	cursor: not-allowed;
}

.dcp-verify-referrer-btn {
	white-space: nowrap;
	padding: 8px 16px !important;
	font-size: 13px !important;
	background: #ffffff !important;
	border: 1.5px solid #a7c4bf !important;
	color: #015245 !important;
	font-weight: 600;
}

.dcp-verify-referrer-btn:hover {
	background: #f0f7f5 !important;
}

.dcp-referrer-result {
	margin-top: 6px;
}

.dcp-referrer-result .dcp-alert {
	padding: 8px 12px;
	font-size: 12px;
	margin: 0;
}

/* ردیف‌های چند محصولی فرم صدور نسخه */
#dcp-prescription-product-rows {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.dcp-product-row {
	display: flex;
	direction: rtl;
	gap: 8px;
	align-items: center;
	box-sizing: border-box;
}

.dcp-product-row select {
	flex: 1 1 auto;
	min-width: 0; /* بدون این خط، select عرض محتوایش را رعایت می‌کند و کل ردیف را به‌هم می‌ریزد */
	padding: 9px 12px;
	border: 1px solid #d1d5db;
	border-radius: 8px;
	font-size: 14px;
	font-family: inherit;
	box-sizing: border-box;
}

.dcp-product-row .dcp-product-qty {
	width: 64px;
	flex: 0 0 64px;
	padding: 9px 8px;
	border: 1px solid #d1d5db;
	border-radius: 8px;
	font-size: 14px;
	text-align: center;
	box-sizing: border-box;
}

/* ----- ظاهر Select2 هماهنگ با بقیه‌ی فرم (جایگزین select خام محصول نسخه) ----- */
.dcp-product-row .select2-container {
	flex: 1 1 auto;
	min-width: 0;
}

.dcp-product-row .select2-container .select2-selection--single {
	height: 38px;
	padding: 4px 12px;
	border: 1px solid #d1d5db;
	border-radius: 8px;
	direction: rtl;
}

.dcp-product-row .select2-container .select2-selection--single .select2-selection__rendered {
	line-height: 28px;
	padding-right: 0;
	padding-left: 20px;
	color: #111827;
}

.dcp-product-row .select2-container .select2-selection--single .select2-selection__arrow {
	height: 36px;
	left: 8px;
	right: auto;
}

.dcp-product-row .select2-container--default .select2-selection--single .select2-selection__placeholder {
	color: #9ca3af;
}

.select2-dropdown {
	border-color: #d1d5db;
	border-radius: 8px;
	direction: rtl;
	text-align: right;
	font-family: inherit;
	font-size: 14px;
}

/* از نسخه‌ی ۲.۶۴.۱: رنگ هاور/فعال لیست Select2 به رنگ سبز برند تغییر کرد
   (قبلاً بنفش پیش‌فرض خودِ کتابخانه بود) و متن روی آن سفید شد */
.select2-container--default .select2-results__option--highlighted[aria-selected] {
	background-color: #015245 !important;
	color: #ffffff !important;
}

.dcp-remove-product-row {
	width: 34px;
	height: 34px;
	flex-shrink: 0;
	border: 1px solid #fca5a5;
	background: #fef2f2;
	color: #b42318;
	border-radius: 8px;
	cursor: pointer;
	font-size: 14px;
}

.dcp-remove-product-row:hover {
	background: #fee2e2;
}

/* ===== کارت فرم «ثبت نسخه جدید» — دقیقاً مطابق طرح مرجع نسخه‌ی ۲.۵۶.۰:
   فیلدهای بدون بوردر با پس‌زمینه‌ی خاکستری روشن، دکمه‌ی حذف با بوردر قرمز،
   لینک «افزودن محصول» به‌رنگ برند، دکمه‌های عملیات زیر کارت. ===== */
.dcp-prescription-card {
	background: #ffffff !important;
	border: 1px solid #eef0f2 !important;
	border-radius: 16px !important;
	padding: 26px !important;
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
}

.dcp-prescription-card .dcp-form-row input[type="text"] {
	background: #f9fafb !important;
	border: 1.5px solid #f3f4f6 !important;
	border-radius: 10px !important;
	padding: 12px 14px !important;
}

.dcp-prescription-card .dcp-form-row input[type="text"]:focus {
	outline: none;
	border-color: #015245 !important;
	background: #ffffff !important;
}

.dcp-prescription-card .dcp-product-row select,
.dcp-prescription-card .dcp-product-row .dcp-product-qty {
	background: #f9fafb !important;
	border: 1.5px solid #f3f4f6 !important;
}

.dcp-prescription-card .dcp-product-row .select2-container .select2-selection--single {
	background: #f9fafb !important;
	border: 1.5px solid #f3f4f6 !important;
}

.dcp-prescription-card .dcp-remove-product-row {
	width: 36px !important;
	height: 36px !important;
	border-radius: 10px !important;
	border: 1.5px solid #f3a3a3 !important;
	background: #ffffff !important;
	color: #e5484d !important;
	font-size: 15px !important;
	flex-shrink: 0 !important;
}

.dcp-add-product-link {
	display: inline-flex !important;
	align-items: center !important;
	gap: 6px !important;
	background: none !important;
	border: none !important;
	color: #015245 !important;
	font-weight: 600 !important;
	font-size: 13px !important;
	cursor: pointer !important;
	padding: 4px 0 !important;
	margin-top: 12px !important;
	width: auto !important;
}

.dcp-add-product-link:hover {
	text-decoration: underline;
}

.dcp-prescription-actions {
	display: flex !important;
	flex-direction: row-reverse !important;
	justify-content: flex-end !important;
	gap: 10px !important;
	margin-top: 22px !important;
}

.dcp-prescription-actions .dcp-btn-primary {
	background: linear-gradient(135deg, #017a63, #015245) !important;
	color: #ffffff !important;
	border-radius: 10px !important;
	padding: 11px 30px !important;
	font-weight: bold !important;
	border: none !important;
	width: auto !important;
}

.dcp-prescription-actions .dcp-btn-cancel {
	background: #ffffff !important;
	border: 1.5px solid #e5e7eb !important;
	color: #374151 !important;
	border-radius: 10px !important;
	padding: 11px 22px !important;
	font-weight: 600 !important;
	cursor: pointer !important;
	width: auto !important;
}

@media (max-width: 480px) {
	.dcp-referrer-input-group {
		flex-direction: column;
	}

	.dcp-verify-referrer-btn {
		width: 100% !important;
	}

	.dcp-role-select {
		gap: 8px;
	}

	.dcp-role-btn {
		flex: 1 1 auto;
		text-align: center;
	}
}

@media (max-width: 480px) {
	.dcp-prescription-card {
		padding: 18px !important;
	}

	.dcp-product-row {
		flex-wrap: wrap !important;
	}

	.dcp-product-row select,
	.dcp-prescription-card .dcp-product-row .select2-container {
		flex: 1 1 100% !important;
		order: 3;
	}

	.dcp-prescription-actions {
		flex-direction: column-reverse !important;
	}

	.dcp-prescription-actions .dcp-btn-primary,
	.dcp-prescription-actions .dcp-btn-cancel {
		width: 100% !important;
	}
}

.dcp-btn {
	display: inline-block !important;
	padding: 10px 22px !important;
	border-radius: 8px !important;
	border: none !important;
	cursor: pointer !important;
	font-size: 14px !important;
	font-family: inherit !important;
	background: #f3f4f6 !important;
	color: #374151 !important;
}

.dcp-btn-primary {
	background: #015245 !important;
	color: #fff !important;
}

.dcp-btn-primary:hover {
	background: #01695a !important;
}

@media (max-width: 720px) {
	/*
	 * تکنیک «فرار از ستون قالب» (full-bleed): صرف‌نظر از این‌که چه قالبی نصب
	 * است و چقدر عرض واقعی برای محتوای این صفحه در نظر گرفته، این کانتینر
	 * همیشه دقیقاً عرض کامل صفحه را می‌گیرد — حتی اگر قالب آن را داخل یک
	 * ستون باریک‌تر (مثلاً کنار یک ستون خالی/سایدبار قالب) قرار داده باشد.
	 * calc(50% - 50vw) دقیقاً فاصله‌ی لبه‌ی کانتینر تا لبه‌ی صفحه را با
	 * مارجین منفی جبران می‌کند.
	 */
	.dcp-dashboard {
		flex-direction: column;
		width: 100vw !important;
		max-width: 100vw !important;
		margin-left: calc(50% - 50vw) !important;
		margin-right: calc(50% - 50vw) !important;
		padding: 0 12px !important;
		box-sizing: border-box !important;
	}

	/*
	 * سایدبار در موبایل دیگر در جریان عادی صفحه نیست — به یک کشوی ثابت روی
	 * کل صفحه تبدیل می‌شود که با translateX باز/بسته می‌شود. چون در RTL
	 * سایدبار مفهوماً سمت راست است، حالت بسته با right:0 + translateX(100%)
	 * کاملاً از لبه‌ی راست صفحه بیرون می‌رود؛ حالت باز آن را به translateX(0)
	 * برمی‌گرداند — یعنی از سمت راست به‌درون صفحه سر می‌خورد.
	 * عرض کمی کمتر از حالت قبلی (۶۸٪ به‌جای ۷۸٪) تا لبه‌ی محتوای پشت آن هم
	 * کمی دیده شود و حس «کشو روی صفحه» پررنگ‌تر باشد.
	 */
	#dcp-sidebar.dcp-sidebar {
		position: fixed !important;
		top: 0 !important;
		right: 0 !important;
		bottom: 0 !important;
		left: auto !important;
		width: 68% !important;
		max-width: 270px !important;
		z-index: 999999 !important;
		border-radius: 0 !important;
		border: none !important;
		box-shadow: -8px 0 24px -4px rgba(16, 24, 40, 0.22) !important;
		overflow-y: auto !important;
		padding-top: 50px !important; /* فضای بالای پنل برای دکمه‌ی بستن که absolute است */
		transform: translateX(100%) !important;
		transition: transform 0.28s ease !important;
	}

	#dcp-sidebar.dcp-sidebar.is-open {
		transform: translateX(0) !important;
	}

	#dcp-sidebar-close.dcp-sidebar-close {
		display: flex !important;
	}

	#dcp-mobile-topbar.dcp-mobile-topbar {
		display: flex !important;
	}

	#dcp-sidebar-backdrop.dcp-sidebar-backdrop {
		display: block !important;
	}

	.dcp-content {
		width: 100% !important;
		box-sizing: border-box !important;
		padding: 16px !important;
	}

	/* جدول‌های چندستونی (گزارش پورسانت، سوابق نسخه و ...) روی صفحه‌ی باریک به
	   جای اسکرول افقی (که روی گوشی همیشه ناخوشایند است)، کامل به یک لیست
	   کارتی تبدیل می‌شوند: هر ردیف یک کارت جدا، هر سلول یک جفت «برچسب: مقدار».
	   برچسب هر سلول از data-label همان <td> می‌آید (نگاه کنید به تمپلیت‌های
	   dashboard/tab-*.php) — یعنی هدر جدول به‌جای بالای صفحه، کنار هر مقدار
	   تکرار می‌شود. */
	table.dcp-table {
		border: none !important;
		background: transparent !important;
		border-radius: 0 !important;
	}

	table.dcp-table thead {
		position: absolute !important;
		width: 1px !important;
		height: 1px !important;
		overflow: hidden !important;
		clip: rect(0 0 0 0) !important;
		white-space: nowrap !important;
	}

	table.dcp-table,
	table.dcp-table tbody,
	table.dcp-table tr,
	table.dcp-table td {
		display: block !important;
		width: 100% !important;
	}

	table.dcp-table tbody tr {
		margin-bottom: 12px !important;
		border: 1px solid #eef0f2 !important;
		border-radius: 12px !important;
		overflow: hidden !important;
		background: #ffffff !important;
	}

	table.dcp-table tbody tr:last-child {
		margin-bottom: 0 !important;
	}

	table.dcp-table td {
		display: flex !important;
		justify-content: space-between !important;
		align-items: center !important;
		gap: 14px !important;
		padding: 11px 14px !important;
		border: none !important;
		border-bottom: 1px solid #f3f4f6 !important;
		font-size: 13px !important;
	}

	table.dcp-table td:last-child {
		border-bottom: none !important;
	}

	table.dcp-table td::before {
		content: attr(data-label);
		font-weight: 600;
		color: #8b90a3;
		font-size: 11.5px;
		flex-shrink: 0;
	}

	/* سلول‌هایی که data-label ندارند (مثلاً یک ستون تزئینی) برچسب نشان نمی‌دهند */
	table.dcp-table td:not([data-label])::before,
	table.dcp-table td[data-label=""]::before {
		content: none;
	}
}

/*
 * نوار بالای موبایل — نوار تمام‌عرض با گرادیان سبزآبی؛ دکمه‌ی همبرگری داخل
 * آن سمت راست می‌نشیند (اولین فرزند در RTL) و کنارش عنوان صفحه.
 *
 * چرا id-selector + !important روی همه‌جا: این المان‌ها id دارند (برای
 * جاوااسکریپت لازم است)، و بدون این سخت‌گیری، سلکتورهای عمومی قالب وردپرس
 * می‌توانستند برنده شوند — دقیقاً همان مشکلی که در فرم کد نسخه هم دیده شد.
 */
#dcp-mobile-topbar.dcp-mobile-topbar {
	display: none; /* پیش‌فرض: مخفی در دسکتاپ؛ در موبایل با !important به flex تغییر می‌کند */
	align-items: center !important;
	gap: 12px;
	width: 100% !important;
	box-sizing: border-box !important;
	margin: 0 0 8px !important;
	padding: 7px 10px !important;
	background: radial-gradient(97.73% 97.73% at 50% 50%, #006357 0%, #4cb2a5 100%) !important;
	border: none !important;
	border-radius: 12px !important;
	box-shadow: 0 4px 14px -4px rgba(0, 99, 87, 0.5) !important;
}

#dcp-mobile-topbar.dcp-mobile-topbar .dcp-mobile-topbar-title {
	color: #ffffff !important;
	font-size: 15px !important;
	font-weight: 700 !important;
	font-family: Tahoma, Vazirmatn, sans-serif !important;
}

#dcp-sidebar-toggle.dcp-sidebar-toggle {
	display: flex !important;
	flex-shrink: 0 !important;
	appearance: none !important;
	-webkit-appearance: none !important;
	align-items: center !important;
	justify-content: center !important;
	width: 40px !important;
	height: 40px !important;
	box-sizing: border-box !important;
	margin: 0 !important;
	padding: 0 !important;
	background: rgba(255, 255, 255, 0.16) !important;
	border: none !important;
	outline: none !important;
	box-shadow: none !important;
	border-radius: 10px !important;
	color: #ffffff !important;
	cursor: pointer;
	transition: background 0.2s, transform 0.15s;
}

#dcp-sidebar-toggle.dcp-sidebar-toggle:hover {
	background: rgba(255, 255, 255, 0.26) !important;
}

#dcp-sidebar-toggle.dcp-sidebar-toggle:active {
	transform: scale(0.94);
}

#dcp-sidebar-toggle.dcp-sidebar-toggle:focus,
#dcp-sidebar-toggle.dcp-sidebar-toggle:focus-visible {
	outline: none !important;
	box-shadow: 0 0 0 3px rgba(255, 255, 255, 0.5) !important;
}

#dcp-sidebar-toggle.dcp-sidebar-toggle i {
	color: #ffffff !important;
	font-size: 20px !important;
	pointer-events: none;
}

/*
 * دکمه‌ی بستن (×) — بالا-چپِ خودِ پنل سایدبار (نه صفحه)، فقط در حالت کشوی
 * موبایل معنی دارد؛ در دسکتاپ که سایدبار ثابت/همیشه‌باز است مخفی می‌ماند.
 * راه سوم و مستقل برای بستن، جدا از کلیک بیرون یا کلیک دوباره روی همبرگری.
 */
#dcp-sidebar-close.dcp-sidebar-close {
	display: none; /* پیش‌فرض: مخفی در دسکتاپ؛ در موبایل با !important به flex تغییر می‌کند */
	position: absolute !important;
	top: 12px !important;
	left: 12px !important;
	z-index: 2 !important;
	appearance: none !important;
	-webkit-appearance: none !important;
	align-items: center !important;
	justify-content: center !important;
	width: 32px !important;
	height: 32px !important;
	box-sizing: border-box !important;
	margin: 0 !important;
	padding: 0 !important;
	background: #f3f4f6 !important;
	border: none !important;
	outline: none !important;
	box-shadow: none !important;
	border-radius: 50% !important;
	color: #4b5563 !important;
	cursor: pointer;
	transition: background 0.2s, transform 0.15s;
}

#dcp-sidebar-close.dcp-sidebar-close:hover {
	background: #e5e7eb !important;
}

#dcp-sidebar-close.dcp-sidebar-close:active {
	transform: scale(0.92);
}

#dcp-sidebar-close.dcp-sidebar-close:focus,
#dcp-sidebar-close.dcp-sidebar-close:focus-visible {
	outline: none !important;
	box-shadow: 0 0 0 3px rgba(75, 85, 99, 0.3) !important;
}

#dcp-sidebar-close.dcp-sidebar-close i {
	color: #4b5563 !important;
	font-size: 16px !important;
	pointer-events: none;
}

/* پرده‌ی پس‌زمینه — به‌طور پیش‌فرض مخفی و غیرقابل‌کلیک؛ فقط وقتی سایدبار باز
   است، هم دیده می‌شود و هم کلیک‌پذیر (تا بشود با کلیک بیرون، سایدبار را بست) */
#dcp-sidebar-backdrop.dcp-sidebar-backdrop {
	display: none !important;
	position: fixed !important;
	inset: 0 !important;
	margin: 0 !important;
	background: rgba(16, 24, 40, 0.45) !important;
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.28s ease;
	z-index: 999998 !important;
}

#dcp-sidebar-backdrop.dcp-sidebar-backdrop.is-open {
	opacity: 1;
	pointer-events: auto !important;
}

/* وقتی سایدبار موبایل باز است، اسکرول پشت پرده قفل می‌شود تا کاربر گم نشود */
body.dcp-sidebar-open-lock {
	overflow: hidden;
}

/* جدول‌های داشبورد (سوابق نسخه، سفارش‌ها، پورسانت، شبکه، پزشکان زیرمجموعه و
   هر جدول دیگری با کلاس dcp-table) — کارت گردشده با هدر خاکستری روشن و
   ردیف‌های راه‌راه (زبرا).

   چرا !important روی همه‌جا: دقیقاً همان مشکلی که فرم ورود و فرم صدور نسخه
   داشتند — استایل عمومی قالب/صفحه‌ساز سایت روی table/th/td با اولویت بالاتر
   می‌نشست و باعث می‌شد این جدول با این‌که کلاس درست را داشت، اصلاً شبیه طرح
   مرجع دیده نشود (بدون هدر خاکستری، بدون رنگ راه‌راه). این‌بار همه‌ی خواص
   بصری کلیدی با !important قفل شده‌اند. */
table.dcp-table {
	width: 100% !important;
	border-collapse: separate !important;
	border-spacing: 0 !important;
	font-size: 13px !important;
	border: 1px solid #eef0f2 !important;
	border-radius: 12px !important;
	overflow: hidden !important;
	background: #ffffff !important;
}

table.dcp-table th,
table.dcp-table td {
	text-align: right !important;
	padding: 14px 16px !important;
	border: none !important;
	vertical-align: middle !important;
}

table.dcp-table thead th {
	background: #f9fafb !important;
	color: #374151 !important;
	font-weight: bold !important;
	font-size: 12.5px !important;
	border-bottom: 1.5px solid #eef0f2 !important;
	white-space: nowrap !important;
}

table.dcp-table tbody tr:nth-child(odd) {
	background: #ffffff !important;
}

table.dcp-table tbody tr:nth-child(even) {
	background: #f9fafb !important;
}

table.dcp-table tbody td {
	color: #374151 !important;
}

.dcp-code-cell {
	font-family: "Courier New", monospace;
	font-weight: bold;
	letter-spacing: 1px;
}

.dcp-badge {
	display: inline-block !important;
	padding: 4px 14px !important;
	border-radius: 999px !important;
	font-size: 12px !important;
	font-weight: 600 !important;
	white-space: nowrap !important;
	border: none !important;
}

.dcp-badge-active {
	background: #ecfdf3 !important;
	color: #067647 !important;
}

.dcp-badge-used {
	background: #eef2ff !important;
	color: #4338ca !important;
}

.dcp-badge-expired {
	background: #f3f4f6 !important;
	color: #6b7280 !important;
}

.dcp-badge-rejected {
	background: #fef2f2 !important;
	color: #b42318 !important;
}

/* باکس نمایش برجسته کد تازه صادرشده */
.dcp-issued-code-box {
	background: #ecfdf3;
	border: 1px solid #b8e6cc;
	border-radius: 10px;
	padding: 18px;
	margin-bottom: 20px;
	text-align: center;
}

.dcp-issued-code-label {
	font-size: 13px;
	color: #067647;
	margin-bottom: 8px;
}

.dcp-issued-code-number {
	font-size: 32px;
	font-weight: bold;
	letter-spacing: 6px;
	color: #067647;
	font-family: "Courier New", monospace;
	margin-bottom: 6px;
}

/* فرم وارد کردن کد نسخه توسط بیمار ([dcp_redeem_code]) — نوار قرص‌مانند با
   دکمه‌ی گرادیانی سبزآبی داخل آن، مطابق طرح تاییدشده */
.dcp-redeem-box {
	max-width: 460px;
	font-family: Tahoma, Vazirmatn, sans-serif;
}

.dcp-sr-only {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.dcp-redeem-pill {
	direction: rtl;
	display: flex !important;
	align-items: stretch;
	gap: 0;
	margin: 0 !important;
	background:
		linear-gradient(#fff, #fff) padding-box,
		linear-gradient(90deg, #0d8f74, #22c99b) border-box !important;
	border: 1.5px solid transparent !important;
	border-radius: 999px !important;
	padding: 5px !important;
	box-shadow: 0 4px 14px -4px rgba(13, 143, 116, 0.28) !important;
	overflow: hidden; /* هر باقی‌مانده‌ی استایل پیش‌فرض قالب که از گوشه‌ها بیرون بزند، همین‌جا بریده می‌شود */
}

/*
 * ریست سخت‌گیرانه‌ی ورودی و دکمه.
 *
 * چرا !important لازم است: بسیاری از قالب‌های وردپرس روی سلکتورهای عمومی
 * مثل input[type=text] یا button (که با تگ/اتریبیوت انتخاب می‌شوند، نه کلاس)
 * حاشیه، رنگ فوکوس، سایه و شعاع گردی خودشان را ست می‌کنند. چون خودِ اینپوت
 * این فرم یک id دارد (#dcp-redeem-code-input برای جاوااسکریپت)، ممکن است در
 * برخی قالب‌ها specificity ی همان سلکتورهای عمومی قالب از یک کلاس ساده بالاتر
 * برود. !important تضمین می‌کند این فرم همیشه دقیقاً همین ظاهر را داشته باشد،
 * صرف‌نظر از این‌که چه قالبی نصب است.
 */
#dcp-redeem-code-form .dcp-redeem-pill-input {
	flex: 1 1 auto;
	min-width: 0;
	appearance: none !important;
	-webkit-appearance: none !important;
	border: none !important;
	outline: none !important;
	box-shadow: none !important;
	border-radius: 0 !important;
	background: transparent !important;
	margin: 0 !important;
	padding: 12px 18px !important;
	font-size: 15px !important;
	line-height: normal !important;
	text-align: right !important;
	color: #1f2333 !important;
	font-family: Tahoma, Vazirmatn, sans-serif !important;
	box-sizing: border-box !important;
}

#dcp-redeem-code-form .dcp-redeem-pill-input:hover,
#dcp-redeem-code-form .dcp-redeem-pill-input:focus,
#dcp-redeem-code-form .dcp-redeem-pill-input:focus-visible,
#dcp-redeem-code-form .dcp-redeem-pill-input:active {
	border: none !important;
	outline: none !important;
	box-shadow: none !important;
	background: transparent !important;
}

#dcp-redeem-code-form .dcp-redeem-pill-input::placeholder {
	color: #9aa1af !important;
	opacity: 1 !important;
}

#dcp-redeem-code-form .dcp-redeem-pill-btn {
	flex-shrink: 0;
	appearance: none !important;
	-webkit-appearance: none !important;
	border: none !important;
	outline: none !important;
	box-shadow: 0 4px 10px -2px rgba(13, 143, 116, 0.45) !important;
	border-radius: 999px !important;
	margin: 0 !important;
	padding: 13px 30px !important;
	font-size: 14px !important;
	font-weight: 700 !important;
	line-height: normal !important;
	color: #fff !important;
	cursor: pointer;
	white-space: nowrap;
	background: linear-gradient(90deg, #0d8f74, #22c99b) !important;
	font-family: Tahoma, Vazirmatn, sans-serif !important;
	text-shadow: none !important;
	transition: opacity 0.2s, transform 0.15s;
}

#dcp-redeem-code-form .dcp-redeem-pill-btn:hover:not(:disabled) {
	background: linear-gradient(90deg, #0d8f74, #22c99b) !important;
	border: none !important;
	outline: none !important;
	opacity: 0.92;
}

#dcp-redeem-code-form .dcp-redeem-pill-btn:focus,
#dcp-redeem-code-form .dcp-redeem-pill-btn:focus-visible {
	border: none !important;
	outline: none !important;
	box-shadow: 0 0 0 3px rgba(13, 143, 116, 0.35) !important; /* حلقه‌ی فوکوس اختصاصی خودمان، به‌جای حلقه‌ی رنگی قالب */
}

#dcp-redeem-code-form .dcp-redeem-pill-btn:active:not(:disabled) {
	border: none !important;
	outline: none !important;
	transform: scale(0.98);
}

#dcp-redeem-code-form .dcp-redeem-pill-btn:disabled {
	opacity: 0.65;
	cursor: not-allowed;
}

@media (max-width: 480px) {
	.dcp-redeem-pill {
		flex-wrap: wrap;
		border-radius: 22px;
	}
	#dcp-redeem-code-form .dcp-redeem-pill-input {
		width: 100%;
		text-align: center;
	}
	#dcp-redeem-code-form .dcp-redeem-pill-btn {
		width: 100%;
	}
}

.dcp-redeem-box #dcp-redeem-result {
	margin-top: 14px;
}

/* فرم ورود با شماره موبایل ([dcp_login]) و فرم ورود بین‌المللی — طراحی
   کارتی با پالت تیل تیره‌ی برند (#015245)، مشترک بین هر دو نسخه (فارسی/OTP
   و بین‌المللی/رمز عبور) و همه‌ی زبان‌ها.

   نکته درباره‌ی all:unset و !important روی چند خاصیت کلیدی: قبلاً این فرم
   گاهی روی سایت‌های واقعی کاملاً بی‌استایل (رنگ/فونت پیش‌فرض مرورگر یا حتی
   رنگ قرمز از تم/المنتور روی دکمه) دیده می‌شد — چون استایل قالب یا صفحه‌ساز
   با اولویت بالاتر روی button/input عمومی override می‌کرد. این ریست‌ها
   دقیقاً برای این است که این فرم مستقل از هر قالبی، همیشه یک شکل دیده شود. */
.dcp-login-box {
	box-sizing: border-box;
	display: block;
	max-width: 380px;
	margin: 32px auto;
	padding: 40px 32px 32px;
	background: #ffffff;
	border-radius: 20px;
	box-shadow: 0 1px 2px rgba(16, 24, 40, 0.06), 0 12px 32px -8px rgba(1, 82, 69, 0.22);
	text-align: center;
	font-family: Tahoma, Vazirmatn, Arial, sans-serif;
	position: relative;
	overflow: hidden;
	animation: dcp-login-fade-in 0.5s ease;
	color: #1f2333;
	font-size: 14px;
	line-height: 1.6;
	direction: rtl;
}

.dcp-login-box *,
.dcp-login-box *::before,
.dcp-login-box *::after {
	box-sizing: border-box;
}

.dcp-login-box div,
.dcp-login-box p,
.dcp-login-box form,
.dcp-login-box h2 {
	display: block;
}

.dcp-login-box::before {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	height: 6px;
	background: linear-gradient(90deg, #015245, #02896f, #015245);
	background-size: 200% 100%;
	animation: dcp-login-shimmer 3s linear infinite;
}

.dcp-login-icon {
	width: 64px;
	height: 64px;
	margin: 0 auto 18px;
	border-radius: 50%;
	background: linear-gradient(135deg, #017a63, #015245);
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	box-shadow: 0 8px 20px -6px rgba(1, 82, 69, 0.55);
}

.dcp-login-icon svg {
	width: 30px;
	height: 30px;
}

.dcp-login-title {
	margin: 0 0 4px;
	font-size: 19px;
	font-weight: bold;
	color: #1f2333;
	font-family: inherit;
}

.dcp-login-subtitle {
	margin: 0 0 26px;
	font-size: 13px;
	color: #8b90a3;
}

.dcp-login-box .dcp-form-row {
	text-align: right;
	margin-bottom: 16px;
}

/* ---- صفحه ورود بین‌المللی: جهت بر اساس زبان جاری تعیین می‌شود (نگاه کنید
   به dcp_get_intl_login_text_direction) — قبلاً همیشه ثابت چپ‌به‌راست بود،
   که برای زبان‌های راست‌به‌چپ مثل عربی/کردی سورانی اشتباه بود. ---- */
.dcp-intl-login-box[dir="ltr"] {
	direction: ltr;
	text-align: left;
}

.dcp-intl-login-box[dir="ltr"] .dcp-form-row {
	text-align: left;
}

.dcp-intl-login-box[dir="rtl"] {
	direction: rtl;
	text-align: right;
}

.dcp-intl-login-box[dir="rtl"] .dcp-form-row {
	text-align: right;
}

.dcp-login-box.dcp-intl-login-box .dcp-intl-tabs {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	align-items: stretch !important;
	width: 100% !important;
	gap: 6px;
	margin-bottom: 24px;
	border-bottom: 1.5px solid #e5e7eb;
}

.dcp-login-box.dcp-intl-login-box .dcp-intl-tab {
	box-sizing: border-box !important;
	background: none !important;
	border: none;
	border-bottom: 2px solid transparent !important;
	display: block !important;
	flex: 1 1 0% !important;
	min-width: 0 !important;
	max-width: 100% !important;
	width: auto !important;
	overflow: hidden !important;
	white-space: normal !important;
	overflow-wrap: break-word !important;
	word-break: break-word !important;
	text-align: center !important;
	padding: 9px 3px !important;
	font-size: 12.5px !important;
	line-height: 1.3 !important;
	font-weight: 600;
	color: #8b90a3 !important;
	cursor: pointer;
	margin: 0 0 -1.5px !important;
	transition: color 0.2s, border-color 0.2s;
	font-family: inherit;
}

.dcp-login-box.dcp-intl-login-box .dcp-intl-tab.active {
	color: #015245 !important;
	border-bottom-color: #015245 !important;
}

.dcp-intl-login-box input[type="text"],
.dcp-intl-login-box input[type="email"],
.dcp-intl-login-box input[type="password"] {
	width: 100%;
	padding: 13px 16px;
	border: 1.5px solid #e5e7eb !important;
	border-radius: 12px;
	font-size: 15px;
	box-sizing: border-box;
	transition: border-color 0.2s, box-shadow 0.2s;
	background: #f9fafb;
	color: #1f2333;
	font-family: inherit;
	-webkit-appearance: none;
	appearance: none;
}

.dcp-intl-login-box input:focus {
	outline: none;
	border-color: #015245 !important;
	box-shadow: 0 0 0 3px rgba(1, 82, 69, 0.14);
	background: #fff;
}

.dcp-intl-link {
	color: #015245 !important;
	text-decoration: none;
	font-weight: 600;
	cursor: pointer;
}

.dcp-intl-link:hover {
	text-decoration: underline;
}

.dcp-login-box label {
	display: block;
	margin-bottom: 6px;
	font-size: 12px;
	color: #6b7280;
	font-family: inherit;
}

.dcp-login-box input#dcp-login-phone,
.dcp-login-box input#dcp-login-code {
	width: 100%;
	padding: 13px 16px;
	border: 1.5px solid #e5e7eb !important;
	border-radius: 12px;
	font-size: 16px;
	box-sizing: border-box;
	font-family: "Courier New", monospace;
	letter-spacing: 2px;
	text-align: center;
	transition: border-color 0.2s, box-shadow 0.2s;
	background: #f9fafb;
	color: #1f2333;
	-webkit-appearance: none;
	appearance: none;
}

.dcp-login-box input#dcp-login-phone:focus,
.dcp-login-box input#dcp-login-code:focus {
	outline: none;
	border-color: #015245 !important;
	background: #fff;
	box-shadow: 0 0 0 4px rgba(1, 82, 69, 0.14);
}

.dcp-login-box input#dcp-login-code {
	font-size: 24px;
	letter-spacing: 10px;
	font-weight: bold;
	color: #015245 !important;
}

.dcp-login-box .dcp-btn {
	box-sizing: border-box;
	display: block;
	width: 100%;
	text-align: center;
	cursor: pointer;
	font-family: inherit;
	border: none;
	background: transparent;
}

.dcp-login-box .dcp-btn-primary {
	padding: 13px;
	border-radius: 12px;
	font-size: 15px;
	font-weight: bold;
	background: linear-gradient(135deg, #017a63, #015245) !important;
	color: #ffffff !important;
	border: none;
	box-shadow: 0 6px 16px -4px rgba(1, 82, 69, 0.5);
	transition: transform 0.15s, box-shadow 0.15s;
	margin-top: 4px;
}

.dcp-login-box .dcp-btn-primary:hover:not(:disabled) {
	transform: translateY(-1px);
	box-shadow: 0 8px 20px -4px rgba(1, 82, 69, 0.6);
}

.dcp-login-box .dcp-btn-primary:disabled {
	opacity: 0.7;
	cursor: default;
}

.dcp-login-box #dcp-otp-change-phone {
	margin: 10px 0 0;
	background: transparent !important;
	color: #8b90a3 !important;
	font-size: 13px;
	padding: 8px;
	font-weight: normal;
	box-shadow: none;
}

.dcp-login-box #dcp-otp-change-phone:hover {
	color: #015245 !important;
}

.dcp-login-box #dcp-login-result,
.dcp-login-box #dcp-intl-login-result {
	margin-top: 16px;
}

.dcp-login-box .dcp-muted {
	color: #8b90a3;
	font-size: 13px;
	margin: 10px 0 0;
}

.dcp-login-box #dcp-otp-verify-form {
	animation: dcp-login-fade-in 0.35s ease;
}

@keyframes dcp-login-fade-in {
	from { opacity: 0; transform: translateY(8px); }
	to { opacity: 1; transform: translateY(0); }
}

@keyframes dcp-login-shimmer {
	0% { background-position: 0% 0; }
	100% { background-position: 200% 0; }
}

@media (max-width: 480px) {
	.dcp-login-box {
		margin: 16px;
		padding: 32px 22px 26px;
		max-width: none;
	}

	.dcp-login-box.dcp-intl-login-box .dcp-intl-tabs {
		display: flex !important;
		flex-direction: row !important;
		flex-wrap: nowrap !important;
	}

	.dcp-login-box.dcp-intl-login-box .dcp-intl-tab {
		flex: 1 1 0% !important;
		font-size: 10.5px !important;
		padding: 7px 2px !important;
		line-height: 1.25 !important;
	}
}

/* =====================================================================
   از نسخه‌ی ۲.۶۴.۰ تا ۲.۶۴.۲: پیش‌نمایش کوچک محصول (عکس + نام + قیمت) در
   فرم صدور نسخه‌ی پزشک — داخل لیست نتایج جست‌وجوی Select2
   (dcp-product-option) و داخل باکس «محصولات انتخاب‌شده» قبل از دکمه‌ی
   صدور (dcp-selected-summary). (فیلد خودِ Select2 بعد از انتخاب فقط متن
   ساده نشان می‌دهد، عمداً بدون عکس — نگاه کنید به select2-init.js)
   طبق قانون کلی پروژه، همه‌ی خواص بصری کلیدی !important دارند تا روی
   سایت زنده زیر CSS المنتور/قالب له نشوند.
   ===================================================================== */

/* ----- ردیف هر محصول داخل لیست نتایج جست‌وجوی Select2 ----- */
.select2-results__option .dcp-product-option {
	display: flex !important;
	align-items: center !important;
	gap: 10px !important;
	direction: rtl !important;
	padding: 2px 0 !important;
}

.dcp-product-option-thumb {
	width: 34px !important;
	height: 34px !important;
	flex-shrink: 0 !important;
	object-fit: cover !important;
	border-radius: 6px !important;
	border: 1px solid #eef0f2 !important;
	background: #f9fafb !important;
}

.dcp-product-option-info {
	display: flex !important;
	flex-direction: column !important;
	gap: 2px !important;
	min-width: 0 !important;
}

.dcp-product-option-title {
	font-size: 13px !important;
	color: #111827 !important;
	overflow: hidden !important;
	text-overflow: ellipsis !important;
	white-space: nowrap !important;
}

.dcp-product-option-price {
	font-size: 11px !important;
	color: #6b7280 !important;
}

/* از نسخه‌ی ۲.۶۴.۱: وقتی ردیف زیر ماوس/فوکوس (highlighted) است، رنگ سبز
   پس‌زمینه‌اش تیره است؛ پس نام و قیمتِ داخلش هم باید سفید شوند وگرنه رنگ
   خاکستری/تیره‌ی پیش‌فرضشان روی سبز تیره تقریباً ناخوانا می‌شود. */
.select2-results__option--highlighted .dcp-product-option-title,
.select2-results__option--highlighted .dcp-product-option-price {
	color: #ffffff !important;
}

/* ----- مقدار انتخاب‌شده داخل خودِ فیلد Select2 (بعد از انتخاب محصول) —
   عمداً فقط متن ساده است (بدون عکس)؛ توضیح چرایی در کامنت بالای
   assets/js/select2-init.js آمده. عکس/قیمت واقعی در باکس «محصولات
   انتخاب‌شده» زیر فرم است. ----- */
.dcp-product-row .select2-container .select2-selection--single .select2-selection__rendered {
	display: flex !important;
	align-items: center !important;
}

/* ----- باکس «محصولات انتخاب‌شده» قبل از دکمه‌ی صدور نسخه ----- */
.dcp-selected-summary {
	margin-top: 18px !important;
	padding: 16px !important;
	background: #f9fafb !important;
	border: 1.5px solid #f3f4f6 !important;
	border-radius: 12px !important;
}

.dcp-selected-summary.is-empty {
	display: none !important;
}

.dcp-selected-summary-title {
	font-size: 13px !important;
	font-weight: bold !important;
	color: #015245 !important;
	margin-bottom: 10px !important;
}

.dcp-selected-summary-list {
	display: flex !important;
	flex-direction: column !important;
	gap: 8px !important;
}

.dcp-selected-summary-item {
	display: flex !important;
	align-items: center !important;
	gap: 10px !important;
	direction: rtl !important;
	background: #ffffff !important;
	border: 1px solid #eef0f2 !important;
	border-radius: 10px !important;
	padding: 8px 10px !important;
}

.dcp-selected-summary-thumb {
	width: 40px !important;
	height: 40px !important;
	flex-shrink: 0 !important;
	object-fit: cover !important;
	border-radius: 8px !important;
	border: 1px solid #eef0f2 !important;
	background: #f9fafb !important;
}

.dcp-selected-summary-info {
	display: flex !important;
	flex-direction: column !important;
	gap: 2px !important;
	min-width: 0 !important;
	flex: 1 1 auto !important;
}

.dcp-selected-summary-name {
	font-size: 13px !important;
	font-weight: 600 !important;
	color: #111827 !important;
	overflow: hidden !important;
	text-overflow: ellipsis !important;
	white-space: nowrap !important;
}

.dcp-selected-summary-price {
	font-size: 12px !important;
	color: #6b7280 !important;
}

.dcp-selected-summary-qty {
	flex-shrink: 0 !important;
	font-size: 12px !important;
	font-weight: bold !important;
	color: #015245 !important;
	background: #eaf3f1 !important;
	border-radius: 999px !important;
	padding: 3px 10px !important;
}

@media (max-width: 480px) {
	.dcp-selected-summary-item {
		align-items: flex-start !important;
	}
}
