.oao-checkout {
	--oao-border: #d8dee8;
	--oao-muted: #667085;
	--oao-ink: #162033;
	--oao-panel: #ffffff;
	--oao-soft: #f6f8fb;
	--oao-accent: #1f7a5a;
	color: var(--oao-ink);
	font-size: 14px;
	line-height: 1.45;
}

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

.oao-checkout__layout {
	display: grid;
	grid-template-columns: minmax(300px, 0.95fr) minmax(420px, 1.05fr);
	gap: 28px;
	align-items: start;
	width: 100%;
}

.oao-checkout__left,
.oao-checkout__right {
	min-width: 0;
}

.oao-checkout__right {
	position: sticky;
	top: 24px;
	border: 1px solid var(--oao-border);
	border-radius: 8px;
	background: var(--oao-panel);
	padding: 22px;
	box-shadow: 0 12px 30px rgba(16, 24, 40, 0.08);
	width: 100%;
}

.oao-checkout__right > *,
.oao-checkout__right .oao-order-review,
.oao-checkout__right #order_review,
.oao-checkout__right .woocommerce-checkout-review-order,
.oao-checkout__right table.shop_table,
.oao-checkout__right .woocommerce-checkout-review-order-table,
.oao-checkout__right #payment,
.oao-checkout__right #payment ul.payment_methods,
.oao-checkout__right #payment ul.payment_methods li,
.oao-checkout__right #payment .payment_box,
.oao-checkout__right #payment .form-row,
.oao-checkout__right #payment .place-order,
.oao-checkout__right #payment .payment_method_sanalpospro,
.oao-checkout__right #payment .payment_method_sanalpospro > *,
.oao-checkout__right #sppro-payment-form,
.oao-checkout__right #sppro-payment-form > *,
.oao-checkout__right .woocommerce-terms-and-conditions-wrapper,
.oao-checkout__right .woocommerce-privacy-policy-text {
	float: none !important;
	clear: both;
	width: 100% !important;
	max-width: none !important;
	min-width: 0 !important;
}

.oao-checkout .oao-review-heading,
.oao-checkout .oao-notes__heading {
	margin: 0 0 14px;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.3;
}

.oao-accordion {
	border: 1px solid var(--oao-border);
	border-radius: 8px;
	background: var(--oao-panel);
	margin: 0 0 16px;
	overflow: hidden;
}

.oao-accordion__summary {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: space-between;
	min-height: 52px;
	padding: 13px 48px 13px 16px;
	cursor: pointer;
	font-size: 16px;
	font-weight: 700;
	list-style: none;
}

.oao-accordion__summary::-webkit-details-marker {
	display: none;
}

.oao-accordion__summary::after {
	content: "";
	position: absolute;
	right: 20px;
	top: 50%;
	width: 10px;
	height: 10px;
	border-right: 2px solid currentColor;
	border-bottom: 2px solid currentColor;
	transform: translateY(-65%) rotate(45deg);
	transition: transform 160ms ease;
}

.oao-accordion[open] .oao-accordion__summary::after {
	transform: translateY(-35%) rotate(225deg);
}

.oao-accordion__panel {
	border-top: 1px solid var(--oao-border);
	padding: 16px 16px 6px;
}

.oao-field-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	column-gap: 16px;
}

.oao-field-grid .form-row-wide,
.oao-field-grid #billing_address_1_field,
.oao-field-grid #billing_address_2_field,
.oao-field-grid #shipping_address_1_field,
.oao-field-grid #shipping_address_2_field {
	grid-column: 1 / -1;
}

.oao-checkout .form-row {
	float: none;
	width: 100%;
	margin-bottom: 13px;
}

.oao-checkout .form-row label {
	font-size: 13px;
	font-weight: 650;
	line-height: 1.35;
	color: var(--oao-ink);
}

.oao-checkout .form-row input.input-text,
.oao-checkout .form-row textarea,
.oao-checkout .form-row select,
.oao-checkout .select2-container .select2-selection--single {
	min-height: 40px;
	border: 1px solid var(--oao-border);
	border-radius: 6px;
	background: #fff;
	color: var(--oao-ink);
	font-size: 14px;
}

.oao-checkout .form-row textarea {
	min-height: 92px;
	resize: vertical;
}

.oao-ship-toggle {
	margin: 0 0 14px;
	padding: 8px 10px;
	border-radius: 6px;
	background: var(--oao-soft);
}

.oao-checkout .oao-ship-toggle label.checkbox,
.oao-checkout .oao-ship-toggle .woocommerce-form__label {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin: 0;
	font-size: 12px;
	font-weight: 600;
	line-height: 1.35;
	color: var(--oao-ink);
}

.oao-checkout .oao-ship-toggle label.checkbox span {
	font-size: 12px;
	font-weight: 600;
	line-height: 1.35;
}

.oao-checkout .oao-ship-toggle input.input-checkbox {
	width: 14px;
	height: 14px;
	min-width: 14px;
	margin: 0;
	flex: 0 0 14px;
}

.oao-notes {
	border: 1px solid var(--oao-border);
	border-radius: 8px;
	background: var(--oao-panel);
	padding: 16px 16px 4px;
}

.oao-muted {
	margin: 0 0 14px;
	color: var(--oao-muted);
}

.oao-order-review table.shop_table {
	width: 100% !important;
	min-width: 100%;
	border-radius: 6px;
	overflow: hidden;
	font-size: 13px;
	line-height: 1.4;
	table-layout: fixed;
}

.oao-order-review table.shop_table th,
.oao-order-review table.shop_table td {
	padding: 10px 12px;
	font-size: 13px;
	vertical-align: top;
	word-break: normal;
	overflow-wrap: anywhere;
}

.oao-order-review table.shop_table th.product-total,
.oao-order-review table.shop_table td.product-total,
.oao-order-review table.shop_table tfoot th,
.oao-order-review table.shop_table tfoot td {
	text-align: right;
	white-space: nowrap;
}

.oao-order-review table.shop_table .product-name {
	width: auto;
}

.oao-order-review table.shop_table .product-total {
	width: 120px;
}

.oao-order-review #payment {
	display: block !important;
	width: 100% !important;
	border-radius: 6px;
	font-size: 13px;
}

.oao-order-review #payment ul.payment_methods {
	display: block !important;
	width: 100% !important;
	margin: 0 0 14px;
	padding: 0;
}

.oao-order-review #payment .payment_box {
	width: 100% !important;
	margin: 10px 0 0 !important;
	padding: 12px !important;
}

.oao-order-review #payment .payment_box iframe,
.oao-order-review #payment .payment_box object,
.oao-order-review #payment .payment_box embed {
	width: 100% !important;
	max-width: 100% !important;
}

.oao-order-review #payment ul.payment_methods li,
.oao-order-review #payment ul.payment_methods li label,
.oao-order-review #payment .payment_box,
.oao-order-review .woocommerce-privacy-policy-text,
.oao-order-review .woocommerce-privacy-policy-text p {
	font-size: 13px;
	line-height: 1.45;
}

.oao-order-review #place_order {
	display: block;
	width: 100%;
	min-height: 44px;
	border-radius: 6px;
	font-size: 14px;
	font-weight: 700;
}

.woocommerce-account .woocommerce-customer-details .woocommerce-columns--addresses {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 18px;
	margin-top: 18px;
}

.woocommerce-account .woocommerce-customer-details .woocommerce-columns--addresses::before,
.woocommerce-account .woocommerce-customer-details .woocommerce-columns--addresses::after {
	display: none;
}

.woocommerce-account .woocommerce-customer-details .woocommerce-column {
	float: none;
	width: 100%;
	max-width: none;
	min-width: 0;
	border: 1px solid var(--oao-border, #d8dee8);
	border-radius: 6px;
	background: #fff;
	padding: 20px;
	box-shadow: 0 8px 22px rgba(16, 24, 40, 0.06);
}

.woocommerce-account .woocommerce-customer-details .woocommerce-column__title {
	margin: 0 0 16px;
	font-size: 24px;
	line-height: 1.25;
}

.woocommerce-account .woocommerce-customer-details address {
	margin: 0;
	font-style: normal;
	line-height: 1.55;
}

@media (max-width: 900px) {
	.oao-checkout__layout {
		grid-template-columns: 1fr;
		gap: 20px;
	}

	.oao-checkout__right {
		position: static;
	}

	.woocommerce-account .woocommerce-customer-details .woocommerce-columns--addresses {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 640px) {
	.oao-checkout__right,
	.oao-accordion__panel,
	.oao-notes {
		padding-left: 14px;
		padding-right: 14px;
	}

	.oao-field-grid {
		grid-template-columns: 1fr;
	}

	.oao-accordion__summary {
		min-height: 54px;
		font-size: 16px;
	}
}
