/* فرم درخواست عضویت انجمن نقره ایران */
.sam-wrap {
	--sam-navy: #2f3b4c;
	--sam-navy-dark: #223041;
	--sam-silver: #c9d2dc;
	--sam-accent: #7c8aa0;
	--sam-bg: #f4f6f9;
	--sam-card: #ffffff;
	--sam-border: #dfe5ec;
	--sam-text: #2b3442;
	--sam-muted: #6b7686;
	--sam-danger: #b3261e;
	--sam-danger-bg: #fdecea;
	--sam-success: #1e7e34;
	--sam-radius: 14px;
	width: 100%;
	max-width: 100%;
	margin: 24px 0;
	padding: 0;
	direction: rtl;
	text-align: right;
	color: var(--sam-text);
	font-size: 15px;
	line-height: 1.9;
	box-sizing: border-box;
}
.sam-wrap *, .sam-wrap *::before, .sam-wrap *::after { box-sizing: border-box; }

/* سربرگ */
.sam-head {
	background: linear-gradient(135deg, var(--sam-navy-dark) 0%, var(--sam-navy) 60%, #3d4c61 100%);
	color: #fff;
	border-radius: var(--sam-radius);
	padding: 30px 24px 26px;
	text-align: center;
	position: relative;
	overflow: hidden;
	margin-bottom: 18px;
}
.sam-head::after {
	content: "";
	position: absolute;
	inset-inline: 0;
	bottom: 0;
	height: 4px;
	background: linear-gradient(90deg, transparent, var(--sam-silver), transparent);
}
.sam-logo-ring {
	width: 64px;
	height: 64px;
	margin: 0 auto 10px;
	border-radius: 50%;
	border: 2px solid var(--sam-silver);
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 26px;
	font-weight: 700;
	color: var(--sam-silver);
	background: rgba(255,255,255,.06);
}
.sam-title { margin: 0 0 6px; font-size: 22px; font-weight: 800; color: #fff; }
.sam-sub { margin: 0; font-size: 16px; font-weight: 700; color: #e8edf3; }
.sam-sub-note { display: block; font-size: 13px; font-weight: 400; color: var(--sam-silver); margin-top: 4px; }

.sam-intro {
	background: var(--sam-card);
	border: 1px solid var(--sam-border);
	border-radius: var(--sam-radius);
	padding: 16px 20px;
	margin-bottom: 14px;
}
.sam-intro p { margin: 0 0 8px; }
.sam-intro p:last-child { margin-bottom: 0; }

/* ویزارد مرحله‌ای */
.sam-wrap [hidden] { display: none !important; }
.sam-wizard {
	background: var(--sam-card);
	border: 1px solid var(--sam-border);
	border-radius: var(--sam-radius);
	padding: 16px 16px 14px;
	margin-bottom: 16px;
}
.sam-wizard-list {
	list-style: none !important;
	list-style-type: none !important;
	margin: 0 !important;
	padding: 0 !important;
	display: flex !important;
	flex-direction: row;
	gap: 4px;
}
.sam-wizard-list > li {
	list-style: none !important;
	margin: 0 !important;
	padding: 0 2px !important;
	flex: 1 1 0;
	min-width: 0;
	display: flex !important;
	flex-direction: column !important;
	align-items: center;
	gap: 6px;
	font-size: 12px;
	color: var(--sam-muted);
	position: relative;
	text-align: center;
}
.sam-wizard-list > li::before {
	content: "" !important;
	display: block !important;
	position: absolute;
	top: 15px;
	right: 0;
	left: 0;
	height: 2px;
	background: var(--sam-border) !important;
}
.sam-wizard-list > li:first-child::before { right: 50%; }
.sam-wizard-list > li:last-child::before { left: 50%; }
.sam-wizard-list > li::after {
	content: none !important;
	display: none !important;
}
.sam-wizard-list > li::marker {
	content: none !important;
}
.sam-w-dot {
	width: 30px;
	height: 30px;
	border-radius: 50%;
	background: #e6ebf1;
	color: var(--sam-muted);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-weight: 800;
	font-size: 14px;
	position: relative;
	z-index: 1;
	flex-shrink: 0;
}
.sam-wizard-list > li.is-active { color: var(--sam-navy); }
.sam-wizard-list > li.is-active .sam-w-dot {
	background: var(--sam-navy);
	color: #fff;
	box-shadow: 0 0 0 4px rgba(47,59,76,.15);
}
.sam-wizard-list > li.is-active .sam-w-label { font-weight: 800; }
.sam-wizard-list > li.is-done::before { background: var(--sam-success) !important; }
.sam-wizard-list > li.is-done .sam-w-dot { background: var(--sam-success); color: #fff; }
.sam-wizard-list > li.is-open { cursor: pointer; }
.sam-w-progress {
	height: 6px;
	background: #e6ebf1;
	border-radius: 999px;
	margin-top: 12px;
	overflow: hidden;
}
.sam-w-progress > span {
	display: block;
	height: 100%;
	width: 25%;
	background: linear-gradient(90deg, var(--sam-navy), #46586e);
	border-radius: 999px;
	transition: width .3s ease;
}

/* نمایش تک‌مرحله‌ای (فقط وقتی جاوااسکریپت فعال است) */
.sam-js .sam-step-panel { display: none; }
.sam-js .sam-step-panel.is-active { display: block; animation: samFade .3s ease; }
.sam-js .sam-nojs-submit { display: none !important; }
@keyframes samFade {
	from { opacity: 0; transform: translateY(8px); }
	to { opacity: 1; transform: none; }
}

/* ناوبری مراحل */
.sam-step-nav { margin-top: 4px; }
.sam-step-btns {
	display: flex !important;
	align-items: center;
	gap: 10px;
}
.sam-step-count { flex: 1; text-align: center; color: var(--sam-muted); font-size: 13px; }
.sam-btn {
	font-family: inherit;
	font-size: 15px;
	font-weight: 700;
	border-radius: 10px;
	padding: 11px 30px;
	cursor: pointer;
	transition: box-shadow .15s, transform .1s;
}
.sam-btn:active { transform: scale(.98); }
.sam-prev { background: #fff; border: 1px solid var(--sam-navy); color: var(--sam-navy); }
.sam-next {
	background: linear-gradient(135deg, var(--sam-navy-dark), var(--sam-navy) 60%, #46586e);
	border: none;
	color: #fff;
	box-shadow: 0 4px 14px rgba(47,59,76,.35);
}
.sam-final-submit { text-align: center; margin-top: 16px; }

.sam-notice {
	background: #fff8e6;
	border: 1px solid #ecd9a8;
	border-radius: 12px;
	padding: 12px 16px;
	font-size: 14px;
	margin-bottom: 16px;
}

/* کارت‌ها */
.sam-card {
	background: var(--sam-card);
	border: 1px solid var(--sam-border);
	border-radius: var(--sam-radius);
	padding: 20px 20px 22px;
	margin: 0 0 16px;
}
.sam-card legend, .sam-card > legend {
	font-weight: 800;
	font-size: 16px;
	padding: 0 10px;
	color: var(--sam-navy);
}
.sam-legend-num {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 26px;
	height: 26px;
	border-radius: 8px;
	background: var(--sam-navy);
	color: #fff;
	font-size: 14px;
	margin-left: 6px;
}

.sam-field { margin-bottom: 16px; }
.sam-field:last-child { margin-bottom: 0; }
.sam-field label, .sam-label {
	display: block;
	font-weight: 700;
	margin-bottom: 6px;
	font-size: 14px;
}
.sam-req { color: var(--sam-danger); }
.sam-field input[type="text"],
.sam-field input[type="email"],
.sam-field textarea,
.sam-field select {
	width: 100%;
	border: 1px solid var(--sam-border);
	border-radius: 10px;
	padding: 10px 12px;
	font-size: 15px;
	font-family: inherit;
	color: var(--sam-text);
	background: #fbfcfe;
	transition: border-color .15s, box-shadow .15s;
}
.sam-field input:focus, .sam-field textarea:focus, .sam-field select:focus {
	outline: none;
	border-color: var(--sam-navy);
	box-shadow: 0 0 0 3px rgba(47,59,76,.12);
	background: #fff;
}
.sam-ltr { text-align: left; }
.sam-hint { font-size: 13px; color: var(--sam-muted); margin: 0 0 12px; }
.sam-hint-small { font-size: 12px; color: var(--sam-muted); }

.sam-grid { display: flex !important; flex-wrap: wrap; gap: 0 14px; }
.sam-grid > .sam-field { flex: 1 1 0; min-width: 0; }

/* گزینه‌های دکمه‌ای */
.sam-radio-row {
	display: flex !important;
	flex-wrap: wrap;
	gap: 8px;
}
.sam-check-grid {
	display: flex !important;
	flex-wrap: wrap;
	gap: 8px;
}
.sam-check-grid > .sam-pill { flex: 1 1 calc(50% - 4px); min-width: 0; }
.sam-pill {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	border: 1px solid var(--sam-border);
	border-radius: 999px;
	padding: 7px 14px 7px 16px;
	cursor: pointer;
	font-size: 14px;
	background: #fbfcfe;
	transition: all .15s;
	margin: 0;
	font-weight: 400 !important;
}
.sam-check { border-radius: 10px; }
.sam-pill input { accent-color: var(--sam-navy); width: 16px; height: 16px; margin: 0; }
.sam-pill:has(input:checked) {
	border-color: var(--sam-navy);
	background: #eef2f7;
	font-weight: 700 !important;
}
.sam-pill.is-checked {
	border-color: var(--sam-navy);
	background: #eef2f7;
	font-weight: 700 !important;
}
.sam-other { margin-top: 10px; }

.sam-file-field input[type="file"] {
	width: 100%;
	border: 1px dashed var(--sam-accent);
	border-radius: 10px;
	padding: 10px 12px;
	background: #fbfcfe;
	font-family: inherit;
	font-size: 14px;
}
.sam-file-field input[type="file"]::file-selector-button {
	font-family: inherit;
	border: none;
	background: var(--sam-navy);
	color: #fff;
	border-radius: 8px;
	padding: 7px 16px;
	margin-left: 10px;
	cursor: pointer;
	font-size: 13px;
}

/* تعهدنامه */
.sam-commit { border-color: var(--sam-navy); border-width: 2px; }
.sam-commit-text {
	background: var(--sam-bg);
	border-radius: 10px;
	padding: 14px 16px;
	font-size: 14px;
	margin-bottom: 16px;
}
.sam-agree {
	display: flex;
	gap: 10px;
	align-items: flex-start;
	background: #eef6ee;
	border: 1px solid #bfe0c3;
	border-radius: 10px;
	padding: 12px 14px;
	cursor: pointer;
	font-weight: 700;
	font-size: 14px;
	margin-top: 14px;
}
.sam-agree input { width: 18px; height: 18px; margin-top: 4px; accent-color: var(--sam-success); flex-shrink: 0; }

/* خطاها */
.sam-alert {
	border-radius: 12px;
	padding: 14px 18px;
	margin-bottom: 16px;
	font-size: 14px;
}
.sam-error-list { background: var(--sam-danger-bg); border: 1px solid #f2b8b5; }
.sam-error-list ul { margin: 8px 0 0; padding-right: 18px; }
.sam-error-list a { color: var(--sam-danger); }
.sam-error-general { background: var(--sam-danger-bg); border: 1px solid #f2b8b5; color: var(--sam-danger); font-weight: 700; }
.sam-field-error { color: var(--sam-danger); font-size: 13px; margin: 6px 0 0; font-weight: 700; }
.sam-field.sam-invalid input, .sam-field.sam-invalid textarea, .sam-card.sam-invalid { border-color: var(--sam-danger); }

/* دکمه ثبت */
.sam-submit-row { text-align: center; margin-top: 20px; }
.sam-submit {
	background: linear-gradient(135deg, var(--sam-navy-dark), var(--sam-navy) 60%, #46586e);
	color: #fff;
	border: none;
	border-radius: 12px;
	padding: 14px 54px;
	font-size: 17px;
	font-weight: 800;
	font-family: inherit;
	cursor: pointer;
	transition: transform .1s, box-shadow .15s;
	box-shadow: 0 4px 14px rgba(47,59,76,.35);
}
.sam-submit:hover { box-shadow: 0 6px 20px rgba(47,59,76,.45); }
.sam-submit:active { transform: scale(.98); }
.sam-submit:disabled { opacity: .65; cursor: wait; }
.sam-privacy { font-size: 12px; color: var(--sam-muted); max-width: 640px; margin: 12px auto 0; }

/* موفقیت */
.sam-success {
	background: #fff;
	border: 1px solid var(--sam-border);
	border-top: 5px solid var(--sam-success);
	border-radius: var(--sam-radius);
	padding: 40px 24px;
	text-align: center;
}
.sam-success-icon {
	width: 70px;
	height: 70px;
	border-radius: 50%;
	background: #e6f4ea;
	color: var(--sam-success);
	font-size: 36px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 12px;
}
.sam-success h2 { margin: 0 0 10px; font-size: 21px; }
.sam-success-req { font-size: 17px; }
.sam-success-req strong { font-size: 20px; letter-spacing: 1px; }
.sam-success-hint { color: var(--sam-muted); font-size: 13px; }

@media (max-width: 720px) {
	.sam-grid > .sam-field { flex: 1 1 100%; }
	.sam-check-grid > .sam-pill { flex: 1 1 100%; }
	.sam-title { font-size: 18px; }
}
@media (max-width: 560px) {
	.sam-wizard-list > li { font-size: 10px; }
	.sam-w-dot { width: 26px; height: 26px; font-size: 12px; }
	.sam-wizard-list > li::before { top: 13px; }
	.sam-btn { padding: 10px 18px; font-size: 14px; }
	.sam-submit { padding: 13px 34px; font-size: 16px; }
}

/* ===== طراحی فشرده دسکتاپ (نسخه ۱٫۰٫۳) ===== */

/* سربرگ باریک */
.sam-head {
	display: flex;
	align-items: center;
	gap: 14px;
	text-align: right;
	padding: 14px 20px;
	margin-bottom: 14px;
}
.sam-logo-ring {
	margin: 0;
	width: 50px;
	height: 50px;
	font-size: 20px;
	flex-shrink: 0;
}
.sam-head-text { min-width: 0; }
.sam-head-text .sam-title { font-size: 19px; margin: 0; }
.sam-head-text .sam-sub { font-size: 14px; }
.sam-head-text .sam-sub-note { display: inline; font-size: 12px; margin: 0 6px 0 0; }

/* معرفی تاشو */
.sam-intro-details {
	background: var(--sam-card);
	border: 1px solid var(--sam-border);
	border-radius: 12px;
	margin-bottom: 12px;
}
.sam-intro-details > summary {
	cursor: pointer;
	padding: 9px 16px;
	font-weight: 700;
	font-size: 14px;
	list-style: none;
	display: flex;
	align-items: center;
}
.sam-intro-details > summary::-webkit-details-marker { display: none; }
.sam-intro-details > summary::after {
	content: "▾";
	margin-inline-start: auto;
	color: var(--sam-muted);
	transition: transform .2s;
}
.sam-intro-details[open] > summary::after { transform: rotate(180deg); }
.sam-intro-details .sam-intro {
	border: none;
	border-radius: 0;
	margin: 0;
	padding: 0 16px 12px;
	font-size: 14px;
}

/* نوار مراحل باریک: دایره و عنوان کنار هم */
.sam-wizard { padding: 10px 14px; margin-bottom: 12px; scroll-margin-top: 90px; }
.sam-wizard-list > li { flex-direction: row !important; justify-content: center; }
.sam-wizard-list > li::before { top: 50%; margin-top: -1px; }
.sam-w-dot { width: 26px; height: 26px; font-size: 12px; }
.sam-w-label { background: var(--sam-card); padding: 0 4px; position: relative; z-index: 1; }
.sam-w-progress { margin-top: 8px; height: 5px; }

/* چگالی فشرده در دسکتاپ */
@media (min-width: 721px) {
	.sam-notice { padding: 8px 14px; font-size: 13px; margin-bottom: 12px; }
	.sam-alert { padding: 12px 16px; margin-bottom: 12px; }
	.sam-card { padding: 14px 18px; margin-bottom: 12px; }
	.sam-card legend, .sam-card > legend { font-size: 15px; }
	.sam-field { margin-bottom: 10px; }
	.sam-field label, .sam-label { font-size: 13px; margin-bottom: 4px; }
	.sam-field input[type="text"],
	.sam-field input[type="email"],
	.sam-field textarea,
	.sam-field select { padding: 7px 10px; font-size: 14px; border-radius: 8px; }
	.sam-hint { font-size: 12px; margin-bottom: 8px; }
	.sam-pill { padding: 5px 12px; font-size: 13px; }
	.sam-check-grid > .sam-pill { flex: 1 1 calc(33.333% - 6px); }
	.sam-file-grid { display: flex !important; flex-wrap: wrap; gap: 0 14px; }
	.sam-file-grid > .sam-field { flex: 1 1 calc(50% - 7px); min-width: 0; }
	.sam-file-field input[type="file"] { padding: 7px 10px; font-size: 13px; }
	.sam-other { margin-top: 8px; }
	.sam-commit-text { padding: 10px 14px; font-size: 13px; margin-bottom: 12px; }
	.sam-agree { padding: 9px 12px; font-size: 13px; margin-top: 10px; }
	.sam-btn { padding: 9px 26px; font-size: 14px; }
	.sam-submit { padding: 12px 44px; font-size: 16px; }
	.sam-final-submit { margin-top: 12px; }
	.sam-privacy { margin-top: 8px; }
	.sam-field-error { font-size: 12px; margin-top: 4px; }
}

/* موبایل: سربرگ جمع‌وجور + فقط دایره‌های مراحل */
@media (max-width: 560px) {
	.sam-head { padding: 12px 14px; gap: 10px; }
	.sam-logo-ring { width: 42px; height: 42px; font-size: 17px; }
	.sam-head-text .sam-title { font-size: 16px; }
	.sam-head-text .sam-sub { font-size: 13px; }
	.sam-wizard-list > li { font-size: 0; gap: 0; }
	.sam-wizard-list > li .sam-w-label { display: none; }
}

/* ===== چیدمان دوستونه: توضیحات + فرم (نسخه ۱٫۰٫۴) ===== */
.sam-wrap { container-type: inline-size; }
.sam-layout { display: flex; flex-direction: column; }
.sam-main { order: 1; min-width: 0; }
.sam-side { order: 2; margin-top: 18px; min-width: 0; }

.sam-side-box {
	background: var(--sam-card);
	border: 1px solid var(--sam-border);
	border-radius: 12px;
	padding: 14px 16px;
	margin-bottom: 12px;
	font-size: 13.5px;
	line-height: 2;
}
.sam-side-box:last-child { margin-bottom: 0; }
.sam-side-box h3 {
	margin: 0 0 8px;
	font-size: 14.5px;
	color: var(--sam-navy);
	display: flex;
	align-items: center;
	gap: 8px;
}
.sam-side-ico {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	border-radius: 8px;
	background: var(--sam-navy);
	color: #fff;
	font-size: 13px;
	font-weight: 800;
	flex-shrink: 0;
}
.sam-side-box p { margin: 0 0 6px; }
.sam-side-box p:last-child { margin-bottom: 0; }
.sam-side-box ul {
	margin: 0;
	padding: 0;
	list-style: none !important;
}
.sam-side-box ul li {
	margin: 0;
	padding: 3px 0;
	display: flex;
	gap: 8px;
	align-items: flex-start;
}
.sam-side-box ul li::before,
.sam-side-box ul li::after {
	content: none !important;
	display: none !important;
}
.sam-side-box ul li::marker { content: none !important; }
.sam-side-box .tick { color: var(--sam-success); font-weight: 800; flex-shrink: 0; }
.sam-side-box .doc-dot { color: var(--sam-navy); font-weight: 800; flex-shrink: 0; }
.sam-side-box .sam-n {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 22px;
	height: 22px;
	border-radius: 50%;
	background: var(--sam-navy);
	color: #fff;
	font-size: 12px;
	font-weight: 800;
	flex-shrink: 0;
	margin-top: 5px;
}
.sam-side-attn { background: #fff8e6; border-color: #ecd9a8; }

/* دوستونه وقتی عرض کامپوننت کافی است (مستقل از سایز صفحه/ستون المنتور) */
@container (min-width: 900px) {
	.sam-layout { flex-direction: row; gap: 22px; align-items: flex-start; }
	.sam-side { order: 1; flex: 0 0 350px; margin-top: 0; position: sticky; top: 90px; }
	.sam-main { order: 2; flex: 1 1 auto; }
}

/* ===== نسخه ۱٫۰٫۵: طراحی زنده‌تر + سایدبار هم‌قد صفحه ===== */
.sam-wrap {
	--sam-gold: #c9a227;
	--sam-shadow: 0 10px 28px rgba(22, 41, 74, .10);
}

/* سربرگ: گرادیان عمیق + هاله طلایی + نوار طلایی پایین */
.sam-head {
	background:
		radial-gradient(520px 130px at 12% -30px, rgba(201, 162, 39, .30), transparent 60%),
		radial-gradient(420px 120px at 88% 140%, rgba(255, 255, 255, .10), transparent 60%),
		linear-gradient(135deg, #101f38 0%, var(--sam-navy) 55%, #2f5b94 100%);
	border-bottom: 3px solid var(--sam-gold);
	box-shadow: var(--sam-shadow);
}
.sam-logo-ring {
	border: 2px solid var(--sam-gold);
	box-shadow: 0 0 0 4px rgba(201, 162, 39, .18);
}

/* ویزارد: دایره فعال گرادیانی با هاله، تیک سبز گرادیانی، نوار پیشرفت طلایی */
.sam-wizard { box-shadow: var(--sam-shadow); }
.sam-wizard-list > li.is-active .sam-w-dot {
	background: linear-gradient(135deg, #16294a, #2f5b94);
	color: #fff;
	box-shadow: 0 0 0 4px rgba(47, 91, 148, .18), 0 4px 10px rgba(22, 41, 74, .35);
}
.sam-wizard-list > li.is-done .sam-w-dot {
	background: linear-gradient(135deg, #1c7a33, #34a853);
	color: #fff;
}
.sam-wizard-list > li.is-done::before { background: #34a853 !important; }
.sam-w-progress { background: #e7ecf3; }
.sam-w-progress > span { background: linear-gradient(90deg, var(--sam-gold), #e8cf7a); }

/* کارت‌ها: سایه نرم + گرادیان خفیف + شماره لجند گرادیانی */
.sam-card {
	box-shadow: var(--sam-shadow);
	background: linear-gradient(180deg, #ffffff 0%, #fafbfe 100%);
}
.sam-legend-num {
	background: linear-gradient(135deg, #16294a, #2f5b94);
	color: #fff;
	box-shadow: 0 3px 8px rgba(22, 41, 74, .35);
}

/* فوکوس طلایی روی ورودی‌ها */
.sam-field input:focus, .sam-field textarea:focus, .sam-field select:focus {
	border-color: #2f5b94;
	box-shadow: 0 0 0 3px rgba(201, 162, 39, .28);
	outline: none;
}

/* گزینه‌ها: هاور + حالت انتخاب گرادیانی */
.sam-pill { transition: border-color .15s, background .15s, box-shadow .15s, color .15s; }
.sam-pill:hover { border-color: #2f5b94; }
.sam-pill:has(input:checked), .sam-pill.is-checked {
	background: linear-gradient(135deg, #16294a, #2f5b94);
	border-color: #16294a;
	color: #fff;
	box-shadow: 0 4px 12px rgba(22, 41, 74, .30);
}

/* دکمه‌ها: گرادیان سرمه‌ای + لیفت در هاور؛ «قبلی» خاکستری روشن */
.sam-submit, .sam-btn.sam-next {
	background: linear-gradient(135deg, #16294a 0%, #2f5b94 100%);
	box-shadow: 0 6px 16px rgba(22, 41, 74, .35);
	transition: transform .15s, box-shadow .15s, filter .15s;
}
.sam-submit:hover, .sam-btn.sam-next:hover:not(:disabled) {
	transform: translateY(-1px);
	filter: brightness(1.1);
	box-shadow: 0 9px 20px rgba(22, 41, 74, .40);
}
.sam-btn.sam-prev {
	background: #eef1f6;
	color: var(--sam-navy);
	border: 1px solid #d5dbe5;
	box-shadow: none;
}
.sam-btn.sam-prev:hover { background: #e0e6ef; }
.sam-step-count {
	background: #eef1f6;
	border-radius: 20px;
	padding: 4px 14px;
	font-weight: 700;
	color: var(--sam-navy);
}

/* آپلودها: کادر نقطه‌چین شبیه دراپ‌زون */
.sam-file-field input[type="file"] {
	border: 1.5px dashed #9fb0c9;
	border-radius: 10px;
	background: #f4f7fb;
	padding: 10px;
	width: 100%;
	box-sizing: border-box;
	transition: border-color .15s, background .15s;
}
.sam-file-field input[type="file"]:hover { border-color: #2f5b94; background: #eef3fa; }

/* تعهدنامه و تیک تأیید */
.sam-commit-text {
	background: linear-gradient(180deg, #fffdf4, #faf3df);
	border-color: #e3d3a6;
}
.sam-agree {
	background: #f0f4fa;
	border: 1px solid #d5dbe5;
	border-radius: 10px;
	padding: 10px 14px;
}

/* سایدبار: فشرده‌تر + نوار رنگی + آیکون رنگی هر باکس */
.sam-side-box {
	padding: 11px 14px;
	font-size: 13px;
	line-height: 1.9;
	margin-bottom: 10px;
	box-shadow: 0 6px 18px rgba(22, 41, 74, .08);
	border-top: 3px solid var(--sam-accent, var(--sam-navy));
}
.sam-side-box h3 { font-size: 14px; margin-bottom: 6px; }
.sam-side-box:nth-child(1) { --sam-accent: #2f5b94; }
.sam-side-box:nth-child(2) { --sam-accent: #1e7e34; }
.sam-side-box:nth-child(3) { --sam-accent: #7c5cd6; }
.sam-side-box:nth-child(4) { --sam-accent: #0f766e; }
.sam-side-box:nth-child(5) { --sam-accent: #b7791f; }
.sam-side-ico {
	background: var(--sam-accent, var(--sam-navy));
	box-shadow: 0 3px 8px rgba(22, 41, 74, .25);
}

/* فهرست حوزه‌های عضویت: دوستونه برای صرفه‌جویی در ارتفاع */
.sam-tick { display: grid; grid-template-columns: 1fr 1fr; gap: 0 10px; }
.sam-tick li { font-size: 12.5px; }
@container (max-width: 520px) {
	.sam-tick { grid-template-columns: 1fr; }
}

/* سایدبار هرگز از قد صفحه بلندتر نمی‌شود؛ اضافه‌اش اسکرول داخلی ظریف می‌خورد */
@container (min-width: 900px) {
	.sam-side {
		top: 100px;
		max-height: calc(100vh - 120px);
		max-height: calc(100dvh - 120px);
		overflow-y: auto;
		overscroll-behavior: contain;
		scrollbar-width: thin;
		scrollbar-color: #b9c4d4 transparent;
	}
	.sam-side::-webkit-scrollbar { width: 5px; }
	.sam-side::-webkit-scrollbar-track { background: transparent; }
	.sam-side::-webkit-scrollbar-thumb { background: #b9c4d4; border-radius: 4px; }
}

/* ===== نسخه ۱٫۰٫۶: تیتر خوانا + نوار توجه زیر فرم ===== */
.sam-org {
	margin: 0;
	font-size: 13px;
	font-weight: 700;
	color: #e8cf7a;
}
.sam-head-text .sam-title {
	margin: 2px 0 4px;
	font-size: clamp(22px, 3.2vw, 30px);
	font-weight: 800;
	line-height: 1.5;
	color: #fff;
	text-shadow: 0 2px 10px rgba(0, 0, 0, .4);
}
.sam-head-text .sam-title::after {
	content: "";
	display: block;
	width: 72px;
	height: 4px;
	margin-top: 6px;
	border-radius: 4px;
	background: linear-gradient(90deg, var(--sam-gold), #e8cf7a);
}
.sam-head-text .sam-sub {
	margin: 0;
	font-size: 14px;
	color: #dbe6f5;
}

/* نوار «توجه مهم» زیر فرم */
.sam-attn-bar {
	display: flex;
	gap: 12px;
	align-items: flex-start;
	background: linear-gradient(180deg, #fff8e6, #fcefd0);
	border: 1.5px solid #e0c37a;
	border-inline-start: 5px solid #b7791f;
	border-radius: 12px;
	padding: 12px 16px;
	margin-top: 14px;
	font-size: 13.5px;
	line-height: 2;
	color: #5a4a10;
	box-shadow: 0 6px 18px rgba(183, 121, 31, .16);
}
.sam-attn-bar p { margin: 0; }
.sam-attn-ico {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 26px;
	height: 26px;
	border-radius: 50%;
	background: linear-gradient(135deg, #b7791f, #d9a83f);
	color: #fff;
	font-weight: 800;
	font-size: 15px;
	flex-shrink: 0;
	margin-top: 4px;
	box-shadow: 0 3px 8px rgba(183, 121, 31, .4);
}

/* ===== نسخه ۱٫۰٫۷: عرض متعادل + استپر مدرن + تقویم شمسی + جابه‌جایی باکس‌ها ===== */

/* عرض فرم: ۱۰۰٪ عرض کانتینر میزبان */
.sam-wrap { width: 100%; max-width: none; margin-left: 0; margin-right: 0; box-sizing: border-box; }
.sam-main { flex: 1 1 auto; width: 100%; min-width: 0; }
@container (min-width: 900px) {
	.sam-side { flex: 0 0 318px; }
}

/* «توجه مهم» حالا بالای مراحل است */
.sam-main > .sam-attn-bar { margin: 0 0 14px; }

/* باکس «چه مجموعه‌هایی...» زیر فرم */
.sam-below-box { margin-top: 14px; }
.sam-below-box .sam-side-box {
	--sam-accent: #1e7e34;
	padding: 14px 18px;
	font-size: 13.5px;
	margin-bottom: 0;
}
.sam-below-box .sam-side-box h3 { font-size: 15px; }
.sam-below-box .sam-tick { grid-template-columns: repeat(auto-fit, minmax(215px, 1fr)); }

/* ---- استپر مدرن: نوار یکپارچه با سگمنت فعال ---- */
.sam-wizard {
	background: #fff;
	border: 1px solid #e5eaf2;
	border-radius: 16px;
	padding: 6px 6px 10px;
	box-shadow: 0 6px 20px rgba(22, 41, 74, .08);
}
.sam-wizard-list {
	gap: 4px !important;
	background: #f1f4f9;
	border-radius: 12px;
	padding: 4px !important;
}
.sam-wizard-list > li {
	flex-direction: row !important;
	justify-content: center;
	gap: 7px !important;
	padding: 7px 6px !important;
	border-radius: 9px;
	font-size: 11.5px !important;
	color: #7b8798 !important;
	transition: background .2s ease, color .2s ease, box-shadow .2s ease;
}
.sam-wizard-list > li::before { display: none !important; content: none !important; }
.sam-wizard-list > li.is-open { cursor: pointer; }
.sam-w-dot {
	width: 23px;
	height: 23px;
	font-size: 11px;
	background: #dde4ee;
	color: #5d6b7e;
	transition: background .2s ease, color .2s ease, box-shadow .2s ease;
}
.sam-wizard-list > li.is-active {
	background: #fff;
	box-shadow: 0 3px 10px rgba(22, 41, 74, .14);
	color: var(--sam-navy) !important;
}
.sam-wizard-list > li.is-active .sam-w-dot {
	background: linear-gradient(135deg, #16294a, #2f5b94);
	color: #fff;
	box-shadow: 0 0 0 3px rgba(47, 91, 148, .16);
}
.sam-wizard-list > li.is-active .sam-w-label { font-weight: 800; }
.sam-wizard-list > li.is-done { color: #1e7e34 !important; }
.sam-wizard-list > li.is-done .sam-w-dot {
	background: linear-gradient(135deg, #1c7a33, #34a853);
	color: #fff;
	font-size: 0;
}
.sam-wizard-list > li.is-done .sam-w-dot::before {
	content: "✓";
	font-size: 12.5px;
	font-weight: 800;
	line-height: 1;
}
.sam-w-label { background: none !important; padding: 0 !important; }
.sam-w-progress { height: 4px; margin: 9px 2px 0; background: #e8edf4; }
.sam-w-progress > span { background: linear-gradient(90deg, #1c7a33, #2f5b94 55%, var(--sam-gold)); }

/* ---- تقویم شمسی ---- */
.sam-date-field { position: relative; }
.sam-date-wrap { position: relative; display: flex; align-items: stretch; gap: 6px; }
.sam-date-wrap .sam-date-input { flex: 1 1 auto; min-width: 0; cursor: pointer; background: #fff; }
.sam-date-btn {
	flex: 0 0 auto;
	width: 42px;
	border: 1px solid #cfd8e4;
	border-radius: 10px;
	background: #f4f7fb;
	color: var(--sam-navy);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	transition: background .15s, border-color .15s, color .15s;
}
.sam-date-btn:hover { background: #e9f0f9; border-color: #2f5b94; }
.sam-date-pop {
	position: absolute;
	z-index: 60;
	inset-inline-start: 0;
	top: calc(100% + 6px);
	width: 300px;
	max-width: calc(100vw - 36px);
	background: #fff;
	border: 1px solid #dfe6f0;
	border-radius: 14px;
	box-shadow: 0 18px 44px rgba(22, 41, 74, .20);
	padding: 10px;
	animation: samDpIn .14s ease-out;
}
@keyframes samDpIn {
	from { opacity: 0; transform: translateY(-4px); }
	to   { opacity: 1; transform: translateY(0); }
}
.sam-dp-head { display: flex; align-items: center; gap: 5px; margin-bottom: 7px; }
.sam-dp-sel {
	flex: 1 1 auto;
	min-width: 0;
	height: 32px;
	border: 1px solid #dbe2ec;
	border-radius: 8px;
	background: #f7f9fc;
	color: #26374f;
	font-size: 12px;
	padding: 0 4px;
}
.sam-dp-nav, .sam-dp-close {
	flex: 0 0 auto;
	width: 30px;
	height: 30px;
	border: 1px solid #dbe2ec;
	border-radius: 8px;
	background: #fff;
	color: #26374f;
	font-size: 16px;
	line-height: 1;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}
.sam-dp-nav:hover, .sam-dp-close:hover { background: #eef3fa; border-color: #2f5b94; }
.sam-dp-close { color: #8a96a8; }
.sam-dp-grid { display: grid; grid-template-columns: repeat(7, 1fr); gap: 2px; }
.sam-dp-wd {
	text-align: center;
	font-size: 10.5px;
	font-weight: 700;
	color: #8a96a8;
	padding: 3px 0;
}
.sam-dp-empty { visibility: hidden; }
.sam-dp-day {
	height: 33px;
	border: 0;
	border-radius: 9px;
	background: transparent;
	color: #26374f;
	font-size: 12.5px;
	font-weight: 600;
	cursor: pointer;
	transition: background .12s, color .12s;
}
.sam-dp-day:hover { background: #e9f0f9; }
.sam-dp-day.is-today { box-shadow: inset 0 0 0 1.5px var(--sam-gold); }
.sam-dp-day.is-sel {
	background: linear-gradient(135deg, #16294a, #2f5b94);
	color: #fff;
	box-shadow: 0 3px 8px rgba(22, 41, 74, .3);
}
.sam-dp-foot {
	display: flex;
	gap: 6px;
	margin-top: 8px;
	border-top: 1px solid #eef1f6;
	padding-top: 8px;
}
.sam-dp-foot button {
	flex: 1 1 auto;
	height: 30px;
	border: 1px solid #dbe2ec;
	border-radius: 8px;
	background: #f7f9fc;
	color: #26374f;
	font-size: 11.5px;
	font-weight: 700;
	cursor: pointer;
}
.sam-dp-foot button:hover { background: #eef3fa; border-color: #2f5b94; }

/* موبایل: استپر جمع‌وجور */
@media (max-width: 560px) {
	.sam-wizard-list > li { padding: 6px 4px !important; }
}

/* ===== نسخه ۱٫۰٫۹: مقاوم‌سازی تقویم در برابر استایل دکمه‌های قالب/المنتور ===== */
.sam-wrap .sam-date-btn,
.sam-wrap .sam-date-pop button,
.sam-wrap .sam-date-pop select {
	-webkit-appearance: none !important;
	appearance: none !important;
	text-transform: none !important;
	letter-spacing: normal !important;
	text-shadow: none !important;
	text-decoration: none !important;
	min-width: 0 !important;
	min-height: 0 !important;
	margin: 0 !important;
	box-shadow: none !important;
	transform: none !important;
	float: none !important;
	font-family: inherit !important;
	box-sizing: border-box !important;
}

/* دکمه تقویم کنار فیلد */
.sam-wrap .sam-date-btn {
	width: 44px !important;
	padding: 0 !important;
	background: #f1f5fb !important;
	border: 1px solid #cfd8e4 !important;
	border-radius: 10px !important;
	color: #16294a !important;
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	overflow: hidden;
	transition: background .15s, border-color .15s;
}
.sam-wrap .sam-date-btn:hover { background: #e6eef9 !important; border-color: #2f5b94 !important; color: #16294a !important; }
.sam-wrap .sam-date-btn svg { width: 18px; height: 18px; display: block; }

/* پنل تقویم */
.sam-wrap .sam-date-pop { width: 340px; max-width: calc(100vw - 28px); }
.sam-wrap .sam-date-pop .sam-dp-head { gap: 6px; }

.sam-wrap .sam-date-pop .sam-dp-sel {
	flex: 1 1 0;
	width: auto !important;
	height: 34px !important;
	padding: 0 20px 0 8px !important;
	border: 1px solid #d5dde8 !important;
	border-radius: 9px !important;
	background-color: #f7f9fc !important;
	background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath fill='%2326374f' d='M0 0h10L5 6z'/%3E%3C/svg%3E") !important;
	background-repeat: no-repeat !important;
	background-position: left 8px center !important;
	background-size: 9px 6px !important;
	color: #26374f !important;
	font-size: 12.5px !important;
	font-weight: 600 !important;
	line-height: normal !important;
	cursor: pointer;
}

.sam-wrap .sam-date-pop .sam-dp-nav,
.sam-wrap .sam-date-pop .sam-dp-close {
	flex: 0 0 auto;
	width: 32px !important;
	height: 32px !important;
	padding: 0 !important;
	border: 1px solid #d5dde8 !important;
	border-radius: 9px !important;
	background: #fff !important;
	color: #26374f !important;
	font-size: 17px !important;
	font-weight: 600 !important;
	line-height: 1 !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	overflow: hidden !important;
	cursor: pointer;
	transition: background .15s, border-color .15s;
}
.sam-wrap .sam-date-pop .sam-dp-nav:hover,
.sam-wrap .sam-date-pop .sam-dp-close:hover { background: #eef3fa !important; border-color: #2f5b94 !important; }

.sam-wrap .sam-date-pop .sam-dp-day {
	height: 33px !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 9px !important;
	background: transparent !important;
	background-image: none !important;
	color: #26374f !important;
	font-size: 12.5px !important;
	font-weight: 600 !important;
	line-height: 1 !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	cursor: pointer;
	transition: background .12s, color .12s;
}
.sam-wrap .sam-date-pop .sam-dp-day:hover { background: #e9f0f9 !important; color: #16294a !important; }
.sam-wrap .sam-date-pop .sam-dp-day.is-today { box-shadow: inset 0 0 0 1.5px #c9a227 !important; }
.sam-wrap .sam-date-pop .sam-dp-day.is-sel {
	background: linear-gradient(135deg, #16294a, #2f5b94) !important;
	color: #fff !important;
	box-shadow: 0 3px 8px rgba(22, 41, 74, .30) !important;
}

.sam-wrap .sam-date-pop .sam-dp-foot button {
	flex: 1 1 auto;
	height: 32px !important;
	padding: 0 8px !important;
	border: 1px solid #d5dde8 !important;
	border-radius: 9px !important;
	background: #f7f9fc !important;
	color: #26374f !important;
	font-size: 11.5px !important;
	font-weight: 700 !important;
	line-height: 1 !important;
	cursor: pointer;
	transition: background .15s, border-color .15s;
}
.sam-wrap .sam-date-pop .sam-dp-foot button:hover { background: #eef3fa !important; border-color: #2f5b94 !important; color: #16294a !important; }
.sam-wrap .sam-date-pop .sam-dp-foot .sam-dp-close { flex: 0 0 34px; font-size: 16px !important; }

/* در کانتینر باریک، ستون‌ها یکی می‌شوند (مستقل از عرض پنجره) */
@container (max-width: 640px) {
	.sam-grid > .sam-field { flex: 1 1 100% !important; }
	.sam-check-grid > .sam-pill { flex: 1 1 100% !important; }
	.sam-file-grid > .sam-field { flex: 1 1 100% !important; }
}
.sam-date-wrap .sam-date-input { min-height: 38px; }
