/* ═══════════════════════════════════════════════════════════
   Amerce köprüsü — görünümü DEĞİŞTİRMEZ

   Amerce'nin styles.css'i olduğu gibi duruyor. Bu dosya ondan sonra
   yüklenir ve yalnızca şunları yapar:

   1. Panelde seçilen renk/yazı tipini Amerce değişkenlerine bağlar.
      Tema varsayılanları Amerce'nin kendi değerleri; kiracı değiştirmedikçe
      görünüm birebir aynı. (--primary, --text, --surface kabukta geri yazılır.)
   2. Vitrin kabuğunun (storefront.css, satır içi body stili) genel
      kurallarını nötrler.
   3. Gerçek mağaza verisinin (uzun adlar, farklı oranlı görseller,
      boş listeler) yol açtığı kaymaları düzeltir.
   4. Amerce'de karşılığı olmayan küçük yeni öğeler (bildirim, sayı
      rozeti, varyant özeti) Amerce'nin görsel diliyle.
   ═══════════════════════════════════════════════════════════ */

:root {
  --line: var(--border, #E9E9E9);
  --text-2: var(--muted, #696E73);
}

body {
  font-family: var(--font-body, "DM Sans"), sans-serif;
}
h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {
  font-family: var(--font-heading, "DM Sans"), sans-serif;
}

/* Modül stil sarmalayıcısı düzen kutusu olmasın */
.module-scope { display: contents; }

/* storefront.css [data-error]'u hep gizliyor; görünürlük hidden ile */
[data-error]:not([hidden]) { display: block; }

/* Sunucu HTML'inde hidden özniteliği her zaman kazansın (Amerce'nin
   d-flex / .count gibi display kuralları hidden'ı eziyordu) */
[hidden] { display: none !important; }

/* Vitrin kabuğu #app içinde; Amerce'nin main#wrapper'ı yok */
#app { overflow-x: clip; }
html, body { overflow-x: clip; }

/* ── Logo yazısı (logo yüklenmemiş mağaza) ─────────────────── */
.logo-site .a-logo-text {
  display: inline-block;
  font-size: 26px;
  line-height: 30px;
  font-weight: 600;
  letter-spacing: -0.02em;
  color: var(--text);
  white-space: nowrap;
}
.logo-site img { width: auto; }

/* ── Menü: gerçek kategori adları ──────────────────────────── */
.box-nav-menu > .menu-item > .item-link { white-space: nowrap; }
.tf-header .header-inner .header-center .box-nav-menu,
.tf-header .header-inner .header-left .box-nav-menu { flex-wrap: nowrap; }

/* Dar masaüstünde 4 kategori + Ana Sayfa + Diğer + Blog + İletişim
   header'a sığmıyordu: önce Ana Sayfa (logo zaten ana sayfaya gider),
   sonra 3.-4. kategori gizlenir (Diğer menüsünde hepsi var). */
@media (max-width: 1599px) {
  .box-nav-menu > li.a-menu-home { display: none; }
  .box-nav-menu { gap: 20px; }
}
@media (max-width: 1399px) {
  .box-nav-menu > li.a-menu-cat:nth-child(n+4) { display: none; }
}

/* "Diğer" açılır menüsü: çok kategori olursa kaydırılsın */
.box-nav-menu .sub-menu.mega-menu-item { max-height: 70vh; overflow-y: auto; }

/* Mega menü: başlıktaki kategori bağlantısı başlık gibi görünsün */
.mega-menu .menu-heading .a-mega-heading { color: inherit; }
.mega-menu .menu-heading .a-mega-heading:hover { color: var(--primary); }
.mega-menu .a-mega-all { font-weight: 600; }
.mega-menu .a-mega-all .icon { font-size: 12px; margin-left: 4px; }
.mega-menu .box-image_v01 .box-image_img img { width: 100%; height: 100%; object-fit: cover; }

/* ── Header sayı rozetleri (favori sayısı Amerce'de yoktu; sepetinkiyle aynı) ── */
.nav-icon-list .a-has-count { position: relative; }
.nav-icon-list .a-has-count .count {
  position: absolute;
  top: -4px;
  right: -4px;
  width: 16px;
  height: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  font-size: 11px;
  line-height: 10px;
  color: var(--white);
  background: var(--primary);
}

/* Üye menüsü: "Merhaba, Ad" satırı tıklanamaz başlık */
.dropdown-account .a-account-hello { cursor: default; font-weight: 600; }

/* ── Duyuru şeridi bağlantısı ─────────────────────────────── */
.tf-topbar .a-topbar-link { margin-left: 6px; white-space: nowrap; }

/* ── Açılış ekranı ─────────────────────────────────────────── */
.preload-container { flex-direction: column; }
.preload-container .preload-logo { position: relative; width: 120px; height: 120px; display: flex; align-items: center; justify-content: center; }
.preload-container .a-splash-logo { position: relative; z-index: 1; max-width: 80px; }
.preload-container .preload-logo .spinner { width: 120px; height: 120px; }
.preload-container .a-splash-msg { margin-top: 24px; color: var(--text-2); font-size: 15px; text-align: center; }
.preload-container .a-splash-msg--late { display: none; }
.preload-container:has(.a-splash-msg--late) .a-splash-msg:not(.a-splash-msg--late) { animation: aSplashHide 0s 14s forwards; }
.preload-container .a-splash-msg--late { animation: aSplashShow 0s 14s forwards; }
@keyframes aSplashHide { to { display: none; } }
@keyframes aSplashShow { to { display: block; } }

/* ── Ürün kartı (gerçek veri) ─────────────────────────────── */

/* Görsel alanı: Amerce kartı 3:4 sabit. unimart uyumlu oran eşitleyici
   (amerce-app.js) modüldeki en sık orana çevirir. */
.card-product_wrapper .product-img { display: block; height: 100%; }
[data-card-ratio] .card-product:not(.product-style_list) .card-product_wrapper { aspect-ratio: var(--u-card-ratio, .75); }

/* Kapalı yıldız (ortalamanın altı) */
.star-wrap .icon.a-star-off { color: var(--line) !important; }

/* Uzun ürün adları iki satırda kesilsin, kartlar eşit boy kalsın */
.card-product_info .name-product {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}

/* Favoriye eklenmiş kalp */
.product-action_list .wishlist .is-liked,
.product-action_list .wishlist .is-liked .icon { color: var(--primary); }
.product-action_list .wishlist .is-liked.box-icon { background-color: var(--white); }

/* Kart varyant özeti — "3 renk · 4 beden" (amerce-app.js yazar).
   a-card-variants: ana sayfa kartlarının eski sınıf adı (aynı görünüm) */
.u-card-variants, .a-card-variants {
  margin: 2px 0 0;
  font-size: 12px;
  line-height: 18px;
  color: var(--text-2);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* ── Yan sepet ─────────────────────────────────────────────── */
.popup-shopping-cart .popup-header .title .a-cart-count-text { color: var(--text-2); font-weight: 400; }
.tf-mini-cart-item .tf-mini-cart-image img { width: 100%; height: 100%; object-fit: cover; }
.tf-mini-cart-item [data-remove] { user-select: none; }
.tf-mini-cart-item[data-line] { transition: opacity .2s; }
/* Sepet satırı varyant etiketi (amerce-cart.js) */
.u-cart-variant { display: block; margin: 2px 0 4px; font-size: 12px; line-height: 1.4; color: var(--text-2); }
.u-cart-variant[hidden], [data-cart-variant][hidden] { display: none; }
.tf-mini-cart-tool-openable .form-content input { width: 100%; }
.popup-shopping-cart .list-cart-item .image img { object-fit: cover; }

/* ── Hızlı bakış / hızlı ekle ──────────────────────────────── */
.canvas-quickview .wrap-quick .image img { width: 100%; height: auto; object-fit: cover; }
.modal-quickadd .product-mini-view .prd-image img { object-fit: cover; }
[data-quick-panel] .tf-btn.loading { opacity: .6; pointer-events: none; }

/* ── Bildirim (kopyalandı, favorilere eklendi…) ───────────── */
.a-toast {
  position: fixed;
  left: 50%;
  bottom: 32px;
  z-index: 100000;
  transform: translate(-50%, 20px);
  opacity: 0;
  max-width: calc(100vw - 32px);
  padding: 12px 20px;
  border-radius: 8px;
  background: var(--text);
  color: var(--white);
  font-size: 14px;
  line-height: 20px;
  box-shadow: 0 10px 25px rgba(43, 52, 74, .18);
  transition: opacity .25s ease, transform .25s ease;
  pointer-events: none;
}
.a-toast.is-visible { opacity: 1; transform: translate(-50%, 0); }
@media (max-width: 1199px) { .a-toast { bottom: 96px; } }

/* ── Sayfalama ─────────────────────────────────────────────── */
.tf-page-pagination .a-pag-gap { border-color: transparent; }
.a-sort-select {
  height: 40px;
  padding: 0 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--white);
  color: var(--text);
}

/* ── Form mesajları ────────────────────────────────────────── */
[data-form-success]:not([hidden]) { color: var(--success, #3DAB25); }
.text-success { color: var(--success, #3DAB25) !important; }

/* Mobil menü altı: mağaza iletişim girmemişse boş başlık kalmasın */
.canvas-mb .need-help-wrap:not(:has(a, p:not(.nd-title))) { display: none; }

/* Yukarı çık düğmesi: sayfa sonundaki NewuTech imza şeridinin üstünde
   kalsın (şerit yüksekliğini --nwb-offset'e yazıyor) */
#goTop { bottom: calc(40px + var(--nwb-offset, 0px)); }
@media (max-width: 1199px) { #goTop { bottom: calc(90px + var(--nwb-offset, 0px)); } }

/* Yan sepet dar ekran: Türkçe düğme yazıları ve TL fiyatlar kırılmasın */
.tf-mini-cart-view-checkout .tf-btn { white-space: nowrap; }
.tf-mini-cart-price .tf-mini-card-price,
.tf-mini-cart-price .number { white-space: nowrap; }
@media (max-width: 575px) {
  .tf-mini-cart-view-checkout .tf-btn { padding-left: 12px; padding-right: 12px; }
}

/* Bülten penceresi görselsiz (ayarda görsel yoksa): metin kutusu tek sütun */
.modal-newsletter .modal-content:not(:has(.image-left)) { max-width: 520px; margin: 0 auto; }
.modal-newsletter .modal-content:not(:has(.image-left)) .content-right { width: 100%; padding: 32px; }
