/* ==========================================================================
   Hesap Paneli — herkese açık site
   Tasarım (2026-10-27): mağaza düzeni (kategori tabloları, beyaz kartlar)
   üzerine KENDİ kimliğimiz — logodaki LACİVERT + MOR marka, turuncu
   yalnızca EYLEM (satın al, kayıt ol). Kullanıcı kararı: "birebir aynısı
   olmasın, geliştirelim". TEK TEMA (açık); koyu tema kaldırıldı.
   ========================================================================== */

:root {
  --zemin:        #f7f6fb;
  --zemin-2:      #efedf6;
  --kart:         #ffffff;
  --kart-ust:     #fbfaff;
  --kenar:        #e6e3ef;
  --kenar-guclu:  #d5d0e3;

  --metin:        #1e1b3a;
  --metin-orta:   #45425e;
  --metin-sonuk:  #6b6882;

  /* MARKA: logodaki lacivert (#201A3D) ve mor (#7C3AED) ailesi.
     `--ana` METİN/VURGU moru (beyazda 7:1, mor zeminde 6.3:1). */
  --ana:          #6d28d9;
  --ana-zemin:    #f3f0ff;
  --ana-kenar:    #ddd6fe;
  --ana-yazi:     #ffffff;
  --lacivert:     #1b1638;
  --lacivert-2:   #2a1f5c;

  /* EYLEM turuncusu (logodaki #F9A11C ailesi). Dolgu rengidir; üzerine
     KOYU yazı gelir (6:1). Beyaz yazı bu tonda 2.3:1 kalıyordu (ölçüldü). */
  --vurgu:        #f39321;
  --vurgu-koyu:   #e2800e;
  --vurgu-yazi:   #1c1206;

  --basari:       #0b7c45;  --basari-zemin: #ecf8f1;  --basari-kenar: #b7e4c9;
  --uyari:        #92400e;  --uyari-zemin:  #fffbeb;
  --hata:         #b91c1c;  --hata-zemin:   #fef2f2;  --hata-kenar: #fecaca;
  --bilgi:        #1d4ed8;  --bilgi-zemin:  #eff6ff;

  --koyu-kenar:   rgba(196,181,253,.18);

  --golge:        0 1px 2px rgba(30,27,58,.04), 0 12px 30px rgba(42,31,92,.09);
  --golge-kucuk:  0 1px 2px rgba(30,41,59,.06);
  --r:            12px;
  --r-kucuk:      10px;
}

*, *::before, *::after { box-sizing: border-box; }

html { scroll-behavior: smooth; scroll-padding-top: 130px; }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; }
}

body {
  margin: 0;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  font: 15.5px/1.6 Inter, "Segoe UI", ui-sans-serif, system-ui, -apple-system, Roboto, sans-serif;
  color: var(--metin-orta);
  background: var(--zemin);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

h1, h2, h3 { color: var(--metin); line-height: 1.2; }
img { max-width: 100%; height: auto; }
a { color: var(--ana); }

/* Klavye kullanıcısı için görünür odak — fare tıklamasında çıkmaz */
:focus-visible { outline: 2px solid var(--ana); outline-offset: 2px; border-radius: 4px; }

/* Ekran okuyucu için; görsel olarak gizli */
.gizli-metin {
  position: absolute; width: 1px; height: 1px;
  padding: 0; margin: -1px; overflow: hidden;
  clip: rect(0 0 0 0); white-space: nowrap; border: 0;
}

/* Klavyeyle gezenin içeriğe atlaması için */
.atla {
  position: absolute; left: -9999px; top: 0; z-index: 100;
  background: var(--ana); color: var(--ana-yazi);
  padding: 10px 18px; border-radius: 0 0 var(--r-kucuk) 0; font-weight: 700;
}
.atla:focus { left: 0; }

.kapsayici { width: 100%; max-width: 1232px; margin: 0 auto; padding: 0 20px; }

.ikon { display: block; flex: none; }

/* ==========================================================================
   DÜĞMELER
   ========================================================================== */
.dugme, button.dugme {
  display: inline-flex; align-items: center; justify-content: center; gap: 7px;
  padding: 10px 18px; min-height: 40px;
  border: 1px solid transparent; border-radius: var(--r);
  background: var(--vurgu); color: var(--vurgu-yazi);
  font: inherit; font-size: 14px; font-weight: 650;
  text-decoration: none; cursor: pointer; white-space: nowrap;
  transition: background .15s, border-color .15s, color .15s, transform .06s;
}
.dugme:hover { background: var(--vurgu-koyu); }
.dugme:active { transform: translateY(1px); }

/* Çizgili (ikincil) düğme. `.hayalet` eski adıdır; üye panelinde kullanılıyor. */
.dugme.cizgi, .dugme.hayalet {
  background: var(--kart); color: var(--metin); border-color: var(--kenar-guclu);
}
.dugme.cizgi:hover, .dugme.hayalet:hover { border-color: var(--ana-kenar); color: var(--ana); background: var(--ana-zemin); }


.dugme.buyuk { padding: 12px 24px; font-size: 15px; }
.dugme.kucuk { padding: 7px 14px; min-height: 34px; font-size: 13px; border-radius: 8px; }
.dugme.genis { width: 100%; }
.dugme[aria-disabled="true"], .dugme:disabled, button:disabled {
  opacity: .5; cursor: not-allowed; pointer-events: none;
}

/* ==========================================================================
   ÜST KISIM: yapışkan başlık + sekmeler
   ========================================================================== */
.site-ust {
  position: sticky; top: 0; z-index: 50;
  background: var(--kart); border-bottom: 1px solid var(--kenar);
}
.ust-satir { display: flex; align-items: center; gap: 22px; min-height: 68px; }

.marka { display: inline-flex; align-items: center; flex: none; text-decoration: none; }
/* Logo 432x128 (3.375:1). Yükseklik sabit, genişlik orantılı. */
.marka-logo { height: 30px; width: auto; display: block; }

.arama { position: relative; flex: 1; max-width: 520px; margin: 0 auto; }
.arama .ikon { position: absolute; left: 13px; top: 50%; transform: translateY(-50%); color: var(--metin-sonuk); pointer-events: none; }
.arama input[type="search"] {
  width: 100%; margin: 0; height: 42px; padding: 0 14px 0 40px;
  background: var(--zemin-2); border: 1px solid var(--kenar); border-radius: var(--r);
  font-size: 14.5px;
}
.arama input[type="search"]:focus { background: var(--kart); }

.ust-hesap { display: flex; align-items: center; gap: 8px; flex: none; }

.sekme-cubugu { border-top: 1px solid var(--kenar); background: var(--kart); }
.sekme-ic { position: relative; display: flex; align-items: center; gap: 10px; min-height: 52px; }
.sekmeler { display: flex; align-items: center; gap: 2px; flex: 1; }
.sekme {
  display: inline-flex; align-items: center; gap: 5px;
  padding: 7px 12px; border-radius: 8px;
  color: var(--metin-orta); text-decoration: none;
  font-size: 14px; font-weight: 550; cursor: pointer;
  transition: background .15s, color .15s;
}
.sekme:hover { background: var(--zemin-2); color: var(--metin); }
.sekme.etkin { background: var(--ana-zemin); color: var(--ana); }
.sekme.vurgulu { background: var(--ana-zemin); color: var(--ana); border: 1px solid var(--ana-kenar); margin-left: 6px; font-weight: 650; }
.sekme.vurgulu:hover, .sekme.vurgulu.etkin { background: var(--ana); color: var(--ana-yazi); border-color: var(--ana); }

/* Kategoriler açılır menüsü (<details>: JS olmadan da çalışır) */
.sekme-acilir { position: relative; }
.sekme-acilir > summary { list-style: none; }
.sekme-acilir > summary::-webkit-details-marker { display: none; }
.sekme-acilir[open] > summary { background: var(--zemin-2); color: var(--metin); }
.sekme-acilir[open] > summary .ikon { transform: rotate(180deg); }
.acilir-panel {
  position: absolute; top: calc(100% + 8px); left: 0; z-index: 60;
  min-width: 260px; padding: 6px;
  display: grid; gap: 2px;
  background: var(--kart); border: 1px solid var(--kenar);
  border-radius: var(--r); box-shadow: var(--golge);
}
.acilir-panel a {
  display: flex; align-items: center; gap: 10px;
  padding: 9px 10px; border-radius: 8px;
  color: var(--metin); text-decoration: none; font-size: 14px; font-weight: 550;
}
.acilir-panel a:hover { background: var(--zemin-2); }
.acilir-panel a .ikon { color: var(--ana); }
.acilir-panel small { margin-left: auto; color: var(--metin-sonuk); font-size: 12px; font-weight: 600; }
.ap-ikon { width: 22px; height: 22px; flex: none; object-fit: contain; }
.ap-ikon.harf { display: grid; place-items: center; border-radius: 6px;
  background: var(--ana-zemin); color: var(--ana); font-size: 12px; font-weight: 800; }

/* Mobil menü düğmesi — CSS ile, JS gerekmez.
   ⚠ Kutucuk `hidden` değil görsel olarak gizli: etiketle tetiklenebilir
   ve erişilebilirlik ağacında kalır. */
.gez-anahtari {
  position: absolute; width: 1px; height: 1px;
  opacity: 0; pointer-events: none; margin: -1px; overflow: hidden;
}
.gez-dugme {
  display: none; align-items: center; gap: 8px;
  padding: 8px 4px; cursor: pointer;
  color: var(--metin); font-size: 15px; font-weight: 650;
}

/* ==========================================================================
   SAYFA GÖVDESİ
   ========================================================================== */
.icerik { flex: 1; padding: 0 0 64px; }
.sayfa-ic { padding-top: 20px; }

.kirinti { display: flex; flex-wrap: wrap; gap: 7px; align-items: center;
  padding: 20px 0 6px; font-size: 13px; color: var(--metin-sonuk); }
.sayfa-ic > .kirinti { padding-top: 0; }
.kirinti a { color: var(--metin-sonuk); text-decoration: none; }
.kirinti a:hover { color: var(--ana); }
.kirinti .ayrac { opacity: .5; }

.sonuc-bas { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; margin: 6px 0 4px; }
.sonuc-bas h1 { margin: 0; font-size: clamp(21px, 2.6vw, 26px); font-weight: 750; letter-spacing: -.02em; }

.yardim-not { margin: 14px 0 0; font-size: 13.5px; color: var(--metin-sonuk); }

.bos-kutu {
  padding: 40px 20px; text-align: center;
  background: var(--kart); border: 1px dashed var(--kenar-guclu); border-radius: var(--r);
  color: var(--metin-sonuk);
}

/* Diğer sayfalarda (iletişim, API dokümanı) kullanılan bölüm başlığı */
.bolum { padding: 40px 0; }
.bolum-basi { display: flex; align-items: end; gap: 16px; flex-wrap: wrap; margin-bottom: 22px; }
.bolum-basi h2, .bolum-basi h1 { margin: 0 0 4px; font-size: clamp(22px, 2.6vw, 28px); font-weight: 750; letter-spacing: -.02em; }
.bolum-basi p { margin: 0; color: var(--metin-sonuk); font-size: 15px; line-height: 1.5; }

/* --- Sahne (anasayfa üstü): lacivert-mor marka zemini + canlı panel ----- */
.sahne {
  position: relative; overflow: hidden;
  display: grid; gap: 34px; align-items: center;
  grid-template-columns: minmax(0, 1.2fr) minmax(0, .8fr);
  padding: 46px 44px; border-radius: 20px; color: #ece9ff;
  background:
    radial-gradient(520px 280px at 88% 0%, rgba(249,161,28,.20), transparent 62%),
    radial-gradient(640px 380px at 0% 100%, rgba(124,58,237,.38), transparent 62%),
    linear-gradient(135deg, var(--lacivert) 0%, var(--lacivert-2) 58%, #3b2a7a 100%);
  box-shadow: 0 18px 44px rgba(42,31,92,.22);
}
.sahne.tek { grid-template-columns: minmax(0, 1fr); }
.sahne-ust {
  display: inline-flex; align-items: center; gap: 8px;
  padding: 6px 13px; border-radius: 999px;
  background: rgba(255,255,255,.08); border: 1px solid rgba(196,181,253,.28);
  color: #ddd6fe; font-size: 12.5px; font-weight: 650;
}
.su-nokta, .cp-nokta {
  width: 8px; height: 8px; flex: none; border-radius: 50%; background: #22c55e;
  animation: nabiz 2.2s ease-out infinite;
}
@keyframes nabiz {
  0%        { box-shadow: 0 0 0 0 rgba(34,197,94,.55); }
  70%, 100% { box-shadow: 0 0 0 8px rgba(34,197,94,0); }
}
.sahne h1 {
  margin: 18px 0 14px; color: #fff;
  font-size: clamp(30px, 4.2vw, 48px); font-weight: 800; letter-spacing: -.03em; line-height: 1.1;
  text-wrap: balance;
}
.sahne h1 em {
  display: block; font-style: normal; color: #fbbf6a;
  background: linear-gradient(90deg, #fcd08a, #f39321);
  -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent;
}
.sahne-sol > p { margin: 0 0 24px; max-width: 560px; color: #c9c3e6; font-size: 16.5px; text-wrap: pretty; }
.sahne-eylem { display: flex; flex-wrap: wrap; gap: 10px; }
.dugme.sahne-ikincil { background: rgba(255,255,255,.08); color: #fff; border-color: rgba(196,181,253,.32); }
.dugme.sahne-ikincil:hover { background: rgba(255,255,255,.15); border-color: rgba(196,181,253,.5); }

.sahne-sayilar { display: flex; flex-wrap: wrap; gap: 14px 0; margin: 30px 0 0; padding: 0; }
.ss-hucre { display: flex; flex-direction: column-reverse; padding-right: 26px; margin-right: 26px;
  border-right: 1px solid rgba(196,181,253,.2); }
.ss-hucre:last-child { border-right: 0; margin-right: 0; padding-right: 0; }
.ss-hucre dt { color: #a9a3c7; font-size: 12.5px; font-weight: 600; }
.ss-hucre dd { margin: 0; color: #fff; font-size: 26px; font-weight: 800; letter-spacing: -.02em; font-variant-numeric: tabular-nums; }

/* Canlı teslimat paneli — sitenin imza öğesi.
   ★ Veri gerçek (canli.service.js); teslimat yoksa panel hiç basılmaz. */
.canli-panel {
  padding: 16px; border-radius: 16px;
  background: rgba(255,255,255,.06); border: 1px solid rgba(196,181,253,.22);
  -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px);
}
.cp-ust { display: flex; align-items: center; gap: 9px; padding-bottom: 12px; border-bottom: 1px solid rgba(196,181,253,.18); }
.cp-ust b { color: #fff; font-size: 14px; }
.cp-etiket {
  margin-left: auto; padding: 2px 9px; border-radius: 999px;
  border: 1px solid rgba(74,222,128,.45); color: #4ade80;
  font-size: 10.5px; font-weight: 750; letter-spacing: .08em; text-transform: uppercase;
}
.cp-liste { list-style: none; margin: 10px 0 0; padding: 0; display: grid; gap: 6px; }
.cp-satir {
  display: flex; align-items: center; gap: 10px;
  padding: 9px 10px; border-radius: 10px; background: rgba(255,255,255,.05);
  animation: cp-gel .5s ease both;
}
@keyframes cp-gel { from { opacity: 0; transform: translateY(6px); } }
.cp-onay {
  width: 20px; height: 20px; flex: none; border-radius: 50%;
  display: grid; place-items: center; background: rgba(74,222,128,.16); color: #4ade80;
  font-size: 11px; font-weight: 800;
}
.cp-bilgi { flex: 1; min-width: 0; display: flex; flex-direction: column; }
.cp-posta { font-family: ui-monospace, "Cascadia Mono", Consolas, monospace; font-size: 12.5px; color: #f1eeff;
  overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.cp-urun { font-size: 11.5px; color: #a9a3c7; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.cp-zaman { flex: none; font-size: 11.5px; color: #a9a3c7; font-variant-numeric: tabular-nums; }
.cp-alt { margin-top: 12px; padding-top: 12px; border-top: 1px solid rgba(196,181,253,.18); font-size: 12.5px; color: #a9a3c7; }
.cp-alt b { color: #fff; }
@media (prefers-reduced-motion: reduce) {
  .su-nokta, .cp-nokta, .cp-satir { animation: none; }
}

/* --- Üyenin bakiyesi: "Ürünler" başlığının yanında tek satır --------------
   ⚠ SADELİK (kullanıcı: "çok kalabalık olmasın"): ayrı bakiye/kayıt
     şeritleri ve "neden biz" kartları kaldırıldı. */
.magaza-bakiye { display: inline-flex; align-items: baseline; gap: 8px; color: var(--metin-sonuk); font-size: 14px; }
.magaza-bakiye .us-tutar { color: var(--ana); font-size: 16px; font-weight: 800; font-variant-numeric: tabular-nums; }
.magaza-bakiye a { font-size: 13px; font-weight: 650; }

/* --- Mağaza: başlık + kategori çipleri + tablolar ----------------------- */
.magaza { margin-top: 30px; }
.magaza-bas { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; }
.magaza-bas h2 { margin: 0; font-size: 22px; font-weight: 750; letter-spacing: -.02em; }
.kategori-cipleri { display: flex; flex-wrap: wrap; gap: 8px; margin-left: auto; }
.cip {
  display: inline-flex; align-items: center; gap: 7px;
  padding: 6px 8px 6px 14px; border-radius: 999px;
  background: var(--kart); border: 1px solid var(--kenar);
  color: var(--metin-orta); font-size: 13.5px; font-weight: 600; text-decoration: none;
  transition: border-color .15s, background .15s, color .15s;
}
.cip b { padding: 0 8px; border-radius: 999px; background: var(--zemin-2); color: var(--metin-sonuk); font-size: 12px; }
.cip:hover { border-color: var(--ana-kenar); color: var(--metin); }
.cip.etkin { background: var(--lacivert); border-color: var(--lacivert); color: #fff; }
.cip.etkin b { background: rgba(255,255,255,.16); color: #fff; }
.cip-ikon { width: 18px; height: 18px; object-fit: contain; }
.cip-ikon.harf { display: grid; place-items: center; border-radius: 5px; background: var(--ana-zemin); color: var(--ana); font-size: 11px; font-weight: 800; }

/* --- Kategori tabloları ------------------------------------------------
   ⚠ Liste + grid (tablo değil): mobilde satır karta dönüşür. Sütun
     adları ekran okuyucu için her hücrede gizli metin olarak var. */
.urun-tablolari { display: grid; gap: 18px; margin-top: 16px; }
.urun-tablosu { background: var(--kart); border: 1px solid var(--kenar); border-radius: 14px; overflow: hidden; }
.urun-tablosu[hidden] { display: none; }
.ut-bas { display: flex; align-items: center; gap: 12px; padding: 13px 18px;
  border-bottom: 1px solid var(--kenar); background: linear-gradient(90deg, var(--kart-ust), var(--kart)); }
.ut-bas h2 { margin: 0; font-size: 17px; font-weight: 700; }
.ut-bas-ikon {
  width: 38px; height: 38px; flex: none; padding: 7px;
  border: 1px solid var(--kenar); border-radius: var(--r-kucuk); object-fit: contain; background: var(--kart);
}
.ut-bas-ikon.harf, .ut-bas-ikon.simge { display: grid; place-items: center; padding: 0; }
.ut-bas-ikon.harf { background: var(--ana-zemin); color: var(--ana); font-weight: 800; }
.ut-bas-ikon.simge { color: var(--ana); }
.ut-tumu {
  margin-left: auto; display: inline-flex; align-items: center; gap: 3px;
  padding: 5px 12px; border: 1px solid var(--kenar-guclu); border-radius: 8px;
  color: var(--metin); font-size: 13px; font-weight: 600; text-decoration: none;
}
.ut-tumu:hover { border-color: var(--ana-kenar); color: var(--ana); background: var(--ana-zemin); }

.ut-kafa, .ut-satir {
  display: grid; align-items: center; gap: 12px;
  grid-template-columns: minmax(0, 1fr) 120px 120px 120px;
}
/* Girişli üye: satırda adet kutusu + düğme olduğu için son sütun geniş */
.urun-tablosu.uye .ut-kafa, .urun-tablosu.uye .ut-satir { grid-template-columns: minmax(0, 1fr) 120px 120px 190px; }
.ut-kafa {
  padding: 9px 18px; background: var(--kart-ust); border-bottom: 1px solid var(--kenar);
  font-size: 11px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--metin-sonuk);
}
.ut-kafa span:nth-child(2) { text-align: center; }
.ut-kafa span:nth-child(3) { text-align: right; }

.ut-liste { list-style: none; margin: 0; padding: 0; }
.ut-satir { padding: 12px 18px; border-bottom: 1px solid var(--kenar); transition: background .12s; }
.ut-satir:last-child { border-bottom: 0; }
.ut-satir:hover { background: #faf8ff; }
.ut-satir[hidden] { display: none; }

.ut-urun { display: flex; align-items: center; gap: 12px; min-width: 0; }
.ut-ikon { width: 30px; height: 30px; flex: none; object-fit: contain; }
.ut-ikon.harf { display: grid; place-items: center; border-radius: 8px; background: var(--ana-zemin); color: var(--ana); font-size: 13px; font-weight: 800; }
.ut-metin { min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.ut-ad { color: var(--metin); font-size: 14.5px; font-weight: 650; text-decoration: none; line-height: 1.35; }
.ut-ad:hover { color: var(--ana); }
.ut-alt {
  font-size: 12.5px; color: var(--metin-sonuk); line-height: 1.45;
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
}
.ut-rozetler { display: flex; flex-wrap: wrap; gap: 5px; margin-top: 4px; }
.ut-bicim {
  padding: 1px 7px; border-radius: 6px; font-size: 10.5px; font-weight: 600;
  font-family: ui-monospace, "Cascadia Mono", Consolas, monospace;
  background: var(--zemin-2); color: var(--metin-orta); border: 1px solid var(--kenar);
}
.ut-rozet { padding: 1px 8px; border-radius: 999px; font-size: 10.5px; font-weight: 700;
  background: var(--zemin-2); color: var(--metin-orta); border: 1px solid var(--kenar); }
.ut-rozet.ozel { background: var(--ana-zemin); color: var(--ana); border-color: var(--ana-kenar); }

/* Stok: sayı + 3 bölmeli seviye göstergesi (bol / orta / az) */
.ut-stok { display: flex; flex-direction: column; align-items: center; gap: 5px; font-variant-numeric: tabular-nums; }
.ut-stok b { font-size: 14px; font-weight: 700; color: var(--basari); }
.ut-stok.orta b { color: #a16207; }
.ut-stok.az b { color: #b45309; }
.ut-stok.yok b { color: var(--metin-sonuk); font-weight: 600; }
.ut-birim { display: none; font-weight: 500; color: var(--metin-sonuk); font-size: 12.5px; }
.ut-seviye { display: inline-flex; gap: 3px; }
.ut-seviye i { width: 11px; height: 4px; border-radius: 2px; background: var(--zemin-2); }
.ut-stok.bol .ut-seviye i.dolu { background: #16a34a; }
.ut-stok.orta .ut-seviye i.dolu { background: #d97706; }
.ut-stok.az .ut-seviye i.dolu { background: #dc2626; }

.ut-fiyat { text-align: right; font-variant-numeric: tabular-nums; }
.ut-fiyat b { color: var(--metin); font-size: 15.5px; font-weight: 800; }
.ut-fiyat del { display: block; color: var(--metin-sonuk); font-size: 11.5px; }
.ut-eylem { text-align: right; }
.ut-eylem .dugme { min-width: 96px; }
.ut-al { display: inline-flex; align-items: center; justify-content: flex-end; gap: 6px; margin: 0; }
.ut-al .ut-adet { width: 64px; min-height: 34px; margin: 0; padding: 6px 8px; font-size: 14px; text-align: center; }

.ut-hepsi {
  display: block; padding: 11px; border-top: 1px solid var(--kenar);
  text-align: center; color: var(--metin-orta); font-size: 13.5px; font-weight: 600; text-decoration: none;
}
.ut-hepsi:hover { background: var(--zemin-2); color: var(--ana); }
.urun-tablolari.diger { margin-top: 36px; }
#anlikBos { margin-top: 16px; }

/* --- Ortalanmış bölüm (Nasıl satın alınır, S.S.S.) ---------------------- */
.bolum-orta { margin-top: 60px; text-align: center; }
.bolum-orta > h2 { margin: 0 0 6px; font-size: clamp(22px, 2.6vw, 28px); font-weight: 750; letter-spacing: -.02em; }
.bolum-orta > p { margin: 0 0 28px; color: var(--metin-sonuk); font-size: 15px; }

/* Zaman çizgisi: adımlar tek bir hat üzerinde (masaüstü yatay, mobil dikey) */
.zaman-cizgisi {
  position: relative; list-style: none; margin: 0; padding: 0;
  display: grid; grid-template-columns: repeat(5, minmax(0, 1fr));
}
.zaman-cizgisi::before {
  content: ''; position: absolute; top: 21px; left: 10%; right: 10%; height: 2px;
  background: linear-gradient(90deg, var(--ana-kenar), var(--ana) 60%, var(--vurgu));
}
.zaman-cizgisi li { position: relative; display: flex; flex-direction: column; align-items: center; gap: 4px; padding: 0 10px; }
.zc-no {
  position: relative; z-index: 1; width: 44px; height: 44px; border-radius: 50%;
  display: grid; place-items: center; margin-bottom: 8px;
  background: var(--kart); border: 2px solid var(--ana); color: var(--ana); font-size: 16px; font-weight: 800;
  box-shadow: 0 0 0 6px var(--zemin);
}
.zaman-cizgisi li:last-child .zc-no { background: var(--vurgu); border-color: var(--vurgu); color: var(--vurgu-yazi); }
.zaman-cizgisi b { color: var(--metin); font-size: 15px; font-weight: 700; }
.zaman-cizgisi small { max-width: 210px; color: var(--metin-sonuk); font-size: 13px; line-height: 1.5; }

/* --- Tanıtım metni (arama motoru + okuyucu için) ------------------------ */
.seo-kutu {
  margin-top: 56px; padding: 26px 30px;
  background: var(--kart); border: 1px solid var(--kenar); border-left: 4px solid var(--ana);
  border-radius: 16px;
}
.seo-kutu h2 { margin: 0; font-size: 21px; font-weight: 750; }
.sk-govde { margin-top: 12px; color: var(--metin-orta); font-size: 15px; line-height: 1.7; }
.sk-govde p { margin: 0 0 8px; }
.sk-sutunlar { display: grid; gap: 28px; grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: 6px; }
.sk-govde h3 { margin: 12px 0 8px; font-size: 15.5px; font-weight: 700; }
.sk-govde ul { margin: 0; padding-left: 20px; }
.sk-govde li { margin-bottom: 5px; }
.sk-govde strong { color: var(--metin); }

/* --- S.S.S. (açılır kartlar, iki sütun) -------------------------------- */
.sss-izgara { display: grid; gap: 12px; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start; text-align: left; }
.sss-kart { background: var(--kart); border: 1px solid var(--kenar); border-radius: 12px; transition: border-color .15s; }
.sss-kart[open] { border-color: var(--ana-kenar); }
.sss-kart > summary {
  display: flex; align-items: center; gap: 12px; padding: 15px 18px;
  cursor: pointer; list-style: none; color: var(--metin); font-size: 15px; font-weight: 650;
}
.sss-kart > summary::-webkit-details-marker { display: none; }
.sss-kart > summary::after { content: '+'; margin-left: auto; color: var(--ana); font-size: 20px; font-weight: 800; line-height: 1; }
.sss-kart[open] > summary::after { content: '−'; }
.sss-kart > p { margin: 0; padding: 0 18px 16px; color: var(--metin-sonuk); font-size: 14px; line-height: 1.6; }

/* Ürün sayfasındaki açılır S.S.S. */
.sss-liste { display: grid; gap: 10px; }
.sss-oge { background: var(--kart); border: 1px solid var(--kenar); border-radius: var(--r-kucuk); overflow: hidden; }
.sss-oge > summary {
  padding: 15px 18px; cursor: pointer; list-style: none;
  font-weight: 650; font-size: 15px; color: var(--metin);
  display: flex; align-items: center; gap: 12px;
}
.sss-oge > summary::-webkit-details-marker { display: none; }
.sss-oge > summary::after { content: '+'; margin-left: auto; color: var(--ana); font-size: 19px; font-weight: 800; line-height: 1; }
.sss-oge[open] > summary::after { content: '−'; }
.sss-oge > summary:hover { background: var(--kart-ust); }
.sss-govde { padding: 0 18px 16px; color: var(--metin-orta); font-size: 14.5px; }

/* ==========================================================================
   ÜRÜN SAYFASI
   ========================================================================== */
.urun-duzen { display: grid; gap: 26px; grid-template-columns: minmax(0, 1fr) 340px; align-items: start; }
.urun-basligi h1 { margin: 6px 0 10px; font-size: clamp(24px, 3.4vw, 34px);
  font-weight: 800; letter-spacing: -.025em; line-height: 1.15; text-wrap: balance; }
.urun-ozet { margin: 0 0 18px; color: var(--metin-orta); font-size: 16.5px; }
.rozet-satir { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 14px; }

.urun-gorsel {
  display: block; width: 100%; height: auto;
  aspect-ratio: 16 / 7; object-fit: cover; margin: 0 0 20px;
  border: 1px solid var(--kenar); border-radius: var(--r); background: var(--ana-zemin);
}
@media (max-width: 720px) { .urun-gorsel { aspect-ratio: 16 / 9; } }

.kutu { background: var(--kart); border: 1px solid var(--kenar); border-radius: var(--r); padding: 22px; }
.kutu + .kutu { margin-top: 18px; }
.kutu h2 { margin: 0 0 12px; font-size: 18px; font-weight: 750; letter-spacing: -.02em; }
.kutu p { color: var(--metin-orta); }
.kutu p:last-child { margin-bottom: 0; }

/* Satın alma kutusu — masaüstünde yapışır (başlık yüksekliği kadar aşağıda) */
.satis-kutu { position: sticky; top: 140px; }
.satis-fiyat { display: flex; align-items: end; gap: 12px; padding-bottom: 16px;
  border-bottom: 1px solid var(--kenar); margin-bottom: 16px; }
.fiyat { font-size: 30px; font-weight: 800; letter-spacing: -.03em; line-height: 1.1; color: var(--metin); }
.fiyat-birim { display: block; font-size: 11px; font-weight: 700; letter-spacing: .07em;
  text-transform: uppercase; color: var(--metin-sonuk); margin-top: 3px; }
/* Üyeye özel fiyat: liste fiyatı üstü çizili, özel fiyat vurgulu */
.liste-fiyat { color: var(--metin-sonuk); text-decoration: line-through; font-size: 13px; margin-right: 6px; font-weight: 600; }
.fiyat.ozel, .al-fiyat b.ozel { color: var(--ana); }

.satis-satir { display: flex; align-items: center; justify-content: space-between;
  gap: 12px; padding: 9px 0; font-size: 14px; color: var(--metin-orta); }
.satis-satir + .satis-satir { border-top: 1px dashed var(--kenar); }
.satis-satir b { color: var(--metin); font-weight: 700; }

.adet-alani { display: flex; gap: 10px; align-items: end; margin: 16px 0 12px; }
.adet-alani label { flex: none; width: 110px; margin: 0; }

.ozellik-listesi { list-style: none; margin: 0; padding: 0; display: grid; gap: 7px; }
.ozellik { display: flex; align-items: start; gap: 9px; font-size: 14px; color: var(--metin-orta); }
.ozellik::before { content: '✓'; flex: none; margin-top: 1px; color: var(--basari); font-weight: 800; font-size: 12px; }

.adim-liste { list-style: none; counter-reset: adim; margin: 0; padding: 0; display: grid; gap: 14px; }
.adim-liste li { counter-increment: adim; display: flex; gap: 14px; align-items: start; }
.adim-liste li::before {
  content: counter(adim); flex: none;
  width: 27px; height: 27px; display: grid; place-items: center;
  border-radius: 50%; background: var(--vurgu); color: var(--vurgu-yazi);
  font-size: 13px; font-weight: 800;
}
.adim-liste .adim-metin { color: var(--metin-orta); font-size: 14.5px; padding-top: 2px; }

.uyari-kutu {
  display: flex; gap: 12px; align-items: start;
  padding: 14px 16px; border-radius: var(--r-kucuk);
  background: var(--uyari-zemin); border: 1px solid color-mix(in srgb, var(--uyari) 30%, transparent);
  color: var(--uyari); font-size: 14px;
}

.etiket {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 4px 10px; border-radius: 999px;
  font-size: 11.5px; font-weight: 700; letter-spacing: .02em;
}
.etiket.stokta { background: var(--basari-zemin); color: var(--basari); border: 1px solid var(--basari-kenar); }
.etiket.tukendi { background: var(--uyari-zemin); color: var(--uyari); border: 1px solid color-mix(in srgb, var(--uyari) 30%, transparent); }
.etiket.ozel { background: var(--bilgi-zemin); color: var(--bilgi); border: 1px solid color-mix(in srgb, var(--bilgi) 30%, transparent); }
.etiket.bekliyor { background: var(--uyari-zemin); border: 1px solid var(--uyari); color: var(--uyari); }

/* ==========================================================================
   FORMLAR
   ========================================================================== */
label { display: block; margin: 0 0 14px; font-size: 13px; font-weight: 650;
  color: var(--metin-sonuk); letter-spacing: .01em; }

input[type="text"], input[type="email"], input[type="password"],
input[type="number"], input[type="search"], select, textarea {
  width: 100%; margin-top: 7px; padding: 11px 14px;
  border: 1px solid var(--kenar); border-radius: var(--r-kucuk);
  background: var(--kart); color: var(--metin);
  font: inherit; font-size: 15px; font-weight: 400;
  transition: border-color .15s, box-shadow .15s, background .15s;
}
input:focus, select:focus, textarea:focus {
  outline: none; border-color: var(--vurgu);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--vurgu) 22%, transparent);
}
input::placeholder { color: var(--metin-sonuk); }

.onay { display: flex; align-items: center; gap: 10px; font-weight: 600;
  color: var(--metin-orta); margin: 0 0 16px; font-size: 14px; }
.onay input { width: auto; margin: 0; flex: none; accent-color: var(--vurgu-koyu); }

.yardim { margin: -8px 0 16px; font-size: 12.5px; color: var(--metin-sonuk); }

.hata, .bilgi-mesaj, .basari {
  border-radius: var(--r-kucuk); padding: 13px 16px; margin: 0 0 18px;
  font-size: 14px; font-weight: 600; text-align: left;
}
.hata    { background: var(--hata-zemin);   border: 1px solid var(--hata-kenar);   border-left: 4px solid var(--hata);   color: var(--hata); }
.basari  { background: var(--basari-zemin); border: 1px solid var(--basari-kenar); border-left: 4px solid var(--basari); color: var(--basari); }
.bilgi-mesaj { background: var(--bilgi-zemin); border: 1px solid color-mix(in srgb, var(--bilgi) 30%, transparent);
  border-left: 4px solid var(--bilgi); color: var(--bilgi); }

/* Giriş / kayıt kartları */
.form-sarmal { display: grid; place-items: center; padding: 48px 0; }
.form-kart {
  width: 100%; max-width: 430px; padding: 32px;
  background: var(--kart); border: 1px solid var(--kenar);
  border-radius: 14px; box-shadow: var(--golge);
}
.form-kart h1 { margin: 0 0 6px; font-size: 25px; font-weight: 800; letter-spacing: -.025em; }
.form-kart .giris-metni { margin: 0 0 22px; color: var(--metin-sonuk); font-size: 14.5px; }
.form-kart form { margin-top: 18px; }
.form-alt { margin: 18px 0 0; font-size: 14px; color: var(--metin-sonuk); text-align: center; }
.form-alt a { font-weight: 700; text-decoration: none; }
.form-alt a:hover { text-decoration: underline; }
.form-alt.ayrik { margin-top: 16px; padding-top: 16px; border-top: 1px solid var(--kenar); font-size: 13px; }
.satir-arasi { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
.satir-arasi .onay { margin: 0; }
.satir-arasi a { font-size: 13.5px; font-weight: 650; text-decoration: none; }
.satir-arasi a:hover { text-decoration: underline; }

/* Google ile giriş — marka kuralı: beyaz zemin, koyu yazı, renkli logo */
.google-dugme { background: #ffffff; color: #1f1f1f; border: 1px solid #dadce0; gap: 10px; }
.google-dugme:hover { background: #f7f8f8; color: #1f1f1f; }
.google-dugme svg { flex: none; display: block; }

/* "veya" ayracı */
.ayirac { display: flex; align-items: center; gap: 12px; margin: 16px 0; color: var(--metin-sonuk); font-size: 12.5px; }
.ayirac::before, .ayirac::after { content: ''; flex: 1; height: 1px; background: var(--kenar); }

/* ==========================================================================
   TESLİM EDİLEN HESAPLAR
   ========================================================================== */
.teslim-paneli { background: var(--basari-zemin); border: 1px solid var(--basari-kenar);
  border-radius: var(--r); padding: 7px; margin: 20px 0; }
.teslim-basligi { padding: 10px 12px; font-size: 11.5px; font-weight: 800;
  text-transform: uppercase; letter-spacing: .08em; color: var(--basari); }
.hesap-satir {
  display: flex; align-items: center; gap: 11px;
  background: var(--kart); border: 1px solid var(--kenar);
  border-radius: var(--r-kucuk); padding: 10px 12px; margin-bottom: 6px;
}
.hesap-satir:last-child { margin-bottom: 0; }
.hesap-no { flex: none; width: 23px; height: 23px; display: grid; place-items: center;
  border-radius: 50%; background: var(--basari-zemin); color: var(--basari);
  font-size: 11px; font-weight: 800; border: 1px solid var(--basari-kenar); }
.hesap-metin {
  flex: 1; min-width: 0; overflow-x: auto; white-space: nowrap;
  font: 13.5px/1.6 ui-monospace, SFMono-Regular, Consolas, monospace;
  color: var(--metin); -webkit-user-select: all; user-select: all;
}
.kopya-dugme {
  flex: none; padding: 7px 13px; font-size: 12.5px; font-weight: 700;
  background: var(--kart); color: var(--ana);
  border: 1px solid var(--kenar); border-radius: 8px; cursor: pointer;
  transition: border-color .15s, background .15s;
}
.kopya-dugme:hover { border-color: var(--ana-kenar); background: var(--ana-zemin); }
.kopyalandi { color: var(--basari) !important; border-color: var(--basari) !important; }

.dugmeler { display: flex; flex-wrap: wrap; gap: 10px; }

/* ==========================================================================
   TABLOLAR (hesabım)
   ========================================================================== */
.tablo-kart { background: var(--kart); border: 1px solid var(--kenar); border-radius: var(--r); overflow-x: auto; }
table { width: 100%; border-collapse: collapse; font-size: 14px; }
thead { background: var(--kart-ust); }
th { text-align: left; padding: 12px 18px; font-size: 11px; font-weight: 700;
  text-transform: uppercase; letter-spacing: .07em; color: var(--metin-sonuk);
  border-bottom: 1px solid var(--kenar); white-space: nowrap; }
td { padding: 13px 18px; border-bottom: 1px solid var(--kenar); color: var(--metin-orta); white-space: nowrap; }
tbody tr:last-child td { border-bottom: 0; }
tbody tr:hover { background: var(--kart-ust); }
.sayi { text-align: right; font-variant-numeric: tabular-nums; }
.bos { text-align: center; color: var(--metin-sonuk); padding: 30px 12px; }
.bos a { color: var(--ana); font-weight: 650; }

.ozet-izgara { display: grid; gap: 16px; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); }
.ozet-kart { padding: 20px; border-radius: var(--r); background: var(--kart); border: 1px solid var(--kenar); }
.ozet-etiket { font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .07em; color: var(--metin-sonuk); }
.ozet-deger { margin-top: 7px; font-size: 27px; font-weight: 800; letter-spacing: -.03em;
  color: var(--metin); font-variant-numeric: tabular-nums; line-height: 1.2; }
.ozet-deger.kucuk { font-size: 15px; font-weight: 650; letter-spacing: 0; word-break: break-all; }
.ozet-not { margin: 6px 0 0; font-size: 12.5px; color: var(--metin-sonuk); }
/* Bakiye kartı öne çıkarılır: üyenin en çok baktığı sayı odur. */
.ozet-kart.vurgulu { background: var(--ana-zemin); border-color: var(--ana-kenar); }
.ozet-kart.vurgulu .ozet-etiket, .ozet-kart.vurgulu .ozet-deger { color: var(--ana); }
.ozet-kart.vurgulu .ozet-not { color: color-mix(in srgb, var(--ana) 75%, var(--metin-sonuk)); }

/* ==========================================================================
   ÜYE PANELİ
   ========================================================================== */
/* ⚠ Menü 980px üstünde SOLDA sabit sütun, altında YATAY kaydırılabilir
   şerit olur. Mobilde dikey menü ekranın yarısını yiyordu. */
.uye-duzen {
  display: grid; gap: 26px; align-items: start;
  padding-top: 28px; padding-bottom: 8px;
  grid-template-columns: minmax(0, 1fr);
}
@media (min-width: 980px) {
  .uye-duzen { grid-template-columns: 232px minmax(0, 1fr); gap: 32px; }
}

/* ⚠ MENÜ YAPIŞKAN DEĞİL (kullanıcı bildirdi: "biraz kaymış"): yapışkan
   menü kaydırınca içerik başlığıyla 13px kayıyordu (ölçüldü). */
.uye-menu {
  display: flex; gap: 4px;
  overflow-x: auto; padding-bottom: 4px;
  -webkit-overflow-scrolling: touch; scrollbar-width: thin;
}
@media (min-width: 980px) {
  .uye-menu { flex-direction: column; overflow: visible; padding: 8px; padding-bottom: 8px;
    background: var(--kart); border: 1px solid var(--kenar); border-radius: var(--r); }
}
.uye-menu-oge {
  display: inline-flex; align-items: center; gap: 10px; flex: none;
  padding: 10px 13px; border-radius: var(--r-kucuk);
  color: var(--metin-orta); text-decoration: none;
  font-size: 14.5px; font-weight: 600; white-space: nowrap;
  border: 1px solid transparent;
  transition: background .15s, color .15s, border-color .15s;
}
.uye-menu-oge:hover { background: var(--zemin-2); color: var(--metin); }
.uye-menu-oge svg { flex: none; opacity: .75; }
.uye-menu-oge.etkin { background: var(--ana-zemin); border-color: var(--ana-kenar); color: var(--ana); }
.uye-menu-oge.etkin svg { opacity: 1; }
/* ⚠ Çıkış en altta ve AYRI: yanlışlıkla tıklanmasın. */
.uye-menu-oge.cikis { color: var(--metin-sonuk); }
.uye-menu-oge.cikis:hover { color: var(--hata); background: var(--hata-zemin); }
@media (min-width: 980px) {
  .uye-menu-oge.cikis { margin-top: 10px; padding-top: 16px; border-top: 1px solid var(--kenar);
    border-radius: 0 0 var(--r-kucuk) var(--r-kucuk); }
}

.uye-icerik { min-width: 0; }
.uye-basligi { margin-bottom: 22px; }
.uye-basligi h1 { margin: 0 0 4px; font-size: clamp(22px, 3vw, 28px); font-weight: 750; letter-spacing: -.025em; line-height: 1.2; }
.uye-basligi p { margin: 0; color: var(--metin-sonuk); font-size: 14.5px; }
.uye-bolum { margin-top: 34px; }
.uye-bolum-basi { display: flex; align-items: center; gap: 12px; margin-bottom: 12px; }
.uye-bolum-basi h2 { margin: 0; font-size: 17px; font-weight: 700; letter-spacing: -.02em; line-height: 1.2; }
.uye-bolum-basi .dugme { margin-left: auto; }
.kutu.dar { max-width: 460px; }

/* --- Süzgeç / arama --- */
.suzgec { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin-bottom: 14px; }
.suzgec input[type="search"] {
  flex: 1 1 220px; min-width: 0; margin: 0;
  padding: 9px 12px; font: inherit; font-size: 14px;
  background: var(--kart); color: var(--metin);
  border: 1px solid var(--kenar); border-radius: var(--r-kucuk);
}
.suzgec-bilgi { margin-left: auto; font-size: 13px; color: var(--metin-sonuk); }

/* --- Sayfalama --- */
.sayfalama { display: flex; align-items: center; gap: 10px; margin-top: 14px; }
.sayfalama-bilgi { font-size: 13px; color: var(--metin-sonuk); font-variant-numeric: tabular-nums; }

/* --- Ödeme yöntemi seçimi --- */
.odeme-secimler { display: grid; gap: 8px; margin: 4px 0 16px; }
.odeme-secim {
  display: flex; gap: 11px; align-items: center;
  padding: 12px 14px; cursor: pointer;
  background: var(--kart-ust); border: 1px solid var(--kenar); border-radius: var(--r-kucuk);
  transition: border-color .15s, background .15s;
}
.odeme-secim:hover { border-color: var(--kenar-guclu); }
.odeme-secim input { margin: 3px 0 0; flex: none; accent-color: var(--vurgu-koyu); }
.odeme-secim b { display: block; font-size: 14px; font-weight: 700; color: var(--metin); }
.odeme-secim small { display: block; margin-top: 3px; font-size: 12.5px; color: var(--metin-sonuk); word-break: break-all; line-height: 1.5; }
/* ⚠ Kripto adresi ELLE SEÇİLEBİLİR olmalı: kullanıcı kopyalayacak. */
.odeme-secim small.secilebilir { user-select: all; font-family: ui-monospace, Consolas, monospace; }
.odeme-secim:has(input:checked) { border-color: var(--ana-kenar); background: var(--ana-zemin); }
/* ⚠ Kopyala düğmesi label'in İÇİNDE; metin bloğu min-width:0 almalı,
   yoksa uzun cüzdan adresi düğmeyi kutunun dışına iter. */
.odeme-metin { flex: 1; min-width: 0; }
.odeme-secim .kopya-dugme { align-self: center; }

.istege-bagli { font-weight: 400; color: var(--metin-sonuk); font-size: 12.5px; }
/* ⚠ Tarayıcı adı çok uzun olabiliyor; tabloyu taşırmasın. */
.kirp { max-width: 260px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

/* --- Üye paneli form aralıkları ---
   ⚠ Üye panelinde <label> ve <input> AYRI yazılır (şifre yöneticisi
     for/id eşleşmesini görebilsin diye); boşluk düzeni buna göre
     (kullanıcı bildirdi: "yazı sıkışmış"). `search` DIŞARIDA. */
.uye-icerik label { margin-bottom: 6px; }
.uye-icerik input[type="text"],
.uye-icerik input[type="email"],
.uye-icerik input[type="password"],
.uye-icerik input[type="number"] { margin-top: 0; margin-bottom: 14px; }
.uye-icerik .yardim { margin: -8px 0 16px; }

/* --- Hızlı satın alma listesi ---
   ⚠ Tablo DEĞİL: satırlar mobilde alt alta yığılmalı. */
.al-listesi { display: grid; gap: 10px; margin-top: 20px; }
.al-satir {
  display: grid; gap: 12px 18px; align-items: center;
  grid-template-columns: minmax(0, 1fr);
  padding: 16px 18px;
  background: var(--kart); border: 1px solid var(--kenar); border-radius: var(--r);
  transition: border-color .15s;
}
.al-satir:hover { border-color: var(--kenar-guclu); }
@media (min-width: 760px) { .al-satir { grid-template-columns: minmax(0, 1fr) auto auto; } }
.al-bilgi { min-width: 0; }
.al-kategori { margin: 0 0 2px; font-size: 11px; font-weight: 700; letter-spacing: .07em; text-transform: uppercase; color: var(--metin-sonuk); }
.al-bilgi h3 { margin: 0; font-size: 16px; font-weight: 700; letter-spacing: -.02em; }
.al-bilgi h3 a { color: var(--metin); text-decoration: none; }
.al-bilgi h3 a:hover { color: var(--ana); }
.al-aciklama { margin: 4px 0 0; font-size: 13px; color: var(--metin-sonuk); }
.al-fiyat { display: flex; flex-direction: column; gap: 1px; }
.al-fiyat b { font-size: 18px; font-weight: 800; letter-spacing: -.02em; color: var(--metin); }
.al-fiyat span { font-size: 12px; color: var(--metin-sonuk); }
@media (min-width: 760px) { .al-fiyat { align-items: flex-end; text-align: right; } }
.al-islem { display: flex; flex-direction: column; gap: 4px; }
.al-form { display: flex; gap: 8px; align-items: center; }
/* ⚠ Adet kutusu DAR: yanında düğmeyle birlikte mobilde de sığmalı. */
.al-form .al-adet { width: 88px; margin: 0; padding: 9px 10px; font-size: 15px; text-align: center; }
.al-form .al-dugme { flex: none; }
/* Boşken de yer kaplar: yazı belirince satırlar zıplamasın. */
.al-not { margin: 0; min-height: 17px; font-size: 12.5px; color: var(--metin-orta); }
.al-not.uyari { color: var(--uyari); }
@media (min-width: 760px) { .al-islem { align-items: flex-end; } }

/* ==========================================================================
   İLETİŞİM SAYFASI + WHATSAPP
   ========================================================================== */
.iletisim-izgara { display: grid; gap: 14px; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); }
.iletisim-kart {
  display: flex; gap: 14px; align-items: flex-start;
  padding: 20px; border-radius: var(--r);
  background: var(--kart); border: 1px solid var(--kenar);
  transition: border-color .18s ease;
}
.iletisim-kart:hover { border-color: var(--kenar-guclu); }
.iletisim-kart.one-cikan { border-color: var(--basari-kenar); background: var(--basari-zemin); }
.iletisim-simge {
  flex: none; width: 42px; height: 42px; border-radius: 12px;
  display: grid; place-items: center; font-size: 20px; font-weight: 800;
  background: var(--ana-zemin); color: var(--ana); border: 1px solid var(--ana-kenar);
}
/* WhatsApp yeşili — MARKA RENGİ: tanınıyor olmak için resmi #25D366. */
.iletisim-simge.wa { background: #25D366; color: #fff; border-color: #25D366; }
.iletisim-govde { min-width: 0; }
.iletisim-govde h2 { margin: 0 0 6px; font-size: 16px; font-weight: 700; }
.iletisim-govde p { margin: 0 0 12px; font-size: 14px; color: var(--metin-orta); line-height: 1.6; }
.iletisim-numara { font-size: 18px !important; font-weight: 800; color: var(--metin) !important; letter-spacing: .01em; margin-bottom: 12px !important; }

/* WhatsApp düğmesi — resmi yeşil; bu tonda beyaz yazı yeterince okunaklı değil, koyu yazı. */
.wa-dugme { background: #25D366 !important; color: #0b2b18 !important; border-color: #25D366 !important; }
.wa-dugme:hover { filter: brightness(1.05); }
.wa-dugme svg { flex: none; }

/* Sabit WhatsApp balonu (tüm sayfalarda sağ altta). z-index başlıktan
   (50) düşük: açık menünün üstüne binmez. */
.wa-balon {
  position: fixed; right: 18px; bottom: 18px; z-index: 40;
  display: inline-flex; align-items: center; gap: 8px;
  padding: 12px 16px; border-radius: 999px;
  background: #25D366; color: #0b2b18; text-decoration: none;
  font-weight: 700; font-size: 14px;
  box-shadow: 0 6px 20px rgba(37,211,102,.4);
  transition: transform .15s ease, box-shadow .15s ease;
}
.wa-balon:hover { transform: translateY(-2px); box-shadow: 0 8px 26px rgba(37,211,102,.5); }
.wa-balon svg { flex: none; }
/* ⚠ Çok dar ekranda yalnızca ikon: "Destek" yazısı yer kaplamasın. */
@media (max-width: 420px) {
  .wa-balon { padding: 13px; }
  .wa-balon span { display: none; }
}

/* ==========================================================================
   API ERİŞİMİ (/hesabim/api) VE API DOKÜMANI (/api)
   ========================================================================== */
.kopya-satir { display: flex; gap: 10px; align-items: center; flex-wrap: wrap; }
.kopya-girdi {
  flex: 1; min-width: 220px; padding: 10px 12px;
  background: var(--zemin-2); color: var(--metin); border: 1px solid var(--kenar);
  border-radius: 8px; font: 13.5px/1.5 ui-monospace, SFMono-Regular, Consolas, monospace;
}
.kod-blok { background: var(--zemin-2); border: 1px solid var(--kenar); border-radius: 8px;
  padding: 12px 14px; margin: 6px 0 16px; overflow-x: auto; }
.kod-blok code { font: 13px/1.6 ui-monospace, SFMono-Regular, Consolas, monospace;
  color: var(--metin); white-space: pre; background: none; padding: 0; }
.api-dok code { font-family: ui-monospace, SFMono-Regular, Consolas, monospace; }
.api-dok p { color: var(--metin-orta); }
.api-dok p strong { color: var(--metin); }
.api-yontem {
  display: inline-block; min-width: 46px; text-align: center;
  padding: 3px 8px; border-radius: 6px; font-size: 12px; font-weight: 800;
  font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
  background: var(--basari-zemin); color: var(--basari); border: 1px solid var(--basari-kenar);
}
.api-yontem.post { background: var(--ana-zemin); color: var(--ana); border-color: var(--ana-kenar); }
.api-adim { margin: 8px 0 0; padding-left: 20px; color: var(--metin-orta); line-height: 1.7; }
.api-adim li { margin-bottom: 4px; }
.api-anahtar-hucre { min-width: 220px; }
.api-anahtar-deger {
  display: block; max-width: 100%; overflow-x: auto; white-space: nowrap;
  font: 12.5px/1.6 ui-monospace, SFMono-Regular, Consolas, monospace;
  color: var(--metin); padding: 4px 0;
}
.api-anahtar-dugmeler { display: flex; gap: 6px; margin-top: 4px; }
.api-not { margin: 4px 0 0; font-size: 12.5px; color: var(--metin-orta); line-height: 1.5; }
code.soluk { color: var(--metin-orta); opacity: .7; }

/* ==========================================================================
   ALT BİLGİ — lacivert marka zemini (açık yazılı logo ile)
   ========================================================================== */
.site-alt { margin-top: 8px; background: var(--lacivert); color: #c9c3e6; }
.alt-izgara {
  display: grid; gap: 28px;
  grid-template-columns: 1.5fr repeat(4, minmax(0, 1fr));
  padding-top: 44px; padding-bottom: 32px;
}
.alt-marka .marka-logo { height: 28px; }
.alt-marka p { margin: 12px 0 0; max-width: 250px; color: #a9a3c7; font-size: 14px; }
.alt-izgara h3 { margin: 0 0 12px; font-size: 11.5px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: #a9a3c7; }
.alt-izgara nav a { display: block; margin: 0 0 9px; color: #e4dfff; font-size: 14px; text-decoration: none; }
.alt-izgara nav a:hover { color: #fbbf6a; }
.alt-yasal { border-top: 1px solid rgba(196,181,253,.15); padding: 18px 0 22px; text-align: center; }
.alt-yasal p { margin: 0 0 6px; font-size: 13px; color: #a9a3c7; }
.alt-yasal .yasal-not { max-width: 880px; margin: 0 auto; font-size: 11.5px; line-height: 1.6; }

/* ==========================================================================
   DAR EKRAN
   ========================================================================== */
@media (max-width: 960px) {
  /* Sahne tek sütun: canlı panel metnin altına iner. */
  .sahne { grid-template-columns: minmax(0, 1fr); padding: 38px 30px; }
}

@media (max-width: 900px) {
  .urun-duzen { grid-template-columns: minmax(0, 1fr); }
  .satis-kutu { position: static; }
  .alt-izgara { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .alt-marka { grid-column: 1 / -1; }
}

/* Başlık: arama kendi satırına iner, sekmeler "Menü" düğmesinin altına toplanır. */
@media (max-width: 860px) {
  html { scroll-padding-top: 160px; }
  .ust-satir { flex-wrap: wrap; gap: 10px 12px; padding: 10px 0; min-height: 0; }
  .ust-hesap { margin-left: auto; }
  .arama { order: 3; flex-basis: 100%; max-width: none; }
  .gez-dugme { display: inline-flex; }
  .sekme-ic { min-height: 48px; }
  .sekmeler {
    display: none; position: absolute; left: 0; right: 0; top: 100%;
    flex-direction: column; align-items: stretch; gap: 2px;
    padding: 8px 16px 14px; background: var(--kart);
    border-bottom: 1px solid var(--kenar); box-shadow: var(--golge);
  }
  .gez-anahtari:checked ~ .sekmeler { display: flex; }
  .sekme { padding: 11px 12px; font-size: 15px; }
  .sekme.vurgulu { margin: 6px 0 0; justify-content: center; }
  .sekme-acilir > summary { width: 100%; }
  .acilir-panel { position: static; box-shadow: none; border: 0; padding: 0 0 4px 12px; min-width: 0; }
  .satis-kutu { top: auto; }
}

@media (max-width: 760px) {
  .kapsayici { padding: 0 16px; }
  .sahne { padding: 30px 20px; border-radius: 16px; gap: 24px; }
  /* Sadelik: canlı panel mobilde gizli; alt alta dizilince ürünleri ekranın
     epey aşağısına itiyordu (390px görüntüsünde ölçüldü). Betik de
     görünmez paneli tazelemez (bkz. CANLI_PANEL_SCRIPTI). */
  .canli-panel { display: none; }
  .ss-hucre { padding-right: 18px; margin-right: 18px; }
  .ss-hucre dd { font-size: 22px; }
  .magaza-bas { align-items: flex-start; }
  /* Çipler tek satırda yatay kaydırılır: alt alta dizilip tabloyu itmesin. */
  .kategori-cipleri { margin-left: 0; width: 100%; flex-wrap: nowrap; overflow-x: auto; padding-bottom: 4px; scrollbar-width: thin; }
  .cip { flex: none; }

  /* Tablo satırı karta dönüşür: üstte ürün, altta stok | fiyat | eylem */
  .ut-kafa { display: none; }
  .ut-satir, .urun-tablosu.uye .ut-satir {
    grid-template-columns: minmax(0, 1fr) auto auto;
    grid-template-areas: "urun urun urun" "stok fiyat eylem";
    gap: 10px 14px; padding: 14px 16px;
  }
  /* Üyede eylem (adet + düğme) kendi satırına iner, tam genişlik */
  .urun-tablosu.uye .ut-satir { grid-template-areas: "urun urun urun" "stok fiyat fiyat" "eylem eylem eylem"; }
  .urun-tablosu.uye .ut-al { width: 100%; }
  .urun-tablosu.uye .ut-al .dugme { flex: 1; }
  .ut-urun { grid-area: urun; }
  .ut-stok { grid-area: stok; flex-direction: row; align-items: center; gap: 8px; }
  .ut-birim { display: inline; }
  .ut-fiyat { grid-area: fiyat; }
  .ut-eylem { grid-area: eylem; }

  /* Zaman çizgisi dikey */
  .zaman-cizgisi { grid-template-columns: minmax(0, 1fr); gap: 16px; text-align: left; }
  .zaman-cizgisi::before { top: 22px; bottom: 22px; left: 21px; right: auto; width: 2px; height: auto;
    background: linear-gradient(180deg, var(--ana-kenar), var(--ana) 60%, var(--vurgu)); }
  .zaman-cizgisi li { display: grid; grid-template-columns: 44px minmax(0, 1fr); column-gap: 14px; align-items: center; padding: 0; }
  .zc-no { grid-row: span 2; margin: 0; }
  .zaman-cizgisi small { max-width: none; }

  .bolum-orta { margin-top: 46px; }
  .sss-izgara { grid-template-columns: minmax(0, 1fr); }
  .seo-kutu { padding: 20px; }
  .sk-sutunlar { grid-template-columns: minmax(0, 1fr); gap: 4px; }
  .form-sarmal { padding: 28px 0; }
  .form-kart { padding: 24px 20px; }
  .kutu { padding: 18px; }
  .dugmeler .dugme { flex: 1 1 100%; }
}

@media (max-width: 480px) {
  .ust-hesap .dugme { padding: 8px 12px; min-height: 36px; font-size: 13.5px; }
  .ust-hesap .dugme .ikon { display: none; }
  .marka-logo { height: 26px; }
  .sahne-eylem .dugme { flex: 1 1 100%; }
  .alt-izgara { grid-template-columns: minmax(0, 1fr); }
}
