/* ==========================================================================
   Noren Tema — sepet, ödeme ve sipariş onayı
   ========================================================================== */

/* Sade ödeme header'ı
   -------------------------------------------------------------------------- */
.site-header--checkout { position: relative; }
.site-header--checkout .site-header__inner { height: 76px; }
.site-header--checkout .site-branding .custom-logo { height: 30px; }
.noren-checkout-back,
.noren-checkout-secure {
	display: inline-flex; align-items: center; gap: 10px;
	font-size: 11px; font-weight: 500;
	letter-spacing: .22em; text-transform: uppercase;
}
.noren-checkout-back svg,
.noren-checkout-secure svg { width: 16px; height: 16px; stroke: currentColor; fill: none; stroke-width: 1.2; }
.noren-checkout-back:hover { color: var(--noren-muted); }
.noren-checkout-secure { justify-self: end; color: var(--noren-muted); }
.site-header--checkout .site-header__inner > :last-child { display: flex; justify-content: flex-end; }

.site-footer--checkout .site-footer__bottom { border-top: 0; }

/* Akış kapsayıcısı ve adımlar
   -------------------------------------------------------------------------- */
/* Sepet, Teslimat ve Ödeme, Onay: 1400px içerik genişliği (kenar boşlukları hariç) */
.noren-flow { padding-bottom: clamp(64px, 8vw, 120px); }

.noren-steps { padding: clamp(32px, 4vw, 52px) 0 clamp(32px, 4vw, 56px); }
.noren-steps ol {
	display: flex; justify-content: center; align-items: center; gap: 0;
	margin: 0; padding: 0; list-style: none;
}
.noren-steps li {
	display: flex; align-items: center;
	font-size: 11px; font-weight: 500;
	letter-spacing: .22em; text-transform: uppercase;
	color: var(--noren-muted-dark);
}
.noren-steps li + li::before {
	content: "";
	width: clamp(28px, 6vw, 88px); height: 1px;
	margin: 0 clamp(12px, 2vw, 24px);
	background: var(--noren-line);
}
.noren-steps li.is-done + li::before,
.noren-steps li.is-current::before { background: var(--noren-black); }
.noren-steps a { display: inline-flex; align-items: center; }
.noren-steps__num {
	display: inline-flex; align-items: center; justify-content: center;
	width: 30px; height: 30px; margin-right: 12px;
	border: 1px solid currentColor; border-radius: 50%;
	font-size: 10px; letter-spacing: .04em;
}
.noren-steps .is-current { color: var(--noren-black); }
.noren-steps .is-current .noren-steps__num { background: var(--noren-black); border-color: var(--noren-black); color: var(--noren-white); }
.noren-steps .is-done { color: var(--noren-ink); }

/* Kupon / giriş bildirimleri (formun üstünde, sade)
   -------------------------------------------------------------------------- */
.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info,
.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info {
	margin-bottom: 16px;
	padding: 16px 20px 16px 52px;
	background: transparent;
	font-size: 13px;
}
.woocommerce-checkout .woocommerce-info a { text-decoration: underline; text-underline-offset: 4px; }
.woocommerce form.checkout_coupon,
.woocommerce form.woocommerce-form-login {
	display: flex; flex-wrap: wrap; gap: 12px; align-items: flex-end;
	margin: 0 0 24px; padding: 24px;
	border: 1px solid var(--noren-line); border-radius: 0;
}
.woocommerce form.checkout_coupon p { margin: 0; }
.woocommerce form.checkout_coupon .form-row-first { flex: 1; width: auto; float: none; }
.woocommerce form.checkout_coupon .form-row-last { width: auto; float: none; }
.woocommerce form.checkout_coupon > p:first-child { flex-basis: 100%; font-size: 13px; color: var(--noren-muted); }
.woocommerce form.checkout_coupon .clear { display: none; }

/* Ödeme düzeni
   -------------------------------------------------------------------------- */
.woocommerce-checkout form.checkout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(340px, 440px);
	gap: 0 clamp(40px, 6vw, 96px);
	align-items: start;
	counter-reset: noren-section;
}
.woocommerce-checkout form.checkout > .woocommerce-NoticeGroup { grid-column: 1; }
.woocommerce-checkout form.checkout > .woocommerce-NoticeGroup .woocommerce-error { margin-bottom: 40px; }
.noren-checkout-main { grid-column: 1; min-width: 0; }
.noren-checkout-summary {
	grid-column: 2; grid-row: 1 / span 3;
	position: sticky; top: 32px;
	padding: 36px;
	background: var(--noren-ivory);
}
.admin-bar .noren-checkout-summary { top: 64px; }

#customer_details.col2-set { width: 100%; float: none; }
#customer_details .col-1,
#customer_details .col-2 { float: none; width: 100%; }
#customer_details::before, #customer_details::after { display: none; }

/* Numaralı bölüm başlıkları */
.noren-checkout-main h3,
.noren-checkout-main .woocommerce-billing-fields > h3,
.noren-checkout-main .woocommerce-additional-fields > h3 {
	display: flex; align-items: baseline; gap: 16px;
	margin: 0 0 28px; padding-bottom: 18px;
	border-bottom: 1px solid var(--noren-black);
	font-size: clamp(20px, 1.8vw, 24px);
	font-weight: 600;
	letter-spacing: .03em;
	text-transform: uppercase;
}
.noren-checkout-main .woocommerce-billing-fields > h3::before,
.noren-checkout-payment > h3::before {
	counter-increment: noren-section;
	content: counter(noren-section, decimal-leading-zero);
	font-family: var(--noren-font-body);
	font-size: 12px; font-weight: 600; letter-spacing: .14em;
	color: var(--noren-muted);
}
.noren-checkout-main .woocommerce-additional-fields { margin-top: 36px; }
.noren-checkout-main .woocommerce-additional-fields > h3 { font-size: 13px; font-family: var(--noren-font-body); font-weight: 500; letter-spacing: .22em; text-transform: uppercase; border-bottom-color: var(--noren-line); padding-bottom: 14px; }
.noren-checkout-main #ship-to-different-address { font-family: var(--noren-font-body); font-size: 13px; letter-spacing: .08em; border-bottom-color: var(--noren-line); }

/* Alanlar */
.woocommerce-checkout .form-row { margin: 0 0 20px; }
.woocommerce-checkout .form-row-first,
.woocommerce-checkout .form-row-last { width: calc(50% - 8px); }
.woocommerce-checkout .form-row label { display: block; margin-bottom: 8px; color: var(--noren-ink); }
.woocommerce form .form-row .required { color: var(--noren-muted); text-decoration: none; }
.woocommerce-checkout .form-row .optional { text-transform: none; letter-spacing: 0; color: var(--noren-muted); }
.woocommerce form .form-row textarea { min-height: 110px; }
.woocommerce form .form-row.woocommerce-invalid input.input-text,
.woocommerce form .form-row.woocommerce-invalid select,
.woocommerce form .form-row.woocommerce-invalid .select2-selection { border-color: var(--noren-error); }
.woocommerce form .form-row.woocommerce-validated input.input-text { border-color: var(--noren-line); }
.woocommerce-checkout .woocommerce-input-wrapper .description { margin-top: 8px; padding: 10px 12px; border-radius: 0; background: var(--noren-ivory); color: var(--noren-ink); font-size: 12px; }
.woocommerce-checkout .woocommerce-input-wrapper .description::before { display: none; }

.select2-dropdown { border-color: var(--noren-black); border-radius: 0; font-size: 14px; }
.select2-container--default .select2-search--dropdown .select2-search__field { min-height: 40px; border-color: var(--noren-line); }
.select2-container--default .select2-results__option--highlighted[aria-selected],
.select2-container--default .select2-results__option--highlighted[data-selected] { background: var(--noren-black); }
.woocommerce .select2-container--default .select2-selection--single:focus,
.select2-container--open .select2-selection--single { border-color: var(--noren-black) !important; }

/* Ödeme yöntemleri */
.noren-checkout-payment { margin-top: 48px; }
.woocommerce-checkout #payment { border-radius: 0; background: transparent; }
.woocommerce-checkout #payment ul.payment_methods {
	padding: 0; margin: 0;
	border: 1px solid var(--noren-line);
	border-bottom: 0;
}
.woocommerce-checkout #payment ul.payment_methods li {
	padding: 0;
	border-bottom: 1px solid var(--noren-line);
	line-height: 1.5;
}
.woocommerce-checkout #payment ul.payment_methods li > input[type="radio"] {
	position: absolute; opacity: 0;
}
.woocommerce-checkout #payment ul.payment_methods li > label {
	position: relative;
	display: flex; align-items: center; gap: 12px; flex-wrap: wrap;
	margin: 0;
	padding: 20px 20px 20px 54px;
	font-size: 14px; font-weight: 600; letter-spacing: .02em; text-transform: none; color: var(--noren-black);
	cursor: pointer;
}
.woocommerce-checkout #payment ul.payment_methods li > label::before {
	content: "";
	position: absolute; left: 20px; top: 50%;
	width: 18px; height: 18px; margin-top: -9px;
	border: 1px solid var(--noren-muted-dark); border-radius: 50%;
	background: var(--noren-white);
	transition: border-color .2s, box-shadow .2s;
}
.woocommerce-checkout #payment ul.payment_methods li > input[type="radio"]:checked + label::before {
	border-color: var(--noren-black);
	box-shadow: inset 0 0 0 4px var(--noren-white), inset 0 0 0 10px var(--noren-black);
}
.woocommerce-checkout #payment ul.payment_methods li > input[type="radio"]:focus-visible + label { outline: 1px solid var(--noren-black); outline-offset: -4px; }
.woocommerce-checkout #payment ul.payment_methods li img { max-height: 22px; width: auto; margin: 0 0 0 auto; display: inline-block; }
.woocommerce-checkout #payment div.payment_box {
	margin: 0; padding: 0 20px 20px 54px;
	border-radius: 0;
	background: transparent;
	color: var(--noren-muted);
	font-size: 13px;
}
.woocommerce-checkout #payment div.payment_box::before { display: none; }
.woocommerce-checkout #payment div.payment_box p:last-child { margin: 0; }
.woocommerce-checkout #payment ul.payment_methods li.woocommerce-notice { padding: 20px; }

.woocommerce-checkout #payment div.form-row.place-order { margin: 28px 0 0; padding: 0; }
.woocommerce-privacy-policy-text p,
.woocommerce-terms-and-conditions-wrapper { font-size: 12px; line-height: 1.7; color: var(--noren-muted); }
.woocommerce-privacy-policy-text a { color: var(--noren-black); text-decoration: underline; text-underline-offset: 3px; }
.woocommerce-terms-and-conditions-wrapper .woocommerce-form__label-for-checkbox { text-transform: none; letter-spacing: 0; font-size: 13px; color: var(--noren-ink); }

.woocommerce #payment #place_order,
.woocommerce-page #payment #place_order {
	float: none;
	width: 100%;
	min-height: 60px;
	margin-top: 20px;
	font-size: 12px;
	letter-spacing: .28em;
}
.woocommerce #payment #place_order::before {
	content: "";
	display: inline-block;
	width: 15px; height: 15px;
	margin: -3px 14px 0 0;
	vertical-align: middle;
	background: currentColor;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.6'%3E%3Crect x='5' y='10' width='14' height='11'/%3E%3Cpath d='M8 10V7a4 4 0 0 1 8 0v3'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.6'%3E%3Crect x='5' y='10' width='14' height='11'/%3E%3Cpath d='M8 10V7a4 4 0 0 1 8 0v3'/%3E%3C/svg%3E") center / contain no-repeat;
}

/* Sipariş özeti
   -------------------------------------------------------------------------- */
.noren-summary-toggle { display: none; }
.woocommerce-checkout #order_review_heading {
	margin: 0 0 12px; padding: 0 0 18px;
	border-bottom: 1px solid var(--noren-black);
	font-size: 22px; font-weight: 600; letter-spacing: .04em; text-transform: uppercase;
}
.woocommerce-checkout #order_review { padding: 0; background: transparent; }

.woocommerce-checkout-review-order-table { margin: 0 !important; }
.woocommerce-checkout-review-order-table thead { display: none; }
.woocommerce table.woocommerce-checkout-review-order-table td,
.woocommerce table.woocommerce-checkout-review-order-table th { padding: 12px 0; border: 0; background: none; }
.woocommerce table.woocommerce-checkout-review-order-table tbody td { padding: 14px 0; border-bottom: 1px solid var(--noren-line); vertical-align: middle; }
.woocommerce-checkout-review-order-table .product-total { text-align: right; white-space: nowrap; font-size: 14px; font-weight: 600; color: var(--noren-black); }
.woocommerce-checkout-review-order-table tfoot th { font-size: 11px; font-weight: 600; letter-spacing: .18em; text-transform: uppercase; color: var(--noren-muted); text-align: left; }
.woocommerce table.woocommerce-checkout-review-order-table tfoot td,
.woocommerce table.woocommerce-checkout-review-order-table tfoot th { font-weight: 400; }
.woocommerce-checkout-review-order-table tfoot td { text-align: right; font-size: 14px; }
.woocommerce-checkout-review-order-table tfoot tr:first-child th,
.woocommerce-checkout-review-order-table tfoot tr:first-child td { padding-top: 22px; }
.woocommerce table.woocommerce-checkout-review-order-table .order-total th,
.woocommerce table.woocommerce-checkout-review-order-table .order-total td { padding-top: 20px; border-top: 1px solid var(--noren-black); color: var(--noren-black); }
.woocommerce-checkout-review-order-table .order-total th { font-weight: 500; }
.woocommerce-checkout-review-order-table .order-total .amount { font-size: 26px; font-weight: 600; }
.woocommerce-checkout-review-order-table .order-total td strong { font-weight: 600; }
.woocommerce-checkout-review-order-table .woocommerce-shipping-methods { margin: 0; padding: 0; list-style: none; font-size: 13px; }

.noren-review-item { display: flex; align-items: center; gap: 16px; }
.noren-review-item__thumb { position: relative; flex: none; width: 64px; height: 80px; background: var(--noren-white); }
.noren-review-item__thumb img { width: 100%; height: 100%; object-fit: cover; }
.noren-review-item__qty {
	position: absolute; top: -8px; right: -8px;
	min-width: 22px; height: 22px; padding: 0 5px;
	border-radius: 11px;
	background: var(--noren-black); color: var(--noren-white);
	font-size: 10px; line-height: 22px; text-align: center;
}
.noren-review-item__name { font-size: 14px; font-weight: 600; letter-spacing: .02em; line-height: 1.4; color: var(--noren-black); }
.woocommerce-checkout-review-order-table dl.variation { margin: 4px 0 0 80px; font-size: 12px; color: var(--noren-muted); }

.noren-checkout-trust {
	display: grid; gap: 12px;
	margin: 28px 0 0; padding: 24px 0 0;
	border-top: 1px solid var(--noren-line);
	list-style: none;
	font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--noren-muted);
}
.noren-checkout-trust li { display: flex; align-items: center; gap: 12px; }
.noren-checkout-trust svg { flex: none; width: 17px; height: 17px; stroke: var(--noren-black); fill: none; stroke-width: 1.1; }

/* Ajax yüklenirken */
.woocommerce-checkout .blockUI.blockOverlay { background: rgba(246,245,242,.7) !important; }

/* Sepet sayfası
   -------------------------------------------------------------------------- */

/* Başlık: solda "Sepetim", sağda adımlar */
.noren-flow-header {
	display: flex; align-items: flex-end; justify-content: space-between; gap: 24px 40px; flex-wrap: wrap;
	padding: clamp(36px, 4.5vw, 64px) 0 clamp(24px, 3vw, 36px);
	margin-bottom: 28px;
	border-bottom: 1px solid var(--noren-black);
}
.noren-flow-header h1 {
	display: flex; align-items: center; gap: 14px;
	margin: 0;
	font-size: clamp(34px, 4.6vw, 64px);
	font-weight: 600; letter-spacing: .02em; line-height: 1;
	text-transform: uppercase;
}
.noren-flow-header h1 .noren-cart-count {
	position: static;
	display: inline-flex; align-items: center; justify-content: center;
	min-width: 34px; height: 34px; padding: 0 10px;
	border-radius: 17px;
	background: var(--noren-black); color: var(--noren-white);
	font-size: 14px; font-weight: 600; line-height: 1;
}
.noren-flow-header h1 .noren-cart-count[data-count="0"] { display: none; }
.noren-flow-header .noren-steps { padding: 0 0 6px; }
.noren-flow-header .noren-steps li + li::before { width: clamp(20px, 3vw, 48px); }

/* Düzen: ürünler + sabit özet */
.woocommerce-cart .noren-flow > .woocommerce {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(340px, 420px);
	gap: 0 clamp(40px, 5vw, 80px);
	align-items: start;
}
.woocommerce-cart .noren-flow > .woocommerce > * { grid-column: 1 / -1; }
.woocommerce-cart .noren-flow > .woocommerce > .woocommerce-cart-form { grid-column: 1; }
.woocommerce-cart .noren-flow > .woocommerce > .cart-collaterals { grid-column: 2; grid-row: span 2; position: sticky; top: calc(var(--noren-header-h) + 24px); }
.admin-bar.woocommerce-cart .noren-flow > .woocommerce > .cart-collaterals { top: calc(var(--noren-header-h) + 56px); }
.woocommerce-cart .noren-flow > .woocommerce > .cross-sells { margin-top: clamp(64px, 8vw, 112px); }

/* Ürün satırları: tablo yerine kart görünümü */
.woocommerce-cart table.shop_table.cart { display: block; width: 100%; border: 0; margin: 0; }
.woocommerce-cart table.shop_table.cart thead { display: none; }
.woocommerce-cart table.shop_table.cart tbody { display: block; }
.woocommerce-cart table.shop_table.cart tr.cart_item {
	position: relative;
	display: grid;
	grid-template-columns: 120px minmax(0, 1fr) 150px 120px;
	grid-template-areas:
		"thumb name qty total"
		"thumb remove qty total";
	grid-template-rows: 1fr auto;
	column-gap: 28px;
	padding: 24px 0;
	border-bottom: 1px solid var(--noren-line);
}
.woocommerce-cart table.shop_table.cart tr.cart_item td {
	display: block;
	padding: 0 !important;
	border: 0 !important;
	background: none !important;
	text-align: left !important;
}
.woocommerce-cart table.shop_table.cart tr.cart_item td::before { display: none !important; }
.woocommerce-cart table.cart td.product-thumbnail { grid-area: thumb; width: auto; }
.woocommerce-cart table.cart td.product-thumbnail a { display: block; }
.woocommerce-cart table.cart td.product-thumbnail img { width: 120px !important; height: 150px; object-fit: cover; background: var(--noren-ivory); transition: opacity .3s; }
.woocommerce-cart table.cart td.product-thumbnail a:hover img { opacity: .85; }
.woocommerce-cart table.cart td.product-name { grid-area: name; align-self: start; display: flex !important; flex-direction: column; gap: 6px; }
.woocommerce-cart table.cart td.product-name > a { font-size: 16px; font-weight: 600; letter-spacing: .02em; line-height: 1.35; color: var(--noren-black); }
.woocommerce-cart table.cart td.product-name > a:hover { color: var(--noren-muted); }
.noren-cart-item__cat { order: -1; font-size: 10.5px; font-weight: 500; letter-spacing: .22em; text-transform: uppercase; color: var(--noren-muted); }
.noren-cart-item__price { font-size: 14px; color: var(--noren-muted); }
.woocommerce-cart table.cart td.product-name dl.variation { margin: 0; font-size: 12px; color: var(--noren-muted); }
.woocommerce-cart table.cart td.product-name .backorder_notification { font-size: 12px; color: var(--noren-muted); }
.woocommerce-cart table.cart td.product-price { display: none !important; }
.woocommerce-cart table.cart td.product-quantity { grid-area: qty; align-self: center; }
.woocommerce-cart table.cart td.product-subtotal { grid-area: total; align-self: center; text-align: right !important; font-size: 17px; font-weight: 600; color: var(--noren-black); white-space: nowrap; }
.woocommerce-cart table.cart td.product-remove { grid-area: remove; align-self: end; width: auto; }
.woocommerce-cart table.cart td.product-remove a.remove {
	display: inline; width: auto; height: auto;
	border-radius: 0;
	font-size: 11px !important; font-weight: 600; line-height: 1.4;
	letter-spacing: .18em; text-transform: uppercase;
	color: var(--noren-muted) !important;
	background: none !important;
	text-decoration: underline; text-underline-offset: 4px;
}
.woocommerce-cart table.cart td.product-remove a.remove:hover { color: var(--noren-black) !important; }

/* Kupon satırı */
.woocommerce-cart table.cart tr:not(.cart_item) { display: block; }
.woocommerce-cart table.cart td.actions { display: block; padding: 28px 0 0 !important; border: 0 !important; }
.woocommerce-cart table.cart td.actions .coupon {
	display: flex; float: none;
	max-width: 440px;
	border: 1px solid var(--noren-line);
	transition: border-color .3s;
}
.woocommerce-cart table.cart td.actions .coupon:focus-within { border-color: var(--noren-black); }
.woocommerce-cart table.cart td.actions .coupon .input-text { flex: 1; width: auto; min-height: 52px; margin: 0; border: 0; }
.woocommerce-cart table.cart td.actions .coupon .button { flex: none; width: auto !important; min-height: 52px; padding: 0 24px; border: 0; background: var(--noren-black); color: var(--noren-white); white-space: nowrap; letter-spacing: .18em; }
.woocommerce-cart table.cart td.actions .coupon .input-text,
.woocommerce-cart table.cart td.actions .coupon #coupon_code { min-width: 0; width: auto; }
.woocommerce-cart table.cart td.actions .coupon .button:hover { background: #2b2b2b; color: var(--noren-white); }
/* Sepet adet değişince kendiliğinden güncellenir; buton gizli */
.woocommerce-cart table.cart td.actions > .button[name="update_cart"] { position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip: rect(0 0 0 0); border: 0; }

/* Sipariş özeti */
.woocommerce .cart-collaterals .cart_totals,
.woocommerce-page .cart-collaterals .cart_totals { float: none; width: 100%; padding: 36px; background: var(--noren-ivory); }
.cart_totals > h2 { margin: 0 0 8px; padding-bottom: 18px; border-bottom: 1px solid var(--noren-black); font-size: 22px; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; }
.woocommerce .cart_totals table.shop_table { margin: 0; }
.woocommerce .cart_totals table.shop_table th,
.woocommerce .cart_totals table.shop_table td { padding: 16px 0; border: 0; border-bottom: 1px solid var(--noren-line); background: none; font-size: 14px; }
.woocommerce .cart_totals table.shop_table th { width: 45%; font-size: 11px; font-weight: 600; letter-spacing: .18em; text-transform: uppercase; color: var(--noren-muted); }
.woocommerce .cart_totals table.shop_table td { text-align: right; color: var(--noren-black); }
.woocommerce .cart_totals table.shop_table td::before { display: none; }
/* WooCommerce'in mobil "etiketli satır" görünümünü özet tablosunda kapat */
.woocommerce .cart_totals table.shop_table_responsive tr { display: table-row; }
.woocommerce .cart_totals table.shop_table_responsive tr th,
.woocommerce .cart_totals table.shop_table_responsive tr td { display: table-cell !important; background: none !important; }
.woocommerce .cart_totals .order-total th,
.woocommerce .cart_totals .order-total td { padding-top: 22px; border-bottom: 0; color: var(--noren-black); }
.woocommerce .cart_totals .order-total .amount { font-size: 26px; font-weight: 600; }
.woocommerce .cart_totals .order-total strong { font-weight: 600; }
.woocommerce .cart_totals .woocommerce-shipping-destination,
.woocommerce .cart_totals .woocommerce-shipping-calculator { font-size: 12px; color: var(--noren-muted); }
.woocommerce .cart_totals .wc-proceed-to-checkout { display: flex; flex-direction: column; align-items: center; gap: 14px; padding: 24px 0 0; }
.woocommerce .cart_totals .wc-proceed-to-checkout a.checkout-button {
	width: 100%; min-height: 60px; margin: 0; padding: 0 20px;
	font-size: 12px; letter-spacing: .26em; line-height: 58px;
}
.woocommerce .cart_totals .wc-proceed-to-checkout a.checkout-button::before {
	content: "";
	display: inline-block; width: 14px; height: 14px; margin: -3px 12px 0 0; vertical-align: middle;
	background: currentColor;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.6'%3E%3Crect x='5' y='10' width='14' height='11'/%3E%3Cpath d='M8 10V7a4 4 0 0 1 8 0v3'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.6'%3E%3Crect x='5' y='10' width='14' height='11'/%3E%3Cpath d='M8 10V7a4 4 0 0 1 8 0v3'/%3E%3C/svg%3E") center / contain no-repeat;
}
.noren-continue { font-size: 11px; font-weight: 600; letter-spacing: .18em; text-transform: uppercase; text-decoration: underline; text-underline-offset: 5px; }
.noren-continue:hover { color: var(--noren-muted); }
.woocommerce-cart .noren-checkout-trust { margin-top: 24px; }

/* Ajax güncellemesi sırasında */
.woocommerce-cart .blockUI.blockOverlay { background: rgba(255,255,255,.6) !important; }

/* Boş sepet */
.woocommerce-cart .cart-empty.woocommerce-info,
.woocommerce-cart .noren-cart-empty ~ .return-to-shop { display: none; }
.noren-cart-empty {
	display: flex; flex-direction: column; align-items: center; gap: 16px;
	padding: clamp(40px, 6vw, 80px) 0;
	text-align: center;
}
.noren-cart-empty h2 { margin: 6px 0 0; font-size: clamp(26px, 3vw, 40px); font-weight: 600; letter-spacing: .03em; text-transform: uppercase; }
.noren-cart-empty p { max-width: 420px; margin: 0 0 8px; color: var(--noren-muted); font-size: 15px; }
.noren-cart-suggest { margin-top: clamp(32px, 4vw, 64px); }
.noren-cart-suggest .woocommerce { margin: 0; }

/* Sipariş onay sayfası
   -------------------------------------------------------------------------- */
.woocommerce-order-received .noren-steps { padding-bottom: 0; }
.woocommerce-order {
	display: grid;
	grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr);
	gap: 0 clamp(32px, 4vw, 64px);
	align-items: start;
	max-width: none;
	margin: 0 auto;
}
.woocommerce-order > * { grid-column: 1 / -1; }

/* Karşılama */
.woocommerce-order .woocommerce-thankyou-order-received {
	display: flex; flex-direction: column; align-items: center;
	margin: 0 0 clamp(36px, 4vw, 56px); padding: clamp(28px, 4vw, 48px) 0 0;
	border: 0; background: none;
	text-align: center; font-size: inherit;
}
.woocommerce-order .woocommerce-thankyou-order-received::before { display: none; }
.noren-thanks__icon {
	display: inline-flex; align-items: center; justify-content: center;
	width: 84px; height: 84px; margin-bottom: 26px;
	border-radius: 50%;
	background: var(--noren-black);
	animation: noren-thanks-pop .8s var(--noren-ease) both;
}
.noren-thanks__icon svg { width: 36px; height: 36px; stroke: var(--noren-white); fill: none; stroke-width: 1; }
@keyframes noren-thanks-pop { from { transform: scale(.6); opacity: 0; } to { transform: none; opacity: 1; } }
.woocommerce-thankyou-order-received .noren-eyebrow { margin-bottom: 14px; color: var(--noren-ink); }
.noren-thanks__title {
	display: block; margin-bottom: 16px;
	font-size: clamp(32px, 4.4vw, 60px); font-weight: 600; letter-spacing: .02em; line-height: 1.05;
	text-transform: uppercase; color: var(--noren-black);
}
.noren-thanks__text { max-width: 520px; font-size: 15px; line-height: 1.8; color: var(--noren-muted); }

/* Sipariş bilgileri şeridi */
.woocommerce ul.order_details {
	display: grid; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
	margin: 0 0 clamp(40px, 5vw, 64px); padding: 0;
	border: 1px solid var(--noren-black);
	background: var(--noren-white);
}
.woocommerce ul.order_details::before, .woocommerce ul.order_details::after { display: none; }
.woocommerce ul.order_details li {
	float: none; margin: 0; padding: 22px 24px;
	border: 0; border-right: 1px solid var(--noren-line);
	font-size: 10px; font-weight: 600; letter-spacing: .2em; text-transform: uppercase; color: var(--noren-muted);
}
.woocommerce ul.order_details li:last-child { border-right: 0; }
.woocommerce ul.order_details li strong { display: block; margin-top: 10px; font-size: 15px; font-weight: 600; letter-spacing: .01em; text-transform: none; color: var(--noren-black); word-break: break-word; }

/* Ödeme yöntemi talimatları (ör. havale) */
.woocommerce-order > p:not(.woocommerce-thankyou-order-received),
.woocommerce-order .wc-bacs-bank-details { margin: 0 0 32px; padding: 20px 24px; border-left: 2px solid var(--noren-black); background: var(--noren-ivory); }

/* Sipariş detayları (sol) + adresler (sağ) */
.woocommerce-order .woocommerce-order-details { grid-column: 1; margin: 0; }
.woocommerce-order .woocommerce-customer-details { grid-column: 2; margin: 0; padding: 32px; background: var(--noren-ivory); }
.woocommerce-order-details__title,
.woocommerce-column__title,
.woocommerce-customer-details > h2 {
	margin: 0 0 18px; padding-bottom: 16px;
	border-bottom: 1px solid var(--noren-black);
	font-size: 20px; font-weight: 600; letter-spacing: .04em; text-transform: uppercase;
}
.woocommerce-order table.order_details { margin: 0; border: 0; }
.woocommerce-order table.order_details thead { display: none; }
.woocommerce-order table.order_details td,
.woocommerce-order table.order_details th { padding: 16px 0; border: 0; border-bottom: 1px solid var(--noren-line); background: none; font-size: 14px; }
.woocommerce-order table.order_details td.product-name a { font-weight: 600; color: var(--noren-black); }
.woocommerce-order table.order_details td.product-name .product-quantity { font-weight: 600; color: var(--noren-muted); }
.woocommerce-order table.order_details td.product-total,
.woocommerce-order table.order_details tfoot td { text-align: right; font-weight: 600; color: var(--noren-black); }
.woocommerce-order table.order_details tfoot th { font-size: 11px; font-weight: 600; letter-spacing: .18em; text-transform: uppercase; color: var(--noren-muted); text-align: left; }
.woocommerce-order table.order_details tfoot tr:last-child th,
.woocommerce-order table.order_details tfoot tr:last-child td { border-bottom: 0; }
.woocommerce-order table.order_details tfoot tr:has(.noren-order-total) th,
.woocommerce-order table.order_details tfoot tr:has(.noren-order-total) td { padding-top: 20px; border-top: 1px solid var(--noren-black); color: var(--noren-black); }
.noren-order-total .amount { font-size: 24px; font-weight: 600; }
.woocommerce-order table.order_details tfoot .order-actions-button { min-height: 40px; margin: 0 0 0 6px; padding: 0 18px; line-height: 38px; font-size: 10px; }
.woocommerce-order table.order_details .wc-item-meta { margin: 6px 0 0; padding: 0; list-style: none; font-size: 12px; color: var(--noren-muted); }

.woocommerce-order .woocommerce-customer-details .col2-set { display: grid; grid-template-columns: 1fr; gap: 28px; }
.woocommerce-order .woocommerce-customer-details .col2-set::before,
.woocommerce-order .woocommerce-customer-details .col2-set::after { display: none; }
.woocommerce-order .woocommerce-customer-details .col2-set .col-1,
.woocommerce-order .woocommerce-customer-details .col2-set .col-2 { float: none; width: auto; }
.woocommerce-order address {
	padding: 0 !important; border: 0 !important; border-radius: 0 !important;
	font-style: normal; font-size: 14px; line-height: 1.85; color: var(--noren-ink);
}
.woocommerce-order address p { margin: 6px 0 0; color: var(--noren-muted); }
.woocommerce-order address .woocommerce-customer-details--phone::before,
.woocommerce-order address .woocommerce-customer-details--email::before { display: none; }
.woocommerce .woocommerce-customer-details address p.woocommerce-customer-details--phone,
.woocommerce .woocommerce-customer-details address p.woocommerce-customer-details--email { padding-left: 0; }

/* Alt butonlar */
.noren-thanks__actions { grid-column: 1 / -1; display: flex; justify-content: center; flex-wrap: wrap; gap: 12px; margin-top: clamp(40px, 5vw, 64px); }

/* Başarısız ödeme */
.woocommerce-order .woocommerce-thankyou-order-failed { margin: 40px 0 16px; padding: 22px 24px; border-left: 2px solid var(--noren-error); background: var(--noren-white); border-top: 1px solid var(--noren-line); border-right: 1px solid var(--noren-line); border-bottom: 1px solid var(--noren-line); font-size: 14px; }
.woocommerce-order .woocommerce-thankyou-order-failed-actions { display: flex; gap: 12px; margin: 0; padding: 0; border: 0; background: none; }

/* Duyarlı
   -------------------------------------------------------------------------- */
@media (max-width: 991px) {
	.woocommerce-checkout form.checkout { grid-template-columns: 1fr; }
	.noren-checkout-main { grid-row: 3; }
	.noren-checkout-summary {
		grid-column: 1; grid-row: 2;
		position: static;
		margin: 0 calc(var(--noren-gutter) * -1) 40px;
		padding: 0 var(--noren-gutter);
		border-top: 1px solid var(--noren-line);
		border-bottom: 1px solid var(--noren-line);
	}
	.noren-summary-toggle {
		display: flex; align-items: center; gap: 12px;
		width: 100%; padding: 20px 0;
		border: 0; background: none; color: var(--noren-black);
		font-family: var(--noren-font-body); font-size: 12px; font-weight: 500;
		letter-spacing: .16em; text-transform: uppercase;
		cursor: pointer;
	}
	.noren-summary-toggle svg { width: 18px; height: 18px; stroke: currentColor; fill: none; stroke-width: 1.2; }
	.noren-summary-toggle__label::after {
		content: "";
		display: inline-block; width: 7px; height: 7px; margin: -3px 0 0 10px;
		border-right: 1px solid currentColor; border-bottom: 1px solid currentColor;
		transform: rotate(45deg); vertical-align: middle;
		transition: transform .3s var(--noren-ease);
	}
	.noren-summary-toggle[aria-expanded="true"] .noren-summary-toggle__label::after { transform: rotate(-135deg); margin-top: 3px; }
	.noren-summary-toggle__total { margin-left: auto; font-size: 16px; font-weight: 500; letter-spacing: 0; text-transform: none; }
	.noren-checkout-summary #order_review_heading,
	.noren-checkout-summary #order_review,
	.noren-checkout-summary .noren-checkout-trust { display: none; }
	.noren-checkout-summary.is-open #order_review { display: block; padding-bottom: 24px; }

	.woocommerce-cart .noren-flow > .woocommerce { grid-template-columns: minmax(0, 1fr); }
	.woocommerce-cart .noren-flow > .woocommerce > .cart-collaterals { grid-column: 1; grid-row: auto; position: static; margin-top: 40px; }
	.woocommerce-cart table.shop_table.cart tr.cart_item { grid-template-columns: 110px minmax(0, 1fr) 140px 110px; column-gap: 20px; }
}
@media (max-width: 767px) {
	.noren-checkout-back span, .noren-checkout-secure span { display: none; }
	.noren-steps li { font-size: 0; letter-spacing: 0; }
	.noren-steps__num { margin-right: 0; font-size: 10px; }
	.noren-steps li.is-current { font-size: 10px; letter-spacing: .18em; }
	.noren-steps li.is-current .noren-steps__num { margin-right: 10px; }
	.woocommerce-checkout .form-row-first,
	.woocommerce-checkout .form-row-last { width: 100%; float: none; }

	/* Sepet satırları: mobil */
	.woocommerce-cart table.shop_table.cart tr.cart_item {
		grid-template-columns: 96px minmax(0, 1fr);
		grid-template-areas: "thumb name" "thumb qty" "thumb total" "thumb remove";
		grid-template-rows: auto auto auto 1fr;
		column-gap: 16px; row-gap: 10px;
		padding: 20px 0;
	}
	.woocommerce-cart table.cart td.product-thumbnail img { width: 96px !important; height: 120px; }
	.woocommerce-cart table.cart td.product-name > a { font-size: 14px; }
	.woocommerce-cart table.cart td.product-subtotal { text-align: left !important; font-size: 15px; }
	.woocommerce-cart table.cart td.product-remove { align-self: start; }
	.woocommerce-cart table.cart td.actions .coupon { max-width: none; }
	.noren-flow-header { align-items: flex-start; }
	.noren-cart-suggest .noren-section-head { margin-bottom: 24px; }
	.woocommerce .cart-collaterals .cart_totals { padding: 28px; }
	.woocommerce-order { grid-template-columns: minmax(0, 1fr); }
	.woocommerce-order .woocommerce-customer-details { grid-column: 1; margin-top: 32px; padding: 24px; }
	.woocommerce ul.order_details { grid-template-columns: 1fr 1fr; }
	.woocommerce ul.order_details li { border-right: 0; border-bottom: 1px solid var(--noren-line); }
	.noren-thanks__actions .noren-btn { width: 100%; }
}
