/* ==========================================================================
   Checkout حرفه‌ای EDD – طراحی کاملاً جدید
   ========================================================================== */

.tsvst-edd-checkout,
.tsvst-edd-checkout *,
.tsvst-edd-checkout *::before,
.tsvst-edd-checkout *::after {
	box-sizing: border-box;
}

.tsvst-edd-checkout {
	--checkout-purple: #6d52eb;
	--checkout-blue: #168fc3;
	--checkout-cyan: #18b8c8;
	--checkout-green: #22a978;
	--checkout-orange: #e9933d;
	--checkout-red: #d55e6b;

	--checkout-heading: #252b3d;
	--checkout-text: #596276;
	--checkout-muted: #8992a3;
	--checkout-line: rgba(66, 78, 105, .12);
	--checkout-line-solid: #e2e7ef;
	--checkout-shadow:
		0 13px 30px rgba(35, 42, 72, .065),
		inset 0 1px 0 rgba(255, 255, 255, .80);

	position: relative;
	clear: both;
	width: 100%;
	direction: rtl;
	color: var(--checkout-text);
}

/* ==========================================================================
   سربرگ
   ========================================================================== */

.tsvst-edd-checkout__hero {
	position: relative;
	display: grid;
	grid-template-columns: 58px minmax(0, 1fr) auto;
	align-items: center;
	gap: 15px;
	min-height: 118px;
	padding: 19px;
	overflow: hidden;
	border: 1px solid rgba(109, 82, 235, .14);
	border-radius: 7px;
	background:
		linear-gradient(
			118deg,
			rgba(109, 82, 235, .12) 0%,
			rgba(109, 82, 235, .12) 22%,
			transparent 22%,
			transparent 42%,
			rgba(22, 143, 195, .09) 42%,
			rgba(22, 143, 195, .09) 66%,
			transparent 66%,
			transparent 79%,
			rgba(24, 184, 200, .11) 79%,
			rgba(24, 184, 200, .11) 100%
		),
		linear-gradient(135deg, #faf8ff, #f3f8ff 56%, #eefafa);
	box-shadow:
		0 16px 34px rgba(36, 43, 76, .08),
		inset 0 1px 0 rgba(255, 255, 255, .88);
}

.tsvst-edd-checkout__hero::after {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	width: 5px;
	content: "";
	background: linear-gradient(
		180deg,
		var(--checkout-purple),
		var(--checkout-blue),
		var(--checkout-cyan)
	);
}

.tsvst-edd-checkout__hero-icon {
	display: inline-flex;
	width: 52px;
	height: 52px;
	align-items: center;
	justify-content: center;
	border: 1px solid rgba(255, 255, 255, .38);
	border-radius: 7px;
	color: #fff;
	background: linear-gradient(
		135deg,
		var(--checkout-purple),
		var(--checkout-blue),
		var(--checkout-cyan)
	);
	box-shadow:
		0 11px 23px rgba(62, 57, 141, .21),
		inset 0 1px 0 rgba(255, 255, 255, .24);
	font-size: 19px;
}

.tsvst-edd-checkout__hero-copy {
	min-width: 0;
}

.tsvst-edd-checkout__eyebrow {
	display: inline-block;
	margin-bottom: 3px;
	color: var(--checkout-blue);
	font-family: monospace;
	font-size: 9px;
	font-weight: 900;
	letter-spacing: .9px;
	direction: ltr;
}

.tsvst-edd-checkout__hero-copy h1 {
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	color: var(--checkout-heading) !important;
	background: transparent !important;
	box-shadow: none !important;
	font-size: 20px !important;
	font-weight: 950 !important;
	line-height: 1.65 !important;
}

.tsvst-edd-checkout__hero-copy h1::before,
.tsvst-edd-checkout__hero-copy h1::after {
	display: none !important;
	content: none !important;
}

.tsvst-edd-checkout__hero-copy p {
	margin: 3px 0 0;
	color: var(--checkout-muted);
	font-size: 12px;
	font-weight: 700;
	line-height: 2;
}

.tsvst-edd-checkout__hero-meta {
	display: flex;
	align-items: flex-end;
	flex-direction: column;
	gap: 8px;
}

.tsvst-edd-checkout__cart-count {
	display: grid;
	grid-template-columns: 24px auto;
	min-width: 148px;
	min-height: 50px;
	align-content: center;
	column-gap: 8px;
	padding: 7px 11px;
	border: 1px solid rgba(109, 82, 235, .13);
	border-radius: 6px;
	background: rgba(255, 255, 255, .76);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .76);
}

.tsvst-edd-checkout__cart-count i {
	grid-row: 1 / 3;
	align-self: center;
	color: #6250bf;
	font-size: 15px;
}

.tsvst-edd-checkout__cart-count strong {
	color: #403858;
	font-size: 15px;
	font-weight: 950;
	line-height: 1.35;
}

.tsvst-edd-checkout__cart-count small {
	color: #8c95a6;
	font-size: 9px;
	font-weight: 800;
}

.tsvst-edd-checkout__secure-badge {
	display: inline-flex;
	min-height: 30px;
	align-items: center;
	gap: 6px;
	padding: 5px 11px;
	border: 1px solid rgba(34, 169, 120, .17);
	border-radius: 20px;
	color: #168a6d;
	background: rgba(34, 169, 120, .08);
	font-size: 10px;
	font-weight: 900;
}

/* ==========================================================================
   مراحل خرید
   ========================================================================== */

.tsvst-edd-checkout__steps {
	display: grid;
	grid-template-columns:
		minmax(0, 1fr)
		24px
		minmax(0, 1fr)
		24px
		minmax(0, 1fr);
	align-items: center;
	gap: 8px;
	margin-top: 13px;
	padding: 11px;
	border: 1px solid var(--checkout-line);
	border-radius: 7px;
	background: #fff;
	box-shadow: 0 9px 20px rgba(40, 47, 76, .05);
}

.tsvst-edd-checkout__steps > i {
	color: #b3bcc9;
	text-align: center;
	font-size: 14px;
}

.tsvst-edd-checkout__step {
	display: flex;
	align-items: center;
	gap: 10px;
	min-width: 0;
	padding: 7px;
}

.tsvst-edd-checkout__step > span {
	display: inline-flex;
	width: 34px;
	height: 34px;
	flex: 0 0 34px;
	align-items: center;
	justify-content: center;
	border: 1px solid rgba(109, 82, 235, .13);
	border-radius: 50%;
	color: #837992;
	background: #f5f6fa;
	font-size: 11px;
	font-weight: 950;
}

.tsvst-edd-checkout__step.is-active > span,
.tsvst-edd-checkout__step.is-complete > span {
	color: #fff;
	border-color: transparent;
	background: linear-gradient(
		135deg,
		var(--checkout-purple),
		var(--checkout-blue),
		var(--checkout-cyan)
	);
	box-shadow: 0 7px 15px rgba(61, 58, 135, .15);
}

.tsvst-edd-checkout__step.is-complete > span::before {
	content: "\f00c";
	font-family: FontAwesome;
}

.tsvst-edd-checkout__step.is-complete > span {
	font-size: 0;
}

.tsvst-edd-checkout__step > div,
.tsvst-edd-checkout__trust span {
	display: flex;
	min-width: 0;
	flex-direction: column;
}

.tsvst-edd-checkout__step strong,
.tsvst-edd-checkout__trust strong {
	color: #484155;
	font-size: 12.5px;
	font-weight: 950;
	line-height: 1.8;
}

.tsvst-edd-checkout__step small,
.tsvst-edd-checkout__trust small {
	color: #9099a9;
	font-size: 10px;
	font-weight: 700;
	line-height: 1.7;
}

/* ==========================================================================
   مزایا و راهنما
   ========================================================================== */

.tsvst-edd-checkout__trust {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 11px;
	margin-top: 13px;
}

.tsvst-edd-checkout__trust > div {
	display: flex;
	min-height: 68px;
	align-items: center;
	gap: 10px;
	padding: 11px 12px;
	border: 1px solid var(--checkout-line);
	border-radius: 7px;
	background: #fff;
	box-shadow: 0 9px 20px rgba(39, 45, 75, .045);
}

.tsvst-edd-checkout__trust > div > i {
	display: inline-flex;
	width: 38px;
	height: 38px;
	flex: 0 0 38px;
	align-items: center;
	justify-content: center;
	border-radius: 6px;
	color: #6250bf;
	background: linear-gradient(
		135deg,
		rgba(109, 82, 235, .11),
		rgba(22, 143, 195, .07),
		rgba(24, 184, 200, .08)
	);
	font-size: 14px;
}

.tsvst-edd-checkout__notice {
	display: flex;
	align-items: flex-start;
	gap: 11px;
	margin-top: 13px;
	padding: 13px 14px;
	border: 1px solid rgba(22, 143, 195, .14);
	border-radius: 7px;
	background: linear-gradient(
		135deg,
		rgba(109, 82, 235, .055),
		rgba(22, 143, 195, .045),
		rgba(24, 184, 200, .055)
	);
}

.tsvst-edd-checkout__notice-icon {
	display: inline-flex;
	width: 33px;
	height: 33px;
	flex: 0 0 33px;
	align-items: center;
	justify-content: center;
	border-radius: 6px;
	color: var(--checkout-blue);
	background: rgba(22, 143, 195, .08);
	font-size: 13px;
}

.tsvst-edd-checkout__notice > div {
	display: flex;
	min-width: 0;
	flex-direction: column;
}

.tsvst-edd-checkout__notice strong {
	color: #47405a;
	font-size: 12px;
	font-weight: 950;
	line-height: 1.8;
}

.tsvst-edd-checkout__notice span {
	color: #818b9c;
	font-size: 11px;
	font-weight: 700;
	line-height: 1.9;
}

/* ==========================================================================
   محتوای اصلی Checkout
   ========================================================================== */

.tsvst-edd-checkout__body {
	margin-top: 17px;
}

.tsvst-edd-checkout__body #edd_checkout_wrap,
.tsvst-edd-checkout__body #edd_checkout_cart_wrap,
.tsvst-edd-checkout__body #edd_purchase_form,
.tsvst-edd-checkout__body #edd_checkout_form_wrap,
.tsvst-edd-checkout__body #edd_purchase_form_wrap {
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	float: none !important;
}

/* ==========================================================================
   خلاصه سفارش
   ========================================================================== */

.tsvst-checkout-cart-panel {
	display: block !important;
	width: 100% !important;
	margin: 0 0 17px !important;
	overflow: hidden !important;
	border: 1px solid var(--checkout-line) !important;
	border-radius: 8px !important;
	background: #fff !important;
	box-shadow: var(--checkout-shadow) !important;
}

.tsvst-checkout-cart-panel__heading {
	display: flex !important;
	min-height: 72px !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 12px !important;
	margin: 0 !important;
	padding: 14px 16px !important;
	border: 0 !important;
	border-bottom: 1px solid rgba(109, 82, 235, .11) !important;
	background: linear-gradient(
		135deg,
		#f5f2ff,
		#eef7ff 55%,
		#ebfafa
	) !important;
}

.tsvst-checkout-cart-panel__title {
	display: flex !important;
	min-width: 0 !important;
	align-items: center !important;
	gap: 11px !important;
}

.tsvst-checkout-cart-panel__icon {
	display: inline-flex !important;
	width: 42px !important;
	height: 42px !important;
	flex: 0 0 42px !important;
	align-items: center !important;
	justify-content: center !important;
	border-radius: 6px !important;
	color: #fff !important;
	background: linear-gradient(
		135deg,
		var(--checkout-purple),
		var(--checkout-blue),
		var(--checkout-cyan)
	) !important;
	box-shadow: 0 8px 17px rgba(61, 58, 135, .17) !important;
	font-size: 15px !important;
}

.tsvst-checkout-cart-panel__copy {
	display: flex !important;
	min-width: 0 !important;
	flex-direction: column !important;
}

.tsvst-checkout-cart-panel__copy small {
	color: var(--checkout-blue) !important;
	font-family: monospace !important;
	font-size: 9px !important;
	font-weight: 900 !important;
	letter-spacing: .7px !important;
	line-height: 1.5 !important;
	direction: ltr !important;
}

.tsvst-checkout-cart-panel__copy strong {
	color: #3e3852 !important;
	font-size: 15px !important;
	font-weight: 950 !important;
	line-height: 1.7 !important;
}

.tsvst-checkout-cart-panel__count {
	display: flex !important;
	min-width: 70px !important;
	min-height: 43px !important;
	align-items: center !important;
	justify-content: center !important;
	flex-direction: column !important;
	padding: 6px 12px !important;
	border: 1px solid rgba(24, 184, 200, .17) !important;
	border-radius: 7px !important;
	color: #168d9a !important;
	background: rgba(24, 184, 200, .075) !important;
}

.tsvst-checkout-cart-panel__count strong {
	font-size: 15px !important;
	font-weight: 950 !important;
	line-height: 1.25 !important;
}

.tsvst-checkout-cart-panel__count small {
	font-size: 9px !important;
	font-weight: 850 !important;
}

.tsvst-edd-checkout__body #edd_checkout_cart {
	width: 100% !important;
	margin: 0 !important;
	border: 0 !important;
	border-collapse: separate !important;
	border-spacing: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
}

.tsvst-edd-checkout__body #edd_checkout_cart thead {
	background: #fafbfe !important;
}

.tsvst-edd-checkout__body #edd_checkout_cart th,
.tsvst-edd-checkout__body #edd_checkout_cart td {
	padding: 14px !important;
	border: 0 !important;
	border-bottom: 1px solid rgba(63, 76, 104, .085) !important;
	background: transparent !important;
	text-align: right !important;
	vertical-align: middle !important;
}

.tsvst-edd-checkout__body #edd_checkout_cart th {
	color: #5d566d !important;
	font-size: 11.5px !important;
	font-weight: 950 !important;
	line-height: 1.8 !important;
}

.tsvst-edd-checkout__body #edd_checkout_cart td {
	color: #616a7b !important;
	font-size: 12px !important;
	font-weight: 750 !important;
	line-height: 1.9 !important;
}

.tsvst-edd-checkout__body #edd_checkout_cart tbody tr:last-child td {
	border-bottom: 0 !important;
}

.tsvst-checkout-cart-product {
	display: grid !important;
	grid-template-columns: 62px minmax(0, 1fr) !important;
	align-items: center !important;
	gap: 12px !important;
}

.tsvst-checkout-cart-product__thumb {
	display: inline-flex !important;
	width: 60px !important;
	height: 60px !important;
	align-items: center !important;
	justify-content: center !important;
	overflow: hidden !important;
	border: 1px solid rgba(109, 82, 235, .13) !important;
	border-radius: 7px !important;
	color: #6550c8 !important;
	background: linear-gradient(
		135deg,
		rgba(109, 82, 235, .10),
		rgba(22, 143, 195, .06),
		rgba(24, 184, 200, .08)
	) !important;
	font-size: 17px !important;
}

.tsvst-checkout-cart-product__thumb img {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	margin: 0 !important;
	object-fit: cover !important;
}

.tsvst-checkout-cart-product__copy {
	display: flex !important;
	min-width: 0 !important;
	flex-direction: column !important;
}

.tsvst-checkout-cart-product__copy > small {
	margin-bottom: 2px !important;
	color: #969eae !important;
	font-size: 9px !important;
	font-weight: 800 !important;
}

.tsvst-checkout-cart-product__copy
.edd_checkout_cart_item_title {
	color: #403951 !important;
	font-size: 12.5px !important;
	font-weight: 950 !important;
	line-height: 1.9 !important;
	text-decoration: none !important;
}

.tsvst-checkout-cart-price {
	color: #4c4562 !important;
	font-size: 12px !important;
	font-weight: 950 !important;
	white-space: nowrap !important;
}

.tsvst-checkout-cart-actions {
	display: flex !important;
	align-items: center !important;
	justify-content: flex-start !important;
	flex-wrap: wrap !important;
	gap: 8px !important;
}

.tsvst-checkout-cart-quantity {
	display: inline-flex !important;
	align-items: center !important;
	gap: 6px !important;
	margin: 0 !important;
	color: #7e8798 !important;
	font-size: 10px !important;
	font-weight: 850 !important;
}

.tsvst-checkout-cart-quantity input {
	width: 58px !important;
	min-height: 34px !important;
	padding: 5px 7px !important;
	text-align: center !important;
}

.tsvst-edd-checkout__body
#edd_checkout_cart
.edd_cart_remove_item_btn {
	display: inline-flex !important;
	min-width: 42px !important;
	min-height: 36px !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 6px !important;
	margin: 0 !important;
	padding: 6px 10px !important;
	border: 1px solid rgba(213, 94, 107, .18) !important;
	border-radius: 6px !important;
	color: #bd5260 !important;
	background: rgba(213, 94, 107, .075) !important;
	box-shadow: none !important;
	font-size: 10px !important;
	font-weight: 900 !important;
	text-decoration: none !important;
}

.tsvst-edd-checkout__body
#edd_checkout_cart
.edd_cart_subtotal,
.tsvst-edd-checkout__body
#edd_checkout_cart
.edd_cart_tax,
.tsvst-edd-checkout__body
#edd_checkout_cart
.edd_cart_total {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 12px !important;
}

.tsvst-edd-checkout__body
#edd_checkout_cart
.edd_cart_total {
	padding: 15px 16px !important;
	color: #4f426f !important;
	background: linear-gradient(
		135deg,
		rgba(109, 82, 235, .065),
		rgba(22, 143, 195, .05),
		rgba(24, 184, 200, .07)
	) !important;
	font-size: 13px !important;
}

.tsvst-edd-checkout__body
#edd_checkout_cart
.edd_cart_total
.edd_cart_amount {
	font-size: 16px !important;
	font-weight: 950 !important;
}

/* ==========================================================================
   فرم Checkout
   ========================================================================== */

.tsvst-checkout-form-grid {
	display: grid !important;
	grid-template-columns:
		minmax(290px, .72fr)
		minmax(0, 1.35fr) !important;
	grid-template-areas:
		"discount personal"
		"payment personal"
		"submit personal" !important;
	gap: 16px !important;
	align-items: start !important;
	width: 100% !important;
	margin: 0 !important;
	direction: ltr !important;
}

.tsvst-checkout-form-grid > * {
	min-width: 0 !important;
	direction: rtl !important;
}

.tsvst-checkout-form-grid
> .tsvst-checkout-section--personal {
	grid-area: personal !important;
}

.tsvst-checkout-form-grid
> .tsvst-checkout-section--discount {
	grid-area: discount !important;
}

.tsvst-checkout-form-grid
> .tsvst-checkout-section--payment {
	grid-area: payment !important;
}

.tsvst-checkout-form-grid
> .tsvst-checkout-section--submit {
	grid-area: submit !important;
}

.tsvst-checkout-section,
.tsvst-checkout-layout-fallback
#edd_purchase_form fieldset,
.tsvst-checkout-layout-fallback
#edd_purchase_form
#edd_discount_code {
	position: relative !important;
	width: 100% !important;
	max-width: none !important;
	min-width: 0 !important;
	margin: 0 !important;
	padding: 0 17px 17px !important;
	overflow: hidden !important;
	border: 1px solid var(--checkout-line) !important;
	border-radius: 8px !important;
	background: #fff !important;
	box-shadow: var(--checkout-shadow) !important;
}

.tsvst-checkout-section__native-legend {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	overflow: hidden !important;
	clip: rect(0 0 0 0) !important;
	white-space: nowrap !important;
}

.tsvst-checkout-section__heading {
	display: flex !important;
	width: calc(100% + 34px) !important;
	min-height: 64px !important;
	align-items: center !important;
	gap: 10px !important;
	margin: 0 -17px 17px !important;
	padding: 12px 14px !important;
	border-bottom: 1px solid rgba(109, 82, 235, .11) !important;
	background: linear-gradient(
		135deg,
		#f5f2ff,
		#eef7ff 55%,
		#ebfafa
	) !important;
}

.tsvst-checkout-section__icon {
	display: inline-flex !important;
	width: 38px !important;
	height: 38px !important;
	flex: 0 0 38px !important;
	align-items: center !important;
	justify-content: center !important;
	border-radius: 6px !important;
	color: #fff !important;
	background: linear-gradient(
		135deg,
		var(--checkout-purple),
		var(--checkout-blue),
		var(--checkout-cyan)
	) !important;
	box-shadow: 0 7px 15px rgba(61, 58, 135, .16) !important;
	font-size: 13px !important;
}

.tsvst-checkout-section__copy {
	display: flex !important;
	min-width: 0 !important;
	flex-direction: column !important;
}

.tsvst-checkout-section__copy small {
	color: var(--checkout-blue) !important;
	font-family: monospace !important;
	font-size: 8px !important;
	font-weight: 900 !important;
	letter-spacing: .65px !important;
	line-height: 1.45 !important;
	direction: ltr !important;
}

.tsvst-checkout-section__copy strong {
	color: #3e3852 !important;
	font-size: 14px !important;
	font-weight: 950 !important;
	line-height: 1.8 !important;
}

/* اطلاعات شخصی */
.tsvst-checkout-section--personal {
	min-height: 100% !important;
}

@media (min-width: 901px) {
	.tsvst-checkout-section--personal
	#edd_checkout_user_info,
	.tsvst-checkout-section--personal
	#edd_register_fields,
	fieldset.tsvst-checkout-section--personal {
		display: grid !important;
		grid-template-columns:
			repeat(2, minmax(0, 1fr)) !important;
		column-gap: 14px !important;
		row-gap: 0 !important;
	}

	.tsvst-checkout-section--personal
	#edd-email-wrap,
	.tsvst-checkout-section--personal
	.edd-email-wrap,
	.tsvst-checkout-section--personal
	.edd_errors,
	.tsvst-checkout-section--personal
	.tsvst-checkout-section__heading,
	fieldset.tsvst-checkout-section--personal
	> #edd-email-wrap,
	fieldset.tsvst-checkout-section--personal
	> .edd-email-wrap,
	fieldset.tsvst-checkout-section--personal
	> .edd_errors,
	fieldset.tsvst-checkout-section--personal
	> .tsvst-checkout-section__heading {
		grid-column: 1 / -1 !important;
	}
}

/* نوشته‌ها و فیلدها */
.tsvst-edd-checkout__body
#edd_purchase_form p {
	margin: 0 0 13px !important;
}

.tsvst-edd-checkout__body
#edd_purchase_form label,
.tsvst-edd-checkout__body
#edd_purchase_form .edd-label {
	display: block !important;
	margin-bottom: 6px !important;
	color: #494156 !important;
	font-size: 12px !important;
	font-weight: 900 !important;
	line-height: 1.8 !important;
}

.tsvst-edd-checkout__body
#edd_purchase_form .edd-description,
.tsvst-edd-checkout__body
#edd_purchase_form .edd-description p {
	color: #8d96a7 !important;
	font-size: 10.5px !important;
	font-weight: 700 !important;
	line-height: 1.9 !important;
}

.tsvst-edd-checkout__body
#edd_purchase_form
input[type="text"],
.tsvst-edd-checkout__body
#edd_purchase_form
input[type="email"],
.tsvst-edd-checkout__body
#edd_purchase_form
input[type="tel"],
.tsvst-edd-checkout__body
#edd_purchase_form
input[type="password"],
.tsvst-edd-checkout__body
#edd_purchase_form
input[type="number"],
.tsvst-edd-checkout__body
#edd_purchase_form select,
.tsvst-edd-checkout__body
#edd_purchase_form textarea {
	display: block !important;
	width: 100% !important;
	min-width: 0 !important;
	min-height: 46px !important;
	margin: 0 !important;
	padding: 10px 12px !important;
	border: 1px solid var(--checkout-line-solid) !important;
	border-radius: 6px !important;
	outline: 0 !important;
	color: #303647 !important;
	background: #fff !important;
	box-shadow: inset 0 1px 2px rgba(38, 45, 67, .025) !important;
	font-family: inherit !important;
	font-size: 12px !important;
	font-weight: 750 !important;
	text-align: right !important;
	transition:
		border-color .18s ease,
		box-shadow .18s ease,
		background .18s ease !important;
}

.tsvst-edd-checkout__body
#edd_purchase_form
input:focus,
.tsvst-edd-checkout__body
#edd_purchase_form
select:focus,
.tsvst-edd-checkout__body
#edd_purchase_form
textarea:focus {
	border-color: rgba(109, 82, 235, .42) !important;
	box-shadow: 0 0 0 4px rgba(109, 82, 235, .07) !important;
}

/* کد تخفیف */
.tsvst-checkout-section--discount {
	background:
		linear-gradient(
			135deg,
			rgba(109, 82, 235, .025),
			rgba(22, 143, 195, .018),
			rgba(24, 184, 200, .025)
		),
		#fff !important;
}

.tsvst-checkout-section--discount
#edd_show_discount,
.tsvst-checkout-section--discount
.edd-show-discount {
	display: inline-flex !important;
	align-items: center !important;
	gap: 7px !important;
	margin: 0 !important;
	padding: 0 !important;
	color: #5e49bd !important;
	font-size: 11.5px !important;
	font-weight: 950 !important;
	line-height: 2 !important;
	text-decoration: none !important;
}

.tsvst-checkout-section--discount
#edd-discount {
	display: grid !important;
	grid-template-columns:
		minmax(0, 1fr)
		112px !important;
	gap: 8px !important;
	margin-top: 12px !important;
}

.tsvst-checkout-section--discount
#edd-discount button,
.tsvst-checkout-section--discount
#edd-discount input[type="submit"],
.tsvst-checkout-section--discount
.edd-apply-discount {
	display: inline-flex !important;
	width: 112px !important;
	min-height: 44px !important;
	align-items: center !important;
	justify-content: center !important;
	margin: 0 !important;
	padding: 8px 10px !important;
	border: 1px solid rgba(109, 82, 235, .16) !important;
	border-radius: 6px !important;
	color: #5f4abc !important;
	background: rgba(109, 82, 235, .075) !important;
	box-shadow: none !important;
	font-family: inherit !important;
	font-size: 10.5px !important;
	font-weight: 900 !important;
}

/* انتخاب روش پرداخت */
.tsvst-checkout-section--payment ul {
	display: grid !important;
	grid-template-columns: 1fr !important;
	gap: 9px !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

.tsvst-checkout-section--payment li {
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

.tsvst-checkout-section--payment li::before,
.tsvst-checkout-section--payment li::after {
	display: none !important;
	content: none !important;
}

.tsvst-checkout-gateway,
.tsvst-checkout-section--payment label,
.tsvst-checkout-section--payment
.edd-gateway-option {
	display: flex !important;
	width: 100% !important;
	min-height: 58px !important;
	align-items: center !important;
	gap: 9px !important;
	margin: 0 !important;
	padding: 11px 12px !important;
	border: 1px solid rgba(63, 76, 104, .11) !important;
	border-radius: 7px !important;
	color: #4c455a !important;
	background: #fafbfe !important;
	font-size: 11.5px !important;
	font-weight: 900 !important;
	cursor: pointer !important;
	transition:
		border-color .18s ease,
		background .18s ease,
		transform .18s ease !important;
}

.tsvst-checkout-gateway:hover,
.tsvst-checkout-section--payment label:hover {
	border-color: rgba(109, 82, 235, .30) !important;
	background: rgba(109, 82, 235, .045) !important;
	transform: translateY(-1px);
}

.tsvst-checkout-section--payment
input[type="radio"] {
	width: 18px !important;
	height: 18px !important;
	margin: 0 !important;
	accent-color: var(--checkout-purple) !important;
}

/* پرداخت نهایی */
.tsvst-checkout-section--submit {
	padding-bottom: 17px !important;
}

.tsvst-checkout-section--submit
#edd_final_total_wrap,
.tsvst-checkout-section--submit
#edd-final-total-wrap,
#edd_final_total_wrap,
#edd-final-total-wrap {
	display: flex !important;
	width: 100% !important;
	min-height: 60px !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 10px !important;
	margin: 0 0 10px !important;
	padding: 12px 14px !important;
	border: 1px solid rgba(24, 184, 200, .17) !important;
	border-radius: 7px !important;
	color: #494156 !important;
	background: linear-gradient(
		135deg,
		rgba(109, 82, 235, .065),
		rgba(22, 143, 195, .05),
		rgba(24, 184, 200, .07)
	) !important;
	font-size: 12px !important;
	font-weight: 900 !important;
}

.tsvst-checkout-section--submit
.edd_cart_amount,
#edd_final_total_wrap .edd_cart_amount,
#edd-final-total-wrap .edd_cart_amount {
	color: #4d3f70 !important;
	font-size: 15px !important;
	font-weight: 950 !important;
}

.tsvst-checkout-section--submit
#edd_terms,
.tsvst-checkout-section--submit
#edd_terms_agreement {
	margin: 0 0 10px !important;
	padding: 11px 12px !important;
	border: 1px solid rgba(63, 76, 104, .09) !important;
	border-radius: 7px !important;
	color: #747d8f !important;
	background: #fafbfe !important;
	font-size: 10.5px !important;
	font-weight: 700 !important;
	line-height: 1.9 !important;
}

.tsvst-checkout-section--submit
#edd_purchase_submit {
	margin: 0 !important;
	padding: 0 !important;
}

.tsvst-checkout-submit,
#edd-purchase-button,
#edd_purchase_submit input[type="submit"],
#edd_purchase_submit button[type="submit"] {
	display: inline-flex !important;
	width: 100% !important;
	min-height: 52px !important;
	align-items: center !important;
	justify-content: center !important;
	margin: 0 !important;
	padding: 10px 17px !important;
	border: 0 !important;
	border-radius: 7px !important;
	color: #fff !important;
	background: linear-gradient(
		135deg,
		var(--checkout-purple),
		var(--checkout-blue),
		var(--checkout-cyan)
	) !important;
	box-shadow: 0 11px 23px rgba(61, 58, 135, .19) !important;
	font-family: inherit !important;
	font-size: 13px !important;
	font-weight: 950 !important;
	cursor: pointer !important;
	transition:
		transform .18s ease,
		box-shadow .18s ease,
		filter .18s ease !important;
}

.tsvst-checkout-submit:hover,
#edd-purchase-button:hover,
#edd_purchase_submit input[type="submit"]:hover,
#edd_purchase_submit button[type="submit"]:hover {
	box-shadow: 0 14px 28px rgba(61, 58, 135, .24) !important;
	filter: saturate(1.08);
	transform: translateY(-1px);
}

/* پیام‌ها و حالت خالی */
.tsvst-edd-checkout__body
.edd_errors,
.tsvst-edd-checkout__body
.edd-alert,
.tsvst-edd-checkout__body
.edd_error,
.tsvst-edd-checkout__body
#edd_error,
.tsvst-edd-checkout__body
.edd_success {
	margin: 0 0 14px !important;
	padding: 12px 14px !important;
	border: 1px solid rgba(213, 94, 107, .18) !important;
	border-radius: 7px !important;
	color: #89525d !important;
	background: rgba(213, 94, 107, .075) !important;
	font-size: 11px !important;
	font-weight: 750 !important;
	line-height: 1.9 !important;
}

.tsvst-edd-checkout__body
.edd_empty_cart,
.tsvst-edd-checkout__body
.edd_empty_cart_message {
	padding: 28px 18px !important;
	border: 1px dashed rgba(109, 82, 235, .22) !important;
	border-radius: 8px !important;
	color: #7d8597 !important;
	background: linear-gradient(
		135deg,
		rgba(109, 82, 235, .045),
		rgba(22, 143, 195, .03),
		rgba(24, 184, 200, .04)
	) !important;
	text-align: center !important;
	font-size: 12px !important;
	line-height: 2 !important;
}

/* ==========================================================================
   فوتر
   ========================================================================== */

.tsvst-edd-checkout__footer {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 13px;
	margin-top: 15px;
	padding: 12px 14px;
	border: 1px solid var(--checkout-line);
	border-radius: 7px;
	background: rgba(255, 255, 255, .82);
	box-shadow: 0 9px 20px rgba(39, 45, 75, .045);
}

.tsvst-edd-checkout__footer-copy {
	display: inline-flex;
	min-width: 0;
	align-items: center;
	gap: 8px;
	color: #818a9c;
	font-size: 10.5px;
	font-weight: 700;
	line-height: 1.9;
}

.tsvst-edd-checkout__footer-copy i {
	color: var(--checkout-green);
}

.tsvst-edd-checkout__footer nav {
	display: flex;
	flex: 0 0 auto;
	align-items: center;
	gap: 7px;
}

.tsvst-edd-checkout__footer nav a {
	display: inline-flex !important;
	min-height: 32px !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 6px !important;
	padding: 6px 10px !important;
	border: 1px solid rgba(109, 82, 235, .13) !important;
	border-radius: 6px !important;
	color: #5f4bbb !important;
	background: rgba(109, 82, 235, .055) !important;
	font-size: 9.5px !important;
	font-weight: 900 !important;
	text-decoration: none !important;
}

/* ==========================================================================
   دارک مود
   ========================================================================== */

html.dark-invert
.theme-invert-wrap
.tsvst-edd-checkout {
	filter: invert(1) hue-rotate(180deg) !important;
	color-scheme: dark;
	isolation: isolate;

	--checkout-heading: #f5f3ff;
	--checkout-text: #e9edf6;
	--checkout-muted: rgba(226, 231, 242, .63);
	--checkout-line: rgba(255, 255, 255, .09);
	--checkout-line-solid: rgba(255, 255, 255, .105);
}

html.dark-invert
.theme-invert-wrap
.tsvst-edd-checkout__hero {
	border-color: rgba(158, 143, 255, .18) !important;
	background:
		linear-gradient(
			118deg,
			rgba(124, 98, 255, .18) 0%,
			rgba(124, 98, 255, .18) 22%,
			transparent 22%,
			transparent 42%,
			rgba(31, 158, 211, .14) 42%,
			rgba(31, 158, 211, .14) 66%,
			transparent 66%,
			transparent 79%,
			rgba(31, 211, 197, .14) 79%,
			rgba(31, 211, 197, .14) 100%
		),
		linear-gradient(135deg, #17142b, #101d2d 56%, #0d292f) !important;
}

html.dark-invert
.theme-invert-wrap
.tsvst-edd-checkout__steps,
html.dark-invert
.theme-invert-wrap
.tsvst-edd-checkout__trust > div,
html.dark-invert
.theme-invert-wrap
.tsvst-checkout-cart-panel,
html.dark-invert
.theme-invert-wrap
.tsvst-checkout-section,
html.dark-invert
.theme-invert-wrap
.tsvst-edd-checkout__footer {
	border-color: rgba(255, 255, 255, .10) !important;
	background: linear-gradient(
		135deg,
		rgba(18, 21, 37, .92),
		rgba(13, 29, 43, .86),
		rgba(10, 40, 45, .82)
	) !important;
	box-shadow: 0 15px 32px rgba(0, 0, 0, .24) !important;
}

html.dark-invert
.theme-invert-wrap
.tsvst-checkout-cart-panel__heading,
html.dark-invert
.theme-invert-wrap
.tsvst-checkout-section__heading {
	border-bottom-color: rgba(255, 255, 255, .08) !important;
	background: linear-gradient(
		135deg,
		#201b3a,
		#15283c 55%,
		#10343a
	) !important;
}

html.dark-invert
.theme-invert-wrap
.tsvst-edd-checkout__hero-copy h1,
html.dark-invert
.theme-invert-wrap
.tsvst-checkout-cart-panel__copy strong,
html.dark-invert
.theme-invert-wrap
.tsvst-checkout-section__copy strong,
html.dark-invert
.theme-invert-wrap
.tsvst-edd-checkout__step strong,
html.dark-invert
.theme-invert-wrap
.tsvst-edd-checkout__trust strong {
	color: #f5f3ff !important;
}

html.dark-invert
.theme-invert-wrap
.tsvst-edd-checkout__body
#edd_checkout_cart thead {
	background: rgba(255, 255, 255, .03) !important;
}

html.dark-invert
.theme-invert-wrap
.tsvst-edd-checkout__body
#edd_checkout_cart th {
	color: #e9e5ff !important;
}

html.dark-invert
.theme-invert-wrap
.tsvst-edd-checkout__body
#edd_checkout_cart td {
	color: rgba(232, 236, 246, .72) !important;
	border-bottom-color: rgba(255, 255, 255, .07) !important;
}

html.dark-invert
.theme-invert-wrap
.tsvst-edd-checkout__body
#edd_purchase_form
input[type="text"],
html.dark-invert
.theme-invert-wrap
.tsvst-edd-checkout__body
#edd_purchase_form
input[type="email"],
html.dark-invert
.theme-invert-wrap
.tsvst-edd-checkout__body
#edd_purchase_form
input[type="tel"],
html.dark-invert
.theme-invert-wrap
.tsvst-edd-checkout__body
#edd_purchase_form
input[type="password"],
html.dark-invert
.theme-invert-wrap
.tsvst-edd-checkout__body
#edd_purchase_form
input[type="number"],
html.dark-invert
.theme-invert-wrap
.tsvst-edd-checkout__body
#edd_purchase_form select,
html.dark-invert
.theme-invert-wrap
.tsvst-edd-checkout__body
#edd_purchase_form textarea {
	color: #fff !important;
	border-color: rgba(255, 255, 255, .10) !important;
	background: rgba(255, 255, 255, .045) !important;
}

html.dark-invert
.theme-invert-wrap
.tsvst-checkout-gateway,
html.dark-invert
.theme-invert-wrap
.tsvst-checkout-section--payment label {
	color: #eeeaff !important;
	border-color: rgba(255, 255, 255, .09) !important;
	background: rgba(255, 255, 255, .04) !important;
}

/* ==========================================================================
   واکنش‌گرا
   ========================================================================== */

@media (max-width: 980px) {
	.tsvst-edd-checkout__trust {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.tsvst-checkout-form-grid {
		grid-template-columns: 1fr !important;
		grid-template-areas:
			"personal"
			"discount"
			"payment"
			"submit" !important;
	}
}

@media (max-width: 680px) {
	.tsvst-edd-checkout__hero {
		grid-template-columns: 46px minmax(0, 1fr);
		min-height: 0;
		padding: 15px;
	}

	.tsvst-edd-checkout__hero-icon {
		width: 44px;
		height: 44px;
		font-size: 16px;
	}

	.tsvst-edd-checkout__hero-copy h1 {
		font-size: 17px !important;
	}

	.tsvst-edd-checkout__hero-copy p {
		font-size: 10.5px;
	}

	.tsvst-edd-checkout__hero-meta {
		grid-column: 1 / -1;
		width: 100%;
		align-items: stretch;
		flex-direction: row;
	}

	.tsvst-edd-checkout__cart-count {
		flex: 1 1 auto;
	}

	.tsvst-edd-checkout__secure-badge {
		justify-content: center;
	}

	.tsvst-edd-checkout__steps {
		display: flex;
		align-items: stretch;
		flex-direction: column;
	}

	.tsvst-edd-checkout__steps > i {
		transform: rotate(-90deg);
	}

	.tsvst-edd-checkout__trust {
		grid-template-columns: 1fr;
	}

	.tsvst-checkout-section--personal
	#edd_checkout_user_info,
	.tsvst-checkout-section--personal
	#edd_register_fields,
	fieldset.tsvst-checkout-section--personal {
		grid-template-columns: 1fr !important;
	}

	.tsvst-checkout-section--discount
	#edd-discount {
		grid-template-columns: 1fr !important;
	}

	.tsvst-checkout-section--discount
	#edd-discount button,
	.tsvst-checkout-section--discount
	#edd-discount input[type="submit"],
	.tsvst-checkout-section--discount
	.edd-apply-discount {
		width: 100% !important;
	}

	.tsvst-edd-checkout__body
	#edd_checkout_cart thead {
		display: none !important;
	}

	.tsvst-edd-checkout__body
	#edd_checkout_cart,
	.tsvst-edd-checkout__body
	#edd_checkout_cart tbody {
		display: block !important;
		width: 100% !important;
	}

	.tsvst-edd-checkout__body
	#edd_checkout_cart tbody tr.edd_cart_item {
		display: block !important;
		margin: 10px !important;
		overflow: hidden !important;
		border: 1px solid var(--checkout-line) !important;
		border-radius: 7px !important;
		background: #fff !important;
		box-shadow: 0 8px 18px rgba(39, 45, 75, .045) !important;
	}

	.tsvst-edd-checkout__body
	#edd_checkout_cart tbody
	tr.edd_cart_item td {
		display: grid !important;
		grid-template-columns: 84px minmax(0, 1fr) !important;
		width: 100% !important;
		align-items: center !important;
		gap: 9px !important;
		padding: 10px !important;
	}

	.tsvst-edd-checkout__body
	#edd_checkout_cart tbody
	tr.edd_cart_item td::before {
		content: attr(data-label);
		color: #8b94a4;
		font-size: 9.5px;
		font-weight: 900;
	}

	.tsvst-edd-checkout__body
	#edd_checkout_cart tbody
	tr.edd_cart_item
	td.edd_cart_item_name {
		display: block !important;
	}

	.tsvst-edd-checkout__body
	#edd_checkout_cart tbody
	tr.edd_cart_item
	td.edd_cart_item_name::before {
		display: none !important;
		content: none !important;
	}

	.tsvst-checkout-cart-product {
		grid-template-columns: 52px minmax(0, 1fr) !important;
	}

	.tsvst-checkout-cart-product__thumb {
		width: 50px !important;
		height: 50px !important;
	}

	.tsvst-edd-checkout__footer {
		align-items: stretch;
		flex-direction: column;
	}

	.tsvst-edd-checkout__footer nav {
		width: 100%;
	}

	.tsvst-edd-checkout__footer nav a {
		flex: 1 1 50%;
	}
}

@media (max-width: 430px) {
	.tsvst-edd-checkout__hero-meta {
		flex-direction: column;
	}

	.tsvst-edd-checkout__body
	#edd_checkout_cart tbody
	tr.edd_cart_item td {
		grid-template-columns: 72px minmax(0, 1fr) !important;
	}
}
