/* oyp-sepet.css — sepet, ödeme, teşekkür, sipariş takibi, satın alma kutusu ve formlar (scripts/magaza/vitrin.mjs).
   Sitenin renk değişkenlerini kullanır (--oyp-primary …); koyu tema: [data-theme="dark"] (dark-mode.css değişkenleri). */
.oyp-vitrin, .oyp-satinal, .oyp-header-sepet, .oyp-toast, .oyp-iletisim-formu {
  --vt-zemin: var(--bg-tertiary, #fff);
  --vt-zemin2: var(--bg-secondary, #f4f4f4);
  --vt-yazi: var(--text-primary, #111726);
  --vt-soluk: var(--text-tertiary, #70747d);
  --vt-cizgi: var(--border-color, #e2e2e2);
  --vt-turuncu: var(--oyp-primary, #ffa104);
  --vt-turuncu-k: var(--oyp-primary-dark, #d88700);
  --vt-yesil: #0f6b3e;
  --vt-kirmizi: #b42318;
}
[data-theme="dark"] .oyp-vitrin, [data-theme="dark"] .oyp-satinal, [data-theme="dark"] .oyp-toast { --vt-yesil: #7ddc9f; --vt-kirmizi: #ff8a80; }

/* ---------------------------------------------------------------- genel kutu */
.oyp-kutu { background: var(--vt-zemin); color: var(--vt-yazi); border: 1px solid var(--vt-cizgi); border-radius: 16px; padding: 20px; }
.oyp-kutu + .oyp-kutu, .oyp-form-bolum + .oyp-form-bolum { margin-top: 16px; }
.oyp-form-bolum h2 { display: flex; align-items: center; gap: 10px; margin-bottom: 16px; font-weight: 800; }
/* site.bundle "section h2 { font-size: 34px / 27px }" kuralı bölüm başlıklarını büyütüyor */
.oyp-vitrin section h2, .oyp-vitrin .oyp-kutu h2, .oyp-vitrin h2.h5 { font-size: 18px !important; line-height: 1.3; }
.oyp-adim { display: inline-flex; align-items: center; justify-content: center; width: 28px; height: 28px; border-radius: 50%; background: var(--vt-turuncu); color: #111726; font-size: 14px; font-weight: 800; flex: none; }
.oyp-yukleniyor { color: var(--vt-soluk); padding: 12px 0; }
.oyp-mesaj-kutu { padding: 32px 24px; }
.oyp-mesaj-ikon { font-size: 48px; color: var(--vt-turuncu); line-height: 1; }
.oyp-mesaj-ikon--basari, .oyp-mesaj-kutu--basari .oyp-mesaj-ikon { color: var(--vt-yesil); }
.oyp-zorunlu { color: var(--vt-kirmizi); }
.oyp-istege-bagli { color: var(--vt-soluk); font-size: .85em; font-weight: 400; }
.oyp-hp { position: absolute !important; left: -10000px !important; top: auto !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }
.oyp-baglanti-dugme { background: none; border: 0; padding: 0; color: var(--vt-soluk); text-decoration: underline; cursor: pointer; font: inherit; font-size: 14px; }
.oyp-baglanti-dugme:hover { color: var(--vt-yazi); }
.oyp-vitrin .form-label { font-weight: 600; margin-bottom: 6px; }
.oyp-vitrin .form-control-oyp, .oyp-iletisim-formu .form-control-oyp, .oyp-fiyat-sor .form-control-oyp { border-radius: 10px; }
.oyp-vitrin .btn-oyp[disabled], .oyp-vitrin .btn-oyp[aria-disabled="true"] { opacity: .6; pointer-events: none; }
.oyp-vitrin a:not(.btn-oyp):not(.nav-link) { color: var(--vt-turuncu-k); }
[data-theme="dark"] .oyp-vitrin a:not(.btn-oyp):not(.nav-link) { color: var(--vt-turuncu); }

/* ---------------------------------------------------------------- üst menü sepet simgesi + rozet */
.oyp-sepet-rozet { position: absolute; top: 0; right: 0; z-index: 2; min-width: 18px; height: 18px; padding: 0 5px; border-radius: 9px; background: var(--oyp-primary, #ffa104); color: #111726; font-size: 12px; font-weight: 800; line-height: 18px; text-align: center; box-shadow: 0 0 0 2.5px #fff; }
.oyp-sepet-rozet[hidden] { display: none !important; }
[data-theme="dark"] .oyp-sepet-rozet { box-shadow: 0 0 0 2.5px var(--bg-primary, #1a1d29); }
.oyp-mobil-sepet { position: relative; display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; border-radius: 50%; background: var(--oyp-light-gray, #f4f4f4); color: var(--text-primary, #111726); font-size: 20px; text-decoration: none; }
.oyp-mobil-sepet .oyp-sepet-rozet { top: -2px; right: -2px; }

/* ---------------------------------------------------------------- ürün sayfası satın alma kutusu */
.oyp-satinal { text-align: left; }
.oyp-satinal .oyp-adet-baslik { font-size: 14px; margin: 0 0 8px; }
.oyp-satinal .number-spinner { margin-bottom: 12px !important; }
.oyp-satinal .number-spinner a { user-select: none; }
.oyp-satinal .number-spinner a:focus-visible { outline: 3px solid var(--vt-turuncu-k); outline-offset: 2px; border-radius: 6px; }
.oyp-satinal button.btn-oyp, .oyp-satinal a.btn-oyp { display: block; width: 100%; cursor: pointer; text-decoration: none; }
.oyp-satinal .btn-oyp-lg { padding: 16px 20px; }
.oyp-satinal .btn-oyp.inverse.btn-oyp-lg { background: var(--vt-zemin) !important; }
.oyp-wa-dugme { background-color: #25d366 !important; color: #fff !important; }
.oyp-wa-dugme:hover { background-color: #1ebe5b !important; }
.oyp-teklif-not, .oyp-stok-not, .oyp-stok-uyari { font-size: 14px; line-height: 1.45; margin: 0 0 12px; padding: 10px 12px; border-radius: 10px; background: var(--vt-zemin2); color: var(--vt-yazi); }
.oyp-stok-uyari { border-left: 4px solid var(--vt-kirmizi); }
.oyp-teklif-not { border-left: 4px solid var(--vt-turuncu); }
.oyp-fiyat-sor { margin-top: 14px; border: 1px solid var(--vt-cizgi); border-radius: 12px; padding: 10px 12px; background: var(--vt-zemin); }
.oyp-fiyat-sor summary { cursor: pointer; font-weight: 700; font-size: 14px; }
.oyp-fiyat-sor .form-label { font-size: 13px; margin-bottom: 2px; }
.btn-oyp-cart[data-oyp-sepet] { width: 100%; cursor: pointer; }
/* WhatsApp ile sipariş: ürün kutusu notu, küçük Havale/EFT bağlantısı, liste kartı WhatsApp simgesi, meşgul durumu */
.oyp-wa-not { font-size: 13px; line-height: 1.45; color: var(--vt-soluk); margin: 10px 0 0; }
.oyp-wa-not .bi-whatsapp { color: #1ebe5b; }
.oyp-havale-baglanti { margin: 8px 0 0; text-align: center; }
.oyp-havale-baglanti .oyp-baglanti-dugme { font-size: 13px; }
.oyp-tahmini-not { font-size: 12.5px; color: var(--vt-soluk); margin-top: 4px; }
.oyp-tahmini-rozet { display: inline-block; margin-top: 2px; padding: 0 6px; border-radius: 999px; background: rgba(255, 161, 4, .14); color: var(--vt-turuncu-k); font-size: 11px; font-weight: 700; white-space: nowrap; }
.oyp-ozet-not--tahmini { border-left: 4px solid var(--vt-turuncu); }
.oyp-kart-dugmeler { display: flex; gap: 6px; align-items: stretch; }
.oyp-kart-dugmeler > .btn-oyp-cart:first-child { flex: 1 1 auto; min-width: 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; padding-left: 6px; padding-right: 6px; }
@media (max-width: 575.98px) { .oyp-kart-dugmeler > .btn-oyp-cart:first-child .bi { display: none; } }
.btn-oyp-cart.oyp-kart-wa { flex: 0 0 auto; width: auto !important; min-width: 44px; display: inline-flex; align-items: center; justify-content: center; background: #25d366 !important; border-color: #25d366 !important; color: #fff !important; text-decoration: none; }
.btn-oyp-cart.oyp-kart-wa:hover { background: #1ebe5b !important; }
.btn-oyp-cart.oyp-kart-wa .bi { font-size: 18px; margin: 0; }
[data-oyp-mesgul="1"] { opacity: .7; cursor: progress !important; }
a[data-oyp-mesgul="1"] { pointer-events: none; }

/* ---------------------------------------------------------------- sepet */
.oyp-sepet-sayac { color: var(--vt-soluk); font-size: 14px; }
.oyp-sepet-liste { padding: 8px 20px; }
.oyp-sepet-satir { display: grid; grid-template-columns: 84px minmax(0, 1fr) auto auto 40px; gap: 14px; align-items: center; padding: 16px 0; border-bottom: 1px solid var(--vt-cizgi); }
.oyp-sepet-satir:last-child { border-bottom: 0; }
.oyp-sepet-resim img { width: 84px; height: 84px; object-fit: contain; border-radius: 10px; border: 1px solid var(--vt-cizgi); background: #fff; display: block; }
.oyp-sepet-ad { font-weight: 700; color: var(--vt-yazi) !important; text-decoration: none; line-height: 1.35; display: block; overflow-wrap: anywhere; }
.oyp-sepet-ad:hover { text-decoration: underline; }
.oyp-sepet-alt, .oyp-sepet-stok { font-size: 13px; color: var(--vt-soluk); margin-top: 2px; }
.oyp-sepet-birim { font-size: 14px; margin-top: 4px; }
.oyp-sepet-birim-ek { color: var(--vt-soluk); font-size: 12px; }
.oyp-sepet-not { font-size: 13px; margin-top: 6px; color: var(--vt-yazi); }
.oyp-teklif-rozet { display: inline-block; padding: 2px 8px; border-radius: 999px; background: rgba(255, 161, 4, .16); color: var(--vt-turuncu-k); font-size: 12px; font-weight: 800; white-space: nowrap; }
[data-theme="dark"] .oyp-teklif-rozet { color: var(--vt-turuncu); }
.oyp-teklif-metin { font-size: 13px; color: var(--vt-turuncu-k); font-weight: 700; white-space: nowrap; }
.oyp-sepet-tutar { text-align: right; min-width: 104px; font-size: 16px; }
.oyp-adet { display: inline-flex; align-items: stretch; border: 2px solid var(--vt-cizgi); border-radius: 10px; overflow: hidden; height: 40px; background: var(--vt-zemin); }
.oyp-adet button { width: 36px; border: 0; background: transparent; color: var(--vt-yazi); font-size: 18px; font-weight: 700; cursor: pointer; }
.oyp-adet button:hover { background: var(--vt-zemin2); }
.oyp-adet button:focus-visible, .oyp-adet input:focus-visible, .oyp-sepet-sil:focus-visible { outline: 3px solid var(--vt-turuncu-k); outline-offset: -3px; }
.oyp-adet input { width: 42px; border: 0; border-left: 2px solid var(--vt-cizgi); border-right: 2px solid var(--vt-cizgi); text-align: center; font-weight: 700; background: transparent; color: var(--vt-yazi); }
.oyp-sepet-sil { width: 40px; height: 40px; border: 0; border-radius: 50%; background: transparent; color: var(--vt-soluk); font-size: 18px; cursor: pointer; }
.oyp-sepet-sil:hover { background: var(--vt-zemin2); color: var(--vt-kirmizi); }
.oyp-sepet-alt-cubuk { padding: 12px 0 8px; text-align: right; }
.oyp-sepet-bos { padding: 40px 20px; }
.oyp-sepet-uyari ul { padding-left: 18px; }
.oyp-devam { color: var(--vt-soluk) !important; font-size: 14px; }
.oyp-guven-listesi { list-style: none; margin: 18px 0 0; padding: 14px 0 0; border-top: 1px solid var(--vt-cizgi); font-size: 13px; color: var(--vt-soluk); }
.oyp-guven-listesi li { display: flex; gap: 8px; align-items: flex-start; margin-bottom: 6px; }
.oyp-guven-listesi i { color: var(--vt-turuncu); }

/* ---------------------------------------------------------------- özet */
.oyp-ozet-satirlar { margin: 0; }
.oyp-ozet-satir { display: flex; justify-content: space-between; gap: 12px; padding: 6px 0; }
.oyp-ozet-satir dt { font-weight: 400; }
.oyp-ozet-satir dd { margin: 0; font-weight: 700; text-align: right; white-space: nowrap; }
.oyp-ozet-ek { color: var(--vt-soluk); font-size: 13px; }
.oyp-ozet-indirim dd { color: var(--vt-yesil); }
.oyp-ozet-toplam { border-top: 1px solid var(--vt-cizgi); margin-top: 6px; padding-top: 12px; font-size: 18px; }
.oyp-ozet-toplam dt { font-weight: 800; }
.oyp-ozet-not { font-size: 13px; margin: 10px 0 0; padding: 8px 10px; border-radius: 10px; background: var(--vt-zemin2); }
.oyp-ozet-not--teklif { border-left: 4px solid var(--vt-turuncu); }
.oyp-ozet-not--kargo { border-left: 4px solid var(--vt-yesil); }
.oyp-ozet-kalemler { list-style: none; margin: 0 0 10px; padding: 0 0 10px; border-bottom: 1px solid var(--vt-cizgi); max-height: 280px; overflow: auto; }
.oyp-ozet-kalemler li { display: flex; justify-content: space-between; gap: 10px; font-size: 13px; padding: 4px 0; }
.oyp-ozet-kalem-ad { overflow-wrap: anywhere; }
.oyp-ozet-adet { font-weight: 800; color: var(--vt-soluk); }
.oyp-ozet-kalem-tutar { white-space: nowrap; font-weight: 700; }
/* ödeme sayfası özet kutusu: masaüstünde kaydırırken yerinde kalır (ürün sayfasının mobil satın alma çubuğuyla — .oyp-yapiskan-cubuk — ilgisi yok) */
@media (min-width: 992px) { .oyp-ozet-yapiskan { position: sticky; top: 140px; } }

/* ---------------------------------------------------------------- ödeme */
.oyp-odeme-secenekleri { display: grid; gap: 10px; border: 0; padding: 0; margin: 0; }
.oyp-odeme-secenek { position: relative; display: flex; gap: 12px; align-items: flex-start; border: 2px solid var(--vt-cizgi); border-radius: 12px; padding: 14px; cursor: pointer; }
.oyp-odeme-secenek:has(input:checked) { border-color: var(--vt-turuncu); background: rgba(255, 161, 4, .07); }
.oyp-odeme-secenek .form-check-input { margin: 3px 0 0; flex: none; width: 20px; height: 20px; }
.oyp-odeme-secenek label { cursor: pointer; flex: 1; }
.oyp-odeme-secenek label::after { content: ""; position: absolute; inset: 0; }
.oyp-odeme-baslik { display: block; font-weight: 800; }
.oyp-odeme-aciklama { display: block; font-size: 13px; color: var(--vt-soluk); margin-top: 2px; }
.oyp-odeme-rozet { display: inline-block; margin-left: 6px; padding: 1px 8px; border-radius: 999px; background: rgba(15, 107, 62, .12); color: var(--vt-yesil); font-size: 12px; font-weight: 800; }
.oyp-odeme-not { font-size: 13px; color: var(--vt-soluk); margin: 12px 0 0; }
.oyp-secim-grubu { border: 0; padding: 0; margin: 0 0 4px; }
.oyp-onay { margin-bottom: 8px; font-size: 14px; }
.oyp-onay .form-check-input { width: 18px; height: 18px; }
.oyp-yasal-not { font-size: 12px; color: var(--vt-soluk); margin: 10px 0 0; line-height: 1.5; }
.oyp-hata-kutusu:focus { outline: 3px solid var(--vt-kirmizi); outline-offset: 2px; }

/* ---------------------------------------------------------------- teşekkür / takip */
.oyp-siparis-no { font-size: 24px; letter-spacing: .5px; margin: 6px 0; }
.oyp-kopyala { border: 1px solid var(--vt-cizgi); background: var(--vt-zemin); color: var(--vt-yazi); border-radius: 8px; padding: 2px 10px; font-size: 13px; font-weight: 600; cursor: pointer; vertical-align: middle; }
.oyp-kopyala:hover { border-color: var(--vt-turuncu); }
.oyp-iban-liste { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 12px; margin: 12px 0; }
.oyp-iban { border: 1px solid var(--vt-cizgi); border-radius: 12px; padding: 12px 14px; background: var(--vt-zemin2); }
.oyp-iban-banka { font-weight: 800; }
.oyp-iban-alici { font-size: 13px; color: var(--vt-soluk); margin: 2px 0 6px; }
.oyp-iban-no code { font-size: 14px; color: var(--vt-yazi); background: transparent; padding: 0; overflow-wrap: anywhere; }
.oyp-iban-aciklama, .oyp-odeme-tutar { font-size: 15px; }
.oyp-tablo { color: var(--vt-yazi); }
.oyp-tablo th, .oyp-tablo td { background: transparent !important; color: inherit; border-color: var(--vt-cizgi); }
.oyp-tablo tfoot th { font-weight: 400; }
.oyp-tablo-toplam th, .oyp-tablo-toplam td { font-size: 17px; font-weight: 800 !important; }
.oyp-durum-rozet { display: inline-block; padding: 4px 12px; border-radius: 999px; font-size: 13px; font-weight: 800; background: var(--vt-zemin2); border: 1px solid var(--vt-cizgi); }
.oyp-durum--kargoda, .oyp-durum--teslim_edildi { background: rgba(15, 107, 62, .12); color: var(--vt-yesil); border-color: transparent; }
.oyp-durum--teklif_bekliyor, .oyp-durum--odeme_bekleniyor { background: rgba(255, 161, 4, .16); color: var(--vt-turuncu-k); border-color: transparent; }
.oyp-durum--iptal { background: rgba(180, 35, 24, .1); color: var(--vt-kirmizi); border-color: transparent; }
.oyp-zaman-cizelgesi { list-style: none; margin: 14px 0 18px; padding: 0 0 0 18px; border-left: 3px solid var(--vt-cizgi); }
.oyp-zaman-cizelgesi li { position: relative; padding: 4px 0 10px 8px; }
.oyp-zaman-cizelgesi li::before { content: ""; position: absolute; left: -26px; top: 8px; width: 13px; height: 13px; border-radius: 50%; background: var(--vt-turuncu); box-shadow: 0 0 0 3px var(--vt-zemin); }
.oyp-zc-durum { font-weight: 700; }
.oyp-zc-tarih { color: var(--vt-soluk); font-size: 13px; margin-left: 6px; }
.oyp-kargo-bilgi { font-size: 15px; }
.oyp-iletisim-satiri { margin: 0; }
.oyp-durum--whatsapp_bekliyor { background: rgba(37, 211, 102, .14); color: var(--vt-yesil); border-color: transparent; }
.oyp-durum--onay_bekliyor { background: rgba(255, 161, 4, .16); color: var(--vt-turuncu-k); border-color: transparent; }
.oyp-onay-uyari { border-left: 4px solid var(--vt-turuncu); }
/* WhatsApp sipariş kodu sayfası (/siparis/whatsapp/<kod>) */
.oyp-wa-ikon { color: #25d366 !important; }
.oyp-wa-siparis .oyp-wa-kod strong { letter-spacing: 1px; }
.oyp-wa-siparis .oyp-wa-ac { display: inline-flex; align-items: center; justify-content: center; min-width: 240px; text-decoration: none; }
.oyp-wa-mesaj { font-family: ui-monospace, "Cascadia Mono", Consolas, monospace; font-size: 13px; line-height: 1.45; white-space: pre-wrap; background: rgba(37, 211, 102, .07) !important; border-color: rgba(37, 211, 102, .35) !important; }
.oyp-wa-aciklama { line-height: 1.45; }

/* ---------------------------------------------------------------- iletişim formu (kayıtlı /iletisim sayfasına eklenen) */
.oyp-iletisim-formu { margin-bottom: 8px; }
.oyp-iletisim-formu .btn-oyp, .oyp-vitrin .oyp-form .btn-oyp { cursor: pointer; }

/* ---------------------------------------------------------------- bildirim (site uyarı penceresi yoksa) */
.oyp-toast { position: fixed; right: 16px; bottom: 16px; z-index: 1090; max-width: 380px; width: calc(100% - 32px); background: var(--vt-zemin); color: var(--vt-yazi); border: 1px solid var(--vt-cizgi); border-top: 4px solid var(--vt-turuncu); border-radius: 14px; box-shadow: 0 14px 40px rgba(17, 23, 38, .22); padding: 16px 44px 16px 16px; transform: translateY(20px); opacity: 0; pointer-events: none; transition: transform .2s ease, opacity .2s ease; }
.oyp-toast[data-acik] { transform: none; opacity: 1; pointer-events: auto; }
.oyp-toast__kapat { position: absolute; top: 8px; right: 8px; width: 32px; height: 32px; border: 0; border-radius: 50%; background: transparent; color: var(--vt-soluk); font-size: 22px; line-height: 1; cursor: pointer; }
.oyp-toast__kapat:hover { background: var(--vt-zemin2); }
.oyp-toast__dugmeler { display: flex; gap: 8px; flex-wrap: wrap; }
.oyp-toast__dugmeler .btn-oyp { flex: 1 1 auto; padding: 9px 14px; font-size: 14px; text-decoration: none; cursor: pointer; }
.oyp-toast__hata { border-left: 4px solid var(--vt-kirmizi); padding-left: 10px; }
@media (prefers-reduced-motion: reduce) { .oyp-toast { transition: none; } }

/* ---------------------------------------------------------------- ödeme: siparişe özel ön bilgilendirme / sözleşme önizlemesi */
.oyp-belge-onizleme > summary { cursor: pointer; font-weight: 700; color: var(--vt-turuncu-k); padding: 6px 0; }
[data-theme="dark"] .oyp-belge-onizleme > summary { color: var(--vt-turuncu); }
.oyp-belge-kap { max-height: 460px; overflow: auto; border: 1px solid var(--vt-cizgi); border-radius: 10px; padding: 12px 16px; margin-top: 8px; font-size: 13.5px; line-height: 1.55; background: var(--vt-zemin); }
.oyp-belge-kap .oyp-belge h2 { font-size: 17px !important; margin: 18px 0 6px; padding-bottom: 4px; border-bottom: 1px solid var(--vt-cizgi); display: block; }
.oyp-belge-kap .oyp-belge:first-child h2 { margin-top: 0; }
.oyp-belge-kap .oyp-belge h3 { font-size: 14px; font-weight: 700; margin: 14px 0 4px; }
.oyp-belge-kap table { width: 100%; border-collapse: collapse; margin: 4px 0 10px; font-size: 13px; }
.oyp-belge-kap th, .oyp-belge-kap td { border: 1px solid var(--vt-cizgi); padding: 5px 7px; text-align: left; vertical-align: top; }
.oyp-belge-kap .oyp-belge-bilgi th { width: 36%; font-weight: 600; background: var(--vt-zemin2); }
.oyp-belge-kap .oyp-belge-tablo thead th { background: var(--vt-zemin2); }
.oyp-belge-kap .sag { text-align: right; }
.oyp-belge-kap .oyp-belge-alt { color: var(--vt-soluk); font-size: 12px; }
.oyp-belge-kap .oyp-belge-not { background: rgba(255, 161, 4, .1); border: 1px solid rgba(255, 161, 4, .35); border-radius: 8px; padding: 8px 10px; }
.oyp-belge-kap [data-oyp-belge-alan] { font-weight: 600; }

/* ---------------------------------------------------------------- ürün sayfası: mobilde yapışkan satın alma çubuğu (oyp-sepet.js)
   Yalnız #oyp-yapiskan.oyp-yapiskan-cubuk öğesini hedefler (eski genel .oyp-yapiskan sınıfı ödeme özet kutusunu gizliyordu). */
.oyp-yapiskan-cubuk { display: none; }
@media (max-width: 991.98px) {
  .oyp-yapiskan-cubuk { position: fixed; left: 0; right: 0; bottom: 0; z-index: 1035; display: flex; align-items: center; gap: 10px; padding: 10px 12px calc(10px + env(safe-area-inset-bottom, 0px)); background: var(--bg-tertiary, #fff); color: var(--text-primary, #111726); border-top: 1px solid var(--border-color, #e2e2e2); box-shadow: 0 -6px 20px rgba(17, 23, 38, .12); }
  .oyp-yapiskan-cubuk[hidden] { display: none !important; }
  /* fiyat alanı küçülmez (düğmeler kalan genişliği paylaşır); en çok %42 */
  .oyp-yapiskan__fiyat { flex: 0 0 auto; max-width: 42%; min-width: 0; font-weight: 800; font-size: 17px; line-height: 1.15; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  .oyp-yapiskan__fiyat small { display: block; font-size: 14px; font-weight: 600; color: var(--text-tertiary, #70747d); }
  /* fiyatı sorulan üründe kısa "Fiyat sorulur" iki satıra bölünür (uzun "Fiyat teyidiyle satılır" düğmeleri sıkıştırıyordu) */
  .oyp-yapiskan-cubuk--teklif .oyp-yapiskan__fiyat { font-size: 15px; line-height: 1.2; white-space: normal; max-width: 76px; color: var(--vt-turuncu-k, #b35c00); }
  .oyp-yapiskan__dugmeler { flex: 1 1 auto; display: flex; gap: 8px; justify-content: flex-end; }
  .oyp-yapiskan__dugmeler .btn-oyp { padding: 10px 12px; font-size: 14px; white-space: nowrap; cursor: pointer; }
  .oyp-yapiskan__etiket { display: block; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  /* oyp-sepet.js sigdir: yazı sığmazsa kademeli sıkıştırma (yazı boyutu 14 px'in altına inmez) */
  .oyp-yapiskan-cubuk--sik .oyp-yapiskan__dugmeler .btn-oyp { padding-left: 8px; padding-right: 8px; }
  .oyp-yapiskan-cubuk--sik .oyp-yapiskan__dugmeler .btn-oyp .bi { display: none; }
  .oyp-yapiskan-cubuk--cok-sik { gap: 6px; padding-left: 8px; padding-right: 8px; }
  .oyp-yapiskan-cubuk--cok-sik .oyp-yapiskan__fiyat { font-size: 15px; }
  .oyp-yapiskan-cubuk--cok-sik .oyp-yapiskan__fiyat small { display: none; }
  .oyp-yapiskan-cubuk--cok-sik .oyp-yapiskan__dugmeler { gap: 6px; }
  .oyp-yapiskan-cubuk--cok-sik .oyp-yapiskan__dugmeler .btn-oyp { padding-left: 6px; padding-right: 6px; }
  body.oyp-yapiskan-acik { padding-bottom: 76px !important; } /* site.bundle: body { padding: 0 !important } */
  /* (bildirim ve yüzen öğelerin çubuğa göre yeri: aşağıdaki "ALT BÖLGE" bloğu) */
}
@media print { .oyp-yapiskan-cubuk { display: none !important; } }

/* ---------------------------------------------------------------- mobil */
@media (max-width: 767.98px) {
  .oyp-kutu { padding: 16px; border-radius: 14px; }
  .oyp-sepet-liste { padding: 4px 14px; }
  .oyp-sepet-satir { grid-template-columns: 64px minmax(0, 1fr) auto; grid-template-areas: "resim bilgi sil" "resim adet tutar"; gap: 8px 12px; }
  .oyp-sepet-resim { grid-area: resim; align-self: start; }
  .oyp-sepet-resim img { width: 64px; height: 64px; }
  .oyp-sepet-bilgi { grid-area: bilgi; }
  .oyp-sepet-adet { grid-area: adet; }
  .oyp-sepet-tutar { grid-area: tutar; min-width: 0; white-space: nowrap; justify-self: end; align-self: center; }
  .oyp-sepet-sil { grid-area: sil; justify-self: end; align-self: start; }
  .oyp-siparis-no { font-size: 20px; }
  .oyp-toast { right: 8px; width: calc(100% - 16px); } /* (bottom: "ALT BÖLGE") */
}
@media print { .oyp-toast, .oyp-sepet-sil, .oyp-adet button, .oyp-kopyala { display: none !important; } }

/* 5 Ekim: kart düğmeleri alt alta — Sepete Ekle (turuncu) + Sipariş Ver (WhatsApp yeşili), ikisi de tam genişlik ve yazılı */
.oyp-kart-dugmeler { flex-direction: column; gap: 6px; }
.oyp-kart-dugmeler > .btn-oyp-cart:first-child .bi { display: inline-block; }
.btn-oyp-cart.oyp-kart-wa { width: 100% !important; gap: 6px; }
.btn-oyp-cart.oyp-kart-wa .bi { font-size: 16px; }

/* ---------------------------------------------------------------- doğrudan WhatsApp modu: düğmeler gerçek bağlantı (<a>) — telefon uyumu
   WhatsApp yeşili #25D366; dokunma hedefleri en az 44 px; tema ".btn-oyp:focus / .btn-oyp-cart:focus" odakta düğmeyi griye çeviriyor
   (Android'de intent ile uygulama açılınca sayfa yerinde kalır, bağlantı odakta kalır) → bağlantılarda asıl renk korunur */
.oyp-wa-dugme { background-color: #25D366 !important; color: #fff !important; }
a.btn-oyp.oyp-wa-dugme:focus, a.btn-oyp.oyp-wa-dugme:active, a.btn-oyp-cart.oyp-kart-wa:focus, a.btn-oyp-cart.oyp-kart-wa:active { background-color: #25D366 !important; color: #fff !important; border: 0 !important; }
a.btn-oyp.oyp-sepet-baglanti, a.btn-oyp.oyp-sepet-baglanti:focus, a.btn-oyp.oyp-sepet-baglanti:active { background-color: var(--oyp-primary, #ffa104) !important; color: #fff !important; border: 0 !important; }
a.btn-oyp-cart.oyp-kart-sepet:focus, a.btn-oyp-cart.oyp-kart-sepet:active { background-color: var(--oyp-primary, #ffa104) !important; color: var(--oyp-dark, #111726) !important; border: 0 !important; }
a.oyp-wa-dugme:focus-visible, a.oyp-sepet-baglanti:focus-visible, a.oyp-kart-sepet:focus-visible, a.oyp-kart-wa:focus-visible { outline: 3px solid #111726; outline-offset: 2px; }
[data-theme="dark"] a.oyp-wa-dugme:focus-visible, [data-theme="dark"] a.oyp-sepet-baglanti:focus-visible, [data-theme="dark"] a.oyp-kart-sepet:focus-visible, [data-theme="dark"] a.oyp-kart-wa:focus-visible { outline-color: #fff; }
.oyp-satinal a.btn-oyp { display: flex; align-items: center; justify-content: center; min-height: 48px; -webkit-tap-highlight-color: rgba(0, 0, 0, .08); touch-action: manipulation; }
#oyp-sepet-wa { display: flex; align-items: center; justify-content: center; min-height: 48px; text-decoration: none; touch-action: manipulation; }
/* kart: "Sepete Ekle" (<button>, turuncu; yalnız sepete ekler) + "Sipariş Ver" (<a>, WhatsApp yeşili) alt alta, tam genişlik;
   dar kartta (≈320–375 px ekranda iki sütun) etiket gizlenir, simge + aria-label kalır */
.oyp-kart-dugmeler { container-type: inline-size; width: 100%; min-width: 0; }
.oyp-kart-dugmeler > .btn-oyp-cart { display: flex; align-items: center; justify-content: center; gap: 6px; min-height: 44px; min-width: 0; width: 100% !important; padding: 0 8px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; text-decoration: none; border: 0; cursor: pointer; font-family: inherit; touch-action: manipulation; -webkit-tap-highlight-color: rgba(0, 0, 0, .08); }
.oyp-kart-dugmeler > .btn-oyp-cart .bi { flex: none; font-size: 16px; margin: 0; }
.oyp-kart-dugmeler .oyp-dugme-metin { min-width: 0; overflow: hidden; text-overflow: ellipsis; }
@container (max-width: 122px) { .oyp-kart-dugmeler .oyp-dugme-metin { display: none; } .oyp-kart-dugmeler > .btn-oyp-cart .bi { font-size: 20px; } }
@supports not (container-type: inline-size) { @media (max-width: 374.98px) { .oyp-kart-dugmeler .oyp-dugme-metin { display: none; } .oyp-kart-dugmeler > .btn-oyp-cart .bi { font-size: 20px; } } }
/* tema ".btn-oyp:focus / .btn-oyp-cart:focus" odakta düğmeyi griye çeviriyor: "Sepete Ekle"ye dokunduktan sonra düğme odakta kalır
   (sayfa değişmez) → asıl renk korunur */
.oyp-kart-dugmeler > button.btn-oyp-cart.oyp-kart-sepet:focus, .oyp-kart-dugmeler > button.btn-oyp-cart.oyp-kart-sepet:active { background-color: var(--oyp-primary, #ffa104) !important; color: var(--oyp-dark, #111726) !important; border: 0 !important; }
.oyp-satinal button.btn-oyp.oyp-sepet-ekle, .oyp-yapiskan__dugmeler button.btn-oyp.oyp-sepet-ekle { display: flex; align-items: center; justify-content: center; min-height: 48px; touch-action: manipulation; -webkit-tap-highlight-color: rgba(0, 0, 0, .08); }
.oyp-satinal button.btn-oyp.oyp-sepet-ekle:focus, .oyp-satinal button.btn-oyp.oyp-sepet-ekle:active, .oyp-yapiskan__dugmeler button.btn-oyp.oyp-sepet-ekle:focus, .oyp-yapiskan__dugmeler button.btn-oyp.oyp-sepet-ekle:active { background-color: var(--oyp-primary, #ffa104) !important; color: #fff !important; border: 0 !important; }
button.oyp-sepet-ekle:focus-visible, button.oyp-kart-sepet:focus-visible { outline: 3px solid #111726; outline-offset: 2px; }
[data-theme="dark"] button.oyp-sepet-ekle:focus-visible, [data-theme="dark"] button.oyp-kart-sepet:focus-visible { outline-color: #fff; }
/* adet seçici, sepet satırı, bildirim ve yapışkan çubuk: en az 44 px dokunma hedefi */
.oyp-satinal .number-spinner a { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; touch-action: manipulation; }
.oyp-adet { height: 48px; } /* 2 px çerçeve: iç düğmeler 44 px */
.oyp-adet button { width: 44px; touch-action: manipulation; }
.oyp-sepet-sil { width: 44px; height: 44px; }
.oyp-sepet-alt-cubuk .oyp-baglanti-dugme { min-height: 44px; padding: 0 6px; }
.oyp-devam { padding: 12px 0; }
.oyp-toast__dugmeler .btn-oyp { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; }
.oyp-toast__kapat { width: 44px; height: 44px; top: 4px; right: 4px; }
@media (max-width: 991.98px) {
  .oyp-yapiskan__dugmeler { min-width: 0; }
  .oyp-yapiskan__dugmeler .btn-oyp { display: inline-flex; align-items: center; justify-content: center; flex: 1 1 0; min-width: 0; min-height: 44px; overflow: hidden; text-overflow: ellipsis; text-decoration: none; touch-action: manipulation; }
  .oyp-yapiskan__dugmeler a.btn-oyp.oyp-wa-dugme:focus, .oyp-yapiskan__dugmeler a.btn-oyp.oyp-wa-dugme:active { background-color: #25D366 !important; color: #fff !important; }
}
@media (max-width: 374.98px) {
  /* (tema alt bilgisinin dar ekran düzeni: "TELEFON DÜZENİ" bloğu — eski overflow-wrap:anywhere kuralı bağlantıları harf harf kırıyordu) */
  .oyp-yapiskan-cubuk { gap: 8px; padding-left: 10px; padding-right: 10px; }
  .oyp-yapiskan__fiyat { font-size: 15px; }
  .oyp-yapiskan__fiyat small { display: none; }
  .oyp-yapiskan__dugmeler { gap: 6px; }
  .oyp-yapiskan__dugmeler .btn-oyp { padding: 10px 8px; }
  .oyp-yapiskan__dugmeler .btn-oyp .bi { display: none; } /* 320 px: yazılar simgesiz sığar (JS ölçümü çalışmasa da) */
}

/* ---------------------------------------------------------------- "Sepete eklendi" bildirimi */
.oyp-toast__baslik { font-size: 15px; line-height: 1.4; }
.oyp-toast__baslik .bi-check-circle-fill { color: var(--vt-yesil); }
.oyp-toast__urun { font-size: 13.5px; color: var(--vt-soluk); line-height: 1.4; overflow: hidden; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow-wrap: anywhere; }
.oyp-toast__not { font-style: italic; }

/* ---------------------------------------------------------------- telefonda yüzen "Sepete Git (N)" (oyp-sepet.js sepetGitKur)
   Ortada, sağdaki WhatsApp düğmesiyle aynı satırda (360 px altında solda); alttaki çubuk açıkken onun üstünde; bildirim açıkken
   gizli (bildirimde zaten "Sepete Git" var); masaüstünde yok (üst menüdeki sepet rozeti). Yeri: "ALT BÖLGE" bloğu. */
.oyp-sepet-git { display: none; }
@media (max-width: 991.98px) {
  .oyp-sepet-git { position: fixed; left: 50%; bottom: calc(18px + env(safe-area-inset-bottom, 0px)); z-index: 1034; transform: translateX(-50%); display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 48px; max-width: calc(100% - 32px); padding: 0 20px; border-radius: 999px; background: var(--oyp-primary, #ffa104); color: #111726 !important; font-size: 15px; font-weight: 800; line-height: 1; white-space: nowrap; text-decoration: none !important; box-shadow: 0 8px 24px rgba(17, 23, 38, .28); touch-action: manipulation; -webkit-tap-highlight-color: rgba(0, 0, 0, .08); transition: opacity .15s ease, bottom .15s ease; }
  .oyp-sepet-git[hidden] { display: none !important; }
  .oyp-sepet-git .bi { font-size: 19px; }
  .oyp-sepet-git__sayi { font-variant-numeric: tabular-nums; }
  .oyp-sepet-git:focus-visible { outline: 3px solid #111726; outline-offset: 3px; }
  body.oyp-sepet-git-acik { padding-bottom: 76px !important; } /* son satırlar düğmenin altında kalmasın (site.bundle: body { padding: 0 !important }) */
  body.oyp-yapiskan-acik.oyp-sepet-git-acik { padding-bottom: 140px !important; }
}
@media print { .oyp-sepet-git { display: none !important; } }

/* ---------------------------------------------------------------- sepet sayfası: telefonda altta sabit toplam + "WhatsApp ile Toplu Sipariş Ver"
   (oyp-sepet.js sepetCubukAyarla: sepet doluyken ve özet hesaplanınca görünür; açıkken özet kutusundaki aynı düğme gizlenir) */
.oyp-sepet-cubuk { display: none; }
.oyp-toplu-wa { white-space: normal; line-height: 1.25; }
@media (max-width: 991.98px) {
  .oyp-sepet-cubuk { position: fixed; left: 0; right: 0; bottom: 0; z-index: 1035; display: block; padding: 10px 12px calc(10px + env(safe-area-inset-bottom, 0px)); background: var(--bg-tertiary, #fff); color: var(--text-primary, #111726); border-top: 1px solid var(--border-color, #e2e2e2); box-shadow: 0 -6px 20px rgba(17, 23, 38, .14); }
  .oyp-sepet-cubuk[hidden] { display: none !important; }
  .oyp-sepet-cubuk__ozet { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; margin-bottom: 8px; min-width: 0; }
  .oyp-sepet-cubuk__etiket { font-size: 13px; color: var(--text-tertiary, #70747d); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; min-width: 0; }
  .oyp-sepet-cubuk__tutar { font-size: 19px; font-weight: 800; white-space: nowrap; }
  .oyp-sepet-cubuk__tutar small { font-size: 12px; font-weight: 600; color: var(--text-tertiary, #70747d); }
  .oyp-sepet-cubuk .oyp-sepet-cubuk__dugme { display: flex; align-items: center; justify-content: center; width: 100%; min-height: 52px; margin: 0; padding: 10px 14px; font-size: 16px; font-weight: 800; text-decoration: none; touch-action: manipulation; -webkit-tap-highlight-color: rgba(0, 0, 0, .08); }
  .oyp-sepet-cubuk a.oyp-wa-dugme:focus, .oyp-sepet-cubuk a.oyp-wa-dugme:active, .oyp-sepet-cubuk button.oyp-wa-dugme:focus { background-color: #25D366 !important; color: #fff !important; border: 0 !important; }
  body.oyp-sepet-cubuk-acik { padding-bottom: 132px !important; }
  body.oyp-sepet-cubuk-acik #oyp-sepet-ozet-kutu .oyp-sepet-ana-dugme { display: none !important; }
}
@media (max-width: 374.98px) { .oyp-sepet-cubuk .oyp-sepet-cubuk__dugme { font-size: 14.5px; padding: 10px 8px; } .oyp-sepet-cubuk .oyp-sepet-cubuk__dugme .bi { margin-right: 6px !important; } }
@media print { .oyp-sepet-cubuk { display: none !important; } }
#oyp-sepet-wa:focus, #oyp-sepet-wa:active { background-color: #25D366 !important; color: #fff !important; border: 0 !important; }

/* ---------------------------------------------------------------- "Sepeti geri yükle" (oyp-sepet.js: WhatsApp'a gönderimle boşalan sepet) */
.oyp-sepet-geri-kutu { text-align: left; margin: 0 0 20px; padding: 12px 14px; border-radius: 12px; background: rgba(37, 211, 102, .08); border-left: 4px solid #25D366; font-size: 15px; }
.oyp-sepet-geri-kutu .btn-oyp { display: inline-flex; align-items: center; min-height: 44px; cursor: pointer; }
.oyp-toast__aciklama { font-size: 14px; color: var(--vt-soluk); line-height: 1.4; }

/* ---------------------------------------------------------------- telefon (< 992 px): okunabilirlik (yazı en az 14 px) ve dokunma hedefleri
   (en az 44 px). Yalnız telefonda / tablette; masaüstü görünümü değişmez. Kapsam: tema başlığı, kırıntı, ürün / liste / sepet / iletişim
   sayfaları ve alt bilgi (kayıtlı sayfaların CSS'i sitenin; burada yalnız boyut düzeltmesi). Adet girdileri 16 px: iOS odakta yakınlaştırmasın. */
@media (max-width: 991.98px) {
  #product-detail code.oyp-selectable, .oyp-yedek-tarih, .oyp-tahmini-not, .oyp-wa-not, .oyp-urun-tel, .oyp-havale-baglanti .oyp-baglanti-dugme,
  .product-card .product-stock span, .minimal-pager a, .minimal-pager span,
  .oyp-sepet-alt, .oyp-sepet-stok, .oyp-sepet-not, .oyp-sepet-birim-ek, .oyp-teklif-rozet, .oyp-teklif-metin, .oyp-tahmini-rozet,
  .oyp-ozet-ek, .oyp-ozet-not, .oyp-ozet-kalemler li, .oyp-guven-listesi, .oyp-sepet-cubuk__etiket, .oyp-sepet-cubuk__tutar small,
  .oyp-toast__urun, .oyp-toast .small, .oyp-wa-aciklama, .oyp-yasal-not, .oyp-odeme-aciklama, .oyp-odeme-not, .oyp-iban-alici, .oyp-zc-tarih,
  .oyp-contact .oyp-card .lbl, .oyp-istege-bagli, .oyp-wa-cakisma, .product-card .product-badges .badge, .product-card .product-rating,
  .oyp-fiyat-sor .form-label, .oyp-havale-baglanti .oyp-baglanti-dugme,
  footer small[data-oyp-wa-hat], footer small[data-oyp-wa-hat] a, footer small[data-oyp-wa-hat] strong, footer small[data-oyp-kargo] { font-size: 14px !important; }
  /* dokunma hedefleri: bağlantının kutusu en az 44 px (görünüm aynı; satır içi bağlantılara dikey alan) */
  .breadcrumb .breadcrumb-item > a, #btnShareThis, #dvBrandBox a, .oyp-urun-tel a, .oyp-guven-listesi a, footer small[data-oyp-wa-hat] a,
  .oyp-contact .oyp-card .val a, .oyp-legal a, .oyp-iletisim-formu p.small a, #product-detail .list-group-item > a {
    display: inline-flex; align-items: center; min-height: 44px;
  }
  .oyp-contact .oyp-card .val a { min-width: 44px; justify-content: center; }
  .breadcrumb { align-items: center; }
  .breadcrumb .breadcrumb-item { display: flex; align-items: center; min-height: 44px; } /* bağlantısız son basamak ve ayraç da ortada */
  .breadcrumb .breadcrumb-item > a { min-width: 44px; }
  a.btn.btn-sm.btn-oyp-dark { display: inline-flex; align-items: center; min-height: 44px; } /* üst şerit "Başvuru yap" */
  a.logo { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; }
  .product-card .card-img-top > a, .banner > a { display: block; }
  #toggle-article { min-height: 44px; }
  footer.footer .nav-link { display: flex; align-items: center; min-height: 44px; }
  .minimal-pager > a, .minimal-pager > span { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; }
  .owl-dots .owl-dot { display: inline-flex !important; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; }
  .oyp-satinal .number-spinner input[data-oyp-adet-girdi] { height: 44px; font-size: 16px; }
  .oyp-adet input { width: 48px; font-size: 16px; }
  /* sipariş kodu / takip / teşekkür sayfaları: kopyala düğmeleri, metin düğmeleri, iletişim satırı, mesaj kutusu */
  .oyp-kopyala { font-size: 14px; min-height: 44px; padding: 0 14px; }
  .oyp-vitrin .oyp-baglanti-dugme, .oyp-iletisim-satiri a { display: inline-flex; align-items: center; min-height: 44px; }
  .oyp-wa-mesaj { font-size: 14px !important; }
  /* formlar: alanlar en az 44 px; 16 px yazı (iOS odakta yakınlaştırmasın) */
  .form-control:not(textarea), .form-select { min-height: 44px; }
  .form-control, .form-select { font-size: 16px; }
  /* kayıtlı sayfalar: markalar, mağazalar, B4B başvurusu, bilgi sayfaları (Word'den gelen satır içi 10 pt yazılar dahil) */
  .mk-harfler a { display: inline-flex; align-items: center; justify-content: center; width: auto !important; min-width: 44px !important; max-width: none !important; min-height: 44px; }
  #editor.article-content ul li > a:first-child:last-child { display: inline-flex; align-items: center; min-height: 44px; } /* yalnız bağlantıdan oluşan liste satırları */
  .mk-liste a { display: flex; align-items: center; min-height: 44px; }
  a.aStorePhone { display: inline-flex; align-items: center; min-height: 44px; }
  .mk-one a span, a.aStorePhone, .oyp-page .tag, .oyp-page .note, .oyp-codebox div, .oyp-stat .lbl, .oyp-bt-sub, .oyp-bt-ibanlabel, .oyp-odeme-bilgi,
  .b4b-hero-badge, .b4b-benefit-item span, .b4b-info-card h6, .b4b-info-card p, .b4b-info-card li, .b4b-section-title, #b4bForm .form-label,
  #b4bForm .form-label span, .b4b-upload-label, .b4b-upload-hint, #b4bForm .form-check-label { font-size: 14px !important; }
  #editor.article-content span[style*="font-size"], #editor.article-content p.MsoNormal span, #editor.article-content p.western span { font-size: max(14px, 1em) !important; }
  .oyp-odeme-bilgi a { display: inline-flex; align-items: center; min-height: 44px; }
}

/* ---------------------------------------------------------------- İLETİŞİM — "WhatsApp her yerde" (whatsapp.mjs yer tutucuları + iletisimBaglantiHtml)
   Yüzen düğme: her sayfada sağ altta (numara yoksa turuncu telefon). Telefondaki yeri, alttaki çubuklar ve diğer yüzen öğelerle düzeni:
   "ALT BÖLGE" bloğu. Katmanlar: düğme ve "yukarı çık" 1033 < Sepete Git 1034 < çubuklar 1035 < çerez 1085 < bildirim 1090. */
.oyp-wa-yuzen { position: fixed; right: 16px; bottom: calc(14px + env(safe-area-inset-bottom, 0px)); z-index: 1033; display: inline-flex; align-items: center; justify-content: center; width: 56px; height: 56px; border-radius: 50%; background: #25D366; color: #fff !important; font-size: 30px; line-height: 1; text-decoration: none !important; box-shadow: 0 8px 24px rgba(17, 23, 38, .28); touch-action: manipulation; -webkit-tap-highlight-color: rgba(0, 0, 0, .08); transition: opacity .15s ease, bottom .15s ease, transform .15s ease; }
.oyp-wa-yuzen:hover { background: #1ebe5b; transform: translateY(-2px); }
.oyp-wa-yuzen:focus-visible { outline: 3px solid #111726; outline-offset: 3px; }
.oyp-wa-yuzen--tel { background: var(--oyp-primary, #ffa104); color: #111726 !important; font-size: 24px; }
.oyp-wa-yuzen--tel:hover { background: #f29600; }
.oyp-wa-yuzen__metin { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
@media (min-width: 992px) { .oyp-wa-yuzen { right: 24px; bottom: 24px; width: 60px; height: 60px; } }
@media print { .oyp-wa-yuzen { display: none !important; } }
/* üst menü: masaüstünde sepetin solunda WhatsApp; telefonda logo satırının sağında (sepet simgesiyle yan yana) */
.oyp-header-wa__ikon .bi-whatsapp { font-size: 24px; color: #1faa52; }
.oyp-header-wa .nav-link:hover .oyp-header-wa__ikon { background: #dcf8e6 !important; }
.oyp-mobil-sepet-kap { display: flex; align-items: center; gap: 6px; }
.oyp-mobil-wa { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; border-radius: 50%; background: #25D366; color: #fff !important; font-size: 22px; text-decoration: none !important; }
.oyp-mobil-wa--tel { background: var(--oyp-light-gray, #f4f4f4); color: var(--text-primary, #111726) !important; font-size: 19px; }
@media (min-width: 992px) { .oyp-mobil-wa { display: none !important; } }
/* dar telefonlar: logo ortada, solda ☰, sağda WhatsApp + sepet (44 px) — çakışmasın diye simgeler kenara yaslanır, 360 px altında logo küçülür */
@media (max-width: 389.98px) { .oyp-mobil-sepet-kap { right: 0; } .oyp-mobil-menu { left: 0; } }
@media (max-width: 359.98px) { .oyp-mobil-sepet-kap { gap: 4px; } a.logo img { max-width: 96px; height: auto; } }
.oyp-mobil-menu__liste a.oyp-mobil-menu__wa .bi { color: #1faa52; }
/* alt bilgi */
footer .oyp-alt-wa, footer small[data-oyp-wa-hat] a { color: #128c4a; font-weight: 700; }
/* ürün / sepet / teklif kutuları: WhatsApp birincil bağlantı, telefon küçük ikincil */
.oyp-urun-tel__wa, .oyp-wa-baglanti { color: #128c4a !important; font-weight: 700; text-decoration: none; }
.oyp-urun-tel__wa:hover, .oyp-wa-baglanti:hover { text-decoration: underline; }
.oyp-tel-ikincil { color: var(--text-tertiary, #70747d); font-size: 13px; white-space: nowrap; }
.oyp-tel-ikincil a { color: inherit !important; text-decoration: none; }
.oyp-tel-ikincil a:hover { text-decoration: underline; }
.oyp-takip-wa-dugme { margin-bottom: 12px !important; }
.oyp-takip-wa-dugme .btn-oyp, .oyp-wa-form-not { display: inline-flex; align-items: center; }
.oyp-wa-form-not { display: block; }
.oyp-b4b-wa-not { margin: 0 0 14px; padding: 10px 12px; border-radius: 10px; background: rgba(37, 211, 102, .08); border-left: 4px solid #25D366; font-size: 14px; }
/* /iletisim: en üstte büyük WhatsApp çağrısı */
.oyp-wa-cagri { display: flex; align-items: center; gap: 16px; flex-wrap: wrap; margin: 4px 0 24px; padding: 18px 20px; border-radius: 16px; background: linear-gradient(135deg, #e9fbf0, #d4f6e2); border: 1px solid #a8e3bd; color: #0b3d22; }
.oyp-wa-cagri__ikon { flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center; width: 56px; height: 56px; border-radius: 50%; background: #25D366; color: #fff; font-size: 30px; }
.oyp-wa-cagri__metin { flex: 1 1 220px; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.oyp-wa-cagri__metin strong { font-size: 18px; }
.oyp-wa-cagri__metin span { font-size: 15px; }
.oyp-wa-cagri__no { white-space: nowrap; }
.oyp-wa-cagri__dugme { flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center; min-height: 48px; text-decoration: none; }
[data-theme="dark"] .oyp-wa-cagri { background: #12301f; border-color: #1f6b3d; color: #dff7e8; }
@media (max-width: 575.98px) { .oyp-wa-cagri { padding: 14px; gap: 12px; } .oyp-wa-cagri__dugme { width: 100%; } }
@media (max-width: 991.98px) {
  .oyp-tel-ikincil, .oyp-tel-ikincil a { font-size: 14px; }
  .oyp-tel-ikincil a, .oyp-urun-tel__wa, .oyp-wa-baglanti, footer .oyp-alt-wa { display: inline-flex; align-items: center; min-height: 44px; }
}

/* ---------------------------------------------------------------- ALT BÖLGE YÖNETİCİSİ (telefon; oyp-sepet.js altBolgeKur)
   Ekranın altındaki sabit öğeler tek düzende yığılır:
   - en altta tam genişlik çubuk: ürün sayfasının yapışkan satın alma çubuğu (#oyp-yapiskan) ya da sepetin alt çubuğu (#oyp-sepet-cubuk);
   - çubuğun üstünde aynı satırda yüzen öğeler: sağda WhatsApp (numarasızken "Ara"), ortada "Sepete Git (N)" (360 px altında solda);
     WhatsApp'ın üstünde "yukarı çık" (sitenin .layout-fixed-buttons > .backToTopBtn düğmesi; 44 px, dairenin tamamı dokunulur);
   - bildirim (toast) çubuğun hemen üstünde açılır; açıkken yüzen öğeler gizlenir (bildirimde zaten "Sepete Git" var);
   - çerez bandı açıkken yüzen öğeler gizlenir (band gövdenin ilk çocuğu: ~ seçicisi);
   - metin alanı odaktayken (telefon klavyesi açık; body.oyp-klavye-acik) çubuklar ve yüzen öğeler gizlenir: odaklanan alanı örtmesin.
   --oyp-alt-cubuk: görünen çubuğun ölçülen yüksekliği (güvenli alan dolgusu dahil) — JS gövdeye yazar; JS ölçemezse body sınıfı yedeği.
   Güvenli alan (iPhone ev çubuğu): env(safe-area-inset-bottom) — viewport-fit=cover ile (tema kabuğu). */
@media (max-width: 991.98px) {
  body.oyp-yapiskan-acik { --oyp-alt-cubuk: 66px; }
  body.oyp-sepet-cubuk-acik { --oyp-alt-cubuk: 122px; }
  .oyp-wa-yuzen { bottom: calc(var(--oyp-alt-cubuk, 0px) + 14px); bottom: calc(max(var(--oyp-alt-cubuk, 0px), env(safe-area-inset-bottom, 0px)) + 14px); }
  .oyp-sepet-git { bottom: calc(var(--oyp-alt-cubuk, 0px) + 18px); bottom: calc(max(var(--oyp-alt-cubuk, 0px), env(safe-area-inset-bottom, 0px)) + 18px); } /* 48 px hap, 56 px düğmeyle aynı orta çizgi */
  .oyp-toast { bottom: calc(var(--oyp-alt-cubuk, 0px) + 10px); bottom: calc(max(var(--oyp-alt-cubuk, 0px), env(safe-area-inset-bottom, 0px)) + 10px); }
  /* "yukarı çık": WhatsApp düğmesinin üstünde, ortası aynı dikeyde (56 px düğme → 44 px; sağ 16 + 6) */
  .layout-fixed-buttons { right: 22px !important; bottom: calc(var(--oyp-alt-cubuk, 0px) + 82px) !important; bottom: calc(max(var(--oyp-alt-cubuk, 0px), env(safe-area-inset-bottom, 0px)) + 82px) !important; z-index: 1033 !important; }
  .layout-fixed-buttons .backToTopBtn { width: 44px; height: 44px; margin: 0 !important; padding: 0 !important; border: 0 !important; border-radius: 50% !important; font-size: 20px; line-height: 1; box-shadow: 0 0 0 2px #fff, 0 6px 18px rgba(17, 23, 38, .25); }
  .layout-fixed-buttons .backToTopBtn a { display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; border-radius: 50%; touch-action: manipulation; -webkit-tap-highlight-color: rgba(0, 0, 0, .08); }
  footer.footer { padding-bottom: calc(84px + env(safe-area-inset-bottom, 0px)); } /* alt bilginin son satırı yüzen düğmelerin altında kalmasın */
  body.oyp-klavye-acik .oyp-yapiskan-cubuk, body.oyp-klavye-acik .oyp-sepet-cubuk, body.oyp-klavye-acik .oyp-sepet-git,
  body.oyp-klavye-acik .oyp-wa-yuzen, body.oyp-klavye-acik .layout-fixed-buttons { display: none !important; }
}
/* dar telefon (< 360 px): ortadaki hap WhatsApp düğmesine değer → solda, düğmeyle aynı satırda */
@media (max-width: 359.98px) {
  .oyp-sepet-git { left: 12px; transform: none; max-width: calc(100% - 12px - 16px - 56px - 8px); padding: 0 14px; }
}
/* masaüstü: "yukarı çık" WhatsApp düğmesinin (sağ 24, alt 24, 60 px) üstünde */
@media (min-width: 992px) { .layout-fixed-buttons { right: 25px !important; bottom: 98px !important; } }
.layout-fixed-buttons { transition: opacity .15s ease; }
body.oyp-toast-acik .oyp-wa-yuzen, body.oyp-toast-acik .oyp-sepet-git, body.oyp-toast-acik .layout-fixed-buttons,
#oyp-cerez-bandi:not([hidden]) ~ .oyp-wa-yuzen, #oyp-cerez-bandi:not([hidden]) ~ .oyp-sepet-git, #oyp-cerez-bandi:not([hidden]) ~ .layout-fixed-buttons { opacity: 0; pointer-events: none; }
@media print { .layout-fixed-buttons { display: none !important; } }

/* ---------------------------------------------------------------- TELEFON DÜZENİ (320 / 360 / 375 / 414 px ve 768 px tablet)
   Taşma, okunabilirlik ve dokunma: yatay kaydırma olmasın (taşan öğe görünümü genişletip sağa yaslı sabit öğeleri ekrandan itmesin),
   yazı en az 14 px, metin girdileri 16 px (iOS odakta yakınlaştırmasın; tema kabuğunda maximum-scale yok — iki parmakla yakınlaştırma açık),
   dokunma hedefleri en az 44 px. Masaüstü (≥ 992 px) görünümü değişmez. */
@media (max-width: 991.98px) {
  /* güvenlik ağı: sayfa içeriğindeki bir öğe taşarsa kırpılır (tablolar ayrıca kaydırmalı kapsayıcıda — .oyp-tablo-kaydir) */
  main[role="main"], footer.footer { overflow-x: clip; }
  /* metin girdileri: 16 px (sıralama seçici 15 px, B4B formu 14 px, kayıtlı sayfa formları) */
  input[type="text"], input[type="search"], input[type="tel"], input[type="email"], input[type="number"], input[type="password"], input[type="url"],
  input:not([type]), select, textarea { font-size: 16px !important; }
  /* tema alt bilgisi: bağlantı listesi iki sütun; site.bundle "li { width: 48%; white-space: nowrap }" ızgara hücresini daraltıp
     yazıyı taşırıyordu (320 px'te harf harf kırılıyordu) */
  .footerItems .ulNav { gap: 0 12px !important; }
  .footerItems .ulNav li { width: auto; min-width: 0; white-space: normal; }
  .footerItems .ulNav .nav-link { white-space: normal; overflow-wrap: break-word; word-break: normal; padding-left: 0; padding-right: 0; line-height: 1.25; }
  /* üst aramanın anlık sonuçları: başlık yapışkan olduğu için açılır liste ekran yüksekliğiyle sınırlı, kendi içinde kayar (aksi hâlde
     ekranın altında kalan sonuçlara ulaşılamazdı); sonuç bağlantıları 44 px */
  #dvLayoutSearchResults { max-height: calc(100vh - 240px); max-height: calc(100dvh - 240px); overflow-y: auto; overscroll-behavior: contain; -webkit-overflow-scrolling: touch; }
  #dvLayoutSearchResults a { min-height: 44px; }
  #dvLayoutSearchResults a.chip, #dvLayoutSearchResults a.badge, #dvLayoutSearchResults .layout-search-results > .d-flex > a, #dvLayoutSearchResults .description a { display: inline-flex; align-items: center; }
  #dvLayoutSearchResults a.btn { display: inline-flex; align-items: center; justify-content: center; }
  /* liste filtresi (offcanvas): 44 px kapatma ve bağlantılar; kategori / marka listeleri iç içe kaydırma kutusu olmadan (paneli kaydır) */
  #offcanvasFilters { max-width: 100%; }
  #offcanvasFilters .btn-close { width: 44px; height: 44px; padding: 0; margin: -6px -6px -6px auto; background-size: 14px; }
  #offcanvasFilters .nav-link { display: flex; align-items: center; min-height: 44px; padding-top: 6px; padding-bottom: 6px; line-height: 1.3; }
  #offcanvasFilters .light-scroll { max-height: none !important; overflow: visible !important; }
  #offcanvasFilters h4 a { display: inline-flex; align-items: center; min-height: 44px; }
  /* kayıtlı sayfalardaki ve yasal metinlerdeki tablolar: yana kaydırılabilir kapsayıcı (tema.tabloKaydir) */
  .oyp-tablo-kaydir td, .oyp-tablo-kaydir th { overflow-wrap: break-word; }
  .oyp-belge-bilgi td, .oyp-belge-bilgi th { overflow-wrap: anywhere; }
  /* alt bilgi: telefon bloğundaki "WhatsApp'tan yazın" (small içinde 13 px) ve sosyal medya simgeleri; liste kartı ürün adı ve vitrin
     okları (tablet: 2 satırlık ad 35 px) — en az 44 px dokunma alanı, 14 px yazı */
  footer small .oyp-alt-wa, footer .features-bar-box small, footer small.text-muted { font-size: 14px !important; }
  .footerItems .social-icons a { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; }
  .product-card .product-name a, .oyp-sepet-ad { display: block; min-height: 44px; }
  a[id$="-prev-btn"], a[id$="-next-btn"] { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; }
  /* B4B başvurusu: onay kutusu satırı 44 px, adım numaraları okunur */
  #b4bForm .form-check { display: flex; align-items: center; gap: 8px; min-height: 44px; padding-left: 0; }
  #b4bForm .form-check .form-check-input { float: none; flex: none; margin: 0; width: 22px; height: 22px; }
  #b4bForm .form-check .form-check-label { display: flex; align-items: center; min-height: 44px; }
  /* üst menü sepet rozeti (sayı) telefonda okunur */
  .oyp-mobil-sepet .oyp-sepet-rozet { min-width: 20px; height: 20px; line-height: 20px; font-size: 14px; padding: 0 5px; }
  .b4b-info-step-num { font-size: 14px !important; min-width: 28px; min-height: 28px; }
  /* /kategoriler: araç markası kartları telefonda iki sütun (tek sütunda sayfa ~16 bin px uzuyordu) */
  .row > .col-12.col-sm-6.col-md-4.col-lg-2:has(> a > .category-card) { width: 50%; }
  .category-card .card-body { padding: 10px !important; }
  .category-card .card-body > .mb-3 { margin-bottom: 8px !important; }
  .category-card .card-body > .mb-3 > div { height: 84px !important; }
  .category-card .card-title { font-size: 14px; }
}
.oyp-tablo-kaydir { max-width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; overscroll-behavior-x: contain; margin: 0 0 1rem; }
.oyp-tablo-kaydir > table { margin-bottom: 0 !important; }
/* alt bilgi bağlantı sütunu telefonda tam genişlik (iki sütunlu liste rahat sığar) */
@media (max-width: 575.98px) { .footerItems > div:not(:first-child) { width: 100%; } }
@media (max-width: 374.98px) { .footerItems .ulNav li a { font-size: 16px !important; } }

/* liste sayfalaması: etkin sayfa belirgin (sitenin CSS'i işletim sistemi koyu temasında açık zemin veriyordu — tema [data-theme] değil);
   telefonda yalnız yakın sayfalar + Önceki / Sonraki simgeleri (tema.mjs sayfalamaHtml: .pager-uzak, .pager-uc); yine sığmazsa alt satıra iner */
.minimal-pager { flex-wrap: wrap; row-gap: 8px; }
.minimal-pager .pager-btn { background: #fff; border: 1px solid #d1d5db; color: #374151; }
.minimal-pager .pager-btn:hover { background: #f3f4f6; border-color: #9ca3af; color: #111726; }
.minimal-pager .pager-current, .minimal-pager [aria-current="page"] { background: #111726; border: 1px solid #111726; color: #fff; font-weight: 800; }
[data-theme="dark"] .minimal-pager .pager-btn { background: #1f2937; border-color: #4b5563; color: #d1d5db; }
[data-theme="dark"] .minimal-pager .pager-current, [data-theme="dark"] .minimal-pager [aria-current="page"] { background: #ffa104; border-color: #ffa104; color: #111726; }
.minimal-pager .pager-dots { background: none; border: 0; }
@media (max-width: 767.98px) { .minimal-pager .pager-text { display: none !important; } .minimal-pager .pager-btn .bi { font-size: 18px; } }
@media (max-width: 575.98px) { .minimal-pager { gap: 6px; } .minimal-pager .pager-uzak { display: none !important; } }
@media (max-width: 413.98px) { .minimal-pager .pager-uc, .minimal-pager .pager-dots { display: none !important; } }

/* sepet satırı, 360 px altı: adet seçici (3 × 44 px) ve satır tutarı ayrı satırlarda (320 px'te "+" tutarın üstüne biniyordu) */
@media (max-width: 359.98px) {
  .oyp-sepet-liste { padding-left: 12px; padding-right: 12px; }
  .oyp-sepet-satir { grid-template-columns: 56px minmax(0, 1fr) 44px; grid-template-areas: "resim bilgi sil" "resim adet adet" "resim tutar tutar"; gap: 6px 10px; }
  .oyp-sepet-resim img { width: 56px; height: 56px; }
  .oyp-sepet-tutar { justify-self: start; text-align: left; }
}

/* çerez bandı (oyp-analitik.js): kapatma düğmesi 44 px */
@media (max-width: 991.98px) { .oyp-cb__kapat { width: 44px !important; height: 44px !important; top: 4px !important; right: 4px !important; } }

/* ================================================================ TELEFON DÜZELTMELERİ (5 Ekim gece, denetim turu 1) */
/* ürün sayfası sekmeleri (Ürün Açıklaması / Teknik Özellikler / Değerlendirmeler): site.bundle 768 px ve altında sekme başlığını ve
   içeriğini display:none!important ile gizliyordu (telefonda açıklama, teknik özellik tablosu ve değerlendirme hiç görünmüyordu).
   Telefonda sekmeler 44 px'lik başlıklarla görünür, sığmazsa alt satıra iner; içerik okunur boyutta. "Tüm özellikler ↓" sekmeye kaydırır. */
@media (max-width: 991.98px) {
  html body #product-detail-tabs { display: flex !important; flex-wrap: wrap; gap: 0 4px; margin-top: 8px; }
  html body #product-detail-tabs-content { display: block !important; padding-top: 16px; font-size: 15px; overflow-wrap: break-word; }
  #product-detail-tabs .nav-item { flex: 0 0 auto; }
  #product-detail-tabs .nav-link { display: flex; align-items: center; min-height: 44px; padding: 8px 12px; font-size: 15px; font-weight: 700; white-space: nowrap; }
  #product-detail-tabs-content .product-attributes { font-size: 14px; table-layout: fixed; width: 100%; }
  #product-detail-tabs-content .product-attributes td { overflow-wrap: anywhere; }
  #product-detail-tabs-content .oyp-pdesc-note { font-size: 14px; }
  #product-detail-tabs-content .oyp-pdesc-toggle { min-height: 44px; }
  a.oyp-tum-oz { display: inline-flex; align-items: center; gap: 6px; min-height: 44px; }
}
/* fiyat sorusu (<details>): başlık her genişlikte 44 px dokunma hedefi */
.oyp-fiyat-sor > summary { display: flex; align-items: center; min-height: 44px; list-style-position: inside; }
@media (max-width: 991.98px) {
  /* yasal metinler (Word'den gelen satır içi "line-height:12px" + 16 px'e büyütülen yazı satırları üst üste bindiriyordu); bölünemeyen
     uzun ifade ("onlineyedekparca.com adresindeki" — arada bölünmez boşluk) dar ekranda taşmasın */
  #editor.article-content p[style*="line-height"], #editor.article-content span[style*="line-height"], #editor.article-content li[style*="line-height"],
  #editor.article-content div[style*="line-height"] { line-height: 1.5 !important; }
  #editor.article-content p, #editor.article-content li, #editor.article-content span, #editor.article-content td { overflow-wrap: break-word; }
  /* metin içi e-posta / telefon bağlantıları: satır düzeni aynı, dokunma alanı 44 px (satır içi kutunun dikey dolgusu satırı itmez) */
  /* (yalnız sınıfsız, satır içi metin bağlantıları: yasal metinler, anasayfa SEO metni, /markalar alt notu, bilgi / 404 sayfası, iade
     penceresi, alt bilgideki "Tıklayın") */
  #editor.article-content p a:not([class]), #editor.article-content li > a:not([class]):not(:only-child), .limited-text-content p a:not([class]),
  .mk-alt a:not([class]), .oyp-yedek-kart p a:not([class]), .oyp-rp-rules a:not([class]),
  footer small.text-muted:not([data-oyp-wa-hat]) > a:not([class]) { padding: 14px 0; }
  #dvBrandBox a { min-width: 44px; justify-content: center; }
  /* sepet: "Sorularınız için WhatsApp'tan yazın · telefon" satırı sarılır (numara bir bütün olarak alt satıra iner; taşmaz) */
  .oyp-guven-metin { min-width: 0; flex: 1 1 auto; }
  /* numarasız modda telefon düğmelerindeki numara bölünmez ("0212 639 / 10 87") */
  .oyp-no { white-space: nowrap; }
  /* alt bilgi: numarasız yedek blok ("Bize Yazın … Tıklayın") ve telefon bloğu bağlantıları 14 px (tema 13 px veriyordu) */
  footer small.text-muted a, footer small a { font-size: 14px !important; }
  /* üst aramanın anlık sonuçları: başlıklar ve "Tüm sonuçlar" 14 px */
  #dvLayoutSearchResults .small, #dvLayoutSearchResults small, #dvLayoutSearchResults .fw-semibold { font-size: 14px !important; }
  /* liste filtresi: ürün sayısı rozetleri 14 px */
  #offcanvasFilters .badge { font-size: 14px; }
  /* B4B: KVKK bağlantısı (etiket içinde) 44 px */
  #b4bForm .form-check-label a { display: inline-flex; align-items: center; min-height: 44px; }
  .oyp-b4b-belge-not { margin: 0 0 18px; }
  /* kırıntı: kısa bağlantı ("VW", "OPEL") 44 px kutusunda ortalı (sola yaslıyken ayraçla arasında boşluk kalıyordu) */
  .breadcrumb .breadcrumb-item > a { justify-content: center; }
  /* "Tüm özellikler" / değerlendirme bağlantısı */
  #product-detail .rate-text { display: inline-flex; align-items: center; min-height: 44px; }
  /* /iletisim kartları: WhatsApp kartı ilk sırada; telefonda tek sütun */
  .oyp-card--wa { border-color: #a8e3bd !important; background: #f3fcf6 !important; }
  .oyp-card--wa .oyp-ic { color: #1faa52; }
}
/* /iletisim: dört kart (WhatsApp + telefon + e-posta + saatler) masaüstünde 2 × 2 */
@media (min-width: 861px) { .oyp-cards:has(> .oyp-card--wa) { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; } }
.oyp-card--wa .val .oyp-wa-baglanti { display: inline-flex; align-items: center; min-height: 44px; }
/* anasayfa arama paneli: "Sipariş ve bilgi" — WhatsApp (yeşil hap) ve telefon (çerçeveli hap) ayrı 44 px düğmeler, arada boşluk */
.oyp-arama-iletisim { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 10px; font-size: 15px; }
.oyp-arama-iletisim__etiket { flex: 1 1 100%; }
.oyp-arama-iletisim__wa, .oyp-arama-iletisim__tel { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 0 16px; border-radius: 999px; font-weight: 700; text-decoration: none !important; touch-action: manipulation; }
.oyp-arama-iletisim__wa { background: #25D366; color: #fff !important; }
.oyp-arama-iletisim__wa:hover { background: #1ebe5b; }
.oyp-arama-iletisim__tel { border: 1px solid rgba(255, 255, 255, .55); color: #fff !important; }
.oyp-arama-iletisim__tel--birincil { background: var(--oyp-primary, #ffa104); border-color: var(--oyp-primary, #ffa104); color: #111726 !important; }
@media (max-width: 575.98px) { .oyp-arama-iletisim__wa, .oyp-arama-iletisim__tel { flex: 1 1 auto; } }
/* 320 px: kategori başlığı (h1 + ürün sayısı) kenara 4 px yapışıktı → içerikle aynı 12 px; B4B şeridi tek satır; telefon menüsünde marka
   adları kelime ortasından bölünmesin (VOLKSWAG/EN) */
@media (max-width: 575.98px) {
  /* üst aramanın anlık sonuç listesi: arama kutusu kadar dar değil (320 px'te 240 px), ekran genişliğinde (kenarlardan 8 px; kutu ortalı) */
  #dvLayoutSearchResults { left: 50% !important; right: auto !important; width: calc(100vw - 16px) !important; max-width: 560px; transform: translateX(-50%); padding: 12px !important; }
  /* (site.bundle: .category-header__title { padding: 0 .25rem !important } — logo yanındaki başlık için; logosuz başlık ilk öğe) */
  .category-header > .category-header__title:first-child { padding-left: calc(var(--bs-gutter-x, 1.5rem) * .5) !important; padding-right: calc(var(--bs-gutter-x, 1.5rem) * .5) !important; }
}
@media (max-width: 413.98px) {
  #layout-topbar .row { flex-wrap: nowrap; }
  #layout-topbar .col.d-md-none { min-width: 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; font-size: 14px; }
  #layout-topbar h5 { font-size: 15px; white-space: nowrap; }
}
@media (max-width: 389.98px) {
  .oyp-mobil-menu__panel { width: calc(100vw - 16px); padding: 8px 6px; }
  .oyp-mobil-menu__liste--iki { gap: 0 4px; }
  .oyp-mobil-menu__marka > summary, .oyp-mobil-menu__liste a { padding: 0 6px; overflow-wrap: normal; word-break: normal; font-size: 14px; letter-spacing: -.1px; }
  .oyp-mobil-menu__marka > summary .bi { font-size: 12px; }
}
/* yatay telefon (alçak ekran): üst başlık yapışkan değil (161 px başlık + 109 px sepet çubuğu içeriğe ~105 px bırakıyordu; "yukarı çık"
   başlıkla çakışıyordu); sepet alt çubuğu tek satır (toplam + düğme yan yana) */
@media (max-width: 991.98px) and (max-height: 500px) {
  #layout-header { position: relative !important; transform: none !important; }
  .oyp-sepet-cubuk { display: flex; align-items: center; gap: 12px; padding-top: 6px; padding-bottom: calc(6px + env(safe-area-inset-bottom, 0px)); }
  .oyp-sepet-cubuk[hidden] { display: none !important; }
  .oyp-sepet-cubuk__ozet { flex: 0 1 auto; flex-direction: column; align-items: flex-start; gap: 0; margin: 0; }
  .oyp-sepet-cubuk .oyp-sepet-cubuk__dugme { flex: 1 1 auto; width: auto; min-height: 44px; }
  body.oyp-sepet-cubuk-acik { --oyp-alt-cubuk: 60px; padding-bottom: 72px !important; }
  .oyp-yapiskan-cubuk { padding-top: 6px; padding-bottom: calc(6px + env(safe-area-inset-bottom, 0px)); }
}
