/**
 * Ödeme sayfası — temadan bağımsız tasarım.
 * Tema kuralları eziyor olabileceği için önemli yerlerde !important kullanılır.
 * Panel ile aynı görsel dil: lacivert + altın vurgu, Poppins, yumuşak kartlar.
 */

body.sanal-odeme{
	--o-ink:#16243C;
	--o-ink-2:#1B2C49;
	--o-accent:#E0A436;
	--o-accent-d:#B5811F;
	--o-line:#e4e7ec;
	--o-soft:#f6f8fc;
	--o-muted:#6b7480;
	--o-danger:#c0392b;
	--o-ok:#1a7f37;
	--o-r:14px;
	--o-shadow:0 18px 40px -26px rgba(16,24,40,.45);
}

/* Tema başlık/kenar çubuğu gürültüsünü sadeleştir */
body.sanal-odeme .woocommerce > .woocommerce-notices-wrapper{max-width:1180px;margin:0 auto;padding:0 16px}
body.sanal-odeme #content,
body.sanal-odeme .section_wrapper,
body.sanal-odeme .the_content_wrapper{max-width:none !important;margin-left:auto !important;margin-right:auto !important}

body.sanal-odeme .woocommerce,
body.sanal-odeme .woocommerce input,
body.sanal-odeme .woocommerce select,
body.sanal-odeme .woocommerce textarea,
body.sanal-odeme .woocommerce button{font-family:'Poppins',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}

/* ---------------- Bildirimler ---------------- */
body.sanal-odeme .woocommerce-error,
body.sanal-odeme .woocommerce-info,
body.sanal-odeme .woocommerce-message{
	border:1px solid var(--o-line) !important;border-radius:12px !important;background:#fff !important;
	box-shadow:var(--o-shadow);padding:14px 18px !important;margin:0 0 20px !important;color:var(--o-ink) !important;
	border-top:3px solid var(--o-accent) !important;list-style:none
}
body.sanal-odeme .woocommerce-error{border-top-color:var(--o-danger) !important}
body.sanal-odeme .woocommerce-error li{margin:0 0 4px}
body.sanal-odeme .woocommerce-error::before,
body.sanal-odeme .woocommerce-info::before,
body.sanal-odeme .woocommerce-message::before{display:none !important}

/* ---------------- Düzen ---------------- */
/* İki sütun: solda form, sağda sipariş özeti + ödeme */
body.sanal-odeme form.checkout.woocommerce-checkout{
	display:grid;grid-template-columns:minmax(0,1.45fr) minmax(340px,1fr);
	gap:0 24px;align-items:start;max-width:1180px;margin:0 auto
}
body.sanal-odeme #customer_details{grid-column:1;grid-row:1 / span 2;min-width:0}
body.sanal-odeme #order_review_heading{
	grid-column:2;grid-row:1;margin:0 0 12px !important;font-size:17px !important;
	color:var(--o-ink) !important;border-bottom:0 !important;padding-bottom:0 !important
}
body.sanal-odeme #order_review{grid-column:2;grid-row:2;min-width:0}
body.sanal-odeme #customer_details .col-1,
body.sanal-odeme #customer_details .col-2{width:100% !important;float:none !important;margin:0 !important}

/* Kart görünümü */
body.sanal-odeme #customer_details .col-1,
body.sanal-odeme #customer_details .col-2,
body.sanal-odeme #order_review{
	background:#fff;border:1px solid var(--o-line);border-radius:var(--o-r);
	padding:22px 24px;box-shadow:var(--o-shadow)
}
body.sanal-odeme #customer_details .col-2{margin-top:18px !important}

body.sanal-odeme .woocommerce-billing-fields > h3,
body.sanal-odeme .woocommerce-additional-fields > h3,
body.sanal-odeme #order_review_heading{
	font-size:16px !important;font-weight:700 !important;color:var(--o-ink) !important;
	margin:0 0 16px !important;padding:0 0 12px !important;border-bottom:1px solid #f0f2f5
}

/* ---------------- Form alanları ---------------- */
body.sanal-odeme .form-row{padding:0 !important;margin:0 0 15px !important;display:block}
body.sanal-odeme .form-row-first,
body.sanal-odeme .form-row-last{width:calc(50% - 7px) !important;float:none !important;display:inline-block;vertical-align:top}
body.sanal-odeme .form-row-first{margin-right:12px !important}
body.sanal-odeme .form-row-wide{width:100% !important}

body.sanal-odeme .form-row label{
	display:block !important;font-size:12.5px !important;font-weight:600 !important;
	color:var(--o-ink) !important;margin:0 0 6px !important;letter-spacing:.01em
}
body.sanal-odeme .form-row label .required{color:var(--o-accent-d) !important;text-decoration:none;border:0}
body.sanal-odeme .form-row .optional{color:var(--o-muted);font-weight:400}
body.sanal-odeme .form-row .description,
body.sanal-odeme .form-row span.description{
	display:block;margin:6px 0 0;font-size:12.5px;line-height:1.5;color:var(--o-muted);
	background:#fdf6e3;border-left:3px solid var(--o-accent);border-radius:0 8px 8px 0;padding:8px 11px
}

body.sanal-odeme .woocommerce form .form-row input.input-text,
body.sanal-odeme .woocommerce form .form-row textarea,
body.sanal-odeme .woocommerce form .form-row select,
body.sanal-odeme .form-row input.input-text,
body.sanal-odeme .form-row textarea,
body.sanal-odeme .form-row select{
	width:100% !important;box-sizing:border-box !important;
	border:1.5px solid var(--o-line) !important;border-radius:11px !important;
	padding:12px 14px !important;font-size:14.5px !important;line-height:1.4 !important;
	background:#fff !important;color:var(--o-ink) !important;box-shadow:none !important;
	height:auto !important;min-height:0 !important;transition:border-color .15s ease,box-shadow .15s ease;
	-webkit-appearance:none;appearance:none
}
body.sanal-odeme .form-row select{
	background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%236b7480' d='M1.4 0 6 4.6 10.6 0 12 1.4 6 7.4 0 1.4z'/%3E%3C/svg%3E") !important;
	background-repeat:no-repeat !important;background-position:right 14px center !important;padding-right:38px !important
}
body.sanal-odeme .form-row textarea{min-height:88px !important;resize:vertical}
body.sanal-odeme .form-row input.input-text:focus,
body.sanal-odeme .form-row textarea:focus,
body.sanal-odeme .form-row select:focus{
	border-color:var(--o-ink-2) !important;outline:0 !important;
	box-shadow:0 0 0 3px rgba(27,44,73,.10) !important
}
body.sanal-odeme .form-row select:disabled{background-color:#f5f6f8 !important;color:#9aa2ad !important;cursor:not-allowed}
body.sanal-odeme .form-row.woocommerce-invalid input.input-text,
body.sanal-odeme .form-row.woocommerce-invalid select,
body.sanal-odeme .form-row.woocommerce-invalid textarea{border-color:var(--o-danger) !important}
body.sanal-odeme .form-row.woocommerce-validated input.input-text,
body.sanal-odeme .form-row.woocommerce-validated select{border-color:#bfe3c8 !important}

/* ---------------- Sipariş özeti ---------------- */
body.sanal-odeme .woocommerce table.shop_table{
	border:0 !important;border-radius:0 !important;margin:0 !important;width:100%;border-collapse:collapse
}
body.sanal-odeme .woocommerce table.shop_table th,
body.sanal-odeme .woocommerce table.shop_table td{
	border:0 !important;border-bottom:1px solid #f0f2f5 !important;padding:11px 0 !important;
	font-size:14px !important;color:var(--o-ink) !important;background:transparent !important
}
body.sanal-odeme .woocommerce table.shop_table thead th{font-size:12px !important;color:var(--o-muted) !important;font-weight:600 !important;text-transform:uppercase;letter-spacing:.04em}
body.sanal-odeme .woocommerce table.shop_table .product-name{font-weight:500}
body.sanal-odeme .woocommerce table.shop_table .order-total th,
body.sanal-odeme .woocommerce table.shop_table .order-total td{
	border-bottom:0 !important;padding-top:15px !important;font-size:17px !important;font-weight:700 !important
}
body.sanal-odeme .woocommerce table.shop_table .order-total td{color:var(--o-ink) !important}
body.sanal-odeme .wc-item-meta,
body.sanal-odeme .variation{font-size:12.5px;color:var(--o-muted);margin:4px 0 0;padding:0;list-style:none}
body.sanal-odeme .wc-item-meta li{margin:0}
body.sanal-odeme .wc-item-meta strong{font-weight:600}

/* ---------------- Ödeme yöntemleri ---------------- */
body.sanal-odeme #payment{background:transparent !important;border-radius:0 !important;margin-top:18px}
body.sanal-odeme #payment ul.payment_methods{
	border:0 !important;padding:0 !important;margin:0 0 14px !important;list-style:none
}
body.sanal-odeme #payment ul.payment_methods li{
	border:1.5px solid var(--o-line);border-radius:12px;padding:13px 15px;margin:0 0 9px;
	background:#fff;transition:border-color .15s ease,background .15s ease
}
body.sanal-odeme #payment ul.payment_methods li:hover{border-color:#c2c9d4}
body.sanal-odeme #payment ul.payment_methods li label{font-weight:600 !important;color:var(--o-ink) !important;font-size:14px !important;display:inline;cursor:pointer}
body.sanal-odeme #payment ul.payment_methods li img{max-height:26px;margin-left:8px;vertical-align:middle}
body.sanal-odeme #payment div.payment_box{
	background:var(--o-soft) !important;border-radius:10px !important;margin:11px 0 0 !important;
	padding:12px 14px !important;font-size:13.5px !important;color:var(--o-muted) !important
}
body.sanal-odeme #payment div.payment_box::before{display:none !important}

/* Şartlar / onay kutuları */
body.sanal-odeme .woocommerce-terms-and-conditions-wrapper{margin:4px 0 14px}
body.sanal-odeme .form-row.validate-required label.checkbox,
body.sanal-odeme .woocommerce-form__label-for-checkbox{
	font-size:13.5px !important;font-weight:500 !important;color:var(--o-muted) !important;display:flex !important;
	align-items:flex-start;gap:9px;line-height:1.5
}
body.sanal-odeme input[type="checkbox"]{width:auto !important;margin:2px 0 0 !important;accent-color:var(--o-ink-2)}

/* ---------------- Butonlar ----------------
   Tema, buton zeminlerini hover'da beyaza çeviriyor; her durumda koyu kalsın. */
body.sanal-odeme #place_order,
body.sanal-odeme .woocommerce #payment #place_order,
body.sanal-odeme button.button.alt{
	width:100% !important;display:block !important;
	background:linear-gradient(135deg,#1B2C49,#24375A) !important;background-color:#1B2C49 !important;
	color:#fff !important;border:0 !important;border-radius:12px !important;
	padding:15px 22px !important;font-size:15.5px !important;font-weight:700 !important;
	letter-spacing:.01em;cursor:pointer;box-shadow:0 12px 26px -14px rgba(27,44,73,.8) !important;
	transition:filter .15s ease,transform .15s ease;text-shadow:none !important
}
body.sanal-odeme #place_order:hover,
body.sanal-odeme #place_order:focus,
body.sanal-odeme #place_order:active,
body.sanal-odeme .woocommerce #payment #place_order:hover,
body.sanal-odeme button.button.alt:hover,
body.sanal-odeme button.button.alt:focus{
	background:linear-gradient(135deg,#22355A,#2C4269) !important;background-color:#22355A !important;
	color:#fff !important;filter:brightness(1.04);transform:translateY(-1px)
}
body.sanal-odeme .blockUI.blockOverlay{border-radius:var(--o-r)}

/* Kupon */
body.sanal-odeme .woocommerce-form-coupon-toggle{margin:0 0 16px}
body.sanal-odeme .checkout_coupon{
	border:1px solid var(--o-line) !important;border-radius:12px !important;padding:16px !important;
	margin:0 0 18px !important;background:var(--o-soft) !important
}
body.sanal-odeme .checkout_coupon button.button{
	background:var(--o-accent) !important;color:var(--o-ink) !important;border:0 !important;
	border-radius:10px !important;font-weight:700 !important;padding:12px 18px !important
}
body.sanal-odeme .checkout_coupon button.button:hover{background:var(--o-accent-d) !important;color:#fff !important}

/* ---------------- Mobil ---------------- */
@media (max-width:980px){
	body.sanal-odeme form.checkout.woocommerce-checkout{
		display:block !important;max-width:720px !important
	}
	body.sanal-odeme #customer_details,
	body.sanal-odeme #order_review,
	body.sanal-odeme #order_review_heading{width:100% !important}
	body.sanal-odeme #order_review_heading{margin:24px 0 12px !important}
}
@media (max-width:620px){
	body.sanal-odeme .woocommerce > .woocommerce-notices-wrapper{padding:0 12px}
	body.sanal-odeme #customer_details .col-1,
	body.sanal-odeme #customer_details .col-2,
	body.sanal-odeme #order_review{padding:17px 16px;border-radius:12px}
	body.sanal-odeme .form-row-first,
	body.sanal-odeme .form-row-last{width:100% !important;margin-right:0 !important;display:block}
	body.sanal-odeme .form-row{margin-bottom:13px !important}
	body.sanal-odeme .form-row input.input-text,
	body.sanal-odeme .form-row textarea,
	body.sanal-odeme .form-row select{padding:11px 13px !important;font-size:16px !important}
	body.sanal-odeme #place_order{padding:14px 18px !important;font-size:15px !important}
	body.sanal-odeme .woocommerce table.shop_table .order-total th,
	body.sanal-odeme .woocommerce table.shop_table .order-total td{font-size:16px !important}
}

/* ==========================================================================
   v2.4.3 — Form düzeltmeleri
   Tema metinleri ortalıyor ve sütunları float ile yan yana diziyor;
   WooCommerce de alan açıklamasını mavi baloncuk olarak gösteriyordu.
   ========================================================================== */

/* 1 — İki sütun; tema float'ları ızgara içinde etkisiz kalır */
body.sanal-odeme form.checkout.woocommerce-checkout{
	display:grid !important;max-width:1180px !important;margin:0 auto !important;float:none !important
}
body.sanal-odeme #customer_details,
body.sanal-odeme #order_review,
body.sanal-odeme #order_review_heading,
body.sanal-odeme #customer_details .col-1,
body.sanal-odeme #customer_details .col-2{
	float:none !important;width:100% !important;max-width:none !important;
	display:block !important;margin-left:0 !important;margin-right:0 !important
}
body.sanal-odeme #customer_details::after,
body.sanal-odeme form.checkout::after{content:"";display:table;clear:both}

/* 2 — Metinler sola hizalı (tema ortalıyor) */
body.sanal-odeme #customer_details,
body.sanal-odeme #order_review,
body.sanal-odeme .form-row,
body.sanal-odeme .form-row label,
body.sanal-odeme .woocommerce-billing-fields > h3,
body.sanal-odeme .woocommerce-additional-fields > h3,
body.sanal-odeme #order_review_heading,
body.sanal-odeme .woocommerce table.shop_table th,
body.sanal-odeme .woocommerce table.shop_table td,
body.sanal-odeme #payment ul.payment_methods li,
body.sanal-odeme #payment div.payment_box,
body.sanal-odeme .woocommerce-privacy-policy-text{text-align:left !important}
body.sanal-odeme .woocommerce table.shop_table td.product-total,
body.sanal-odeme .woocommerce table.shop_table th.product-total,
body.sanal-odeme .woocommerce table.shop_table .order-total td{text-align:right !important}

/* 3 — Alan çiftleri esnek dizilim: etiket iki satıra taşsa da kutular hizalı kalır */
body.sanal-odeme .woocommerce-billing-fields__field-wrapper,
body.sanal-odeme .woocommerce-additional-fields__field-wrapper{
	display:flex;flex-wrap:wrap;gap:0 14px;align-items:flex-end
}
body.sanal-odeme .woocommerce-billing-fields__field-wrapper > .form-row,
body.sanal-odeme .woocommerce-additional-fields__field-wrapper > .form-row{
	margin-bottom:15px !important;flex:0 0 100%;width:100% !important
}
body.sanal-odeme .form-row.notes,
body.sanal-odeme #order_comments_field{flex:0 0 100% !important;width:100% !important}
body.sanal-odeme #order_comments{width:100% !important;min-height:104px !important}
body.sanal-odeme .woocommerce-billing-fields__field-wrapper > .form-row-first,
body.sanal-odeme .woocommerce-billing-fields__field-wrapper > .form-row-last,
body.sanal-odeme .form-row-first,
body.sanal-odeme .form-row-last{
	flex:0 0 calc(50% - 7px) !important;width:calc(50% - 7px) !important;
	display:block;margin-right:0 !important;float:none !important
}
body.sanal-odeme .form-row-wide{flex:0 0 100%;width:100% !important}
body.sanal-odeme .form-row label{min-height:0;white-space:normal}

/* 4 — Alan açıklaması: mavi baloncuk değil, sabit not */
body.sanal-odeme .woocommerce-input-wrapper .description,
body.sanal-odeme .form-row .description,
body.sanal-odeme span.description{
	display:block !important;position:static !important;opacity:1 !important;visibility:visible !important;
	background:#fdf6e3 !important;color:#7a6320 !important;border:0 !important;border-left:3px solid var(--o-accent) !important;
	border-radius:0 8px 8px 0 !important;padding:8px 11px !important;margin:7px 0 0 !important;
	font-size:12.5px !important;line-height:1.5 !important;text-align:left !important;box-shadow:none !important;
	clear:both;max-width:none;width:auto
}
body.sanal-odeme .woocommerce-input-wrapper .description::before,
body.sanal-odeme .woocommerce-input-wrapper .description::after,
body.sanal-odeme .form-row .description::before,
body.sanal-odeme .form-row .description::after{display:none !important;content:none !important}
body.sanal-odeme .woocommerce-input-wrapper{display:block;width:100%}

/* 5 — Sipariş özeti başlığı kart içinde değil, kartın üstünde dursun */
body.sanal-odeme #order_review_heading{
	margin:26px 0 12px !important;font-size:17px !important;font-weight:700 !important;padding:0 !important
}
body.sanal-odeme #customer_details .col-2{margin-top:18px !important}

/* 6 — Zorunlu yıldızı sade */
body.sanal-odeme .form-row label .required{
	color:var(--o-accent-d) !important;text-decoration:none !important;border:0 !important;margin-left:2px
}

@media (max-width:620px){
	body.sanal-odeme .woocommerce-billing-fields__field-wrapper{gap:0}
	body.sanal-odeme .form-row-first,
	body.sanal-odeme .form-row-last{flex:0 0 100%;width:100% !important}
}

/* ==========================================================================
   v2.4.5 — İki sütun dengesi
   ========================================================================== */

/* Sol sütun: fatura kartı + ek bilgi kartı; ek bilgi tek alan olduğu için daha derli toplu */
body.sanal-odeme #customer_details .col-2{
	margin-top:16px !important;padding:18px 22px !important
}
body.sanal-odeme .woocommerce-additional-fields{margin:0}
body.sanal-odeme .woocommerce-additional-fields > h3{
	font-size:15px !important;margin:0 0 13px !important;padding:0 0 11px !important
}
body.sanal-odeme .woocommerce-additional-fields__field-wrapper{display:block}
body.sanal-odeme #order_comments_field label{margin-bottom:6px !important}

/* Sağ sütun: sipariş özeti ve ödeme aynı kart içinde, ferah */
body.sanal-odeme #order_review{padding:22px 24px !important}
body.sanal-odeme #order_review #payment{margin-top:20px;padding-top:18px;border-top:1px solid #f0f2f5}
body.sanal-odeme #order_review .woocommerce-checkout-payment{background:transparent !important}
body.sanal-odeme #order_review .shop_table{margin-bottom:0 !important}

/* Uzun sayfalarda özet ekranda kalsın */
@media (min-width:981px){
	body.sanal-odeme form.checkout.woocommerce-checkout{align-items:start}
	body.sanal-odeme #order_review{position:sticky;top:24px}
}

@media (max-width:980px){
	body.sanal-odeme #customer_details .col-2{padding:17px 18px !important}
	body.sanal-odeme #order_review{position:static}
}
