/* ════════════════════════════════════════════════════════════════
   کامپوننت‌های قابل استفاده مجدد
   ════════════════════════════════════════════════════════════════ */

/* ───── Buttons ───── */
.ad-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: var(--ad-sp-2);
	padding: 12px 18px;
	font-family: inherit;
	font-size: var(--ad-fs-md);
	font-weight: 600;
	color: var(--ad-text);
	background: var(--ad-surface);
	border: 1px solid var(--ad-border);
	border-radius: var(--ad-r-md);
	cursor: pointer;
	transition: all var(--ad-dur-fast) var(--ad-easing);
	min-height: 46px;
	text-decoration: none;
	user-select: none;
}
.ad-btn:active { transform: scale(.98); }
.ad-btn:disabled, .ad-btn[disabled] {
	opacity: .55;
	cursor: not-allowed;
	transform: none;
}

.ad-btn--primary {
	background: var(--ad-primary);
	color: #fff;
	border-color: var(--ad-primary);
}
.ad-btn--primary:hover:not(:disabled) {
	background: var(--ad-primary-dark);
	border-color: var(--ad-primary-dark);
	color: #fff;
}

.ad-btn--secondary {
	background: var(--ad-secondary);
	color: #1F4D3A;
	border-color: var(--ad-secondary);
}
.ad-btn--secondary:hover:not(:disabled) {
	background: var(--ad-secondary-dark);
}

.ad-btn--ghost {
	background: transparent;
	border-color: transparent;
	color: var(--ad-primary);
}
.ad-btn--ghost:hover:not(:disabled) {
	background: var(--ad-primary-tint);
}

.ad-btn--outline {
	background: transparent;
	color: var(--ad-primary);
	border-color: var(--ad-primary);
}
.ad-btn--outline:hover:not(:disabled) {
	background: var(--ad-primary-tint);
}

.ad-btn--danger {
	background: var(--ad-danger);
	color: #fff;
	border-color: var(--ad-danger);
}
.ad-btn--danger-outline {
	background: transparent;
	color: var(--ad-danger);
	border-color: var(--ad-danger);
}
.ad-btn--danger-outline:hover:not(:disabled) {
	background: var(--ad-danger-tint);
}

.ad-btn--block { width: 100%; }
.ad-btn--lg    { padding: 14px 24px; font-size: var(--ad-fs-lg); min-height: 52px; }
.ad-btn--sm    { padding: 8px 12px; font-size: var(--ad-fs-sm); min-height: 36px; }
.ad-btn--icon  { width: 40px; height: 40px; padding: 0; min-height: 40px; }

.ad-btn--loading {
	pointer-events: none;
	position: relative;
}
.ad-btn--loading > * { opacity: .25; }
.ad-btn--loading::after {
	content: '';
	position: absolute;
	width: 18px;
	height: 18px;
	border: 2px solid currentColor;
	border-top-color: transparent;
	border-radius: 50%;
	animation: ad-spin 0.7s linear infinite;
}

/* ───── Cards ───── */
.ad-card {
	background: var(--ad-surface);
	border: 1px solid var(--ad-border-soft);
	border-radius: var(--ad-r-lg);
	padding: var(--ad-sp-4);
	transition: border-color var(--ad-dur-fast) var(--ad-easing);
}
.ad-card:hover { border-color: var(--ad-border); }

.ad-card--flat {
	background: var(--ad-surface);
	border: 1px solid var(--ad-border-soft);
	box-shadow: none;
}

.ad-card--accent {
	border: 1px solid var(--ad-primary-tint);
	background: linear-gradient(135deg, var(--ad-primary-tint-2) 0%, #fff 100%);
}

.ad-card--gradient {
	background: linear-gradient(135deg, var(--ad-primary) 0%, var(--ad-primary-dark) 100%);
	color: #fff;
	border: 0;
}

.ad-card__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--ad-sp-3);
	margin-bottom: var(--ad-sp-3);
}
.ad-card__title {
	font-size: var(--ad-fs-md);
	font-weight: 600;
	margin: 0;
	color: inherit;
}
.ad-card__subtitle {
	font-size: var(--ad-fs-sm);
	color: var(--ad-text-3);
	margin: 0;
}

/* ───── Sections ───── */
.ad-section {
	margin-bottom: var(--ad-sp-6);
}
.ad-section__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: var(--ad-sp-3);
	gap: var(--ad-sp-3);
}
.ad-section__title {
	font-size: var(--ad-fs-md);
	font-weight: 600;
	margin: 0;
	color: var(--ad-text);
}
.ad-section__action {
	font-size: 12px;
	color: var(--ad-text-3);
	background: transparent;
	border: 0;
	cursor: pointer;
	padding: 4px 6px;
	display: inline-flex;
	align-items: center;
	gap: 3px;
	text-decoration: none;
	transition: color var(--ad-dur-fast) var(--ad-easing);
}
.ad-section__action:hover { color: var(--ad-primary); background: transparent; }
.ad-section__action:visited { color: var(--ad-text-3); }
.ad-section__action svg { opacity: 0.7; }

/* ───── Forms ───── */
.ad-field {
	margin-bottom: var(--ad-sp-4);
}
.ad-field__label {
	display: block;
	font-size: var(--ad-fs-sm);
	color: var(--ad-text-2);
	margin-bottom: 6px;
	font-weight: 500;
}
.ad-input, .ad-textarea, .ad-select {
	width: 100%;
	padding: 12px 14px;
	font-family: inherit;
	font-size: var(--ad-fs-md);
	color: var(--ad-text);
	background: var(--ad-surface);
	border: 1px solid var(--ad-border);
	border-radius: var(--ad-r-md);
	transition: border-color var(--ad-dur-fast) var(--ad-easing),
	            background var(--ad-dur-fast) var(--ad-easing);
	min-height: 46px;
	outline: none;
}
.ad-input:focus, .ad-textarea:focus, .ad-select:focus {
	border-color: var(--ad-primary);
	background: var(--ad-primary-tint-2);
}
.ad-input:disabled { background: var(--ad-bg-2); color: var(--ad-text-muted); }
.ad-input.is-error { border-color: var(--ad-danger); }
.ad-input::placeholder, .ad-textarea::placeholder { color: var(--ad-text-faint); }

.ad-textarea {
	min-height: 96px;
	resize: vertical;
	line-height: 1.6;
}

.ad-input--mobile {
	direction: ltr;
	text-align: right;
	letter-spacing: 1px;
	font-feature-settings: "tnum";
	font-variant-numeric: tabular-nums;
}

.ad-field__hint {
	font-size: var(--ad-fs-xs);
	color: var(--ad-text-3);
	margin-top: 6px;
}
.ad-field__error {
	font-size: var(--ad-fs-xs);
	color: var(--ad-danger);
	margin-top: 6px;
	display: none;
}
.ad-field.is-error .ad-field__error { display: block; }
.ad-field.is-error .ad-input        { border-color: var(--ad-danger); }

/* ───── OTP boxes ───── */
.ad-otp {
	display: flex;
	gap: var(--ad-sp-2);
	direction: ltr;
	justify-content: center;
	margin: var(--ad-sp-4) 0;
}
.ad-otp__digit {
	width: 48px;
	height: 56px;
	font-size: 22px;
	font-weight: 600;
	text-align: center;
	color: var(--ad-text);
	background: var(--ad-surface);
	border: 1.5px solid var(--ad-border);
	border-radius: var(--ad-r-md);
	transition: all var(--ad-dur-fast) var(--ad-easing);
	font-feature-settings: "tnum";
	outline: none;
}
.ad-otp__digit:focus {
	border-color: var(--ad-primary);
	background: var(--ad-primary-tint-2);
}
.ad-otp__digit.is-filled {
	border-color: var(--ad-primary);
	background: var(--ad-primary-tint);
}

/* ───── Badges ───── */
.ad-badge {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	padding: 3px 10px;
	font-size: var(--ad-fs-xs);
	font-weight: 600;
	border-radius: var(--ad-r-pill);
	background: var(--ad-bg-2);
	color: var(--ad-text-2);
	border: 1px solid var(--ad-border-soft);
	white-space: nowrap;
}
.ad-badge--primary  { background: var(--ad-primary-tint);   color: var(--ad-primary-dark);   border-color: transparent; }
.ad-badge--secondary{ background: var(--ad-secondary-tint); color: #1F4D3A; border-color: transparent; }
.ad-badge--success  { background: var(--ad-success-tint);   color: #047857; border-color: transparent; }
.ad-badge--warning  { background: var(--ad-warning-tint);   color: #92400E; border-color: transparent; }
.ad-badge--danger   { background: var(--ad-danger-tint);    color: #B91C1C; border-color: transparent; }
.ad-badge--info     { background: var(--ad-info-tint);      color: #1E40AF; border-color: transparent; }

.ad-badge__dot {
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: currentColor;
}

/* ───── Avatar ───── */
.ad-avatar {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: var(--ad-r-pill);
	background: var(--ad-primary-tint);
	color: var(--ad-primary-dark);
	font-weight: 600;
	overflow: hidden;
	flex-shrink: 0;
}
.ad-avatar img { width: 100%; height: 100%; object-fit: cover; }
.ad-avatar--xs { width: 28px; height: 28px; font-size: 11px; }
.ad-avatar--sm { width: 36px; height: 36px; font-size: 13px; }
.ad-avatar--md { width: 48px; height: 48px; font-size: 16px; }
.ad-avatar--lg { width: 64px; height: 64px; font-size: 20px; }
.ad-avatar--xl { width: 96px; height: 96px; font-size: 28px; }

/* ───── Empty state ───── */
.ad-empty {
	text-align: center;
	padding: var(--ad-sp-8) var(--ad-sp-4);
	color: var(--ad-text-3);
}
.ad-empty__icon {
	width: 56px;
	height: 56px;
	margin: 0 auto var(--ad-sp-3);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: var(--ad-bg-2);
	border-radius: var(--ad-r-pill);
	color: var(--ad-text-muted);
}
.ad-empty__title {
	font-size: var(--ad-fs-md);
	font-weight: 600;
	color: var(--ad-text);
	margin: 0 0 6px;
}
.ad-empty__text {
	font-size: var(--ad-fs-sm);
	color: var(--ad-text-3);
	margin: 0;
}

/* ───── Modal / Bottom sheet ───── */
.ad-sheet-overlay {
	position: fixed;
	inset: 0;
	background: rgba(30, 58, 95, 0.45);
	z-index: 1000;
	display: flex;
	align-items: flex-end;
	justify-content: center;
	opacity: 0;
	transition: opacity var(--ad-dur-base) var(--ad-easing);
	padding: 0;
}
.ad-sheet-overlay.is-open { opacity: 1; }

.ad-sheet {
	width: 100%;
	max-width: var(--ad-shell-max);
	background: var(--ad-surface);
	border-radius: var(--ad-r-2xl) var(--ad-r-2xl) 0 0;
	transform: translateY(100%);
	transition: transform var(--ad-dur-slow) var(--ad-easing);
	max-height: 90vh;
	display: flex;
	flex-direction: column;
	overflow: hidden;
}
.ad-sheet-overlay.is-open .ad-sheet { transform: translateY(0); }

.ad-sheet__handle {
	width: 40px;
	height: 4px;
	background: var(--ad-border-strong);
	border-radius: 2px;
	margin: 8px auto;
	flex-shrink: 0;
}
.ad-sheet__header {
	padding: var(--ad-sp-3) var(--ad-sp-4) var(--ad-sp-3);
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--ad-sp-3);
	border-bottom: 1px solid var(--ad-border-soft);
	flex-shrink: 0;
}
.ad-sheet__title {
	font-size: 15px;
	font-weight: 600;
	margin: 0;
	color: var(--ad-text);
	display: flex;
	align-items: center;
	gap: 6px;
	flex-wrap: wrap;
	min-width: 0;
	line-height: 1.4;
}
.ad-sheet__title-main {
	font-weight: 700;
}
.ad-sheet__title-sep {
	color: var(--ad-text-3);
	font-weight: 400;
}
.ad-sheet__title-step {
	color: var(--ad-primary);
	font-weight: 700;
}
.ad-sheet__close {
	width: 36px;
	height: 36px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: transparent;
	color: var(--ad-text-2);
	border: 0;
	border-radius: var(--ad-r-md);
}
.ad-sheet__close:hover { background: var(--ad-bg-2); }
.ad-sheet__body {
	padding: var(--ad-sp-4);
	overflow-y: auto;
	flex: 1;
}
/* حالت compact: ارتفاع sheet با محتوا جمع می‌شود و محتوا از بالا می‌نشیند */
.ad-sheet--compact {
	height: auto !important;
}
.ad-sheet--compact .ad-sheet__body {
	flex: 0 0 auto;
}
.ad-sheet__footer {
	padding: var(--ad-sp-3) var(--ad-sp-4);
	border-top: 1px solid var(--ad-border-soft);
	background: var(--ad-surface-alt);
	flex-shrink: 0;
}

/* ───── Toast ───── */
.ad-toasts {
	position: fixed;
	top: 16px;
	left: 50%;
	transform: translateX(-50%);
	z-index: 2000;
	width: 100%;
	max-width: 380px;
	padding: 0 var(--ad-sp-3);
	display: flex;
	flex-direction: column;
	gap: var(--ad-sp-2);
	pointer-events: none;
}
.ad-toast {
	background: var(--ad-text);
	color: #fff;
	padding: 12px 16px;
	border-radius: var(--ad-r-md);
	font-size: var(--ad-fs-sm);
	font-weight: 500;
	display: flex;
	align-items: center;
	gap: var(--ad-sp-2);
	transform: translateY(-12px);
	opacity: 0;
	transition: all var(--ad-dur-base) var(--ad-easing);
	pointer-events: auto;
	border: 1px solid rgba(255,255,255,.08);
}
.ad-toast.is-shown { transform: translateY(0); opacity: 1; }
.ad-toast--success { background: var(--ad-success); }
.ad-toast--danger  { background: var(--ad-danger); }
.ad-toast--warning { background: var(--ad-warning); color: #2D1F00; }

/* ───── Skeleton ───── */
.ad-sk {
	background: linear-gradient(90deg, var(--ad-bg-2) 0%, var(--ad-border-soft) 50%, var(--ad-bg-2) 100%);
	background-size: 200% 100%;
	animation: ad-sk-shimmer 1.4s infinite linear;
	border-radius: var(--ad-r-sm);
}
@keyframes ad-sk-shimmer {
	0% { background-position: 200% 0; }
	100% { background-position: -200% 0; }
}

/* ───── Dividers ───── */
.ad-divider {
	height: 1px;
	background: var(--ad-border-soft);
	margin: var(--ad-sp-4) 0;
	border: 0;
}

/* ───── Tabs ───── */
.ad-tabs {
	display: flex;
	background: var(--ad-bg-2);
	border-radius: var(--ad-r-md);
	padding: 4px;
	gap: 2px;
	margin-bottom: var(--ad-sp-4);
}
.ad-tabs__item {
	flex: 1;
	padding: 8px 12px;
	font-size: var(--ad-fs-sm);
	font-weight: 500;
	color: var(--ad-text-2);
	background: transparent;
	border: 0;
	border-radius: var(--ad-r-sm);
	cursor: pointer;
	transition: all var(--ad-dur-fast) var(--ad-easing);
	text-align: center;
}
.ad-tabs__item.is-active {
	background: var(--ad-surface);
	color: var(--ad-primary);
	font-weight: 600;
}

/* ───── Chip row (horizontal scroll) ───── */
.ad-chips {
	display: flex;
	gap: var(--ad-sp-2);
	overflow-x: auto;
	padding: 4px var(--ad-sp-4);
	margin: 0 calc(var(--ad-sp-4) * -1);
	-ms-overflow-style: none;
	scrollbar-width: none;
}
.ad-chips::-webkit-scrollbar { display: none; }
.ad-chip {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 8px 14px;
	font-size: var(--ad-fs-sm);
	font-weight: 500;
	color: var(--ad-text-2);
	background: var(--ad-surface);
	border: 1px solid var(--ad-border);
	border-radius: var(--ad-r-pill);
	cursor: pointer;
	transition: all var(--ad-dur-fast) var(--ad-easing);
	white-space: nowrap;
	flex-shrink: 0;
}
.ad-chip:hover { border-color: var(--ad-primary-light); color: var(--ad-primary); }
.ad-chip.is-active {
	background: var(--ad-primary);
	color: #fff;
	border-color: var(--ad-primary);
}

/* ───── Stat card ───── */
.ad-stat {
	background: var(--ad-surface);
	border: 1px solid var(--ad-border-soft);
	border-radius: var(--ad-r-lg);
	padding: var(--ad-sp-3);
	display: flex;
	flex-direction: column;
	gap: 4px;
}
.ad-stat__icon {
	width: 36px;
	height: 36px;
	border-radius: var(--ad-r-md);
	background: var(--ad-primary-tint);
	color: var(--ad-primary);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-bottom: var(--ad-sp-1);
}
.ad-stat__icon--secondary { background: var(--ad-secondary-tint); color: var(--ad-secondary-dark); }
.ad-stat__icon--warning   { background: var(--ad-warning-tint);   color: #92400E; }
.ad-stat__icon--danger    { background: var(--ad-danger-tint);    color: #B91C1C; }

.ad-stat__value {
	font-size: var(--ad-fs-xl);
	font-weight: 700;
	color: var(--ad-text);
	line-height: 1.2;
	font-feature-settings: "tnum";
}
.ad-stat__label {
	font-size: var(--ad-fs-xs);
	color: var(--ad-text-3);
}
.ad-stats-grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: var(--ad-sp-3);
}
.ad-stats-grid--3 { grid-template-columns: repeat(3, 1fr); }

/* ───── List rows ───── */
.ad-list {
	background: var(--ad-surface);
	border: 1px solid var(--ad-border-soft);
	border-radius: var(--ad-r-lg);
	overflow: hidden;
}
.ad-list__item {
	display: flex;
	align-items: center;
	gap: var(--ad-sp-3);
	padding: var(--ad-sp-3) var(--ad-sp-4);
	border-bottom: 1px solid var(--ad-border-soft);
	cursor: pointer;
	transition: background var(--ad-dur-fast) var(--ad-easing);
	background: transparent;
	border-left: 0;
	border-right: 0;
	border-top: 0;
	width: 100%;
	text-align: right;
	font-family: inherit;
	color: inherit;
}
.ad-list__item:last-child { border-bottom: 0; }
.ad-list__item:hover      { background: var(--ad-surface-alt); }
.ad-list__item-body { flex: 1; min-width: 0; }
.ad-list__item-title {
	font-size: var(--ad-fs-md);
	font-weight: 600;
	color: var(--ad-text);
	margin: 0 0 2px;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.ad-list__item-sub {
	font-size: var(--ad-fs-sm);
	color: var(--ad-text-3);
	margin: 0;
}
.ad-list__item-arrow {
	color: var(--ad-text-faint);
	flex-shrink: 0;
}

/* ───── Search bar ───── */
.ad-search {
	position: relative;
	margin-bottom: var(--ad-sp-3);
}
.ad-search__input {
	width: 100%;
	padding: 10px 40px 10px 14px;
	font-size: var(--ad-fs-md);
	color: var(--ad-text);
	background: var(--ad-surface);
	border: 1px solid var(--ad-border);
	border-radius: var(--ad-r-md);
	min-height: 44px;
	outline: none;
}
.ad-search__input:focus {
	border-color: var(--ad-primary);
	background: var(--ad-primary-tint-2);
}
.ad-search__icon {
	position: absolute;
	right: 12px;
	top: 50%;
	transform: translateY(-50%);
	color: var(--ad-text-muted);
	pointer-events: none;
}

/* ───── Switch / Toggle ───── */
.ad-switch {
	position: relative;
	display: inline-block;
	width: 44px;
	height: 24px;
	flex-shrink: 0;
}
.ad-switch input {
	opacity: 0;
	width: 0;
	height: 0;
}
.ad-switch__slider {
	position: absolute;
	cursor: pointer;
	inset: 0;
	background: var(--ad-border-strong);
	border-radius: 999px;
	transition: background var(--ad-dur-fast) var(--ad-easing);
}
.ad-switch__slider::before {
	content: '';
	position: absolute;
	height: 18px;
	width: 18px;
	right: 3px;
	top: 3px;
	background: #fff;
	border-radius: 50%;
	transition: transform var(--ad-dur-fast) var(--ad-easing);
}
.ad-switch input:checked + .ad-switch__slider { background: var(--ad-primary); }
.ad-switch input:checked + .ad-switch__slider::before { transform: translateX(-20px); }

/* ───── Alert / banner ───── */
.ad-alert {
	display: flex;
	gap: var(--ad-sp-2);
	padding: 12px 14px;
	border-radius: var(--ad-r-md);
	font-size: var(--ad-fs-sm);
	border: 1px solid;
	align-items: flex-start;
}
.ad-alert__icon { flex-shrink: 0; margin-top: 2px; }
.ad-alert__body { flex: 1; line-height: 1.6; }
.ad-alert--info    { background: var(--ad-info-tint);    color: #1E40AF; border-color: #BFDBFE; }
.ad-alert--success { background: var(--ad-success-tint); color: #065F46; border-color: #A7F3D0; }
.ad-alert--warning { background: var(--ad-warning-tint); color: #92400E; border-color: #FDE68A; }
.ad-alert--danger  { background: var(--ad-danger-tint);  color: #991B1B; border-color: #FECACA; }

/* ───── Persian numerals helper ───── */
.ad-fa-num {
	font-feature-settings: "tnum";
}

/* ─── اعلان‌ها ───────────────────────────── */
.ad-welcome-header__bell {
	position: relative;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	border: 0;
	background: rgba(255, 255, 255, 0.2);
	color: #fff;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	transition: background var(--ad-dur-fast) var(--ad-easing);
}
.ad-welcome-header__bell:hover { background: rgba(255, 255, 255, 0.3); }

.ad-bell-badge {
	position: absolute;
	top: -4px;
	right: -4px;
	min-width: 18px;
	height: 18px;
	padding: 0 5px;
	border-radius: 999px;
	background: #E5484D;
	color: #fff;
	font-size: 10px;
	font-weight: 700;
	line-height: 18px;
	text-align: center;
	border: 2px solid #2D7A82;
	box-sizing: content-box;
	font-family: inherit;
	font-feature-settings: 'tnum';
	pointer-events: none;
}
.ad-bell-badge--hidden { display: none; }

/* لیست اعلان‌ها */
.ad-notif-list {
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.ad-notif-item {
	display: flex;
	gap: 12px;
	padding: 12px;
	border-radius: var(--ad-r-md);
	background: var(--ad-surface);
	border: 1px solid var(--ad-border-soft);
	cursor: pointer;
	transition: background var(--ad-dur-fast) var(--ad-easing), border-color var(--ad-dur-fast) var(--ad-easing);
}
.ad-notif-item:hover { border-color: var(--ad-border); }

.ad-notif-item--unread {
	background: var(--ad-primary-tint-2);
	border-color: var(--ad-primary-light);
}
/* unread item maintains tint always, no extra hover change */

.ad-notif-item__icon {
	flex-shrink: 0;
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background: var(--ad-primary-tint);
	color: var(--ad-primary-dark);
	display: flex;
	align-items: center;
	justify-content: center;
}
.ad-notif-item--reminder    .ad-notif-item__icon { background: #FFF8E5; color: #8A6500; }
.ad-notif-item--cancelled   .ad-notif-item__icon,
.ad-notif-item--refunded    .ad-notif-item__icon { background: #FCEEF0; color: #A52E3F; }
.ad-notif-item--completed   .ad-notif-item__icon { background: #ECF7F0; color: #2E7D32; }

.ad-notif-item__body {
	flex: 1;
	min-width: 0;
}
.ad-notif-item__title {
	font-size: 14px;
	font-weight: 700;
	color: var(--ad-text);
	margin: 0 0 2px;
	display: flex;
	align-items: center;
	gap: 6px;
}
.ad-notif-item__title-dot {
	display: inline-block;
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: var(--ad-primary);
}
.ad-notif-item__text {
	font-size: 13px;
	color: var(--ad-text-2);
	margin: 0 0 4px;
	line-height: 1.6;
}
.ad-notif-item__time {
	font-size: 11px;
	color: var(--ad-text-3);
}

.ad-notif-empty {
	text-align: center;
	padding: 40px 16px;
	color: var(--ad-text-3);
}
.ad-notif-empty__icon {
	width: 56px;
	height: 56px;
	margin: 0 auto 12px;
	border-radius: 50%;
	background: var(--ad-bg-2);
	color: var(--ad-text-3);
	display: flex;
	align-items: center;
	justify-content: center;
}

/* ───── Profile ───── */
.ad-profile-avatar-block {
	text-align: center;
	padding: var(--ad-sp-4) 0 var(--ad-sp-5);
}
.ad-profile-avatar {
	position: relative;
	width: 96px;
	height: 96px;
	margin: 0 auto var(--ad-sp-3);
	border-radius: var(--ad-r-pill);
	overflow: visible;
}
.ad-profile-avatar img {
	width: 96px;
	height: 96px;
	border-radius: var(--ad-r-pill);
	object-fit: cover;
	border: 3px solid var(--ad-surface);
	background: var(--ad-primary-tint);
}
.ad-profile-avatar__edit {
	position: absolute;
	bottom: 0;
	right: 0;
	width: 32px;
	height: 32px;
	background: var(--ad-primary);
	color: #fff;
	border: 2px solid var(--ad-surface);
	border-radius: var(--ad-r-pill);
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}
.ad-profile-name {
	font-size: var(--ad-fs-lg);
	font-weight: 700;
	color: var(--ad-text);
	margin: 0 0 4px;
}
.ad-profile-mobile {
	font-size: var(--ad-fs-sm);
	color: var(--ad-text-3);
	margin: 0;
	letter-spacing: 1px;
}

/* ───── Payment Result Page ───── */
.ad-payment-result {
	min-height: 100vh;
	min-height: 100dvh;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	padding: var(--ad-sp-6) var(--ad-sp-4);
	background: var(--ad-bg);
}
.ad-payment-result__icon {
	width: 80px;
	height: 80px;
	margin-bottom: var(--ad-sp-4);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: var(--ad-r-pill);
}
.ad-payment-result__icon--success {
	background: var(--ad-success-tint);
	color: var(--ad-success);
}
.ad-payment-result__icon--danger {
	background: var(--ad-danger-tint);
	color: var(--ad-danger);
}
.ad-payment-result__title {
	font-size: var(--ad-fs-xl);
	font-weight: 700;
	color: var(--ad-text);
	margin: 0 0 8px;
	text-align: center;
}
.ad-payment-result__text {
	font-size: var(--ad-fs-sm);
	color: var(--ad-text-3);
	margin: 0 0 var(--ad-sp-5);
	text-align: center;
	line-height: 1.7;
	max-width: 320px;
}
.ad-payment-result__details {
	width: 100%;
	max-width: 380px;
	background: var(--ad-surface);
	border: 1px solid var(--ad-border-soft);
	border-radius: var(--ad-r-lg);
	padding: var(--ad-sp-3);
	margin-bottom: var(--ad-sp-5);
}
.ad-payment-result__detail-row {
	display: flex;
	justify-content: space-between;
	padding: 8px 0;
	border-bottom: 1px dashed var(--ad-border-soft);
	font-size: var(--ad-fs-sm);
}
.ad-payment-result__detail-row:last-child { border-bottom: 0; }
.ad-payment-result__detail-label { color: var(--ad-text-3); }
.ad-payment-result__detail-value { color: var(--ad-text); font-weight: 600; }
.ad-payment-result__actions {
	display: flex;
	gap: 8px;
	width: 100%;
	max-width: 380px;
}
.ad-payment-result__actions .ad-btn { flex: 1; }

/* ═══════════════════════════════════════════════════════
   نسخه الکترونیک — Hero CTA, Banner, Wizard
   ═══════════════════════════════════════════════════════ */

/* Hero CTA در home (مهم‌تر از رزرو) */
.ad-hero-cta {
	background: linear-gradient(135deg, var(--ad-secondary) 0%, var(--ad-primary) 100%);
	border-radius: 18px;
	padding: 18px;
	margin-bottom: 14px;
	cursor: pointer;
	color: #fff;
	position: relative;
	overflow: hidden;
	transition: transform var(--ad-dur-fast) var(--ad-easing);
}
/* hover transform removed */
.ad-hero-cta::before {
	content: '';
	position: absolute;
	top: -40px;
	left: -40px;
	width: 160px;
	height: 160px;
	border-radius: 50%;
	background: rgba(255,255,255,0.08);
	pointer-events: none;
}
.ad-hero-cta__inner {
	display: flex;
	gap: 14px;
	align-items: flex-start;
	position: relative;
	z-index: 1;
}
.ad-hero-cta__icon {
	flex-shrink: 0;
	width: 56px;
	height: 56px;
	border-radius: 16px;
	background: rgba(255,255,255,0.2);
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
}
.ad-hero-cta__body { flex: 1; min-width: 0; }
.ad-hero-cta__title {
	font-size: 17px;
	font-weight: 700;
	margin: 0 0 4px;
	color: #fff;
}
.ad-hero-cta__sub {
	font-size: 12.5px;
	color: rgba(255,255,255,0.92);
	line-height: 1.7;
	margin: 0 0 10px;
}
.ad-hero-cta__chip {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	background: rgba(255,255,255,0.95);
	color: var(--ad-primary-dark);
	font-size: 12px;
	font-weight: 700;
	padding: 5px 12px;
	border-radius: 999px;
}

/* بنر روی صفحه نسخه */
.ad-rx-banner {
	display: flex;
	gap: 12px;
	align-items: flex-start;
	background: var(--ad-primary-tint-2);
	border: 1px solid var(--ad-primary-tint);
	border-radius: var(--ad-r-lg);
	padding: 16px;
	margin-bottom: 16px;
}
.ad-rx-banner__icon {
	flex-shrink: 0;
	width: 44px;
	height: 44px;
	border-radius: 12px;
	background: var(--ad-surface);
	color: var(--ad-primary-dark);
	display: flex;
	align-items: center;
	justify-content: center;
}
.ad-rx-banner__body { flex: 1; }
.ad-rx-banner__title {
	font-size: 14px;
	font-weight: 700;
	color: var(--ad-text);
	margin: 0 0 4px;
}
.ad-rx-banner__text {
	font-size: 12.5px;
	color: var(--ad-text-2);
	line-height: 1.7;
	margin: 0;
}

/* لیست درخواست‌ها */
.ad-rx-list-item {
	background: var(--ad-surface);
	border: 1px solid var(--ad-border-soft);
	border-radius: var(--ad-r-lg);
	padding: 14px;
	margin-bottom: 8px;
	cursor: pointer;
	transition: border-color var(--ad-dur-fast) var(--ad-easing), background var(--ad-dur-fast) var(--ad-easing);
}
.ad-rx-list-item:hover { border-color: var(--ad-primary-light); }
.ad-rx-list-item__head {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 8px;
	margin-bottom: 6px;
}
.ad-rx-list-item__types {
	font-size: 14px;
	font-weight: 700;
	color: var(--ad-text);
	flex: 1;
}
.ad-rx-list-item__meta {
	display: flex;
	justify-content: space-between;
	align-items: center;
	font-size: 12px;
	color: var(--ad-text-3);
}
.ad-rx-list-item__date { font-feature-settings: 'tnum'; }

/* بج وضعیت نسخه */
.ad-rx-status {
	display: inline-block;
	padding: 3px 10px;
	border-radius: 999px;
	font-size: 11px;
	font-weight: 700;
	border: 1px solid transparent;
}
.ad-rx-status--pending      { background: #FFF8E5; color: #8A6500; border-color: #F5DD8A; }
.ad-rx-status--in_progress  { background: #E8F4F5; color: #2D7A82; border-color: #B7DEE2; }
.ad-rx-status--completed    { background: #ECF7F0; color: #2E7D32; border-color: #B7E0B7; }
.ad-rx-status--cancelled,
.ad-rx-status--expired,
.ad-rx-status--rejected     { background: #FCEEF0; color: #A52E3F; border-color: #F2C2C9; }

/* ─── Wizard ─── */
.ad-wizard {
	display: flex;
	flex-direction: column;
	height: 100%;
}
.ad-wizard__steps {
	display: flex;
	gap: 4px;
	padding: 12px 16px 16px;
	overflow-x: auto;
	scrollbar-width: none;
}
.ad-wizard__steps::-webkit-scrollbar { display: none; }
.ad-wizard__step-dot {
	flex: 1;
	min-width: 24px;
	height: 4px;
	border-radius: 2px;
	background: var(--ad-border);
	transition: background var(--ad-dur-fast) var(--ad-easing);
}
.ad-wizard__step-dot.is-done { background: var(--ad-primary-light); }
.ad-wizard__step-dot.is-active { background: var(--ad-primary); }

.ad-wizard__title {
	padding: 0 16px;
	margin-bottom: 4px;
	font-size: 11px;
	color: var(--ad-text-3);
	text-align: center;
}
.ad-wizard__heading {
	padding: 0 16px;
	font-size: 16px;
	font-weight: 700;
	color: var(--ad-text);
	margin: 0 0 16px;
	text-align: center;
}

.ad-wizard__body {
	padding: 0 16px 90px; /* فضای پایین برای دکمه‌های sticky */
}
.ad-wizard__footer {
	position: sticky;
	bottom: 0;
	background: var(--ad-surface);
	border-top: 1px solid var(--ad-border-soft);
	padding: 12px 16px;
	display: flex;
	gap: 8px;
}
.ad-wizard__footer .ad-btn {
	flex: 1;
	white-space: nowrap;
	padding: 10px 12px;
	min-height: 44px;
	font-size: 13px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}
/* دکمه‌ی «قبلی» کوچک‌تر تا جا برای دکمه‌ی اصلی باز بشه */
.ad-wizard__footer .ad-btn--ghost {
	flex: 0 0 80px;
}

/* انتخاب نوع نسخه (مرحله ۱) */
.ad-rx-type-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 10px;
	margin-bottom: 16px;
}
.ad-rx-type-tile {
	background: var(--ad-surface);
	border: 2px solid var(--ad-border);
	border-radius: 14px;
	padding: 14px;
	cursor: pointer;
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	gap: 8px;
	transition: border-color var(--ad-dur-fast) var(--ad-easing), background var(--ad-dur-fast) var(--ad-easing);
}
.ad-rx-type-tile.is-selected {
	border-color: var(--ad-primary);
	background: var(--ad-primary-tint-2);
}
.ad-rx-type-tile__icon {
	width: 44px;
	height: 44px;
	border-radius: 12px;
	background: var(--ad-primary-tint);
	color: var(--ad-primary-dark);
	display: flex;
	align-items: center;
	justify-content: center;
}
.ad-rx-type-tile.is-selected .ad-rx-type-tile__icon {
	background: var(--ad-primary);
	color: #fff;
}
.ad-rx-type-tile__name {
	font-size: 13px;
	font-weight: 600;
	color: var(--ad-text);
}
.ad-rx-type-tile__check {
	position: absolute;
	top: 8px;
	right: 8px;
	width: 18px;
	height: 18px;
	border-radius: 50%;
	background: var(--ad-primary);
	color: #fff;
	display: none;
	align-items: center;
	justify-content: center;
}
.ad-rx-type-tile.is-selected .ad-rx-type-tile__check { display: inline-flex; }
.ad-rx-type-tile { position: relative; }

/* انتخاب نوع پزشک (radio cards) */
.ad-rx-radio-cards { display: flex; flex-direction: column; gap: 8px; }
.ad-rx-radio-card {
	display: flex;
	justify-content: space-between;
	align-items: center;
	background: var(--ad-surface);
	border: 2px solid var(--ad-border);
	border-radius: var(--ad-r-md);
	padding: 14px;
	cursor: pointer;
	transition: border-color var(--ad-dur-fast) var(--ad-easing), background var(--ad-dur-fast) var(--ad-easing);
}
.ad-rx-radio-card.is-selected {
	border-color: var(--ad-primary);
	background: var(--ad-primary-tint-2);
}
.ad-rx-radio-card__name { font-weight: 600; font-size: 14px; color: var(--ad-text); }
.ad-rx-radio-card__price { font-size: 13px; color: var(--ad-text-2); }
.ad-rx-radio-card.is-selected .ad-rx-radio-card__price { color: var(--ad-primary-dark); font-weight: 700; }

/* داروها */
.ad-med-card {
	background: var(--ad-surface);
	border: 1px solid var(--ad-border-soft);
	border-radius: var(--ad-r-md);
	padding: 14px;
	margin-bottom: 10px;
	position: relative;
}
.ad-med-card__head {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 12px;
}
.ad-med-card__title {
	font-size: 13px;
	font-weight: 700;
	color: var(--ad-text);
}
.ad-med-card__del {
	width: 28px;
	height: 28px;
	border-radius: 50%;
	border: 1px solid var(--ad-border);
	background: var(--ad-surface);
	color: #C84455;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}
.ad-med-card__del:hover { background: #FCEEF0; border-color: #F2C2C9; }

.ad-med-method-tabs {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 6px;
	margin-bottom: 12px;
	background: var(--ad-bg);
	padding: 4px;
	border-radius: var(--ad-r-md);
}
.ad-med-method-tab {
	font-size: 12px;
	padding: 8px 6px;
	background: transparent;
	border: 0;
	border-radius: var(--ad-r-sm);
	color: var(--ad-text-2);
	cursor: pointer;
	font-weight: 500;
	font-family: inherit;
}
.ad-med-method-tab.is-active {
	background: var(--ad-surface);
	color: var(--ad-primary-dark);
	font-weight: 700;
}

.ad-med-upload {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 6px;
	min-height: 130px;
	padding: 16px;
	border: 2px dashed var(--ad-border);
	border-radius: var(--ad-r-md);
	background: var(--ad-bg);
	text-align: center;
	color: var(--ad-text-3);
	cursor: pointer;
	transition: border-color var(--ad-dur-fast) var(--ad-easing), background var(--ad-dur-fast) var(--ad-easing);
	box-sizing: border-box;
}
.ad-med-upload:hover {
	border-color: var(--ad-primary-light);
	background: var(--ad-primary-tint-2);
	color: var(--ad-primary-dark);
}
.ad-med-upload > div {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 6px;
}
.ad-med-upload p { margin: 0 !important; }
.ad-med-upload.has-file {
	border-style: solid;
	border-color: var(--ad-primary-light);
	background: var(--ad-primary-tint-2);
	padding: 4px;
	min-height: auto;
}
.ad-med-upload-preview {
	width: 100%;
	max-height: 200px;
	object-fit: contain;
	border-radius: var(--ad-r-sm);
	display: block;
}

/* رادیوگرافی - چند انتخابی با سمت بدن */
.ad-rad-list {
	display: flex;
	flex-direction: column;
	gap: 6px;
}
.ad-rad-item {
	background: var(--ad-surface);
	border: 1px solid var(--ad-border-soft);
	border-radius: var(--ad-r-md);
	padding: 10px 14px;
}
.ad-rad-item__head {
	display: flex;
	align-items: center;
	gap: 8px;
	cursor: pointer;
}
.ad-rad-item__cb {
	width: 18px; height: 18px;
	margin: 0;
	accent-color: var(--ad-primary);
}
.ad-rad-item__name { flex: 1; font-size: 13.5px; color: var(--ad-text); }
.ad-rad-item__side {
	display: none;
	margin-top: 10px;
	padding-top: 10px;
	border-top: 1px dashed var(--ad-border);
}
.ad-rad-item.is-checked .ad-rad-item__side { display: block; }
.ad-rad-side-tabs {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 6px;
}
.ad-rad-side-tab {
	font-size: 12px;
	padding: 8px;
	background: var(--ad-bg);
	border: 1px solid var(--ad-border-soft);
	border-radius: var(--ad-r-sm);
	color: var(--ad-text-2);
	cursor: pointer;
	font-family: inherit;
}
.ad-rad-side-tab.is-selected {
	background: var(--ad-primary);
	border-color: var(--ad-primary);
	color: #fff;
	font-weight: 700;
}

/* مولتی‌سلکت چیپس (سونو/آزمایش) */
.ad-chip-multi {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
}
.ad-chip-multi__item {
	font-size: 12.5px;
	padding: 7px 12px;
	background: var(--ad-bg);
	border: 1px solid var(--ad-border-soft);
	border-radius: 999px;
	color: var(--ad-text-2);
	cursor: pointer;
	user-select: none;
	transition: all var(--ad-dur-fast) var(--ad-easing);
}
.ad-chip-multi__item:hover { border-color: var(--ad-primary-light); }
.ad-chip-multi__item.is-selected {
	background: var(--ad-primary);
	border-color: var(--ad-primary);
	color: #fff;
	font-weight: 600;
}

/* مرحله نهایی */
.ad-rx-summary {
	background: var(--ad-surface);
	border: 1px solid var(--ad-border-soft);
	border-radius: var(--ad-r-md);
	padding: 14px;
	margin-bottom: 10px;
}
.ad-rx-summary h4 {
	font-size: 13px;
	font-weight: 700;
	color: var(--ad-primary-dark);
	margin: 0 0 8px;
}
.ad-rx-summary ul { margin: 0; padding: 0; list-style: none; }
.ad-rx-summary li {
	padding: 6px 0;
	font-size: 13px;
	color: var(--ad-text-2);
	border-bottom: 1px dashed var(--ad-border-soft);
}
.ad-rx-summary li:last-child { border-bottom: 0; }

.ad-rx-terms {
	background: var(--ad-bg);
	border: 1px solid var(--ad-border-soft);
	border-radius: var(--ad-r-md);
	padding: 12px;
	margin-bottom: 10px;
	font-size: 11.5px;
	color: var(--ad-text-3);
	line-height: 1.8;
	max-height: 140px;
	overflow-y: auto;
}
.ad-rx-terms-check {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 14px;
	cursor: pointer;
	font-size: 13px;
	color: var(--ad-text);
}
.ad-rx-terms-check input { accent-color: var(--ad-primary); width: 18px; height: 18px; margin: 0; }

/* ─── دکمه‌های حذف اعلان ─── */
.ad-notif-toolbar {
	display: flex;
	justify-content: flex-end;
	margin-bottom: 8px;
}
.ad-notif-clear-all {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	background: transparent;
	border: 1px solid var(--ad-border);
	color: #C84455;
	padding: 6px 12px;
	border-radius: 999px;
	font-size: 12px;
	font-family: inherit;
	cursor: pointer;
	transition: background var(--ad-dur-fast) var(--ad-easing), border-color var(--ad-dur-fast) var(--ad-easing);
}
.ad-notif-clear-all:hover { background: #FCEEF0; border-color: #F2C2C9; }

.ad-notif-item {
	position: relative;
	transition: opacity .25s ease, transform .25s ease, max-height .25s ease;
}
.ad-notif-item--removing {
	opacity: 0;
	transform: translateX(-20px);
	max-height: 0;
	margin: 0 !important;
	padding-top: 0;
	padding-bottom: 0;
	overflow: hidden;
}
.ad-notif-item__body { cursor: pointer; }

.ad-notif-item__del {
	flex-shrink: 0;
	width: 32px;
	height: 32px;
	border-radius: 50%;
	border: 1px solid transparent;
	background: transparent;
	color: var(--ad-text-3);
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-right: 4px;
	transition: background var(--ad-dur-fast) var(--ad-easing), color var(--ad-dur-fast) var(--ad-easing);
	align-self: flex-start;
}
.ad-notif-item__del:hover {
	background: #FCEEF0;
	color: #C84455;
}

/* فیلد قفل (readonly) — کد ملی ذخیره‌شده */
.ad-input--locked {
	background: var(--ad-bg) !important;
	color: var(--ad-text-2) !important;
	border-style: dashed !important;
	cursor: not-allowed !important;
}
.ad-input--locked:focus {
	border-color: var(--ad-border) !important;
	box-shadow: none !important;
}

/* ─── بلوک نتیجه/یادداشت در جزئیات نسخه ─── */
.ad-rx-result-block {
	border-radius: var(--ad-r-md);
	padding: 14px;
	margin-bottom: 10px;
}
.ad-rx-result-block__head {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 8px;
}
.ad-rx-result-block__head strong {
	font-size: 14px;
	font-weight: 700;
}
.ad-rx-result-block__meta {
	font-size: 12px;
	margin: 0 0 4px;
	opacity: .85;
}
.ad-rx-result-block__text {
	font-size: 13px;
	line-height: 1.9;
	margin: 0;
	white-space: pre-wrap;
}

/* یادداشت پزشک — متمایز فیروزه‌ای */
.ad-rx-result-block--note {
	background: var(--ad-primary-tint-2);
	border: 1px solid var(--ad-primary-light);
	color: var(--ad-primary-dark);
}
.ad-rx-result-block--note .ad-rx-result-block__text { color: var(--ad-text); }

/* نسخه آماده — سبز */
.ad-rx-result-block--ready {
	background: #ECF7F0;
	border: 1px solid #B7E0B7;
	color: #2E7D32;
}
.ad-rx-result-block--ready strong { color: #2E7D32; }

/* ═══════════════════════════════════════════════════════
   حالت Guest (کاربر مهمان)
   ═══════════════════════════════════════════════════════ */

/* آواتار مهمان — به جای عکس، یه آیکون خاکستری */
.ad-welcome-header__avatar--guest {
	background: rgba(255,255,255,0.2);
	color: #fff;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}
.ad-welcome-header__avatar--guest svg { opacity: 0.85; }

/* دکمه‌ی ورود در هدر */
.ad-welcome-header__login {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	background: #fff;
	color: var(--ad-primary-dark);
	font-size: 13px;
	font-weight: 700;
	padding: 8px 14px;
	border-radius: 999px;
	text-decoration: none;
	transition: transform var(--ad-dur-fast) var(--ad-easing);
	font-family: inherit;
}
/* hover transform removed */
.ad-welcome-header__login:visited { color: var(--ad-primary-dark); }

/* وضعیت guest در body */
body.ad-app--guest .ad-welcome-header {
	/* welcome header کمی متفاوت تا کاربر بفهمه guest است */
}

/* صفحه‌ی قفل برای guest */
.ad-guest-locked {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	padding: 50px 20px;
}
.ad-guest-locked__icon {
	width: 96px;
	height: 96px;
	border-radius: 50%;
	background: var(--ad-primary-tint-2);
	color: var(--ad-primary-dark);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 20px;
}
.ad-guest-locked__title {
	font-size: 16px;
	font-weight: 700;
	color: var(--ad-text);
	margin: 0 0 8px;
}
.ad-guest-locked__text {
	font-size: 13px;
	color: var(--ad-text-2);
	line-height: 1.9;
	margin: 0 0 24px;
	max-width: 320px;
}
.ad-guest-locked .ad-btn--block { max-width: 320px; }
.ad-guest-locked__hint {
	font-size: 11px;
	color: var(--ad-text-3);
	margin: 14px 0 0;
}

/* نوار guest بالای nav */
.ad-guest-bar {
	position: fixed;
	bottom: var(--ad-nav-h);
	left: 50%;
	transform: translateX(-50%);
	width: 100%;
	max-width: var(--ad-shell-max);
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	background: var(--ad-secondary);
	color: #fff;
	padding: 8px 16px;
	font-size: 12.5px;
	font-weight: 500;
	z-index: var(--ad-z-nav, 100);
	box-sizing: border-box;
	border-top: 1px solid rgba(0,0,0,.05);
}
.ad-guest-bar__text { flex: 1; }
.ad-guest-bar__login {
	background: #fff;
	color: var(--ad-secondary-dark, var(--ad-primary-dark));
	font-weight: 700;
	padding: 4px 14px;
	border-radius: 999px;
	text-decoration: none;
	font-size: 12px;
	transition: transform var(--ad-dur-fast) var(--ad-easing);
}
/* hover transform removed */
.ad-guest-bar__login:visited { color: var(--ad-secondary-dark, var(--ad-primary-dark)); }

/* وقتی guest bar نشون داده می‌شه، main padding اضافه نیاز داره */
body.ad-app--guest .ad-main {
	padding-bottom: calc(var(--ad-nav-h) + var(--ad-sp-7) + 36px);
}

/* ═══════════════════════════════════════════════════════
   مقالات
   ═══════════════════════════════════════════════════════ */

/* ─── اسلایدر در home ─── */
.ad-articles-slider {
	display: flex;
	gap: 12px;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	scrollbar-width: none;
	padding: 4px 0;
	margin: 0 calc(-1 * var(--ad-sp-4));
	padding-left: var(--ad-sp-4);
	padding-right: var(--ad-sp-4);
}
.ad-articles-slider::-webkit-scrollbar { display: none; }

.ad-art-slide {
	flex-shrink: 0;
	width: 240px;
	background: var(--ad-surface);
	border: 1px solid var(--ad-border-soft);
	border-radius: var(--ad-r-lg);
	overflow: hidden;
	scroll-snap-align: start;
	text-decoration: none;
	color: inherit;
	transition: border-color var(--ad-dur-fast) var(--ad-easing), transform var(--ad-dur-fast) var(--ad-easing);
}
.ad-art-slide:hover {
	border-color: var(--ad-primary-light);
}
.ad-art-slide__thumb {
	width: 100%;
	height: 130px;
	background-size: cover;
	background-position: center;
	background-color: var(--ad-bg-2);
}
.ad-art-slide__thumb--empty {
	background: linear-gradient(135deg, var(--ad-primary-tint-2), var(--ad-primary-tint));
}
.ad-art-slide__body {
	padding: 12px;
}
.ad-art-slide__title {
	font-size: 13.5px;
	font-weight: 700;
	color: var(--ad-text);
	margin: 0 0 8px;
	line-height: 1.6;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}
.ad-art-slide__meta {
	display: flex;
	gap: 6px;
	align-items: center;
	font-size: 11px;
	color: var(--ad-text-3);
}

/* ─── صفحه /articles/ ─── */
.ad-articles-header {
	display: flex;
	align-items: center;
	gap: 8px;
	background: var(--ad-surface);
	color: var(--ad-text);
	padding: 14px 12px;
	position: sticky;
	top: 0;
	z-index: 10;
	border-bottom: 1px solid var(--ad-border-soft);
}
.ad-articles-header__back {
	width: 36px;
	height: 36px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: var(--ad-text);
	text-decoration: none;
	background: transparent;
	border: 0;
	border-radius: 8px;
	transition: background var(--ad-dur-fast) var(--ad-easing);
}
.ad-articles-header__back:hover { background: var(--ad-bg); }
.ad-articles-header__back:visited { color: var(--ad-text); }
.ad-articles-header__title {
	margin: 0;
	font-size: 15px;
	font-weight: 700;
	color: var(--ad-text);
}

/* ─── جستجو ─── */
.ad-articles-search {
	padding: 12px 0 8px;
}
.ad-articles-search__box {
	position: relative;
	display: flex;
	align-items: center;
}
.ad-articles-search__icon {
	position: absolute;
	right: 14px;
	color: var(--ad-text-3);
	pointer-events: none;
}
.ad-articles-search__input {
	flex: 1;
	width: 100%;
	padding: 12px 44px 12px 44px;
	border: 1px solid var(--ad-border);
	background: var(--ad-surface);
	border-radius: 12px;
	font-family: inherit;
	font-size: 13.5px;
	color: var(--ad-text);
	transition: border-color var(--ad-dur-fast) var(--ad-easing);
}
.ad-articles-search__input:focus {
	outline: none;
	border-color: var(--ad-primary);
	box-shadow: 0 0 0 3px rgba(58, 142, 151, 0.1);
}
.ad-articles-search__input::placeholder {
	color: var(--ad-text-3);
	font-size: 13px;
}
.ad-articles-search__clear {
	position: absolute;
	left: 10px;
	background: var(--ad-bg);
	border: 0;
	width: 26px;
	height: 26px;
	border-radius: 50%;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: var(--ad-text-3);
	cursor: pointer;
	transition: background var(--ad-dur-fast) var(--ad-easing);
}
.ad-articles-search__clear:hover { background: var(--ad-border); }

/* ─── chip فیلتر دسته ─── */
.ad-articles-cats {
	display: flex;
	gap: 6px;
	overflow-x: auto;
	padding: 6px 0 12px;
	scrollbar-width: none;
}
.ad-articles-cats::-webkit-scrollbar { display: none; }
.ad-cat-chip {
	flex-shrink: 0;
	padding: 7px 14px;
	border-radius: 999px;
	background: var(--ad-surface);
	border: 1px solid var(--ad-border);
	color: var(--ad-text-2);
	font-size: 12.5px;
	font-family: inherit;
	cursor: pointer;
	transition: all var(--ad-dur-fast) var(--ad-easing);
	white-space: nowrap;
}
.ad-cat-chip:hover { border-color: var(--ad-primary-light); }
.ad-cat-chip.is-selected {
	background: var(--ad-primary);
	border-color: var(--ad-primary);
	color: #fff;
	font-weight: 700;
}

/* ─── متادیتای نتایج ─── */
.ad-articles-meta {
	padding: 4px 0 12px;
	font-size: 11.5px;
	color: var(--ad-text-3);
}
.ad-articles-meta__count {
	background: var(--ad-primary-tint-2);
	color: var(--ad-primary-dark);
	padding: 3px 10px;
	border-radius: 999px;
	font-weight: 600;
}

/* ─── کارت لیست ─── */
.ad-articles-list {
	display: flex;
	flex-direction: column;
	gap: 10px;
}
.ad-art-list-card {
	display: flex;
	gap: 12px;
	background: var(--ad-surface);
	border: 1px solid var(--ad-border-soft);
	border-radius: var(--ad-r-lg);
	overflow: hidden;
	text-decoration: none;
	color: inherit;
	transition: border-color var(--ad-dur-fast) var(--ad-easing);
}
.ad-art-list-card:hover { border-color: var(--ad-primary-light); }
.ad-art-list-card__thumb {
	width: 120px;
	min-height: 100px;
	flex-shrink: 0;
	background-size: cover;
	background-position: center;
	background-color: var(--ad-bg-2);
}
.ad-art-list-card__thumb--empty {
	background: linear-gradient(135deg, var(--ad-primary-tint-2), var(--ad-primary-tint));
}
.ad-art-list-card__body {
	flex: 1;
	padding: 12px 14px 12px 0;
	min-width: 0;
}
.ad-art-list-card__title {
	font-size: 14px;
	font-weight: 700;
	color: var(--ad-text);
	margin: 0 0 6px;
	line-height: 1.7;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}
.ad-art-list-card__excerpt {
	font-size: 12px;
	color: var(--ad-text-3);
	line-height: 1.8;
	margin: 0 0 8px;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}
.ad-art-list-card__meta {
	display: flex;
	gap: 6px;
	font-size: 11px;
	color: var(--ad-text-3);
}

.ad-articles-loadmore {
	margin-top: 16px;
}

/* ─── single article ─── */
.ad-article-hero {
	width: 100%;
	max-height: 280px;
	overflow: hidden;
}
.ad-article-hero img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}
.ad-article-content-wrap {
	padding: 18px 16px 30px;
}
.ad-article-cats {
	display: flex;
	gap: 6px;
	margin-bottom: 12px;
	flex-wrap: wrap;
}
.ad-article-cat-chip {
	font-size: 11.5px;
	background: var(--ad-primary-tint-2);
	color: var(--ad-primary-dark);
	padding: 3px 10px;
	border-radius: 999px;
	text-decoration: none;
	font-weight: 600;
}
.ad-article-cat-chip:hover { background: var(--ad-primary-tint); }
.ad-article-title {
	font-size: 20px;
	font-weight: 800;
	color: var(--ad-text);
	margin: 0 0 12px;
	line-height: 1.7;
}
.ad-article-meta {
	display: flex;
	gap: 6px;
	align-items: center;
	flex-wrap: wrap;
	color: var(--ad-text-3);
	font-size: 11.5px;
	padding-bottom: 16px;
	margin-bottom: 20px;
	border-bottom: 1px solid var(--ad-border-soft);
}
.ad-article-meta__item {
	display: inline-flex;
	align-items: center;
	gap: 4px;
}
.ad-article-meta__sep { opacity: .5; }

/* محتوای مقاله — typography تمیز */
.ad-article-content {
	font-size: 15px;
	line-height: 2;
	color: var(--ad-text);
	font-family: inherit;
}
.ad-article-content h2 {
	font-size: 18px;
	font-weight: 700;
	margin: 24px 0 12px;
	color: var(--ad-primary-dark);
}
.ad-article-content h3 {
	font-size: 16px;
	font-weight: 700;
	margin: 20px 0 10px;
	color: var(--ad-text);
}
.ad-article-content p { margin: 0 0 14px; }
.ad-article-content a {
	color: var(--ad-primary);
	border-bottom: 1px solid var(--ad-primary-light);
	text-decoration: none;
}
.ad-article-content a:hover { border-bottom-color: var(--ad-primary); }
.ad-article-content img {
	max-width: 100%;
	height: auto;
	border-radius: var(--ad-r-md);
	margin: 16px 0;
	display: block;
}
.ad-article-content blockquote {
	margin: 16px 0;
	padding: 12px 16px;
	background: var(--ad-primary-tint-2);
	border-right: 3px solid var(--ad-primary);
	border-radius: var(--ad-r-sm);
	font-size: 14px;
	color: var(--ad-text-2);
	font-style: italic;
}
.ad-article-content ul,
.ad-article-content ol {
	padding-right: 20px;
	margin: 0 0 14px;
}
.ad-article-content li { margin-bottom: 6px; }
.ad-article-content code {
	background: var(--ad-bg-2);
	padding: 2px 6px;
	border-radius: 4px;
	font-size: 13px;
	font-family: monospace;
}
.ad-article-content hr {
	border: 0;
	border-top: 1px dashed var(--ad-border);
	margin: 24px 0;
}

/* اشتراک‌گذاری */
.ad-article-share {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 30px 0 20px;
	padding: 14px;
	background: var(--ad-bg);
	border-radius: var(--ad-r-md);
}
.ad-article-share__label {
	font-size: 12px;
	color: var(--ad-text-3);
	margin-left: auto;
}
.ad-article-share__btn {
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background: var(--ad-surface);
	border: 1px solid var(--ad-border);
	color: var(--ad-text-2);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	text-decoration: none;
	transition: all var(--ad-dur-fast) var(--ad-easing);
}
.ad-article-share__btn:hover {
	background: var(--ad-primary);
	border-color: var(--ad-primary);
	color: #fff;
}

/* مقالات مرتبط */
.ad-article-related {
	margin-top: 30px;
	padding-top: 24px;
	border-top: 1px solid var(--ad-border-soft);
}
.ad-article-related__title {
	font-size: 15px;
	font-weight: 700;
	color: var(--ad-text);
	margin: 0 0 14px;
}
.ad-article-related__list {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 10px;
}
.ad-article-related__card {
	background: var(--ad-surface);
	border: 1px solid var(--ad-border-soft);
	border-radius: var(--ad-r-md);
	overflow: hidden;
	text-decoration: none;
	color: inherit;
	transition: border-color var(--ad-dur-fast) var(--ad-easing);
}
.ad-article-related__card:hover { border-color: var(--ad-primary-light); }
.ad-article-related__thumb {
	width: 100%;
	height: 80px;
	background-size: cover;
	background-position: center;
	background-color: var(--ad-bg-2);
}
.ad-article-related__thumb--empty {
	background: linear-gradient(135deg, var(--ad-primary-tint-2), var(--ad-primary-tint));
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--ad-primary-dark);
}
.ad-article-related__name {
	font-size: 11.5px;
	color: var(--ad-text);
	margin: 0;
	padding: 8px 10px;
	line-height: 1.6;
	font-weight: 600;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

/* ─── Slider navigation arrows (دکمه‌های قبلی/بعدی اسلایدر) ─── */
.ad-articles-slider-wrap {
	position: relative;
}
.ad-articles-slider-wrap .ad-articles-slider {
	margin: 0; /* override margins from default slider */
	padding: 4px 0;
}
.ad-slider-nav {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 32px;
	height: 32px;
	border-radius: 50%;
	background: var(--ad-surface);
	border: 1px solid var(--ad-border);
	color: var(--ad-text-2);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	z-index: 2;
	box-shadow: 0 2px 6px rgba(0,0,0,0.06);
	transition: all var(--ad-dur-fast) var(--ad-easing);
	font-family: inherit;
}
.ad-slider-nav:hover:not(.is-disabled) {
	background: var(--ad-primary);
	border-color: var(--ad-primary);
	color: #fff;
}
.ad-slider-nav.is-disabled {
	opacity: 0.35;
	cursor: not-allowed;
}
.ad-slider-nav--prev { right: -4px; }
.ad-slider-nav--next { left: -4px; }

/* در موبایل سایز کوچک، دکمه‌ها رو کمی داخل بکش تا قطع نشن */
@media (max-width: 380px) {
	.ad-slider-nav--prev { right: 2px; }
	.ad-slider-nav--next { left: 2px; }
}

/* ═══════════════════════════════════════════════════════
   Sidebar Drawer (مثل WP admin)
   ═══════════════════════════════════════════════════════ */
.ad-sidebar-backdrop {
	position: fixed;
	inset: 0;
	background: rgba(0,0,0,.5);
	z-index: 999;
	opacity: 0;
	visibility: hidden;
	transition: opacity .25s ease, visibility .25s ease;
}
.ad-sidebar-backdrop.is-open {
	opacity: 1;
	visibility: visible;
}

.ad-sidebar {
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	width: 86%;
	max-width: 320px;
	background: var(--ad-surface);
	z-index: 1000;
	transform: translateX(100%);
	transition: transform .3s cubic-bezier(.22,1,.36,1);
	display: flex;
	flex-direction: column;
	overflow-y: auto;
	box-shadow: -4px 0 24px rgba(0,0,0,.08);
}
.ad-sidebar.is-open {
	transform: translateX(0);
}

.ad-sidebar__head {
	background: var(--ad-primary);
	color: #fff;
	padding: 16px 16px 20px;
	position: relative;
}
.ad-sidebar__close {
	position: absolute;
	top: 12px;
	left: 12px;
	width: 32px;
	height: 32px;
	background: rgba(255,255,255,.15);
	border: 0;
	border-radius: 50%;
	color: #fff;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	transition: background var(--ad-dur-fast) var(--ad-easing);
}
.ad-sidebar__close:hover { background: rgba(255,255,255,.25); }

.ad-sidebar__user {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-top: 24px;
}
.ad-sidebar__avatar {
	width: 52px;
	height: 52px;
	border-radius: 50%;
	border: 2px solid rgba(255,255,255,.3);
	overflow: hidden;
	background: var(--ad-primary-tint);
	flex-shrink: 0;
}
.ad-sidebar__avatar img { width: 100%; height: 100%; object-fit: cover; }
.ad-sidebar__avatar--guest {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: rgba(255,255,255,.85);
	background: rgba(255,255,255,.15);
}
.ad-sidebar__name {
	margin: 0;
	font-size: 15px;
	font-weight: 700;
	color: #fff;
}
.ad-sidebar__mobile {
	margin: 4px 0 0;
	font-size: 12px;
	color: rgba(255,255,255,.75);
}
.ad-sidebar__login-link {
	display: inline-block;
	margin-top: 4px;
	font-size: 12px;
	color: #fff;
	background: rgba(255,255,255,.2);
	padding: 4px 12px;
	border-radius: 999px;
	text-decoration: none;
	transition: background var(--ad-dur-fast) var(--ad-easing);
}
.ad-sidebar__login-link:hover { background: rgba(255,255,255,.3); color: #fff; }
.ad-sidebar__login-link:visited { color: #fff; }

.ad-sidebar__nav {
	flex: 1;
	padding: 8px 0;
}
.ad-sidebar__item {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 12px 18px;
	color: var(--ad-text);
	text-decoration: none;
	background: transparent;
	border: 0;
	width: 100%;
	font-family: inherit;
	font-size: 14px;
	cursor: pointer;
	transition: background var(--ad-dur-fast) var(--ad-easing);
}
.ad-sidebar__item:hover { background: var(--ad-bg); }
.ad-sidebar__item:visited { color: var(--ad-text); }
.ad-sidebar__item-icon {
	color: var(--ad-text-2);
	display: inline-flex;
	width: 24px;
	flex-shrink: 0;
}
.ad-sidebar__item-label {
	flex: 1;
	text-align: right;
}
.ad-sidebar__item-arrow {
	color: var(--ad-text-faint);
	opacity: .6;
}
.ad-sidebar__item--logout {
	color: var(--ad-danger);
	border-top: 1px solid var(--ad-border-soft);
	margin-top: 8px;
}
.ad-sidebar__item--logout .ad-sidebar__item-icon { color: var(--ad-danger); }
.ad-sidebar__item--logout:hover { background: #FCEEF0; }

body.ad-sidebar-open { overflow: hidden; }

/* ═══════════════════════════════════════════════════════
   بنر بالای مقالات
   ═══════════════════════════════════════════════════════ */
.ad-home-banner {
	display: block;
	position: relative;
	border-radius: var(--ad-r-lg);
	overflow: hidden;
	background: linear-gradient(135deg, var(--ad-primary), var(--ad-secondary, var(--ad-primary-dark)));
	aspect-ratio: 16 / 7;
	width: 100%;
	margin-bottom: var(--ad-sp-5);
	text-decoration: none;
	color: #fff;
}
.ad-home-banner__img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center top;
	display: block;
}
.ad-home-banner__placeholder {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 130px;
	flex-direction: column;
	gap: 8px;
	padding: 20px;
	text-align: center;
}
.ad-home-banner__placeholder-icon {
	width: 48px;
	height: 48px;
	border-radius: 50%;
	background: rgba(255,255,255,.2);
	display: inline-flex;
	align-items: center;
	justify-content: center;
}
.ad-home-banner__placeholder-text {
	font-size: 13px;
	font-weight: 600;
	color: #fff;
	margin: 0;
}
.ad-home-banner__placeholder-sub {
	font-size: 11px;
	color: rgba(255,255,255,.85);
	margin: 0;
}

/* ═══════════════════════════════════════════════════════
   صفحه 404
   ═══════════════════════════════════════════════════════ */
.ad-404 {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	min-height: 70vh;
	padding: 40px 24px;
	text-align: center;
}
.ad-404__icon {
	width: 96px;
	height: 96px;
	border-radius: 50%;
	background: var(--ad-primary-tint-2);
	color: var(--ad-primary-dark);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 24px;
}
.ad-404__code {
	font-size: 56px;
	font-weight: 800;
	color: var(--ad-primary-dark);
	margin: 0 0 8px;
	letter-spacing: -2px;
}
.ad-404__title {
	font-size: 18px;
	font-weight: 700;
	color: var(--ad-text);
	margin: 0 0 8px;
}
.ad-404__text {
	font-size: 13px;
	color: var(--ad-text-3);
	line-height: 1.9;
	margin: 0 0 24px;
	max-width: 360px;
}

/* ═══════════════════════════════════════════════════════
   Card-to-card payment sheet
   ═══════════════════════════════════════════════════════ */
.ad-receipt-card-info {
	background: var(--ad-primary-tint-2);
	border-radius: var(--ad-r-md);
	padding: 14px;
	margin-bottom: 16px;
}
.ad-receipt-card-row {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 4px 0;
	font-size: 13px;
}
.ad-receipt-card-row:not(:last-child) { border-bottom: 1px dashed rgba(0,0,0,.08); }
.ad-receipt-label {
	color: var(--ad-text-3);
	font-size: 12px;
}
.ad-receipt-amount-row {
	margin-top: 6px;
	padding-top: 8px;
	font-size: 14px;
}
.ad-receipt-amount-row strong { color: var(--ad-primary-dark); font-size: 15px; }
.ad-receipt-copy-btn {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	background: var(--ad-surface);
	border: 1px solid var(--ad-border);
	padding: 4px 10px;
	border-radius: 6px;
	cursor: pointer;
	font-family: inherit;
	font-size: 12px;
	color: var(--ad-primary-dark);
	font-weight: 600;
}
.ad-receipt-copy-btn:hover { background: #fff; border-color: var(--ad-primary); }

.ad-receipt-status {
	padding: 12px 14px;
	border-radius: var(--ad-r-md);
	font-size: 13px;
	font-weight: 600;
	margin-bottom: 12px;
	text-align: center;
}
.ad-receipt-status--pending { background: #FEF3C7; color: #92400E; }
.ad-receipt-status--approved { background: #D1FAE5; color: #065F46; }
.ad-receipt-rejected-banner {
	padding: 10px 14px;
	background: #FCEEF0;
	color: #B50000;
	border-radius: var(--ad-r-md);
	font-size: 12.5px;
	margin-bottom: 14px;
	line-height: 1.7;
}

.ad-receipt-upload {
	border: 2px dashed var(--ad-border);
	border-radius: var(--ad-r-md);
	padding: 16px;
	text-align: center;
	background: var(--ad-bg);
	position: relative;
	overflow: hidden;
}
.ad-receipt-upload img {
	max-width: 100%;
	max-height: 240px;
	border-radius: 6px;
}
.ad-receipt-upload-btn {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;
	width: 100%;
	background: transparent;
	border: 0;
	cursor: pointer;
	color: var(--ad-text-2);
	font-family: inherit;
}
.ad-receipt-upload-btn span { font-size: 13px; font-weight: 600; }
.ad-receipt-upload-btn small { font-size: 11px; color: var(--ad-text-3); }
.ad-receipt-upload-change {
	display: block;
	margin: 8px auto 0;
	background: var(--ad-primary-tint);
	color: var(--ad-primary-dark);
	border: 0;
	padding: 6px 14px;
	border-radius: 6px;
	font-size: 12px;
	font-family: inherit;
	cursor: pointer;
}

/* ───────────────────────────────────────────────
 * جستجوی شهر (City search dropdown)
 * ─────────────────────────────────────────────── */
.ad-city-search {
	position: relative;
}
.ad-city-dropdown {
	position: absolute;
	top: calc(100% + 4px);
	left: 0;
	right: 0;
	max-height: 240px;
	overflow-y: auto;
	background: var(--ad-surface);
	border: 1px solid var(--ad-border);
	border-radius: var(--ad-r-md);
	z-index: 50;
	box-shadow: 0 6px 20px rgba(0, 0, 0, 0.08);
}
.ad-city-item {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	padding: 11px 14px;
	cursor: pointer;
	border-bottom: 1px solid var(--ad-border-light, #f0f0f0);
	transition: background-color var(--ad-dur-fast) var(--ad-easing);
}
.ad-city-item:last-child {
	border-bottom: none;
}
.ad-city-item:hover,
.ad-city-item:active {
	background: var(--ad-primary-tint);
}
.ad-city-item__name {
	font-size: 14px;
	font-weight: 600;
	color: var(--ad-text);
}
.ad-city-item__province {
	font-size: 12px;
	color: var(--ad-text-3);
}
.ad-city-item--empty {
	justify-content: center;
	color: var(--ad-text-3);
	cursor: default;
	font-size: 13px;
}
.ad-city-item--empty:hover {
	background: transparent;
}

/* ───────────────────────────────────────────────
 * سابقه‌ی پروفایل (رزرو + نسخه)
 * ─────────────────────────────────────────────── */
.ad-profile-history__section {
	margin-bottom: 22px;
}
.ad-profile-history__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 10px;
}
.ad-profile-history__title {
	font-size: 14px;
	font-weight: 700;
	color: var(--ad-text);
	margin: 0;
}
.ad-profile-history__more {
	font-size: 12px;
	color: var(--ad-primary);
	text-decoration: none;
}
.ad-profile-history__list {
	display: flex;
	flex-direction: column;
	gap: 8px;
}
.ad-profile-history__item {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	padding: 12px 14px;
	background: var(--ad-surface);
	border: 1px solid var(--ad-border);
	border-radius: var(--ad-r-md);
	text-decoration: none;
	transition: border-color var(--ad-dur-fast) var(--ad-easing);
}
.ad-profile-history__item:hover {
	border-color: var(--ad-primary);
}
.ad-profile-history__item-main {
	display: flex;
	flex-direction: column;
	gap: 3px;
	min-width: 0;
}
.ad-profile-history__item-title {
	font-size: 13.5px;
	font-weight: 600;
	color: var(--ad-text);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
.ad-profile-history__item-sub {
	font-size: 11.5px;
	color: var(--ad-text-3);
}
.ad-profile-history__loading,
.ad-profile-history__empty {
	padding: 16px;
	text-align: center;
	font-size: 12.5px;
	color: var(--ad-text-3);
	background: var(--ad-bg-2);
	border-radius: var(--ad-r-md);
}

/* متن راهنمای کارت به کارت */
.ad-receipt-intro {
	font-size: 13px;
	line-height: 1.8;
	color: var(--ad-text-2, #555);
	background: var(--ad-primary-tint);
	border-radius: var(--ad-r-md);
	padding: 12px 14px;
	margin: 0 0 16px;
	text-align: center;
}

/* صفحه‌ی موفقیت ثبت فیش (جمع‌وجور، از بالا) */
.ad-receipt-success {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	padding: 24px 12px 8px;
}
.ad-receipt-success__icon {
	width: 76px;
	height: 76px;
	border-radius: 50%;
	background: var(--ad-success-tint, #E6F4EA);
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 18px;
}
.ad-receipt-success__title {
	font-size: 19px;
	font-weight: 800;
	color: var(--ad-text);
	margin: 0 0 12px;
}
.ad-receipt-success__text {
	font-size: 13.5px;
	line-height: 2;
	color: var(--ad-text-3);
	margin: 0;
	max-width: 340px;
}

/* ───────────────────────────────────────────────
 * باکس اعتماد و برند (صفحه اصلی)
 * ─────────────────────────────────────────────── */
.ad-brand-box {
	background: var(--ad-surface);
	border: 1px solid var(--ad-border);
	border-radius: var(--ad-r-lg);
	padding: 18px 16px;
}
/* ردیف نمادها (بالا): سه ستون — اینماد | لوگو | زرین‌پال */
.ad-brand-box__badges {
	display: grid;
	grid-template-columns: 1fr 1.2fr 1fr;
	gap: 10px;
	align-items: center;
	direction: rtl;
}
/* ستون راست (اینماد): محتوا سمت راست */
.ad-brand-box__badge:first-child {
	display: flex;
	align-items: center;
	justify-content: flex-start;
}
/* ستون وسط (متن): مرکز */
.ad-brand-box__badge--text,
.ad-brand-box__badge--logo {
	display: flex;
	align-items: center;
	justify-content: center;
}
/* ستون چپ (زرین‌پال): محتوا سمت چپ */
.ad-brand-box__badge:last-child {
	display: flex;
	align-items: center;
	justify-content: flex-end;
}
.ad-brand-box__badge { min-height: 80px; }
.ad-brand-box__badge img { max-width: 100%; max-height: 80px; height: auto; }
.ad-brand-box__zp-frame {
	width: 100%;
	height: 90px;
	border: 0;
	display: block;
}

.ad-brand-box__zp-default {
	display: flex;
	align-items: center;
	gap: 10px;
	text-decoration: none;
	color: var(--ad-text);
	background: var(--ad-bg-2);
	border: 1px solid var(--ad-border-soft);
	border-radius: var(--ad-r-md);
	padding: 12px 16px;
}
.ad-brand-box__zp-mark {
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: #FFD400;
	color: #000;
	font-weight: 800;
	font-size: 15px;
	display: flex;
	align-items: center;
	justify-content: center;
}
.ad-brand-box__zp-text { font-size: 12px; font-weight: 600; line-height: 1.5; }
.ad-brand-box__divider {
	height: 1px;
	background: var(--ad-border-soft);
	margin: 16px 0;
}
.ad-brand-box__logo {
	flex-shrink: 0;
}
/* لوگوی دکتر آرامش (وسط نمادها): مربعی ۸۰×۸۰ */
.ad-brand-box__logo img {
	width: 80px;
	height: 80px;
	border-radius: var(--ad-r-md);
	object-fit: contain;
	background: #fff;
}
/* متن دلخواه باکس برند (زیر divider، تک‌خط در وسط) */
.ad-brand-box__text {
	font-size: 13px;
	line-height: 2;
	color: var(--ad-text-2, #555);
	text-align: center;
	max-width: 520px;
	margin: 0 auto;
}
.ad-brand-box__text p { margin: 0 0 6px; }
.ad-brand-box__text p:last-child { margin-bottom: 0; }
.ad-brand-box__text strong { color: var(--ad-text); }
.ad-brand-box__text a { color: var(--ad-primary); text-decoration: none; }
.ad-brand-box__text a:hover { text-decoration: underline; }

/* راهنمای داخل مراحل ویزارد نسخه */
.ad-rx-hint {
	background: var(--ad-primary-tint);
	border-right: 3px solid var(--ad-primary);
	color: var(--ad-text-2, #444);
	font-size: 12.5px;
	line-height: 1.8;
	padding: 10px 14px;
	border-radius: var(--ad-r-md);
	margin: 0 0 14px;
}

/* ───────────────────────────────────────────────
 * صفحه اصلی — عنوان و زیرعنوان
 * ─────────────────────────────────────────────── */
.ad-home-intro {
	text-align: right;
	padding: 6px 4px 16px;
}
.ad-home-intro__title {
	font-size: 19px;
	font-weight: 800;
	color: var(--ad-text);
	margin: 0 0 8px;
	line-height: 1.5;
}
.ad-home-intro__sub {
	font-size: 13px;
	line-height: 2;
	color: var(--ad-text-3);
}
.ad-home-intro__sub p { margin: 0; }

/* hero compact: دکمه کنار عنوان */
.ad-hero-cta--compact .ad-hero-cta__row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	flex-wrap: wrap;
}
.ad-hero-cta--compact .ad-hero-cta__title { margin: 0; }

/* متن وسط نمادها (به‌جای لوگو) */
.ad-brand-box__badge--text { text-align: center; }
.ad-brand-box__badge--text .ad-brand-box__text {
	font-size: 12px;
	line-height: 1.8;
	color: var(--ad-text-2, #555);
	margin: 0;
}
.ad-brand-box__badge--text .ad-brand-box__text p { margin: 0; }

/* ───────────────────────────────────────────────
 * سوالات متداول (آکاردئونی)
 * ─────────────────────────────────────────────── */
.ad-faq {
	display: flex;
	flex-direction: column;
	gap: 8px;
}
.ad-faq__item {
	background: var(--ad-surface);
	border: 1px solid var(--ad-border);
	border-radius: var(--ad-r-md);
	overflow: hidden;
}
.ad-faq__q {
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	padding: 14px 16px;
	background: none;
	border: 0;
	cursor: pointer;
	font-family: inherit;
	font-size: 13.5px;
	font-weight: 600;
	color: var(--ad-text);
	text-align: right;
	transition: background var(--ad-dur-fast) var(--ad-easing);
}
.ad-faq__q:hover { background: none; }
.ad-faq__icon {
	flex-shrink: 0;
	color: var(--ad-text-3);
	transition: transform var(--ad-dur-fast) var(--ad-easing);
}
.ad-faq__item.is-open .ad-faq__icon { transform: rotate(180deg); }
.ad-faq__a {
	max-height: 0;
	overflow: hidden;
	transition: max-height var(--ad-dur, 0.3s) var(--ad-easing);
}
.ad-faq__item.is-open .ad-faq__a { max-height: 600px; }
.ad-faq__a-inner {
	padding: 0 16px 14px;
	font-size: 13px;
	line-height: 2;
	color: var(--ad-text-3);
}
.ad-faq__a-inner p { margin: 0 0 6px; }
.ad-faq__a-inner p:last-child { margin: 0; }
