:root {
	--jahanara-pay-brand: #006039;
	--jahanara-pay-brand-dark: #004b2d;
	--jahanara-pay-brand-soft: #eaf5ef;
	--jahanara-pay-ink: #17211c;
	--jahanara-pay-muted: #66736d;
	--jahanara-pay-line: #dfe8e3;
	--jahanara-pay-soft: #f5f7f6;
	--jahanara-pay-danger: #b42318;
	--jahanara-pay-radius: 18px;
}

/* Three-step classic / Elementor checkout. */
form.checkout.jahanara-checkout-enhanced {
	display: block !important;
	max-width: 980px;
	margin: 26px auto 54px;
	direction: rtl;
	color: var(--jahanara-pay-ink);
}

form.checkout.jahanara-checkout-enhanced::before,
form.checkout.jahanara-checkout-enhanced::after {
	display: none !important;
}

form.checkout.jahanara-checkout-enhanced > :not(.jahanara-checkout-shell):not(.woocommerce-NoticeGroup) {
	display: none !important;
}

form.checkout.jahanara-checkout-enhanced .jahanara-checkout-shell {
	float: none !important;
	width: 100% !important;
	box-sizing: border-box;
	margin: 0 !important;
	padding: clamp(20px, 4vw, 42px) !important;
	border: 1px solid rgba(0, 96, 57, .09);
	border-radius: 26px;
	background: #fff;
	box-shadow: 0 18px 60px rgba(27, 54, 42, .11);
}

.jahanara-checkout-header {
	text-align: center;
	margin: 0 auto 27px;
}

.jahanara-checkout-header h1 {
	color: var(--jahanara-pay-ink);
	font-size: clamp(1.45rem, 3vw, 2rem);
	font-weight: 800;
	line-height: 1.45;
	margin: 0 0 7px;
}

.jahanara-checkout-header p {
	max-width: 620px;
	color: var(--jahanara-pay-muted);
	font-size: .95rem;
	line-height: 1.9;
	margin: 0 auto;
}

.jahanara-stepper {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 10px;
	margin: 0 0 32px;
	padding: 5px;
	border-radius: 17px;
	background: var(--jahanara-pay-soft);
}

.jahanara-stepper__step {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 9px;
	min-width: 0;
	min-height: 52px;
	box-sizing: border-box;
	padding: 9px 12px;
	border: 0;
	border-radius: 13px;
	background: transparent;
	box-shadow: none;
	color: #77817c;
	font: inherit;
	font-size: .91rem;
	font-weight: 700;
	cursor: pointer;
	transition: background .2s ease, color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.jahanara-stepper__step:hover:not(:disabled) {
	color: var(--jahanara-pay-brand);
	transform: translateY(-1px);
}

.jahanara-stepper__step:disabled {
	cursor: default;
	opacity: .72;
}

.jahanara-stepper__step.is-active {
	background: #fff;
	box-shadow: 0 5px 18px rgba(17, 45, 32, .09);
	color: var(--jahanara-pay-brand);
}

.jahanara-stepper__step.is-complete {
	color: var(--jahanara-pay-brand);
}

.jahanara-stepper__number {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 28px;
	width: 28px;
	height: 28px;
	border: 1px solid #ccd8d2;
	border-radius: 50%;
	background: #fff;
	font-size: .82rem;
	font-variant-numeric: tabular-nums;
}

.jahanara-stepper__step.is-active .jahanara-stepper__number,
.jahanara-stepper__step.is-complete .jahanara-stepper__number {
	border-color: var(--jahanara-pay-brand);
	background: var(--jahanara-pay-brand);
	color: #fff;
}

.jahanara-stepper__step.is-complete:not(.is-active) .jahanara-stepper__number {
	font-size: 0;
}

.jahanara-stepper__step.is-complete:not(.is-active) .jahanara-stepper__number::after {
	content: "✓";
	font-size: .9rem;
}

.jahanara-checkout-panel[hidden] {
	display: none !important;
}

.jahanara-checkout-panel.is-active {
	display: block;
	animation: jahanara-panel-enter .24s ease both;
}

@keyframes jahanara-panel-enter {
	from { opacity: 0; transform: translateY(7px); }
	to { opacity: 1; transform: translateY(0); }
}

.jahanara-panel-heading {
	display: flex;
	align-items: center;
	gap: 13px;
	margin: 0 0 22px;
}

.jahanara-panel-heading__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 43px;
	width: 43px;
	height: 43px;
	border-radius: 14px;
	background: var(--jahanara-pay-brand-soft);
	color: var(--jahanara-pay-brand);
	font-weight: 800;
}

.jahanara-panel-heading h2 {
	color: var(--jahanara-pay-ink);
	font-size: 1.13rem;
	font-weight: 800;
	line-height: 1.5;
	margin: 0;
}

.jahanara-panel-heading p {
	color: var(--jahanara-pay-muted);
	font-size: .84rem;
	line-height: 1.8;
	margin: 2px 0 0;
}

.jahanara-review-table-wrap {
	overflow: hidden;
	border: 1px solid var(--jahanara-pay-line);
	border-radius: var(--jahanara-pay-radius);
	background: #fff;
}

form.checkout.jahanara-checkout-enhanced table.shop_table {
	width: 100%;
	margin: 0;
	border: 0;
	border-collapse: collapse;
	border-radius: 0;
	background: transparent;
}

form.checkout.jahanara-checkout-enhanced table.shop_table th,
form.checkout.jahanara-checkout-enhanced table.shop_table td {
	padding: 14px 16px;
	border: 0;
	border-bottom: 1px solid var(--jahanara-pay-line);
	background: transparent;
	text-align: right;
	vertical-align: middle;
}

form.checkout.jahanara-checkout-enhanced table.shop_table tr:last-child th,
form.checkout.jahanara-checkout-enhanced table.shop_table tr:last-child td {
	border-bottom: 0;
}

form.checkout.jahanara-checkout-enhanced table.shop_table td.product-total,
form.checkout.jahanara-checkout-enhanced table.shop_table tfoot td {
	text-align: left;
	white-space: nowrap;
}

form.checkout.jahanara-checkout-enhanced table.shop_table .order-total {
	background: var(--jahanara-pay-brand-soft);
	color: var(--jahanara-pay-brand-dark);
	font-size: 1.03rem;
}

form.checkout.jahanara-checkout-enhanced #shipping_method {
	display: grid;
	gap: 8px;
	margin: 0;
	text-align: right;
}

form.checkout.jahanara-checkout-enhanced #shipping_method li {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	margin: 0;
	padding: 10px 12px;
	border: 1px solid var(--jahanara-pay-line);
	border-radius: 12px;
	background: #fff;
}

form.checkout.jahanara-checkout-enhanced #shipping_method input {
	margin-top: 5px;
	accent-color: var(--jahanara-pay-brand);
}

form.checkout.jahanara-checkout-enhanced #customer_details,
form.checkout.jahanara-checkout-enhanced #customer_details .col-1,
form.checkout.jahanara-checkout-enhanced #customer_details .col-2 {
	display: block;
	float: none !important;
	width: 100% !important;
	margin: 0 !important;
}

form.checkout.jahanara-checkout-enhanced #customer_details .woocommerce-billing-fields__field-wrapper,
form.checkout.jahanara-checkout-enhanced #customer_details .woocommerce-shipping-fields__field-wrapper,
form.checkout.jahanara-checkout-enhanced #customer_details .woocommerce-additional-fields__field-wrapper {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 15px;
}

form.checkout.jahanara-checkout-enhanced #customer_details h3 {
	color: var(--jahanara-pay-ink);
	font-size: 1rem;
	font-weight: 800;
	margin: 22px 0 13px;
}

form.checkout.jahanara-checkout-enhanced #customer_details h3:first-child {
	margin-top: 0;
}

form.checkout.jahanara-checkout-enhanced .form-row {
	float: none;
	width: 100%;
	box-sizing: border-box;
	margin: 0;
	padding: 0;
}

form.checkout.jahanara-checkout-enhanced .form-row-wide,
form.checkout.jahanara-checkout-enhanced #billing_address_1_field,
form.checkout.jahanara-checkout-enhanced #shipping_address_1_field,
form.checkout.jahanara-checkout-enhanced #order_comments_field {
	grid-column: 1 / -1;
}

form.checkout.jahanara-checkout-enhanced .form-row label {
	display: block;
	margin: 0 0 7px;
	color: #3a4640;
	font-size: .87rem;
	font-weight: 700;
	line-height: 1.7;
}

form.checkout.jahanara-checkout-enhanced .required {
	color: var(--jahanara-pay-danger);
	text-decoration: none;
}

form.checkout.jahanara-checkout-enhanced .input-text,
form.checkout.jahanara-checkout-enhanced select,
form.checkout.jahanara-checkout-enhanced .select2-container .select2-selection--single {
	width: 100%;
	min-height: 48px;
	box-sizing: border-box;
	margin: 0;
	padding: 10px 13px;
	border: 1px solid transparent;
	border-radius: 12px;
	outline: 0;
	background: var(--jahanara-pay-soft);
	box-shadow: none;
	color: var(--jahanara-pay-ink);
	font: inherit;
	font-size: .92rem;
	transition: border-color .18s ease, background .18s ease, box-shadow .18s ease;
}

form.checkout.jahanara-checkout-enhanced textarea.input-text {
	min-height: 90px;
	resize: vertical;
}

form.checkout.jahanara-checkout-enhanced .select2-container .select2-selection--single {
	display: flex;
	align-items: center;
}

form.checkout.jahanara-checkout-enhanced .select2-container--default .select2-selection--single .select2-selection__rendered {
	width: 100%;
	padding: 0;
	color: var(--jahanara-pay-ink);
	line-height: 1.6;
}

form.checkout.jahanara-checkout-enhanced .select2-container--default .select2-selection--single .select2-selection__arrow {
	top: 10px;
	right: auto;
	left: 10px;
}

form.checkout.jahanara-checkout-enhanced .input-text:focus,
form.checkout.jahanara-checkout-enhanced select:focus,
form.checkout.jahanara-checkout-enhanced .select2-container--focus .select2-selection--single {
	border-color: var(--jahanara-pay-brand);
	background: #fff;
	box-shadow: 0 0 0 3px rgba(0, 96, 57, .1);
}

form.checkout.jahanara-checkout-enhanced .woocommerce-invalid .input-text,
form.checkout.jahanara-checkout-enhanced .woocommerce-invalid select,
form.checkout.jahanara-checkout-enhanced .woocommerce-invalid .select2-selection--single {
	border-color: var(--jahanara-pay-danger);
	background: #fff8f7;
}

.jahanara-step-validation-message {
	margin: 15px 0 0;
	padding: 11px 13px;
	border-radius: 11px;
	background: #fff0ef;
	color: #8f2923;
	font-size: .88rem;
}

.jahanara-step-validation-message[hidden] {
	display: none !important;
}

.jahanara-vat-choice,
.jahanara-block-invoice-choice {
	position: relative;
	box-sizing: border-box;
	margin: 18px 0 0;
	border: 1px solid var(--jahanara-pay-line);
	border-radius: 15px;
	background: #fff;
	transition: border-color .18s ease, box-shadow .18s ease, opacity .18s ease;
}

.jahanara-vat-choice:hover,
.jahanara-block-invoice-choice:hover {
	border-color: rgba(0, 96, 57, .42);
	box-shadow: 0 7px 20px rgba(0, 96, 57, .06);
}

.jahanara-vat-choice.is-loading,
.jahanara-block-invoice-choice.is-loading {
	opacity: .62;
	pointer-events: none;
}

.jahanara-vat-choice__toggle,
.jahanara-block-invoice-choice__toggle {
	display: flex;
	align-items: center;
	gap: 12px;
	min-height: 70px;
	box-sizing: border-box;
	padding: 13px 15px;
	cursor: pointer;
}

.jahanara-vat-choice__toggle > input[type="checkbox"],
.jahanara-block-invoice-choice__toggle > input[type="checkbox"] {
	flex: 0 0 auto;
	width: 19px;
	height: 19px;
	margin: 0;
	accent-color: var(--jahanara-pay-brand);
}

.jahanara-vat-choice__text,
.jahanara-block-invoice-choice__text {
	display: grid;
	flex: 1 1 auto;
	gap: 3px;
	min-width: 0;
}

.jahanara-vat-choice__text strong,
.jahanara-block-invoice-choice__text strong {
	color: var(--jahanara-pay-ink);
	font-size: .92rem;
}

.jahanara-vat-choice__text small,
.jahanara-block-invoice-choice__text small {
	color: var(--jahanara-pay-muted);
	font-size: .79rem;
	font-weight: 400;
	line-height: 1.7;
}

.jahanara-vat-choice__rate,
.jahanara-block-invoice-choice__rate {
	flex: 0 0 auto;
	padding: 5px 9px;
	border-radius: 999px;
	background: var(--jahanara-pay-brand-soft);
	color: var(--jahanara-pay-brand);
	font-size: .8rem;
	font-weight: 800;
	direction: ltr;
}

.jahanara-invoice-fields,
.jahanara-block-invoice-fields {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 13px;
	padding: 0 15px 15px;
	border-top: 1px solid var(--jahanara-pay-line);
}

.jahanara-invoice-fields[hidden] {
	display: none !important;
}

.jahanara-invoice-field,
.jahanara-block-invoice-field {
	min-width: 0;
	margin: 13px 0 0 !important;
}

.jahanara-invoice-field label,
.jahanara-block-invoice-field label {
	display: block;
	margin: 0 0 6px;
	color: var(--jahanara-pay-ink);
	font-size: .8rem;
	font-weight: 700;
}

.jahanara-invoice-field label .optional,
.jahanara-block-invoice-field label small {
	color: var(--jahanara-pay-muted);
	font-size: .75rem;
	font-weight: 400;
}

.jahanara-block-invoice-field input {
	width: 100%;
	min-height: 44px;
	box-sizing: border-box;
	padding: 9px 11px;
	border: 1px solid var(--jahanara-pay-line);
	border-radius: 10px;
	outline: 0;
	background: var(--jahanara-pay-soft);
	color: var(--jahanara-pay-ink);
	font: inherit;
}

.jahanara-block-invoice-field input:focus {
	border-color: var(--jahanara-pay-brand);
	background: #fff;
	box-shadow: 0 0 0 3px rgba(0, 96, 57, .1);
}

.jahanara-block-invoice-error {
	margin: 0 15px 15px;
	padding: 9px 11px;
	border-radius: 9px;
	background: #fff0ef;
	color: #8f2923;
	font-size: .8rem;
}

.jahanara-block-invoice-slot {
	padding: 0 !important;
	border: 0 !important;
}

.jahanara-block-invoice-slot .jahanara-block-invoice-choice {
	width: 100%;
	margin: 0;
}

form.checkout.jahanara-checkout-enhanced #payment {
	border: 1px solid var(--jahanara-pay-line);
	border-radius: var(--jahanara-pay-radius);
	background: #fff;
	overflow: hidden;
}

form.checkout.jahanara-checkout-enhanced #payment ul.payment_methods {
	margin: 0;
	padding: 10px;
	border: 0;
	background: #fff;
}

form.checkout.jahanara-checkout-enhanced #payment ul.payment_methods > li {
	margin: 0 0 9px;
	padding: 13px 14px;
	border: 1px solid var(--jahanara-pay-line);
	border-radius: 14px;
	background: #fff;
}

form.checkout.jahanara-checkout-enhanced #payment ul.payment_methods > li:last-child {
	margin-bottom: 0;
}

form.checkout.jahanara-checkout-enhanced #payment ul.payment_methods input[type="radio"] {
	margin: 4px 0 0 8px;
	accent-color: var(--jahanara-pay-brand);
}

form.checkout.jahanara-checkout-enhanced #payment ul.payment_methods label {
	color: var(--jahanara-pay-ink);
	font-weight: 800;
}

form.checkout.jahanara-checkout-enhanced #payment div.payment_box {
	margin: 11px 0 0;
	padding: 14px;
	border-radius: 12px;
	background: var(--jahanara-pay-soft);
	color: #445149;
	font-size: .9rem;
	line-height: 1.85;
}

form.checkout.jahanara-checkout-enhanced #payment div.payment_box::before {
	display: none;
}

form.checkout.jahanara-checkout-enhanced #payment .place-order {
	margin: 0;
	padding: 18px;
	border-top: 1px solid var(--jahanara-pay-line);
	background: #fff;
}

form.checkout.jahanara-checkout-enhanced #payment #place_order {
	float: none;
	width: 100%;
	min-height: 50px;
	margin: 13px 0 0;
	border: 0;
	border-radius: 13px;
	background: var(--jahanara-pay-brand);
	box-shadow: 0 9px 20px rgba(0, 96, 57, .2);
	color: #fff;
	font: inherit;
	font-weight: 800;
}

form.checkout.jahanara-checkout-enhanced #payment #place_order:hover,
form.checkout.jahanara-checkout-enhanced #payment #place_order:focus {
	background: var(--jahanara-pay-brand-dark);
}

/* TeraWallet balance decision. The paired accounting fees preserve the current
 * down payment while TeraWallet keeps ownership of debit/refund bookkeeping. */
.jahanara-wallet-offer {
	direction: rtl;
	display: flex;
	align-items: flex-start;
	gap: 13px;
	box-sizing: border-box;
	width: 100%;
	margin: 0 0 15px;
	padding: 15px 16px;
	border: 1px solid var(--jahanara-pay-line);
	border-radius: 14px;
	background: #f8fbf9;
	color: var(--jahanara-pay-ink);
	transition: border-color .18s ease, background-color .18s ease, opacity .18s ease;
}

.jahanara-wallet-offer.is-selected {
	border-color: rgba(0, 96, 57, .48);
	background: var(--jahanara-pay-brand-soft);
}

.jahanara-wallet-offer.is-loading {
	opacity: .58;
	pointer-events: none;
}

.jahanara-wallet-offer__icon {
	display: grid;
	place-items: center;
	flex: 0 0 38px;
	width: 38px;
	height: 38px;
	border-radius: 12px;
	background: var(--jahanara-pay-brand);
	color: #fff;
	font-size: 19px;
	line-height: 1;
}

.jahanara-wallet-offer__content {
	flex: 1 1 auto;
	min-width: 0;
}

.jahanara-wallet-offer__content > strong {
	display: block;
	color: var(--jahanara-pay-brand-dark);
	font-size: .94rem;
	line-height: 1.8;
}

.jahanara-wallet-offer__content > p {
	margin: 2px 0 10px;
	color: var(--jahanara-pay-muted);
	font-size: .84rem;
	line-height: 1.8;
}

.jahanara-wallet-offer__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

form.checkout .jahanara-wallet-offer__actions button {
	box-sizing: border-box !important;
	min-height: 39px !important;
	margin: 0 !important;
	padding: 8px 13px !important;
	border: 1px solid #b9c9c0 !important;
	border-radius: 10px !important;
	background: #fff !important;
	box-shadow: none !important;
	color: #425048 !important;
	font: inherit !important;
	font-size: .81rem !important;
	font-weight: 800 !important;
	line-height: 1.5 !important;
	cursor: pointer;
}

form.checkout .jahanara-wallet-offer__actions button[aria-pressed="true"] {
	border-color: var(--jahanara-pay-brand) !important;
	background: var(--jahanara-pay-brand) !important;
	color: #fff !important;
}

form.checkout .jahanara-wallet-offer__actions button:focus-visible {
	outline: 3px solid rgba(0, 96, 57, .22);
	outline-offset: 2px;
}

.jahanara-wallet-offer__status {
	margin: 9px 0 0 !important;
	padding: 8px 10px;
	border-radius: 9px;
	background: #fff0ef;
	color: var(--jahanara-pay-danger) !important;
	font-weight: 700;
}

.jahanara-wallet-offer__status[hidden] {
	display: none !important;
}

/* Both Persian- and English-keyboard numbers are normalized by JavaScript and
 * again on the server. LTR keeps the final mobile number readable. */
#billing_phone,
input[name="billing_phone"] {
	direction: ltr;
	text-align: left;
	font-variant-numeric: tabular-nums;
}

.jahanara-final-total {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	margin: 0 0 16px;
	padding: 16px 18px;
	border-radius: 15px;
	background: var(--jahanara-pay-brand-soft);
	color: var(--jahanara-pay-brand-dark);
}

.jahanara-final-total span {
	font-size: .9rem;
	font-weight: 700;
}

.jahanara-final-total strong {
	font-size: 1.1rem;
	white-space: nowrap;
}

.jahanara-step-controls {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-top: 22px;
}

.jahanara-step-controls--end {
	justify-content: flex-end;
}

.jahanara-step-controls--start {
	justify-content: flex-start;
}

.jahanara-step-action,
.jahanara-copy-button {
	min-height: 42px;
	box-sizing: border-box;
	padding: 9px 18px;
	border: 1px solid var(--jahanara-pay-brand);
	border-radius: 11px;
	background: #fff;
	box-shadow: none;
	color: var(--jahanara-pay-brand);
	font: inherit;
	font-size: .87rem;
	font-weight: 800;
	line-height: 1.4;
	cursor: pointer;
	transition: background .18s ease, color .18s ease, transform .18s ease;
}

.jahanara-step-action:hover,
.jahanara-step-action:focus,
.jahanara-copy-button:hover,
.jahanara-copy-button:focus {
	background: var(--jahanara-pay-brand-soft);
	color: var(--jahanara-pay-brand-dark);
	transform: translateY(-1px);
}

.jahanara-step-action--next {
	min-width: 140px;
	background: var(--jahanara-pay-brand);
	color: #fff;
}

.jahanara-step-action--next:hover,
.jahanara-step-action--next:focus {
	background: var(--jahanara-pay-brand-dark);
	color: #fff;
}

/* Manual card / IBAN details and copy action. */
.jahanara-manual-payment-box,
.jahanara-manual-thankyou,
.jahanara-receipt-panel,
.jahanara-download-panel,
.jahanara-order-summary {
	box-sizing: border-box;
	border: 1px solid var(--jahanara-pay-line);
	border-radius: var(--jahanara-pay-radius);
	background: #fff;
	padding: 20px;
	margin: 14px 0 22px;
	box-shadow: 0 7px 24px rgba(0, 96, 57, .06);
}

.jahanara-manual-thankyou,
.jahanara-receipt-panel,
.jahanara-download-panel,
.jahanara-order-summary {
	border-right: 4px solid var(--jahanara-pay-brand);
}

.jahanara-manual-thankyou h2,
.jahanara-receipt-panel h2,
.jahanara-download-panel h2,
.jahanara-order-summary h1,
.jahanara-order-summary h2 {
	color: var(--jahanara-pay-brand);
	font-size: 1.2rem;
	margin: 0 0 12px;
}

.jahanara-payment-details {
	display: grid;
	grid-template-columns: minmax(85px, auto) 1fr;
	gap: 9px 14px;
	margin: 10px 0;
}

.jahanara-payment-details dt {
	color: var(--jahanara-pay-muted);
	font-weight: 400;
}

.jahanara-payment-details dd {
	margin: 0;
	overflow-wrap: anywhere;
}

.jahanara-payment-details dd strong {
	color: var(--jahanara-pay-ink);
	font-size: 1.03em;
	letter-spacing: .04em;
}

.jahanara-payment-copy-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
}

.jahanara-payment-number {
	direction: ltr;
	unicode-bidi: isolate;
	display: inline-block;
	white-space: nowrap;
	font-variant-numeric: tabular-nums;
}

.jahanara-copy-button {
	min-height: 34px;
	padding: 6px 12px;
	border-radius: 9px;
	font-size: .78rem;
}

.jahanara-copy-button.is-copied {
	border-color: var(--jahanara-pay-brand);
	background: var(--jahanara-pay-brand);
	color: #fff;
}

.jahanara-copy-button.is-copy-error {
	border-color: var(--jahanara-pay-danger);
	background: #fff0ef;
	color: var(--jahanara-pay-danger);
}

.jahanara-shipping-description {
	display: block;
	color: var(--jahanara-pay-muted);
	font-size: .82em;
	font-weight: 400;
	line-height: 1.7;
	margin-top: 5px;
}

.jahanara-manual-note {
	border-top: 1px dashed var(--jahanara-pay-line);
	color: var(--jahanara-pay-muted);
	font-size: .9em;
	padding-top: 10px;
	margin: 12px 0 0;
}

/* Dedicated secure receipt page. */
.jahanara-receipt-page {
	max-width: 900px;
	box-sizing: border-box;
	margin: 28px auto 50px;
	color: var(--jahanara-pay-ink);
}

.jahanara-receipt-success {
	margin: 0 0 22px;
	padding: clamp(24px, 5vw, 42px);
	border: 1px solid rgba(0, 96, 57, .1);
	border-radius: 24px;
	background: #fff;
	box-shadow: 0 16px 48px rgba(27, 54, 42, .09);
	text-align: center;
}

.jahanara-receipt-success__mark {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 62px;
	height: 62px;
	margin-bottom: 14px;
	border-radius: 50%;
	background: var(--jahanara-pay-brand-soft);
	color: var(--jahanara-pay-brand);
	font-size: 1.8rem;
	font-weight: 900;
}

.jahanara-receipt-success h1 {
	color: var(--jahanara-pay-ink);
	font-size: clamp(1.35rem, 4vw, 1.85rem);
	margin: 0 0 7px;
}

.jahanara-receipt-success p {
	color: var(--jahanara-pay-muted);
	line-height: 1.9;
	margin: 0;
}

.jahanara-receipt-progress {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 8px;
	margin-top: 24px;
}

.jahanara-receipt-progress span {
	padding: 9px 6px;
	border-radius: 10px;
	background: var(--jahanara-pay-brand-soft);
	color: var(--jahanara-pay-brand);
	font-size: .8rem;
	font-weight: 800;
}

.jahanara-order-summary h1 {
	font-size: 1.35rem;
}

.jahanara-order-facts {
	display: grid;
	grid-template-columns: minmax(120px, auto) 1fr;
	gap: 8px 16px;
	margin: 18px 0;
	padding: 14px;
	border-radius: 12px;
	background: var(--jahanara-pay-soft);
}

.jahanara-order-facts dt {
	color: var(--jahanara-pay-muted);
}

.jahanara-order-facts dd {
	margin: 0;
	overflow-wrap: anywhere;
}

.jahanara-order-totals {
	overflow-x: auto;
	margin-top: 16px;
}

.jahanara-order-totals table {
	width: 100%;
	border-collapse: collapse;
}

.jahanara-order-totals th,
.jahanara-order-totals td {
	border-top: 1px solid var(--jahanara-pay-line);
	padding: 10px 6px;
	text-align: right;
}

.jahanara-order-totals td {
	text-align: left;
	white-space: nowrap;
}

.jahanara-receipt-form {
	display: grid;
	gap: 11px;
	margin-top: 14px;
}

.jahanara-receipt-form label {
	font-weight: 800;
	color: var(--jahanara-pay-ink);
}

.jahanara-receipt-form input[type="file"] {
	width: 100%;
	box-sizing: border-box;
	border: 1px dashed #adc3b7;
	border-radius: 12px;
	background: var(--jahanara-pay-soft);
	padding: 14px;
}

.jahanara-receipt-form small {
	color: var(--jahanara-pay-muted);
}

.jahanara-receipt-form .button,
.jahanara-download-button,
.jahanara-invoice-link .button {
	background: var(--jahanara-pay-brand) !important;
	border-color: var(--jahanara-pay-brand) !important;
	color: #fff !important;
	border-radius: 10px !important;
}

.jahanara-receipt-form .button:hover,
.jahanara-download-button:hover,
.jahanara-invoice-link .button:hover {
	background: var(--jahanara-pay-brand-dark) !important;
}

.jahanara-status {
	border-radius: 10px;
	padding: 11px 13px;
	margin: 10px 0;
}

.jahanara-status--success {
	background: #eaf7f0;
	color: #12603a;
}

.jahanara-status--pending {
	background: #fff8df;
	color: #775b00;
}

.jahanara-status--warning,
.jahanara-status--error {
	background: #fff0ef;
	color: #8f2923;
}

.jahanara-download-list {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.jahanara-invoice-link {
	margin: 14px 0 22px;
}

/* Checkout Block keeps its native sequence, with the same visual language. */
.wc-block-checkout .wc-block-components-checkout-step,
.wc-block-checkout .wc-block-components-totals-wrapper,
.wc-block-checkout .wc-block-checkout__payment-method {
	border-color: var(--jahanara-pay-line);
	border-radius: 14px;
}

.wc-block-checkout input[type="text"],
.wc-block-checkout input[type="email"],
.wc-block-checkout input[type="tel"],
.wc-block-checkout select,
.wc-block-checkout textarea {
	border-radius: 11px !important;
}

.wc-block-checkout .wc-block-components-button.wc-block-components-checkout-place-order-button {
	border-radius: 12px;
	background: var(--jahanara-pay-brand);
	color: #fff;
}

.jahanara-block-payment-content {
	padding-top: 4px;
}

.jahanara-block-payment-panel {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 10px;
	margin-top: 10px;
	padding: 11px 12px;
	border: 1px solid var(--jahanara-pay-line);
	border-radius: 11px;
	background: var(--jahanara-pay-soft);
}

.jahanara-block-payment-details {
	flex: 1 1 auto;
	min-width: 0;
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--jahanara-pay-ink);
	font-family: inherit;
	font-size: .88em;
	line-height: 1.9;
	white-space: pre-wrap;
	overflow-wrap: anywhere;
}

.jahanara-block-invoice-choice {
	margin-top: 13px;
}

@media (max-width: 680px) {
	form.checkout.jahanara-checkout-enhanced {
		margin-top: 14px;
	}

	form.checkout.jahanara-checkout-enhanced .jahanara-checkout-shell {
		padding: 18px 14px !important;
		border-radius: 19px;
	}

	.jahanara-checkout-header {
		margin-bottom: 20px;
	}

	.jahanara-stepper {
		gap: 4px;
		margin-bottom: 24px;
		padding: 4px;
	}

	.jahanara-stepper__step {
		flex-direction: column;
		gap: 4px;
		min-height: 64px;
		padding: 7px 3px;
		font-size: .71rem;
		line-height: 1.35;
	}

	.jahanara-stepper__number {
		flex-basis: 24px;
		width: 24px;
		height: 24px;
		font-size: .72rem;
	}

	.jahanara-panel-heading {
		align-items: flex-start;
	}

	.jahanara-panel-heading__icon {
		flex-basis: 38px;
		width: 38px;
		height: 38px;
	}

	form.checkout.jahanara-checkout-enhanced #customer_details .woocommerce-billing-fields__field-wrapper,
	form.checkout.jahanara-checkout-enhanced #customer_details .woocommerce-shipping-fields__field-wrapper,
	form.checkout.jahanara-checkout-enhanced #customer_details .woocommerce-additional-fields__field-wrapper {
		grid-template-columns: 1fr;
		gap: 13px;
	}

	form.checkout.jahanara-checkout-enhanced .form-row-wide,
	form.checkout.jahanara-checkout-enhanced #billing_address_1_field,
	form.checkout.jahanara-checkout-enhanced #shipping_address_1_field,
	form.checkout.jahanara-checkout-enhanced #order_comments_field {
		grid-column: auto;
	}

	form.checkout.jahanara-checkout-enhanced table.shop_table th,
	form.checkout.jahanara-checkout-enhanced table.shop_table td {
		padding: 11px 10px;
		font-size: .84rem;
	}

	.jahanara-final-total {
		padding: 14px;
	}

	.jahanara-step-controls {
		gap: 8px;
	}

	.jahanara-step-action {
		flex: 1 1 0;
		min-width: 0;
		padding-right: 10px;
		padding-left: 10px;
	}

	.jahanara-vat-choice__toggle,
	.jahanara-block-invoice-choice__toggle {
		align-items: flex-start;
		padding: 12px;
	}

	.jahanara-invoice-fields,
	.jahanara-block-invoice-fields {
		grid-template-columns: 1fr;
		gap: 0;
		padding-right: 12px;
		padding-left: 12px;
	}

	.jahanara-vat-choice__rate,
	.jahanara-block-invoice-choice__rate {
		padding: 4px 7px;
	}

	.jahanara-block-payment-panel {
		flex-direction: column;
	}

	.jahanara-wallet-offer {
		padding: 13px;
	}

	.jahanara-wallet-offer__actions {
		display: grid;
		grid-template-columns: 1fr;
	}

	form.checkout .jahanara-wallet-offer__actions button {
		width: 100% !important;
	}
}

@media (max-width: 480px) {
	.jahanara-manual-payment-box,
	.jahanara-manual-thankyou,
	.jahanara-receipt-panel,
	.jahanara-download-panel,
	.jahanara-order-summary {
		padding: 14px;
	}

	.jahanara-payment-details,
	.jahanara-order-facts {
		grid-template-columns: 1fr;
		gap: 2px;
	}

	.jahanara-payment-details dd,
	.jahanara-order-facts dd {
		margin-bottom: 8px;
	}

	.jahanara-payment-copy-row {
		align-items: flex-start;
		flex-direction: column;
	}

	.jahanara-receipt-progress {
		gap: 4px;
	}

	.jahanara-receipt-progress span {
		font-size: .7rem;
	}
}

@media (prefers-reduced-motion: reduce) {
	.jahanara-checkout-panel.is-active {
		animation: none;
	}

	.jahanara-stepper__step,
	.jahanara-step-action,
	.jahanara-copy-button {
		transition: none;
	}
}
