/*
Theme Name: Nirutec Child
Template: twentytwentyfive
Version: 1.43.0
Description: Nirutec.store için Twenty Twenty-Five üzerine kurulu child theme. Tasarım katmanını eklentilerden ayırıp burada topluyoruz. Dil (bilingual), döviz (currency-selector), tedarikçi (Ceka/Bayitek) ve hukuki eklentilere dokunulmaz — sadece görsel çıktıları bu tema üzerinden özelleştirilir.
Author: Nirutec
Text Domain: nirutec-child
*/

/* ============================================================
   NIRUTEC MARKA RENK VE STİL SİSTEMİ (Faz 4 - adım 1, TAM TAŞIMA)
   Kaynak: nirutec-brand-colors eklentisinin ürettiği CSS'in BİREBİR
   kopyası. "body.nirutec-brand-colors-active" class şartı kaldırıldı,
   doğrudan "body" olarak uygulanıyor - artık bu kurallar eklentiden
   değil, temadan geliyor. Bu blok; header, ana sayfa, mağaza sayfası,
   WooCommerce buton/mesaj/sepet/ödeme ve footer (store-essentials)
   renklerinin TAMAMINI kapsar. Bu blok tam ve doğrulanmış biçimde
   çalıştığından emin olunduktan sonra nirutec-brand-colors eklentisi
   devre dışı bırakılabilir.
   ============================================================ */
:root{
    --nbc-navy:#102a43;
    --nbc-navy-2:#173f70;
    --nbc-blue:#0b5bd3;
    --nbc-blue-hover:#0849a9;
    --nbc-blue-soft:#eaf3ff;
    --nbc-orange:#c94f0a;
    --nbc-orange-hover:#a93f04;
    --nbc-orange-soft:#fff3e8;
    --nbc-amber:#f59e0b;
    --nbc-green:#168653;
    --nbc-green-soft:#eaf8f1;
    --nbc-red:#c43c3c;
    --nbc-text:#10233f;
    --nbc-muted:#64748b;
    --nbc-surface:#f5f8fc;
    --nbc-card:#ffffff;
    --nbc-line:rgba(16,42,67,.12);
    --nbc-shadow:0 14px 34px rgba(16,42,67,.08);
}

body{
    --nph-navy:var(--nbc-navy);
    --nph-blue:var(--nbc-blue);
    --nph-text:var(--nbc-text);
    --nph-muted:var(--nbc-muted);
    --nph-line:var(--nbc-line);
    --nhp-navy:var(--nbc-navy);
    --nhp-blue:var(--nbc-blue);
    --nhp-blue2:#2474df;
    --nhp-text:var(--nbc-text);
    --nhp-muted:var(--nbc-muted);
    --nhp-line:var(--nbc-line);
    --nhp-bg:var(--nbc-surface);
    --nhp-card:var(--nbc-card);
    --nsp-text:var(--nbc-text);
    --nsp-muted:var(--nbc-muted);
    --nsp-line:var(--nbc-line);
    --nsp-blue:var(--nbc-blue);
    --nsp-soft-blue:var(--nbc-blue-soft);
    --nse-text:var(--nbc-text);
    --nse-muted:var(--nbc-muted);
    --nse-line:var(--nbc-line);
    --nse-blue:var(--nbc-blue);
    --nse-navy:var(--nbc-navy);
    --nse-bg:var(--nbc-surface);
    background:var(--nbc-surface);
    color:var(--nbc-text);
}

body ::selection{
    background:#d5e8ff;
    color:var(--nbc-navy);
}

body :where(a,button,input,select,summary):focus-visible{
    outline:3px solid rgba(11,91,211,.25)!important;
    outline-offset:2px!important;
}

/* Header */
body .nph-topline{
    background:linear-gradient(100deg,var(--nbc-navy) 0%,#123d75 58%,var(--nbc-blue) 140%)!important;
}

body .nph-header{
    background:rgba(255,255,255,.97)!important;
    border-bottom:2px solid rgba(11,91,211,.20)!important;
    box-shadow:0 10px 28px rgba(16,42,67,.08)!important;
}

body .nph-brand,
body .nph-actions a{
    color:var(--nbc-navy)!important;
}

body .nph-menu a:hover,
body .nph-menu button:hover,
body .nph-cat-open-btn{
    color:var(--nbc-blue)!important;
}

body .nph-search,
body .nph-mega-search{
    border-color:rgba(16,42,67,.14)!important;
    background:#fff!important;
}

body .nph-search:focus-within,
body .nph-mega-search:focus-within{
    border-color:rgba(11,91,211,.52)!important;
    box-shadow:0 0 0 4px rgba(11,91,211,.08)!important;
}

body .nph-cart em{
    background:var(--nbc-orange)!important;
    box-shadow:0 4px 12px rgba(201,79,10,.24)!important;
}

body .nph-mega-panel,
body .nph-search-panel{
    border-color:var(--nbc-line)!important;
    box-shadow:0 28px 72px rgba(16,42,67,.22)!important;
}

body .nph-mega-head{
    background:linear-gradient(135deg,#fff 20%,#f3f8ff 100%)!important;
}

body .nph-mega-head span,
body .nph-cat-title small{
    background:var(--nbc-blue-soft)!important;
    color:var(--nbc-blue)!important;
}

body .nph-mega-search button,
body .nph-mobile-search{
    background:var(--nbc-blue)!important;
}

body .nph-mega-search button:hover,
body .nph-mobile-search:hover{
    background:var(--nbc-blue-hover)!important;
}

body .nph-all-products{
    background:var(--nbc-navy)!important;
}

body .nph-cat-card{
    border-color:var(--nbc-line)!important;
    box-shadow:0 9px 24px rgba(16,42,67,.055)!important;
}

body .nph-cat-children a{
    background:#f7f9fc!important;
    color:#40526d!important;
}

body .nph-cat-children a:hover{
    background:var(--nbc-blue-soft)!important;
    color:var(--nbc-blue)!important;
}

body .nph-mobile-bottom{
    border-color:rgba(16,42,67,.12)!important;
    background:rgba(255,255,255,.96)!important;
    box-shadow:0 18px 42px rgba(16,42,67,.18)!important;
}

body .nph-mobile-bottom :where(a,button):active{
    background:var(--nbc-blue-soft)!important;
    color:var(--nbc-blue)!important;
}

/* Homepage */
body .nrt-hp-shipping{
    border-color:rgba(11,91,211,.14)!important;
    background:rgba(255,255,255,.94)!important;
}

body .nrt-hp-shipping__icon{
    background:var(--nbc-orange-soft)!important;
    color:var(--nbc-orange)!important;
}

body .nrt-hp-shipping strong:after{
    background:var(--nbc-amber)!important;
}

body .nrt-hp-hero{
    background:radial-gradient(circle at 8% 6%,rgba(245,158,11,.19),transparent 31%),linear-gradient(135deg,#fff 0%,#f7faff 58%,#eaf3ff 100%)!important;
    border-color:rgba(11,91,211,.14)!important;
    box-shadow:0 18px 44px rgba(16,42,67,.09)!important;
}

body .nrt-hp-kicker{
    background:var(--nbc-blue-soft)!important;
    color:var(--nbc-blue-hover)!important;
}

body .nrt-hp-kicker i{
    background:var(--nbc-amber)!important;
    box-shadow:0 0 0 4px rgba(245,158,11,.14)!important;
}

body .nrt-hp-primary,
body .nrt-hp-product-btn{
    background:linear-gradient(135deg,var(--nbc-orange),#b94307)!important;
    color:#fff!important;
    box-shadow:0 10px 22px rgba(201,79,10,.22)!important;
}

body .nrt-hp-primary:hover,
body .nrt-hp-product-btn:hover{
    background:linear-gradient(135deg,var(--nbc-orange-hover),#933703)!important;
    box-shadow:0 14px 27px rgba(169,63,4,.25)!important;
}

body .nrt-hp-secondary{
    border-color:rgba(11,91,211,.24)!important;
    background:#fff!important;
    color:var(--nbc-blue)!important;
}

body .nrt-hp-proof b,
body .nrt-hp-micro .is-stock{
    background:var(--nbc-green-soft)!important;
    color:var(--nbc-green)!important;
}

body .nrt-hp-showcase-main{
    background:linear-gradient(145deg,var(--nbc-navy),#154b8e 72%,var(--nbc-blue))!important;
    box-shadow:0 16px 34px rgba(16,42,67,.20)!important;
}

body .nrt-hp-showcase-grid a:first-child{
    background:linear-gradient(145deg,var(--nbc-orange-soft),#fff 74%)!important;
}

body .nrt-hp-head>div>span,
body .nrt-hp-head>a{
    color:var(--nbc-blue)!important;
}

body .nrt-hp-cat,
body .nrt-hp-product{
    border-color:var(--nbc-line)!important;
    background:#fff!important;
}

body .nrt-hp-cat:hover,
body .nrt-hp-product:hover{
    border-color:rgba(11,91,211,.24)!important;
    box-shadow:var(--nbc-shadow)!important;
}

body .nrt-hp-cat>i{
    background:var(--nbc-blue-soft)!important;
    color:var(--nbc-blue)!important;
}

body .nrt-hp-cat--1>i{
    background:var(--nbc-orange-soft)!important;
    color:var(--nbc-orange)!important;
}

body .nrt-hp-cat--2>i{
    background:var(--nbc-green-soft)!important;
    color:var(--nbc-green)!important;
}

body .nrt-hp-cat--3>i{
    background:#f2edff!important;
    color:#6746b5!important;
}

body .nrt-hp-product-img,
body li.wc-block-product .wc-block-components-product-image{
    background:linear-gradient(145deg,#fbfcfe,#f0f4f8)!important;
}

body .nrt-hp-price,
body .wc-block-components-product-price,
body .woocommerce-Price-amount{
    color:var(--nbc-navy)!important;
}

body :where(.nrt-hp-price,.price,.wc-block-components-product-price) ins{
    color:var(--nbc-orange)!important;
    text-decoration:none!important;
}

body :where(.nrt-hp-price,.price,.wc-block-components-product-price) ins .woocommerce-Price-amount{
    color:var(--nbc-orange)!important;
}

body .nrt-hp-sale,
body .onsale{
    background:var(--nbc-red)!important;
    color:#fff!important;
}

body .nrt-hp-band{
    background:linear-gradient(135deg,var(--nbc-navy),#17457c 62%,var(--nbc-blue))!important;
    box-shadow:0 18px 40px rgba(16,42,67,.18)!important;
}

body .nrt-hp-band-icon{
    color:var(--nbc-blue)!important;
}

body .nrt-hp-band>a{
    background:var(--nbc-orange)!important;
    color:#fff!important;
}

body .nrt-hp-band>a:hover{
    background:var(--nbc-orange-hover)!important;
}

/* Shop ve kategori sayfaları */
body .nsp-visual-hero{
    background:linear-gradient(135deg,#fff 0%,#f7faff 62%,var(--nbc-blue-soft) 100%)!important;
    border-color:rgba(11,91,211,.13)!important;
}

body .nsp-kicker{
    background:var(--nbc-orange-soft)!important;
    color:var(--nbc-orange)!important;
}

body .nsp-kicker i{
    background:var(--nbc-amber)!important;
}

body .nsp-shipping-info{
    border-color:rgba(201,79,10,.18)!important;
    background:#fffdfa!important;
}

body .nsp-shipping-info>i{
    background:var(--nbc-orange-soft)!important;
    color:var(--nbc-orange)!important;
}

body .nsp-split-diagonal{
    background:linear-gradient(135deg,rgba(11,91,211,.13) 49.2%,rgba(255,255,255,0) 49.5%,rgba(255,255,255,0) 50.5%,rgba(245,158,11,.18) 50.8%)!important;
}

body .nsp-split-half.is-active{
    color:var(--nbc-blue)!important;
}

body .nsp-split-card,
body .nsp-category-card,
body ul.wc-block-product-template>li.wc-block-product{
    border-color:var(--nbc-line)!important;
    background:#fff!important;
    box-shadow:0 8px 22px rgba(16,42,67,.055)!important;
}

body .nsp-split-card:hover,
body .nsp-category-card:hover,
body ul.wc-block-product-template>li.wc-block-product:hover{
    border-color:rgba(11,91,211,.24)!important;
    box-shadow:var(--nbc-shadow)!important;
}

body .nsp-category-icon{
    background:linear-gradient(135deg,var(--nbc-orange-soft),var(--nbc-blue-soft))!important;
}

body .nsp-category-card:nth-child(2n) .nsp-category-icon{
    background:linear-gradient(135deg,var(--nbc-blue-soft),#f2edff)!important;
}

body .nsp-category-card:nth-child(3n) .nsp-category-icon{
    background:linear-gradient(135deg,var(--nbc-green-soft),var(--nbc-blue-soft))!important;
}

body .nsp-filter-details summary,
body .nsp-sort-wrap select.orderby,
body .nsp-filter-panel{
    border-color:var(--nbc-line)!important;
    background:#fff!important;
}

body .nsp-filter-details summary:hover,
body .nsp-sort-wrap select.orderby:hover{
    border-color:rgba(11,91,211,.28)!important;
}

body .nsp-filter-panel button[type=submit]{
    background:var(--nbc-blue)!important;
    color:#fff!important;
}

body .nsp-filter-panel button[type=submit]:hover{
    background:var(--nbc-blue-hover)!important;
}

body li.wc-block-product .nrt-card-badge--stock{
    border-color:#b9e4ce!important;
    background:var(--nbc-green-soft)!important;
    color:var(--nbc-green)!important;
}

body li.wc-block-product .wc-block-components-product-button__button,
body .wc-block-components-product-button__button,
body ul.products li.product .button,
body .wc-block-grid__product-add-to-cart .button,
body .nrt-card-button{
    border-color:transparent!important;
    background:linear-gradient(135deg,var(--nbc-orange),#b94307)!important;
    color:#fff!important;
    box-shadow:0 8px 18px rgba(201,79,10,.20)!important;
}

body li.wc-block-product .wc-block-components-product-button__button:hover,
body .wc-block-components-product-button__button:hover,
body ul.products li.product .button:hover,
body .wc-block-grid__product-add-to-cart .button:hover,
body .nrt-card-button:hover{
    background:linear-gradient(135deg,var(--nbc-orange-hover),#933703)!important;
}

/* WooCommerce ürün, sepet ve ödeme */
body :where(.single_add_to_cart_button,.checkout-button,.wc-block-cart__submit-button,.wc-block-components-checkout-place-order-button,button[name="woocommerce_checkout_place_order"]){
    border-color:transparent!important;
    background:linear-gradient(135deg,var(--nbc-orange),#b94307)!important;
    color:#fff!important;
    box-shadow:0 9px 20px rgba(201,79,10,.21)!important;
}

body :where(.single_add_to_cart_button,.checkout-button,.wc-block-cart__submit-button,.wc-block-components-checkout-place-order-button,button[name="woocommerce_checkout_place_order"]):hover{
    background:linear-gradient(135deg,var(--nbc-orange-hover),#933703)!important;
}

body :where(input:not([type="checkbox"]):not([type="radio"]),select,textarea):focus{
    border-color:rgba(11,91,211,.52)!important;
    box-shadow:0 0 0 4px rgba(11,91,211,.08)!important;
    outline:0!important;
}

body .woocommerce-message{
    border-top-color:var(--nbc-green)!important;
    background:var(--nbc-green-soft)!important;
    color:var(--nbc-text)!important;
}

body .woocommerce-info{
    border-top-color:var(--nbc-blue)!important;
    background:var(--nbc-blue-soft)!important;
    color:var(--nbc-text)!important;
}

body .woocommerce-error{
    border-top-color:var(--nbc-red)!important;
    background:#fff1f1!important;
    color:var(--nbc-text)!important;
}

/* Store Essentials */
body .nse-cart-goal{
    border-color:rgba(201,79,10,.18)!important;
    background:linear-gradient(135deg,#fff,var(--nbc-orange-soft))!important;
}

body .nse-cart-goal__bar{
    background:rgba(201,79,10,.11)!important;
}

body .nse-cart-goal__bar span{
    background:linear-gradient(90deg,var(--nbc-orange),var(--nbc-amber))!important;
}

body .nse-faq-item{
    border-color:var(--nbc-line)!important;
    background:#fff!important;
}

body .nse-support-button{
    background:linear-gradient(135deg,var(--nbc-blue),var(--nbc-navy))!important;
}

body .nse-support-button span{
    color:var(--nbc-blue)!important;
}

body .nse-footer{
    background:linear-gradient(135deg,#0c2239,var(--nbc-navy) 58%,#17457c)!important;
}

body .nse-footer__logo span{
    background:var(--nbc-orange)!important;
    color:#fff!important;
}

body .nse-footer__col a:hover{
    color:#fff!important;
}

@media(max-width:680px){
    body .nph-header{
        border-bottom-width:1px!important;
    }

    body .nrt-hp-primary,
    body .nrt-hp-product-btn,
    body li.wc-block-product .wc-block-components-product-button__button{
        box-shadow:0 6px 14px rgba(201,79,10,.18)!important;
    }
}


/* ============================================================
   HEADER GÖRSEL İYİLEŞTİRME (Faz 4 - adım 2)
   Kaynak: nirutec-pro-header eklentisi.
   ÖNEMLİ: Bu eklentinin dil yakalama (capture_language, determine_locale)
   fonksiyonlarına DOKUNULMADI. Sadece render ettiği HTML'in üzerine
   CSS ile görsel iyileştirme yapılıyor. Eklenti aktif ve fonksiyonel
   kalmaya devam ediyor.
   ============================================================ */

/* Üst çizgi (topline) ve header alt çizgisi - sabit renkler yerine
   marka paletiyle birebir uyumlu hale getirildi. */
.nph-topline {
	background: linear-gradient(90deg, var(--nbc-navy) 0%, var(--nbc-navy-2) 100%) !important;
}

.nph-header {
	border-bottom: 3px solid var(--nbc-navy) !important;
}

/* Menü linklerine yumuşak geçiş - daha "premium" his */
.nph-menu a,
.nph-menu button,
.nph-cat-open-btn,
.nph-favorites,
.nph-cart,
.nph-account {
	transition: color 0.15s ease, background-color 0.15s ease, transform 0.15s ease;
}

.nph-menu a:hover,
.nph-menu button:hover {
	color: var(--nbc-blue) !important;
}

/* Favoriler / sepet ikonlarına hafif hover büyütme efekti */
.nph-favorites:hover,
.nph-cart:hover {
	transform: translateY(-1px);
	border-color: var(--nbc-blue) !important;
}

/* Mega menü kartlarına marka gölgesi ve daha yumuşak köşeler */
.nph-mega-panel {
	border-radius: 16px;
	box-shadow: var(--nbc-shadow);
}

.nph-cat-title small {
	background: var(--nbc-blue-soft) !important;
	color: var(--nbc-blue) !important;
}

.nph-cat-children a {
	transition: background-color 0.15s ease;
}

.nph-cat-children a:hover {
	background: var(--nbc-blue-soft) !important;
	color: var(--nbc-navy) !important;
}

/* Sepet rozeti (badge) marka turuncusuyla daha dikkat çekici */
.nph-cart em {
	background: var(--nbc-orange) !important;
}

/* ============================================================
   MEGA MENÜ GERÇEK İYİLEŞTİRME (Faz 4 - adım 2, yapısal)
   20+ kategoriyi daha kullanışlı sunmak için: popüler kategoriler
   öne çıkarılıyor, hızlı erişim şeridi ekleniyor, kartlar popülerliğe
   göre görsel olarak sıralanıyor. Karşılık gelen JS: js/mega-menu-enhance.js
   Eklentinin PHP'sine ve arama/filtre mantığına dokunulmadı.
   ============================================================ */

/* Hızlı erişim şeridi (popüler kategoriler) */
.nph-quick-cats {
	display: flex;
	align-items: center;
	gap: 8px;
	flex-wrap: wrap;
	padding: 14px 24px 0;
	margin-bottom: -4px;
}

.nph-quick-cats__label {
	font-size: 12px;
	font-weight: 900;
	color: var(--nbc-muted);
	margin-right: 2px;
	flex: 0 0 auto;
}

.nph-quick-cats__pill {
	border: 1px solid var(--nbc-line);
	background: #fff;
	color: var(--nbc-navy);
	border-radius: 999px;
	padding: 7px 14px;
	font-size: 12.5px;
	font-weight: 800;
	cursor: pointer;
	transition: all 0.15s ease;
	white-space: nowrap;
}

.nph-quick-cats__pill:hover {
	background: var(--nbc-blue);
	border-color: var(--nbc-blue);
	color: #fff;
	transform: translateY(-1px);
}

/* Öne çıkan (popüler) kategori kartları */
.nph-cat-card--featured {
	border: 1.5px solid var(--nbc-blue) !important;
	background: linear-gradient(180deg, var(--nbc-blue-soft) 0%, #fff 90px) !important;
	position: relative;
}

.nph-cat-card--featured::before {
	content: "★";
	position: absolute;
	top: 12px;
	right: 14px;
	color: var(--nbc-amber);
	font-size: 13px;
}

.nph-cat-card--featured .nph-cat-title small {
	background: var(--nbc-blue) !important;
	color: #fff !important;
}

/* Bir kategoriye hızlı eriştikten sonra kısa bir "işte burada" vurgusu */
@keyframes nph-cat-pulse {
	0% {
		box-shadow: 0 0 0 0 rgba(11, 91, 211, 0.35);
	}
	100% {
		box-shadow: 0 0 0 10px rgba(11, 91, 211, 0);
	}
}

.nph-cat-card--pulse {
	animation: nph-cat-pulse 0.9s ease-out;
}

/* Mobilde (aynı mega menü tam ekran açılıyor) hızlı erişim şeridinin
   boşlukları, eklentinin kendi mobil padding değerleriyle (18px)
   tutarlı olsun diye küçültülüyor. */
@media (max-width: 680px) {
	.nph-quick-cats {
		padding: 12px 18px 0;
		gap: 6px;
	}

	.nph-quick-cats__pill {
		padding: 6px 12px;
		font-size: 12px;
	}
}

/* Gruplanmış kategori kartları - başlığı tıklanamaz (tek bir hedef sayfa
   yok, gruba giren kategoriler ayrı ayrı listeleniyor) */
.nph-cat-card--group .nph-cat-title {
	cursor: default;
}

.nph-cat-card__group-tag {
	display: inline-block;
	font-style: normal;
	font-size: 10px;
	font-weight: 800;
	color: var(--nbc-muted);
	background: #eef1f6;
	border-radius: 999px;
	padding: 2px 7px;
	margin-left: 4px;
	vertical-align: middle;
}

/* Kategori ikon rozeti - tanınabilirliği artıran görsel işaret */
.nph-cat-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 26px;
	height: 26px;
	border-radius: 9px;
	background: var(--nbc-blue-soft);
	font-style: normal;
	font-size: 14px;
	margin-right: 8px;
	flex: 0 0 auto;
	vertical-align: middle;
}

.nph-cat-card--featured .nph-cat-icon {
	background: #fff;
}

/* ============================================================
   ÜRÜN KARTI GERÇEK İYİLEŞTİRME (Faz 4 - adım 3)
   Kaynak: nirutec-shop-premium eklentisi zaten sağlam bir temel
   kuruyor (responsive kolonlar, eşit görsel yükseklik, hizalama).
   Bu eklentiye dokunulmadı - üzerine sadece "premium his" veren
   yeni özellikler eklendi (eklentinin ayarlamadığı özellikler,
   çakışma riski yok): hover kaldırma efekti, görsel yakınlaştırma,
   başlık satır sınırlama, indirim yüzdesi rozeti (JS ile).
   ============================================================ */

/* Kart hover: hafif kaldırma + gölge artırma */
li.wc-block-product,
ul.products li.product {
	transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease !important;
}

li.wc-block-product:hover,
ul.products li.product:hover {
	transform: translateY(-4px) !important;
	box-shadow: var(--nbc-shadow) !important;
	border-color: rgba(11, 91, 211, 0.28) !important;
}

/* Ürün görseli: hover'da hafif yakınlaştırma (zoom) */
li.wc-block-product .wc-block-components-product-image,
ul.products li.product .woocommerce-loop-product__link {
	overflow: hidden;
	display: block;
}

li.wc-block-product .wc-block-components-product-image img,
ul.products li.product img {
	transition: transform 0.35s ease;
}

li.wc-block-product:hover .wc-block-components-product-image img,
ul.products li.product:hover img {
	transform: scale(1.06);
}

/* Ürün başlığı: uzun başlıklarda tutarlı 2 satır sınırı, kartların
   eşit yükseklikte ve düzenli görünmesi için */
.wc-block-components-product-name,
ul.products li.product .woocommerce-loop-product__title {
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-overflow: ellipsis;
	min-height: 2.6em;
	line-height: 1.3;
}

/* İndirim yüzdesi rozeti (JS ile hesaplanıp eklenir) */
.nrt-discount-badge {
	position: absolute;
	top: 10px;
	left: 10px;
	background: var(--nbc-red);
	color: #fff;
	font-size: 11px;
	font-weight: 900;
	border-radius: 8px;
	padding: 4px 8px;
	z-index: 2;
	box-shadow: 0 4px 10px rgba(196, 60, 60, 0.28);
}

li.wc-block-product,
ul.products li.product {
	position: relative;
}

/* ============================================================
   ANA SAYFA GERÇEK İYİLEŞTİRME (Faz 4 - adım 4)
   Kaynak: nirutec-homepage-ui eklentisi zaten profesyonel bir
   vitrin kuruyor (hero, kategori kartları, ürün ızgarası, kargo
   bandı). Eklentiye dokunulmadı - üzerine hareket/canlılık katan
   yeni özellikler eklendi: kaydırınca beliren bölümler, hero'da
   yumuşak ışık hareketi, vitrin kutularında parlama efekti.
   ============================================================ */

/* Kicker rozetindeki nokta: hafif nabız efekti */
.nrt-hp-kicker i {
	animation: nrt-pulse-dot 2.2s ease-in-out infinite;
}

@keyframes nrt-pulse-dot {
	0%, 100% {
		box-shadow: 0 0 0 4px rgba(255, 140, 58, 0.12);
	}
	50% {
		box-shadow: 0 0 0 7px rgba(255, 140, 58, 0.05);
	}
}

/* Hero: arka planda yavaşça dönen yumuşak ışık (dikkat çekmeden canlılık) */
.nrt-hp-hero {
	position: relative;
}

.nrt-hp-hero::before {
	content: "";
	position: absolute;
	inset: -40%;
	background: conic-gradient(from 0deg, rgba(255, 178, 67, 0.10), transparent 25%, transparent 75%, rgba(21, 87, 216, 0.08));
	animation: nrt-hero-glow-rotate 18s linear infinite;
	pointer-events: none;
	z-index: 0;
}

.nrt-hp-hero-copy,
.nrt-hp-showcase {
	position: relative;
	z-index: 1;
}

@keyframes nrt-hero-glow-rotate {
	to {
		transform: rotate(360deg);
	}
}

@media (prefers-reduced-motion: reduce) {
	.nrt-hp-kicker i,
	.nrt-hp-hero::before {
		animation: none;
	}
}

/* Vitrin kutuları (showcase): hover'da hafif parlama sweep */
.nrt-hp-showcase-main,
.nrt-hp-showcase-grid a {
	position: relative;
	overflow: hidden;
}

.nrt-hp-showcase-main::after,
.nrt-hp-showcase-grid a::after {
	content: "";
	position: absolute;
	top: 0;
	left: -60%;
	width: 40%;
	height: 100%;
	background: linear-gradient(115deg, transparent, rgba(255, 255, 255, 0.16), transparent);
	transform: skewX(-18deg);
	transition: left 0.55s ease;
	pointer-events: none;
}

.nrt-hp-showcase-main:hover::after,
.nrt-hp-showcase-grid a:hover::after {
	left: 130%;
}

/* Kaydırınca beliren bölümler - sadece JS varsa uygulanır (nrt-reveal
   sınıfı JS tarafından eklenir), JS kapalıysa içerik zaten tam görünür */
.nrt-reveal {
	opacity: 0;
	transform: translateY(22px);
	transition: opacity 0.6s ease, transform 0.6s ease;
}

.nrt-reveal.nrt-reveal-visible {
	opacity: 1;
	transform: translateY(0);
}

/* ============================================================
   GENEL TİPOGRAFİ VE BOŞLUK SİSTEMİ (Faz 4 - adım 5)
   Buraya kadarki çalışma vitrin/mağaza sayfalarına özeldi. Bu bölüm
   ise sitenin geri kalanına (blog yazıları, sayfalar, ürün açıklama
   metni, WooCommerce hesap/sepet sayfaları) tutarlı bir okunabilirlik
   ritmi kazandırır: başlık-paragraf boşlukları, liste/alıntı stili,
   bağlantı geçişleri. theme.json'daki font/spacing ölçeğiyle uyumludur.
   ============================================================ */

:root {
	--nrt-space-xs: 0.5rem;
	--nrt-space-sm: 1rem;
	--nrt-space-md: 1.5rem;
	--nrt-space-lg: 2.5rem;
	--nrt-space-xl: 4rem;
}

.entry-content,
.woocommerce-Tabs-panel,
.woocommerce-product-details__short-description,
.wp-block-post-content {
	font-size: 1rem;
	line-height: 1.7;
	color: var(--nbc-text);
}

.entry-content > *,
.woocommerce-Tabs-panel > *,
.wp-block-post-content > * {
	margin-top: 0;
	margin-bottom: var(--nrt-space-sm);
}

.entry-content h1,
.entry-content h2,
.entry-content h3,
.entry-content h4,
.woocommerce-Tabs-panel h1,
.woocommerce-Tabs-panel h2,
.woocommerce-Tabs-panel h3,
.wp-block-post-content h1,
.wp-block-post-content h2,
.wp-block-post-content h3 {
	margin-top: var(--nrt-space-lg);
	margin-bottom: var(--nrt-space-xs);
	line-height: 1.25;
	font-weight: 800;
	letter-spacing: -0.02em;
	color: var(--nbc-navy);
}

.entry-content h1:first-child,
.entry-content h2:first-child,
.entry-content h3:first-child,
.wp-block-post-content h1:first-child,
.wp-block-post-content h2:first-child,
.wp-block-post-content h3:first-child {
	margin-top: 0;
}

.entry-content p,
.wp-block-post-content p {
	margin-bottom: var(--nrt-space-sm);
}

.entry-content ul,
.entry-content ol,
.wp-block-post-content ul,
.wp-block-post-content ol {
	margin: 0 0 var(--nrt-space-sm);
	padding-left: 1.4em;
	line-height: 1.7;
}

.entry-content li,
.wp-block-post-content li {
	margin-bottom: 0.35em;
}

.entry-content blockquote,
.wp-block-post-content blockquote {
	margin: var(--nrt-space-md) 0;
	padding: var(--nrt-space-sm) var(--nrt-space-md);
	border-left: 3px solid var(--nbc-blue);
	background: var(--nbc-surface);
	border-radius: 0 10px 10px 0;
	font-style: italic;
	color: var(--nbc-muted);
}

.entry-content a:not(.button):not(.nrt-hp-primary):not(.nrt-hp-secondary),
.wp-block-post-content a:not(.button) {
	color: var(--nbc-blue);
	text-decoration: underline;
	text-decoration-color: rgba(11, 91, 211, 0.35);
	text-underline-offset: 3px;
	transition: color 0.15s ease, text-decoration-color 0.15s ease;
}

.entry-content a:not(.button):not(.nrt-hp-primary):not(.nrt-hp-secondary):hover,
.wp-block-post-content a:not(.button):hover {
	color: var(--nbc-blue-hover);
	text-decoration-color: var(--nbc-blue-hover);
}

.entry-content table,
.wp-block-post-content table {
	width: 100%;
	border-collapse: collapse;
	margin: var(--nrt-space-md) 0;
	font-size: 0.9375rem;
}

.entry-content table th,
.entry-content table td,
.wp-block-post-content table th,
.wp-block-post-content table td {
	padding: 0.6em 0.9em;
	border: 1px solid rgba(16, 42, 67, 0.10);
	text-align: left;
}

.entry-content table th,
.wp-block-post-content table th {
	background: var(--nbc-surface);
	color: var(--nbc-navy);
	font-weight: 800;
}

/* Sayfa/gönderi başlığı ile içerik arasında tutarlı boşluk */
.entry-title,
.wp-block-post-title {
	margin-bottom: var(--nrt-space-md);
	line-height: 1.2;
	letter-spacing: -0.02em;
	font-weight: 850;
	color: var(--nbc-navy);
}

/* ============================================================
   CHECKOUT ONAY KUTUCUKLARI - GÖRSEL NETLİK (Faz 6)
   Kaynak: nirutec-legal-compliance eklentisi aydınlatma/açık rıza
   ayrımını KODDA zaten doğru yapıyor (KVKK sadece link, sözleşme
   onayları ayrı zorunlu checkbox, pazarlama izni ayrı isteğe bağlı
   checkbox). Eklentiye dokunulmadı - sadece bu doğru yapı görsel
   olarak da net görünsün diye üç öğe birbirinden ayrıştırıldı:
   zorunlu olanlar belirgin "Zorunlu" rozetiyle, isteğe bağlı olan
   farklı (kesikli/soluk) bir görünümle işaretlendi.
   ============================================================ */

.ncl-checkout-box {
	display: flex;
	flex-direction: column;
	gap: 10px;
	background: transparent;
	border: none;
	padding: 0;
}

.ncl-checkout-box p {
	margin: 0;
	padding: 12px 14px;
	border-radius: 12px;
	position: relative;
}

/* Zorunlu sözleşme onayları (Ön Bilgilendirme + Mesafeli Satış) */
.ncl-checkout-box p:has(#ncl_preinfo_accept),
.ncl-checkout-box p:has(#ncl_distance_accept) {
	background: var(--nbc-surface);
	border: 1px solid rgba(11, 91, 211, 0.18);
	border-left: 3px solid var(--nbc-blue);
}

.ncl-checkout-box p:has(#ncl_preinfo_accept) label,
.ncl-checkout-box p:has(#ncl_distance_accept) label {
	display: flex;
	align-items: flex-start;
	gap: 9px;
}

.ncl-checkout-box p:has(#ncl_preinfo_accept) abbr.required,
.ncl-checkout-box p:has(#ncl_distance_accept) abbr.required {
	order: 3;
	margin-left: auto;
	text-decoration: none;
	color: #fff;
	background: var(--nbc-blue);
	font-size: 10px;
	font-weight: 900;
	font-style: normal;
	border-radius: 999px;
	padding: 2px 8px;
	white-space: nowrap;
}

.ncl-checkout-box p:has(#ncl_preinfo_accept) abbr.required::after,
.ncl-checkout-box p:has(#ncl_distance_accept) abbr.required::after {
	content: "Zorunlu";
}

/* İsteğe bağlı pazarlama izni: bilinçli olarak farklı/daha soluk stil */
.ncl-checkout-box p:has(input[name="ncl_marketing_accept"]) {
	background: #fff;
	border: 1px dashed rgba(100, 116, 139, 0.35);
}

.ncl-checkout-box p:has(input[name="ncl_marketing_accept"]) span {
	color: var(--nbc-muted);
}

/* KVKK/İade bilgilendirme linkleri: onay değil, sadece bilgi olduğu
   görsel olarak da anlaşılsın diye ayrı, sade bir satır */
.ncl-checkout-box p.form-row {
	padding: 8px 14px 0;
	background: transparent;
	border: none;
	font-size: 12px;
}

/* WooCommerce Blocks checkout (Ekstra Bilgiler bloğu) içindeki
   hukuki link kutusu ve checkbox alanları için tutarlı görünüm */
.ncl-block-legal-links {
	border-left: 3px solid var(--nbc-blue) !important;
	background: var(--nbc-surface) !important;
}

.wc-block-checkout__additional-fields .wc-block-components-checkbox {
	padding: 10px 12px;
	border-radius: 10px;
	margin-bottom: 8px;
	background: var(--nbc-surface);
}

/* ============================================================
   ÖDEME (CHECKOUT) SAYFASI - TAM CSS TAŞIMA (Faz 4 - ertelenen)
   Kaynak: nirutec-checkout-premium eklentisi (v1.1.0), birebir
   taşındı. Bu eklenti SADECE CSS+küçük bir DOM-düzenleme JS'iydi,
   kendi HTML markup'ını üretmiyordu (native WooCommerce Checkout
   Block/klasik checkout üzerine stil basıyordu) - bu yüzden brand-
   colors gibi TAM olarak taşınabildi. "nirutec-checkout-premium-
   active" body sınıfı artık bu child theme'in functions.php'i
   tarafından ekleniyor (aynı mantık: sadece checkout sayfasında).
   Bu bölüm taşındıktan sonra nirutec-checkout-premium eklentisi
   GÜVENLE DEVRE DIŞI BIRAKILABİLİR.
   ============================================================ */

body.nirutec-checkout-premium-active {
    --ncp-navy: #102a4c;
    --ncp-blue: #1f5fbf;
    --ncp-orange: #cf4e08;
    --ncp-orange-dark: #a83e05;
    --ncp-ink: #15243a;
    --ncp-muted: #66758a;
    --ncp-line: #dbe4ef;
    --ncp-soft: #f4f7fb;
    --ncp-card: #ffffff;
    background:
        radial-gradient(circle at 50% 0%, rgba(31, 95, 191, 0.045), transparent 34rem),
        var(--ncp-soft);
    color: var(--ncp-ink);
}

body.nirutec-checkout-premium-active .wp-block-woocommerce-checkout {
    box-sizing: border-box;
    width: min(100%, 1220px);
    max-width: 1220px;
    margin: 28px auto 64px;
    padding: 0 20px;
}

body.nirutec-checkout-premium-active .wp-block-woocommerce-checkout *,
body.nirutec-checkout-premium-active .woocommerce-checkout * {
    box-sizing: border-box;
}

/* WooCommerce Checkout Block: ana iki kolon. */
body.nirutec-checkout-premium-active .wc-block-components-sidebar-layout.wc-block-checkout {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 370px;
    gap: 24px;
    align-items: start;
    width: 100%;
}

body.nirutec-checkout-premium-active .wc-block-checkout > div:empty {
    display: none;
}

body.nirutec-checkout-premium-active .wc-block-checkout__main {
    grid-column: 1;
    width: auto !important;
    padding-right: 0 !important;
}

body.nirutec-checkout-premium-active .wc-block-checkout__sidebar {
    grid-column: 2;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid #d3deeb;
    border-top: 4px solid var(--ncp-navy);
    border-radius: 18px;
    background: var(--ncp-card);
    box-shadow: 0 18px 44px rgba(16, 42, 76, 0.1);
    overflow: hidden;
}

body.nirutec-checkout-premium-active .wc-block-checkout__sidebar.is-sticky {
    top: 112px;
}

body.nirutec-checkout-premium-active .wp-block-woocommerce-checkout-order-summary-block {
    padding: 20px;
}

body.nirutec-checkout-premium-active .wc-block-components-checkout-order-summary__title {
    margin: 0;
    padding: 0 0 14px;
    border-bottom: 1px solid var(--ncp-line);
    color: var(--ncp-navy);
    font-size: 19px;
    font-weight: 800;
    letter-spacing: -0.01em;
}

body.nirutec-checkout-premium-active .wc-block-components-checkout-order-summary__content {
    padding-top: 6px;
}

body.nirutec-checkout-premium-active .wc-block-components-order-summary-item {
    padding: 14px 0;
    border-bottom-color: var(--ncp-line);
}

body.nirutec-checkout-premium-active .wc-block-components-order-summary-item__description {
    min-width: 0;
}

body.nirutec-checkout-premium-active .wc-block-components-order-summary-item__description .wc-block-components-product-name {
    color: var(--ncp-navy);
    font-size: 13px;
    line-height: 1.35;
    font-weight: 750;
}

body.nirutec-checkout-premium-active .wc-block-components-product-metadata,
body.nirutec-checkout-premium-active .wc-block-components-product-metadata__description {
    color: var(--ncp-muted);
    font-size: 11.5px;
    line-height: 1.45;
}

body.nirutec-checkout-premium-active .wc-block-components-order-summary-item__total-price {
    padding-left: 8px;
    color: var(--ncp-navy);
    font-size: 13px;
    font-weight: 750;
    white-space: nowrap;
}

body.nirutec-checkout-premium-active .wc-block-components-order-summary-item__image > img {
    border: 1px solid var(--ncp-line);
    border-radius: 10px;
    background: #fff;
}

body.nirutec-checkout-premium-active .wc-block-components-order-summary-item__description,
body.nirutec-checkout-premium-active .wc-block-components-order-summary-item__total-price {
    color: var(--ncp-ink);
}

body.nirutec-checkout-premium-active .wc-block-components-totals-item {
    padding: 10px 0;
}

body.nirutec-checkout-premium-active .wc-block-components-totals-footer-item {
    margin-top: 4px;
    padding-top: 16px;
    border-top: 1px solid var(--ncp-line);
    color: var(--ncp-navy);
    font-size: 18px;
    font-weight: 800;
}

body.nirutec-checkout-premium-active .wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
    color: var(--ncp-orange);
}

/* Her işlem adımı ayrı, sakin bir karttır. */
body.nirutec-checkout-premium-active .wc-block-components-checkout-step {
    margin: 0 0 14px !important;
    padding: 20px 22px !important;
    border: 1px solid #d7e1ed !important;
    border-radius: 16px;
    background: var(--ncp-card);
    box-shadow: 0 10px 28px rgba(16, 42, 76, 0.052);
}

body.nirutec-checkout-premium-active .ncp-steps-ready {
    counter-reset: ncp-checkout-step;
}

body.nirutec-checkout-premium-active .wc-block-components-checkout-step__heading-container {
    display: flex !important;
    align-items: center;
    gap: 10px;
    margin: 0 0 14px !important;
}

body.nirutec-checkout-premium-active .ncp-steps-ready .wc-block-components-checkout-step__heading-container::before {
    display: inline-flex;
    flex: 0 0 28px;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border: 1px solid #ccdaeb;
    border-radius: 9px;
    background: #eef4fc;
    color: var(--ncp-blue);
    content: counter(ncp-checkout-step, decimal-leading-zero);
    counter-increment: ncp-checkout-step;
    font-size: 10px;
    line-height: 1;
    font-weight: 800;
}

body.nirutec-checkout-premium-active .wc-block-components-checkout-step__heading-container > div {
    min-width: 0;
}

body.nirutec-checkout-premium-active .wc-block-components-checkout-step__title {
    margin: 0 !important;
    color: var(--ncp-navy);
    font-size: 18px !important;
    line-height: 1.3;
    font-weight: 800;
    letter-spacing: -0.01em;
}

body.nirutec-checkout-premium-active .wc-block-components-checkout-step__description,
body.nirutec-checkout-premium-active .wc-block-components-checkout-step__content > p {
    color: var(--ncp-muted);
    font-size: 13px;
    line-height: 1.55;
}

body.nirutec-checkout-premium-active .wc-block-components-checkout-step__content {
    padding: 0 !important;
}

/* Form alanları. */
body.nirutec-checkout-premium-active .wc-block-components-text-input,
body.nirutec-checkout-premium-active .wc-blocks-components-select,
body.nirutec-checkout-premium-active .wc-block-components-combobox {
    margin-top: 0 !important;
}

body.nirutec-checkout-premium-active .wc-block-components-text-input input,
body.nirutec-checkout-premium-active .wc-block-components-textarea,
body.nirutec-checkout-premium-active .wc-blocks-components-select__select,
body.nirutec-checkout-premium-active .wc-block-components-combobox .components-combobox-control__input,
body.nirutec-checkout-premium-active .woocommerce form .form-row input.input-text,
body.nirutec-checkout-premium-active .woocommerce form .form-row textarea,
body.nirutec-checkout-premium-active .woocommerce form .form-row select {
    min-height: 48px;
    border: 1px solid #cbd7e5 !important;
    border-radius: 10px !important;
    background: #fff !important;
    color: var(--ncp-ink) !important;
    font-size: 14px !important;
    box-shadow: none !important;
    outline: none;
    transition: border-color 0.18s ease, box-shadow 0.18s ease;
}

body.nirutec-checkout-premium-active .wc-block-components-text-input input:focus,
body.nirutec-checkout-premium-active .wc-block-components-textarea:focus,
body.nirutec-checkout-premium-active .wc-blocks-components-select__select:focus,
body.nirutec-checkout-premium-active .woocommerce form .form-row input.input-text:focus,
body.nirutec-checkout-premium-active .woocommerce form .form-row textarea:focus,
body.nirutec-checkout-premium-active .woocommerce form .form-row select:focus {
    border-color: var(--ncp-blue) !important;
    box-shadow: 0 0 0 3px rgba(31, 95, 191, 0.12) !important;
}

body.nirutec-checkout-premium-active .wc-block-components-text-input label,
body.nirutec-checkout-premium-active .wc-blocks-components-select__label {
    color: var(--ncp-muted) !important;
    font-size: 13px !important;
}

body.nirutec-checkout-premium-active .wc-block-components-address-form {
    gap: 12px 10px;
}

body.nirutec-checkout-premium-active .wc-block-components-checkbox {
    margin: 10px 0;
    color: var(--ncp-ink);
    font-size: 13px;
    line-height: 1.5;
}

body.nirutec-checkout-premium-active .wc-block-components-checkbox__input {
    width: 18px;
    min-width: 18px;
    height: 18px;
    border-color: #aebfd2;
    border-radius: 5px;
}

body.nirutec-checkout-premium-active .wc-block-components-radio-control__option {
    position: relative;
    margin: 0 0 8px;
    min-height: 50px;
    padding: 14px 14px 14px 50px !important;
    border: 1px solid var(--ncp-line) !important;
    border-radius: 11px;
    background: #fff;
}

/* Woo'nun mutlak konumlu radio düğmesi metnin üzerine binmesin. */
body.nirutec-checkout-premium-active .wc-block-components-radio-control__option > .wc-block-components-radio-control__input {
    top: 50% !important;
    left: 16px !important;
    margin: 0 !important;
    transform: translateY(-50%);
}

body.nirutec-checkout-premium-active .wc-block-components-radio-control__option-layout,
body.nirutec-checkout-premium-active .wc-block-components-radio-control__label-group {
    width: 100%;
    min-width: 0;
}

body.nirutec-checkout-premium-active .wc-block-components-radio-control__label-group {
    gap: 12px;
}

body.nirutec-checkout-premium-active .wc-block-components-radio-control__label {
    color: var(--ncp-navy);
    font-weight: 750;
}

body.nirutec-checkout-premium-active .wc-block-components-radio-control__secondary-label {
    color: var(--ncp-navy);
    font-weight: 700;
    white-space: nowrap;
}

body.nirutec-checkout-premium-active .wc-block-components-radio-control__option--checked-option-highlighted {
    border-color: rgba(31, 95, 191, 0.55) !important;
    background: #f3f7ff;
    box-shadow: inset 3px 0 0 var(--ncp-blue);
}

/* Hukuk ve fatura alanlarını tek karmaşık blok yerine iki okunaklı gruba ayırır. */
body.nirutec-checkout-premium-active #order-fields {
    background: linear-gradient(180deg, #ffffff 0%, #fbfdff 100%);
}

body.nirutec-checkout-premium-active #order-fields #order {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px 12px;
}

body.nirutec-checkout-premium-active #order-fields #order > .wc-block-components-checkbox,
body.nirutec-checkout-premium-active #order-fields #order > .ncp-section-heading,
body.nirutec-checkout-premium-active #order-fields #order > .wc-block-components-select-input-nirutec-e-belge-invoice-type,
body.nirutec-checkout-premium-active #order-fields #order > .wc-block-components-address-form__nirutec-e-belge-invoice-email {
    grid-column: 1 / -1;
}

body.nirutec-checkout-premium-active .ncp-section-heading {
    margin: 4px 0 0;
    padding: 0 0 9px;
    border-bottom: 1px solid var(--ncp-line);
    color: var(--ncp-navy);
    font-size: 14px;
    line-height: 1.35;
    font-weight: 800;
}

body.nirutec-checkout-premium-active .ncp-section-heading--invoice {
    margin-top: 10px;
}

body.nirutec-checkout-premium-active #order-fields #order > .wc-block-components-checkbox {
    margin: 0;
    padding: 10px 12px;
    border: 1px solid #dce6f1;
    border-radius: 10px;
    background: #fff;
}

body.nirutec-checkout-premium-active #order-fields #order > .wc-block-components-checkbox:has(input:checked) {
    border-color: #bfd3ef;
    background: #f7faff;
}

body.nirutec-checkout-premium-active #order-fields .nclg-open-document {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 34px;
    margin: 8px 0 0 32px;
    padding: 7px 11px;
    border: 1px solid #bfd1eb;
    border-radius: 8px;
    background: #f3f7fd;
    color: var(--ncp-blue);
    font-size: 12px;
    line-height: 1.2;
    font-weight: 800;
    box-shadow: none;
}

body.nirutec-checkout-premium-active #order-fields .nclg-open-document:hover {
    border-color: var(--ncp-blue);
    background: #eaf2fd;
}

body.nirutec-checkout-premium-active #order-fields a,
body.nirutec-checkout-premium-active .wc-block-components-checkout-step a {
    color: var(--ncp-blue);
    font-weight: 700;
    text-underline-offset: 2px;
}

/* Uyarılar ve ödeme butonu. */
body.nirutec-checkout-premium-active .wc-block-components-notice-banner {
    margin: 0 0 14px;
    padding: 12px 14px;
    border-width: 1px;
    border-radius: 11px;
    font-size: 13px;
    line-height: 1.5;
}

body.nirutec-checkout-premium-active .wc-block-components-notice-banner.is-error {
    border-color: #efb7b3;
    background: #fff7f6;
    color: #812d28;
}

body.nirutec-checkout-premium-active .wc-block-components-checkout-place-order-button,
body.nirutec-checkout-premium-active #place_order,
body.nirutec-checkout-premium-active .woocommerce-checkout-payment .button.alt {
    min-height: 52px;
    border: 0 !important;
    border-radius: 11px !important;
    background: var(--ncp-orange) !important;
    color: #fff !important;
    font-size: 15px !important;
    font-weight: 800 !important;
    box-shadow: 0 10px 22px rgba(207, 78, 8, 0.2) !important;
    transition: background-color 0.18s ease, transform 0.18s ease, box-shadow 0.18s ease;
}

body.nirutec-checkout-premium-active .wc-block-components-checkout-place-order-button:hover,
body.nirutec-checkout-premium-active #place_order:hover,
body.nirutec-checkout-premium-active .woocommerce-checkout-payment .button.alt:hover {
    background: var(--ncp-orange-dark) !important;
    transform: translateY(-1px);
    box-shadow: 0 12px 26px rgba(168, 62, 5, 0.24) !important;
}

body.nirutec-checkout-premium-active .wc-block-checkout__actions {
    margin-top: 14px;
    padding: 16px 0 0;
    border-top: 1px solid var(--ncp-line);
}

body.nirutec-checkout-premium-active .wc-block-checkout__terms {
    color: var(--ncp-muted);
    font-size: 12px;
    line-height: 1.55;
}

/* Klasik WooCommerce checkout kullanılırsa aynı görsel dil korunur. */
body.nirutec-checkout-premium-active form.woocommerce-checkout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 370px;
    gap: 24px;
    max-width: 1180px;
    margin: 28px auto 64px;
}

body.nirutec-checkout-premium-active form.woocommerce-checkout #customer_details,
body.nirutec-checkout-premium-active form.woocommerce-checkout #order_review {
    padding: 22px;
    border: 1px solid var(--ncp-line);
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 8px 24px rgba(16, 42, 76, 0.045);
}

body.nirutec-checkout-premium-active form.woocommerce-checkout #order_review_heading {
    display: none;
}

@media (max-width: 959px) {
    body.nirutec-checkout-premium-active .wp-block-woocommerce-checkout {
        margin-top: 18px;
        padding-inline: 16px;
    }

    body.nirutec-checkout-premium-active .wc-block-components-sidebar-layout.wc-block-checkout,
    body.nirutec-checkout-premium-active form.woocommerce-checkout {
        display: block !important;
    }

    body.nirutec-checkout-premium-active .wc-block-checkout__main,
    body.nirutec-checkout-premium-active .wc-block-checkout__sidebar {
        width: 100% !important;
    }

    body.nirutec-checkout-premium-active .wc-block-checkout__sidebar {
        position: static !important;
        margin-top: 16px !important;
    }
}

@media (max-width: 600px) {
    body.nirutec-checkout-premium-active .wp-block-woocommerce-checkout {
        width: 100%;
        margin: 12px auto 42px;
        padding-inline: 10px;
    }

    body.nirutec-checkout-premium-active .wc-block-components-checkout-step {
        margin-bottom: 10px !important;
        padding: 16px 14px !important;
        border-radius: 13px;
        box-shadow: none;
    }

    body.nirutec-checkout-premium-active .wc-block-components-checkout-step__heading-container {
        margin-bottom: 11px !important;
    }

    body.nirutec-checkout-premium-active .ncp-steps-ready .wc-block-components-checkout-step__heading-container::before {
        flex-basis: 25px;
        width: 25px;
        height: 25px;
        border-radius: 8px;
    }

    body.nirutec-checkout-premium-active .wc-block-components-checkout-step__title {
        font-size: 16px !important;
    }

    body.nirutec-checkout-premium-active .wc-block-components-address-form {
        gap: 9px 8px;
    }

    body.nirutec-checkout-premium-active #order-fields #order {
        display: block;
    }

    body.nirutec-checkout-premium-active .ncp-section-heading {
        margin: 12px 0 9px;
    }

    body.nirutec-checkout-premium-active #order-fields #order > .wc-block-components-checkbox {
        margin-bottom: 8px;
        padding: 9px 10px;
    }

    body.nirutec-checkout-premium-active #order-fields .nclg-open-document {
        margin-left: 30px;
    }

    body.nirutec-checkout-premium-active .wp-block-woocommerce-checkout-order-summary-block {
        padding: 16px 14px;
    }

    body.nirutec-checkout-premium-active .wc-block-checkout__sidebar {
        border-radius: 13px;
        box-shadow: none;
    }

    body.nirutec-checkout-premium-active .wc-block-components-checkout-place-order-button,
    body.nirutec-checkout-premium-active #place_order {
        min-height: 50px;
    }
}

@media (prefers-reduced-motion: reduce) {
    body.nirutec-checkout-premium-active *,
    body.nirutec-checkout-premium-active *::before,
    body.nirutec-checkout-premium-active *::after {
        scroll-behavior: auto !important;
        transition: none !important;
    }
}

/* ============================================================
   STORE ESSENTIALS - GÖRSEL CİLA (Faz 4 - ertelenen, gerçek işlev
   içerdiği için eklenti aktif bırakıldı, sadece üzerine cila eklendi)
   Kaynak: nirutec-store-essentials (teslimat bilgisi, sepet hedef
   çubuğu, destek butonu, footer, ürün SSS). Renkleri zaten daha önce
   brand-colors migration'ında taşınmıştı - burada sadece hareket/
   etkileşim (animasyon, hover, geçiş) katmanı eklendi.
   ============================================================ */

/* Sepet kargo hedefi çubuğu: yumuşak dolma animasyonu + hedefe
   ulaşınca hafif parlama */
.nse-cart-goal__bar span {
	transition: width 0.6s ease;
	position: relative;
	overflow: hidden;
}

.nse-cart-goal__bar span::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.35), transparent);
	transform: translateX(-100%);
	animation: nse-bar-shimmer 2.2s ease-in-out infinite;
}

@keyframes nse-bar-shimmer {
	to {
		transform: translateX(100%);
	}
}

/* Teslimat bildirimi (ürün sayfası + checkout): hover'da hafif belirginleşme */
.nse-delivery-notice {
	transition: box-shadow 0.18s ease, border-color 0.18s ease;
}

.nse-delivery-notice a {
	transition: color 0.15s ease;
}

/* Destek butonu (sabit konumlu): hover kaldırma + yumuşak nabız halkası */
.nse-support-button {
	transition: transform 0.18s ease, box-shadow 0.18s ease;
	position: relative;
}

.nse-support-button:hover {
	transform: translateY(-3px) scale(1.03);
}

.nse-support-button::before {
	content: "";
	position: absolute;
	inset: -6px;
	border-radius: inherit;
	border: 2px solid rgba(11, 91, 211, 0.25);
	animation: nse-support-pulse 2.6s ease-out infinite;
	pointer-events: none;
}

@keyframes nse-support-pulse {
	0% {
		opacity: 0.7;
		transform: scale(0.94);
	}
	70%, 100% {
		opacity: 0;
		transform: scale(1.12);
	}
}

/* Ürün SSS akordeonu: ikon döndürme + yumuşak açılış */
.nse-faq-item summary {
	cursor: pointer;
	position: relative;
	transition: color 0.15s ease;
}

.nse-faq-item summary::after {
	content: "+";
	position: absolute;
	right: 4px;
	top: 0;
	font-size: 18px;
	font-weight: 700;
	color: var(--nbc-blue);
	transition: transform 0.25s ease;
}

.nse-faq-item[open] summary::after {
	transform: rotate(45deg);
}

.nse-faq-item summary:hover {
	color: var(--nbc-blue);
}

.nse-faq-item span {
	display: block;
	animation: nse-faq-open 0.25s ease;
}

@keyframes nse-faq-open {
	from {
		opacity: 0;
		transform: translateY(-4px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

/* Footer güven rozetleri (badges): pill görünüm ve hafif hover */
.nse-footer__badges span {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 5px 12px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.08);
	border: 1px solid rgba(255, 255, 255, 0.14);
	font-size: 11px;
	font-weight: 700;
	transition: background 0.15s ease, border-color 0.15s ease;
}

.nse-footer__badges span:hover {
	background: rgba(255, 255, 255, 0.14);
	border-color: rgba(255, 255, 255, 0.24);
}

.nse-footer__badges {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 10px;
}

@media (prefers-reduced-motion: reduce) {
	.nse-cart-goal__bar span::after,
	.nse-support-button::before,
	.nse-faq-item span {
		animation: none;
	}
}

/* ============================================================
   PRO HEADER - EK GÖRSEL CİLA (Faz 4 - ertelenen, dil yakalama
   mantığı içerdiği için eklenti aktif bırakıldı)
   v1.2.0'da temel cila (kenarlık/hover/mega panel gölgesi) zaten
   eklenmişti. Burada iki ek dokunuş var: kaydırınca header'a gölge
   binmesi (js ile eklenen .nph-scrolled sınıfı üzerinden) ve logoda
   hafif hover büyümesi.
   ============================================================ */

.nph-header {
	transition: box-shadow 0.25s ease;
}

body.nph-scrolled .nph-header {
	box-shadow: 0 8px 24px rgba(16, 42, 67, 0.12);
}

.nph-brand {
	display: inline-flex;
	transition: transform 0.18s ease;
}

.nph-brand:hover {
	transform: scale(1.035);
}

/* ============================================================
   HEADER - TAM TAŞIMA (nirutec-pro-header eklentisinden, v2.0.0
   küçültmesiyle birlikte). Bu, eklentinin CSS çıktısının BİREBİR
   kopyasıdır (header üst şerit, ana header, arama, mega menü,
   mobil alt menü). Eklenti artık sadece dil algılama çekirdeği;
   HTML üretimi inc/header-render.php'de, bu CSS de burada.
   ============================================================ */

:root{
  --nph-navy:#0f244a;
  --nph-blue:#1456d9;
  --nph-text:#14213d;
  --nph-muted:#667085;
  --nph-line:rgba(20,33,61,.12);
}
body.nirutec-pro-header-active header.site-header,
body.nirutec-pro-header-active .site-header,
body.nirutec-pro-header-active #masthead,
body.nirutec-pro-header-active .storefront-primary-navigation,
body.nirutec-pro-header-active .main-navigation,
body.nirutec-pro-header-active .wp-site-blocks > header{display:none!important}
.nph-wrap{width:min(1480px,calc(100% - 40px));margin:0 auto}
.nph-topline{background:linear-gradient(90deg,#0f244a,#123a8c);color:#fff;font-size:12px;font-weight:750}
.nph-topline .nph-wrap{min-height:28px;display:flex;align-items:center;justify-content:center;gap:20px}
.nph-header{position:sticky;top:0;z-index:999;background:rgba(255,255,255,.96);backdrop-filter:blur(16px);border-bottom:4px solid #123a8c;box-shadow:0 12px 30px rgba(15,23,42,.08)}
.nph-main{min-height:92px;display:grid;grid-template-columns:auto max-content minmax(250px,1fr) auto;gap:18px;align-items:center}
.nph-brand{color:var(--nph-navy)!important;text-decoration:none!important;font-size:30px;font-weight:950;letter-spacing:-.055em}
.nph-menu{min-width:max-content;display:flex;align-items:center;gap:20px;overflow:visible;white-space:nowrap}
.nph-menu a,.nph-menu button{border:0!important;background:transparent!important;color:var(--nph-text)!important;text-decoration:none!important;font-size:15px;font-weight:800!important;padding:0!important;cursor:pointer}
.nph-menu a:hover,.nph-menu button:hover,.nph-cat-open-btn{color:var(--nph-blue)!important}
.nph-search{justify-self:end;width:min(390px,100%);height:48px;border:1px solid var(--nph-line);border-radius:999px;display:flex;align-items:center;gap:9px;padding:0 18px;background:#fff;box-shadow:0 8px 20px rgba(15,23,42,.04)}
.nph-search-icon{color:#7a8aa0;font-size:22px;line-height:1}
.nph-search input{width:100%;border:0!important;background:transparent!important;box-shadow:none!important;outline:0!important;color:var(--nph-text);font-size:14px;padding:0!important}
.nph-actions{display:flex;align-items:center;gap:9px;white-space:nowrap}
.nph-actions a{position:relative;color:var(--nph-navy)!important;text-decoration:none!important;line-height:1}
.nph-favorites{width:38px;height:38px;display:flex;align-items:center;justify-content:center;border:1px solid var(--nph-line);border-radius:12px;background:#fff;font-size:22px!important}
.nph-account{min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:0 12px;border:1px solid rgba(20,86,217,.18);border-radius:12px;background:#eef4ff;color:var(--nph-blue)!important}
.nph-account span{font-size:18px}.nph-account b{font-size:12px;font-weight:900}
.nph-language{height:38px;display:inline-flex;align-items:center;gap:4px;padding:0 7px;border:1px solid var(--nph-line);border-radius:12px;background:#fff;color:var(--nph-navy);box-sizing:border-box}
.nph-language>span{font-size:15px;font-weight:900}
.nph-language select{min-width:44px!important;height:32px!important;margin:0!important;padding:0 17px 0 2px!important;border:0!important;background-color:transparent!important;color:var(--nph-navy)!important;box-shadow:none!important;font-size:11px!important;font-weight:950!important;cursor:pointer}
.nph-cart{width:38px;height:38px;display:flex;align-items:center;justify-content:center;font-size:20px!important}
.nph-cart em{position:absolute;top:-10px;right:-12px;min-width:20px;height:20px;border-radius:999px;background:var(--nph-blue);color:#fff;display:flex;align-items:center;justify-content:center;font-style:normal;font-size:11px;font-weight:950}
.nph-mobile-search{display:none}
.nph-mobile-actions{display:none}

.nph-mega,.nph-search-sheet{position:fixed;inset:0;z-index:1002;background:rgba(15,23,42,.52);opacity:0;visibility:hidden;transition:.18s ease}
.nph-mega.is-open,.nph-search-sheet.is-open{opacity:1;visibility:visible}
.nph-mega-panel{position:absolute;top:86px;left:50%;transform:translateX(-50%);width:min(1240px,calc(100% - 40px));max-height:calc(100vh - 116px);overflow:hidden;display:flex;flex-direction:column;background:#fff;border:1px solid var(--nph-line);border-radius:28px;box-shadow:0 26px 70px rgba(15,23,42,.24)}
.nph-mega-head{padding:22px 24px 16px;display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid rgba(20,33,61,.08);background:linear-gradient(135deg,#fff,#f7fbff)}
.nph-mega-head span{display:inline-flex;padding:6px 10px;border-radius:999px;background:#eef4ff;color:var(--nph-blue);font-size:12px;font-weight:900;margin-bottom:9px}
.nph-mega-head strong{display:block;color:var(--nph-text);font-size:28px;line-height:1;letter-spacing:-.04em}
.nph-mega-head p{margin:8px 0 0;color:var(--nph-muted);font-size:14px}
.nph-close{border:0!important;border-radius:999px!important;padding:9px 13px!important;background:#f3f6fb!important;color:var(--nph-text)!important;font-weight:900!important;cursor:pointer}
.nph-mega-tools{padding:16px 24px;display:grid;grid-template-columns:minmax(260px,1fr) auto;gap:14px;align-items:center;border-bottom:1px solid rgba(20,33,61,.08)}
.nph-mega-search{min-height:48px;border:1px solid var(--nph-line);border-radius:16px;background:#fff;display:flex;align-items:center;gap:10px;padding:0 8px 0 14px;box-shadow:0 8px 18px rgba(15,23,42,.04)}
.nph-mega-search span{color:#7a8aa0;font-size:20px}
.nph-mega-search input{flex:1;border:0!important;background:transparent!important;box-shadow:none!important;outline:0!important;color:var(--nph-text);font-size:14px;padding:0!important}
.nph-mega-search button,.nph-all-products{min-height:38px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;text-decoration:none!important;font-weight:900}
.nph-mega-search button{border:0!important;background:var(--nph-blue)!important;color:#fff!important;padding:0 16px!important}
.nph-all-products{background:var(--nph-navy);color:#fff!important;padding:0 18px}
.nph-mega-grid{padding:18px 24px 24px;overflow:auto;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;align-content:start}
.nph-cat-card{display:flex;flex-direction:column;min-height:150px;border:1px solid var(--nph-line);border-radius:20px;background:#fff;box-shadow:0 10px 24px rgba(15,23,42,.055);padding:14px;min-width:0}
.nph-cat-card.is-hidden{display:none!important}
.nph-cat-title{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding-bottom:10px;margin-bottom:10px;border-bottom:1px solid rgba(20,33,61,.08);color:var(--nph-text)!important;text-decoration:none!important}
.nph-cat-title span{font-size:15px;line-height:1.25;font-weight:950;min-width:0;overflow-wrap:anywhere}
.nph-cat-title small{flex:0 0 auto;border-radius:999px;background:#eef4ff;color:var(--nph-blue);padding:5px 8px;font-size:11px;font-weight:900}
.nph-cat-children{display:flex;flex-direction:column;gap:7px;max-height:360px;overflow:auto;padding-right:4px}
.nph-cat-children a{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;color:#43506a!important;text-decoration:none!important;font-size:13px;font-weight:750;line-height:1.28;border-radius:10px;padding:8px 10px;background:#f8fafc;min-width:0}
.nph-cat-children a:hover{background:#eef4ff;color:var(--nph-blue)!important}
.nph-cat-children a span{display:block;min-width:0;flex:1;overflow-wrap:anywhere}
.nph-cat-children a small{flex:0 0 auto;color:#7a8aa0;font-size:11px;font-weight:900;margin-top:1px}
.nph-cat-children a.depth-1 span{padding-left:12px}
.nph-cat-children a.depth-1 span:before{content:'— ';color:#94a3b8}
.nph-cat-children a.depth-2 span{padding-left:24px}
.nph-cat-children a.depth-2 span:before{content:'• ';color:#94a3b8}
.nph-cat-children a.depth-3 span{padding-left:36px}
.nph-cat-children a.depth-3 span:before{content:'◦ ';color:#94a3b8}
.nph-empty{padding:28px}.nph-empty strong{display:block;font-size:20px;color:var(--nph-text)}.nph-empty span{display:block;color:var(--nph-muted);margin-top:6px}
.nph-search-panel{position:absolute;top:18px;left:50%;transform:translateX(-50%);width:min(620px,calc(100% - 28px));background:#fff;border-radius:24px;box-shadow:0 18px 44px rgba(15,23,42,.18);padding:22px}
.nph-search-panel strong{display:block;font-size:24px;letter-spacing:-.03em;margin-bottom:16px;color:var(--nph-text)}
.nph-search-panel form{display:flex;gap:8px;border:1px solid var(--nph-line);background:#f8fafc;border-radius:18px;padding:7px}
.nph-search-panel input{flex:1;border:0!important;background:transparent!important;box-shadow:none!important;min-height:48px;padding:0 12px!important}
.nph-search-panel button[type=submit]{border:0!important;border-radius:14px!important;background:var(--nph-blue)!important;color:#fff!important;font-weight:950!important;padding:0 18px!important}
.nph-mobile-bottom{display:none}

@media(max-width:1100px){
  .nph-main{grid-template-columns:auto 1fr auto;gap:12px;min-height:70px}
  .nph-menu,.nph-search,.nph-actions{display:none!important}
  .nph-brand{font-size:25px}
  .nph-mobile-actions{grid-column:3;justify-self:end;display:flex;align-items:center;gap:6px}
  .nph-mobile-account{width:38px;height:38px;display:flex;align-items:center;justify-content:center;border:1px solid var(--nph-line);border-radius:12px;background:#fff;color:var(--nph-navy)!important;text-decoration:none!important;font-size:18px}
  .nph-language--mobile{height:38px;padding:0 5px}
  .nph-language--mobile>span{display:none}
  .nph-mobile-search{display:inline-flex!important;align-items:center;justify-content:center;height:38px;border:0!important;border-radius:12px!important;background:var(--nph-blue)!important;color:#fff!important;padding:0 12px!important;font-size:11px!important;font-weight:950!important}
  .nph-mega-panel{top:12px;width:calc(100% - 24px);max-height:calc(100vh - 24px);border-radius:22px}
  .nph-mega-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  body.nirutec-pro-header-active{padding-bottom:76px}
  .nph-mobile-bottom{position:fixed;left:10px;right:10px;bottom:10px;z-index:1000;display:grid;grid-template-columns:repeat(5,1fr);gap:3px;background:rgba(255,255,255,.94);border:1px solid rgba(17,24,39,.12);border-radius:22px;padding:7px;box-shadow:0 18px 42px rgba(15,23,42,.22);backdrop-filter:blur(16px)}
  .nph-mobile-bottom a,.nph-mobile-bottom button{border:0!important;background:transparent!important;color:var(--nph-text)!important;text-decoration:none!important;min-height:50px;border-radius:16px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font-weight:900!important;cursor:pointer}
  .nph-mobile-bottom small{font-size:10.5px}
}
@media(max-width:680px){
  .nph-topline .nph-wrap{justify-content:flex-start;gap:16px;overflow-x:auto;white-space:nowrap}
  .nph-mega-head{padding:18px}
  .nph-mega-head strong{font-size:24px}
  .nph-mega-tools{grid-template-columns:1fr;padding:14px 18px}
  .nph-all-products{min-height:42px}
  .nph-mega-grid{grid-template-columns:1fr;padding:14px 18px 18px}
  .nph-cat-children{max-height:unset}
  .nph-search-panel form{display:block}
  .nph-search-panel button[type=submit]{width:100%;min-height:44px;margin-top:8px}
  .nph-wrap{width:calc(100% - 24px)}
  .nph-main{gap:7px}
  .nph-mobile-actions{gap:4px}
  .nph-language--mobile{width:48px}
  .nph-language--mobile select{min-width:37px!important;padding-right:14px!important}
  .nph-mobile-account{width:36px;height:36px}
  .nph-mobile-search{height:36px;padding:0 10px!important}
}
@media(max-width:480px){
  .nph-mobile-search{width:36px;padding:0!important;font-size:0!important}
  .nph-mobile-search:before{content:'⌕';font-size:18px;line-height:1}
}

/* ============================================================
   STORE ESSENTIALS - STATİK CSS TAM TAŞIMA (nirutec-store-essentials
   v1.4.0 küçültmesiyle birlikte). Bu, eklentinin css() metodundaki
   STATİK kısmın BİREBİR kopyasıdır (kart/footer/buton/SSS/destek
   butonu görünümü). Sadece "hide_theme_footer" ayarına bağlı dinamik
   parça eklentide kaldı (bkz. eklentinin hide_theme_footer_css()).
   HTML üretimi ve sepet hedefinin canlı hesaplanması da eklentide -
   bunlar gerçek işlev, temaya taşınmadı.
   ============================================================ */

:root{
    --nse-text:#111827;
    --nse-muted:#6b7280;
    --nse-line:rgba(17,24,39,.10);
    --nse-blue:#1d4ed8;
    --nse-navy:#0f172a;
    --nse-bg:#f7f8fb;
}

.nse-cart-goal{
    background:linear-gradient(135deg,#ffffff,#eef4ff);
    border:1px solid rgba(29,78,216,.16);
    border-radius:18px;
    padding:15px;
    margin:0 0 16px;
    box-shadow:0 10px 24px rgba(17,24,39,.06);
}

.nse-cart-goal__top{
    display:flex;
    justify-content:space-between;
    gap:14px;
    align-items:center;
    margin-bottom:10px;
}

.nse-cart-goal strong{
    color:var(--nse-text);
    font-size:15px;
}

.nse-cart-goal span{
    color:var(--nse-muted);
    font-size:13px;
}

.nse-cart-goal__bar{
    height:9px;
    border-radius:999px;
    background:rgba(29,78,216,.10);
    overflow:hidden;
}

.nse-cart-goal__bar span{
    display:block;
    height:100%;
    border-radius:999px;
    background:linear-gradient(90deg,#1d4ed8,#2563eb);
}

.nse-delivery-notice{
    display:flex;
    align-items:center;
    gap:11px;
    width:100%;
    margin:14px 0;
    padding:12px 13px;
    border:1px solid rgba(29,78,216,.18);
    border-radius:14px;
    background:linear-gradient(135deg,#f8fbff,#eef5ff);
    color:var(--nse-text);
    box-shadow:0 8px 20px rgba(17,24,39,.045);
}

.nse-delivery-notice__icon{
    flex:0 0 30px;
    width:30px;
    height:30px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border-radius:10px;
    background:#e7f0ff;
    color:var(--nse-blue);
    font-weight:950;
}

.nse-delivery-notice > span:nth-child(2){
    min-width:0;
    flex:1;
}

.nse-delivery-notice strong,
.nse-delivery-notice small{
    display:block;
}

.nse-delivery-notice strong{
    color:var(--nse-navy);
    font-size:13px;
    line-height:1.35;
}

.nse-delivery-notice small{
    margin-top:3px;
    color:var(--nse-muted);
    font-size:11.5px;
    line-height:1.4;
}

.nse-delivery-notice a{
    color:var(--nse-blue)!important;
    font-size:12px;
    font-weight:800;
    text-decoration:none!important;
    white-space:nowrap;
}

.wc-block-checkout__shipping-option .nse-delivery-notice{
    margin:10px 0 0;
}

.nse-delivery-page{
    width:min(100%,1080px);
    margin:36px auto 64px;
    padding:0 20px;
    color:var(--nse-text);
}

.nse-delivery-page__head{
    padding:28px;
    border:1px solid rgba(29,78,216,.15);
    border-radius:22px;
    background:linear-gradient(135deg,#fff,#eef5ff);
    box-shadow:0 16px 40px rgba(17,24,39,.07);
}

.nse-delivery-page__head > span{
    color:var(--nse-blue);
    font-size:11px;
    font-weight:900;
    letter-spacing:.08em;
}

.nse-delivery-page__head h1{
    margin:8px 0 10px;
    color:var(--nse-navy);
    font-size:clamp(28px,4vw,44px);
    line-height:1.08;
    letter-spacing:-.035em;
}

.nse-delivery-page__head p{
    margin:0;
    color:var(--nse-muted);
    font-size:16px;
    line-height:1.6;
}

.nse-delivery-page__grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
    margin-top:16px;
}

.nse-delivery-page__grid article{
    padding:20px;
    border:1px solid var(--nse-line);
    border-radius:18px;
    background:#fff;
    box-shadow:0 10px 28px rgba(17,24,39,.045);
}

.nse-delivery-page__grid strong{
    color:var(--nse-navy);
    font-size:15px;
}

.nse-delivery-page__grid p{
    margin:7px 0 0;
    color:var(--nse-muted);
    font-size:13px;
    line-height:1.6;
}

.nse-product-faq{
    margin:16px 0 0;
    display:grid;
    gap:9px;
}

.nse-faq-item{
    text-align:left;
    border:1px solid var(--nse-line)!important;
    background:#fff!important;
    border-radius:16px!important;
    padding:13px 14px!important;
    color:var(--nse-text)!important;
    cursor:default!important;
    box-shadow:0 8px 20px rgba(17,24,39,.04);
}

.nse-faq-item summary{
    display:block;
    font-size:14px;
    line-height:1.35;
    font-weight:800;
    cursor:pointer;
}

.nse-faq-item span{
    display:block;
    color:var(--nse-muted);
    font-size:13px;
    line-height:1.45;
    margin-top:4px;
}

.nse-support-button{
    position:fixed;
    right:18px;
    bottom:18px;
    z-index:1001;
    display:inline-flex;
    align-items:center;
    gap:8px;
    background:linear-gradient(135deg,#1d4ed8,#0f172a);
    color:#fff!important;
    text-decoration:none!important;
    border-radius:999px;
    padding:12px 15px 12px 12px;
    box-shadow:0 18px 42px rgba(17,24,39,.24);
    font-weight:900;
}

.nse-support-button span{
    width:26px;
    height:26px;
    border-radius:999px;
    background:#fff;
    color:#1d4ed8;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    font-weight:950;
}

.nse-support-button strong{
    font-size:13px;
}

.nse-footer{
    margin-top:44px;
    background:linear-gradient(135deg,#0f172a,#111827 58%,#1e3a8a);
    color:#fff;
}

.nse-footer__inner{
    width:min(1240px, calc(100% - 32px));
    margin:0 auto;
    padding:42px 0;
    display:grid;
    grid-template-columns:1.4fr repeat(3,1fr);
    gap:30px;
}

.nse-footer__logo{
    display:flex;
    align-items:center;
    gap:10px;
}

.nse-footer__logo span{
    width:42px;
    height:42px;
    border-radius:14px;
    background:#fff;
    color:#1d4ed8;
    display:flex;
    align-items:center;
    justify-content:center;
    font-weight:950;
    font-size:22px;
}

.nse-footer__logo strong{
    font-size:24px;
    letter-spacing:-.04em;
}

.nse-footer__brand p{
    color:rgba(255,255,255,.72);
    margin:14px 0 0;
    line-height:1.55;
}

.nse-footer__badges{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin-top:16px;
}

.nse-footer__badges span{
    border:1px solid rgba(255,255,255,.14);
    background:rgba(255,255,255,.08);
    border-radius:999px;
    padding:7px 10px;
    font-size:12px;
    color:rgba(255,255,255,.84);
}

.nse-footer__col strong{
    display:block;
    font-size:15px;
    margin-bottom:12px;
}

.nse-footer__col a,
.nse-footer__col span{
    display:block;
    color:rgba(255,255,255,.72)!important;
    text-decoration:none!important;
    margin:8px 0;
    font-size:14px;
}

.nse-footer__col a:hover{
    color:#fff!important;
}

.nse-footer__bottom{
    width:min(1240px, calc(100% - 32px));
    margin:0 auto;
    padding:16px 0 22px;
    border-top:1px solid rgba(255,255,255,.12);
    color:rgba(255,255,255,.62);
    display:flex;
    justify-content:space-between;
    gap:14px;
    font-size:13px;
}

.nse-footer__bottom a{
    color:rgba(255,255,255,.76)!important;
    text-decoration:none!important;
}

@media(max-width:860px){
    .nse-footer__inner{
        grid-template-columns:1fr 1fr;
    }
}

@media(max-width:620px){
    .nse-cart-goal__top{
        display:block;
    }
    .nse-cart-goal__top span{
        display:block;
        margin-top:4px;
    }
    .nse-footer__inner{
        grid-template-columns:1fr;
        padding:32px 0;
    }
    .nse-delivery-notice{
        align-items:flex-start;
        flex-wrap:wrap;
    }
    .nse-delivery-notice a{
        margin-left:41px;
    }
    .nse-delivery-page{
        margin-top:22px;
        padding:0 12px;
    }
    .nse-delivery-page__head{
        padding:20px 17px;
        border-radius:17px;
    }
    .nse-delivery-page__grid{
        grid-template-columns:1fr;
    }
    .nse-footer__bottom{
        display:block;
    }
    .nse-footer__bottom span{
        display:block;
        margin:5px 0;
    }
    .nse-support-button{
        right:14px;
        bottom:84px;
    }
}
/* ============================================================
   MAĞAZA SAYFASI ÜST BÖLÜMÜ - GÖRSEL CİLA (Faz 4 devamı)
   Kaynak: nirutec-shop-premium (breadcrumb, kicker, kategori
   kısayol kartları, filtre akordeonu, sıralama). Eklentiye
   dokunulmadı, üzerine hareket/etkileşim katmanı eklendi.
   ============================================================ */

/* Breadcrumb: hover'da altı çizili geçiş */
.nsp-breadcrumb a {
	position: relative;
	transition: color 0.15s ease;
}

.nsp-breadcrumb a::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: -2px;
	width: 0;
	height: 1px;
	background: currentColor;
	transition: width 0.2s ease;
}

.nsp-breadcrumb a:hover::after {
	width: 100%;
}

/* Kicker rozetindeki nokta: header ile tutarlı nabız efekti */
.nsp-kicker i {
	animation: nrt-pulse-dot 2.2s ease-in-out infinite;
}

/* Kategori kısayol kartları: hover'da parlama sweep (homepage vitrin
   kutularıyla tutarlı) */
.nsp-category-card,
.nsp-split-card {
	position: relative;
	overflow: hidden;
}

.nsp-category-card::after,
.nsp-split-card::after {
	content: "";
	position: absolute;
	top: 0;
	left: -60%;
	width: 40%;
	height: 100%;
	background: linear-gradient(115deg, transparent, rgba(255, 255, 255, 0.4), transparent);
	transform: skewX(-18deg);
	transition: left 0.55s ease;
	pointer-events: none;
}

.nsp-category-card:hover::after,
.nsp-split-card:hover::after {
	left: 130%;
}

.nsp-category-icon {
	transition: transform 0.2s ease;
}

.nsp-category-card:hover .nsp-category-icon {
	transform: scale(1.15) rotate(-4deg);
}

/* Filtrele akordeonu: ok ikonu döndürme, panel yumuşak açılış */
.nsp-filter-details summary {
	position: relative;
	cursor: pointer;
}

.nsp-filter-details summary::after {
	content: "▾";
	display: inline-block;
	margin-left: 6px;
	transition: transform 0.2s ease;
}

.nsp-filter-details[open] summary::after {
	transform: rotate(180deg);
}

.nsp-filter-details .nsp-filter-panel {
	animation: nse-faq-open 0.25s ease;
}

/* Sıralama (sort) dropdown'ı: marka ile tutarlı odak halkası */
.nsp-sort-wrap select {
	transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.nsp-sort-wrap select:focus {
	border-color: var(--nbc-blue) !important;
	box-shadow: 0 0 0 3px rgba(11, 91, 211, 0.14) !important;
	outline: none;
}

/* Eski shop-premium "☷ Filtrele" kutusu (Ürün ara/Min-Max fiyat) artık
   WooCommerce native filtre paneliyle (Fiyat kaydırıcı + Kategori +
   Uygunluk) tamamen çakışıyor - kafa karıştırıcı iki ayrı filtre
   sistemi olmasın diye eskisi gizlendi. Eklentiye dokunulmadı, sadece
   CSS ile gizlendi; sıralama (sort) dropdown'ı olduğu gibi kalıyor. */
.nsp-filter-details {
	display: none !important;
}

/* ============================================================
   MAĞAZA FİLTRE PANELİ - WooCommerce NATIVE BLOKLARI MARKA
   DİLİNE BOYAMA (Faz 4 devamı). Kaynak: WooCommerce'in kendi
   "Product Filters" blok ailesi (Filter by Price/Category/Stock/
   Attribute) - Site Editor'den eklendi. Sorgu/filtreleme mantığına
   dokunulmadı, SADECE görünüm. nsp-filter-details ile aynı görsel
   dile (kart, yuvarlak köşe, mavi/lacivert) getirildi.
   ============================================================ */

/* Ana filtre paneli: kart görünümü */
.wc-block-product-filters {
	background: #fff;
	border: 1px solid var(--nbc-line, rgba(16, 42, 67, 0.10));
	border-radius: 16px;
	padding: 20px 22px;
	box-shadow: 0 8px 22px rgba(16, 42, 67, 0.05);
}

.wc-block-product-filters .wp-block-heading {
	color: var(--nbc-navy);
	font-size: 15px;
	font-weight: 850;
	letter-spacing: -0.01em;
	margin: 18px 0 10px;
}

.wc-block-product-filters .wp-block-heading:first-child {
	margin-top: 0;
	font-size: 19px;
	padding-bottom: 10px;
	border-bottom: 2px solid var(--nbc-surface);
}

/* Fiyat kaydırıcısı (price slider) */
.wc-block-product-filter-price-slider {
	padding: 6px 2px 4px;
}

.wc-block-product-filter-price-slider__range {
	position: relative;
}

.wc-block-product-filter-price-slider .range-bar {
	background: var(--nbc-blue) !important;
	height: 4px;
}

.wc-block-product-filter-price-slider input[type="range"].min,
.wc-block-product-filter-price-slider input[type="range"].max {
	accent-color: var(--nbc-blue);
}

.wc-block-product-filter-price-slider input[type="range"].min::-webkit-slider-thumb,
.wc-block-product-filter-price-slider input[type="range"].max::-webkit-slider-thumb {
	background: var(--nbc-blue);
	border: 2px solid #fff;
	box-shadow: 0 2px 8px rgba(11, 91, 211, 0.35);
}

.wc-block-product-filter-price-slider__left,
.wc-block-product-filter-price-slider__right {
	border: 1px solid var(--nbc-line, rgba(16, 42, 67, 0.14)) !important;
	border-radius: 9px !important;
	padding: 6px 9px !important;
	font-size: 13px;
	font-weight: 700;
	color: var(--nbc-text);
	transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.wc-block-product-filter-price-slider__left:focus,
.wc-block-product-filter-price-slider__right:focus {
	border-color: var(--nbc-blue) !important;
	box-shadow: 0 0 0 3px rgba(11, 91, 211, 0.14);
	outline: none;
}

/* Kategori / Stok checkbox listeleri */
.wc-block-product-filter-checkbox-list {
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.wc-block-product-filter-checkbox-list__item {
	border-radius: 9px;
	padding: 6px 8px;
	transition: background 0.15s ease;
}

.wc-block-product-filter-checkbox-list__item:hover {
	background: var(--nbc-surface);
}

.wc-block-product-filter-checkbox-list__label {
	display: flex;
	align-items: center;
	gap: 9px;
	cursor: pointer;
	width: 100%;
}

/* WooCommerce'in kendi checkbox görseli (native input appearance:none'a
   rağmen bazı tarayıcı/sistem kombinasyonlarında kutunun dışına taşan,
   kalın siyah bir tik daha gösteriyordu - native rendering güvenilir
   değildi). Çözüm: native input tamamen görünmez yapılıp (ama tıklama
   alanı olarak kalıyor), görsel checkbox tamamen kendi çizdiğimiz
   wrapper::before pseudo-elementinden geliyor - native rendering hiç
   karışmıyor. */
/* WooCommerce ayrıca kendi checkmark SVG'sini de (.mark) render
   ediyor - wrapper::before ile kendi tik tasarımımızı gösterdiğimiz
   için bu ekstra SVG (36px, taşan/siyah görünen) tamamen gizleniyor,
   çift tik görünmesin diye. */
.wc-block-product-filter-checkbox-list__mark {
	display: none !important;
}

.wc-block-product-filter-checkbox-list__input-wrapper {
	width: 18px !important;
	height: 18px !important;
	min-width: 18px !important;
	flex: 0 0 18px;
	position: relative !important;
}

.wc-block-product-filter-checkbox-list__input-wrapper::before {
	content: "" !important;
	display: block !important;
	position: absolute !important;
	inset: 0 !important;
	width: 18px !important;
	height: 18px !important;
	border-radius: 5px !important;
	border: 1.5px solid rgba(11, 91, 211, 0.4) !important;
	background-color: #fff !important;
	opacity: 1 !important;
	transition: background-color 0.15s ease, border-color 0.15s ease;
	pointer-events: none;
}

.wc-block-product-filter-checkbox-list__input {
	opacity: 0 !important;
	position: absolute !important;
	inset: 0 !important;
	width: 18px !important;
	height: 18px !important;
	min-width: 18px !important;
	margin: 0 !important;
	cursor: pointer;
	flex-shrink: 0;
}

.wc-block-product-filter-checkbox-list__item:has(.wc-block-product-filter-checkbox-list__input:hover) .wc-block-product-filter-checkbox-list__input-wrapper::before {
	border-color: var(--nbc-blue) !important;
}

.wc-block-product-filter-checkbox-list__item:has(.wc-block-product-filter-checkbox-list__input:checked) .wc-block-product-filter-checkbox-list__input-wrapper::before {
	background-color: var(--nbc-blue) !important;
	border-color: var(--nbc-blue) !important;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='white'%3E%3Cpath d='M6.5 11.3 3.2 8l1.3-1.3 2 2 4.9-5 1.3 1.4z'/%3E%3C/svg%3E") !important;
	background-repeat: no-repeat !important;
	background-position: center !important;
	background-size: 11px 11px !important;
}

.wc-block-product-filter-checkbox-list__text-wrapper {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex: 1;
	gap: 8px;
}

.wc-block-product-filter-checkbox-list__text {
	font-size: 13.5px;
	color: var(--nbc-text);
	font-weight: 650;
}

.wc-block-product-filter-checkbox-list__item:has(input:checked) .wc-block-product-filter-checkbox-list__text {
	color: var(--nbc-blue);
	font-weight: 800;
}

.wc-block-product-filter-checkbox-list__show-more-button {
	color: var(--nbc-blue) !important;
	font-weight: 800;
	font-size: 12.5px;
	text-decoration: none !important;
	margin-top: 6px;
	display: inline-flex;
	align-items: center;
	gap: 4px;
}

.wc-block-product-filter-checkbox-list__show-more-button:hover {
	text-decoration: underline !important;
}

/* Seçili filtre etiketleri (chips) */
.wc-block-product-filter-removable-chips__items {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin-bottom: 14px;
}

.wc-block-product-filter-removable-chips {
	background: var(--nbc-surface);
	border: 1px solid rgba(11, 91, 211, 0.20);
	color: var(--nbc-blue);
	border-radius: 999px;
	font-size: 12px;
	font-weight: 750;
	padding: 5px 10px;
}

/* Mobil filtre paneli (overlay/açılır pencere) uygula butonu */
.wc-block-product-filters__apply {
	background: linear-gradient(135deg, var(--nbc-blue), var(--nbc-navy)) !important;
	border: 0 !important;
	border-radius: 12px !important;
	font-weight: 800 !important;
	box-shadow: 0 8px 18px rgba(11, 91, 211, 0.22);
}

/* ============================================================
   MAĞAZA SÜTUN DÜZENİ - TAŞMA (OVERFLOW) DÜZELTMESİ (Faz 4 devamı)
   Kaynak: Site Editor'de "Ürün Filtreleri" solda dar bir sütuna,
   ürün ızgarası sağda geniş bir sütuna taşındı. Ürün ızgarası bloğu
   "alignwide" (geniş hizalama) sınıfına sahip olduğu için, içinde
   bulunduğu dar sütunu yok sayıp sayfanın tam genişliğine göre
   kendini konumlandırmaya çalışıyor ve taşıyordu (masaüstünde sayfa
   sağa kayıyor, mobilde filtre çubuğu yanlış yere düşüyordu).
   ============================================================ */
.wp-block-column .alignwide,
.wp-block-column > .alignwide {
	width: 100% !important;
	max-width: 100% !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
}

/* WooCommerce'in kendi ürün ızgarası (Product Collection), dar sütun
   içinde olduğunu anlamıyor ve sabit/geniş bir grid hesaplıyordu.
   Yüksek özgüllük (aynı class 4 kez tekrarlanarak) ile zorlanıyor -
   normal !important yeterli gelmedi çünkü WooCommerce'in kendi
   responsive class'ı (columns-2 vb.) da !important kullanıyor ve
   specificity yarışını kaybediyorduk. */
.wc-block-product-template.wc-block-product-template.wc-block-product-template.wc-block-product-template {
	grid-template-columns: repeat(auto-fill, minmax(210px, 1fr)) !important;
}
.nsp-shop-controls.nsp-shop-controls.nsp-shop-controls.nsp-shop-controls {
	grid-template-columns: 1fr !important;
}

/* Grid/kontrol elementlerinin KENDİ genişliği de (grid-template-columns'un
   yanında) sabit/geniş kalıyordu - "width" ayrıca zorlanıyor. */
.wc-block-product-template.wc-block-product-template.wc-block-product-template.wc-block-product-template {
	width: 100% !important;
	max-width: 100% !important;
}
.nsp-shop-controls.nsp-shop-controls.nsp-shop-controls.nsp-shop-controls {
	width: 100% !important;
	max-width: 100% !important;
	display: flex !important;
	justify-content: flex-end !important;
	align-items: center !important;
}
.wc-block-product-filters.wc-block-product-filters.wc-block-product-filters {
	width: 100% !important;
	max-width: 100% !important;
	box-sizing: border-box !important;
}

/* Filtreleri içeren sütun satırı: son bir güvenlik ağı olarak, olası
   küçük iç taşmaların sayfa genelini bozmaması için taşan içerik
   görsel olarak kırpılıyor (kendi içeriği zaten doğru boyutlandığı
   için pratikte hiçbir şey görsel olarak kesilmiyor). */
.wp-block-columns:has(.wc-block-product-filters) {
	overflow: hidden !important;
	max-width: 100% !important;
}

/* ============================================================
   CANLI/ENERJİK TASARIM DOKUNUŞLARI (Faz 9 - "al hissiyatı")
   Kaynak: Ürün kartları, sepete ekle butonları ve indirim rozetleri
   psikolojik olarak daha "aciliyet/heyecan" hissi verecek şekilde
   güçlendirildi - marka renklerine (mavi/lacivert) sadık kalınarak,
   sadece vurgu/CTA noktalarında canlılık artırıldı.
   ============================================================ */

/* Sepete Ekle butonları: ışık kayması (shimmer) - marka CTA rengi
   (turuncu) korunuyor, sadece transform/shadow ve overlay efekti
   ekleniyor, background rengi ARTIK EZİLMİYOR (önceki sürümde
   yanlışlıkla mavi yapılmıştı, tüm sitede tutarsızlık yaratmıştı -
   düzeltildi, ana sayfa ile mağaza artık AYNI turuncu CTA rengini
   kullanıyor). */
.wc-block-components-product-button__button,
a.button.add_to_cart_button,
button.add_to_cart_button,
.wp-block-woocommerce-product-button .wp-block-button__link {
	position: relative !important;
	overflow: hidden !important;
	transition: transform 0.15s ease, box-shadow 0.15s ease !important;
}

.wc-block-components-product-button__button::before,
a.button.add_to_cart_button::before,
button.add_to_cart_button::before {
	content: "";
	position: absolute;
	top: 0;
	left: -75%;
	width: 50%;
	height: 100%;
	background: linear-gradient(115deg, transparent, rgba(255, 255, 255, 0.35), transparent);
	transform: skewX(-20deg);
	transition: left 0.5s ease;
	pointer-events: none;
}

.wc-block-components-product-button__button:hover::before,
a.button.add_to_cart_button:hover::before,
button.add_to_cart_button:hover::before {
	left: 130%;
}

.wc-block-components-product-button__button:hover,
a.button.add_to_cart_button:hover,
button.add_to_cart_button:hover {
	transform: translateY(-2px) scale(1.02) !important;
	box-shadow: 0 10px 24px rgba(201, 79, 10, 0.35) !important;
}

/* İndirim rozeti: daha canlı, "flaş kampanya" hissi veren gradyan +
   hafif nabız animasyonu (dikkat çekmesi için) */
.nrt-discount-badge {
	background: linear-gradient(135deg, #ff5a3c, var(--nbc-red)) !important;
	box-shadow: 0 4px 14px rgba(255, 90, 60, 0.45) !important;
	animation: nrt-badge-pulse 1.8s ease-in-out infinite;
	font-size: 12px !important;
	letter-spacing: 0.02em;
}

@keyframes nrt-badge-pulse {
	0%, 100% { transform: scale(1); }
	50% { transform: scale(1.08); }
}

/* "Stokta" rozeti: daha büyük, doygun yeşil, gerçekten dikkat çeken
   bir güven işareti - önceki hali çok soluk/küçüktü, işlevini
   yerine getirmiyordu. */
.nrt-card-badge--stock,
.wc-block-components-product-badge-list .wc-block-components-product-badge {
	background: var(--nbc-green) !important;
	color: #fff !important;
	font-weight: 800 !important;
	font-size: 11px !important;
	letter-spacing: 0.02em;
	padding: 4px 10px !important;
	border-radius: 999px !important;
	box-shadow: 0 3px 10px rgba(22, 134, 83, 0.35);
}

span.onsale {
	box-shadow: 0 2px 8px rgba(22, 134, 83, 0.25);
}

/* Fiyat: satır içinde daha dikkat çekici, canlı vurgu */
.wc-block-components-product-price__value.is-discounted,
.price ins .woocommerce-Price-amount,
.wc-block-components-product-price ins {
	color: var(--nbc-red) !important;
	font-weight: 900 !important;
}

/* Hero ana CTA butonu: daha güçlü glow + hafif nabız (dikkat çekici,
   "hemen tıkla" hissi) */
.nrt-hp-primary,
.wp-block-button.is-style-fill .wp-block-button__link {
	position: relative;
	box-shadow: 0 8px 24px rgba(11, 91, 211, 0.35);
}

.nrt-hp-primary::after {
	content: "";
	position: absolute;
	inset: -3px;
	border-radius: inherit;
	border: 2px solid rgba(11, 91, 211, 0.35);
	animation: nrt-cta-ring 2.2s ease-out infinite;
	pointer-events: none;
}

@keyframes nrt-cta-ring {
	0% { opacity: 0.8; transform: scale(0.97); }
	70%, 100% { opacity: 0; transform: scale(1.08); }
}

@media (prefers-reduced-motion: reduce) {
	.nrt-discount-badge,
	.nrt-hp-primary::after {
		animation: none !important;
	}
}

/* ============================================================
   GERÇEK HAREKET / "DEVİMSEL" TASARIM (Faz 10)
   Önceki dokunuş çok inceydi - bu sefer sürekli, göze çarpan
   hareket: kayan bilgi şeridi, otomatik parlama, dönen kenarlıklı
   butonlar, nefes alan kartlar. Performans için prefers-reduced-
   motion'a saygı gösteriliyor.
   ============================================================ */

/* 1) Üst bilgi şeridi: sürekli kayan (marquee) metin - JS ile
   içerik ikiye katlanıp kesintisiz akış sağlanıyor (bkz. header-core.js) */
.nph-topline {
	overflow: hidden;
	white-space: nowrap;
}

.nph-topline .nph-wrap {
	display: inline-flex;
	width: max-content;
	animation: nrt-marquee 22s linear infinite;
}

.nph-topline:hover .nph-wrap {
	animation-play-state: paused;
}

@keyframes nrt-marquee {
	from { transform: translateX(0); }
	to { transform: translateX(-50%); }
}

/* 2) Ürün kartı görseli: otomatik, periyodik ışık geçişi (hover
   gerektirmeden sürekli, kademeli gecikmeyle organik görünür) */
li.wc-block-product .wc-block-components-product-image,
ul.products li.product .woocommerce-loop-product__link {
	position: relative;
}

li.wc-block-product .wc-block-components-product-image::after,
ul.products li.product .woocommerce-loop-product__link::after {
	content: "";
	position: absolute;
	top: 0;
	left: -60%;
	width: 35%;
	height: 100%;
	background: linear-gradient(115deg, transparent, rgba(255, 255, 255, 0.55), transparent);
	transform: skewX(-18deg);
	animation: nrt-auto-shine 4.5s ease-in-out infinite;
	pointer-events: none;
	z-index: 2;
}

li.wc-block-product:nth-child(3n+1) .wc-block-components-product-image::after { animation-delay: 0s; }
li.wc-block-product:nth-child(3n+2) .wc-block-components-product-image::after { animation-delay: 1.5s; }
li.wc-block-product:nth-child(3n+3) .wc-block-components-product-image::after { animation-delay: 3s; }

@keyframes nrt-auto-shine {
	0%, 40% { left: -60%; }
	60%, 100% { left: 130%; }
}

/* 3) Sepete Ekle butonu: yavaşça dönen gradyan "ışıklı kenarlık" -
   sürekli hareket eden, dikkat çeken bir çerçeve */
.wc-block-components-product-button__button,
a.button.add_to_cart_button,
button.add_to_cart_button {
	position: relative !important;
	z-index: 0;
}

.wc-block-components-product-button__button::after,
a.button.add_to_cart_button::after,
button.add_to_cart_button::after {
	content: "";
	position: absolute;
	inset: -2px;
	border-radius: inherit;
	padding: 2px;
	background: conic-gradient(from 0deg, var(--nbc-blue), #ff5a3c, var(--nbc-orange), var(--nbc-blue));
	-webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
	-webkit-mask-composite: xor;
	mask-composite: exclude;
	opacity: 0;
	transition: opacity 0.25s ease;
	animation: nrt-border-spin 3s linear infinite;
	z-index: -1;
	pointer-events: none;
}

.wc-block-components-product-button__button:hover::after,
a.button.add_to_cart_button:hover::after,
button.add_to_cart_button:hover::after {
	opacity: 1;
}

@keyframes nrt-border-spin {
	to { transform: rotate(360deg); }
}

/* 4) Kategori/vitrin kutuları: hafif, sürekli "nefes alma" hareketi -
   göz yormayan ama fark edilir bir canlılık */
.nph-cat-card,
.nrt-hp-showcase-grid a,
.nsp-category-card {
	animation: nrt-breathe 5s ease-in-out infinite;
}

.nph-cat-card:nth-child(2n) { animation-delay: 0.6s; }
.nph-cat-card:nth-child(3n) { animation-delay: 1.2s; }
.nrt-hp-showcase-grid a:nth-child(2n) { animation-delay: 0.8s; }

@keyframes nrt-breathe {
	0%, 100% { transform: scale(1); }
	50% { transform: scale(1.025); }
}

/* 5) Ürün kartlarına fare pozisyonuna göre hafif 3D eğilme (JS ile
   --tilt-x / --tilt-y değişkenleri set ediliyor, bkz. header-core.js) */
li.wc-block-product,
ul.products li.product {
	transform: perspective(800px) rotateX(var(--tilt-y, 0deg)) rotateY(var(--tilt-x, 0deg));
	transition: transform 0.15s ease-out;
	transform-style: preserve-3d;
}

@media (prefers-reduced-motion: reduce) {
	.nph-topline .nph-wrap,
	li.wc-block-product .wc-block-components-product-image::after,
	ul.products li.product .woocommerce-loop-product__link::after,
	.wc-block-components-product-button__button::after,
	a.button.add_to_cart_button::after,
	button.add_to_cart_button::after,
	.nph-cat-card,
	.nrt-hp-showcase-grid a,
	.nsp-category-card {
		animation: none !important;
	}
	li.wc-block-product,
	ul.products li.product {
		transform: none !important;
	}
}

/* ============================================================
   TASARIM DÜZELTMELERİ - DOST ELEŞTİRİSİ SONRASI (Faz 11)
   1) CTA renk tutarsızlığı: Sepete Ekle butonları yanlışlıkla mavi
      yapılmıştı (yukarıda düzeltildi), artık ana sayfa ile aynı
      turuncu. 2) Genel zemin çok "beyaz/durgun" kalıyordu - hafif,
      göz yormayan bir doku eklendi. 3) Rozetler güçlendirildi.
   ============================================================ */

/* Genel sayfa zemini: saf beyaz yerine, çok hafif mavi-turuncu
   tonlu bir doku - ürün kartları (beyaz) üzerinde daha iyi kontrast
   oluşturur, "canlı" bir his katar ama göz yormaz. */
body {
	background-color: #f7f9fc;
	background-image:
		radial-gradient(circle at 8% 12%, rgba(11, 91, 211, 0.05), transparent 42%),
		radial-gradient(circle at 92% 8%, rgba(201, 79, 10, 0.045), transparent 38%),
		radial-gradient(circle at 50% 100%, rgba(11, 91, 211, 0.03), transparent 50%);
	background-attachment: fixed;
}

/* Mağaza/arşiv ana içerik alanı ve ürün kartları beyaz kalmaya devam
   ediyor (yukarıdaki dokunun üzerinde net görünmesi için) */
.wp-block-woocommerce-product-collection,
li.wc-block-product,
ul.products li.product,
.wc-block-product-filters {
	background-color: #fff;
}

/* ============================================================
   FOOTER ÖDEME ROZETLERİ (Visa/Mastercard) - Faz 12
   ============================================================ */
.nrt-payment-badges {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin-left: 4px;
}

.nrt-payment-badges svg {
	display: block;
	border-radius: 4px;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.18);
}

.nrt-iyzico-badge {
	display: block;
	height: 24px;
	width: auto;
}

/* ============================================================
   CHECKOUT SÖZLEŞME MODALI - KESİN ÇÖZÜM (Faz 13-b)
   Önceki JS tabanlı çözüm (MutationObserver ile boyut zorlama)
   canlıda güvenilir çalışmadı - eklenti modalı YENİDEN KULLANIYOR
   (aynı DOM elementi, farklı içerikle tekrar açılıyor) ve olası
   React yeniden render'ları JS'in uyguladığı inline style'ı
   silebiliyor. KESİN ÇÖZÜM: bunu CSS kuralı olarak yazmak - tarayıcı
   ":not([hidden])" seçicisini DOM her değiştiğinde OTOMATİK olarak
   yeniden değerlendirir, JS'in araya girmesine hiç gerek kalmaz,
   yeniden render/element tekrar kullanımı sorun yaratmaz. */
.nclg-modal:not([hidden]) {
	width: 100vw !important;
	height: 100vh !important;
	position: fixed !important;
	top: 0 !important;
	left: 0 !important;
	right: 0 !important;
	bottom: 0 !important;
	z-index: 999999 !important;
}

.nclg-modal:not([hidden]) .nclg-modal__backdrop {
	position: fixed !important;
	inset: 0 !important;
	width: 100vw !important;
	height: 100vh !important;
}

.nclg-modal:not([hidden]) .nclg-modal__panel {
	position: relative !important;
	z-index: 1 !important;
}

/* ============================================================
   ÖZEL SÖZLEŞME MODALI (Faz 13-d) - .nrt-legal-modal
   Eklentiden tamamen bağımsız, kendi sınıf isimleriyle - hiçbir
   CSS çakışma riski yok.
   ============================================================ */
.nrt-legal-modal[hidden] {
	display: none !important;
}

.nrt-legal-modal {
	position: fixed !important;
	inset: 0 !important;
	z-index: 999999 !important;
	display: grid !important;
	place-items: center !important;
	padding: 18px !important;
}

.nrt-legal-modal__backdrop {
	position: fixed !important;
	inset: 0 !important;
	width: 100vw !important;
	height: 100vh !important;
	background: rgba(6, 20, 45, 0.58) !important;
}

.nrt-legal-modal__panel {
	position: relative !important;
	z-index: 1 !important;
	width: min(760px, 100%) !important;
	max-height: min(820px, calc(100vh - 36px)) !important;
	display: grid !important;
	grid-template-rows: auto minmax(220px, 1fr) auto !important;
	overflow: hidden !important;
	border: 1px solid #d8e3f1;
	border-radius: 20px;
	background: #fff;
	box-shadow: 0 24px 70px rgba(6, 30, 72, 0.24);
}

.nrt-legal-modal__header {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 16px;
	padding: 18px 22px;
	background: #f8fbff;
	border-bottom: 1px solid #e2eaf4;
}

.nrt-legal-modal__title {
	margin: 0;
	color: var(--nbc-navy, #10213f);
	font-size: clamp(18px, 4vw, 24px);
	line-height: 1.2;
}

.nrt-legal-modal__close {
	width: 38px;
	height: 38px;
	flex: 0 0 38px;
	border: 1px solid #d8e3f1;
	border-radius: 50%;
	background: #fff;
	color: var(--nbc-navy, #10213f);
	font-size: 22px;
	line-height: 1;
	cursor: pointer;
}

.nrt-legal-modal__body {
	min-height: 0;
	padding: 22px;
	overflow: auto !important;
	overscroll-behavior: contain;
	background: #fff;
	line-height: 1.65;
	color: var(--nbc-text, #10233f);
}

.nrt-legal-modal__body h1,
.nrt-legal-modal__body h2 {
	margin: 20px 0 8px;
	color: var(--nbc-navy, #10213f);
	font-size: 18px;
}

.nrt-legal-modal__body p,
.nrt-legal-modal__body li {
	font-size: 15px;
}

.nrt-legal-modal__footer {
	display: grid;
	gap: 12px;
	padding: 18px 22px;
	background: #f8fbff;
	border-top: 1px solid #e2eaf4;
}

.nrt-legal-modal__notice {
	margin: 0;
	color: #5b6d86;
	font-size: 13px;
}

.nrt-legal-modal__approve {
	justify-self: end;
	min-height: 44px;
	padding: 10px 20px;
	border: 0;
	border-radius: 10px;
	background: var(--nbc-orange, #c94f0a);
	color: #fff;
	font-weight: 750;
	cursor: pointer;
}

.nrt-legal-modal__approve:disabled {
	background: #cbd5e1;
	color: #64748b;
	cursor: not-allowed;
}

@media (max-width: 640px) {
	.nrt-legal-modal__panel {
		max-height: calc(100vh - 16px) !important;
	}
	.nrt-legal-modal__header,
	.nrt-legal-modal__footer,
	.nrt-legal-modal__body {
		padding: 14px !important;
	}
}

.nrt-legal-read-link {
	display: inline-block;
	margin-left: 8px;
	padding: 0;
	border: 0;
	background: none;
	color: var(--nbc-blue, #0b5bd3);
	font-size: 13px;
	font-weight: 700;
	text-decoration: underline;
	cursor: pointer;
}
.nrt-legal-read-link:hover {
	color: var(--nbc-orange, #c94f0a);
}
