/* ============================================================
   COLOR CALM v1 — turuncu marka + nötr yüzey; beğenilmezse bu diff geri alınır.
   Shotipay — Polaris-inspired design system (storefront)
   Mobile-app quality feel: safe-area aware, bottom tab bar,
   momentum scroll, tap feedback.
   ============================================================ */

/* Inter Variable — self-hosted (fatura.php ASLA bu fontu kullanmaz) */
@font-face {
  font-family: 'Inter var';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url('../fonts/InterVariable.woff2') format('woff2');
}
@font-face {
  font-family: 'Inter var';
  font-style: italic;
  font-weight: 100 900;
  font-display: swap;
  src: url('../fonts/InterVariable-Italic.woff2') format('woff2');
}

:root {
  /* Surface — Trendyol light */
  --p-bg:            #fafafa;
  --p-bg-surface:    #ffffff;
  --p-bg-subdued:    #f5f5f7;
  --p-bg-hover:      #f3f3f3;
  --p-bg-active:     #ececec;
  --p-bg-input:      #ffffff;

  /* Text */
  --p-text:          #18181b;
  --p-text-subdued:  #52525b;
  --p-text-disabled: #a1a1aa;
  --p-text-onbrand:  #ffffff;

  /* Border */
  --p-border:        #e6e6e6;
  --p-border-strong: #d9d9d9;
  --p-border-input:  #d0d0d0;

  /* Brand / actions — yalnız CTA & vurgu */
  --p-brand:         #f27a1a;
  --p-brand-hover:   #e06c0e;
  --p-brand-active:  #c95f0a;
  --p-brand-subdued: #fff7f0;
  --p-brand-text:    #c2410c;

  /* Status — dar palet (yeşil/kırmızı; info nötr) */
  --p-critical:      #dc2626;
  --p-critical-bg:   #fef2f2;
  --p-critical-border:#fecaca;
  --p-warning:       #a16207;
  --p-warning-bg:    #fffbeb;
  --p-warning-border:#fde68a;
  --p-success:       #15803d;
  --p-success-bg:    #f0fdf4;
  --p-success-border:#bbf7d0;
  --p-info:          #3f3f46;
  --p-info-bg:       #f4f4f5;
  --p-info-border:   #e4e4e7;
  --p-attention:     #a16207;
  --p-attention-bg:  #fffbeb;
  --p-highlight-bg:  #fff7f0;

  /* Banka/havale aksanı — bilinçli ikincil renk (güven mavisi), tek ailede */
  --p-bank:        #2563eb;
  --p-bank-bg:     #eef5fc;
  --p-bank-border: #d7e6f7;

  /* Footer — açık, sayfa zeminiyle aynı aile */
  --p-footer-bg:    #ffffff;
  --p-footer-text:  #3f3f46;
  --p-footer-muted: #71717a;

  /* Radius — tema setinden override edilir (--p-r-*) */
  --p-r-xs: 4px;
  --p-r-1: 6px;
  --p-r-2: 8px;
  --p-r-3: 10px;
  --p-r-card: 12px;
  --p-r-4: 14px;
  --p-r-5: 18px;
  --p-r-btn: var(--p-r-2);
  --p-r-input: var(--p-r-2);
  --p-r-media: var(--p-r-2);
  --p-r-panel: var(--p-r-4);
  --p-r-sheet: var(--p-r-5);
  --p-r-full: 999px;

  /* Shadow — softer, Trendyol-like (buttons carry NO shadow).
     Sıcak-tintli: saf siyah yerine marka turuncusuyla aynı aileden
     koyu kahve ton (redesign denetimi: gölge zemin/marka rengiyle tintlenir) */
  --p-shadow-1: 0 1px 2px rgba(51,34,17,.05);
  --p-shadow-2: 0 1px 3px rgba(51,34,17,.07);
  --p-shadow-3: 0 6px 18px rgba(51,34,17,.10);
  --p-shadow-pop: 0 8px 24px rgba(51,34,17,.13);

  --p-font: 'Inter var', Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --p-font-display: var(--p-font);
  --p-font-mono: var(--p-font);

  --nav-h: 60px;
  --top-h: 56px;
}

* { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body {
  margin: 0;
  font-family: var(--p-font);
  background: var(--p-bg);
  color: var(--p-text);
  font-size: 15px;
  font-weight: 400;
  line-height: 1.55;
  letter-spacing: -0.006em;
  font-feature-settings: 'cv11', 'ss01', 'liga';
  font-optical-sizing: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
  padding-bottom: 0;
  overscroll-behavior-y: none;
}
a { color: var(--p-text); text-decoration: none; }
a:hover:not(.btn):not(.sv-btn):not(.sv-fab):not(.sv-cell):not(.sv-ext-link):not(.sv-hl) { color: var(--p-brand-text); }
img { max-width: 100%; display: block; }
button, input, select, textarea { font-family: inherit; }
h1,h2,h3,h4,h5,h6 {
  margin: 0;
  font-family: var(--p-font);
  font-weight: 700;
  letter-spacing: -0.022em;
  line-height: 1.25;
  color: var(--p-text);
  text-wrap: balance; /* öksüz kelime / dengesiz satır kırılımı önlemi */
}
h1 { font-size: 22px; font-weight: 700; }
h2 { font-size: 18px; font-weight: 700; }
h3 { font-size: 16px; font-weight: 600; }
p { text-wrap: pretty; }
::selection { background: var(--p-brand-subdued); }

/* Klavye erişilebilirliği: görünür focus halkası (fare tıklamasında görünmez) */
:focus-visible {
  outline: 2px solid var(--p-brand);
  outline-offset: 2px;
  border-radius: var(--p-r-xs);
}
.btn:focus-visible, a:focus-visible { outline-offset: 3px; }

/* Sayısal veriler hizalı bassın (fiyat, sayaç, takip no) */
.pcard-price, .li-price, .sticky-price, .osum-price, .sum-row,
.pay-tl-date, .order-link-total, .acc-nav-item .ani-lbl small,
[data-copy], time { font-variant-numeric: tabular-nums; }

/* Inter Variable tek tipografi — başlık/UI aynı aile, ağırlıkla hiyerarşi */
.font-display,
.brand-logo,
.site-header,
.header-cats,
.tabbar,
.pcard-price .now,
.pcard-title,
.pdp-title,
.pdp-bes-tab,
.hero h1,
.car-title,
.btn,
.sum-row.total,
.sticky-buy-btn,
.sticky-bar-cta,
.sticky-price-val,
.fomo-modal-title,
.fomo-cd-seg b,
.tr-h1,
.tr-h2,
.legal-title,
.section-title,
.h-action,
.hs-links a,
.header-cats a,
.tabbar a {
  font-family: var(--p-font);
}
.font-mono,
.iban-val,
.pbi-value,
.obr-mono,
.mono {
  font-family: var(--p-font);
  font-variant-numeric: tabular-nums;
  font-feature-settings: 'tnum', 'cv11', 'ss01';
  letter-spacing: -0.01em;
}

/* ---------- Layout ---------- */
.container { width: 100%; max-width: 1080px; margin: 0 auto; padding: 0 16px; }
.stack { display: flex; flex-direction: column; }
.stack-2 > * + * { margin-top: 8px; }
.stack-3 > * + * { margin-top: 12px; }
.stack-4 > * + * { margin-top: 16px; }
.row { display: flex; align-items: center; gap: 10px; }
.row-between { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.grow { flex: 1; }
.muted { color: var(--p-text-subdued); }
.small { font-size: 13px; }
.tiny { font-size: 12px; }
.strong { font-weight: 600; }
.center { text-align: center; }

/* ---------- Header (Trendyol tarzı — mobil + masaüstü) ---------- */
.site-header {
  position: sticky; top: 0; z-index: 50;
  background: #fff;
  border-bottom: 1px solid var(--p-border);
  padding-top: env(safe-area-inset-top);
}

/* Slim üst şerit (yalnız masaüstü) */
.header-strip { display: none; border-bottom: 1px solid var(--p-bg-subdued); }
.header-strip .container { display: flex; align-items: center; justify-content: space-between; height: 32px; }
.hs-note { font-size: 12px; color: var(--p-text-subdued); display: inline-flex; align-items: center; gap: 6px; }
.hs-note svg { width: 14px; height: 14px; color: var(--p-brand); }
.hs-links { display: flex; gap: 18px; }
.hs-links a { font-size: 12px; color: var(--p-text-subdued); }
.hs-links a:hover { color: var(--p-brand-text); }

/* Mobil: 2 satır — [menü · logo · ikonlar] / [arama] */
.header-main .container {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  grid-template-areas: "menu logo actions";
  column-gap: 6px;
  align-items: center;
  padding-top: 10px;
  padding-bottom: 10px;
  min-height: 0;
}
.h-menu {
  grid-area: menu;
  width: 40px; height: 40px;
  display: grid; place-items: center;
  border: none; background: transparent; border-radius: var(--p-r-3);
  color: var(--p-text); cursor: pointer;
  -webkit-tap-highlight-color: transparent;
}
.h-menu svg { width: 24px; height: 24px; }
.h-menu:active { background: var(--p-bg-subdued); }
.brand-logo {
  grid-area: logo;
  justify-self: start;
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  max-width: 148px;
  font-weight: 700;
  font-size: 17px;
  letter-spacing: -0.02em;
  color: var(--p-text);
  text-decoration: none;
  flex-shrink: 1;
}
.brand-logo-img {
  display: block;
  height: 28px;
  width: auto;
  max-width: 140px;
  object-fit: contain;
  object-position: left center;
}
.brand-mark {
  flex: 0 0 auto;
  width: 28px; height: 28px;
  border-radius: var(--p-r-2);
  display: grid; place-items: center;
  background: var(--p-brand);
  color: #fff;
  font-size: 14px; font-weight: 800;
  letter-spacing: -.02em;
}
.brand-name {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-weight: 750;
  letter-spacing: -.02em;
}



.header-search {
  grid-area: search;
  display: flex;
  align-items: center;
  min-width: 0;
  width: 100%;
  height: 40px;
  background: var(--p-bg-subdued);
  border: 1px solid transparent;
  border-radius: var(--p-r-3);
  overflow: hidden;
  transition: border-color .15s, background .15s, box-shadow .15s;
  box-sizing: border-box;
}
.header-search:focus-within {
  background: #fff;
  border-color: var(--p-brand);
  box-shadow: 0 0 0 3px rgba(242,122,26,.12);
}
.header-search input {
  flex: 1; min-width: 0;
  border: none; outline: none; background: transparent;
  font-size: 14px; color: var(--p-text);
  padding: 0 12px; height: 100%;
}
.header-search input::placeholder { color: var(--p-text-disabled); }
.header-search button {
  width: 42px; height: 100%; flex-shrink: 0;
  display: grid; place-items: center;
  color: var(--p-text-subdued);
  background: transparent; border: none; cursor: pointer;
}
.header-search button:hover { color: var(--p-brand-hover); }
.header-search button svg { width: 20px; height: 20px; }

/* Mobil aksiyonlar: yalnız ikon */
.header-actions {
  grid-area: actions;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 0;
  flex-shrink: 0;
}
.h-action {
  position: relative;
  display: grid;
  place-items: center;
  width: 40px;
  height: 40px;
  border-radius: var(--p-r-3);
  color: var(--p-text);
  text-decoration: none;
  -webkit-tap-highlight-color: transparent;
  transition: background .12s, color .12s;
}
.h-action svg { width: 22px; height: 22px; display: block; }
.h-action span:not(.badge-count) { display: none; }
.h-action:active { background: var(--p-bg-subdued); }
.h-action .badge-count {
  top: 2px; right: 2px;
  margin: 0;
}
/* Mobilde favori ikonu gizle — tabbarda / hesapta var; header sade kalsın */
.h-action-fav { display: none; }

/* Kategori şeridi — masaüstü */
.header-cats { display: none; border-top: 1px solid var(--p-border); }
.header-cats .container { display: flex; align-items: center; gap: 4px; overflow-x: auto; scrollbar-width: none; }
.header-cats .container::-webkit-scrollbar { display: none; }
.header-cats a {
  padding: 8px 12px; font-size: 12.5px; font-weight: 700; color: var(--p-text);
  white-space: nowrap; border: 1px solid transparent; border-radius: var(--p-r-2);
  display: inline-flex; align-items: center; gap: 6px;
  transition: color .15s, background .15s, border-color .15s;
}
.header-cats a svg { width: 15px; height: 15px; }
.header-cats a:hover {
  color: var(--p-brand-text);
  background: var(--p-bg-hover);
  border-color: var(--p-border);
}
.header-cats a.active {
  color: var(--p-brand-text);
  background: var(--p-brand-subdued);
  border-color: color-mix(in srgb, var(--p-brand) 28%, var(--p-border));
}
/* Tüm Kategoriler — şeritte belirgin tetikleyici */
.header-cats a:first-child {
  padding: 7px 12px 7px 10px;
  margin-right: 6px;
  background: var(--p-bg-surface);
  border-color: var(--p-border-strong);
  box-shadow: 0 1px 0 rgba(0, 0, 0, .04);
  color: var(--p-text);
}
.header-cats a:first-child:hover,
.header-cats a:first-child.active {
  color: var(--p-brand-text);
  background: var(--p-brand-subdued);
  border-color: color-mix(in srgb, var(--p-brand) 35%, var(--p-border-strong));
}

/* icon-btn (modal kapatma vb.) korunur */
.icon-btn {
  position: relative; width: 40px; height: 40px; border-radius: var(--p-r-full);
  border: none; background: transparent; color: var(--p-text);
  display: grid; place-items: center; cursor: pointer;
  transition: background .15s;
}
.icon-btn:active { background: var(--p-bg-active); }
.icon-btn svg { width: 22px; height: 22px; }
.badge-count {
  position: absolute; top: 2px; right: 2px; min-width: 18px; height: 18px; padding: 0 5px;
  background: var(--p-critical); color: #fff; font-size: 11px; font-weight: 700;
  border-radius: var(--p-r-full); display: grid; place-items: center; border: 2px solid #fff; line-height: 1;
}

/* ---------- Bottom tab bar (app feel) ---------- */
.tabbar {
  position: fixed; left: 0; right: 0; bottom: 0; z-index: 45;
  height: calc(var(--nav-h) + env(safe-area-inset-bottom));
  padding-bottom: env(safe-area-inset-bottom);
  background: rgba(255,255,255,.92);
  backdrop-filter: saturate(180%) blur(14px);
  -webkit-backdrop-filter: saturate(180%) blur(14px);
  border-top: 1px solid var(--p-border);
  display: flex;
}
.tabbar a,
.tabbar button {
  flex: 1; display: flex; flex-direction: column; align-items: center; justify-content: center;
  gap: 3px; color: var(--p-text-subdued); font-size: 11px; font-weight: 500;
  position: relative; -webkit-tap-highlight-color: transparent;
  background: none; border: 0; padding: 0; cursor: pointer; font-family: inherit;
}
.tabbar a svg,
.tabbar button svg { width: 24px; height: 24px; }
.tabbar a.active,
.tabbar button.active { color: var(--p-brand); }
.tabbar a .tab-badge,
.tabbar button .tab-badge {
  position: absolute; top: 4px; left: 50%; margin-left: 4px; min-width: 16px; height: 16px; padding: 0 4px;
  background: var(--p-critical); color: #fff; font-size: 10px; font-weight: 700;
  border-radius: var(--p-r-full); display: grid; place-items: center; border: 2px solid #fff;
}
.tabbar button .hist-tab-badge {
  background: var(--p-brand);
}

/* ---------- Desktop: tek satır header + kategori; tab bar gizli ---------- */
@media (min-width: 900px) {
  .tabbar { display: none; }
  body { padding-bottom: 0; }
  body.has-sticky-bar { padding-bottom: 32px; }
  .site-footer { padding-bottom: 0; }
  .toast-wrap { bottom: 28px; }
  .header-strip { display: block; }
  .site-header { border-bottom: none; }
  .header-cats {
    display: block;
    background: var(--p-bg-subdued);
    border-top: 1px solid var(--p-border);
    border-bottom: 1px solid var(--p-border);
    padding: 8px 0;
  }
  .header-cats .container {
    gap: 4px;
    padding-top: 0;
    padding-bottom: 0;
  }

  .header-main .container {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 14px;
    min-height: 66px;
    padding-top: 8px;
    padding-bottom: 8px;
  }
  .h-menu { display: none; }
  .brand-logo {
    max-width: none;
    font-size: 21px;
    flex-shrink: 0;
  }
  .brand-logo-img { height: 32px; max-width: 180px; }
  .brand-mark { width: 32px; height: 32px; font-size: 15px; }

  

.header-search {
    flex: 1;
    width: auto;
    height: 42px;
    border-radius: var(--p-r-2);
  }
  .header-search input { padding: 0 14px; }
  .header-search button { width: 46px; }

  .header-actions {
    display: flex;
    gap: 8px;
    flex-shrink: 0;
    margin-left: auto;
  }
  .h-action-fav { display: flex; }
  .h-action {
    width: auto;
    height: auto;
    min-width: 64px;
    padding: 6px 8px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 3px;
    border-radius: var(--p-r-2);
    font-size: 11.5px;
    font-weight: 600;
    color: var(--p-text-subdued);
  }
  .h-action span:not(.badge-count) { display: block; }
  .h-action:hover { color: var(--p-brand-text); background: transparent; }
  .h-action .badge-count {
    top: -2px; right: 50%; margin-right: -22px;
  }
}

/* ---------- Cards ---------- */
.card {
  background: var(--p-bg-surface);
  border-radius: var(--p-r-3);
  border: 1px solid var(--p-border);
  box-shadow: var(--p-shadow-2);
  overflow: hidden;
}
.card-pad { padding: 16px; }
.card-header { padding: 14px 16px; border-bottom: 1px solid var(--p-border); font-weight: 600; }
.section-title { font-size: 15px; font-weight: 700; font-family: var(--p-font); color: var(--p-text); margin: 20px 0 12px; }

/* ---------- Buttons ---------- */
.btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 8px;
  padding: 10px 16px; border-radius: var(--p-r-2); font-size: 14px; font-weight: 600;
  border: 1px solid var(--p-border); background: #fff;
  color: var(--p-text); cursor: pointer; -webkit-tap-highlight-color: transparent;
  box-shadow: none; transition: transform .06s, background .15s, border-color .15s, color .15s;
  min-height: 40px; text-align: center;
}
.btn:active { transform: scale(.98); }
.btn svg { width: 18px; height: 18px; }
.btn:hover { border-color: var(--p-border-strong); }
.btn-primary {
  background: var(--p-brand); border-color: var(--p-brand); color: #fff; box-shadow: none;
}
.btn-primary:hover { background: var(--p-brand-hover); border-color: var(--p-brand-hover); color: #fff; }
.btn-primary:active { background: var(--p-brand-active); color: #fff; }
.btn-critical { background: var(--p-critical); border-color: transparent; color: #fff; }
.btn-ghost { background: transparent; border-color: transparent; box-shadow: none; }
/* Outline = Trendyol ikincil: turuncu kenarlık + turuncu metin */
.btn-outline { background: #fff; border-color: var(--p-border-strong); color: var(--p-text); }
.btn-outline:hover { background: var(--p-bg-subdued); border-color: var(--p-border-strong); color: var(--p-text); }
.btn-block { display: flex; width: 100%; }
.btn-lg { min-height: 48px; font-size: 15px; padding: 12px 20px; }
.btn:disabled { opacity: .5; cursor: not-allowed; }

/* WhatsApp kurumsal kimlik — düz yeşil */
:root {
  --wa: #25D366;
  --wa-hover: #20BD5A;
  --wa-active: #1DA851;
  --wa-deep: #128C7E;
  --wa-ink: #075E54;
  --wa-soft: #E7F8EF;
  --wa-soft-border: #B8EBCB;
}
.btn-wa {
  background: var(--wa);
  border: 1px solid var(--wa);
  color: #fff;
  font-weight: 700;
  box-shadow: none;
}
.btn-wa svg { width: 20px; height: 20px; }
.btn-wa:hover {
  background: var(--wa-hover);
  border-color: var(--wa-hover);
  color: #fff;
  box-shadow: none;
}
.btn-wa:active {
  background: var(--wa-active);
  border-color: var(--wa-active);
  transform: scale(.98);
}
.btn-wa-soft {
  background: var(--wa-soft);
  border: 1px solid var(--wa-soft-border);
  color: var(--wa-ink);
  font-weight: 700;
  box-shadow: none;
}
.btn-wa-soft svg { width: 20px; height: 20px; color: var(--wa-deep); }
.btn-wa-soft:hover {
  background: #D6F5E3;
  border-color: var(--wa);
  color: var(--wa-ink);
}
.btn-wa-soft:active { transform: scale(.98); background: #C8F0D9; }
.wa-link {
  display: inline-flex; align-items: center; gap: 5px;
  color: var(--wa-deep) !important; font-weight: 700;
}
.wa-link svg { width: 1.05em; height: 1.05em; color: var(--wa); }
.hs-links a.wa-link:hover { color: var(--wa-ink) !important; }

/* ---------- Badges ---------- */
.badge {
  display: inline-flex; align-items: center; gap: 5px; padding: 2px 9px;
  border-radius: var(--p-r-full); font-size: 12px; font-weight: 600; line-height: 1.6;
  background: var(--p-bg-active); color: var(--p-text-subdued);
}
.badge::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: currentColor; }
.badge-plain::before { display: none; }
.badge-success { background: var(--p-success-bg); color: var(--p-success); }
.badge-warning { background: var(--p-warning-bg); color: var(--p-warning); }
.badge-attention { background: var(--p-attention-bg); color: var(--p-attention); }
.badge-critical { background: var(--p-critical-bg); color: var(--p-critical); }
.badge-info { background: var(--p-info-bg); color: var(--p-info); }
.badge-new { background: var(--p-bg-active); color: var(--p-text-subdued); }
.badge-brand { background: var(--p-brand-subdued); color: var(--p-brand-text); }

/* ---------- Banners ---------- */
.banner {
  border-radius: var(--p-r-2); padding: 12px 14px; display: flex; gap: 10px;
  font-size: 14px; border: 1px solid var(--p-border); background: var(--p-bg-subdued);
}
.banner svg { width: 20px; height: 20px; flex-shrink: 0; margin-top: 1px; }
.banner-info { background: var(--p-info-bg); border-color: var(--p-info-border); color: var(--p-text); }
.banner-success { background: var(--p-success-bg); border-color: var(--p-success-border); color: var(--p-success); }
.banner-warning { background: var(--p-warning-bg); border-color: var(--p-warning-border); color: var(--p-warning); }
.banner-critical { background: var(--p-critical-bg); border-color: var(--p-critical-border); color: var(--p-critical); }
.banner-title { display: block; font-weight: 600; margin-bottom: 2px; }

/* Checkout: kayıtlı adres dolduruldu — kompakt chip bar */
.checkout-addr-bar {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 10px 0 0;
  padding: 10px 12px;
  border-radius: var(--p-r-3);
  background: var(--p-success-bg);
  border: 1px solid var(--p-success-border);
  color: var(--p-text);
}
.checkout-addr-ico {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  flex-shrink: 0;
  display: grid;
  place-items: center;
  background: #fff;
  border: 1px solid var(--p-success-border);
  color: var(--p-success);
}
.checkout-addr-ico svg { width: 16px; height: 16px; }
.checkout-addr-copy {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px 8px;
}
.checkout-addr-title {
  margin: 0;
  font-size: 13px;
  font-weight: 650;
  letter-spacing: -.01em;
  color: var(--p-text);
  line-height: 1.3;
}
.checkout-addr-chip {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  max-width: 100%;
  padding: 3px 9px 3px 7px;
  border-radius: var(--p-r-full);
  background: #fff;
  border: 1px solid var(--p-success-border);
  font-size: 12px;
  font-weight: 600;
  color: var(--p-success);
  line-height: 1.3;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.checkout-addr-chip svg {
  width: 12px;
  height: 12px;
  flex-shrink: 0;
  opacity: .85;
}
.checkout-addr-clear {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  height: 30px;
  padding: 0 10px;
  border-radius: var(--p-r-full);
  border: 1px solid transparent;
  background: transparent;
  color: var(--p-text-subdued);
  font-size: 12px;
  font-weight: 600;
  text-decoration: none;
  line-height: 1;
  white-space: nowrap;
}
.checkout-addr-clear svg { width: 12px; height: 12px; }
.checkout-addr-clear:hover {
  color: var(--p-critical);
  background: #fff;
  border-color: var(--p-critical-border);
}

@media (max-width: 480px) {
  .checkout-addr-bar { padding: 9px 10px; gap: 8px; }
  .checkout-addr-ico { width: 28px; height: 28px; }
  .checkout-addr-ico svg { width: 14px; height: 14px; }
  .checkout-addr-title { font-size: 12.5px; width: 100%; }
  .checkout-addr-clear { height: 28px; padding: 0 8px; }
}

/* ---------- Forms ---------- */
.field { margin-bottom: 14px; }
.field > label { display: block; font-size: 13px; font-weight: 500; margin-bottom: 5px; color: var(--p-text); }
.input, .select, .textarea {
  width: 100%; padding: 11px 12px; font-size: 15px; font-family: inherit;
  border: 1px solid var(--p-border-input); border-radius: var(--p-r-2);
  background: var(--p-bg-input); color: var(--p-text);
  transition: border-color .15s, box-shadow .15s; -webkit-appearance: none; appearance: none;
}
.textarea { min-height: 90px; resize: vertical; }
.input:focus, .select:focus, .textarea:focus {
  outline: none; border-color: var(--p-brand);
  box-shadow: 0 0 0 3px rgba(242,122,26,.15);
}
.select { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236d7175' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 12px center; padding-right: 36px; }
.field-hint { font-size: 12px; color: var(--p-text-subdued); margin-top: 5px; }
.field-error { font-size: 12px; color: var(--p-critical); margin-top: 5px; }
.input.err, .select.err, .textarea.err { border-color: var(--p-critical); }
.form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 0 14px; }
.form-grid .full { grid-column: 1 / -1; }
@media (max-width: 520px) { .form-grid { grid-template-columns: 1fr; } }

/* ---------- Sipariş sırasında hesap açma ---------- */
.acct-box {
  border: 1px solid var(--p-border-input); border-radius: var(--p-r-2);
  background: var(--p-bg-subdued); padding: 12px; margin-bottom: 14px;
}
.acct-check { display: flex; gap: 10px; align-items: flex-start; cursor: pointer; margin: 0; }
.acct-check input[type="checkbox"] {
  width: 18px; height: 18px; margin: 1px 0 0; flex: none;
  accent-color: var(--p-brand); cursor: pointer;
}
.acct-check > span { font-size: 14px; color: var(--p-text); line-height: 1.4; }
.acct-check small { display: block; font-size: 12px; color: var(--p-text-subdued); margin-top: 2px; }
.acct-pass { margin-top: 12px; }
.acct-pass[hidden] { display: none; }
.acct-pass > label { display: block; font-size: 13px; font-weight: 500; margin-bottom: 5px; }
.acct-hint { font-size: 12px; color: var(--p-text-subdued); margin: 6px 0 0; }
.acct-login-hint .grow { font-size: 14px; }

/* ---------- Product grid & cards ---------- */
.product-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; }
.home-sec { margin-top: 28px; }
.home-sec-head {
  display: flex; align-items: baseline; justify-content: space-between;
  gap: 12px; margin-bottom: 12px; flex-wrap: wrap;
}
.home-sec-head h2 {
  margin: 0; font-size: 1.15rem; font-weight: 800;
  letter-spacing: -0.02em; display: flex; align-items: center; gap: 8px;
}
.home-sec-more {
  font-size: 13px; font-weight: 700; color: var(--p-brand, #008060);
  text-decoration: none; white-space: nowrap;
}
.home-sec-more:hover { text-decoration: underline; }
/* Ana sayfa kategori navigasyonu */
.home-cat-wrap { margin-top: 16px; }
.home-cat-wrap-head {
  display: flex; align-items: center; justify-content: space-between;
  gap: 10px; margin-bottom: 10px;
}
.home-cat-wrap-title {
  margin: 0; font-size: 1rem; font-weight: 800; letter-spacing: -0.02em;
}
.home-cat-wrap-all {
  font-size: 13px; font-weight: 700; color: var(--p-brand, #008060);
  text-decoration: none; white-space: nowrap;
}
.home-cat-wrap-all:hover { text-decoration: underline; }
.home-cat-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}
.home-cat-item {
  display: flex; align-items: center; gap: 8px;
  min-height: 48px; padding: 10px 12px;
  background: var(--p-bg-surface); color: var(--p-text);
  border: 1px solid var(--p-border); border-radius: var(--p-r-3);
  box-shadow: var(--p-shadow-1);
  font-size: 13px; font-weight: 600; line-height: 1.25;
  text-decoration: none; transition: border-color .15s, background .15s;
}
.home-cat-item:active { transform: scale(.985); }
.home-cat-item.is-active {
  background: var(--p-brand); color: #fff; border-color: var(--p-brand);
}
.home-cat-item.is-active .home-cat-ic { color: #fff; }
.home-cat-ic { display: grid; place-items: center; flex-shrink: 0; color: var(--p-brand); }
.home-cat-ic svg { width: 18px; height: 18px; }
.home-cat-name { min-width: 0; word-break: break-word; }
@media (min-width: 640px) {
  .home-cat-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
  }
  .home-cat-item { min-height: 52px; font-size: 13.5px; padding: 12px 14px; }
}
@media (min-width: 900px) {
  .home-cat-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}

/* Satış yapan markalar carousel */
.brands-sec { margin-top: 32px; }
.brands-rail {
  position: relative;
  display: flex; align-items: center; gap: 8px;
}
.brands-track {
  display: flex; gap: 12px; overflow-x: auto; scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch; scrollbar-width: none;
  padding: 4px 2px 8px; flex: 1; min-width: 0;
}
.brands-track::-webkit-scrollbar { display: none; }
.brands-card {
  flex: 0 0 auto; scroll-snap-align: start;
  width: min(42vw, 168px);
  height: 84px;
  display: flex; align-items: center; justify-content: center;
  padding: 14px 18px;
  background: #fff;
  border: 1px solid var(--p-border);
  border-radius: 14px;
  box-sizing: border-box;
}
.brands-card img {
  max-width: 100%; max-height: 100%;
  width: auto; height: auto;
  object-fit: contain;
  display: block;
}
.brands-nav {
  flex: none; width: 36px; height: 36px; border-radius: 10px;
  border: 1px solid var(--p-border); background: #fff; color: var(--p-text);
  cursor: pointer; display: grid; place-items: center;
}
.brands-nav:disabled { opacity: .35; cursor: default; }
.brands-nav[hidden] { display: none !important; }
@media (max-width: 640px) {
  .brands-card { width: min(48vw, 148px); height: 76px; padding: 12px 14px; border-radius: 12px; }
  .brands-nav { display: none !important; }
  .brands-track { gap: 10px; }
}
@media (min-width: 901px) {
  .brands-card { width: 168px; height: 88px; }
}

@media (min-width: 640px) { .product-grid { grid-template-columns: repeat(3, 1fr); gap: 16px; } }
@media (min-width: 900px) { .product-grid { grid-template-columns: repeat(4, 1fr); } }

.pcard {
  background: var(--p-bg-surface); border-radius: var(--p-r-3); border: 1px solid var(--p-border);
  box-shadow: var(--p-shadow-2); overflow: hidden; display: flex; flex-direction: column;
  transition: transform .12s, box-shadow .12s, border-color .12s; position: relative;
}
.pcard:active { transform: scale(.985); }
@media (hover:hover) { .pcard:hover { box-shadow: var(--p-shadow-3); border-color: var(--p-border-strong); } }
.pcard-media { aspect-ratio: 1/1; position: relative; overflow: hidden; }
.pcard-media .ph { width: 100%; height: 100%; display: grid; place-items: center; }
.pcard-media .ph span { font-size: 40px; font-weight: 700; color: rgba(255,255,255,.9); text-shadow: 0 1px 2px rgba(0,0,0,.15); }
.pcard-badge { position: absolute; top: 8px; left: 8px; }

/* ── Gerçek-veri rozetleri (Trendyol tarzı) ── */
.pcard-corner { position: absolute; top: 8px; left: 8px; z-index: 2; display: flex; flex-direction: column; gap: 5px; align-items: flex-start; max-width: calc(100% - 52px); }
.pcard-ribbon {
  display: inline-flex; align-items: center; gap: 5px;
  font-size: 10.5px; font-weight: 700; line-height: 1;
  padding: 5px 8px; border-radius: var(--p-r-full);
  background: rgba(39,39,42,.9); color: #fff;
  box-shadow: 0 1px 2px rgba(0,0,0,.12);
  white-space: nowrap; max-width: 100%; overflow: hidden;
}
.pcard-ribbon > span { overflow: hidden; text-overflow: ellipsis; }
.pcard-ribbon svg { width: 12px; height: 12px; flex-shrink: 0; opacity: .95; }
.pcard-ribbon.pb-hot,
.pcard-ribbon.pb-deal,
.pcard-ribbon.pb-fast,
.pcard-ribbon.fomo-card-ribbon { background: var(--p-brand); }
.pcard-ribbon.pb-manual { background: #fff; color: var(--p-text); border: 1px solid var(--p-border-strong); box-shadow: none; }
.pcard-ribbon.pb-manual svg { color: var(--p-text-subdued); }
.pcard-disc-badge {
  flex: 0 0 auto;
  display: inline-flex; flex-direction: column; align-items: center; justify-content: center;
  background: var(--p-brand); color: #fff; font-weight: 700; font-size: 13px; line-height: 1;
  padding: 6px 8px; border-radius: var(--p-r-2); min-width: 44px; align-self: center;
}
.pcard-disc-badge small { font-size: 8px; font-weight: 600; opacity: .92; margin-top: 2px; letter-spacing: .01em; }

/* Görsel alt bandı: sıralama iddiası (turuncu) veya kargo bedava (koyu) */
.pcard-band { position: absolute; left: 0; right: 0; bottom: 0; z-index: 2; display: flex; align-items: center; gap: 6px; padding: 6px 10px; font-size: 11.5px; font-weight: 700; color: #fff; }
.pcard-band svg { width: 14px; height: 14px; flex-shrink: 0; }
.pcard-band span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pcard-band.pbd-rank { background: rgba(39,39,42,.88); }
.pcard-band.pbd-free { background: rgba(39,39,42,.88); }

/* Sosyal kanıt satırı */
.pcard-social { font-size: 11.5px; color: var(--p-text-subdued); display: flex; align-items: center; gap: 4px; }
.pcard-social svg { width: 13px; height: 13px; color: var(--p-text-subdued); }
.pcard-social span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

.pcard-fav { position: absolute; top: 6px; right: 6px; width: 34px; height: 34px; border-radius: 50%; background: rgba(255,255,255,.92); border: none; display: grid; place-items: center; cursor: pointer; box-shadow: var(--p-shadow-1); transition: transform .12s, background .15s; z-index: 3; }
.pcard-fav:active { transform: scale(.88); }
.pcard-fav svg { width: 18px; height: 18px; color: var(--p-text-subdued); transition: color .15s; }
.pcard-fav.on { background: #fff; }
.pcard-fav.on svg { color: var(--p-critical); fill: var(--p-critical); }
.pcard-body { padding: 10px 12px 12px; display: flex; flex-direction: column; gap: 4px; flex: 1; }
.pcard-title { font-size: 14px; font-weight: 600; line-height: 1.3; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; min-height: 2.6em; }
.pcard-rating { font-size: 12px; color: var(--p-text-subdued); display: flex; align-items: center; gap: 3px; min-height: 1.2em; }
.pcard-rating .star { color: #ca8a04; }
/* Price row: indirim rozeti solda, fiyatlar sağda (üst indirimli / alt eski) */
.pcard-price {
  display: grid;
  grid-template-columns: 44px 1fr;
  gap: 8px;
  align-items: center;
  margin-top: 4px;
  min-height: 38px;
}
.pcard-price.has-disc { grid-template-columns: auto 1fr; }
.pcard-price.has-disc .pcard-disc-badge { grid-column: 1; }
.pcard-price.has-disc .pcard-price-stack { grid-column: 2; }
.pcard-price-stack {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 1px;
  min-width: 0;
}
.pcard-price-stack.is-solo {
  grid-column: 2;
  align-items: center;
  text-align: center;
}
.pcard-price-stack .now {
  font-size: 16px; font-weight: 700; color: var(--p-text);
  white-space: nowrap; letter-spacing: -0.01em; line-height: 1.15;
}
.pcard-price.has-disc .pcard-price-stack .now { color: var(--p-brand-text, var(--p-brand)); }
.pcard-price-stack .was {
  font-size: 11px; color: var(--p-text-subdued); text-decoration: line-through;
  white-space: nowrap; line-height: 1.2;
}
.pcard-add {
  margin-top: 10px; width: 100%; min-height: 38px; border-radius: var(--p-r-2);
  background: var(--p-brand); color: #fff; border: none; font-weight: 700; font-size: 13px;
  display: flex; align-items: center; justify-content: center; gap: 6px; cursor: pointer; transition: background .15s;
}
/* Pin the add button to the card bottom so uneven title/price heights stay aligned */
.pcard-body > .pcard-add { margin-top: auto; }
.pcard-add:hover { background: var(--p-brand-hover); }
.pcard-add:active { background: var(--p-brand-active); }
.pcard-add svg { width: 16px; height: 16px; }

/* discount pill — Trendyol yeşil %indirim rozeti */
.discount-pill { background: var(--p-brand-subdued); color: var(--p-brand-text); font-size: 11px; font-weight: 700; padding: 2px 7px; border-radius: var(--p-r-1); }

/* ---------- Hero banner carousel ---------- */
.carousel { position: relative; border-radius: var(--p-r-4); overflow: hidden; box-shadow: var(--p-shadow-3); }
.car-track { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; -webkit-overflow-scrolling: touch; scrollbar-width: none; }
.car-track::-webkit-scrollbar { display: none; }
.car-slide {
  position: relative; flex: 0 0 100%; scroll-snap-align: start;
  aspect-ratio: 16/8; display: block; overflow: hidden; color: #fff;
}
@media (min-width: 900px) { .car-slide { aspect-ratio: 21/8; } }
.car-slide img { width: 100%; height: 100%; object-fit: cover; display: block; }
/* Uploaded image banner: show the WHOLE image at its natural aspect ratio,
   full width, no cropping, no forced aspect-ratio, no text overlay. */
.car-slide-img { aspect-ratio: auto; }
.car-slide-img img { width: 100%; height: auto; object-fit: contain; }
.car-ic { position: absolute; right: 18px; top: 16px; opacity: .25; }
.car-ic svg { width: 110px; height: 110px; }
.car-caption {
  position: absolute; left: 0; right: 0; bottom: 0; padding: 40px 20px 18px;
  background: linear-gradient(180deg, transparent, rgba(0,0,0,.55));
  display: flex; flex-direction: column; gap: 3px;
}
.car-title { font-size: 20px; font-weight: 700; letter-spacing: -0.01em; line-height: 1.2; text-shadow: 0 1px 3px rgba(0,0,0,.4); }
.car-sub { font-size: 13.5px; opacity: .95; text-shadow: 0 1px 2px rgba(0,0,0,.4); max-width: 60ch; }
@media (min-width: 900px) { .car-title { font-size: 26px; } .car-sub { font-size: 15px; } .car-caption { padding: 56px 28px 22px; } }
.car-dots { position: absolute; bottom: 8px; right: 12px; display: flex; gap: 6px; z-index: 3; }
.car-dots button { width: 8px; height: 8px; border-radius: 50%; border: none; padding: 0; background: rgba(255,255,255,.45); cursor: pointer; transition: background-color .2s, width .2s; }
.car-dots button.on { background: #fff; width: 22px; border-radius: var(--p-r-full); }

/* ---------- Hero ---------- */
.hero {
  border-radius: var(--p-r-4); overflow: hidden; position: relative;
  background: linear-gradient(135deg,#c95f0a,#f27a1a 55%,#ff9d4d);
  color: #fff; padding: 26px 20px;
}
.hero h1 { color: #fff; font-size: 24px; line-height: 1.2; }
.hero p { margin: 8px 0 16px; opacity: .92; font-size: 15px; max-width: 34ch; }
.hero .btn { background: #fff; color: var(--p-brand-active); border: none; }
.hero-badges { display: flex; gap: 14px; margin-top: 18px; flex-wrap: wrap; }
.hero-badges .hb { display: flex; align-items: center; gap: 7px; font-size: 13px; opacity: .95; }
.hero-badges .hb svg { width: 18px; height: 18px; }

/* category chips */
.chips { display: flex; gap: 8px; overflow-x: auto; padding: 4px 0 6px; -webkit-overflow-scrolling: touch; scrollbar-width: none; }
.chips::-webkit-scrollbar { display: none; }
.chip {
  flex-shrink: 0; padding: 8px 14px; border-radius: var(--p-r-full); font-size: 13px; font-weight: 600;
  background: var(--p-bg-surface); color: var(--p-text-subdued); border: 1px solid var(--p-border); cursor: pointer;
  box-shadow: var(--p-shadow-1);
}
.chip.active { background: var(--p-brand); color: #fff; border-color: var(--p-brand); }

/* ---------- Cart / list rows ---------- */
.line-item { display: flex; gap: 12px; padding: 12px 0; border-bottom: 1px solid var(--p-border); }
.line-item:last-child { border-bottom: none; }
.li-price { display: flex; align-items: baseline; flex-wrap: wrap; gap: 2px 7px; margin-top: 2px; font-size: 14px; }
.li-price .now { font-weight: 700; color: var(--p-text); letter-spacing: -0.01em; }
.li-price .was { font-size: 12px; color: var(--p-text-subdued); text-decoration: line-through; }
.li-price .disc-pill { font-size: 11px; font-weight: 700; color: var(--p-brand-text); background: var(--p-brand-subdued); padding: 1px 6px; border-radius: var(--p-r-xs); }
.checkout-line { padding: 10px 0; }
.checkout-line .li-media { width: 56px; height: 56px; border-radius: var(--p-r-2); overflow: hidden; flex-shrink: 0; background: var(--p-bg-subdued); }
.li-media { width: 64px; height: 64px; border-radius: var(--p-r-2); overflow: hidden; flex-shrink: 0; }
.li-media .ph { width: 100%; height: 100%; display: grid; place-items: center; color: #fff; font-weight: 700; }
.li-body { flex: 1; min-width: 0; }
.li-title { font-size: 14px; font-weight: 600; }
.qty-stepper { display: inline-flex; align-items: center; border: 1px solid var(--p-border); border-radius: var(--p-r-2); overflow: hidden; background: #fff; }
.qty-stepper button { width: 34px; height: 34px; border: none; background: #fff; font-size: 18px; font-weight: 700; cursor: pointer; color: var(--p-text); display: grid; place-items: center; transition: background .15s; }
.qty-stepper button:hover { background: var(--p-brand-subdued); }
.qty-stepper button:active { background: var(--p-brand-subdued); }
.qty-stepper .q { min-width: 34px; text-align: center; font-weight: 600; font-size: 14px; }

/* ---------- Summary rows ---------- */
.sum-row { display: flex; justify-content: space-between; padding: 6px 0; font-size: 14px; }
.sum-row.total { font-size: 17px; font-weight: 700; padding-top: 12px; margin-top: 6px; border-top: 1px solid var(--p-border); }

/* ---------- Sticky action bar ---------- */
/* PDP price label: hidden on mobile (price already shown above), shown on desktop */
.pdp-price { display: none; }
.pdp-actions { flex: 1; align-items: stretch; }
.pdp-actions .btn-lg { min-height: 48px; padding-left: 10px; padding-right: 10px; }
.sticky-bar {
  position: fixed; left: 0; right: 0; bottom: calc(var(--nav-h) + env(safe-area-inset-bottom));
  background: rgba(255,255,255,.97); backdrop-filter: blur(12px);
  border-top: 1px solid var(--p-border); padding: 10px 12px 12px; z-index: 44;
  box-shadow: 0 -6px 20px rgba(0,0,0,.08);
}
.sticky-bar .container,
.sticky-bar-inner {
  display: flex; flex-direction: column; align-items: stretch; gap: 10px;
  max-width: 720px; margin: 0 auto; padding: 0;
}
.sticky-bar-prices {
  display: flex; align-items: flex-end; justify-content: space-between; gap: 12px;
  min-width: 0;
}
.sticky-bar-prices:not(.has-havale) { justify-content: flex-start; }
.sticky-price {
  display: flex; flex-direction: column; gap: 2px; min-width: 0;
}
.sticky-price.is-deal { text-align: right; align-items: flex-end; }
.sticky-price.is-solo { flex: 1; }
.sticky-price-lbl {
  font-size: 11.5px; font-weight: 700; color: var(--p-text-subdued); line-height: 1.2;
}
.sticky-price-val {
  font-family: var(--p-font);
  font-size: 18px; font-weight: 700; color: var(--p-text);
  line-height: 1.15; font-variant-numeric: tabular-nums;
  letter-spacing: -.01em;
}
.sticky-price-val.is-was {
  font-size: 15px; font-weight: 600; color: var(--p-text-disabled);
  text-decoration: line-through; text-decoration-thickness: 1.5px;
}
.sticky-price.is-deal .sticky-price-lbl { color: var(--p-bank); }
.sticky-price.is-deal .sticky-price-val { color: var(--p-success); font-size: 19px; }
.sticky-bar-cta {
  width: 100%; flex: none; min-height: 48px;
  font-size: 15.5px; font-weight: 700; justify-content: center;
}
.sticky-bar .pdp-price { display: block; flex: 0 0 auto; }
body.has-sticky-bar { padding-bottom: calc(var(--nav-h) + 72px + env(safe-area-inset-bottom)); }

/* Mobil PDP: inline butonlar ekrandan çıkınca beliren tam-genişlik "Hemen Satın Al" */
.sticky-buy {
  position: fixed; left: 0; right: 0; bottom: calc(var(--nav-h) + env(safe-area-inset-bottom));
  z-index: 1300; padding: 8px 12px calc(8px);
  background: rgba(255,255,255,.97); backdrop-filter: blur(10px);
  border-top: 1px solid var(--p-border); box-shadow: 0 -4px 16px rgba(0,0,0,.07);
  transform: translateY(120%); opacity: 0; pointer-events: none;
  transition: transform .22s ease, opacity .22s ease;
}
.sticky-buy.on { transform: translateY(0); opacity: 1; pointer-events: auto; }
.sticky-buy-btn { width: 100%; min-height: 46px; font-size: 15px; font-weight: 700; gap: 8px; }
.sticky-buy-btn svg { width: 18px; height: 18px; }
@media (min-width: 900px) { .sticky-buy { display: none; } }

/* ---------- Trendyol tarzı iki sütun PDP ---------- */
.pdp-layout { display: block; }
.pdp-media { position: relative; }
.pdp-info { margin-top: 16px; }
.pdp-brand { display: inline-block; font-size: 13px; font-weight: 700; color: var(--p-brand); text-decoration: none; margin-bottom: 2px; }
.pdp-title { font-size: 20px; line-height: 1.3; margin: 2px 0 4px; }
.pdp-social-proof {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 6px;
  margin-top: 6px;
}
.pdp-rating {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-top: 0;
  padding: 5px 9px;
  font-size: 13px;
  color: var(--p-text-subdued);
  text-decoration: none;
  flex-wrap: wrap;
  background: #fff;
  border: 1px solid var(--p-border);
  border-radius: var(--p-r-2);
  box-sizing: border-box;
}
.pdp-rating .star {
  color: #f5a524;
  letter-spacing: 1px;
  font-size: 14px;
  line-height: 1;
}
.pdp-rating-cam {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  font-weight: 700;
  color: var(--p-text-subdued);
  background: var(--p-bg-subdued);
  padding: 2px 7px;
  border-radius: var(--p-r-1);
  font-size: 12px;
}
.pdp-rating-cam svg { width: 14px; height: 14px; }
.pdp-liked {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  max-width: 100%;
  padding: 7px 11px 7px 8px;
  text-decoration: none;
  color: var(--p-text);
  background: linear-gradient(135deg, var(--p-brand-subdued) 0%, #fff 72%);
  border: 1px solid color-mix(in srgb, var(--p-brand) 22%, var(--p-border));
  border-radius: var(--p-r-2);
  box-sizing: border-box;
  transition: border-color .15s ease, background .15s ease;
}
.pdp-liked:hover {
  border-color: color-mix(in srgb, var(--p-brand) 45%, var(--p-border));
  background: var(--p-brand-subdued);
  color: var(--p-text);
}
.pdp-liked-ico {
  flex: 0 0 auto;
  display: grid;
  place-items: center;
  width: 26px;
  height: 26px;
  border-radius: 50%;
  background: #fff;
  color: #f5a524;
  box-shadow: 0 0 0 1px color-mix(in srgb, #f5a524 28%, transparent);
}
.pdp-liked-ico svg { width: 14px; height: 14px; }
.pdp-liked-copy {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 4px 8px;
  min-width: 0;
  line-height: 1.25;
}
.pdp-liked-copy strong {
  font-size: 13px;
  font-weight: 700;
  color: var(--p-text);
}
.pdp-liked-cta {
  display: inline-flex;
  align-items: center;
  gap: 2px;
  font-size: 12px;
  font-weight: 600;
  color: var(--p-brand-text);
}
.pdp-liked-cta svg { width: 14px; height: 14px; }
.pdp-liked:hover .pdp-liked-cta { color: var(--p-brand-hover); }
.pdp-badges { display: flex; flex-wrap: wrap; gap: 6px; margin: 10px 0 0; }
.pdp-tag { display: inline-flex; align-items: center; gap: 4px; font-size: 12px; font-weight: 700; padding: 4px 9px; border-radius: var(--p-r-full); }
.pdp-tag svg { width: 1em; height: 1em; }
.pdp-tag-free { background: #e3f6ea; color: var(--p-success); }
.pdp-tag-havale { background: var(--p-bank-bg); color: var(--p-bank); }
.pdp-tag-low  { background: #fdeceb; color: var(--p-critical); }
.pdp-tag-oos  { background: var(--p-bg-subdued); color: var(--p-text-subdued); }

/* PDP fiyat bloğu */
.pdp-sku-line {
  margin-top: 4px;
  font-size: 12px; font-weight: 600; color: var(--p-text-subdued);
  font-variant-numeric: tabular-nums; letter-spacing: .02em;
}
.pdp-pricing {
  margin: 14px 0 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.pdp-price-main {
  display: flex;
  align-items: center;
  gap: 12px;
}
.pdp-pricing:not(.has-disc) .pdp-price-main { justify-content: flex-start; }
.pdp-disc-badge {
  flex: 0 0 auto;
  display: inline-flex; flex-direction: column; align-items: center; justify-content: center;
  background: var(--p-brand); color: #fff; font-weight: 700; font-size: 14px; line-height: 1;
  padding: 8px 10px; border-radius: var(--p-r-2); min-width: 52px;
}
.pdp-disc-badge small { font-size: 9px; font-weight: 600; margin-top: 2px; opacity: .95; }
.pdp-price-col {
  flex: 1;
  display: flex; flex-direction: column; align-items: flex-end; justify-content: center;
  gap: 2px; min-width: 0;
}
.pdp-pricing:not(.has-disc) .pdp-price-col { align-items: flex-start; }
.pdp-price-now {
  font-size: 28px; font-weight: 700; color: var(--p-text);
  letter-spacing: -0.02em; line-height: 1.12;
  font-variant-numeric: tabular-nums; white-space: nowrap;
}
.pdp-pricing.has-disc .pdp-price-now { color: var(--p-brand-text); }
.pdp-price-was {
  font-size: 14px; font-weight: 500; color: var(--p-text-subdued);
  text-decoration: line-through; font-variant-numeric: tabular-nums; white-space: nowrap; line-height: 1.2;
}
.pdp-havale-box {
  display: flex; align-items: center; gap: 12px;
  margin-top: 2px;
  padding: 10px 12px;
  background: #fff;
  border: 1px solid var(--p-border);
  border-radius: var(--p-r-card);
}
.pdp-havale-box[hidden] { display: none; }
.pdp-havale-ico {
  flex-shrink: 0;
  width: 40px; height: 40px;
  display: block;
  line-height: 0;
  background: none;
  box-shadow: none;
  border-radius: 0;
}
.pdp-havale-ico img {
  width: 40px; height: 40px;
  display: block;
  object-fit: contain;
}
.pdp-havale-copy {
  flex: 1; min-width: 0;
  display: flex; flex-direction: column; gap: 2px;
}
.pdp-havale-title {
  font-size: 13px; font-weight: 700; color: var(--p-text);
  line-height: 1.25; letter-spacing: -0.01em;
}
.pdp-havale-amt {
  font-size: 15px; line-height: 1.25;
}
.pdp-havale-amt strong {
  font-weight: 750; color: var(--p-text); font-variant-numeric: tabular-nums;
}
.pdp-stock-line {
  font-size: 13px; font-weight: 700; line-height: 1.2;
}
.pdp-stock-line .is-low { color: var(--p-critical); }
.pdp-stock-line .is-ok { color: #15803d; }
.pdp-stock-line .is-oos { color: var(--p-text-subdued); font-weight: 600; }
.pdp-installment {
  font-size: 12px; color: var(--p-text-subdued); line-height: 1.35;
}
@media (max-width: 899px) {
  .pdp-pricing { margin-top: 12px; gap: 8px; }
  .pdp-price-main { gap: 10px; }
  .pdp-disc-badge { font-size: 13px; min-width: 46px; padding: 7px 8px; }
  .pdp-price-now { font-size: 22px; }
  .pdp-price-was { font-size: 13px; }
  .pdp-havale-box { padding: 9px 10px; gap: 10px; }
  .pdp-havale-ico, .pdp-havale-ico img { width: 36px; height: 36px; }
  .pdp-havale-title { font-size: 12.5px; }
  .pdp-havale-amt { font-size: 14px; }
  .pdp-stock-line { font-size: 12px; }
}
@media (min-width: 900px) {
  .pdp-price-now { font-size: 30px; }
}

/* Havale / EFT indirim satırı (genel) */
.havale-deal { display: flex; align-items: center; gap: 8px; margin-top: 8px; }
.havale-deal-ico {
  flex-shrink: 0; width: 28px; height: 28px;
  display: block; line-height: 0;
  background: none; color: inherit;
}
.havale-deal-ico img { width: 28px; height: 28px; display: block; object-fit: contain; }
.havale-deal-copy { display: flex; flex-direction: column; gap: 1px; min-width: 0; }
.havale-deal-badge { font-size: 11.5px; font-weight: 650; color: var(--p-text-subdued); line-height: 1.25; }
.havale-deal-price { font-size: 13px; color: var(--p-text); line-height: 1.25; }
.havale-deal-price strong { color: var(--p-text); font-weight: 750; font-variant-numeric: tabular-nums; }
.havale-deal-line { margin-top: 4px; }
.havale-deal-line .havale-deal-ico,
.havale-deal-line .havale-deal-ico img { width: 24px; height: 24px; }
.havale-deal-line .havale-deal-badge { font-size: 10.5px; }
.havale-deal-line .havale-deal-price { font-size: 12px; }
.li-side .havale-deal { justify-content: flex-end; margin-top: 4px; }
.li-side .havale-deal-copy { align-items: flex-end; text-align: right; }
.pdp-corner { position: absolute; top: 12px; left: 12px; z-index: 2; display: flex; flex-direction: column; gap: 6px; align-items: flex-start; }

/* Sosyal kanıt — PDP'de yalnızca FOMO bloğu (fomo_pdp_html) kullanılır */

/* Teslimat — tahmini kapı tarihi (tek panel) */
.pdp-ship { margin-top: 16px; }
.pdp-ship-panel {
  border: 1px solid var(--p-border);
  border-radius: var(--p-r-card);
  background: #fff;
  padding: 14px 14px 12px;
}
.pdp-ship-eta {
  display: flex;
  align-items: flex-start;
  gap: 12px;
}
.pdp-ship-eta-icon {
  width: 40px; height: 40px; flex-shrink: 0;
  border-radius: var(--p-r-3);
  background: color-mix(in srgb, var(--p-brand, #111) 8%, #fff);
  color: var(--p-brand-text, var(--p-text));
  display: grid; place-items: center;
}
.pdp-ship-eta-icon svg { width: 20px; height: 20px; }
.pdp-ship-eta-body {
  min-width: 0; flex: 1;
  display: flex; flex-direction: column; gap: 2px;
}
.pdp-ship-eta-k {
  font-size: 12px; font-weight: 600;
  color: var(--p-text-subdued);
  letter-spacing: .01em;
}
.pdp-ship-eta-v {
  font-size: 17px; font-weight: 800;
  color: var(--p-text);
  line-height: 1.25;
  letter-spacing: -.02em;
}
.pdp-ship-eta-fee {
  margin-top: 2px;
  font-size: 12.5px; font-weight: 600;
  color: var(--p-text-subdued);
}
.pdp-ship-policy {
  margin: 12px 0 0;
  padding: 10px 11px;
  border-radius: var(--p-r-2);
  background: var(--p-bg-subdued, #f6f6f7);
  font-size: 12.5px; line-height: 1.45;
  color: var(--p-text-subdued);
}
.pdp-ship-loc-row {
  display: flex; align-items: center; justify-content: space-between; gap: 10px;
  flex-wrap: wrap;
  margin-top: 12px;
}
.pdp-ship-dest {
  font-size: 11.5px; font-weight: 600; color: var(--p-text-subdued);
}

/* PDP — fatura / Ticaret Bakanlığı güven şeridi */
.pdp-trust {
  margin-top: 12px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 12px;
  border: 1px solid var(--p-border);
  border-radius: var(--p-r-card);
  background: var(--p-bg-surface, #fff);
}
.pdp-trust-copy {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 6px;
}
.pdp-trust-badge {
  display: inline-flex;
  align-items: center;
  max-width: 100%;
  padding: 7px 11px;
  border-radius: var(--p-r-2);
  font-size: 12.5px;
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: -0.01em;
  color: #fff;
}
.pdp-trust-badge-top {
  background: var(--p-brand);
  box-shadow: 0 1px 0 rgba(255,255,255,.18) inset;
}
.pdp-trust-badge-bot {
  background: #3f3f46;
}
.pdp-trust-seal {
  flex-shrink: 0;
  display: block;
  line-height: 0;
  text-decoration: none;
}
.pdp-trust-seal img {
  width: 68px;
  height: 68px;
  object-fit: contain;
  display: block;
}
@media (max-width: 420px) {
  .pdp-trust { padding: 9px 10px; gap: 10px; }
  .pdp-trust-badge { font-size: 11.5px; padding: 6px 9px; }
  .pdp-trust-seal img { width: 58px; height: 58px; }
}

.pdp-del-loc {
  display: inline-flex; align-items: center; gap: 4px;
  max-width: 100%; padding: 7px 10px; border-radius: var(--p-r-2);
  border: 1px solid var(--p-border);
  background: #fff;
  color: var(--p-brand-text);
  font-size: 12px; font-weight: 700;
  cursor: pointer;
}
.pdp-del-loc svg { width: 13px; height: 13px; flex-shrink: 0; }
.pdp-del-loc #pdpLocLabel {
  overflow: hidden; text-overflow: ellipsis; white-space: nowrap; min-width: 0;
}
.pdp-del-loc-chev { display: grid; place-items: center; opacity: .7; }
.pdp-del-loc-chev svg { width: 12px; height: 12px; }
.pdp-del-loc.has-loc { color: var(--p-brand-text); }
.pdp-del-picker { margin-top: 10px; }
.pdp-del-picker[hidden] { display: none !important; }
.pdp-geo { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.pdp-geo select:last-child { grid-column: 1 / -1; }

/* Buybox — mobil: alt alta. Masaüstü: adet + Sepete Ekle yan yana, Şimdi Al altta tam genişlik. */
.pdp-buybox {
  display: flex;
  flex-direction: column;
  gap: 10px;
  align-items: stretch;
  margin-top: 14px;
}
.pdp-buy-row {
  display: flex;
  flex-direction: column;
  gap: 10px;
  align-items: stretch;
}
.pdp-buybox .qty-stepper { width: 100%; height: 48px; }
.pdp-buybox .qty-stepper button { height: 46px; width: 50px; }
.pdp-buybox .qty-stepper .q { flex: 1; display: grid; place-items: center; }
.pdp-buybox .btn-lg { min-height: 52px; width: 100%; }
@media (max-width: 899px) { .pdp-buybox .pdp-freeship-ribbon { display: none; } }

/* ── Zenginleştirilmiş "Sepete Ekle" (Kargo Bedava rozeti + Son X Ürün) ── */
.pdp-buy-now { position: relative; }
.pdp-add-cart { position: relative; overflow: visible; flex-direction: column; gap: 2px; line-height: 1.15; }
.pdp-add-main { display: inline-flex; align-items: center; gap: 7px; font-weight: 700; font-size: 15px; }
.pdp-add-main svg { width: 18px; height: 18px; }
.pdp-add-cart.has-sub .pdp-add-main { font-size: 16px; }
.pdp-add-sub { display: inline-flex; align-items: center; gap: 5px; font-size: 11.5px; font-weight: 600; color: rgba(255,255,255,.92); }
.pdp-add-sub svg { width: 13px; height: 13px; }
/* Kargo Bedava — yeşil konuşma balonu, sağ üstte butonun üstüne taşar */
.pdp-freeship-ribbon {
  position: absolute; top: -14px; right: -6px; z-index: 3;
  display: inline-flex; align-items: center; gap: 4px;
  background: var(--p-success); color: #fff; font-size: 11px; font-weight: 700;
  padding: 4px 9px; border-radius: var(--p-r-2) var(--p-r-2) var(--p-r-2) 2px; white-space: nowrap;
  box-shadow: 0 2px 6px rgba(10,143,69,.35);
}
.pdp-freeship-ribbon svg { width: 12px; height: 12px; }
.pdp-freeship-ribbon::after {
  content: ""; position: absolute; bottom: -4px; right: 8px;
  border-width: 5px 5px 0 0; border-style: solid; border-color: var(--p-success) transparent transparent transparent;
}

/* Öne çıkan özellikler */
.pdp-features { margin-top: 2px; }
.pdp-buybox .pdp-features { width: 100%; }
.pdp-features-head {
  font-size: 13px; font-weight: 700; color: var(--p-text);
  margin: 0 0 8px; letter-spacing: -.01em;
}
.pdp-attr-slider {
  position: relative;
  margin: 0 -2px;
}
.pdp-attr-track {
  display: flex;
  gap: 8px;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  padding: 2px 2px 4px;
}
.pdp-attr-track::-webkit-scrollbar { display: none; }
.pdp-attr-box {
  flex: 0 0 auto;
  scroll-snap-align: start;
  min-width: 118px;
  max-width: 200px;
  padding: 10px 12px;
  border: 1px solid var(--p-border);
  border-radius: var(--p-r-2);
  background: #fff;
  box-sizing: border-box;
}
.pdp-attr-content {
  display: flex;
  flex-direction: column;
  gap: 3px;
  min-width: 0;
}
.pdp-attr-k {
  font-size: 11px;
  font-weight: 600;
  color: var(--p-text-subdued);
  line-height: 1.25;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.pdp-attr-v {
  font-size: 13px;
  font-weight: 700;
  color: var(--p-text);
  line-height: 1.3;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  word-break: break-word;
}
.pdp-attr-nav {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 2;
  width: 28px; height: 28px;
  border: 1px solid var(--p-border);
  border-radius: 50%;
  background: #fff;
  color: var(--p-text);
  display: grid; place-items: center;
  cursor: pointer;
  box-shadow: 0 2px 8px rgba(0,0,0,.08);
  padding: 0;
}
.pdp-attr-nav[hidden] { display: none !important; }
.pdp-attr-nav svg { width: 14px; height: 14px; }
.pdp-attr-nav.prev { left: -4px; }
.pdp-attr-nav.next { right: -4px; }
.pdp-attr-nav:hover { border-color: var(--p-border-strong); background: var(--p-bg-subdued); }
.pdp-attr-nav:active { transform: translateY(-50%) scale(.96); }
@media (min-width: 900px) {
  .pdp-attr-box { min-width: 132px; }
}

/* Müşteri görselleri (galeri altı) */
.pdp-cust {
  margin-top: 12px; padding: 12px 12px 10px;
  background: var(--p-bg-surface); border: 1px solid var(--p-border);
  border-radius: var(--p-r-4);
}
.pdp-cust-h {
  display: flex; align-items: baseline; justify-content: space-between; gap: 10px;
  margin-bottom: 10px; flex-wrap: wrap;
}
.pdp-cust-title {
  display: inline-flex; align-items: center; gap: 6px;
  font-family: var(--p-font); font-size: 13.5px; font-weight: 700; color: var(--p-text);
}
.pdp-cust-title svg { width: 15px; height: 15px; color: var(--p-brand); }
.pdp-cust-meta { font-size: 12px; color: var(--p-text-subdued); font-weight: 600; }
.pdp-cust-strip {
  display: flex; gap: 8px; overflow-x: auto; padding-bottom: 4px;
  -webkit-overflow-scrolling: touch; scroll-snap-type: x proximity;
  scrollbar-width: none; overscroll-behavior-x: contain;
  -webkit-tap-highlight-color: transparent;
}
.pdp-cust-strip::-webkit-scrollbar { display: none; }
.pdp-cust-shot {
  flex: 0 0 auto; width: 72px; height: 72px; padding: 0; border: 0;
  border-radius: var(--p-r-card); overflow: hidden; cursor: pointer;
  background: var(--p-bg-subdued); scroll-snap-align: start;
  box-shadow: inset 0 0 0 1px rgba(0,0,0,.06);
  transition: transform .12s ease, box-shadow .15s ease;
  -webkit-tap-highlight-color: transparent; touch-action: manipulation;
}
.pdp-cust-shot img { width: 100%; height: 100%; object-fit: cover; display: block; pointer-events: none; }
.pdp-cust-shot:active { transform: scale(.96); }
.pdp-cust-shot:focus-visible { outline: 2px solid var(--p-brand); outline-offset: 2px; }
.pdp-cust-trust {
  margin: 8px 0 0; display: flex; align-items: center; gap: 5px;
  font-size: 11.5px; font-weight: 600; color: var(--p-success);
}
.pdp-cust-trust svg { width: 13px; height: 13px; }

/* ══════════════════════════════════════════════
   PDP bilgi sekmeleri (bes-style · mobile-first)
   ══════════════════════════════════════════════ */
.pdp-bes {
  margin-top: 16px;
  background: var(--p-bg-surface);
  border: 1px solid var(--p-border);
  border-radius: var(--p-r-4);
  overflow: hidden;
  box-shadow: 0 1px 2px rgba(0,0,0,.04);
}
.pdp-bes-tabs {
  display: flex; flex-direction: column;
  background: var(--p-bg-subdued);
  border-bottom: 1px solid var(--p-border);
  -webkit-tap-highlight-color: transparent;
}
.pdp-bes-tab {
  position: relative;
  display: flex; align-items: center; gap: 10px;
  width: 100%; min-height: 52px;
  padding: 12px 14px;
  margin: 0; border: 0;
  border-bottom: 1px solid var(--p-border);
  background: transparent;
  color: var(--p-text);
  font-family: var(--p-font);
  font-size: 14px; font-weight: 700;
  text-align: left; cursor: pointer;
  transition: background .15s ease, color .15s ease;
  touch-action: manipulation;
}
.pdp-bes-tab:last-child { border-bottom: 0; }
.pdp-bes-tab > svg:first-child {
  width: 18px; height: 18px; flex-shrink: 0;
  color: var(--p-text-subdued);
  transition: color .15s ease;
}
.pdp-bes-tab > span:not(.pdp-bes-badge):not(.pdp-bes-chev) {
  flex: 1; min-width: 0;
  line-height: 1.25;
}
.pdp-bes-badge {
  flex: 0 0 auto;
  min-width: 22px; height: 22px; padding: 0 7px;
  border-radius: var(--p-r-full);
  display: inline-grid; place-items: center;
  background: #fff; border: 1px solid var(--p-border);
  font-size: 11.5px; font-weight: 700;
  color: var(--p-text-subdued);
  font-variant-numeric: tabular-nums;
}
.pdp-bes-chev {
  flex: 0 0 auto; width: 28px; height: 28px;
  display: grid; place-items: center;
  border-radius: var(--p-r-2);
  color: var(--p-text-disabled);
  transition: transform .22s cubic-bezier(.22,1,.36,1), color .15s, background .15s;
}
.pdp-bes-chev svg { width: 16px; height: 16px; }
.pdp-bes-tab.on {
  background: #fff;
  color: var(--p-brand-text);
  box-shadow: inset 3px 0 0 var(--p-brand);
}
.pdp-bes-tab.on > svg:first-child { color: var(--p-brand); }
.pdp-bes-tab.on .pdp-bes-badge {
  background: var(--p-brand-subdued);
  border-color: transparent;
  color: var(--p-brand-text);
}
.pdp-bes-tab.on .pdp-bes-chev {
  transform: rotate(180deg);
  color: var(--p-brand);
  background: var(--p-brand-subdued);
}
.pdp-bes-tab:active { background: var(--p-bg-hover); }
.pdp-bes-tab:focus-visible {
  outline: 2px solid var(--p-brand);
  outline-offset: -2px; z-index: 1;
}

.pdp-bes-panel {
  display: none;
  padding: 16px 14px 18px;
  background: #fff;
  animation: pdpBesIn .22s ease;
}
.pdp-bes-panel.on { display: block; }
@keyframes pdpBesIn {
  from { opacity: 0; transform: translateY(6px); }
  to { opacity: 1; transform: none; }
}

/* Açıklama */
.pdp-bes-lead {
  margin: 0 0 12px;
  font-family: var(--p-font);
  font-size: 15px; font-weight: 700;
  color: var(--p-text); line-height: 1.45;
}
.pdp-bes-tags { margin-top: 18px; padding-top: 14px; border-top: 1px solid var(--p-border); }
.pdp-bes-tags-k {
  display: flex; align-items: center; gap: 6px;
  margin-bottom: 8px; font-size: 12.5px; font-weight: 700; color: var(--p-text-subdued);
}
.pdp-bes-tags-k svg { width: 14px; height: 14px; }

/* Specs */
.pdp-bes-specs {
  border: 1px solid var(--p-border);
  border-radius: var(--p-r-card); overflow: hidden;
}
.pdp-bes-spec {
  display: grid; grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
  gap: 10px; padding: 11px 12px;
  border-bottom: 1px solid var(--p-border);
  font-size: 13.5px; line-height: 1.4;
}
.pdp-bes-spec:nth-child(odd) { background: var(--p-bg-subdued); }
.pdp-bes-spec:last-child { border-bottom: 0; }
.pdp-bes-spec-k { color: var(--p-text-subdued); font-weight: 600; }
.pdp-bes-spec-v { color: var(--p-text); font-weight: 700; text-align: right; }
.pdp-bes-feat-note {
  margin-top: 14px; padding: 12px 14px;
  background: var(--p-brand-subdued);
  border-radius: var(--p-r-card);
}
.pdp-bes-feat-note-h {
  display: flex; align-items: center; gap: 6px;
  font-size: 13px; font-weight: 700; color: var(--p-brand-text);
  margin-bottom: 8px;
}
.pdp-bes-feat-note-h svg { width: 14px; height: 14px; }
.pdp-bes-feat-list {
  margin: 0; padding-left: 18px;
  font-size: 13px; color: var(--p-text); line-height: 1.55;
}
.pdp-bes-feat-list li { margin: 4px 0; }

/* Reviews */
.pdp-bes-reviews-head {
  display: flex; flex-direction: column; gap: 14px;
  padding: 14px; margin-bottom: 14px;
  background: var(--p-bg-surface);
  border: 1px solid #f5e0cc; border-radius: var(--p-r-4);
}
.pdp-bes-score { display: flex; flex-direction: column; align-items: flex-start; gap: 4px; }
.pdp-bes-score-num {
  font-family: var(--p-font);
  font-size: 36px; font-weight: 700; line-height: 1;
  color: var(--p-text); letter-spacing: -.02em;
}
.pdp-bes-score-stars { color: #f5a524; font-size: 15px; letter-spacing: 1px; }
.pdp-bes-score-count { font-size: 12.5px; font-weight: 600; color: var(--p-text-subdued); }
.pdp-bes-reviews-divider { display: none; width: 1px; align-self: stretch; background: #f0d9c2; }
.pdp-bes-reviews-blurb-t {
  font-family: var(--p-font);
  font-size: 14.5px; font-weight: 700; color: var(--p-text);
}
.pdp-bes-reviews-blurb-p {
  margin: 4px 0 0; font-size: 13px; line-height: 1.5; color: var(--p-text-subdued);
}
.pdp-bes-review {
  padding: 14px 0;
  border-bottom: 1px solid var(--p-border);
}
.pdp-bes-review:last-child { border-bottom: 0; }
.pdp-bes-review-top {
  display: flex; justify-content: space-between; gap: 10px; align-items: flex-start;
}
/* Yönetici yorum düzenle / sil (yalnız admin oturumunda görünür) */
.pdp-bes-review-meta { display: flex; align-items: center; gap: 8px; flex: none; }
.pdp-review-admin { display: inline-flex; align-items: center; gap: 4px; }
.pdp-review-admin-btn {
  display: inline-flex; align-items: center; justify-content: center;
  width: 30px; height: 30px; padding: 0; cursor: pointer;
  color: var(--p-muted); background: var(--p-bg-surface);
  border: 1px solid var(--p-border); border-radius: var(--p-r-2);
  transition: background .15s, border-color .15s, color .15s;
}
.pdp-review-admin-btn:hover { background: var(--p-bg); color: var(--p-text); border-color: var(--p-text); }
.pdp-review-admin-btn.is-del { color: var(--p-critical); }
.pdp-review-admin-btn.is-del:hover { background: var(--p-critical); border-color: var(--p-critical); color: #fff; }
.pdp-review-admin-btn svg { width: 15px; height: 15px; }
.pdp-review-admin-btn:disabled { opacity: .5; cursor: wait; }
.pdp-review-edit {
  margin-top: 12px; padding: 14px;
  border: 1px solid var(--p-border); border-radius: var(--p-r-3);
  background: var(--p-bg);
}
.pdp-review-edit-grid {
  display: grid; grid-template-columns: 1fr 140px; gap: 10px 12px;
}
.pdp-review-edit-grid .field { margin: 0; }
.pdp-review-edit-grid .field.full { grid-column: 1 / -1; }
.pdp-review-edit-actions { display: flex; gap: 8px; margin-top: 12px; flex-wrap: wrap; }
@media (max-width: 560px) {
  .pdp-review-edit-grid { grid-template-columns: 1fr; }
}
.pdp-review-del { margin: 0; flex: none; line-height: 0; }
.pdp-review-del-btn {
  display: inline-flex; align-items: center; justify-content: center;
  width: 30px; height: 30px; padding: 0; cursor: pointer;
  color: var(--p-critical); background: var(--p-bg-surface);
  border: 1px solid var(--p-border); border-radius: var(--p-r-2);
  transition: background .15s, border-color .15s;
}
.pdp-review-del-btn:hover { background: var(--p-critical); border-color: var(--p-critical); color: #fff; }
.pdp-review-del-btn svg { width: 15px; height: 15px; }
.pdp-bes-review-who { display: flex; flex-direction: column; align-items: flex-start; gap: 4px; min-width: 0; }
.pdp-bes-review-name {
  font-family: var(--p-font);
  font-weight: 700; font-size: 14px; color: var(--p-text);
}
.pdp-bes-review-ok {
  display: inline-flex; align-items: center; gap: 3px;
  font-size: 10.5px; font-weight: 700; color: var(--p-success);
  background: var(--p-success-bg); padding: 3px 8px; border-radius: var(--p-r-full);
  line-height: 1.25; max-width: 100%;
}
.pdp-bes-review-ok svg { width: 11px; height: 11px; flex-shrink: 0; }
.pdp-bes-review-date { font-size: 12px; font-weight: 600; color: var(--p-text-subdued); white-space: nowrap; }
.pdp-bes-review-stars { margin-top: 4px; color: #f5a524; font-size: 13px; letter-spacing: 1px; }
.pdp-bes-review-title { margin-top: 6px; font-weight: 700; font-size: 13.5px; color: var(--p-text); }
.pdp-bes-review-body {
  margin: 6px 0 0; font-size: 13.5px; line-height: 1.55; color: var(--p-text-subdued);
  white-space: pre-wrap;
}
.pdp-bes-empty {
  padding: 18px 12px; text-align: center;
  font-size: 13.5px; font-weight: 600; color: var(--p-text-subdued);
  background: var(--p-bg-subdued); border-radius: var(--p-r-card);
}
.pdp-bes-form {
  margin-top: 18px; padding-top: 16px;
  border-top: 1px dashed var(--p-border);
}
.pdp-bes-form-h {
  margin: 0 0 12px;
  font-family: var(--p-font);
  font-size: 15px; font-weight: 700;
}
.pdp-bes-auth-gate {
  padding: 16px 14px;
  border-radius: var(--p-r-card);
  background: var(--p-bg-subdued, #f6f6f7);
  border: 1px solid var(--p-border);
}
.pdp-bes-auth-gate-t {
  margin: 0;
  font-size: 14px;
  font-weight: 700;
  color: var(--p-text);
  line-height: 1.4;
}
.pdp-bes-auth-gate-p {
  margin: 6px 0 0;
  font-size: 13px;
  color: var(--p-text-subdued);
  line-height: 1.45;
}
.pdp-bes-auth-gate-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 14px;
}

/* Q&A */
.pdp-bes-qa-item {
  padding: 12px 0; border-bottom: 1px solid var(--p-border);
}
.pdp-bes-qa-item:last-child { border-bottom: 0; }
.pdp-bes-qa-q, .pdp-bes-qa-a {
  display: flex; gap: 10px; align-items: flex-start;
  font-size: 13.5px; line-height: 1.5; color: var(--p-text);
}
.pdp-bes-qa-a {
  margin-top: 10px; padding: 10px 12px;
  background: #f3faf6; border-radius: var(--p-r-3);
  border-left: 3px solid var(--p-border-strong);
}
.pdp-bes-qa-pill {
  flex: 0 0 auto; font-size: 10.5px; font-weight: 700;
  padding: 3px 7px; border-radius: var(--p-r-1); letter-spacing: .02em;
}
.pdp-bes-qa-pill.is-q { background: var(--p-bg-subdued); color: var(--p-text); }
.pdp-bes-qa-pill.is-a { background: var(--p-success-bg); color: var(--p-success); }

/* Info (iade / garanti) */
.pdp-bes-info-hero {
  display: flex; gap: 12px; align-items: center;
  padding: 14px; margin-bottom: 14px;
  background: var(--p-bg-subdued);
  border: 1px solid var(--p-border); border-radius: var(--p-r-4);
}
.pdp-bes-info-hero.is-shield {
  background: var(--p-brand-subdued);
  border-color: rgba(242,122,26,.22);
}
.pdp-bes-info-ic {
  flex: 0 0 auto; width: 44px; height: 44px;
  display: grid; place-items: center;
  border-radius: var(--p-r-card);
  background: #fff; color: var(--p-success);
  box-shadow: 0 1px 3px rgba(0,0,0,.06);
}
.pdp-bes-info-hero.is-shield .pdp-bes-info-ic { color: var(--p-brand); }
.pdp-bes-info-ic svg { width: 22px; height: 22px; }
.pdp-bes-info-txt { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.pdp-bes-info-title {
  font-family: var(--p-font);
  font-size: 15px; font-weight: 700; color: var(--p-text);
}
.pdp-bes-info-sub { font-size: 12.5px; line-height: 1.4; color: var(--p-text-subdued); font-weight: 600; }
.pdp-bes-info-intro {
  margin: 0 0 14px; font-size: 13.5px; line-height: 1.6; color: var(--p-text-subdued);
}
.pdp-bes-info-intro strong { color: var(--p-text); }
.pdp-bes-info-grid { display: grid; gap: 10px; }
.pdp-bes-info-item {
  display: flex; gap: 10px; align-items: flex-start;
  padding: 12px; border-radius: var(--p-r-card);
  background: var(--p-bg-subdued); border: 1px solid transparent;
}
.pdp-bes-info-check {
  flex: 0 0 auto; width: 22px; height: 22px; margin-top: 1px;
  display: grid; place-items: center; border-radius: 50%;
  background: var(--p-success-bg); color: var(--p-success);
}
.pdp-bes-info-check svg { width: 12px; height: 12px; }
.pdp-bes-info-item > span:last-child {
  display: flex; flex-direction: column; gap: 2px; min-width: 0;
  font-size: 12.5px; line-height: 1.45; color: var(--p-text-subdued);
}
.pdp-bes-info-item strong {
  font-size: 13.5px; font-weight: 700; color: var(--p-text); line-height: 1.3;
}
.pdp-bes-info-note {
  margin-top: 14px; padding: 12px 14px;
  font-size: 12.5px; line-height: 1.55; color: #7a4a12;
  background: #fff8eb; border: 1px solid #f0d9a8; border-radius: var(--p-r-card);
}
.pdp-bes-info-note.is-warn {
  background: #FEF2F2; border-color: #FCA5A5; color: #7F1D1D;
}
.pdp-bes-steps {
  margin: 16px 0 0; padding: 0; list-style: none; counter-reset: besstep;
}
.pdp-bes-steps li {
  position: relative;
  counter-increment: besstep;
  padding: 10px 0 10px 36px;
  font-size: 13px; line-height: 1.5; color: var(--p-text-subdued);
  border-bottom: 1px solid var(--p-border);
}
.pdp-bes-steps li:last-child { border-bottom: 0; }
.pdp-bes-steps li::before {
  content: counter(besstep);
  position: absolute; left: 0; top: 10px;
  width: 24px; height: 24px;
  display: grid; place-items: center;
  border-radius: 50%;
  background: var(--p-brand-subdued); color: var(--p-brand-text);
  font-size: 12px; font-weight: 700;
}
.pdp-bes-steps strong { color: var(--p-text); }
.pdp-bes-more {
  display: inline-flex; margin-top: 16px;
  font-size: 13px; font-weight: 700; color: var(--p-brand-text);
}

/* Desktop: yatay sekme şeridi */
@media (min-width: 768px) {
  .pdp-bes { border-radius: var(--p-r-5); }
  .pdp-bes-tabs {
    flex-direction: row;
    flex-wrap: nowrap;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    gap: 0;
    padding: 0 6px;
    background: #fff;
  }
  .pdp-bes-tabs::-webkit-scrollbar { display: none; }
  .pdp-bes-tab {
    width: auto; min-height: 52px;
    flex: 0 0 auto;
    padding: 14px 16px;
    border-bottom: 2px solid transparent;
    border-radius: 0;
    gap: 8px;
    font-size: 13.5px;
    white-space: nowrap;
  }
  .pdp-bes-tab:last-child { border-bottom: 2px solid transparent; }
  .pdp-bes-tab.on {
    box-shadow: none;
    border-bottom-color: var(--p-brand);
    background: transparent;
  }
  .pdp-bes-chev { display: none; }
  .pdp-bes-panel { padding: 22px 22px 24px; }
  .pdp-bes-reviews-head {
    flex-direction: row; align-items: center; gap: 20px;
  }
  .pdp-bes-reviews-divider { display: block; }
  .pdp-bes-score { min-width: 120px; }
  .pdp-bes-info-grid { grid-template-columns: 1fr 1fr; }
  .pdp-bes-spec { grid-template-columns: 1fr 1.2fr; padding: 12px 16px; }
}

@media (max-width: 767px) {
  /* Mobil: açık sekmenin paneli hemen altında (JS panel’i taşır) */
  .pdp-bes.is-mobile-acc .pdp-bes-tabs {
    background: transparent; border-bottom: 0;
  }
  .pdp-bes.is-mobile-acc .pdp-bes-tab {
    background: var(--p-bg-subdued);
    border: 1px solid var(--p-border);
    border-radius: var(--p-r-card);
    margin: 8px 10px 0;
    width: calc(100% - 20px);
  }
  .pdp-bes.is-mobile-acc .pdp-bes-tab.on {
    background: #fff;
    border-color: #f0c9a0;
    margin-bottom: 0;
    border-radius: var(--p-r-card) var(--p-r-card) 0 0;
    box-shadow: none;
  }
  .pdp-bes.is-mobile-acc .pdp-bes-panel.on {
    margin: 0 10px 8px;
    padding: 14px 12px 16px;
    border: 1px solid #f0c9a0;
    border-top: 0;
    border-radius: 0 0 var(--p-r-card) var(--p-r-card);
  }
  .pdp-bes.is-mobile-acc { border: 0; background: transparent; box-shadow: none; overflow: visible; }
}

/* Yorum + görsel modal */
html.pdp-rmodal-open,
html.pdp-rmodal-open body {
  overflow: hidden;
  overscroll-behavior: none;
}
html.pdp-rmodal-open body {
  position: fixed;
  left: 0; right: 0;
  width: 100%;
}
.pdp-rmodal {
  position: fixed; inset: 0; z-index: 280;
  display: flex; align-items: flex-end; justify-content: center;
  padding: 0; opacity: 0; pointer-events: none;
  transition: opacity .2s ease;
  -webkit-tap-highlight-color: transparent;
}
.pdp-rmodal[hidden] { display: none !important; }
.pdp-rmodal.on { opacity: 1; pointer-events: auto; }
.pdp-rmodal-backdrop { position: absolute; inset: 0; background: rgba(17,24,39,.62); }
.pdp-rmodal-sheet {
  position: relative; z-index: 1; width: 100%; max-width: 440px;
  max-height: min(92vh, 92dvh, 760px);
  background: #fff; border-radius: var(--p-r-5) var(--p-r-5) 0 0; overflow: hidden;
  display: flex; flex-direction: column;
  transform: translateY(18px); transition: transform .22s cubic-bezier(.22,1,.36,1);
  box-shadow: 0 -8px 40px rgba(0,0,0,.2);
  overscroll-behavior: contain;
  touch-action: pan-y;
}
.pdp-rmodal.on .pdp-rmodal-sheet { transform: none; }
.pdp-rmodal-x {
  position: absolute; top: 10px; right: 10px; z-index: 4;
  width: 44px; height: 44px; border: 0; border-radius: 50%;
  background: rgba(0,0,0,.45); color: #fff; display: grid; place-items: center;
  cursor: pointer; backdrop-filter: blur(6px);
}
.pdp-rmodal-x svg { width: 18px; height: 18px; }
.pdp-rmodal-media {
  position: relative; background: #111; aspect-ratio: 1 / 1;
  max-height: min(52vh, 52dvh);
  display: grid; place-items: center;
  touch-action: pan-y;
  user-select: none; -webkit-user-select: none;
}
.pdp-rmodal-media > img {
  width: 100%; height: 100%; object-fit: contain; display: block; background: #111;
  pointer-events: none;
}
.pdp-rmodal-nav {
  position: absolute; top: 50%; transform: translateY(-50%);
  width: 40px; height: 40px; border: 0; border-radius: 50%;
  background: rgba(255,255,255,.92); color: #111; display: grid; place-items: center;
  cursor: pointer; box-shadow: 0 2px 10px rgba(0,0,0,.2); z-index: 3;
  -webkit-tap-highlight-color: transparent;
}
.pdp-rmodal-nav svg { width: 18px; height: 18px; }
.pdp-rmodal-nav.prev { left: 8px; }
.pdp-rmodal-nav.next { right: 8px; }
.pdp-rmodal-count {
  position: absolute; top: 12px; left: 12px; z-index: 3;
  background: rgba(0,0,0,.55); color: #fff; font-size: 12px; font-weight: 700;
  padding: 5px 10px; border-radius: var(--p-r-full); backdrop-filter: blur(6px);
  font-variant-numeric: tabular-nums; pointer-events: none;
}
.pdp-rmodal-thumbs {
  position: absolute; left: 0; right: 0; bottom: 10px;
  display: flex; gap: 6px; padding: 0 12px;
  overflow-x: auto; -webkit-overflow-scrolling: touch;
  scrollbar-width: none; justify-content: flex-start;
  z-index: 3; touch-action: pan-x; overscroll-behavior-x: contain;
}
.pdp-rmodal-thumbs::-webkit-scrollbar { display: none; }
.pdp-rmodal-thumbs button {
  flex: 0 0 auto; width: 40px; height: 40px; padding: 0; border: 2px solid transparent;
  border-radius: var(--p-r-2); overflow: hidden; cursor: pointer; background: #222; opacity: .7;
  -webkit-tap-highlight-color: transparent;
}
.pdp-rmodal-thumbs button.on { border-color: #fff; opacity: 1; }
.pdp-rmodal-thumbs img { width: 100%; height: 100%; object-fit: cover; display: block; pointer-events: none; }
.pdp-rmodal-body {
  padding: 14px 16px calc(16px + env(safe-area-inset-bottom, 0px));
  overflow-y: auto; flex: 1; min-height: 0;
  -webkit-overflow-scrolling: touch; overscroll-behavior: contain;
  touch-action: pan-y;
}
.pdp-rmodal-top { display: flex; justify-content: space-between; gap: 12px; align-items: flex-start; }
.pdp-rmodal-name {
  font-family: var(--p-font); font-weight: 700; font-size: 15px; color: var(--p-text);
}
.pdp-rmodal-badge {
  display: inline-flex; align-items: center; gap: 4px; margin-top: 4px;
  font-size: 10.5px; font-weight: 700; color: var(--p-success);
  background: var(--p-success-bg); padding: 3px 8px; border-radius: var(--p-r-full);
  line-height: 1.25; max-width: 100%;
}
.pdp-rmodal-badge svg { width: 12px; height: 12px; flex-shrink: 0; }
.pdp-rmodal-stars { color: #f5a524; font-size: 14px; letter-spacing: 1px; margin-top: 6px; }
.pdp-rmodal-date { font-size: 12px; color: var(--p-text-subdued); font-weight: 600; white-space: nowrap; }
.pdp-rmodal-rtitle {
  margin-top: 10px; font-weight: 700; font-size: 14px; color: var(--p-text);
}
.pdp-rmodal-comment {
  margin: 8px 0 0; font-size: 13.5px; line-height: 1.55; color: var(--p-text-subdued);
  white-space: pre-wrap;
}
.pdp-rmodal-link {
  display: inline-block; margin-top: 14px; font-size: 13px; font-weight: 700;
  color: var(--p-brand-text); text-decoration: none;
}
@media (max-width: 639px) {
  /* Kısa ekran: görsel alanı biraz küçült, yorum okunabilsin */
  .pdp-rmodal-media { max-height: min(48vh, 48dvh); }
  .pdp-rmodal-nav { width: 44px; height: 44px; }
  /* Oklar yan tap zone — kaydırma birincil, oklar yedek */
  .pdp-rmodal-nav.prev { left: 6px; }
  .pdp-rmodal-nav.next { right: 6px; }
}
@media (min-width: 640px) {
  .pdp-rmodal { align-items: center; padding: 24px; }
  .pdp-rmodal-sheet {
    border-radius: var(--p-r-5); max-height: min(90vh, 90dvh);
    transform: translateY(10px) scale(.98);
  }
  .pdp-rmodal.on .pdp-rmodal-sheet { transform: none; }
  .pdp-rmodal-x { top: 10px; width: 36px; height: 36px; }
  .pdp-cust-shot { width: 80px; height: 80px; }
}
/* Masaüstü: iki sütun — solda büyük görsel, sağda yorum (Trendyol/Amazon kalıbı) */
@media (min-width: 900px) {
  .pdp-rmodal-sheet {
    flex-direction: row;
    width: min(92vw, 920px); max-width: 920px;
    height: min(86vh, 640px); max-height: none;
  }
  .pdp-rmodal-media {
    flex: 1 1 auto; min-width: 0;
    aspect-ratio: auto; max-height: none; height: 100%;
  }
  .pdp-rmodal-body {
    flex: 0 0 340px; width: 340px;
    border-left: 1px solid var(--p-border);
    padding: 20px 20px 16px;
  }
  /* X butonu artık beyaz yorum sütununun üstünde — koyu daire yerine nötr */
  .pdp-rmodal-x { background: var(--p-bg-subdued); color: var(--p-text); backdrop-filter: none; }
  .pdp-rmodal-x:hover { background: var(--p-border); }
  /* Tarih X butonunun altında kalmasın */
  .pdp-rmodal-top { padding-right: 40px; }
}
/* Modal açıkken FOMO satış bildirimi araya girmesin */
html.pdp-rmodal-open .fomo-pop-wrap { display: none !important; }

/* UGC thumb as button */
button.ugc-thumb {
  display: block; width: 68px; height: 68px; padding: 0; border: 1px solid var(--p-border);
  border-radius: var(--p-r-3); overflow: hidden; cursor: zoom-in; background: var(--p-bg-subdued);
}
button.ugc-thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }

/* Kullanıcı görselleri (yorum/soru) + lightbox */
.ugc-thumbs { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 8px; }
.ugc-thumb { display: block; width: 68px; height: 68px; border-radius: var(--p-r-3); overflow: hidden; border: 1px solid var(--p-border); cursor: zoom-in; background: var(--p-bg-subdued); }
.ugc-thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
.ugc-upload { display: block; }
.ugc-preview { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 8px; }
.ugc-prev-item { width: 60px; height: 60px; border-radius: var(--p-r-2); overflow: hidden; border: 1px solid var(--p-border); }
.ugc-prev-item img { width: 100%; height: 100%; object-fit: cover; display: block; }
.ugc-lightbox { position: fixed; inset: 0; background: rgba(0,0,0,.82); z-index: 200; display: none; align-items: center; justify-content: center; padding: 24px; }
.ugc-lightbox.on { display: flex; }
.ugc-lightbox img { max-width: 96vw; max-height: 90vh; border-radius: var(--p-r-2); box-shadow: 0 8px 40px rgba(0,0,0,.5); }
.ugc-lb-close { position: absolute; top: 16px; right: 20px; width: 42px; height: 42px; border-radius: 50%; border: 0; background: rgba(255,255,255,.15); color: #fff; font-size: 28px; line-height: 1; cursor: pointer; }
.ugc-lb-close:hover { background: rgba(255,255,255,.28); }

/* Zengin ürün açıklaması (HTML) */
.pdp-desc { color: var(--p-text); line-height: 1.7; font-size: 14.5px; }
.pdp-desc h2, .pdp-desc h3, .pdp-desc h4 { margin: 16px 0 8px; line-height: 1.3; }
.pdp-desc h2 { font-size: 18px; } .pdp-desc h3 { font-size: 16px; } .pdp-desc h4 { font-size: 15px; }
.pdp-desc p { margin: 0 0 12px; color: var(--p-text-subdued); }
.pdp-desc ul, .pdp-desc ol { margin: 0 0 12px; padding-left: 22px; color: var(--p-text-subdued); }
.pdp-desc li { margin: 3px 0; }
.pdp-desc img { max-width: 100%; height: auto; border-radius: var(--p-r-2); margin: 8px 0; }
.pdp-desc a { color: var(--p-brand-text); text-decoration: underline; }
.pdp-desc figure { margin: 12px 0; }
.pdp-desc table { width: 100%; border-collapse: collapse; margin: 12px 0; font-size: 13.5px; }
.pdp-desc th, .pdp-desc td { border: 1px solid var(--p-border); padding: 8px 10px; text-align: left; }
.pdp-desc th { background: var(--p-bg-subdued); font-weight: 600; }

/* Ürün videosu — galeri butonu + modal */
.pdp-video-btn {
  position: absolute; right: 12px; bottom: 12px; z-index: 3;
  display: inline-flex; align-items: center; gap: 7px;
  background: rgba(0,0,0,.6); color: #fff; border: none; cursor: pointer;
  font-size: 12.5px; font-weight: 700; padding: 7px 12px 7px 8px; border-radius: var(--p-r-full);
  backdrop-filter: blur(4px); transition: background .15s, transform .12s;
}
.pdp-video-btn:hover { background: rgba(0,0,0,.78); }
.pdp-video-btn:active { transform: scale(.95); }
.pdp-video-btn .pvb-play { display: grid; place-items: center; width: 22px; height: 22px; border-radius: 50%; background: var(--p-brand); color: #fff; }
.pdp-video-btn .pvb-play svg { margin-left: 1px; }

.pdp-video-modal { align-items: center; }
.pdp-video-box { position: relative; width: min(92vw, 900px); }
.pdp-video-close {
  position: absolute; top: -44px; right: 0; width: 38px; height: 38px; border-radius: 50%;
  background: rgba(255,255,255,.16); color: #fff; border: none; cursor: pointer; display: grid; place-items: center; z-index: 2;
}
.pdp-video-close:hover { background: rgba(255,255,255,.3); }
.pdp-video-close svg { width: 20px; height: 20px; }
.pdp-video-frame { position: relative; width: 100%; aspect-ratio: 16/9; background: #000; border-radius: var(--p-r-3); overflow: hidden; }
.pdp-video-frame iframe, .pdp-video-frame video { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; display: block; object-fit: contain; background: #000; }

/* Ek bilgiler spec tablosu */
.spec-table { width: 100%; border-collapse: collapse; font-size: 13.5px; }
.spec-table th, .spec-table td { text-align: left; padding: 10px 12px; border-bottom: 1px solid var(--p-border); vertical-align: top; }
.spec-table th { width: 40%; color: var(--p-text-subdued); font-weight: 600; background: var(--p-bg-subdued); }
.spec-table tr:last-child th, .spec-table tr:last-child td { border-bottom: 0; }

@media (min-width: 900px) {
  .pdp-layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 28px; align-items: start; }
  .pdp-media { position: sticky; top: 150px; }
  .pdp-info { margin-top: 0; }
  .pdp-title { font-size: 24px; }
  /* Masaüstü: adet + Sepete Ekle yan yana, Şimdi Al altta tam genişlik */
  .pdp-buybox { display: flex; flex-direction: column; gap: 10px; }
  .pdp-buy-row {
    display: flex;
    flex-direction: row;
    align-items: stretch;
    gap: 10px;
  }
  .pdp-buybox .qty-stepper { width: auto; height: 56px; flex: 0 0 auto; }
  .pdp-buybox .qty-stepper button { height: 54px; width: 42px; }
  .pdp-buybox .qty-stepper .q { flex: none; min-width: 44px; }
  .pdp-buybox .pdp-add-cart { flex: 1 1 auto; width: auto; min-width: 0; }
  .pdp-buybox .pdp-buy-now { width: 100%; }
  .pdp-buybox .btn-lg { min-height: 56px; }
  /* PDP'nin alt barı masaüstünde gizli (buybox sağ sütunda). Diğer sayfaların
     (sepet vb.) sticky-bar'ı ise inline karta döner — aşağıdaki genel kural. */
  .sticky-bar-pdp { display: none; }
  body.has-sticky-bar { padding-bottom: 32px; }
}

/* Desktop: genel sticky-bar (sepet "Siparişi Tamamla" vb.) inline karta döner.
   Kaynak sırası: base .sticky-bar{position:fixed} kuralından SONRA gelmeli. */
@media (min-width: 900px) {
  .sticky-bar:not(.sticky-bar-pdp) {
    position: static; left: auto; right: auto; bottom: auto; margin: 20px 0 0;
    background: var(--p-bg-surface); border: 1px solid var(--p-border);
    border-radius: var(--p-r-3); box-shadow: var(--p-shadow-2); padding: 14px 18px; backdrop-filter: none;
  }
  .sticky-bar:not(.sticky-bar-pdp) .container,
  .sticky-bar:not(.sticky-bar-pdp) .sticky-bar-inner {
    flex-direction: row; align-items: center; gap: 16px;
    padding: 0; max-width: none; margin: 0;
  }
  .sticky-bar:not(.sticky-bar-pdp) .sticky-bar-prices { flex: 1; min-width: 0; }
  .sticky-bar:not(.sticky-bar-pdp) .sticky-bar-cta {
    width: auto; flex: 0 0 auto; min-width: 220px;
  }
}

/* ---------- Bank / IBAN block ---------- */
.iban-box { background: var(--p-bg-subdued); border: 1px dashed var(--p-border-strong); border-radius: var(--p-r-2); padding: 12px 14px; }
.iban-val { font-size: 16px; font-weight: 600; letter-spacing: .5px; word-break: break-all; }
.copy-btn { display: inline-flex; align-items: center; gap: 6px; font-size: 13px; font-weight: 600; color: var(--p-brand-text); background: none; border: none; cursor: pointer; padding: 4px 0; }
.copy-btn svg { width: 16px; height: 16px; }

/* timeline */
.timeline { position: relative; padding-left: 22px; }
.timeline .tl-item { position: relative; padding: 0 0 16px; }
.timeline .tl-item::before { content: ""; position: absolute; left: -16px; top: 4px; width: 10px; height: 10px; border-radius: 50%; background: var(--p-brand); box-shadow: 0 0 0 3px var(--p-brand-subdued); }
.timeline .tl-item::after { content: ""; position: absolute; left: -12px; top: 14px; bottom: -4px; width: 2px; background: var(--p-border); }
.timeline .tl-item:last-child::after { display: none; }
.tl-time { font-size: 12px; color: var(--p-text-subdued); }

/* ---------- Toast ---------- */
/* Toast her katmanın üstünde (modal 1000, fomo 1200) */
.toast-wrap {
  --toast-gap: 16px;
  --toast-above-nav: calc(var(--nav-h) + var(--toast-gap) + env(safe-area-inset-bottom, 0px));
  position: fixed;
  left: max(12px, env(safe-area-inset-left, 0px));
  right: max(12px, env(safe-area-inset-right, 0px));
  bottom: var(--toast-above-nav);
  z-index: 1400;
  display: flex;
  flex-direction: column-reverse;
  gap: 8px;
  align-items: center;
  pointer-events: none;
  max-width: 100%;
  box-sizing: border-box;
}
/* Mobil checkout/sepet sticky CTA üstüne binmesin */
body.has-sticky-bar .toast-wrap {
  bottom: calc(var(--nav-h) + var(--sticky-toast-lift, 124px) + env(safe-area-inset-bottom, 0px));
}
body.has-pdp-sticky-buy .toast-wrap {
  bottom: calc(var(--nav-h) + 78px + env(safe-area-inset-bottom, 0px));
}
.toast {
  width: 100%;
  max-width: 400px;
  box-sizing: border-box;
  background: #1a1c1d;
  color: #fff;
  padding: 12px 14px;
  border-radius: var(--p-r-4);
  font-size: 14px;
  font-weight: 550;
  letter-spacing: -0.01em;
  line-height: 1.4;
  box-shadow: 0 10px 28px rgba(0,0,0,.28), 0 2px 8px rgba(0,0,0,.12);
  display: flex;
  align-items: flex-start;
  gap: 10px;
  animation: toastIn .28s cubic-bezier(.22,1,.36,1);
  -webkit-font-smoothing: antialiased;
  text-wrap: pretty;
}
.toast > span {
  flex: 1;
  min-width: 0;
  padding-top: 1px;
}
.toast svg {
  width: 18px;
  height: 18px;
  color: #4ade80;
  flex-shrink: 0;
  margin-top: 1px;
}
.toast.err { background: #3f1515; }
.toast.err svg { color: #fca5a5; }
.toast.info {
  background: #152033;
  border: 1px solid rgba(147,197,253,.22);
  padding: 13px 14px;
  font-size: 13.5px;
  font-weight: 500;
  line-height: 1.45;
}
.toast.info svg { color: #93c5fd; margin-top: 2px; }
.toast.is-out {
  opacity: 0;
  transform: translateY(8px) scale(.98);
  transition: opacity .28s ease, transform .28s ease;
}
@keyframes toastIn {
  from { opacity: 0; transform: translateY(10px) scale(.98); }
  to { opacity: 1; transform: translateY(0) scale(1); }
}
@media (min-width: 900px) {
  .toast-wrap {
    left: 50%;
    right: auto;
    width: min(400px, calc(100vw - 48px));
    transform: translateX(-50%);
    bottom: 28px;
  }
  /* Desktop’ta checkout sticky gizli — tabbar da yok */
  body.has-sticky-bar .toast-wrap,
  body.has-pdp-sticky-buy .toast-wrap {
    bottom: 28px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .toast { animation: none; }
  .toast.is-out { transition: opacity .15s ease; transform: none; }
}


/* ---------- Empty state ---------- */
.empty { text-align: center; padding: 48px 20px; color: var(--p-text-subdued); }
.empty > svg { width: 56px; height: 56px; opacity: .5; margin-bottom: 12px; }
.empty .btn { display: inline-flex; }
.empty .btn svg { width: 18px; height: 18px; opacity: 1; margin-bottom: 0; }

/* (Skeleton sistemi dosya sonunda — eski çakışan .skel tanımı kaldırıldı) */

/* ---------- Misc ---------- */
.divider { height: 1px; background: var(--p-border); margin: 16px 0; }
.spacer { height: 16px; }
.page { padding-top: 16px; padding-bottom: 12px; }
.back-link { display: inline-flex; align-items: center; gap: 4px; font-size: 14px; font-weight: 600; color: var(--p-text-subdued); margin-bottom: 12px; }
.back-link svg { width: 18px; height: 18px; }
.breadcrumb { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; font-size: 13px; color: var(--p-text-subdued); margin-bottom: 12px; }
.breadcrumb a { color: var(--p-text-subdued); }
.breadcrumb a:hover { color: var(--p-brand-text); }
.breadcrumb .cur { color: var(--p-text); font-weight: 600; max-width: 60vw; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.breadcrumb span:not(.cur) { color: var(--p-border-strong); }
/* Payment countdown */
.pay-countdown { border-left: 3px solid var(--p-warning); }
.pay-countdown .countdown-val { font-size: 20px; font-weight: 700; color: var(--p-warning); }
.pay-countdown.urgent { border-left-color: var(--p-critical); }
.pay-countdown.urgent .countdown-val { color: var(--p-critical); }
.pay-countdown.expired .countdown-val { color: var(--p-text-subdued); }

/* PDP gallery slider */
.pdp-slides { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; -webkit-overflow-scrolling: touch; scrollbar-width: none; aspect-ratio: 1/1; }
.pdp-slides::-webkit-scrollbar { display: none; }
.pdp-slide { flex: 0 0 100%; scroll-snap-align: center; }
.pdp-slide img { width: 100%; height: 100%; object-fit: cover; display: block; }
.pdp-gal-nav {
  position: absolute; top: 50%; transform: translateY(-50%);
  width: 40px; height: 40px; border: 0; border-radius: 50%;
  background: rgba(255,255,255,.94); color: var(--p-text);
  display: grid; place-items: center; cursor: pointer; z-index: 3;
  box-shadow: 0 2px 10px rgba(0,0,0,.16);
  -webkit-tap-highlight-color: transparent;
  transition: background .15s, transform .15s, opacity .15s;
}
.pdp-gal-nav:hover { background: #fff; }
.pdp-gal-nav:active { transform: translateY(-50%) scale(.94); }
.pdp-gal-nav svg { width: 20px; height: 20px; }
.pdp-gal-nav.prev { left: 10px; }
.pdp-gal-nav.next { right: 10px; }
@media (max-width: 640px) {
  .pdp-gal-nav { width: 36px; height: 36px; }
  .pdp-gal-nav.prev { left: 8px; }
  .pdp-gal-nav.next { right: 8px; }
}
.pdp-dots { position: absolute; bottom: 10px; left: 50%; transform: translateX(-50%); display: flex; gap: 6px; z-index: 2; }
.pdp-dots button { width: 7px; height: 7px; border-radius: 50%; border: none; background: rgba(255,255,255,.55); cursor: pointer; padding: 0; }
.pdp-dots button.on { background: #fff; width: 20px; border-radius: var(--p-r-full); }
.pdp-thumbs { display: flex; gap: 8px; padding: 10px; overflow-x: auto; scrollbar-width: none; }
.pdp-thumbs::-webkit-scrollbar { display: none; }
.pdp-thumbs button { flex: 0 0 auto; width: 56px; height: 56px; border-radius: var(--p-r-2); overflow: hidden; border: 2px solid transparent; padding: 0; cursor: pointer; background: none; }
.pdp-thumbs button.on { border-color: var(--p-brand); }
.pdp-thumbs img { width: 100%; height: 100%; object-fit: cover; }

/* Variant options */
.vopts { display: flex; flex-wrap: wrap; gap: 8px; }
.vopt { padding: 8px 14px; border-radius: var(--p-r-2); border: 1.5px solid var(--p-border-strong); background: #fff; font-size: 14px; font-weight: 600; cursor: pointer; color: var(--p-text); transition: all .12s; }
.vopt:hover:not(:disabled) { border-color: var(--p-brand); }
.vopt.on { border-color: var(--p-brand); background: var(--p-brand-subdued); color: var(--p-brand-text); }
.vopt.oos, .vopt:disabled { opacity: .35; text-decoration: line-through; cursor: not-allowed; }

/* Modal (size chart etc.) */
.modal-overlay { position: fixed; inset: 0; z-index: 70; background: rgba(0,0,0,.5); display: flex; align-items: center; justify-content: center; padding: 20px; }
.modal-box { background: var(--p-bg-surface); border-radius: var(--p-r-3); padding: 20px; max-width: 460px; width: 100%; max-height: 80vh; overflow-y: auto; box-shadow: var(--p-shadow-pop); }

/* Search filter bar + pagination */
.filter-bar { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 10px; align-items: center; }
.filter-bar .select { width: auto; min-width: 150px; flex: 0 1 auto; }
.filter-bar .input { flex: 0 1 auto; }
.pagination { display: flex; align-items: center; justify-content: center; gap: 16px; margin: 24px 0; }
.pagination .btn { display: inline-flex; align-items: center; gap: 4px; }

.tag-list { display: flex; flex-wrap: wrap; gap: 7px; }
.tag-chip { font-size: 12.5px; font-weight: 500; padding: 5px 11px; border-radius: var(--p-r-full); background: var(--p-bg-subdued); color: var(--p-text-subdued); border: 1px solid var(--p-border); }
.tag-chip:hover { background: var(--p-brand-subdued); color: var(--p-brand-text); border-color: var(--p-brand); }
.trust-row { display: flex; justify-content: space-around; gap: 8px; text-align: center; padding: 4px 0; }
.trust-row .t { display: flex; flex-direction: column; align-items: center; gap: 5px; font-size: 11px; color: var(--p-text-subdued); max-width: 90px; }
.trust-row .t svg { width: 22px; height: 22px; color: var(--p-text-subdued); }

/* Havale/EFT bank card */
.bank-card { border: 1px solid var(--p-border); border-radius: var(--p-r-3); padding: 14px; background: var(--p-bg-surface); }
.bank-card-top { display: flex; align-items: center; gap: 12px; margin-bottom: 10px; }
.bank-card-meta { display: flex; flex-direction: column; gap: 4px; min-width: 0; margin-left: auto; align-items: flex-end; }
.bank-card-name { font-size: 13px; font-weight: 700; color: var(--p-text); }
.pay-bank-h { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.pay-bank-secure {
  display: inline-flex; align-items: center; gap: 4px;
  font-size: 11px; font-weight: 700; color: var(--p-success);
  background: var(--p-success-bg); border-radius: var(--p-r-full); padding: 4px 9px;
}
.pay-bank-secure svg { width: 12px; height: 12px; }
.pay-amount-row {
  display: flex; align-items: center; justify-content: space-between;
  margin-top: 14px; padding-top: 12px; border-top: 1px dashed var(--p-border);
  font-size: 14px; font-weight: 600;
}
.pay-amount-row strong { font-size: 20px; font-weight: 700; color: var(--p-text); font-variant-numeric: tabular-nums; }

/* Banka welcome overlay */
html.pay-welcome-open { overflow: hidden; }
.pay-welcome {
  position: fixed; inset: 0; z-index: 2000;
  background: #fff; display: flex; align-items: center; justify-content: center;
  padding: 24px 20px; transition: opacity .5s ease;
}
.pay-welcome.out { opacity: 0; pointer-events: none; }
.pay-welcome-inner { width: 100%; max-width: 420px; text-align: center; }
.pay-welcome-bank { margin-bottom: 18px; }
.pay-welcome-logo { height: 36px; width: auto; margin: 0 auto 12px; object-fit: contain; }
.pay-welcome-badge {
  display: inline-flex; align-items: center; gap: 5px;
  height: 26px; padding: 0 12px; border-radius: var(--p-r-full);
  background: var(--p-success-bg); border: 1px solid var(--p-success-border);
  font-size: 11.5px; font-weight: 700; color: var(--p-success);
}
.pay-welcome-badge svg { width: 13px; height: 13px; }
.pay-welcome-title {
  margin: 0 0 8px; font-size: 18px; font-weight: 700; letter-spacing: -.02em; color: #1c1917;
}
.pay-welcome-desc {
  margin: 0 0 22px; font-size: 13px; line-height: 1.55; color: #78716c;
}
.pay-welcome-progress { margin-bottom: 20px; }
.pay-welcome-bar {
  height: 4px; border-radius: var(--p-r-xs); background: #ececec; overflow: hidden; margin-bottom: 12px;
}
.pay-welcome-bar > span {
  display: block; height: 100%; width: 0;
  background: linear-gradient(90deg, #f27a1a, #e04e16);
  border-radius: var(--p-r-xs); transition: width .3s linear;
}
.pay-welcome-wait {
  display: flex; align-items: center; justify-content: center; gap: 8px;
  font-size: 13px; color: #78716c; margin-bottom: 10px;
}
.pay-welcome-spin {
  width: 18px; height: 18px; border-radius: 50%;
  border: 2.5px solid #ececec; border-top-color: #f27a1a;
  animation: payWelcomeSpin .8s linear infinite;
}
@keyframes payWelcomeSpin { to { transform: rotate(360deg); } }
.pay-welcome-timer {
  font-size: 28px; font-weight: 700; color: #f27a1a;
  font-variant-numeric: tabular-nums; letter-spacing: -.02em;
}
.pay-welcome-trust {
  display: flex; flex-wrap: wrap; justify-content: center; gap: 14px;
  padding-top: 16px; border-top: 1px solid rgba(0,0,0,.06);
  font-size: 11px; font-weight: 600; color: #a8a29e;
}
.pay-welcome-trust span { display: inline-flex; align-items: center; gap: 4px; }
.pay-welcome-trust svg { width: 12px; height: 12px; color: var(--p-brand); }

/* Ödeme sayfası sosyal FOMO — storefront FOMO / --p-* dili */
.pay-social { margin: 14px 14px 8px; display: flex; flex-direction: column; gap: 10px; }
.pay-live {
  display: flex; align-items: center; gap: 8px;
  padding: 11px 14px; border-radius: var(--p-r-card);
  background: var(--p-brand-subdued); border: 1px solid #f5d0a8;
  font-size: 13px; font-weight: 600; color: var(--p-brand-text);
}
.pay-live .fomo-dot { background: var(--p-brand); box-shadow: 0 0 0 0 rgba(242, 122, 26, .35); }
.pay-activity {
  background: var(--p-bg-surface); border: 1px solid var(--p-border);
  border-radius: var(--p-r-4); overflow: hidden;
}
.pay-activity-h {
  display: flex; align-items: center; gap: 8px;
  padding: 12px 14px; font-size: 13px; font-weight: 700;
  border-bottom: 1px solid var(--p-border); color: var(--p-text);
}
.pay-activity-h .fomo-dot { background: var(--p-brand); }
.pay-activity-list { list-style: none; margin: 0; padding: 0; position: relative; height: 48px; overflow: hidden; }
.pay-activity-item {
  position: absolute; inset: 0; display: flex; align-items: center; gap: 8px;
  padding: 0 14px; opacity: 0; transform: translateY(6px);
  transition: opacity .35s ease, transform .35s ease;
  font-size: 12.5px; white-space: nowrap; overflow: hidden;
}
.pay-activity-item.on { opacity: 1; transform: translateY(0); }
.pay-activity-who { min-width: 0; overflow: hidden; text-overflow: ellipsis; }
.pay-activity-act { color: var(--p-text-subdued); flex-shrink: 0; }
.pay-activity-ago { margin-left: auto; color: var(--p-text-disabled); font-size: 11.5px; flex-shrink: 0; }
.pay-fomo-toast {
  position: fixed; left: 50%; bottom: calc(16px + env(safe-area-inset-bottom, 0px));
  transform: translateX(-50%) translateY(120%); z-index: 1300;
  display: flex; align-items: center; gap: 10px;
  max-width: min(420px, calc(100vw - 24px));
  padding: 12px 16px; border-radius: var(--p-r-4);
  background: var(--p-bg-surface); border: 1px solid var(--p-border);
  box-shadow: var(--p-shadow-pop); font-size: 13px; font-weight: 600;
  opacity: 0; transition: transform .35s cubic-bezier(.22,1,.36,1), opacity .35s;
}
.pay-fomo-toast.on { transform: translateX(-50%) translateY(0); opacity: 1; }
.pay-fomo-toast .fomo-dot { background: var(--p-brand); }
@media (max-width: 640px) {
  .pay-fomo-toast {
    left: 12px; right: 12px; max-width: none; width: auto;
    bottom: calc(var(--nav-h) + 12px + env(safe-area-inset-bottom, 0px));
    transform: translateX(0) translateY(120%);
  }
  .pay-fomo-toast.on { transform: translateX(0) translateY(0); }
  body.pay-page .pay-fomo-toast {
    bottom: calc(108px + env(safe-area-inset-bottom, 0px));
  }
  .pay-welcome-title { font-size: 17px; }
  .pay-welcome-timer { font-size: 26px; }
}
.bank-logo { height: 40px; display: flex; align-items: center; }
.bank-logo img { max-height: 38px; max-width: 150px; object-fit: contain; }
.bank-row { display: flex; justify-content: space-between; align-items: baseline; padding: 4px 0; gap: 10px; }

/* Trust badges */
.trust-badges { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; }
@media (max-width: 480px) { .trust-badges { grid-template-columns: repeat(2, 1fr); } }
.tb-item { text-align: center; display: flex; flex-direction: column; align-items: center; gap: 5px; padding: 6px 2px; }
.tb-icon { height: 40px; display: flex; align-items: center; justify-content: center; }
.tb-icon img { height: 36px; width: auto; max-width: 60px; object-fit: contain; }
.tb-name { font-size: 12px; font-weight: 600; }
.tb-desc { font-size: 10.5px; color: var(--p-text-subdued); line-height: 1.3; }

/* Star rating input */
.star-input { display: inline-flex; gap: 2px; }
.star-btn { background: none; border: none; font-size: 30px; line-height: 1; cursor: pointer; color: var(--p-border-strong); padding: 0 1px; transition: color .1s, transform .1s; }
.star-btn:active { transform: scale(1.15); }
.star-btn.on { color: #ca8a04; }
.pcard-add.adding { opacity: .6; pointer-events: none; }

/* ---------- Footer ---------- */
.site-footer {
  background: var(--p-footer-bg);
  color: var(--p-footer-text);
  margin-top: 40px;
  border-top: 1px solid var(--p-border);
  padding-bottom: calc(var(--nav-h) + env(safe-area-inset-bottom));
}
.ft-main { padding-top: 28px; padding-bottom: 22px; }

/* Üst info şeridi — sade çizgisel bar, örnek SVG ikonlar */
.ft-infobar {
  background: #fff;
  border-bottom: 1px solid var(--p-border);
  padding: 0;
}
.ft-infobar .container { padding-top: 0; padding-bottom: 0; }
.ft-infobar-track {
  display: flex;
  gap: 0;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}
.ft-infobar-track::-webkit-scrollbar { display: none; }
.ft-ibox {
  flex: 0 0 auto;
  scroll-snap-align: start;
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 160px;
  padding: 14px 16px;
  text-decoration: none;
  color: var(--p-text);
  background: transparent;
  border-right: 1px solid var(--p-border);
  border-radius: 0;
  box-sizing: border-box;
  transition: background .12s;
}
.ft-ibox:last-child { border-right: 0; }
.ft-ibox:hover { background: #fafafa; }
.ft-ibox-ic {
  flex: 0 0 auto;
  width: 36px;
  height: 36px;
  display: grid;
  place-items: center;
  line-height: 0;
}
.ft-ibox-ic svg {
  width: 36px;
  height: 36px;
  display: block;
}
.ft-ibox-txt {
  display: flex;
  flex-direction: column;
  gap: 0;
  line-height: 1.15;
  min-width: 0;
}
.ft-ibox-txt strong {
  font-size: 13.5px;
  font-weight: 700;
  color: #3f2a1d;
  line-height: 1.25;
}
.ft-ibox-txt span {
  margin-top: -1px;
  font-size: 12px;
  font-weight: 500;
  color: #7a6a5c;
}

@media (min-width: 1100px) {
  .ft-infobar-track {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    overflow: visible;
  }
  .ft-ibox { min-width: 0; width: auto; padding: 16px 12px; }
}

/* 5 kolon menü */
.ft-menus {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 24px 20px;
  align-items: start;
}
.ft-h {
  margin: 0 0 12px;
  font-size: 14px;
  font-weight: 700;
  color: var(--p-text);
  letter-spacing: .01em;
}
.ft-col ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.ft-col ul li { margin: 0 0 7px; }
.ft-col ul li a {
  font-size: 13px;
  color: var(--p-footer-text);
  text-decoration: none;
  line-height: 1.4;
  transition: color .12s;
}
.ft-col ul li a:hover { color: var(--p-brand-text); }
.ft-ssl {
  display: inline-block;
  margin-top: 14px;
  line-height: 0;
}
.ft-ssl img {
  display: block;
  max-width: 160px;
  width: 100%;
  height: auto;
  border-radius: 4px;
}
.ft-ssl-wrap {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  margin-top: 14px;
}
.ft-ssl-wrap .ft-ssl { margin-top: 0; }
.ft-eyebrand {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 6px 10px;
  background: #111;
  border-radius: 4px;
  line-height: 0;
}
.ft-eyebrand img {
  display: block;
  max-height: 28px;
  width: auto;
  max-width: 120px;
  object-fit: contain;
}

/* İletişim satırı — 3 eşit kolon, butonlu */
.ft-contact {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px 32px;
  align-items: start;
  justify-items: center;
  margin-top: 28px;
  padding: 22px 0 8px;
  border-top: 1px solid var(--p-border);
}
.ft-contact .ft-h {
  margin: 0 0 10px;
  font-size: 13px;
  font-weight: 700;
  text-align: center;
  color: var(--p-text);
}
.ft-contact-col {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  width: 100%;
  max-width: 260px;
}
.ft-etbis-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: 4px;
  padding: 0;
  text-decoration: none;
  color: var(--p-footer-muted);
  font-size: 12px;
  font-weight: 500;
}
.ft-etbis-link img {
  display: block;
  width: 36px;
  height: auto;
}
.ft-etbis-link:hover { color: var(--p-brand-text); }
.ft-btn {
  width: 100%;
  min-height: 42px;
  justify-content: center;
  font-size: 13px;
  gap: 8px;
  border-radius: 8px;
}
.ft-btn svg { width: 16px; height: 16px; }
.ft-btn-wa {
  background: #16a34a !important;
  border-color: #16a34a !important;
  color: #fff !important;
}
.ft-btn-wa:hover {
  background: #15803d !important;
  border-color: #15803d !important;
  color: #fff !important;
}
.ft-wa-note {
  margin: 0 0 10px;
  font-size: 12.5px;
  line-height: 1.45;
  color: var(--p-text-subdued);
}
.ft-hours {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 12px;
  color: var(--p-footer-muted);
}
.ft-hours svg { width: 13px; height: 13px; }
/* Kargo — ortalı, kutusuz */
.ft-cargo {
  margin-top: 20px;
  padding-top: 16px;
  border-top: 1px solid var(--p-border);
  text-align: center;
}
.ft-cargo-h {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  font-size: 11.5px;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
  color: var(--p-footer-muted);
  margin-bottom: 12px;
}
.ft-cargo-h svg { width: 14px; height: 14px; }
.ft-cargo-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 10px 22px;
}
.ft-cargo-item {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 32px;
  padding: 0;
  border: 0;
  background: transparent;
}
.ft-cargo-item img {
  max-height: 26px;
  width: auto;
  max-width: 88px;
  object-fit: contain;
  filter: grayscale(1);
  opacity: .7;
  transition: opacity .15s, filter .15s;
}
.ft-cargo-item:hover img { filter: none; opacity: 1; }

/* Kabul edilen kartlar */
.ft-paycards {
  margin-top: 18px;
  padding-top: 16px;
  border-top: 1px solid var(--p-border);
  text-align: center;
}
.ft-paycards-h {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  font-size: 11.5px;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
  color: var(--p-footer-muted);
  margin-bottom: 12px;
}
.ft-paycards-h svg { width: 14px; height: 14px; }
.ft-paycards-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 10px;
}
.ft-paycard {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 40px;
  padding: 6px 10px;
  border: 1px solid var(--p-border);
  border-radius: 10px;
  background: #fff;
  box-sizing: border-box;
}
.ft-paycard img {
  max-height: 24px;
  width: auto;
  max-width: 72px;
  object-fit: contain;
  display: block;
}
@media (max-width: 640px) {
  .ft-paycard { height: 36px; padding: 5px 8px; }
  .ft-paycard img { max-height: 20px; max-width: 64px; }
}

/* Doğrulama rozetleri — kutusuz */
.ft-verify {
  margin-top: 20px;
  padding: 18px 0 4px;
  border-top: 1px solid var(--p-border);
  text-align: center;
}
.ft-sec-block {
  max-width: 640px;
  margin: 0 auto 16px;
  border: 1px solid var(--p-border);
  border-radius: 10px;
  overflow: hidden;
  background: #fff;
  text-align: left;
}
.ft-sec-block-h {
  padding: 12px 16px;
  font-size: 13px;
  font-weight: 700;
  color: var(--p-text);
  border-bottom: 1px solid var(--p-border);
}
.ft-sec-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1px;
  background: var(--p-border);
}
.ft-sec-item {
  display: block;
  background: #fff;
  padding: 16px 12px;
  text-align: center;
  text-decoration: none;
  color: inherit;
  transition: background .12s ease;
}
a.ft-sec-item:hover { background: #fafafa; }
.ft-si-icon {
  width: 36px;
  height: 36px;
  margin: 0 auto 8px;
  border-radius: 50%;
  background: #f5f5f5;
  display: flex;
  align-items: center;
  justify-content: center;
}
.ft-si-icon img {
  width: 24px;
  height: 24px;
  object-fit: contain;
}
.ft-si-name {
  font-size: 11.5px;
  font-weight: 700;
  color: var(--p-text);
  margin-bottom: 2px;
}
.ft-si-desc {
  font-size: 10.5px;
  color: var(--p-footer-muted);
  line-height: 1.3;
}
.ft-verify-txt {
  margin: 12px auto 0;
  max-width: 44em;
  font-size: 12.5px;
  line-height: 1.45;
  color: var(--p-footer-text);
  font-weight: 600;
}
.ft-verify-txt strong { color: var(--p-text); font-weight: 700; }

/* Google Trusted Store — tetikleyici + modal */
.gtrust-trigger,
.ft-gtrust {
  display: flex;
  align-items: center;
  gap: 12px;
  width: 100%;
  max-width: 520px;
  margin: 0 auto 18px;
  padding: 12px 14px;
  text-align: left;
  cursor: pointer;
  color: inherit;
  font: inherit;
  background: #fff;
  border: 1px solid #dadce0;
  border-radius: 8px;
  transition: border-color .15s ease, background .15s ease;
}
.gtrust-trigger:hover,
.ft-gtrust:hover { border-color: #bdc1c6; background: #f8f9fa; }
.gtrust-trigger:focus-visible,
.ft-gtrust:focus-visible {
  outline: 2px solid #1a73e8;
  outline-offset: 2px;
}
.gtrust-trigger-ico,
.ft-gtrust-ico {
  display: inline-flex;
  flex-shrink: 0;
  width: 40px;
  height: 40px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: #fff;
  border: 1px solid #e8eaed;
}
.gtrust-trigger-body,
.ft-gtrust-body {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
  flex: 1;
}
.gtrust-trigger-title,
.ft-gtrust-title {
  font-size: 14px;
  font-weight: 600;
  color: #202124;
  line-height: 1.25;
  letter-spacing: .01em;
}
.gtrust-trigger-stars {
  display: inline-flex;
  align-items: center;
  gap: 2px;
  margin: 1px 0 2px;
  line-height: 1;
}
.gtrust-star {
  color: #fbbc04;
  font-size: 13px;
  line-height: 1;
}
.gtrust-score {
  margin-left: 5px;
  font-size: 12px;
  font-weight: 600;
  color: #202124;
}
.gtrust-trigger-sub,
.ft-gtrust-sub {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 5px;
  font-size: 12px;
  color: #5f6368;
}
.gtrust-trigger-ok,
.ft-gtrust-ok { color: #188038; font-weight: 700; }
.gtrust-trigger-dot,
.ft-gtrust-dot { color: #9aa0a6; }
.gtrust-trigger-chev,
.ft-gtrust-chev {
  color: #9aa0a6;
  display: inline-flex;
  flex-shrink: 0;
}

/* PDP — buybox altında, WhatsApp üstünde */
.pdp-gtrust {
  max-width: none;
  margin: 12px 0 0;
  padding: 13px 14px;
  border-radius: 10px;
  border-color: #dadce0;
  background: linear-gradient(180deg, #fff 0%, #fafbfe 100%);
}
.pdp-gtrust .gtrust-trigger-ico {
  width: 42px;
  height: 42px;
  box-shadow: 0 1px 2px rgba(60, 64, 67, .08);
}
.pdp-gtrust .gtrust-trigger-title {
  font-size: 14.5px;
  font-weight: 600;
}
.pdp-wa-ask { margin-top: 10px; }

.ft-vlogo.is-gtrust {
  cursor: pointer;
  border: 0;
  background: transparent;
  padding: 0;
  font: inherit;
}
.ft-verify-solo { border-top: 1px solid var(--p-border); padding-top: 18px; margin-top: 20px; }

.sp-gmodal[hidden] { display: none !important; }
.sp-gmodal {
  position: fixed;
  inset: 0;
  z-index: 12000;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: max(12px, env(safe-area-inset-top)) max(12px, env(safe-area-inset-right)) max(12px, env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-left));
}
.sp-gmodal-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(15, 23, 42, .45);
}
.sp-gmodal-box {
  position: relative;
  z-index: 1;
  width: min(520px, 100%);
  max-height: min(86vh, 720px);
  max-height: min(86dvh, 720px);
  display: flex;
  flex-direction: column;
  background: #fff;
  border: 1px solid #e8eaed;
  border-radius: 14px;
  overflow: hidden;
}
.sp-gmodal-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  padding: 14px 16px;
  border-bottom: 1px solid #f1f3f4;
  flex-shrink: 0;
}
.sp-gmodal-brand {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
}
.sp-gmodal-title {
  font-size: 15px;
  font-weight: 700;
  color: #111;
}
.sp-gmodal-verified {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  margin-top: 4px;
  padding: 2px 8px;
  border-radius: 999px;
  background: #E6F4EA;
  color: #137333;
  font-size: 10px;
  font-weight: 700;
}
.sp-gmodal-x {
  width: 36px;
  height: 36px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 0;
  border-radius: 8px;
  background: #f4f5f7;
  color: #5f6368;
  cursor: pointer;
  flex-shrink: 0;
  -webkit-tap-highlight-color: transparent;
}
.sp-gmodal-x:hover { background: #e8eaed; color: #202124; }
.sp-gmodal-scroll {
  padding: 16px 18px;
  overflow: auto;
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
  flex: 1 1 auto;
  min-height: 0;
}
.sp-gmodal-loading { text-align: center; padding: 18px 0 8px; }
.sp-gmodal-spinner {
  width: 36px;
  height: 36px;
  margin: 0 auto 16px;
  border: 3px solid #e8eaed;
  border-top-color: #4285F4;
  border-radius: 50%;
  animation: sp-gspin .8s linear infinite;
}
@keyframes sp-gspin { to { transform: rotate(360deg); } }
.sp-gmodal-status {
  font-size: 13px;
  color: #5f6368;
  line-height: 1.85;
  text-align: left;
  max-width: 360px;
  margin: 0 auto;
}
.sp-gmodal-line {
  opacity: 0;
  transform: translateY(4px);
  transition: opacity .4s ease, transform .4s ease;
}
.sp-gmodal-line.is-on { opacity: 1; transform: none; }
.sp-gmodal-line .ok { color: #34A853; margin-right: 6px; font-weight: 700; }
.sp-gmodal-summary {
  margin: 0 0 14px;
  font-size: 14px;
  line-height: 1.7;
  color: #202124;
}
.sp-gmodal-summary strong { color: #137333; font-weight: 700; }
.sp-gmodal-detail {
  font-size: 13px;
  color: #5f6368;
  line-height: 1.75;
  margin-bottom: 14px;
}
.sp-gmodal-detail p { margin: 0 0 8px; }
.sp-gmodal-detail p:last-child { margin-bottom: 0; }
.sp-gmodal-detail strong { color: #202124; }
.sp-gmodal-sources {
  font-size: 11px;
  color: #9aa0a6;
  padding-top: 12px;
  border-top: 1px solid #f1f3f4;
  margin-bottom: 16px;
  line-height: 1.7;
}
.sp-gmodal-sources span {
  display: inline-flex;
  margin: 2px;
  padding: 2px 8px;
  border-radius: 999px;
  background: #f1f3f4;
  color: #5f6368;
  font-size: 10px;
}
.sp-gqs-badge {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 8px 14px;
  background: #f8f9fa;
  border: 1px solid #e8eaed;
  border-radius: 8px;
  margin-bottom: 14px;
}
.sp-gqs-badge span { font-size: 13px; font-weight: 700; color: #202124; flex: 1; }
.sp-gqs-store { margin-bottom: 14px; }
.sp-gqs-store strong { display: block; font-size: 14px; color: #202124; }
.sp-gqs-store span { font-size: 12px; color: #5f6368; }
.sp-gqs-rating {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 14px 16px;
  background: #f8f9fa;
  border: 1px solid #e8eaed;
  border-radius: 8px;
  margin-bottom: 14px;
}
.sp-gqs-score { font-size: 32px; font-weight: 800; color: #202124; line-height: 1; }
.sp-gqs-stars { color: #FBBC05; font-size: 16px; letter-spacing: 1px; }
.sp-gqs-reviews { font-size: 11px; color: #5f6368; margin-top: 2px; }
.sp-gqs-scorecard {
  border: 1px solid #e8eaed;
  border-radius: 10px;
  overflow: hidden;
  margin-bottom: 14px;
}
.sp-gqs-sc-title {
  padding: 10px 16px;
  font-size: 11px;
  font-weight: 700;
  color: #5f6368;
  text-transform: uppercase;
  letter-spacing: .05em;
  background: #f8f9fa;
  border-bottom: 1px solid #e8eaed;
}
.sp-gqs-metric {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 16px;
  border-bottom: 1px solid #f1f3f4;
}
.sp-gqs-metric:last-child { border-bottom: 0; }
.sp-gqs-metric-txt { min-width: 0; }
.sp-gqs-metric-txt strong { display: block; font-size: 13px; font-weight: 600; color: #202124; }
.sp-gqs-metric-txt small { display: block; margin-top: 1px; font-size: 11px; color: #5f6368; }
.sp-gqs-tag {
  font-size: 10px;
  font-weight: 700;
  padding: 3px 10px;
  border-radius: 999px;
  white-space: nowrap;
}
.sp-gqs-tag.is-exc { background: #E6F4EA; color: #137333; }
.sp-gqs-tag.is-great { background: #E8F0FE; color: #1967D2; }
.sp-gqs-trust { margin-bottom: 14px; }
.sp-gqs-trust-title {
  font-size: 11px;
  font-weight: 700;
  color: #5f6368;
  text-transform: uppercase;
  letter-spacing: .05em;
  margin-bottom: 8px;
}
.sp-gqs-trust-items { display: flex; flex-wrap: wrap; gap: 6px; }
.sp-gqs-trust-item {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 11px;
  color: #202124;
  background: #f8f9fa;
  padding: 4px 10px;
  border-radius: 6px;
}
.sp-gqs-trust-item::before {
  content: '';
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #34A853;
  flex-shrink: 0;
}
.sp-gqs-footer {
  margin: 0;
  font-size: 11px;
  color: #9aa0a6;
  line-height: 1.5;
  padding-top: 12px;
  border-top: 1px solid #f1f3f4;
}
.sp-gmodal-foot {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 16px;
  padding-bottom: max(12px, env(safe-area-inset-bottom));
  border-top: 1px solid #f1f3f4;
  background: #fafbfc;
  flex-shrink: 0;
}
.sp-gmodal-foot > span { font-size: 11px; color: #bbb; }
.sp-gmodal-close { min-height: 40px; font-size: 13px; padding: 0 14px; }
body.gtrust-open { overflow: hidden; touch-action: none; }

@media (max-width: 1100px) {
  .ft-menus { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 900px) {
  .ft-contact { grid-template-columns: 1fr 1fr; }
  .ft-contact-col:last-child { grid-column: 1 / -1; }
}
@media (max-width: 760px) {
  .ft-menus { grid-template-columns: 1fr 1fr; gap: 20px 16px; }
  .ft-ibox { min-width: min(168px, 70vw); padding: 12px 14px; }
}
@media (max-width: 520px) {
  .site-footer { margin-top: 24px; }
  .ft-main { padding-top: 20px; }
  .ft-menus { grid-template-columns: 1fr; gap: 18px; }
  .ft-contact { grid-template-columns: 1fr; gap: 20px; }
  .ft-contact-col { max-width: none; }
  .ft-contact-col:last-child { grid-column: auto; }
  .ft-gtrust,
  .gtrust-trigger:not(.pdp-gtrust) { padding: 11px 12px; gap: 10px; }
  .ft-gtrust-title,
  .gtrust-trigger-title { font-size: 13.5px; }
  .ft-gtrust-sub,
  .gtrust-trigger-sub { font-size: 11.5px; }
  .pdp-gtrust { margin-top: 10px; padding: 12px; }
  .ft-cargo-row {
    flex-wrap: nowrap;
    overflow-x: auto;
    justify-content: flex-start;
    -webkit-overflow-scrolling: touch;
    padding-bottom: 4px;
  }
  .ft-cargo-item { flex: 0 0 auto; }
  .ft-sec-grid { grid-template-columns: 1fr 1fr; }
  .ft-bottom { flex-direction: column; align-items: center; text-align: center; }
  .ft-legal-mini { justify-content: center; }
  .sp-gmodal { align-items: flex-end; padding: 0; }
  .sp-gmodal-box {
    width: 100%;
    max-height: min(90dvh, 100%);
    border-radius: 14px 14px 0 0;
    border-left: 0;
    border-right: 0;
    border-bottom: 0;
  }
  .sp-gmodal-scroll { padding: 14px 16px; }
  .sp-gqs-metric { flex-wrap: wrap; }
}

/* Güvenlik — küçük, ortalı */
.ft-security {
  margin-top: 20px;
  padding: 16px 0 0;
  border-top: 1px solid var(--p-border);
  text-align: center;
}
.ft-sec-h {
  margin: 0 0 8px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .05em;
  text-transform: uppercase;
  color: var(--p-footer-muted);
}
.ft-sec-body {
  max-width: 640px;
  margin: 0 auto;
  font-size: 11.5px;
  line-height: 1.65;
  color: var(--p-footer-muted);
}
.ft-sec-body p { margin: 0 0 8px; }
.ft-sec-body strong { color: var(--p-footer-text); font-weight: 600; }
.ft-sec-body a { color: var(--p-brand-text); text-decoration: underline; text-underline-offset: 2px; }
.ft-sec-copy {
  margin: 10px 0 4px;
  font-size: 11px;
  color: var(--p-footer-muted);
}
.ft-sec-co {
  margin: 0;
  font-size: 10.5px;
  font-weight: 600;
  letter-spacing: .03em;
  color: var(--p-footer-muted);
  text-transform: uppercase;
}

.ft-company {
  margin-top: 12px;
  font-size: 11px;
  line-height: 1.5;
  color: var(--p-footer-muted);
  text-align: center;
}
.ft-company strong { color: var(--p-footer-text); font-weight: 600; }

.ft-bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
  margin-top: 14px;
  padding-top: 12px;
  border-top: 1px solid var(--p-border);
}
.ft-copy { font-size: 11.5px; color: var(--p-footer-muted); }
.ft-legal-mini { display: flex; flex-wrap: wrap; gap: 12px; }
.ft-legal-mini a {
  font-size: 11.5px;
  color: var(--p-footer-muted);
  text-decoration: none;
}
.ft-legal-mini a:hover { color: var(--p-brand-text); }

/* ---------- Yasal sözleşme sayfaları ---------- */
/* Yasal merkez — kenar menülü (sidebar) düzen */
.legal-layout { display: grid; grid-template-columns: 268px minmax(0,1fr); gap: 20px; align-items: start; margin-top: 8px; }
.legal-sidebar { position: sticky; top: 84px; background: var(--p-bg-surface); border: 1px solid var(--p-border); border-radius: var(--p-r-3); overflow: hidden; }
.legal-sidebar-head { display: flex; align-items: center; gap: 7px; font-size: 13px; font-weight: 700; color: var(--p-text); padding: 12px 14px; background: var(--p-bg-subdued); border-bottom: 1px solid var(--p-border); }
.legal-sidebar-head svg { width: 1.05em; height: 1.05em; color: var(--p-brand); }
.legal-nav { display: flex; flex-direction: column; padding: 6px; }
.legal-nav-item { display: flex; align-items: center; gap: 9px; padding: 9px 10px; border-radius: var(--p-r-2); font-size: 13px; color: var(--p-text); text-decoration: none; transition: background .15s, color .15s; }
.legal-nav-item .lni-icon { display: inline-grid; place-items: center; color: var(--p-text-subdued); }
.legal-nav-item .lni-icon svg { width: 16px; height: 16px; }
.legal-nav-item:hover { background: var(--p-bg-subdued); }
.legal-nav-item.active { background: var(--p-brand-subdued); color: var(--p-brand-text); font-weight: 700; }
.legal-nav-item.active .lni-icon { color: var(--p-brand); }
.legal-content { min-width: 0; }
.legal-title { font-size: 22px; margin-bottom: 6px; }
.legal-updated { display: flex; align-items: center; gap: 6px; }
.legal-updated svg { width: 14px; height: 14px; }
.legal-body h2 { font-size: 16px; margin: 20px 0 8px; color: var(--p-text); }
.legal-body h3 { font-size: 15px; margin: 16px 0 6px; color: var(--p-text); }
.legal-body p { margin: 0 0 12px; line-height: 1.75; color: var(--p-text-subdued); font-size: 14px; }
.legal-body ul, .legal-body ol { margin: 0 0 12px; padding-left: 22px; color: var(--p-text-subdued); font-size: 14px; line-height: 1.7; }
.legal-body a { color: var(--p-brand-text); text-decoration: underline; }
@media (max-width: 860px) {
  .legal-layout { grid-template-columns: 1fr; }
  .legal-sidebar { position: static; }
  .legal-nav { flex-direction: row; overflow-x: auto; scrollbar-width: none; padding: 8px; }
  .legal-nav::-webkit-scrollbar { display: none; }
  .legal-nav-item { white-space: nowrap; flex: 0 0 auto; }
  .legal-nav-item .lni-icon { display: none; }
}

/* ============================================================
   FOMO / Aciliyet (SİMÜLE sosyal kanıt & kıtlık)
   ============================================================ */
.fomo-box {
  margin-top: 12px;
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 0;
  background: transparent;
  border: 0;
  border-radius: 0;
  box-sizing: border-box;
}

/* Sosyal kanıt — n11 tarzı nötr kutu; ikonlar renkli */
.fomo-pills {
  display: flex;
  gap: 8px;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  padding: 2px 1px 4px;
  width: 100%;
}
.fomo-pills::-webkit-scrollbar { display: none; }
.fomo-pill {
  flex: 0 0 auto;
  scroll-snap-align: start;
  display: flex;
  align-items: center;
  gap: 9px;
  width: auto;
  min-width: 168px;
  max-width: 220px;
  min-height: 48px;
  padding: 8px 12px;
  border-radius: var(--p-r-1);
  border: 1px solid var(--p-border);
  background: #fff;
  color: var(--p-text);
  box-sizing: border-box;
  overflow: hidden;
}
.fomo-pill-ic {
  position: relative;
  flex: 0 0 auto;
  display: grid;
  place-items: center;
  width: 30px;
  height: 30px;
  border-radius: var(--p-r-2);
  background: var(--p-bg-subdued);
  color: var(--p-text-subdued);
}
.fomo-pill-ic svg { width: 15px; height: 15px; display: block; }
.fomo-pill-ic .fomo-dot { display: none; }
.fomo-pill-body {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 2px;
  min-width: 0;
  flex: 1 1 auto;
  overflow: hidden;
}
.fomo-pill-line {
  display: block;
  font-size: 12.5px;
  font-weight: 600;
  line-height: 1.25;
  color: var(--p-text);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.fomo-pill-line strong {
  font-weight: 800;
  color: var(--p-text);
  font-variant-numeric: tabular-nums;
}
.fomo-pill-lbl {
  display: block;
  font-size: 10.5px;
  font-weight: 600;
  line-height: 1.25;
  color: var(--p-text-subdued);
  letter-spacing: -.01em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 100%;
}
.fomo-pill-num {
  display: block;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: -.02em;
  color: var(--p-text);
  font-variant-numeric: tabular-nums;
  font-feature-settings: "tnum";
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 100%;
}
.fomo-pill-live,
.fomo-pill-buy,
.fomo-pill-cart,
.fomo-pill-sold {
  background: #fff;
  color: var(--p-text);
  border-color: var(--p-border);
}
.fomo-pill-buy .fomo-pill-ic {
  background: var(--p-brand-subdued);
  color: var(--p-brand);
}
.fomo-pill-live .fomo-pill-ic {
  background: #eef2ff;
  color: #4f46e5;
}
.fomo-pill-cart .fomo-pill-ic {
  background: #fff7ed;
  color: #ea580c;
}
.fomo-pill-sold .fomo-pill-ic {
  background: var(--p-success-bg);
  color: var(--p-success);
}
.fomo-bnum, .fomo-vnum { display: inline; }
.fomo-dot {
  width: 6px; height: 6px; border-radius: 50%; background: var(--p-success);
  position: relative; flex-shrink: 0;
}
.fomo-dot::after { display: none; }
.fomo-bump { animation: fomoBump .35s ease; }
@keyframes fomoBump { 0% { transform: scale(1); } 40% { transform: scale(1.08); } 100% { transform: scale(1); } }
@media (prefers-reduced-motion: reduce) {
  .fomo-bump { animation: none !important; }
}
@media (min-width: 900px) {
  .fomo-pill { width: auto; min-width: 180px; max-width: 240px; }
}

/* Sahte stok tükenme çubuğu — kompakt */
.fomo-stock {
  background: #fff;
  border: 1px solid var(--p-border);
  border-radius: var(--p-r-1);
  padding: 7px 9px;
}
.fomo-stock-top {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 8px;
  margin-bottom: 6px;
}
.fomo-stock-label {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 12px;
  font-weight: 600;
  color: var(--p-text);
  letter-spacing: -.01em;
}
.fomo-stock-label svg { width: 13px; height: 13px; color: var(--p-brand); flex-shrink: 0; }
.fomo-stock-left {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 11.5px;
  font-weight: 600;
  color: var(--p-brand-text);
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}
.fomo-stock-left strong { font-weight: 700; color: var(--p-brand); }
.fomo-stock-dot { color: var(--p-text-disabled); font-weight: 500; }
.fomo-stock-bar {
  height: 5px;
  border-radius: var(--p-r-full);
  background: #eee;
  overflow: hidden;
}
.fomo-stock-bar > span {
  display: block; height: 100%; border-radius: var(--p-r-full);
  background: var(--p-brand);
  animation: fomoGrow 1.1s cubic-bezier(.22,1,.36,1);
}
@keyframes fomoGrow { from { width: 0 !important; } }
.fomo-stock-sub { display: none; }

/* PDP sol sütun: kırmızı minimal fırsat geri sayımı */
.pdp-media > .fomo-cd-bar {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 8px 12px;
  margin: 0 0 12px;
  padding: 9px 12px 9px 11px;
  color: #9b1c1c;
  text-align: left;
  background: #fff5f5;
  border: 1px solid #fecaca;
  border-left: 3px solid #dc2626;
  border-radius: var(--p-r-3);
  box-sizing: border-box;
  box-shadow: none;
}
.pdp-media > .fomo-cd-bar .fomo-cd-label {
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  gap: 8px;
  width: auto;
  flex: 1 1 auto;
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
  font-family: var(--p-font);
  font-size: 13px;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: -.015em;
  color: #b91c1c;
}
.pdp-media > .fomo-cd-bar .fomo-cd-ico {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  flex-shrink: 0;
  border-radius: 50%;
  background: #fee2e2;
  color: #dc2626;
  animation: fomoCdPulse 1.8s ease-in-out infinite;
}
.pdp-media > .fomo-cd-bar .fomo-cd-ico svg {
  width: 15px;
  height: 15px;
  color: inherit;
  transform-origin: center;
  animation: fomoCdTick 1s ease-in-out infinite;
}
@keyframes fomoCdPulse {
  0%, 100% { transform: scale(1); background: #fee2e2; }
  50% { transform: scale(1.06); background: #fecaca; }
}
@keyframes fomoCdTick {
  0%, 100% { transform: rotate(0deg); }
  50% { transform: rotate(12deg); }
}
.pdp-media > .fomo-cd-bar .fomo-cd-clock {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 4px;
  width: auto;
  flex: 0 0 auto;
  padding: 0;
  box-sizing: border-box;
  background: transparent;
}
.pdp-media > .fomo-cd-bar .fomo-cd-seg {
  display: inline-flex; flex-direction: column; align-items: center; justify-content: center;
  min-width: 36px; padding: 4px 5px 3px;
  background: #fff;
  border: 1px solid #fecaca;
  border-radius: var(--p-r-1);
  box-sizing: border-box;
}
.pdp-media > .fomo-cd-bar .fomo-cd-seg b {
  font-family: var(--p-font);
  font-size: 15px; font-weight: 700; line-height: 1;
  font-variant-numeric: tabular-nums;
  letter-spacing: .02em; color: #dc2626;
}
.pdp-media > .fomo-cd-bar .fomo-cd-seg small {
  margin-top: 2px; font-size: 9px; font-weight: 600;
  letter-spacing: .02em; color: #b91c1c; opacity: .7; line-height: 1;
}
.pdp-media > .fomo-cd-bar .fomo-cd-sep {
  font-size: 13px; font-weight: 700; line-height: 1;
  color: #f87171; padding-bottom: 10px;
}
.pdp-media > .fomo-cd-bar.fomo-ended {
  background: #fef2f2;
  border-color: #fca5a5;
  border-left-color: #991b1b;
}
.pdp-media > .fomo-cd-bar.fomo-ended .fomo-cd-label { color: #991b1b; }
.pdp-media > .fomo-cd-bar.fomo-ended .fomo-cd-ico {
  animation: none;
  background: #fecaca;
  color: #991b1b;
}
.pdp-media > .fomo-cd-bar.fomo-ended .fomo-cd-seg b { color: #991b1b; }

@media (max-width: 480px) {
  .pdp-media > .fomo-cd-bar {
    gap: 8px;
    padding: 8px 10px 8px 9px;
  }
  .pdp-media > .fomo-cd-bar .fomo-cd-label {
    font-size: 12.5px;
    gap: 7px;
  }
  .pdp-media > .fomo-cd-bar .fomo-cd-ico {
    width: 26px;
    height: 26px;
  }
  .pdp-media > .fomo-cd-bar .fomo-cd-seg {
    min-width: 32px;
    padding: 3px 4px 2px;
  }
  .pdp-media > .fomo-cd-bar .fomo-cd-seg b { font-size: 14px; }
}

.pdp-gallery {
  position: relative;
  background: var(--p-bg-subdued);
  overflow: hidden;
}

/* Eski blok geri sayım (başka yerlerde kalırsa) */
.fomo-countdown {
  background: linear-gradient(135deg, #2a2a2e, #1a1a1d); color: #fff;
  border-radius: var(--p-r-3); padding: 11px 13px; text-align: center;
}
.fomo-cd-label { display: inline-flex; align-items: center; gap: 6px; font-size: 12.5px; font-weight: 600; opacity: .9; margin-bottom: 8px; }
.fomo-cd-label svg { width: 15px; height: 15px; color: var(--p-brand); }
.fomo-cd-clock { display: flex; align-items: center; justify-content: center; gap: 6px; }
.fomo-cd-seg { display: inline-flex; flex-direction: column; align-items: center; min-width: 46px; background: rgba(255,255,255,.08); border-radius: var(--p-r-2); padding: 6px 4px; }
.fomo-cd-seg b { font-size: 22px; font-weight: 700; font-variant-numeric: tabular-nums; letter-spacing: 1px; }
.fomo-cd-seg small { font-size: 10px; opacity: .7; margin-top: 2px; letter-spacing: .5px; }
.fomo-cd-sep { font-size: 20px; font-weight: 700; opacity: .5; }

/* PDP canlı aktivite ticker — kompakt */
.fomo-ticker {
  display: flex;
  align-items: center;
  gap: 8px;
  background: #fff;
  border: 1px solid var(--p-border);
  border-radius: var(--p-r-1);
  padding: 6px 9px;
  min-height: 0;
  box-sizing: border-box;
}
.fomo-ticker-ic {
  flex: 0 0 auto;
  display: grid;
  place-items: center;
  width: 26px;
  height: 26px;
  border-radius: var(--p-r-1);
  background: #eef2ff;
  color: #4f46e5;
}
.fomo-ticker-ic svg,
.fomo-ticker > svg { width: 13px; height: 13px; display: block; flex-shrink: 0; }
.fomo-ticker > svg { color: #4f46e5; }
.fomo-ticker-track {
  position: relative;
  flex: 1;
  min-width: 0;
  height: 1.3em;
  overflow: hidden;
}
.fomo-ticker-item {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  gap: 8px;
  opacity: 0;
  transform: translateY(5px);
  transition: opacity .35s ease, transform .35s ease;
  pointer-events: none;
  font-size: 12px;
  line-height: 1.3;
  white-space: nowrap;
  overflow: hidden;
}
.fomo-ticker-item.on { opacity: 1; transform: translateY(0); }
.fomo-ticker-text {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  font-weight: 500;
  color: var(--p-text-subdued);
}
.fomo-ticker-text b {
  font-weight: 700;
  color: var(--p-text);
}
.fomo-ticker-sep {
  margin: 0 4px;
  color: var(--p-text-disabled);
  font-weight: 500;
}
.fomo-ticker-verb { font-weight: 600; }
.fomo-ticker-verb.is-ok { color: var(--p-success); }
.fomo-ticker-verb.is-warn { color: #ea580c; }
.fomo-ticker-verb.is-soft { color: #6366f1; }
.fomo-ticker-ago {
  color: var(--p-text-disabled);
  font-weight: 500;
  font-size: 11px;
  flex-shrink: 0;
  margin-left: auto;
}

/* Sepet rezervasyon bandı */
.fomo-hold {
  display: flex; align-items: center; gap: 12px; margin-top: 14px;
  background: #fff7ed; border: 1px solid #ffd8a8; border-radius: var(--p-r-3);
  padding: 12px 14px;
}
.fomo-hold-icon {
  width: 36px; height: 36px; border-radius: 50%; flex-shrink: 0;
  background: var(--p-brand-subdued); color: var(--p-brand-text); display: grid; place-items: center;
}
.fomo-hold-icon svg { width: 18px; height: 18px; }
.fomo-hold-body { flex: 1; min-width: 0; }
.fomo-hold-title { font-size: 13.5px; font-weight: 700; color: var(--p-text); }
.fomo-hold-sub { font-size: 12px; color: var(--p-text-subdued); margin-top: 2px; line-height: 1.35; }
.fomo-hold-clock { display: flex; align-items: center; gap: 4px; flex-shrink: 0; }
.fomo-hold-clock .fomo-cd-seg {
  min-width: 38px; background: #fff; border: 1px solid #ffd8a8; border-radius: var(--p-r-2); padding: 4px 2px;
  display: inline-flex; flex-direction: column; align-items: center;
}
.fomo-hold-clock .fomo-cd-seg b { font-size: 18px; font-weight: 700; color: var(--p-brand-text); font-variant-numeric: tabular-nums; }
.fomo-hold-clock .fomo-cd-seg small { font-size: 9px; color: var(--p-text-subdued); }
.fomo-hold-clock .fomo-cd-sep { font-weight: 700; color: var(--p-brand-text); }
.fomo-hold.fomo-ended { background: #fff0f0; border-color: #ffc9c9; }
.fomo-hold.fomo-ended .fomo-hold-title { color: #d92020; }

/* Üst flash fırsat şeridi */
.fomo-flash {
  background: linear-gradient(90deg, #1a1a1d, #2a2118 40%, #1a1a1d);
  color: #fff; font-size: 13px; font-weight: 600;
}
.fomo-flash-inner {
  display: flex; align-items: center; justify-content: center; gap: 14px;
  padding: 8px 12px; flex-wrap: wrap;
}
.fomo-flash-label { display: inline-flex; align-items: center; gap: 6px; }
.fomo-flash-label svg { width: 15px; height: 15px; color: #f27a1a; }
.fomo-flash-clock { font-variant-numeric: tabular-nums; letter-spacing: .5px; font-weight: 700; color: #f27a1a; }
.fomo-flash-clock b { font-weight: 700; }

/* Kart FOMO */
.pcard-ribbon.fomo-card-ribbon { background: var(--p-brand); }
.pcard-fomo-band {
  position: absolute; left: 0; right: 0; bottom: 0; z-index: 2;
  display: flex; align-items: center; gap: 6px;
  padding: 6px 10px; font-size: 11px; font-weight: 600; color: #fff;
  background: rgba(39,39,42,.88);
}
.pcard-fomo-band svg { width: 13px; height: 13px; flex-shrink: 0; opacity: .9; }
.pcard-fomo-band span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pcard-fomo-band strong { font-weight: 800; }
.pcard-fomo-row {
  display: flex; flex-wrap: wrap; gap: 4px; margin-top: 3px; min-height: 0;
}
.pcard-fomo-chip {
  display: inline-flex; align-items: center; gap: 4px;
  font-size: 10px; font-weight: 600; line-height: 1.2;
  padding: 3px 7px; border-radius: var(--p-r-full); white-space: nowrap;
  background: #f4f4f5; color: #52525b;
}
.pcard-fomo-chip svg { width: 11px; height: 11px; flex-shrink: 0; color: #71717a; }
.pcard-fomo-chip span { display: inline; }
.pcard-fomo-chip strong { font-weight: 700; color: #27272a; }
.pcard-fomo-stock strong { color: var(--p-critical); }

/* Sepet satır FOMO */
.fomo-line {
  display: flex; flex-wrap: wrap; gap: 4px 8px; margin-top: 4px;
  font-size: 11px; font-weight: 600; line-height: 1.3;
}
.fomo-line-stock,
.fomo-line-others {
  display: inline-flex; align-items: center; gap: 4px;
  padding: 3px 7px; border-radius: var(--p-r-full);
  background: #f4f4f5; color: #52525b;
}
.fomo-line-stock svg,
.fomo-line-others svg { width: 11px; height: 11px; color: #71717a; flex-shrink: 0; }
.fomo-line strong { font-weight: 700; color: #27272a; }
.fomo-line-stock strong { color: var(--p-critical); }

/* Checkout aciliyet — fomo-hold / fomo-cd-bar dilinde */
.fomo-checkout {
  margin: 10px 0 14px;
  padding: 0;
  background: var(--p-brand-subdued);
  border: 1px solid #ffd8a8;
  border-radius: var(--p-r-3);
  overflow: hidden;
  box-shadow: none;
}
.fomo-checkout-main {
  display: flex;
  align-items: center;
  gap: 10px 12px;
  padding: 11px 12px;
}
.fomo-checkout-ico {
  width: 34px;
  height: 34px;
  border-radius: 50%;
  flex-shrink: 0;
  display: grid;
  place-items: center;
  background: #fff;
  border: 1px solid #ffd8a8;
  color: var(--p-brand-text);
}
.fomo-checkout-ico svg { width: 16px; height: 16px; }
.fomo-checkout-copy { min-width: 0; flex: 1; }
.fomo-checkout-title {
  margin: 0;
  font-size: 13.5px;
  font-weight: 700;
  letter-spacing: -.01em;
  color: var(--p-text);
  line-height: 1.25;
}
.fomo-checkout-sub {
  margin: 2px 0 0;
  font-size: 12px;
  line-height: 1.35;
  color: var(--p-text-subdued);
}
.fomo-checkout-timer {
  display: flex;
  align-items: center;
  gap: 3px;
  flex-shrink: 0;
}
.fomo-checkout-timer .fomo-cd-seg {
  min-width: 36px;
  padding: 4px 3px;
  border-radius: var(--p-r-2);
  background: #fff;
  border: 1px solid #ffd8a8;
  display: inline-flex;
  flex-direction: column;
  align-items: center;
}
.fomo-checkout-timer .fomo-cd-seg b {
  font-size: 16px;
  font-weight: 700;
  line-height: 1.1;
  color: var(--p-brand-text);
  font-variant-numeric: tabular-nums;
}
.fomo-checkout-timer .fomo-cd-seg small {
  font-size: 9px;
  font-weight: 600;
  letter-spacing: .04em;
  color: var(--p-text-subdued);
  margin-top: 1px;
}
.fomo-checkout-timer .fomo-cd-sep {
  font-size: 14px;
  font-weight: 700;
  color: var(--p-brand-text);
  padding-bottom: 10px;
  line-height: 1;
}
.fomo-checkout-timer.fomo-ended .fomo-cd-seg {
  border-color: var(--p-critical-border);
  background: var(--p-critical-bg);
}
.fomo-checkout-timer.fomo-ended .fomo-cd-seg b,
.fomo-checkout-timer.fomo-ended .fomo-cd-sep { color: var(--p-critical); }
.fomo-checkout:has(.fomo-ended) {
  background: var(--p-critical-bg);
  border-color: var(--p-critical-border);
}
.fomo-checkout-live {
  display: flex;
  align-items: center;
  gap: 7px;
  margin: 0;
  padding: 7px 12px 9px;
  border-top: 1px solid rgba(242, 122, 26, .14);
  font-size: 12px;
  font-weight: 550;
  color: var(--p-text-subdued);
  line-height: 1.3;
  background: rgba(255, 255, 255, .45);
}
.fomo-checkout-live strong {
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  color: var(--p-text);
}
.fomo-checkout-live .fomo-dot {
  background: var(--p-critical);
}

@media (max-width: 767px) {
  .fomo-checkout { margin: 8px 0 12px; }
  .fomo-checkout-main {
    flex-wrap: wrap;
    padding: 10px 11px;
    gap: 8px 10px;
  }
  .fomo-checkout-ico { width: 32px; height: 32px; }
  .fomo-checkout-ico svg { width: 15px; height: 15px; }
  .fomo-checkout-title { font-size: 13px; }
  .fomo-checkout-sub { font-size: 11.5px; }
  .fomo-checkout-timer {
    margin-left: auto;
  }
  .fomo-checkout-timer .fomo-cd-seg { min-width: 34px; }
  .fomo-checkout-timer .fomo-cd-seg b { font-size: 15px; }
  .fomo-checkout-live { padding: 6px 11px 8px; font-size: 11.5px; }
}

@media (min-width: 768px) {
  .fomo-checkout-main { padding: 12px 14px; }
  .fomo-checkout-title { font-size: 14px; }
  .fomo-checkout-sub { max-width: 38em; }
  .fomo-checkout-timer .fomo-cd-seg { min-width: 40px; padding: 5px 4px; }
  .fomo-checkout-timer .fomo-cd-seg b { font-size: 18px; }
  .fomo-checkout-live { padding: 8px 14px 10px; }
}

/* FOMO modallar (sepete ekle + exit-intent) */
html.fomo-modal-open { overflow: hidden; }
.fomo-modal {
  position: fixed; inset: 0; z-index: 1400;
  display: flex; align-items: center; justify-content: center;
  padding: 20px; opacity: 0; pointer-events: none;
  transition: opacity .2s ease;
}
.fomo-modal[hidden] { display: none !important; }
.fomo-modal.on { opacity: 1; pointer-events: auto; }
.fomo-modal-backdrop {
  position: absolute; inset: 0; background: rgba(24, 24, 27, .45);
}
.fomo-modal-card {
  position: relative; width: 100%; max-width: 340px;
  background: var(--p-bg-surface);
  border: 1px solid var(--p-border);
  border-radius: var(--p-r-4);
  box-shadow: 0 12px 40px rgba(0,0,0,.12);
  padding: 24px 20px 18px;
  transform: translateY(10px);
  transition: transform .2s ease;
}
.fomo-modal.on .fomo-modal-card { transform: translateY(0); }
.fomo-modal-x {
  position: absolute; top: 10px; right: 12px; border: none; background: none;
  font-size: 22px; line-height: 1; color: var(--p-text-disabled); cursor: pointer; padding: 4px;
}
.fomo-modal-x:hover { color: var(--p-text); }
.fomo-modal-icon {
  width: 44px; height: 44px; border-radius: 50%; margin: 0 auto 12px;
  display: grid; place-items: center;
  background: var(--p-bg-subdued); color: var(--p-text-subdued);
}
.fomo-modal-icon svg { width: 22px; height: 22px; }
.fomo-modal-icon-ok {
  background: var(--p-success-bg);
  color: var(--p-success);
  border: 1px solid var(--p-success-border);
}
.fomo-modal-title {
  margin: 0 0 6px; text-align: center;
  font-size: 17px; font-weight: 700; color: var(--p-text);
  letter-spacing: -.02em;
}
.fomo-modal-body {
  margin: 0 0 14px; text-align: center;
  font-size: 13.5px; color: var(--p-text-subdued); line-height: 1.5;
}
.fomo-modal-pills { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; margin-bottom: 14px; }
.fomo-modal-meta {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin: 0 0 16px;
}
.fomo-modal-meta[hidden] { display: none !important; }
.fomo-modal-meta-item {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 10px;
  padding: 11px 14px;
  text-align: left;
  border-radius: var(--p-r-3);
  border: 1px solid var(--p-border);
  background: var(--p-bg-subdued);
}
.fomo-modal-meta-item.is-stock {
  background: var(--p-brand-subdued);
  border-color: rgba(242, 122, 26, .28);
  color: var(--p-brand-text);
}
.fomo-modal-meta-item.is-view {
  background: var(--p-info-bg);
  border-color: var(--p-info-border);
  color: var(--p-text-subdued);
}
.fomo-modal-meta-ico {
  display: block;
  flex-shrink: 0;
  width: 18px;
  height: 18px;
  margin: 0;
  opacity: .95;
}
.fomo-modal-meta-item.is-stock .fomo-modal-meta-ico { color: var(--p-brand); }
.fomo-modal-meta-item.is-view .fomo-modal-meta-ico { color: var(--p-text-subdued); }
.fomo-modal-meta-txt {
  flex: 1; min-width: 0;
  font-size: 13px; font-weight: 600; line-height: 1.35;
  color: inherit; opacity: .92;
}
.fomo-modal-meta-txt b {
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  color: inherit;
  opacity: 1;
}
.fomo-modal-meta-item.is-stock .fomo-modal-meta-txt b { color: var(--p-brand-text); }
.fomo-modal-meta-item.is-view .fomo-modal-meta-txt b { color: var(--p-text); }
.fomo-modal-actions { display: flex; flex-direction: column; gap: 8px; }
.fomo-modal-atc .fomo-modal-actions .btn { min-height: 44px; font-weight: 600; }
.fomo-modal-atc .fomo-modal-actions .btn-outline {
  border-color: var(--p-border-strong);
  color: var(--p-text);
  background: #fff;
}
.fomo-modal-atc .fomo-modal-actions .btn-outline:hover {
  background: var(--p-bg-subdued);
  border-color: var(--p-border-strong);
  color: var(--p-text);
}


/* Site geneli satış bildirimi (sol-alt) */
.fomo-pop-wrap { position: fixed; left: 16px; bottom: calc(16px + env(safe-area-inset-bottom, 0px)); z-index: 1200; display: flex; flex-direction: column; gap: 10px; pointer-events: none; }
.fomo-pop {
  pointer-events: auto; display: flex; align-items: center; gap: 10px;
  width: 300px; max-width: calc(100vw - 32px);
  background: var(--p-bg-surface); border: 1px solid var(--p-border);
  border-radius: var(--p-r-3); box-shadow: var(--p-shadow-pop);
  padding: 9px 10px; text-decoration: none; color: var(--p-text);
  transform: translateX(-120%); opacity: 0; transition: transform .35s cubic-bezier(.22,1,.36,1), opacity .35s;
}
.fomo-pop.on { transform: translateX(0); opacity: 1; }
.fomo-pop-img { width: 46px; height: 46px; border-radius: var(--p-r-2); overflow: hidden; flex-shrink: 0; background: var(--p-bg-subdued); display: grid; place-items: center; }
.fomo-pop-img img { width: 100%; height: 100%; object-fit: cover; }
.fomo-pop-ph { color: #fff; font-weight: 700; font-size: 20px; background: linear-gradient(135deg, #f27a1a, #e06c0e); }
.fomo-pop-body { min-width: 0; display: flex; flex-direction: column; gap: 1px; flex: 1; }
.fomo-pop-line { font-size: 12.5px; line-height: 1.3; }
.fomo-pop-line b { font-weight: 700; }
.fomo-pop-city { color: var(--p-text-subdued); }
.fomo-pop-title { font-size: 12px; color: var(--p-text-subdued); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.fomo-pop-ago { display: inline-flex; align-items: center; gap: 4px; font-size: 11px; color: var(--p-success); font-weight: 600; margin-top: 2px; }
.fomo-pop.tone-warn .fomo-pop-ago { color: #c2410c; }
.fomo-pop.tone-warn .fomo-pop-ago svg { color: #c2410c; }
.fomo-pop.tone-soft .fomo-pop-ago { color: var(--p-brand-text); }
.fomo-pop.tone-soft .fomo-pop-ago svg { color: var(--p-brand); }
.fomo-pop-ago svg { color: var(--p-success); }
.fomo-pop-when { color: var(--p-text-disabled); font-weight: 500; }
.fomo-pop-x { pointer-events: auto; position: absolute; top: 4px; right: 6px; background: none; border: none; color: var(--p-text-disabled); font-size: 18px; line-height: 1; cursor: pointer; padding: 2px; }
.fomo-pop { position: relative; }
@media (max-width: 640px) {
  .fomo-pop-wrap { left: 10px; right: 10px; bottom: calc(var(--nav-h) + 12px + env(safe-area-inset-bottom, 0px)); }
  .fomo-pop { width: auto; }
  .fomo-hold { flex-wrap: wrap; }
  .fomo-hold-clock { margin-left: auto; }
}
/* PDP sticky (max 899px) açıkken FOMO / chat üstüne binmesin */
@media (max-width: 899px) {
  body.has-pdp-sticky-buy .fomo-pop-wrap {
    bottom: calc(var(--nav-h) + 72px + env(safe-area-inset-bottom, 0px));
  }
  body.has-pdp-sticky-buy .sp-lc-fab {
    bottom: calc(var(--nav-h, 60px) + 86px + env(safe-area-inset-bottom, 0px));
  }
}


/* ---------- Güvenli Havale/EFT ödeme paneli (banka hissiyatı) ---------- */
.paybank { margin-top: 16px; overflow: hidden; border: 1px solid var(--p-border); }
.paybank-head {
  display: flex; align-items: center; justify-content: space-between; gap: 10px;
  padding: 13px 16px; color: #fff;
  background: linear-gradient(135deg, #16233c, #223458 60%, #2b3f6b);
}
.pbh-title { display: inline-flex; align-items: center; gap: 8px; font-weight: 700; font-size: 15px; }
.pbh-title svg { width: 18px; height: 18px; }
.pbh-ssl { display: inline-flex; align-items: center; gap: 5px; font-size: 11px; font-weight: 700; background: rgba(255,255,255,.14); border: 1px solid rgba(255,255,255,.22); padding: 4px 9px; border-radius: var(--p-r-full); white-space: nowrap; }
.pbh-ssl svg { width: 12px; height: 12px; color: #6fe3a3; }
.paybank-body { padding: 16px; }

/* Banka kimliği */
.paybank-bank { display: flex; align-items: center; gap: 12px; padding-bottom: 14px; border-bottom: 1px solid var(--p-border); }
.pbb-logo { width: 56px; height: 40px; flex-shrink: 0; display: grid; place-items: center; background: #fff; border: 1px solid var(--p-border); border-radius: var(--p-r-2); padding: 4px; }
.pbb-logo img { max-width: 100%; max-height: 100%; object-fit: contain; }
.pbb-info { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.pbb-name { font-size: 15px; font-weight: 700; color: var(--p-text); }
.pbb-sub { font-size: 12px; color: var(--p-text-subdued); }
.pbb-protected { margin-left: auto; display: inline-flex; align-items: center; gap: 5px; font-size: 12px; font-weight: 700; color: var(--p-success); background: var(--p-success-bg); border: 1px solid var(--p-success-border); padding: 5px 10px; border-radius: var(--p-r-full); white-space: nowrap; }
.pbb-protected svg { width: 14px; height: 14px; }

/* Alanlar */
.paybank-fields { margin: 12px 0 0; padding: 0; }
.pbf-row { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; padding: 7px 0; border-bottom: 1px dashed var(--p-border); }
.pbf-row:last-child { border-bottom: 0; }
.pbf-row dt { font-size: 12.5px; color: var(--p-text-subdued); margin: 0; }
.pbf-row dd { margin: 0; font-size: 13.5px; font-weight: 600; color: var(--p-text); text-align: right; }

/* IBAN — büyük, gruplu, mono */
.paybank-iban { margin-top: 14px; background: var(--p-bg-subdued); border: 1px solid var(--p-border-strong); border-radius: var(--p-r-3); padding: 14px; }
.pbi-label { display: inline-flex; align-items: center; gap: 6px; font-size: 12px; font-weight: 700; color: var(--p-text-subdued); letter-spacing: .04em; }
.pbi-label svg { width: 14px; height: 14px; color: var(--p-brand); }
.pbi-value { font-size: 19px; font-weight: 700; letter-spacing: 1px; color: var(--p-text); margin: 8px 0 12px; word-break: break-word; }
.pbi-copy { display: inline-flex; align-items: center; justify-content: center; gap: 7px; width: 100%; min-height: 44px; background: var(--p-brand); color: #fff; border: none; border-radius: var(--p-r-2); font-size: 14px; font-weight: 700; cursor: pointer; transition: background .15s; }
.pbi-copy:hover { background: var(--p-brand-hover); }
.pbi-copy svg { width: 17px; height: 17px; }

/* Referans/açıklama uyarısı */
.paybank-ref { display: flex; gap: 10px; margin-top: 12px; padding: 12px 14px; background: var(--p-warning-bg); border: 1px solid var(--p-warning-border); border-radius: var(--p-r-2); }
.pbr-icon { color: var(--p-warning); flex-shrink: 0; }
.pbr-icon svg { width: 18px; height: 18px; }
.pbr-text { font-size: 13px; line-height: 1.55; color: var(--p-text); }
.pbr-copy { display: inline-flex; align-items: center; gap: 5px; margin-top: 6px; background: #fff; border: 1px solid var(--p-warning-border); color: var(--p-text); border-radius: var(--p-r-full); padding: 4px 12px; font-size: 13px; font-weight: 700; cursor: pointer; }
.pbr-copy svg { width: 14px; height: 14px; }

/* Tutar — belirgin */
.paybank-amount { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-top: 14px; padding: 14px 16px; background: var(--p-brand-subdued); border: 1px solid var(--p-brand); border-radius: var(--p-r-3); }
.pba-label { font-size: 13.5px; font-weight: 600; color: var(--p-text); }
.pba-val { font-size: 24px; font-weight: 700; color: var(--p-brand-text); font-variant-numeric: tabular-nums; letter-spacing: -0.01em; }

/* Güvenlik notu */
.paybank-secnote { display: flex; align-items: flex-start; gap: 7px; margin-top: 12px; font-size: 11.5px; line-height: 1.5; color: var(--p-text-subdued); }
.paybank-secnote svg { width: 14px; height: 14px; color: var(--p-success); flex-shrink: 0; margin-top: 1px; }

@media (max-width: 420px) {
  .pbi-value { font-size: 16px; letter-spacing: .5px; }
  .pba-val { font-size: 20px; }
  .paybank-bank { flex-wrap: wrap; }
  .pbb-protected { margin-left: 0; }
}

/* ── Live chat launcher (pixel-tight, shadowsuz) ──
   52px yükseklik · 40px avatar · 1 yeni mesaj rozeti · tek temsilci ── */
.sp-lc-fab{
  --lc-fab-h: 52px;
  --lc-fab-av: 40px;
  position: fixed;
  right: max(16px, env(safe-area-inset-right));
  bottom: max(16px, env(safe-area-inset-bottom));
  z-index: 70;
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  height: var(--lc-fab-h);
  max-width: min(280px, calc(100vw - 32px));
  padding: 6px 14px 6px 6px;
  margin: 0;
  border: 1px solid #e7e7ea;
  border-radius: var(--p-r-full);
  background: #fff;
  color: var(--p-text);
  font-family: var(--p-font);
  cursor: pointer;
  box-shadow: none;
  -webkit-tap-highlight-color: transparent;
  transition: border-color .15s ease, background-color .15s ease, opacity .2s ease, transform .2s ease;
}
.sp-lc-fab:hover{ border-color: #d4d4d8; background: #fff; }
.sp-lc-fab:active{ transform: scale(.985); }
.sp-lc-fab:focus-visible{
  outline: 2px solid var(--p-brand);
  outline-offset: 2px;
}
.sp-lc-fab.is-hidden{
  opacity: 0;
  pointer-events: none;
  transform: translateY(6px) scale(.96);
}

.sp-lc-fab-face{
  position: relative;
  flex: 0 0 var(--lc-fab-av);
  width: var(--lc-fab-av);
  height: var(--lc-fab-av);
}
.sp-lc-fab-av{
  display: block;
  width: var(--lc-fab-av);
  height: var(--lc-fab-av);
  border-radius: 50%;
  object-fit: cover;
  background: #f4f4f5;
}
.sp-lc-fab-av-ph,
.sp-lc-fab-av-ico{
  display: grid;
  place-items: center;
  font-size: 15px;
  font-weight: 700;
  letter-spacing: -.02em;
  color: var(--p-brand-text);
  background: var(--p-brand-subdued);
}
.sp-lc-fab-av-ico{ color: #fff; background: var(--p-brand); }
.sp-lc-fab-av-ico .sp-lc-ico{ display: block; }

.sp-lc-fab-online{
  position: absolute;
  right: 0;
  bottom: 0;
  width: 11px;
  height: 11px;
  border-radius: 50%;
  background: #22c55e;
  border: 2px solid #fff;
  box-sizing: border-box;
}

.sp-lc-fab-copy{
  flex: 1 1 auto;
  min-width: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 2px;
  text-align: left;
  padding-right: 2px;
}
.sp-lc-fab-kicker{
  display: block;
  font-size: 12.5px;
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: -.015em;
  color: var(--p-text);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.sp-lc-fab-preview{
  display: block;
  font-size: 11px;
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: -.01em;
  color: var(--p-text-subdued);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.sp-lc-fab-preview b{
  font-weight: 600;
  color: #3f3f46;
}
.sp-lc-fab-badge{
  position: absolute;
  top: -3px;
  right: -3px;
  z-index: 2;
  box-sizing: border-box;
  min-width: 18px;
  height: 18px;
  padding: 0 5px;
  border-radius: var(--p-r-full);
  display: grid;
  place-items: center;
  background: var(--p-brand);
  color: #fff;
  border: 2px solid #fff;
  font-size: 10px;
  font-weight: 800;
  line-height: 1;
  letter-spacing: -.02em;
  font-variant-numeric: tabular-nums;
}
.sp-lc-fab.has-unread .sp-lc-fab-preview{ color: var(--p-text); font-weight: 500; }

/* Mobil: sadece avatar dairesi (52×52) — metin masaüstünde */
@media (max-width: 639px){
  .sp-lc-fab{
    width: var(--lc-fab-h);
    max-width: var(--lc-fab-h);
    padding: 6px;
    gap: 0;
    justify-content: center;
  }
  .sp-lc-fab-copy{ display: none; }
  .sp-lc-fab-badge{ top: -2px; right: -2px; }
}
@media (max-width: 860px){
  .sp-lc-fab{ bottom: calc(var(--nav-h, 60px) + 14px + env(safe-area-inset-bottom, 0px)); }
  body.has-sticky-bar .sp-lc-fab{ bottom: calc(var(--nav-h, 60px) + 128px + env(safe-area-inset-bottom, 0px)); }
}
/* Pay sayfası: tabbar yok. FAB varsayılan sağ-alt köşe; sabit ödeme CTA
   bar'ı (.pay-bottom — YALNIZ ödeme beklerken var) VARSA onun üstüne çıkar.
   :has() bar yokken (paid/shipped) FAB'ın boşlukta asılıp güven kartlarıyla
   çakışmasını önler. */
body.pay-page .sp-lc-fab{
  bottom: max(20px, env(safe-area-inset-bottom));
  z-index: 90;
  right: max(16px, env(safe-area-inset-right));
}
body.pay-page:has(.pay-bottom) .sp-lc-fab{
  bottom: calc(94px + env(safe-area-inset-bottom, 0px));
}
body.pay-page .sp-lc-panel{ z-index: 100; }
/* Panel açıkken sticky ödeme barının üstüne binmesin — tam ekran chat */
body.pay-page .sp-lc-panel.is-open{ bottom: 0; }
/* Tablet: pay'de tabbar yok — nav-h offset'i iptal */
@media (min-width:640px) and (max-width:860px){
  body.pay-page .sp-lc-panel{
    bottom: max(20px, env(safe-area-inset-bottom));
  }
  body.pay-page:has(.pay-bottom) .sp-lc-panel.is-open{
    bottom: 0;
  }
}

.sp-lc-panel{
  position:fixed;z-index:71;display:flex;flex-direction:column;background:var(--p-bg-surface);color:var(--p-text);
  box-shadow:0 18px 48px rgba(0,0,0,.22);overflow:hidden;opacity:0;transform:translateY(12px);pointer-events:none;
  transition:opacity .25s,transform .25s;
  inset:0;border-radius:0;
}
@media(min-width:640px){
  .sp-lc-panel{
    inset:auto;right:max(20px,env(safe-area-inset-right));bottom:max(20px,env(safe-area-inset-bottom));
    width:min(400px,calc(100vw - 28px));height:min(640px,calc(100vh - 40px));height:min(640px,calc(100dvh - 40px));
    border-radius: var(--p-r-5);border:1px solid rgba(0,0,0,.08);
  }
}
@media (max-width:639px){
  .sp-lc-panel.is-open{/* full screen on phones */}
}
@media (min-width:640px) and (max-width:860px){
  .sp-lc-panel{bottom:calc(var(--nav-h,60px) + 16px + env(safe-area-inset-bottom,0px))}
}
.sp-lc-panel.is-open{opacity:1;transform:none;pointer-events:auto}

.sp-lc-head{display:flex;align-items:center;gap:10px;padding:12px 14px;background:var(--p-brand,#f27a1a);color:#fff}
.sp-lc-head-txt{flex:1;min-width:0}
.sp-lc-head-txt strong{display:block;font-size:15px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sp-lc-head-txt span{display:flex;align-items:center;gap:6px;font-size:12px;opacity:.92;margin-top:2px}
.sp-lc-dot{width:7px;height:7px;border-radius:50%;background:#86efac;display:inline-block;flex-shrink:0}
.sp-lc-x{width:36px;height:36px;border:0;border-radius: var(--p-r-full);background:transparent;color:#fff;font-size:22px;cursor:pointer;line-height:1}
.sp-lc-x:hover{background:rgba(255,255,255,.14)}
.sp-lc-badge{display:flex;align-items:center;justify-content:center;gap:6px;padding:7px 12px;background:var(--p-brand-subdued,#fff7f0);color:var(--p-brand-text,#c2410c);font-size:11.5px;font-weight:600;text-align:center}

.sp-lc-av,.sp-lc-av-ph{border-radius:50%;object-fit:cover;flex-shrink:0;display:grid;place-items:center}
.sp-lc-av-ph{background:rgba(255,255,255,.22);font-weight:700;font-size:14px;color:#fff}
.sp-lc-av-ph .sp-lc-ico{width:18px;height:18px;display:block}
.sp-lc-row .sp-lc-av-ph{background:var(--p-brand-subdued);color:var(--p-brand-text);font-size:12px}

.sp-lc-feed{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:16px 14px;display:flex;flex-direction:column;gap:12px;background:var(--p-bg-subdued)}
.sp-lc-sys{display:flex;justify-content:center}
.sp-lc-sys span{background:rgba(0,0,0,.06);color:var(--p-text-subdued);font-size:11.5px;font-weight: 600;padding:4px 10px;border-radius:var(--p-r-full)}
.sp-lc-row{display:flex;align-items:flex-end;gap:8px;max-width:92%}
.sp-lc-row-user{align-self:flex-end;flex-direction:row-reverse}
.sp-lc-bubble{padding:10px 12px;border-radius: var(--p-r-4);font-size:14px;line-height:1.45;box-shadow:0 1px 2px rgba(0,0,0,.04)}
.sp-lc-bubble-agent{background:#fff;border-bottom-left-radius:6px}
.sp-lc-bubble-user{background:var(--p-brand,#f27a1a);color:#fff;border-bottom-right-radius:6px}
.sp-lc-link{color:var(--p-brand,#f27a1a);font-weight:600;text-decoration:underline;text-underline-offset:2px}
.sp-lc-bubble-user .sp-lc-link{color:#fff}
.sp-lc-typing{display:flex;gap:5px;padding:12px 14px;min-width:52px}
.sp-lc-typing i{width:7px;height:7px;border-radius:50%;background:#9ca3af;animation:spLcDot 1s infinite ease-in-out}
.sp-lc-typing i:nth-child(2){animation-delay:.15s}
.sp-lc-typing i:nth-child(3){animation-delay:.3s}
@keyframes spLcDot{0%,80%,100%{opacity:.35;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}

.sp-lc-chips{display:flex;flex-wrap:wrap;gap:8px;padding-top:4px}
.sp-lc-chips-bar{display:flex;flex-wrap:wrap;gap:6px;padding:8px 12px;border-top:1px solid #e8e9ea;background:#fff;max-height:92px;overflow-y:auto;flex-shrink:0;-webkit-overflow-scrolling:touch}
.sp-lc-chips-bar[hidden]{display:none!important}
.sp-lc-chip{border:1px solid var(--p-border);background:#fff;border-radius: var(--p-r-full);padding:7px 12px;font-size:12.5px;font-weight:600;cursor:pointer;color:inherit}
.sp-lc-chip:hover{border-color:var(--p-brand,#f27a1a);color:var(--p-brand-text,#c2410c)}
.sp-lc-chips-bar .sp-lc-chip{background:var(--p-bg-subdued,#f5f5f5)}

.sp-lc-lead{background:#fff;border:1px solid var(--p-border);border-radius: var(--p-r-4);padding:14px;display:flex;flex-direction:column;gap:6px;box-shadow:none}
.sp-lc-lead-title{margin:0 0 4px;font-weight:700;font-size:14px}
.sp-lc-lead label{font-size:11px;font-weight: 600;color:var(--p-text-subdued);margin-top:4px}
.sp-lc-lead input{border:1px solid var(--p-border);border-radius: var(--p-r-3);padding:10px 12px;font:inherit;font-size:14px}
.sp-lc-lead input:focus{outline:none;border-color:var(--p-brand,#f27a1a)}
.sp-lc-lead-btn{margin-top:8px;border:0;border-radius: var(--p-r-full);background:var(--p-brand,#f27a1a);color:#fff;font-weight:700;padding:11px;cursor:pointer}
.sp-lc-lead-btn:disabled{opacity:.55}
.sp-lc-lead-skip{border:0;background:none;color:var(--p-text-subdued);font-size:12px;font-weight: 600;text-decoration:underline;cursor:pointer;padding:6px}
.sp-lc-lead-note{margin:4px 0 0;font-size:11px;color:var(--p-text-subdued);line-height:1.4}

.sp-lc-composer{display:flex;gap:8px;padding:10px 12px calc(10px + env(safe-area-inset-bottom));border-top:1px solid #e8e9ea;background:#fff}
.sp-lc-composer input{flex:1;border:1px solid var(--p-border);border-radius: var(--p-r-full);padding:11px 14px;font:inherit;font-size:14px;min-width:0}
.sp-lc-composer input:focus{outline:none;border-color:var(--p-brand,#f27a1a)}
.sp-lc-composer button{width:44px;height:44px;border:0;border-radius:50%;background:var(--p-brand,#f27a1a);color:#fff;cursor:pointer;flex-shrink:0;display:grid;place-items:center}
.sp-lc-composer button svg{display:block}

/* ============================================================
   Sipariş / Ödeme sayfası (order.php) — temiz iki sütun düzen
   ============================================================ */
.opay-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; }
.opay-title { font-size: 20px; margin: 0; }
.opay-title span { color: var(--p-brand); }
.opay-date { display: inline-flex; align-items: center; gap: 5px; font-size: 12.5px; color: var(--p-text-subdued); margin-top: 3px; }
.opay-date svg { width: 14px; height: 14px; }
.opay-status { font-size: 12px; flex-shrink: 0; }

.opay-grid { display: grid; grid-template-columns: minmax(0,1fr) 380px; gap: 18px; align-items: start; }
.opay-main, .opay-side { display: flex; flex-direction: column; gap: 14px; min-width: 0; }
.opay-main .banner { margin: 0; }
.opay-side .card { margin: 0; }

/* Tutar + geri sayım */
.opay-amount { padding: 18px; }
.oa-top { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
.oa-label { font-size: 13.5px; font-weight: 600; color: var(--p-text-subdued); }
.oa-value { font-size: 32px; font-weight: 700; color: var(--p-brand-text); font-variant-numeric: tabular-nums; letter-spacing: -0.02em; }
.oa-timer { display: flex; align-items: center; gap: 10px; margin-top: 14px; padding: 12px 14px; background: var(--p-warning-bg); border: 1px solid var(--p-warning-border); border-radius: var(--p-r-2); }
.oa-timer-l { display: flex; align-items: center; gap: 8px; flex: 1; min-width: 0; }
.oa-timer-l svg { width: 20px; height: 20px; color: var(--p-warning); flex-shrink: 0; }
.oa-timer .countdown-val { font-size: 20px; font-weight: 700; color: var(--p-warning); font-variant-numeric: tabular-nums; }
.oa-timer.urgent { background: var(--p-critical-bg); border-color: var(--p-critical-border); }
.oa-timer.urgent svg, .oa-timer.urgent .countdown-val { color: var(--p-critical); }
.oa-timer.expired .countdown-val { color: var(--p-text-subdued); }

/* Banka bilgileri — list-row */
.opay-bank { overflow: hidden; }
.opay-bank-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 13px 16px; border-bottom: 1px solid var(--p-border); background: var(--p-bg-subdued); }
.obh-title { display: inline-flex; align-items: center; gap: 7px; font-size: 14px; font-weight: 700; }
.obh-title svg { width: 17px; height: 17px; color: var(--p-brand); }
.obh-ssl { display: inline-flex; align-items: center; gap: 5px; font-size: 11px; font-weight: 700; color: var(--p-success); background: var(--p-success-bg); border: 1px solid var(--p-success-border); padding: 4px 9px; border-radius: var(--p-r-full); white-space: nowrap; }
.obh-ssl svg { width: 12px; height: 12px; }
.opay-bank-rows { padding: 4px 16px; }
.obr { display: flex; align-items: center; gap: 12px; padding: 12px 0; border-bottom: 1px solid var(--p-border); }
.obr:last-child { border-bottom: 0; }
.obr-l { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 3px; }
.obr-lbl { font-size: 11.5px; color: var(--p-text-subdued); letter-spacing: .03em; font-weight: 600; }
.obr-val { font-size: 14.5px; font-weight: 600; color: var(--p-text); word-break: break-word; }
.obr-bank { display: inline-flex; align-items: center; gap: 8px; }
.obr-bank img { height: 20px; width: auto; max-width: 90px; object-fit: contain; }
.obr-mono { font-size: 17px; letter-spacing: .5px; font-weight: 700; }
.obr-iban { flex-wrap: wrap; }
.obr-copy { flex-shrink: 0; display: inline-flex; align-items: center; gap: 5px; font-size: 12.5px; font-weight: 700; color: var(--p-brand-text); background: #fff; border: 1.5px solid var(--p-brand); padding: 6px 14px; border-radius: var(--p-r-full); cursor: pointer; transition: background .15s, color .15s; }
.obr-copy:hover { background: var(--p-brand); color: #fff; }
.obr-copy.copied { background: var(--p-success); border-color: var(--p-success); color: #fff; }
.obr-copy svg { width: 14px; height: 14px; }
.obr-protected { flex-shrink: 0; display: inline-flex; align-items: center; gap: 5px; font-size: 11.5px; font-weight: 700; color: var(--p-success); background: var(--p-success-bg); border: 1px solid var(--p-success-border); padding: 4px 10px; border-radius: var(--p-r-full); }
.obr-protected svg { width: 13px; height: 13px; }
.opay-bank-note { display: flex; gap: 9px; margin: 4px 16px 0; padding: 12px 14px; background: var(--p-warning-bg); border: 1px solid var(--p-warning-border); border-radius: var(--p-r-2); }
.obn-ic { color: var(--p-warning); flex-shrink: 0; }
.obn-ic svg { width: 17px; height: 17px; }
.obn-txt { font-size: 12.5px; line-height: 1.55; color: var(--p-text); }
.obn-copy { display: inline-flex; align-items: center; gap: 5px; margin-top: 6px; background: #fff; border: 1px solid var(--p-warning-border); color: var(--p-text); border-radius: var(--p-r-full); padding: 4px 12px; font-size: 12.5px; font-weight: 700; cursor: pointer; }
.obn-copy.copied { background: var(--p-success); border-color: var(--p-success); color: #fff; }
.obn-copy svg { width: 13px; height: 13px; }
.opay-bank-foot { display: flex; align-items: flex-start; gap: 7px; padding: 12px 16px 16px; font-size: 11.5px; line-height: 1.5; color: var(--p-text-subdued); }
.opay-bank-foot svg { width: 14px; height: 14px; color: var(--p-success); flex-shrink: 0; margin-top: 1px; }

/* Dekont dropzone */
.opay-dz { display: block; border: 2px dashed var(--p-border-strong); border-radius: var(--p-r-3); padding: 26px 18px; text-align: center; cursor: pointer; transition: border-color .15s, background .15s; }
.opay-dz:hover, .opay-dz.dragover { border-color: var(--p-brand); background: var(--p-brand-subdued); }
.odz-empty[hidden], .odz-file[hidden] { display: none; }
.odz-empty { display: flex; flex-direction: column; align-items: center; gap: 6px; }
.odz-ic { width: 46px; height: 46px; border-radius: 50%; background: var(--p-bg-subdued); display: grid; place-items: center; color: var(--p-brand); margin-bottom: 4px; }
.odz-ic svg { width: 22px; height: 22px; }
.odz-t { font-size: 13.5px; font-weight: 600; color: var(--p-text); }
.odz-t b { color: var(--p-brand-text); }
.odz-s { font-size: 12px; color: var(--p-text-subdued); }
.odz-file { display: flex; align-items: center; gap: 12px; text-align: left; }
.odzf-thumb { width: 48px; height: 48px; border-radius: var(--p-r-2); overflow: hidden; background: var(--p-bg-subdued); display: grid; place-items: center; color: var(--p-text-subdued); flex-shrink: 0; }
.odzf-thumb img { width: 100%; height: 100%; object-fit: cover; }
.odzf-meta { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.odzf-name { font-size: 13.5px; font-weight: 600; color: var(--p-text); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.odzf-size { font-size: 12px; color: var(--p-text-subdued); }
.odzf-x { width: 30px; height: 30px; border-radius: 50%; border: none; background: var(--p-bg-active); color: var(--p-text-subdued); display: grid; place-items: center; cursor: pointer; flex-shrink: 0; }
.odzf-x svg { width: 15px; height: 15px; }
.opay-upbtn { margin-top: 12px; }

/* Sipariş özeti (sidebar) */
.osum-item { display: flex; align-items: center; gap: 10px; padding: 8px 0; }
.osum-item .prod-thumb, .osum-item img { flex-shrink: 0; }
.osum-name { flex: 1; min-width: 0; font-size: 13px; line-height: 1.35; }
.osum-price { flex-shrink: 0; font-size: 13.5px; white-space: nowrap; }
.opay-total span:last-child { color: var(--p-brand-text); }
.opay-side h3 { font-size: 15px; display: flex; align-items: center; gap: 7px; margin-bottom: 8px; }
.opay-side h3 svg { width: 17px; height: 17px; color: var(--p-brand); }

/* Güvenlik & Denetim ızgarası */
.opay-sec { overflow: hidden; }
.opay-sec-head { display: flex; align-items: center; gap: 7px; font-size: 13.5px; font-weight: 700; padding: 12px 16px; border-bottom: 1px solid var(--p-border); background: var(--p-bg-subdued); }
.opay-sec-head svg { width: 16px; height: 16px; color: var(--p-brand); }
.opay-sec-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1px; background: var(--p-border); }
.osec-item { display: flex; align-items: center; gap: 9px; padding: 12px 14px; background: #fff; }
.osec-ic { width: 34px; height: 34px; border-radius: 50%; background: var(--p-bg-subdued); display: grid; place-items: center; flex-shrink: 0; overflow: hidden; }
.osec-ic img { width: 22px; height: 22px; object-fit: contain; }
.osec-txt { display: flex; flex-direction: column; min-width: 0; }
.osec-name { font-size: 12px; font-weight: 700; color: var(--p-text); }
.osec-desc { font-size: 10.5px; color: var(--p-text-subdued); }

.opay-help { text-align: center; }

@media (max-width: 860px) {
  .opay-grid { grid-template-columns: 1fr; }
  .opay-side { order: 2; }
}
@media (max-width: 480px) {
  .oa-value { font-size: 27px; }
  .obr { flex-wrap: wrap; }
  .obr-copy { width: 100%; justify-content: center; margin-top: 4px; }
  .obr-protected { margin-top: 2px; }
}

/* ── Sipariş sorgulama (track) — güven & SSS ───────────────── */
.tr-page { max-width: 720px; margin: 0 auto; padding-bottom: 40px; }
.tr-hero {
  margin: 8px 0 18px; padding: 22px 18px 20px;
  border-radius: var(--p-r-4);
  background:
    radial-gradient(120% 80% at 100% 0%, rgba(242,122,26,.12), transparent 55%),
    linear-gradient(165deg, #fff 0%, #f7f8fa 100%);
  border: 1px solid var(--p-border);
  box-shadow: var(--p-shadow-1);
}
.tr-hero-badge {
  display: inline-flex; align-items: center; gap: 6px;
  font-size: 12px; font-weight: 700; color: var(--p-success);
  background: var(--p-success-bg); border: 1px solid var(--p-success-border);
  padding: 5px 10px; border-radius: var(--p-r-full); margin-bottom: 12px;
}
.tr-hero-badge svg { width: 14px; height: 14px; }
.tr-hero-title { font-size: 28px; line-height: 1.15; margin: 0 0 10px; letter-spacing: -.02em; }
.tr-hero-lead { margin: 0; color: var(--p-text-subdued); font-size: 14.5px; line-height: 1.55; }
.tr-hero-pills { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 14px; }
.tr-hero-pills span {
  display: inline-flex; align-items: center; gap: 5px;
  font-size: 12px; font-weight: 600; color: var(--p-text);
  background: #fff; border: 1px solid var(--p-border); padding: 5px 10px; border-radius: var(--p-r-full);
}
.tr-hero-pills svg { width: 13px; height: 13px; color: var(--p-success); }

.tr-h2 { display: flex; align-items: center; gap: 8px; font-size: 17px; margin: 0 0 6px; }
.tr-h2 svg { width: 18px; height: 18px; color: var(--p-brand); }
.tr-sub { margin: 0 0 14px; color: var(--p-text-subdued); font-size: 13.5px; line-height: 1.5; }

.tr-form { margin-bottom: 18px; }
.tr-form-h { margin-bottom: 14px; }
.tr-form-note {
  display: flex; align-items: flex-start; gap: 7px;
  margin: 14px 0 0; font-size: 12.5px; color: var(--p-text-subdued); line-height: 1.45;
}
.tr-form-note svg { width: 15px; height: 15px; margin-top: 1px; color: var(--p-brand); flex-shrink: 0; }
.tr-submit { margin-top: 4px; }

.tr-mine { margin-bottom: 8px; }
.tr-mine-list { padding: 4px 8px !important; }

/* Sipariş listesi satırı (track / hesabım) — sepet .line-item grid'inden bağımsız */
.order-link-list { padding: 4px 8px; }
.order-link-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 12px;
  padding: 14px 8px;
  border-bottom: 1px solid var(--p-border);
  text-decoration: none;
  color: inherit;
  -webkit-tap-highlight-color: transparent;
  transition: background .12s;
}
.order-link-row:last-child { border-bottom: none; }
.order-link-row:hover { background: var(--p-bg-subdued); }
.order-link-main { min-width: 0; }
.order-link-ref {
  font-size: 14px;
  font-weight: 700;
  letter-spacing: .02em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.order-link-date {
  margin-top: 3px;
  font-size: 12px;
  color: var(--p-text-subdued);
}
.order-link-cargo {
  margin-top: 3px;
  font-size: 12px;
  font-weight: 600;
  color: var(--p-success);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.order-link-meta {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 5px;
  flex-shrink: 0;
}
.order-link-total {
  font-size: 14px;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}
.order-link-chev {
  display: grid;
  place-items: center;
  color: var(--p-text-disabled);
  flex-shrink: 0;
}
.order-link-chev svg { width: 18px; height: 18px; display: block; }

.tr-steps { margin: 28px 0 8px; }
.tr-step-grid {
  list-style: none; margin: 0; padding: 0;
  display: grid; grid-template-columns: 1fr 1fr; gap: 10px;
}
.tr-step-grid li {
  background: var(--p-bg-surface); border: 1px solid var(--p-border);
  border-radius: var(--p-r-3); padding: 14px 14px 12px; box-shadow: var(--p-shadow-1);
}
.tr-step-grid strong { display: block; font-size: 14px; margin: 8px 0 4px; }
.tr-step-grid p { margin: 0; font-size: 12.5px; color: var(--p-text-subdued); line-height: 1.45; }
.tr-step-n {
  display: inline-flex; align-items: center; justify-content: center;
  width: 26px; height: 26px; border-radius: 50%;
  background: var(--p-brand-subdued); color: var(--p-brand-text);
  font-size: 13px; font-weight: 700;
}

.tr-cargo { margin: 22px 0; overflow: hidden; }
.tr-cargo-h { padding: 16px 16px 0; }
.tr-cargo-grid {
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px;
  padding: 12px 16px 8px;
}
.tr-cargo-item {
  display: flex; flex-direction: column; align-items: center; gap: 6px;
  padding: 8px 6px; border-radius: var(--p-r-2); background: var(--p-bg-subdued);
  border: 1px solid transparent; transition: border-color .15s, background .15s;
}
.tr-cargo-item img {
  width: 100%; max-width: 120px; height: auto; aspect-ratio: 160/96;
  object-fit: contain; border-radius: var(--p-r-2); background: #fff;
}
.tr-cargo-item span { font-size: 11px; font-weight: 600; color: var(--p-text-subdued); text-align: center; line-height: 1.2; }
.tr-cargo-foot {
  margin: 0; padding: 10px 16px 14px; font-size: 12px; color: var(--p-text-subdued);
  border-top: 1px solid var(--p-border); background: var(--p-bg-subdued);
}

.tr-trust-points { margin: 26px 0 18px; }
.tr-trust-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.tr-trust-card {
  background: #fff; border: 1px solid var(--p-border); border-radius: var(--p-r-3);
  padding: 14px; box-shadow: var(--p-shadow-1);
}
.tr-trust-ic {
  width: 34px; height: 34px; border-radius: var(--p-r-3);
  display: flex; align-items: center; justify-content: center;
  background: var(--p-brand-subdued); color: var(--p-brand); margin-bottom: 8px;
}
.tr-trust-ic svg { width: 18px; height: 18px; }
.tr-trust-card strong { display: block; font-size: 13.5px; margin-bottom: 4px; }
.tr-trust-card p { margin: 0; font-size: 12.5px; color: var(--p-text-subdued); line-height: 1.45; }

.tr-page .opay-sec { margin: 16px 0 22px; }

.tr-company { margin-bottom: 22px; }
.tr-dl { margin: 12px 0 0; display: grid; gap: 10px; }
.tr-dl > div { display: grid; grid-template-columns: 88px 1fr; gap: 8px; font-size: 13.5px; }
.tr-dl dt { color: var(--p-text-subdued); font-weight: 600; }
.tr-dl dd { margin: 0; font-weight: 500; }

.tr-faq { margin: 8px 0 22px; }
.tr-faq-list { display: flex; flex-direction: column; gap: 8px; }
.tr-faq-item {
  background: #fff; border: 1px solid var(--p-border); border-radius: var(--p-r-3);
  overflow: hidden; box-shadow: var(--p-shadow-1);
}
.tr-faq-item summary {
  list-style: none; cursor: pointer; padding: 14px 16px;
  font-weight: 700; font-size: 14px; line-height: 1.35;
  display: flex; align-items: center; justify-content: space-between; gap: 12px;
}
.tr-faq-item summary::-webkit-details-marker { display: none; }
.tr-faq-item summary::after {
  content: '+'; flex-shrink: 0; width: 22px; height: 22px; border-radius: 50%;
  display: inline-flex; align-items: center; justify-content: center;
  background: var(--p-bg-subdued); color: var(--p-text-subdued); font-size: 16px; font-weight: 600;
}
.tr-faq-item[open] summary::after { content: '−'; background: var(--p-brand-subdued); color: var(--p-brand-text); }
.tr-faq-a {
  padding: 0 16px 16px; font-size: 13.5px; color: var(--p-text-subdued); line-height: 1.6;
  border-top: 1px solid transparent;
}
.tr-faq-item[open] .tr-faq-a { border-top-color: var(--p-border); padding-top: 12px; }
.tr-faq-a strong { color: var(--p-text); }

.tr-cta { text-align: center; margin-bottom: 8px; }
.tr-cta-row { display: flex; flex-wrap: wrap; gap: 8px; justify-content: center; margin-top: 14px; }

@media (max-width: 560px) {
  .tr-hero-title { font-size: 24px; }
  .tr-step-grid { grid-template-columns: 1fr; }
  .tr-cargo-grid { grid-template-columns: repeat(2, 1fr); }
  .tr-trust-grid { grid-template-columns: 1fr; }
  .tr-dl > div { grid-template-columns: 1fr; gap: 2px; }
}


/* ============================================================
   Hesabım (hesabim.php) — sol sidebar + mobil app hissi
   ============================================================ */
.acc-layout { display: grid; grid-template-columns: 264px minmax(0,1fr); gap: 18px; align-items: start; margin-top: 6px; }
.acc-sidebar { position: sticky; top: 84px; background: var(--p-bg-surface); border: 1px solid var(--p-border); border-radius: var(--p-r-3); overflow: hidden; box-shadow: var(--p-shadow-2); }
.acc-profile { display: flex; align-items: center; gap: 12px; padding: 16px; border-bottom: 1px solid var(--p-border); background: linear-gradient(135deg, var(--p-brand-subdued), #fff); }
.acc-avatar { width: 46px; height: 46px; border-radius: 50%; flex-shrink: 0; display: grid; place-items: center; color: #fff; font-weight: 700; font-size: 20px; background: linear-gradient(135deg, var(--p-brand), #ff9d4d); }
.acc-pinfo { display: flex; flex-direction: column; min-width: 0; }
.acc-pname { font-size: 15px; font-weight: 700; color: var(--p-text); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.acc-pmail { font-size: 12px; color: var(--p-text-subdued); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.acc-nav { padding: 6px; }
.acc-nav-item { display: flex; align-items: center; gap: 11px; padding: 11px 10px; border-radius: var(--p-r-2); color: var(--p-text); text-decoration: none; font-size: 14px; font-weight: 600; transition: background .15s, color .15s; }
.acc-nav-item .ani-ic { display: inline-grid; place-items: center; width: 30px; height: 30px; border-radius: var(--p-r-2); background: var(--p-bg-subdued); color: var(--p-text-subdued); flex-shrink: 0; transition: background .15s, color .15s; }
.acc-nav-item .ani-ic svg { width: 17px; height: 17px; }
.acc-nav-item .ani-lbl { flex: 1; min-width: 0; }
.acc-nav-item .ani-ch { color: var(--p-text-disabled); display: none; }
.acc-nav-item .ani-ch svg { width: 16px; height: 16px; }
.acc-nav-item:hover { background: var(--p-bg-subdued); }
.acc-nav-item.active { background: var(--p-brand-subdued); color: var(--p-brand-text); }
.acc-nav-item.active .ani-ic { background: var(--p-brand); color: #fff; }
.acc-logout { color: var(--p-critical); }
.acc-logout .ani-ic { color: var(--p-critical); }
.acc-content { min-width: 0; }
.acc-title { font-size: 21px; margin-bottom: 14px; }

@media (max-width: 860px) {
  .acc-layout { grid-template-columns: 1fr; gap: 14px; }
  .acc-sidebar { position: static; }
  /* Mobil: app-tarzı menü satırları (chevron göster, büyük dokunma alanı) */
  .acc-nav-item { padding: 14px 12px; font-size: 15px; }
  .acc-nav-item .ani-ic { width: 34px; height: 34px; }
  .acc-nav-item .ani-ch { display: inline-grid; }
  .acc-nav-item + .acc-nav-item { border-top: 1px solid var(--p-border); border-radius: 0; }
  .acc-nav { padding: 4px 8px; }
  .acc-title { font-size: 19px; }
}

/* ---------- Mobil hamburger drawer ---------- */
.nav-overlay {
  position: fixed; inset: 0; z-index: 80;
  background: rgba(15, 18, 24, .45);
  opacity: 0; pointer-events: none;
  transition: opacity .22s ease;
}
body.nav-open .nav-overlay { opacity: 1; pointer-events: auto; }
.nav-drawer {
  position: fixed; top: 0; left: 0; bottom: 0; z-index: 90;
  width: min(86vw, 340px);
  background: #fff;
  box-shadow: 8px 0 32px rgba(0,0,0,.18);
  transform: translateX(-104%);
  transition: transform .26s cubic-bezier(.2,.8,.2,1);
  display: flex; flex-direction: column;
  padding-top: env(safe-area-inset-top);
  overflow: hidden;
}
body.nav-open .nav-drawer { transform: translateX(0); }
.nav-drawer[hidden], .nav-overlay[hidden] { display: block !important; }
.nav-drawer-head {
  display: flex; align-items: center; justify-content: space-between;
  gap: 10px; padding: 12px 14px; border-bottom: 1px solid var(--p-border); flex-shrink: 0;
}
.nav-drawer-brand { max-width: 180px; }
.nav-drawer-close { width: 40px; height: 40px; }
.nav-drawer-acct {
  padding: 14px 16px; border-bottom: 1px solid var(--p-border);
  background: linear-gradient(180deg, var(--p-bg-subdued), #fff);
  flex-shrink: 0;
}
.nav-acct-hi { font-size: 14px; color: var(--p-text-subdued); margin-bottom: 10px; }
.nav-acct-hi strong { color: var(--p-text); }
.nav-acct-links { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; }
.nav-acct-links a {
  display: inline-flex; align-items: center; gap: 7px;
  font-size: 13px; font-weight: 600; padding: 10px 10px;
  background: #fff; border: 1px solid var(--p-border); border-radius: var(--p-r-3);
}
.nav-acct-links a svg { width: 16px; height: 16px; color: var(--p-brand); }
.nav-acct-actions { display: flex; gap: 8px; }
.nav-acct-actions .btn { flex: 1; justify-content: center; }
.nav-sg-btn { margin-top: 10px; }
.nav-drawer-tabs {
  display: flex; gap: 0; flex-shrink: 0;
  border-bottom: 1px solid var(--p-border);
  background: #fff;
}
.nav-drawer-tab {
  flex: 1; min-height: 44px; padding: 0 12px;
  border: 0; border-bottom: 2px solid transparent;
  background: transparent; color: var(--p-text-subdued);
  font-size: 14px; font-weight: 700; cursor: pointer;
}
.nav-drawer-tab.is-active {
  color: var(--p-brand);
  border-bottom-color: var(--p-brand);
  background: var(--p-bg-subdued);
}
.nav-drawer-panels {
  flex: 1; min-height: 0; overflow: hidden;
  display: flex; flex-direction: column;
}
.nav-drawer-panel {
  flex: 1; min-height: 0; overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  padding: 8px 0 calc(16px + env(safe-area-inset-bottom));
}
.nav-drawer-panel[hidden] { display: none !important; }
.nav-cat-head {
  display: flex; align-items: stretch; gap: 0;
  margin: 0 8px; border-radius: var(--p-r-3);
  border: 1px solid var(--p-border); background: #fff;
  overflow: hidden;
}
.nav-cat-link {
  flex: 1; display: flex; align-items: center;
  padding: 12px 12px; font-size: 14.5px; font-weight: 600;
  color: var(--p-text); min-width: 0;
}
.nav-cat-toggle {
  width: 44px; flex-shrink: 0; border: 0; border-left: 1px solid var(--p-border);
  background: var(--p-bg-subdued); color: var(--p-text-subdued); cursor: pointer;
  display: grid; place-items: center;
}
.nav-cat-toggle svg { width: 18px; height: 18px; transition: transform .2s ease; }
.nav-cat.has-kids.is-open .nav-cat-toggle svg { transform: rotate(180deg); }
.nav-cat.has-kids { margin-bottom: 6px; }
.nav-cat.has-kids .nav-cat-sub[hidden] { display: none; }
.nav-cat.has-kids.is-open .nav-cat-sub { display: block; }
.nav-cat-list > li.nav-cat:not(.has-kids) > .nav-cat-link {
  display: flex; align-items: center; gap: 10px;
  margin: 0 8px 6px; padding: 12px 12px;
  border-radius: var(--p-r-3); border: 1px solid var(--p-border);
  font-size: 14.5px; font-weight: 600; color: var(--p-text);
}

.nav-drawer-sec { padding: 14px 0 6px; overflow-y: auto; flex: 1; min-height: 0; }
.nav-drawer-sec + .nav-drawer-sec { flex: 0 0 auto; border-top: 1px solid var(--p-border); overflow: visible; }
.nav-sec-title {
  font-size: 11px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase;
  color: var(--p-text-subdued); padding: 0 16px 8px;
}
.nav-cat-list, .nav-link-list { list-style: none; margin: 0; padding: 0 8px 8px; }
.nav-cat-list > li > a, .nav-link-list a {
  display: flex; align-items: center; gap: 10px;
  padding: 12px 12px; border-radius: var(--p-r-3);
  font-size: 14.5px; font-weight: 600; color: var(--p-text);
}
.nav-cat-list > li > a:active, .nav-link-list a:active { background: var(--p-bg-subdued); }
.nav-cat-list > li > a svg { width: 18px; height: 18px; color: var(--p-brand); }
.nav-cat-sub { list-style: none; margin: 0 0 4px; padding: 0 0 0 28px; }
.nav-cat-sub a {
  display: block; padding: 8px 10px; font-size: 13.5px; font-weight: 500;
  color: var(--p-text-subdued); border-radius: var(--p-r-2);
}
.nav-drawer-contact { padding-bottom: calc(12px + env(safe-area-inset-bottom)); }
body.nav-open { overflow: hidden; }
@media (min-width: 900px) {
  .nav-overlay, .nav-drawer { display: none !important; }
}

/* ---------- Katalog: sidebar + filtre sheet ---------- */
.cat-layout {
  display: grid; grid-template-columns: 1fr; gap: 16px; margin-top: 12px;
}
.cat-toolbar {
  display: flex; align-items: center; justify-content: space-between; gap: 10px;
  margin-top: 12px;
}
.cat-toolbar .muted { font-size: 13px; }
.cat-filter-btn {
  display: inline-flex; align-items: center; gap: 7px;
  height: 40px; padding: 0 14px; border-radius: var(--p-r-3);
  border: 1px solid var(--p-border); background: #fff;
  font-size: 13.5px; font-weight: 700; color: var(--p-text); cursor: pointer;
}
.cat-filter-btn svg { width: 18px; height: 18px; }
.cat-filter-btn .dot {
  width: 8px; height: 8px; border-radius: 50%; background: var(--p-brand);
}
.cat-sidebar { display: none; }
.cat-side-block {
  background: var(--p-bg-surface); border: 1px solid var(--p-border);
  border-radius: var(--p-r-3); padding: 14px; margin-bottom: 12px;
}
.cat-side-block h3 { font-size: 13px; margin: 0 0 10px; }
.cat-side-nav { list-style: none; margin: 0; padding: 0; }
.cat-side-nav a {
  display: block; padding: 8px 10px; border-radius: var(--p-r-2);
  font-size: 13.5px; font-weight: 600; color: var(--p-text-subdued);
}
.cat-side-nav a.active, .cat-side-nav a:hover { background: var(--p-brand-subdued); color: var(--p-brand-text); }
.cat-side-nav .sub { padding-left: 14px; }
.cat-side-nav .sub a { font-weight: 500; font-size: 13px; }
.cat-chips-mobile { display: flex; }
.filter-sheet-overlay {
  position: fixed; inset: 0; z-index: 70; background: rgba(15,18,24,.4);
  opacity: 0; pointer-events: none; transition: opacity .2s;
}
body.filter-open .filter-sheet-overlay { opacity: 1; pointer-events: auto; }
.filter-sheet {
  position: fixed; left: 0; right: 0; bottom: 0; z-index: 75;
  max-height: min(88vh, 640px); max-height: min(88dvh, 640px);
  background: #fff; border-radius: var(--p-r-5) var(--p-r-5) 0 0;
  box-shadow: 0 -8px 32px rgba(0,0,0,.16);
  transform: translateY(108%);
  transition: transform .28s cubic-bezier(.2,.8,.2,1);
  display: flex; flex-direction: column;
  padding-bottom: env(safe-area-inset-bottom);
}
body.filter-open .filter-sheet { transform: translateY(0); }
.filter-sheet[hidden], .filter-sheet-overlay[hidden] { display: flex !important; }
.filter-sheet-overlay[hidden] { display: block !important; }
.filter-sheet-head {
  display: flex; align-items: center; justify-content: space-between;
  padding: 14px 16px; border-bottom: 1px solid var(--p-border); flex-shrink: 0;
}
.filter-sheet-head h2 { font-size: 16px; margin: 0; }
.filter-sheet-body { overflow-y: auto; padding: 14px 16px; flex: 1; }
.filter-sheet-foot {
  display: flex; gap: 10px; padding: 12px 16px;
  border-top: 1px solid var(--p-border); flex-shrink: 0;
}
.filter-sheet-foot .btn { flex: 1; justify-content: center; min-height: 46px; }
.filter-field { margin-bottom: 14px; }
.filter-field label { display: block; font-size: 12.5px; font-weight: 700; margin-bottom: 6px; color: var(--p-text-subdued); }
.filter-field .row { display: flex; gap: 8px; }
body.filter-open { overflow: hidden; }
@media (min-width: 900px) {
  .cat-layout { grid-template-columns: 240px minmax(0, 1fr); gap: 22px; align-items: start; }
  .cat-sidebar { display: block; position: sticky; top: 100px; }
  .cat-toolbar .cat-filter-btn { display: none; }
  .cat-chips-mobile { display: none; }
  .filter-sheet, .filter-sheet-overlay { display: none !important; }
}

/* ---------- Çizgisel sepet / checkout satırları ---------- */
.line-item {
  display: grid;
  grid-template-columns: 56px minmax(0, 1fr) auto;
  grid-template-areas:
    "thumb body price"
    "thumb qty qty";
  column-gap: 12px;
  padding: 14px 0;
  border-bottom: 1px solid var(--p-border);
  align-items: start;
}
.line-item:last-child { border-bottom: none; }
.line-item .li-media { grid-area: thumb; width: 56px; height: 56px; border-radius: var(--p-r-3); }
.line-item .li-body { grid-area: body; min-width: 0; }
.line-item .li-title {
  font-size: 13.5px; font-weight: 600; line-height: 1.35;
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical;
  overflow: hidden;
}
.line-item .li-meta {
  margin-top: 3px; font-size: 12px; color: var(--p-text-subdued);
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.line-item .li-side {
  grid-area: price;
  display: flex; flex-direction: column; align-items: flex-end; gap: 6px;
  min-width: 72px;
}
.line-item .li-line-total {
  font-size: 14px; font-weight: 700; font-variant-numeric: tabular-nums;
  text-align: right; white-space: nowrap;
}
.line-item .li-unit {
  font-size: 11.5px; color: var(--p-text-subdued); text-align: right;
}
.line-item .li-qty-row {
  grid-area: qty;
  display: flex; align-items: center; justify-content: space-between; gap: 8px;
}
.line-item .cart-remove-form { margin: 0; }
.line-item .cart-remove-form .icon-btn {
  width: 32px; height: 32px; color: var(--p-text-subdued);
}
.line-item .qty-stepper button { width: 32px; height: 32px; }
.line-item .qty-stepper .q { min-width: 28px; font-size: 13.5px; }
.line-item .fomo-line { margin-top: 5px; }
.checkout-line {
  grid-template-areas: "thumb body price";
  grid-template-columns: 56px minmax(0, 1fr) auto;
  row-gap: 0;
}
.checkout-line .li-qty-row { display: none; }

/* Ödeme özeti: daraltılabilir ürün listesi */
.checkout-items-fold {
  border: 1px solid var(--p-border);
  border-radius: var(--p-r-2);
  background: var(--p-bg-subdued);
  margin-bottom: 12px;
}
.checkout-items-fold-head {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  cursor: pointer;
  list-style: none;
  user-select: none;
  -webkit-tap-highlight-color: transparent;
}
.checkout-items-fold-head::-webkit-details-marker { display: none; }
.checkout-items-thumbs {
  display: flex;
  align-items: center;
  flex-shrink: 0;
}
.checkout-items-thumb {
  width: 34px;
  height: 34px;
  border-radius: var(--p-r-2);
  overflow: hidden;
  border: 2px solid var(--p-bg-surface);
  background: var(--p-bg-surface);
  margin-left: -10px;
  flex-shrink: 0;
}
.checkout-items-thumb:first-child { margin-left: 0; }
.checkout-items-thumb img,
.checkout-items-thumb .ph {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.checkout-items-thumb .ph {
  display: grid;
  place-items: center;
  font-size: 13px;
  font-weight: 700;
  color: #fff;
}
.checkout-items-more {
  width: 34px;
  height: 34px;
  margin-left: -10px;
  border-radius: var(--p-r-2);
  border: 2px solid var(--p-bg-surface);
  background: var(--p-bg-active);
  display: grid;
  place-items: center;
  font-size: 11px;
  font-weight: 700;
  color: var(--p-text-subdued);
  flex-shrink: 0;
}
.checkout-items-fold-copy {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.checkout-items-fold-lbl {
  font-size: 13px;
  font-weight: 700;
  color: var(--p-text);
}
.checkout-items-fold-sub {
  font-size: 12px;
  color: var(--p-text-subdued);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.checkout-items-fold-chev {
  flex-shrink: 0;
  color: var(--p-text-subdued);
  transition: transform .2s ease;
}
.checkout-items-fold-chev svg { width: 18px; height: 18px; display: block; }
.checkout-items-fold[open] .checkout-items-fold-chev { transform: rotate(180deg); }
.checkout-items-fold-body {
  padding: 4px 12px 10px;
  border-top: 1px solid var(--p-border);
  max-height: min(280px, 38vh);
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-width: thin;
}
.checkout-sum-line {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px 0;
  border-bottom: 1px solid rgba(0, 0, 0, .04);
}
.checkout-sum-line:last-child { border-bottom: none; padding-bottom: 2px; }
.checkout-sum-thumb {
  width: 40px;
  height: 40px;
  border-radius: var(--p-r-2);
  overflow: hidden;
  flex-shrink: 0;
  background: var(--p-bg-subdued);
}
.checkout-sum-thumb img,
.checkout-sum-thumb .ph {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.checkout-sum-thumb .ph {
  display: grid;
  place-items: center;
  font-size: 14px;
  font-weight: 700;
  color: #fff;
}
.checkout-sum-info {
  flex: 1;
  min-width: 0;
}
.checkout-sum-title {
  font-size: 13px;
  font-weight: 600;
  line-height: 1.35;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.checkout-sum-meta {
  font-size: 11.5px;
  color: var(--p-text-subdued);
  margin-top: 2px;
}
.checkout-sum-price {
  font-size: 13px;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  flex-shrink: 0;
}
.checkout-sum-totals {
  padding-top: 2px;
  border-top: 1px solid var(--p-border);
}

/* ---------- Sepet / ödeme: sol içerik + sağ özet sidebar ---------- */
.cart-layout {
  display: flex;
  flex-direction: column;
  gap: 14px;
  align-items: stretch;
  margin-top: 14px;
}
.cart-main {
  display: flex;
  flex-direction: column;
  gap: 14px;
  min-width: 0;
  width: 100%;
}
.cart-lines-card,
.cart-coupon-card,
.cart-summary-card { margin: 0; }
.cart-summary-title {
  font-size: 16px; font-weight: 700; margin: 0 0 10px;
  display: flex; align-items: center; gap: 8px;
}
.cart-side {
  display: flex;
  flex-direction: column;
  gap: 12px;
  min-width: 0;
  width: 100%;
}
.cart-side-cta {
  display: none;
  width: 100%;
  min-height: 48px;
  justify-content: center;
  gap: 8px;
}
@media (min-width: 768px) {
  .cart-layout {
    flex-direction: row;
    align-items: flex-start;
    gap: 20px;
    margin-top: 16px;
  }
  .cart-main {
    flex: 1 1 auto;
    min-width: 0;
  }
  .cart-side {
    flex: 0 0 320px;
    width: 320px;
    position: sticky;
    top: 104px;
    align-self: flex-start;
  }
  .cart-summary-card {
    box-shadow: var(--p-shadow-2);
  }
  .cart-side-cta { display: inline-flex; }
  .sticky-bar-cart,
  .sticky-bar-checkout { display: none !important; }
  body.has-sticky-bar:has([data-cart-page]),
  body.has-sticky-bar:has([data-checkout-page]) { padding-bottom: 32px; }
}
@media (min-width: 900px) {
  .cart-layout { gap: 24px; }
  .cart-side { flex-basis: 340px; width: 340px; top: 150px; }
}
@media (max-width: 767px) {
  .cart-layout { margin-top: 12px; gap: 12px; }
  .cart-main { gap: 12px; }
  .cart-side {
    margin-bottom: 4px;
    scroll-margin-bottom: calc(var(--nav-h) + 88px + env(safe-area-inset-bottom));
  }
  .checkout-items-fold-body { max-height: none; overflow: visible; }
  .line-item {
    grid-template-columns: 52px minmax(0, 1fr);
    grid-template-areas:
      "thumb body"
      "thumb price"
      "qty qty";
    row-gap: 6px;
  }
  .line-item .li-side {
    grid-area: price;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-start;
    gap: 6px 10px;
    min-width: 0;
    padding-left: 0;
  }
  .line-item .li-line-total { font-size: 15px; }
  .line-item .li-unit { font-size: 11px; }
  .line-item .li-side .havale-deal {
    flex: 1 1 100%;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    gap: 6px;
    margin-top: 0;
  }
  .line-item .cart-remove-form { margin-left: auto; }
  .line-item .li-qty-row {
    justify-content: flex-start;
    padding-top: 2px;
  }
}

.sticky-bar-inner {
  display: flex; flex-direction: row; align-items: center; gap: 12px;
  max-width: 720px; margin: 0 auto; padding: 0;
}
.sticky-bar-prices { flex: 1; min-width: 0; }
.sticky-bar-cta {
  width: auto; flex: 0 0 auto; min-width: 148px; min-height: 46px;
  font-size: 14.5px; padding-left: 16px; padding-right: 16px;
}
.sticky-price-val { font-size: 17px; }
.sticky-price.is-deal .sticky-price-val { font-size: 17px; }
.corp-page { max-width: 720px; }
.corp-page .corp-prose,
.about-page .corp-prose { font-size: 15px; line-height: 1.7; color: var(--p-text); }
.corp-page .corp-prose p,
.about-page .corp-prose p { margin: 0 0 1em; }
.corp-page .corp-prose p:last-child,
.about-page .corp-prose p:last-child { margin-bottom: 0; }
.corp-contact-grid {
  display: grid; grid-template-columns: 1fr; gap: 12px; margin-top: 18px;
}
.corp-contact-card {
  background: var(--p-bg-surface); border: 1px solid var(--p-border);
  border-radius: var(--p-r-3); padding: 16px;
}
.corp-contact-card h3 { font-size: 14px; margin: 0 0 6px; display: flex; align-items: center; gap: 8px; }
.corp-contact-card h3 svg { width: 18px; height: 18px; color: var(--p-brand); }
.corp-contact-card p, .corp-contact-card a { font-size: 14px; color: var(--p-text-subdued); margin: 0; }
@media (min-width: 640px) {
  .corp-contact-grid { grid-template-columns: 1fr 1fr; }
}

/* ── Hakkımızda (full-bleed placehold + uzun içerik) ── */
@font-face {
  font-family: 'Satoshi';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('../fonts/satoshi/Satoshi-Medium.woff') format('woff');
}
@font-face {
  font-family: 'Satoshi';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('../fonts/satoshi/Satoshi-Bold.woff') format('woff');
}
@font-face {
  font-family: 'Satoshi';
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url('../fonts/satoshi/Satoshi-Black.woff') format('woff');
}

.about-page {
  --about-display: 'Satoshi', var(--p-font);
  max-width: 1080px;
  margin: 0 auto 56px;
  padding-bottom: 8px;
}
.about-crumb { margin-bottom: 8px; }

.about-bleed {
  position: relative;
  width: 100vw;
  max-width: 100vw;
  margin: 28px 0 8px;
  margin-left: calc(50% - 50vw);
}
.about-bleed img {
  display: block;
  width: 100%;
  height: clamp(220px, 42vw, 420px);
  object-fit: cover;
  background: #1c1917;
}
.about-bleed-mid img { height: clamp(180px, 32vw, 320px); }
.about-bleed figcaption {
  position: absolute;
  left: max(16px, calc((100vw - 1080px) / 2 + 16px));
  bottom: 12px;
  margin: 0;
  padding: 5px 10px;
  font-size: 11.5px;
  font-weight: 600;
  color: rgba(250,250,249,.85);
  background: rgba(0,0,0,.45);
  border-radius: var(--p-r-2);
  backdrop-filter: blur(6px);
}

.about-page.has-reveal .about-reveal {
  opacity: 0;
  transform: translateY(14px);
  transition: opacity .55s cubic-bezier(.22,1,.36,1), transform .55s cubic-bezier(.22,1,.36,1);
}
.about-page.has-reveal .about-reveal.is-in { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) {
  .about-page.has-reveal .about-reveal { opacity: 1; transform: none; transition: none; }
}

.about-hero { display: block; padding: 10px 0 4px; max-width: 40rem; }
.about-hero-copy { display: flex; flex-direction: column; min-width: 0; }
.about-kicker {
  margin: 0 0 10px; font-size: 13px; font-weight: 600; letter-spacing: -.01em;
  color: var(--p-brand-text); text-transform: none;
}
.about-title {
  margin: 0; font-family: var(--about-display);
  font-size: clamp(2.35rem, 5.2vw, 3.55rem); font-weight: 900;
  letter-spacing: -.045em; line-height: 1.05; color: var(--p-text); text-wrap: balance;
}
.about-lead {
  margin: 14px 0 0; max-width: 34ch; font-size: 16.5px; line-height: 1.5;
  color: var(--p-text-subdued); text-wrap: pretty;
}
.about-hero-actions {
  display: flex; flex-wrap: wrap; align-items: center; gap: 14px 18px; margin-top: 22px;
}
.about-text-link {
  display: inline-flex; align-items: center; gap: 4px; font-size: 14.5px; font-weight: 650;
  color: var(--p-text); text-decoration: none; border-bottom: 1px solid transparent;
  transition: color .15s, border-color .15s;
}
.about-text-link svg { width: 16px; height: 16px; color: var(--p-brand); }
.about-text-link:hover { color: var(--p-brand-text); border-bottom-color: rgba(194,65,12,.35); }
.about-hero-chips {
  list-style: none; margin: 26px 0 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px;
}
.about-hero-chips li {
  display: inline-flex; align-items: center; gap: 6px; padding: 7px 11px;
  font-size: 12.5px; font-weight: 600; color: var(--p-text-subdued);
  background: var(--p-bg-surface); border: 1px solid var(--p-border); border-radius: var(--p-r-full);
}
.about-hero-chips svg { width: 14px; height: 14px; color: var(--p-brand); }

.about-split {
  display: grid; grid-template-columns: 1fr; gap: 22px; margin-top: 40px; align-items: start;
}
@media (min-width: 860px) {
  .about-split {
    grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr);
    gap: 40px; margin-top: 48px;
  }
}
.about-split-media {
  border-radius: var(--p-r-5); overflow: hidden; border: 1px solid var(--p-border);
  background: var(--p-bg-subdued); aspect-ratio: 4 / 3;
}
.about-split-media img { display: block; width: 100%; height: 100%; object-fit: cover; }
.about-split-body .about-kicker { margin-bottom: 8px; }
.about-split-body h2 {
  margin: 0 0 14px; font-family: var(--about-display);
  font-size: clamp(1.5rem, 2.6vw, 1.85rem); font-weight: 800; letter-spacing: -.03em;
}
.about-story-body { max-width: 62ch; }
.about-story-body p { margin: 0 0 1.05em; }
.about-story-body p:last-child { margin-bottom: 0; }

.about-mission-grid { display: grid; grid-template-columns: 1fr; gap: 18px; }
@media (min-width: 720px) {
  .about-mission-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
}
.about-mission-grid h3 {
  margin: 0 0 8px; font-family: var(--about-display); font-size: 15px; font-weight: 750; letter-spacing: -.015em;
}
.about-mission-grid p { margin: 0; font-size: 13.5px; line-height: 1.55; color: var(--p-text-subdued); }

.about-section { margin-top: 48px; padding-top: 36px; border-top: 1px solid var(--p-border); }
.about-section-head { max-width: 40rem; margin-bottom: 22px; }
.about-section-head h2 {
  margin: 0 0 8px; font-family: var(--about-display);
  font-size: clamp(1.35rem, 2.4vw, 1.7rem); font-weight: 800; letter-spacing: -.03em;
  color: var(--p-text); text-wrap: balance;
}
.about-section-head p {
  margin: 0; font-size: 14.5px; line-height: 1.5; color: var(--p-text-subdued); max-width: 48ch;
}

.about-feature {
  display: grid; grid-template-columns: 1fr; gap: 18px; margin-top: 28px; align-items: center;
}
@media (min-width: 800px) {
  .about-feature { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 36px; margin-top: 36px; }
  .about-feature.is-flip .about-feature-media { order: 2; }
  .about-feature.is-flip .about-feature-body { order: 1; }
}
.about-feature-media {
  border-radius: var(--p-r-4); overflow: hidden; border: 1px solid var(--p-border);
  background: var(--p-bg-subdued); aspect-ratio: 10 / 7;
}
.about-feature-media img { display: block; width: 100%; height: 100%; object-fit: cover; }
.about-feature-body h3 {
  margin: 0 0 8px; font-family: var(--about-display); font-size: 1.25rem; font-weight: 750; letter-spacing: -.02em;
}
.about-feature-body > p {
  margin: 0 0 12px; font-size: 14.5px; line-height: 1.55; color: var(--p-text-subdued); max-width: 46ch;
}
.about-bullets { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 8px; }
.about-bullets li {
  position: relative; padding-left: 16px; font-size: 13.5px; line-height: 1.45; color: var(--p-text);
}
.about-bullets li::before {
  content: ''; position: absolute; left: 0; top: .55em; width: 6px; height: 6px;
  border-radius: 50%; background: var(--p-brand);
}
.about-bullets a { color: var(--p-brand-text); font-weight: 650; text-decoration: none; }
.about-bullets a:hover { text-decoration: underline; }

.about-gallery { display: grid; grid-template-columns: 1fr; gap: 12px; }
@media (min-width: 640px) {
  .about-gallery { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
}
.about-gallery figure {
  margin: 0; border-radius: var(--p-r-4); overflow: hidden; border: 1px solid var(--p-border); background: var(--p-bg-subdued);
}
.about-gallery img { display: block; width: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
.about-gallery figcaption {
  padding: 10px 12px 12px; font-size: 12.5px; font-weight: 650; color: var(--p-text-subdued);
}

.about-rail {
  list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: 1fr; gap: 0;
  border-top: 1px solid var(--p-border);
}
@media (min-width: 800px) {
  .about-rail { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
.about-rail > li { padding: 20px 0 8px; border-bottom: 1px solid var(--p-border); }
@media (min-width: 800px) {
  .about-rail > li {
    padding: 22px 20px 8px 0; border-bottom: 0; border-right: 1px solid var(--p-border);
  }
  .about-rail > li:last-child { border-right: 0; padding-right: 0; }
  .about-rail > li:not(:first-child) { padding-left: 20px; }
}
.about-rail-num {
  display: block; font-family: var(--about-display); font-size: 13px; font-weight: 800;
  letter-spacing: .04em; color: var(--p-brand); margin-bottom: 10px; font-variant-numeric: tabular-nums;
}
.about-rail h3 {
  margin: 0 0 8px; font-family: var(--about-display); font-size: 18px; font-weight: 750; letter-spacing: -.02em;
}
.about-rail p { margin: 0; font-size: 13.5px; line-height: 1.55; color: var(--p-text-subdued); max-width: 32ch; }

.about-guarantees {
  list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: 1fr; gap: 0;
  border-top: 1px solid var(--p-border);
}
@media (min-width: 720px) {
  .about-guarantees { grid-template-columns: 1fr 1fr; }
}
.about-guarantees > li { padding: 16px 0; border-bottom: 1px solid var(--p-border); }
@media (min-width: 720px) {
  .about-guarantees > li:nth-child(odd) { padding-right: 20px; }
  .about-guarantees > li:nth-child(even) { padding-left: 20px; }
}
.about-guarantees strong {
  display: block; font-family: var(--about-display); font-size: 15px; font-weight: 750;
  letter-spacing: -.015em; margin-bottom: 4px; color: var(--p-text);
}
.about-guarantees span { font-size: 13.5px; line-height: 1.5; color: var(--p-text-subdued); }
.about-guarantees a { color: var(--p-brand-text); font-weight: 650; text-decoration: none; }
.about-guarantees a:hover { text-decoration: underline; }

.about-registry { margin-top: 48px; padding: 28px 0 8px; }
.about-registry-inner {
  display: grid; grid-template-columns: 1fr; gap: 20px; padding: 28px 22px; border-radius: var(--p-r-5);
  background: radial-gradient(90% 80% at 100% 0%, rgba(242,122,26,.12), transparent 55%), var(--p-bg-subdued);
  border: 1px solid var(--p-border);
}
@media (min-width: 860px) {
  .about-registry-inner {
    grid-template-columns: minmax(180px, 240px) minmax(0, 1fr); gap: 32px; padding: 32px; align-items: start;
  }
}
.about-registry-intro h2 {
  margin: 0 0 8px; font-family: var(--about-display); font-size: 1.45rem; font-weight: 800; letter-spacing: -.03em;
}
.about-registry-intro p { margin: 0; font-size: 14px; line-height: 1.5; color: var(--p-text-subdued); max-width: 28ch; }
.about-registry-logo { display: block; margin-top: 16px; max-height: 36px; width: auto; object-fit: contain; }
.about-registry-card {
  background: var(--p-bg-surface); border: 1px solid var(--p-border); border-radius: var(--p-r-4); padding: 20px 20px 18px;
}
.about-registry-card > h3 {
  margin: 0; font-family: var(--about-display); font-size: 16px; font-weight: 800; letter-spacing: -.02em; line-height: 1.3;
}
.about-registry-brand { margin: 4px 0 0; font-size: 12.5px; color: var(--p-text-disabled); }
.about-dl { margin: 16px 0 0; display: grid; gap: 11px; }
.about-dl > div { display: grid; grid-template-columns: 88px 1fr; gap: 10px; align-items: start; }
.about-dl dt {
  margin: 0; font-size: 11.5px; font-weight: 700; color: var(--p-text-disabled);
  letter-spacing: .03em; text-transform: uppercase; padding-top: 2px;
}
.about-dl dd { margin: 0; font-size: 14px; line-height: 1.45; color: var(--p-text); }
.about-dl a { color: var(--p-brand-text); text-decoration: none; font-weight: 650; }
.about-dl a:hover { text-decoration: underline; }
.about-etbis {
  display: flex; align-items: flex-start; gap: 8px; margin: 16px 0 0; padding-top: 14px;
  border-top: 1px solid var(--p-border); font-size: 13px; line-height: 1.5; color: var(--p-text-subdued);
}
.about-etbis svg { width: 16px; height: 16px; color: var(--p-brand); flex-shrink: 0; margin-top: 1px; }
.about-etbis a { color: var(--p-brand-text); font-weight: 650; }

.about-legal-list { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--p-border); }
.about-legal-list li { border-bottom: 1px solid var(--p-border); }
.about-legal-list a {
  display: flex; align-items: center; justify-content: space-between; gap: 12px;
  padding: 14px 2px; font-size: 14.5px; font-weight: 650; color: var(--p-text); text-decoration: none;
  transition: color .15s;
}
.about-legal-list a span,
.about-legal-list a svg { color: var(--p-text-disabled); width: 16px; height: 16px; flex-shrink: 0; }
.about-legal-list a:hover { color: var(--p-brand-text); }

.about-cta {
  margin-top: 44px; padding: 24px 0 0; border-top: 1px solid var(--p-border);
  display: flex; flex-wrap: wrap; gap: 16px; align-items: center; justify-content: space-between;
}
.about-cta-copy { min-width: 0; flex: 1 1 240px; }
.about-cta-copy h2 {
  margin: 0 0 6px; font-family: var(--about-display); font-size: 1.25rem; font-weight: 800; letter-spacing: -.025em;
}
.about-cta-copy p { margin: 0; font-size: 14px; line-height: 1.45; color: var(--p-text-subdued); max-width: 40ch; }

@media (max-width: 560px) {
  .about-dl > div { grid-template-columns: 1fr; gap: 2px; }
  .about-cta .btn { width: 100%; justify-content: center; }
  .about-bleed figcaption { left: 12px; right: 12px; bottom: 10px; }
}

/* Kariyer / Sürdürülebilirlik */
.corp-jobs { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 14px; }
.corp-job {
  padding: 18px 0 20px;
  border-bottom: 1px solid var(--p-border);
}
.corp-job:first-child { padding-top: 4px; }
.corp-job-top {
  display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between;
  gap: 8px 16px; margin-bottom: 8px;
}
.corp-job h3 {
  margin: 0; font-family: var(--about-display); font-size: 1.15rem; font-weight: 750; letter-spacing: -.02em;
}
.corp-job-meta { font-size: 12.5px; font-weight: 600; color: var(--p-text-subdued); }
.corp-job > p { margin: 0 0 12px; font-size: 14px; line-height: 1.55; color: var(--p-text-subdued); max-width: 62ch; }
.corp-tags {
  list-style: none; margin: 0 0 14px; padding: 0; display: flex; flex-wrap: wrap; gap: 6px;
}
.corp-tags li {
  font-size: 11.5px; font-weight: 650; color: var(--p-text-subdued);
  background: var(--p-bg-subdued); border-radius: var(--p-r-2); padding: 4px 8px;
}
.corp-cta .about-hero-actions { margin-top: 4px; }
.corp-page .about-feature { margin-top: 22px; }
.corp-page .about-feature:first-of-type { margin-top: 8px; }
.corp-page .about-feature-body { max-width: 62ch; }

/* ================================================================
   Skeleton yükleme sistemi (spinner yerine — redesign disiplini)
   Kullanım: <div class="skel skel-text">, .skel-card, .skel-thumb
   ================================================================ */
.skel {
  position: relative;
  overflow: hidden;
  background: var(--p-bg-subdued);
  border-radius: var(--p-r-2);
  color: transparent !important;
  pointer-events: none;
  user-select: none;
}
.skel::after {
  content: "";
  position: absolute; inset: 0;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.65), transparent);
  transform: translateX(-100%);
  animation: skel-shimmer 1.4s ease-in-out infinite;
}
.skel-text  { height: 13px; margin: 4px 0; border-radius: var(--p-r-1); }
.skel-title { height: 18px; width: 60%; border-radius: var(--p-r-1); }
.skel-thumb { aspect-ratio: 1; width: 100%; border-radius: var(--p-r-3); }
.skel-card  { min-height: 120px; border-radius: var(--p-r-3); }
@keyframes skel-shimmer { to { transform: translateX(100%); } }

/* Boş durum kompozisyonu (boş sepet/favori/sipariş için ortak iskelet) */
.empty-state {
  display: grid; justify-items: center; gap: 10px;
  padding: 44px 20px; text-align: center;
}
.empty-state .es-ic {
  width: 64px; height: 64px; display: grid; place-items: center;
  border-radius: var(--p-r-5); background: var(--p-brand-subdued); color: var(--p-brand);
}
.empty-state .es-ic svg { width: 30px; height: 30px; }
.empty-state h3 { font-size: 16px; }
.empty-state p { margin: 0; max-width: 34ch; font-size: 13.5px; color: var(--p-text-subdued); }
.empty-state .btn { margin-top: 6px; }

/* ================================================================
   Merkezi hareket kill-switch — tüm animasyon/geçişler tek yerden
   kapanır (motion-design disiplini: erişilebilirlik pazarlıksız)
   ================================================================ */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
    scroll-behavior: auto !important;
  }
  .skel::after { animation: none; }
}

/* ---------- 404 sayfası ---------- */
.nf-wrap { max-width: 720px; margin: 0 auto; padding: 40px 0 24px; text-align: center; }
.nf-code {
  font-size: clamp(72px, 18vw, 120px); font-weight: 800; line-height: 1;
  letter-spacing: -0.04em; color: var(--p-brand-subdued);
  -webkit-text-stroke: 2px var(--p-brand);
  user-select: none;
}
.nf-title { margin-top: 8px; font-size: 22px; }
.nf-sub { margin: 8px auto 0; max-width: 42ch; color: var(--p-text-subdued); font-size: 14.5px; }
.nf-actions { display: flex; flex-wrap: wrap; gap: 10px; justify-content: center; margin-top: 20px; }
.nf-search { display: flex; gap: 8px; max-width: 440px; margin: 22px auto 0; }
.nf-search .input { flex: 1; }
.nf-suggest { margin-top: 36px; text-align: left; }
@media (max-width: 560px) {
  .nf-actions .btn { flex: 1 1 100%; }
}

/* ---------- Skip to content (klavye erişilebilirliği) ---------- */
.skip-link {
  position: fixed; top: -60px; left: 12px; z-index: 200;
  padding: 10px 16px; border-radius: var(--p-r-2);
  background: var(--p-text); color: #fff; font-weight: 600; font-size: 14px;
  transition: top .2s ease;
}
.skip-link:focus { top: 12px; color: #fff; }

/* ---------- icon() helper temel kuralı (inline style yerine) ---------- */
svg.ic { flex-shrink: 0; vertical-align: -0.15em; }

/* ---------- Kesirli yıldız (stars() overlay tekniği) ---------- */
.star { display: inline-flex; }
.star-track {
  position: relative; display: inline-block;
  color: var(--p-border-strong); letter-spacing: 1px; line-height: 1;
}
.star-fill {
  position: absolute; inset: 0 auto 0 0; overflow: hidden;
  color: #ca8a04; letter-spacing: 1px; white-space: nowrap;
}

/* ---------- Denetim düzeltmeleri (ürün sayfası) ---------- */
/* Açıklama metni 135ch satırlara yayılıyordu — okunabilir satır sınırı */
.pdp-bes-desc, .pdp-desc p, .pdp-desc li { max-width: 72ch; }
.pdp-desc img, .pdp-desc table { max-width: 100%; }

/* Galeri noktaları 7px'ti — 24px+ dokunma hedefi (görsel boyut aynı) */
.pdp-dots button { position: relative; }
.pdp-dots button::before { content: ""; position: absolute; inset: -9px; }

/* Masaüstü tıklanabilirlik sinyali */
.pdp-thumbs button:hover { border-color: var(--p-border-strong); }
.pdp-cust-shot:hover { opacity: .85; }

/* Modal/lightbox iOS dinamik araç çubuğu taşması */
.ugc-lightbox img { max-height: 90vh; max-height: 90dvh; }
.modal-box { max-height: 80vh; max-height: 80dvh; }

/* Sözleşme onay satırı (kayıt) */
.consent-row {
  display: flex; gap: 9px; align-items: flex-start; cursor: pointer;
  margin: 2px 0 14px; font-size: 12.5px; line-height: 1.5; color: var(--p-text-subdued);
}
.consent-row input { margin-top: 2px; accent-color: var(--p-brand); flex-shrink: 0; width: 16px; height: 16px; }
.consent-row a { font-weight: 600; color: var(--p-brand-text); text-decoration: underline; }

/* ================================================================
   Motion mikro-etkileşimleri (Corporate arketip: 160/280/450ms,
   imza easing cubic-bezier(.2,0,0,1), overshoot yok)
   ================================================================ */
:root {
  --m-ease: cubic-bezier(.2, 0, 0, 1);
  --m-quick: .16s;
  --m-std: .28s;
  --m-slow: .45s;
}

/* Sepet/tab rozetleri: ekleme sonrası kısa pulse (JS .bump basar) */
.badge-count.bump, .tab-badge.bump { animation: badgeBump var(--m-slow) var(--m-ease); }
@keyframes badgeBump {
  0% { transform: scale(1); }
  35% { transform: scale(1.35); }
  100% { transform: scale(1); }
}

/* Sepete Ekle: istek sürerken nabız — dokunulduğu hissi */
.pcard-add.adding, [data-add].adding {
  pointer-events: none;
  animation: addPulse .6s var(--m-ease) infinite;
}
@keyframes addPulse { 50% { opacity: .55; } }

/* Kart hover'ı: hafif yüzme (yalnız hover destekleyen cihazlarda) */
@media (hover: hover) {
  .pcard:hover { transform: translateY(-2px); box-shadow: var(--p-shadow-3); }
}

/* Drawer / sheet geçişleri imza easing'e hizalanır */
.nav-drawer, .filter-sheet, .modal-box { transition-timing-function: var(--m-ease); }

/* ---------- Canlı destek: gerçek temsilci balonu ---------- */
.sp-lc-av-human {
  display: inline-grid; place-items: center;
  width: 28px; height: 28px; border-radius: 50%;
  background: var(--p-success); color: #fff; font-weight: 700; font-size: 13px;
}
.sp-lc-bubble-human { border: 1px solid var(--p-success-border); background: var(--p-success-bg); }
.sp-lc-human-tag {
  font-size: 10.5px; font-weight: 700; color: var(--p-success);
  margin-bottom: 3px; letter-spacing: .02em;
}

/* ---------- İkonlu arama girişi (inline style yerine bileşen) ---------- */
.search-inline { display: flex; gap: 8px; margin-top: 16px; }
.input-icon { position: relative; }
.input-icon > svg.ic {
  position: absolute; left: 12px; top: 50%; transform: translateY(-50%);
  width: 18px; height: 18px; color: var(--p-text-subdued); pointer-events: none;
}
.input-icon .input { padding-left: 40px; width: 100%; }

/* Ürün kartı görseli (product_media inline stili yerine) */
.pcard-media img, .li-media img { width: 100%; height: 100%; object-fit: cover; }

/* Modal açılış geçişi (display toggle keyframe'i yeniden tetikler) */
.modal-overlay { animation: modalFade var(--m-std) var(--m-ease); }
.modal-overlay .modal-box { animation: modalRise var(--m-std) var(--m-ease); }
@keyframes modalFade { from { opacity: 0; } }
@keyframes modalRise { from { opacity: 0; transform: translateY(10px); } }

/* ═══════════════════════════════════════════════════════════
   Storefront profile — Instagram profil yerleşimi (dogalbax ref)
   ═══════════════════════════════════════════════════════════ */
.sv-profile {
  --sv-blue: #0095F6;
  --sv-text: #262626;
  --sv-muted: #8e8e8e;
  --sv-line: #dbdbdb;
  --sv-bg: #fff;
  margin: 0 -16px 20px;
  background: var(--sv-bg);
  color: var(--sv-text);
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  position: relative;
}
.sv-profile-inner {
  max-width: 935px;
  margin: 0 auto;
  padding: 30px 20px 0;
}
.sv-header {
  display: grid;
  grid-template-columns: 150px minmax(0, 1fr);
  gap: 30px 70px;
  align-items: start;
  margin-bottom: 44px;
}
.sv-avatar-col { display: flex; justify-content: center; }
.sv-avatar {
  width: 150px;
  height: 150px;
}
.sv-avatar-shell {
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  padding: 0;
  box-sizing: border-box;
  background: transparent;
}
.sv-avatar.has-story .sv-avatar-shell {
  padding: 3px;
  background: conic-gradient(from 210deg, #feda75, #fa7e1e, #d62976, #962fbf, #4f5bd5, #feda75);
}
.sv-avatar-gap {
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  padding: 3px;
  background: #fff;
  box-sizing: border-box;
}
.sv-avatar:not(.has-story) .sv-avatar-gap { padding: 0; background: transparent; }
.sv-avatar-photo {
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  overflow: hidden;
  background: #fafafa;
  border: 1px solid var(--sv-line);
  position: relative;
}
.sv-avatar.has-story .sv-avatar-photo { border: 0; }
.sv-avatar-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.sv-avatar-letter {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  font-size: 48px;
  font-weight: 600;
  color: #8e8e8e;
  background: #efefef;
  letter-spacing: -.02em;
}
.sv-meta { min-width: 0; padding-top: 4px; }
.sv-user-row {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 20px;
  flex-wrap: wrap;
}
.sv-username {
  margin: 0;
  font-size: 20px;
  font-weight: 400;
  line-height: 1.2;
  color: var(--sv-text);
  letter-spacing: 0;
}
.sv-verified { display: block; flex-shrink: 0; }
.sv-more {
  margin-left: auto;
  border: 0;
  background: transparent;
  color: var(--sv-text);
  font-size: 22px;
  line-height: 1;
  letter-spacing: 2px;
  padding: 4px 2px;
  cursor: default;
}
.sv-stats {
  list-style: none;
  margin: 0 0 20px;
  padding: 0;
  display: flex;
  gap: 40px;
}
.sv-stat { display: flex; gap: 6px; align-items: baseline; font-size: 16px; }
.sv-stat-num { font-weight: 600; color: var(--sv-text); }
.sv-stat-lbl { font-weight: 400; color: var(--sv-text); }
.sv-bio-block { margin-bottom: 20px; font-size: 14px; line-height: 1.4; }
.sv-display-name { font-weight: 600; margin-bottom: 2px; }
.sv-category { color: var(--sv-muted); margin-bottom: 4px; font-weight: 400; }
.sv-bio { white-space: pre-wrap; word-break: break-word; }
.sv-ext-link {
  display: inline-block;
  margin-top: 4px;
  color: #00376b;
  font-weight: 600;
  text-decoration: none;
  word-break: break-all;
}
.sv-ext-link:hover { text-decoration: underline; }
.sv-actions {
  display: flex;
  gap: 8px;
  align-items: stretch;
  max-width: 420px;
}
.sv-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  height: 32px;
  padding: 0 16px;
  border-radius: var(--p-r-2);
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
  border: 0;
  transition: background .15s ease, filter .15s ease;
  white-space: nowrap;
  -webkit-tap-highlight-color: transparent;
}
.sv-btn:hover,
.sv-btn:focus,
.sv-btn:active { text-decoration: none; }
.sv-btn-follow {
  flex: 1 1 auto;
  min-width: 0;
  background: var(--sv-blue);
  color: #fff;
}
.sv-btn-follow:hover,
.sv-btn-follow:focus,
.sv-btn-follow:active {
  background: #1877f2;
  color: #fff;
}
.sv-btn-secondary {
  flex: 0 1 auto;
  background: #efefef;
  color: #262626;
}
.sv-btn-secondary:hover,
.sv-btn-secondary:focus,
.sv-btn-secondary:active {
  background: #dbdbdb;
  color: #262626;
}
.sv-btn-wa {
  flex: 0 1 auto;
  background: #efefef;
  color: #262626;
}
.sv-btn-wa:hover,
.sv-btn-wa:focus,
.sv-btn-wa:active {
  background: #dbdbdb;
  color: #262626;
}
.sv-btn-wa .sv-btn-ic { color: #25D366; }
.sv-btn-ic svg { width: 16px; height: 16px; display: block; }

/* Highlights — gri ince halka (IG highlight) */
.sv-highlights { margin: 0 0 12px; }
.sv-highlights-scroller {
  display: flex;
  gap: 15px;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  scroll-snap-type: x proximity;
  padding: 0 0 12px;
  scrollbar-width: none;
}
.sv-highlights-scroller::-webkit-scrollbar { display: none; }
.sv-hl {
  flex: 0 0 auto;
  width: 77px;
  border: 0;
  background: transparent;
  padding: 0;
  cursor: pointer;
  scroll-snap-align: start;
  text-align: center;
  font: inherit;
  color: inherit;
}
.sv-hl-ring {
  display: block;
  width: 77px;
  height: 77px;
  margin: 0 auto;
  border-radius: 50%;
  padding: 2px;
  box-sizing: border-box;
  background: #fff;
  border: 1px solid var(--sv-line);
}
.sv-hl:active .sv-hl-ring { transform: scale(.96); }
.sv-hl-gap {
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  padding: 3px;
  background: #fff;
  box-sizing: border-box;
}
.sv-hl-photo {
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  overflow: hidden;
  background: #efefef;
  position: relative;
}
.sv-hl-photo img { width: 100%; height: 100%; object-fit: cover; display: block; }
.sv-hl-letter {
  position: absolute; inset: 0; display: grid; place-items: center;
  font-weight: 600; font-size: 22px; color: #8e8e8e; background: #efefef;
}
.sv-hl-label {
  display: block;
  margin-top: 7px;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.2;
  color: var(--sv-text);
  max-width: 77px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

/* Tabs */
.sv-tabs {
  display: flex;
  justify-content: center;
  gap: 60px;
  border-top: 1px solid var(--sv-line);
  margin-top: 8px;
}
.sv-tab {
  position: relative;
  height: 52px;
  border: 0;
  background: transparent;
  color: var(--sv-muted);
  padding: 0 4px;
  cursor: pointer;
  display: grid;
  place-items: center;
}
.sv-tab.is-on {
  color: var(--sv-text);
}
.sv-tab.is-on::after {
  content: '';
  position: absolute;
  left: -12px;
  right: -12px;
  top: -1px;
  height: 1px;
  background: var(--sv-text);
}

/* Product grid like IG posts */
.sv-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 3px;
  margin: 0 -20px;
}
@media (min-width: 736px) {
  .sv-grid { gap: 4px; margin: 0; }
}
.sv-cell {
  position: relative;
  display: block;
  aspect-ratio: 1;
  background: #efefef;
  overflow: hidden;
  text-decoration: none;
  color: inherit;
  border: 0;
  padding: 0;
  cursor: pointer;
  width: 100%;
  font: inherit;
}
.sv-cell img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.sv-cell-ph {
  position: absolute; inset: 0; display: grid; place-items: center;
  font-size: 28px; font-weight: 600; color: #8e8e8e;
}
.sv-pin {
  position: absolute;
  top: 8px;
  right: 8px;
  z-index: 2;
  filter: drop-shadow(0 1px 2px rgba(0,0,0,.45));
}
.sv-cell-hover {
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,.35);
  color: #fff;
  font-weight: 600;
  font-size: 14px;
  display: grid;
  place-items: center;
  opacity: 0;
  transition: opacity .15s ease;
}
.sv-cell:hover .sv-cell-hover { opacity: 1; }
.sv-cell.is-collapsed,
.sv-cell[hidden] { display: none !important; }

/* Instagram-style “Daha fazla göster” */
.sv-grid-more-wrap {
  display: flex;
  justify-content: center;
  padding: 20px 0 8px;
}
.sv-grid-more {
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  gap: 2px;
  border: 0;
  background: transparent;
  padding: 10px 18px;
  cursor: pointer;
  color: #262626;
  font-family: inherit;
  -webkit-tap-highlight-color: transparent;
}
.sv-grid-more:hover { opacity: .65; }
.sv-grid-more:active { opacity: .45; }
.sv-grid-more-label {
  font-size: 14px;
  font-weight: 600;
  letter-spacing: .01em;
  color: #8e8e8e;
}
.sv-grid-more:hover .sv-grid-more-label { color: #262626; }
.sv-grid-more-ic {
  display: grid;
  place-items: center;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  border: 1px solid #dbdbdb;
  color: #262626;
  background: #fff;
  margin-top: 4px;
}
.sv-grid-more-ic svg { display: block; }
.sv-grid-more-wrap[hidden] { display: none !important; }

/* Floating Mesajla */
.sv-fab {
  position: fixed;
  right: 18px;
  bottom: max(18px, env(safe-area-inset-bottom));
  z-index: 40;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  height: 44px;
  padding: 0 16px 0 12px;
  border-radius: var(--p-r-full);
  background: #fff;
  color: var(--sv-text);
  text-decoration: none;
  font-size: 14px;
  font-weight: 600;
  box-shadow: 0 4px 18px rgba(0,0,0,.18);
  border: 1px solid #efefef;
}
.sv-fab-ic { display: grid; place-items: center; color: #25D366; }
.sv-fab-ic svg { width: 20px; height: 20px; }

@media (max-width: 735px) {
  .sv-profile { margin: 0 -16px 16px; }
  .sv-profile-inner { padding: 16px 16px 0; }
  .sv-header {
    grid-template-columns: 86px minmax(0, 1fr);
    gap: 18px 20px;
    margin-bottom: 20px;
  }
  .sv-avatar { width: 86px; height: 86px; }
  .sv-avatar-letter { font-size: 28px; }
  .sv-user-row { margin-bottom: 12px; order: -1; }
  .sv-meta {
    display: contents;
  }
  .sv-user-row { grid-column: 1 / -1; }
  .sv-avatar-col { grid-column: 1; grid-row: 2; }
  .sv-stats {
    grid-column: 2;
    grid-row: 2;
    gap: 0;
    justify-content: space-around;
    width: 100%;
    margin: 0;
    align-self: center;
  }
  .sv-stat { flex-direction: column; align-items: center; gap: 2px; text-align: center; font-size: 14px; }
  .sv-stat-num { font-size: 16px; }
  .sv-stat-lbl { font-size: 13px; color: var(--sv-muted); }
  .sv-bio-block { grid-column: 1 / -1; margin-bottom: 12px; }
  .sv-actions {
    grid-column: 1 / -1;
    max-width: none;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .sv-btn { height: 32px; font-size: 13px; padding: 0 6px; }
  .sv-btn-follow,
  .sv-btn-secondary,
  .sv-btn-wa { flex: none; width: 100%; }
  .sv-btn-follow,
  .sv-btn-follow:hover,
  .sv-btn-follow:focus {
    background: var(--sv-blue);
    color: #fff;
  }
  .sv-btn-follow:hover,
  .sv-btn-follow:focus { background: #1877f2; color: #fff; }
  .sv-btn-secondary,
  .sv-btn-secondary:hover,
  .sv-btn-wa,
  .sv-btn-wa:hover {
    background: #efefef;
    color: #262626;
  }
  .sv-btn-secondary:hover,
  .sv-btn-wa:hover { background: #dbdbdb; color: #262626; }
  .sv-highlights { grid-column: 1 / -1; margin: 4px -16px 0; }
  .sv-highlights-scroller { padding: 0 16px 10px; gap: 12px; }
  .sv-hl, .sv-hl-ring { width: 72px; }
  .sv-hl-ring { height: 72px; }
  .sv-hl-label { max-width: 72px; }
  .sv-tabs { gap: 0; justify-content: space-around; }
  .sv-grid { margin: 0 -16px; gap: 2px; }
  .sv-more { display: none; }
  .sv-header { display: grid; }
}

@media (min-width: 736px) {
  .sv-profile { margin: 0 0 24px; border: 1px solid transparent; }
}

/* Story viewer */
html.sp-story-open,
html.sp-story-open body { overflow: hidden; overscroll-behavior: none; }
.sp-story-modal {
  position: fixed; inset: 0; z-index: 12000; background: #0a0a0b; color: #fff;
  display: flex; align-items: stretch; justify-content: center;
  touch-action: none; height: 100%; height: 100dvh;
}
.sp-story-modal[hidden] { display: none !important; }
.sp-story-backdrop {
  display: none;
  position: absolute; inset: 0; border: 0; background: transparent; cursor: pointer; z-index: 0;
}
.sp-story-x {
  display: none;
  position: absolute; top: 16px; right: 16px; z-index: 6;
  width: 40px; height: 40px; border: 0; background: transparent; color: #fff;
  cursor: pointer; place-items: center;
}
.sp-story-nav {
  display: none;
  position: absolute; top: 50%; transform: translateY(-50%); z-index: 6;
  width: 40px; height: 40px; border: 0; border-radius: 50%;
  background: #fff; color: #262626; box-shadow: 0 2px 8px rgba(0,0,0,.25);
  cursor: pointer; place-items: center;
}
.sp-story-nav.is-dim { opacity: .35; pointer-events: none; }
.sp-story-prev { left: max(12px, calc(50% - 320px)); }
.sp-story-next { right: max(12px, calc(50% - 320px)); }
.sp-story-shell {
  position: relative; z-index: 2; flex: 1; min-width: 0; min-height: 0;
  display: flex; align-items: center; justify-content: center; gap: 18px;
}
.sp-story-peek {
  display: none; flex-direction: column; align-items: center; gap: 10px;
  border: 0; background: transparent; color: #fff; cursor: pointer; padding: 0;
  width: 110px; flex-shrink: 0; opacity: .55; transition: opacity .2s ease, transform .2s ease;
}
.sp-story-peek:hover { opacity: .9; transform: scale(1.02); }
.sp-story-peek[hidden] { display: none !important; }
.sp-story-peek-photo {
  width: 96px; height: 170px; border-radius: var(--p-r-3); overflow: hidden;
  background: #222; position: relative; box-shadow: 0 8px 24px rgba(0,0,0,.35);
}
.sp-story-peek-photo img { width: 100%; height: 100%; object-fit: cover; display: block; }
.sp-story-peek-photo img[hidden] { display: none; }
.sp-story-peek-letter {
  position: absolute; inset: 0; display: grid; place-items: center;
  font-weight: 700; font-size: 28px; color: #fff; background: #333;
}
.sp-story-peek-label {
  font-size: 12px; font-weight: 600; max-width: 100%; overflow: hidden;
  text-overflow: ellipsis; white-space: nowrap; text-shadow: 0 1px 3px rgba(0,0,0,.5);
}
.sp-story-stage {
  position: relative; flex: 1; min-height: 0; display: flex; flex-direction: column;
  width: 100%; max-width: 480px; margin: 0 auto; background: #000; height: 100%;
}
.sp-story-progress { display: flex; gap: 3px; padding: max(10px, env(safe-area-inset-top)) 10px 0; position: relative; z-index: 5; }
.sp-story-seg { flex: 1; height: 2.5px; border-radius: var(--p-r-full); background: rgba(255,255,255,.28); overflow: hidden; }
.sp-story-seg-fill { height: 100%; width: 0; background: #fff; border-radius: inherit; }
.sp-story-seg.done .sp-story-seg-fill { width: 100%; animation: none !important; }
@keyframes spStoryFill { from { width: 0; } to { width: 100%; } }
.sp-story-top { display: flex; align-items: center; gap: 10px; padding: 10px 12px 8px; position: relative; z-index: 5; }
.sp-story-avatar { width: 36px; height: 36px; flex-shrink: 0; }
.sp-story-av-shell {
  display: block; width: 36px; height: 36px; border-radius: 50%; padding: 2px; box-sizing: border-box;
  background: conic-gradient(from 210deg, #feda75, #fa7e1e, #d62976, #962fbf, #4f5bd5, #feda75);
}
.sp-story-av-gap { display: block; width: 100%; height: 100%; border-radius: 50%; padding: 2px; background: #000; box-sizing: border-box; }
.sp-story-av-photo { display: block; width: 100%; height: 100%; border-radius: 50%; overflow: hidden; background: #333; position: relative; }
.sp-story-av-photo img { width: 100%; height: 100%; object-fit: cover; display: block; }
.sp-story-av-photo img[hidden] { display: none; }
.sp-story-av-letter { position: absolute; inset: 0; display: grid; place-items: center; font-weight: 750; font-size: 13px; color: #fff; background: #333; }
.sp-story-avatar.has-img .sp-story-av-letter { display: none; }
.sp-story-title { flex: 1; font-size: 14px; font-weight: 700; text-shadow: 0 1px 3px rgba(0,0,0,.45); min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.sp-story-pause {
  width: 32px; height: 32px; border: 0; border-radius: 50%; background: rgba(0,0,0,.35); color: #fff;
  cursor: pointer; display: grid; place-items: center; flex-shrink: 0;
}
.sp-story-close {
  width: 36px; height: 36px; border: 0; border-radius: 50%; background: rgba(0,0,0,.35); color: #fff;
  font-size: 22px; line-height: 1; cursor: pointer; display: grid; place-items: center;
}
.sp-story-media { position: absolute; inset: 0; z-index: 1; background: #111; }
.sp-story-media img, .sp-story-media video {
  width: 100%; height: 100%; object-fit: contain; object-position: center; display: block; background: #000;
  user-select: none; -webkit-user-drag: none;
}
.sp-story-media .sp-story-fade { animation: spStoryMediaIn .28s ease; }
@keyframes spStoryMediaIn { from { opacity: .35; transform: scale(1.02); } to { opacity: 1; transform: none; } }
.sp-story-hit-left, .sp-story-hit-right { position: absolute; top: 18%; bottom: 18%; width: 32%; z-index: 4; cursor: pointer; }
.sp-story-hit-left { left: 0; } .sp-story-hit-right { right: 0; }
.sp-story-footer {
  position: absolute; left: 0; right: 0; bottom: 0; z-index: 5;
  padding: 18px 14px max(18px, env(safe-area-inset-bottom));
  background: linear-gradient(transparent, rgba(0,0,0,.72) 45%, rgba(0,0,0,.88)); pointer-events: none;
}
.sp-story-caption { margin: 0 0 10px; font-size: 14.5px; line-height: 1.4; font-weight: 550; text-shadow: 0 1px 4px rgba(0,0,0,.5); }
.sp-story-cta {
  pointer-events: auto; display: inline-flex; align-items: center; justify-content: center;
  min-height: 42px; padding: 0 18px; border-radius: var(--p-r-full); background: #fff; color: #18181b;
  font-weight: 750; font-size: 13.5px; text-decoration: none;
}
.sp-story-cta[hidden] { display: none !important; }
@media (min-width: 720px) {
  .sp-story-modal { background: rgba(0,0,0,.88); }
  .sp-story-backdrop { display: block; }
  .sp-story-x { display: grid; }
  .sp-story-nav { display: grid; }
  .sp-story-peek { display: flex; }
  .sp-story-shell { flex: 0 1 auto; height: calc(100vh - 48px); max-height: calc(100dvh - 48px); }
  .sp-story-stage {
    margin: 0; border-radius: var(--p-r-5); overflow: hidden; flex: 0 0 auto;
    box-shadow: 0 24px 60px rgba(0,0,0,.45); height: 100%;
    aspect-ratio: 9 / 16; max-width: min(420px, calc((100vh - 48px) * 9 / 16));
    width: min(420px, calc((100vh - 48px) * 9 / 16));
  }
  .sp-story-close { display: none; } /* desktop: dış X kullanılır */
  .sp-story-prev { left: max(16px, calc(50% - min(210px, (100vh - 48px) * 9 / 32) - 140px - 52px)); }
  .sp-story-next { right: max(16px, calc(50% - min(210px, (100vh - 48px) * 9 / 32) - 140px - 52px)); }
}
@media (min-width: 720px) and (max-width: 980px) {
  .sp-story-peek { display: none; }
  .sp-story-prev { left: max(12px, calc(50% - 240px)); }
  .sp-story-next { right: max(12px, calc(50% - 240px)); }
}

/* ═══════════════════════════════════════════════════════════
   Instagram post modal (grid tıklanınca)
   ═══════════════════════════════════════════════════════════ */
html.ig-post-open,
html.ig-post-open body { overflow: hidden; }
.ig-post-modal {
  position: fixed;
  inset: 0;
  z-index: 13000;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px;
}
.ig-post-modal[hidden] { display: none !important; }
.ig-post-backdrop {
  position: absolute;
  inset: 0;
  border: 0;
  background: rgba(0,0,0,.65);
  cursor: pointer;
}
.ig-post-x {
  position: absolute;
  top: 16px;
  right: 16px;
  z-index: 3;
  width: 40px;
  height: 40px;
  border: 0;
  background: transparent;
  color: #fff;
  cursor: pointer;
  display: grid;
  place-items: center;
}
.ig-post-nav {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 3;
  width: 40px;
  height: 40px;
  border: 0;
  border-radius: 50%;
  background: #fff;
  color: #262626;
  box-shadow: 0 2px 8px rgba(0,0,0,.2);
  cursor: pointer;
  display: grid;
  place-items: center;
}
.ig-post-prev { left: 12px; }
.ig-post-next { right: 12px; }
.ig-post-dialog {
  position: relative;
  z-index: 2;
  display: flex;
  width: min(935px, calc(100vw - 48px));
  max-height: min(90vh, 90dvh);
  background: #fff;
  border-radius: var(--p-r-xs);
  overflow: hidden;
  box-shadow: 0 12px 48px rgba(0,0,0,.35);
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  color: #262626;
}
.ig-post-media {
  flex: 1 1 60%;
  min-width: 0;
  background: #000;
  display: flex;
  align-items: center;
  justify-content: center;
}
.ig-post-media img {
  max-width: 100%;
  max-height: min(90vh, 90dvh);
  width: auto;
  height: auto;
  object-fit: contain;
  display: block;
}
.ig-post-side {
  flex: 0 0 340px;
  width: 340px;
  max-width: 40%;
  display: flex;
  flex-direction: column;
  min-height: 0;
  background: #fff;
  border-left: 1px solid #efefef;
}
.ig-post-head {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 14px 16px;
  border-bottom: 1px solid #efefef;
  flex-shrink: 0;
}
.ig-post-user { display: flex; align-items: center; gap: 12px; min-width: 0; flex: 1; }
.ig-post-av {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  overflow: hidden;
  background: #efefef;
  flex-shrink: 0;
  display: block;
}
.ig-post-av img { width: 100%; height: 100%; object-fit: cover; display: block; }
.ig-post-av-letter {
  display: grid;
  place-items: center;
  width: 100%;
  height: 100%;
  font-size: 13px;
  font-weight: 600;
  color: #8e8e8e;
}
.ig-post-av-sm { width: 32px; height: 32px; }
.ig-post-user-line {
  display: flex;
  align-items: center;
  gap: 6px;
  flex-wrap: wrap;
  font-size: 14px;
}
.ig-post-user-line strong { font-weight: 600; }
.ig-post-verified { display: inline-flex; color: #0095F6; }
.ig-post-verified svg { width: 12px; height: 12px; }
.ig-post-dot { color: #8e8e8e; }
.ig-post-follow {
  color: #0095F6;
  font-weight: 600;
  text-decoration: none;
  font-size: 14px;
}
.ig-post-follow:hover { color: #0095F6; text-decoration: none; }
.ig-post-more {
  border: 0;
  background: transparent;
  font-size: 20px;
  letter-spacing: 2px;
  color: #262626;
  cursor: default;
  line-height: 1;
  padding: 4px;
}
.ig-post-body {
  flex: 1 1 auto;
  min-height: 0;
  overflow-y: auto;
  padding: 16px;
}
.ig-post-caption-row {
  display: flex;
  gap: 12px;
  align-items: flex-start;
}
.ig-post-caption-text {
  font-size: 14px;
  line-height: 1.4;
  word-break: break-word;
  white-space: pre-wrap;
}
.ig-post-caption-text strong { font-weight: 600; margin-right: 4px; }
.ig-post-ago {
  margin-top: 12px;
  font-size: 12px;
  color: #8e8e8e;
}
.ig-post-foot {
  flex-shrink: 0;
  border-top: 1px solid #efefef;
}
.ig-post-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 8px 12px 4px;
}
.ig-post-actions-l { display: flex; gap: 12px; }
.ig-act {
  border: 0;
  background: transparent;
  padding: 6px;
  color: #262626;
  cursor: pointer;
  display: grid;
  place-items: center;
}
.ig-act.is-liked { color: #ed4956; }
.ig-act.is-liked .ig-heart path { fill: currentColor; stroke: currentColor; }
.ig-post-likes {
  padding: 0 16px 4px;
  font-size: 14px;
  font-weight: 600;
}
.ig-post-date {
  padding: 0 16px 12px;
  font-size: 10px;
  color: #8e8e8e;
  text-transform: uppercase;
  letter-spacing: .04em;
}
.ig-post-cta {
  display: block;
  margin: 0 16px 12px;
  text-align: center;
  height: 32px;
  line-height: 32px;
  border-radius: var(--p-r-2);
  background: #0095F6;
  color: #fff !important;
  font-weight: 600;
  font-size: 14px;
  text-decoration: none;
}
.ig-post-cta:hover { background: #1877f2; color: #fff !important; }
.ig-post-cta[hidden] { display: none !important; }
.ig-post-comment {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 10px 16px;
  border-top: 1px solid #efefef;
}
.ig-post-emoji { color: #8e8e8e; font-size: 18px; }
.ig-post-comment input {
  flex: 1;
  border: 0;
  outline: none;
  font-size: 14px;
  background: transparent;
  color: #262626;
  min-width: 0;
}
.ig-post-share-btn {
  border: 0;
  background: transparent;
  color: #0095F6;
  font-weight: 600;
  font-size: 14px;
  opacity: .4;
  cursor: default;
}

@media (max-width: 735px) {
  .ig-post-modal { padding: 0; align-items: stretch; }
  .ig-post-dialog {
    width: 100%;
    max-width: none;
    height: 100%;
    max-height: none;
    border-radius: 0;
    flex-direction: column;
  }
  .ig-post-media {
    flex: 0 0 auto;
    max-height: 55vh;
    min-height: 240px;
  }
  .ig-post-media img {
    max-height: 55vh;
    width: 100%;
    height: 100%;
    object-fit: contain;
  }
  .ig-post-side {
    flex: 1 1 auto;
    width: 100%;
    max-width: none;
    border-left: 0;
    border-top: 1px solid #efefef;
  }
  .ig-post-nav { display: none; }
  .ig-post-x { top: 10px; right: 10px; background: rgba(0,0,0,.35); border-radius: 50%; }
}

/* Checkout payment method picker */
.pay-methods { display: flex; flex-direction: column; gap: 10px; }
.pay-method {
  display: flex; align-items: flex-start; gap: 12px;
  padding: 14px; border: 1.5px solid var(--p-border); border-radius: var(--p-r-3);
  background: var(--p-bg); cursor: pointer; transition: border-color .15s, background .15s, box-shadow .15s;
  position: relative;
}
.pay-method:hover { border-color: var(--p-border-strong); }
.pay-method.is-on {
  border-color: var(--p-brand);
  background: color-mix(in srgb, var(--p-brand) 6%, #fff);
  box-shadow: 0 0 0 1px color-mix(in srgb, var(--p-brand) 35%, transparent);
}
.pay-method input {
  position: absolute; opacity: 0; pointer-events: none;
}
.pay-method-ic {
  width: 40px; height: 40px; border-radius: var(--p-r-3); flex-shrink: 0;
  display: grid; place-items: center;
  background: var(--p-bg-subdued); color: var(--p-text);
}
.pay-method-ic svg { width: 20px; height: 20px; }
.pay-method.is-on .pay-method-ic { background: color-mix(in srgb, var(--p-brand) 14%, #fff); color: var(--p-brand); }
.pay-method-body { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 4px; padding-right: 8px; }
.pay-method-body strong { font-size: 14.5px; font-weight: 700; color: var(--p-text); line-height: 1.25; }
.pay-method-title {
  display: flex; flex-wrap: wrap; align-items: center; gap: 6px 8px;
}
.pay-method-badge {
  display: inline-flex; align-items: center; gap: 3px;
  height: 20px; padding: 0 7px; border-radius: var(--p-r-full);
  background: transparent;
  border: 1px solid color-mix(in srgb, var(--p-success) 35%, var(--p-border));
  color: var(--p-success);
  font-size: 11px; font-weight: 650; letter-spacing: .01em;
  white-space: nowrap;
}
.pay-method-badge svg { width: 11px; height: 11px; }
.pay-method.is-on .pay-method-badge {
  background: color-mix(in srgb, var(--p-success) 8%, #fff);
  border-color: color-mix(in srgb, var(--p-success) 40%, var(--p-border));
}
.pay-method-body small { font-size: 12.5px; line-height: 1.4; color: var(--p-text-subdued); }
.pay-method-check {
  width: 20px; height: 20px; border-radius: 50%; flex-shrink: 0; margin-top: 2px;
  border: 2px solid var(--p-border-strong); background: #fff; position: relative;
}
.pay-method.is-on .pay-method-check {
  border-color: var(--p-brand); background: var(--p-brand);
}
.pay-method.is-on .pay-method-check::after {
  content: ''; position: absolute; inset: 4px; border-radius: 50%; background: #fff;
}
.pay-panel { margin-top: 14px; }
.pay-panel[hidden] { display: none !important; }

/* Minimal havale bilgi satırı (banner yerine) */
.pay-havale-note {
  display: flex; align-items: flex-start; gap: 10px;
  padding: 10px 12px;
  border: 1px solid var(--p-border);
  border-radius: 12px;
  background: var(--p-bg-subdued, #f6f6f7);
}
.pay-havale-note-ic {
  width: 28px; height: 28px; flex: none;
  display: grid; place-items: center;
  border-radius: 8px;
  background: #fff;
  border: 1px solid var(--p-border);
  color: var(--p-text-subdued);
}
.pay-havale-note-ic svg { width: 15px; height: 15px; }
.pay-havale-note-body { min-width: 0; flex: 1; }
.pay-havale-note-row {
  display: flex; flex-wrap: wrap; align-items: center; gap: 6px 8px;
}
.pay-havale-note-t {
  font-size: 13px; font-weight: 600; color: var(--p-text);
}
.pay-havale-note-badge {
  display: inline-flex; align-items: center; gap: 3px;
  height: 18px; padding: 0 7px; border-radius: 999px;
  font-size: 10.5px; font-weight: 650;
  color: var(--p-text-subdued);
  background: #fff;
  border: 1px solid var(--p-border);
}
.pay-havale-note-badge svg { width: 10px; height: 10px; }

.pay-card-maint p { margin: 8px 0 0; font-size: 13.5px; line-height: 1.55; color: var(--p-text); }
.pay-card-maint p:first-of-type { margin-top: 6px; }
.pay-method-body small strong { color: var(--p-brand-text, var(--p-brand)); font-weight: 700; }
.pay-havale-note-p {
  margin: 4px 0 0;
  font-size: 12px; line-height: 1.45;
  color: var(--p-text-subdued);
}.card-form {
  padding: 14px; border: 1px solid var(--p-border); border-radius: var(--p-r-3);
  background: var(--p-bg-subdued);
}
.card-form .field { margin-bottom: 10px; }
.card-form .form-grid { margin: 0; }
.btn.is-disabled,
button[data-pay-submit]:disabled {
  opacity: .45; cursor: not-allowed; pointer-events: none;
}

/* Checkout iade taahhüdü */
.checkout-return-pledge{
  display:flex; gap:12px; align-items:flex-start;
  margin-top:14px; padding:12px 12px;
  border:1px solid var(--p-border); border-radius:var(--p-r-3);
  background: color-mix(in srgb, var(--p-brand-subdued) 55%, #fff);
}
.checkout-return-pledge .return-pledge-ic{
  width:34px; height:34px; border-radius: var(--p-r-3); flex-shrink:0;
  display:flex; align-items:center; justify-content:center;
  background:#fff; color:var(--p-brand); border:1px solid var(--p-border);
}
.checkout-return-pledge .return-pledge-ic svg{ width:17px; height:17px; }
.checkout-return-pledge strong{
  display:block; font-size:13px; margin-bottom:2px; letter-spacing:-.01em;
}
.checkout-return-pledge p{
  margin:0 0 5px; font-size:12.5px; color:var(--p-text-subdued); line-height:1.45;
}
.checkout-return-pledge a{
  font-size:12.5px; font-weight:700; color:var(--p-brand); text-decoration:none;
}
.checkout-return-pledge a:hover{ text-decoration:underline; }

/* ── Sizden Gelenler (community / photo reviews) ─────────────── */
.sg-page { max-width: 1120px; margin: 0 auto; padding: 8px 16px 48px; }
.sg-crumb { margin: 8px 0 18px; }
.sg-hero {
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) minmax(240px, .7fr);
  gap: 20px 28px;
  align-items: stretch;
  margin-bottom: 22px;
}
.sg-kicker {
  display: inline-flex; align-items: center; gap: 6px;
  margin: 0 0 8px; font-size: 12.5px; font-weight: 700;
  color: var(--p-brand-text); letter-spacing: -.01em;
}
.sg-kicker svg { width: 14px; height: 14px; color: var(--p-brand); }
.sg-title {
  margin: 0 0 10px; font-size: clamp(1.7rem, 3.2vw, 2.35rem);
  font-weight: 800; letter-spacing: -.03em; line-height: 1.15; color: var(--p-text);
}
.sg-lead {
  margin: 0 0 18px; max-width: 42rem;
  font-size: 15.5px; line-height: 1.55; color: var(--p-text-subdued);
}
.sg-hero-stats {
  display: flex; flex-wrap: wrap; gap: 10px;
}
.sg-stat {
  min-width: 112px; padding: 10px 12px;
  background: var(--p-bg-surface); border: 1px solid var(--p-border);
  border-radius: var(--p-r-card);
}
.sg-stat strong {
  display: block; font-size: 1.25rem; font-weight: 800;
  letter-spacing: -.02em; color: var(--p-text); line-height: 1.1;
}
.sg-stat span {
  display: block; margin-top: 3px; font-size: 11.5px;
  font-weight: 600; color: var(--p-text-subdued);
}
.sg-hero-note {
  padding: 18px 18px 16px;
  background: linear-gradient(160deg, #fff8f1 0%, #fff 55%);
  border: 1px solid rgba(242, 122, 26, .22);
  border-radius: var(--p-r-4);
  display: flex; flex-direction: column; justify-content: space-between; gap: 14px;
}
.sg-hero-note p {
  margin: 0; font-size: 14.5px; line-height: 1.5; color: var(--p-text);
}
.sg-hero-note a {
  display: inline-flex; align-items: center; gap: 4px;
  font-size: 13.5px; font-weight: 700; color: var(--p-brand); text-decoration: none;
}
.sg-hero-note a svg { width: 15px; height: 15px; }
.sg-hero-note a:hover { text-decoration: underline; }

.sg-trust-wrap { margin: 0 0 28px; }
.sg-trust-banner {
  display: block;
  margin: 0 0 12px;
  line-height: 0;
  border-radius: var(--p-r-4);
  overflow: hidden;
  border: 1px solid var(--p-border);
  background: var(--p-bg-surface);
}
.sg-trust-banner img {
  display: block;
  max-width: 100%;
  width: auto;
  height: auto;
  margin: 0 auto;
}
.sg-trust {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
}
.sg-trust-card {
  display: flex; gap: 10px; align-items: flex-start;
  padding: 12px;
  background: var(--p-bg-surface);
  border: 1px solid var(--p-border);
  border-radius: var(--p-r-4);
}
.sg-trust-ic {
  width: 34px; height: 34px; flex-shrink: 0;
  display: flex; align-items: center; justify-content: center;
  border-radius: var(--p-r-3); background: var(--p-bg-subdued); color: var(--p-brand);
}
.sg-trust-ic svg { width: 17px; height: 17px; }
.sg-trust-card strong {
  display: block; font-size: 13px; font-weight: 700; margin-bottom: 2px; letter-spacing: -.01em;
}
.sg-trust-card p {
  margin: 0; font-size: 12.5px; line-height: 1.4; color: var(--p-text-subdued);
}

.sg-feed-head { margin: 0 0 14px; }
.sg-feed-head h2 {
  margin: 0 0 4px; font-size: 1.2rem; font-weight: 800; letter-spacing: -.02em;
}
.sg-feed-head p { margin: 0; font-size: 13.5px; color: var(--p-text-subdued); }

.sg-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}
.sg-card {
  display: flex; flex-direction: column;
  background: var(--p-bg-surface);
  border: 1px solid var(--p-border);
  border-radius: var(--p-r-4);
  overflow: hidden;
  min-width: 0;
}
.sg-card-media {
  position: relative; display: block; width: 100%;
  aspect-ratio: 1; padding: 0; border: 0; cursor: pointer;
  background: var(--p-bg-subdued); overflow: hidden;
}
.sg-card-media img {
  width: 100%; height: 100%; object-fit: cover; display: block;
  transition: transform .35s ease;
}
.sg-card-media:hover img { transform: scale(1.03); }
.sg-card-badge {
  position: absolute; left: 10px; bottom: 10px;
  display: inline-flex; align-items: center; gap: 4px;
  padding: 4px 8px; border-radius: var(--p-r-full);
  background: rgba(24, 24, 27, .72); color: #fff;
  font-size: 11.5px; font-weight: 700;
}
.sg-card-badge svg { width: 12px; height: 12px; }
.sg-card-body { padding: 12px 12px 14px; display: flex; flex-direction: column; gap: 10px; flex: 1; }
.sg-card-meta { display: flex; align-items: center; gap: 8px; }
.sg-avatar {
  width: 32px; height: 32px; border-radius: 50%; flex-shrink: 0;
  display: flex; align-items: center; justify-content: center;
  background: #fff1e6; color: var(--p-brand-text);
  font-size: 13px; font-weight: 800;
}
.sg-card-who { min-width: 0; display: flex; flex-direction: column; align-items: flex-start; gap: 3px; }
.sg-card-who strong {
  display: block; font-size: 13px; font-weight: 700;
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 100%;
}
.sg-card-who > span {
  display: flex; align-items: center; gap: 4px;
  font-size: 11.5px; color: var(--p-text-subdued); font-weight: 600;
}
.sg-card-who .stars { font-size: 11px; letter-spacing: .5px; color: #f5a623; }
.sg-verified {
  display: inline-flex; align-items: center; gap: 3px;
  font-size: 10px; font-weight: 700; color: var(--p-success);
  background: var(--p-success-bg); padding: 2px 7px; border-radius: var(--p-r-full);
  line-height: 1.25; max-width: 100%;
}
.sg-verified svg { width: 10px; height: 10px; flex-shrink: 0; }
.sg-modal-who { display: flex; flex-direction: column; align-items: flex-start; gap: 4px; }
.sg-modal-who .sg-verified { margin: 0; }
.sg-card-text {
  margin: 0; font-size: 13px; line-height: 1.45; color: var(--p-text);
  display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden;
}
.sg-card-product {
  margin-top: auto; display: flex; align-items: center; gap: 8px;
  padding-top: 8px; border-top: 1px solid var(--p-border);
  text-decoration: none; color: var(--p-text-subdued); font-size: 12px; font-weight: 600;
}
.sg-card-product img {
  width: 36px; height: 36px; border-radius: var(--p-r-2); object-fit: cover;
  background: var(--p-bg-subdued); flex-shrink: 0;
}
.sg-card-product span {
  min-width: 0; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
  color: var(--p-text); line-height: 1.3;
}
.sg-card-product:hover span { color: var(--p-brand); }

.sg-pager {
  display: flex; align-items: center; justify-content: center; gap: 12px;
  margin: 22px 0 8px;
}
.sg-pager-status { font-size: 13px; font-weight: 700; color: var(--p-text-subdued); }
.sg-lazy {
  display: flex; align-items: center; justify-content: center; gap: 10px;
  margin: 22px 0 6px; min-height: 44px;
  color: var(--p-text-subdued); font-size: 13px; font-weight: 600;
}
.sg-lazy[hidden], .sg-lazy-end[hidden] { display: none !important; }
.sg-lazy-spin {
  width: 18px; height: 18px; border-radius: 50%;
  border: 2px solid var(--p-border);
  border-top-color: var(--p-brand);
  opacity: 0;
  visibility: hidden;
}
.sg-lazy.is-loading .sg-lazy-spin {
  opacity: 1;
  visibility: visible;
  animation: sgSpin .7s linear infinite;
}
.sg-lazy-txt { opacity: .85; }
.sg-lazy.is-loading .sg-lazy-txt { opacity: 1; }
@keyframes sgSpin { to { transform: rotate(360deg); } }
.sg-lazy-end {
  text-align: center; margin: 10px 0 0;
  font-size: 13px; font-weight: 600; color: var(--p-text-subdued);
}
@media (prefers-reduced-motion: reduce) {
  .sg-lazy.is-loading .sg-lazy-spin { animation: none; }
}
.sg-empty {
  text-align: center; padding: 40px 16px;
  border: 1px dashed var(--p-border); border-radius: var(--p-r-4); background: var(--p-bg-surface);
}
.sg-empty p { margin: 0 0 14px; color: var(--p-text-subdued); }

.sg-info {
  display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr);
  gap: 18px 28px; margin: 36px 0 28px; align-items: start;
}
.sg-info-copy h2 {
  margin: 0 0 8px; font-size: 1.25rem; font-weight: 800; letter-spacing: -.02em;
}
.sg-info-copy p { margin: 0; font-size: 14px; line-height: 1.5; color: var(--p-text-subdued); }
.sg-faq { display: flex; flex-direction: column; gap: 8px; }
.sg-faq-item {
  border: 1px solid var(--p-border); border-radius: var(--p-r-card);
  background: var(--p-bg-surface); padding: 0 14px;
}
.sg-faq-item summary {
  cursor: pointer; list-style: none; padding: 13px 0;
  font-size: 14px; font-weight: 700; letter-spacing: -.01em;
}
.sg-faq-item summary::-webkit-details-marker { display: none; }
.sg-faq-item p {
  margin: 0 0 13px; font-size: 13.5px; line-height: 1.5; color: var(--p-text-subdued);
}
.sg-faq-item a { color: var(--p-brand); font-weight: 700; text-decoration: none; }
.sg-faq-item a:hover { text-decoration: underline; }

.sg-cta {
  display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between;
  gap: 14px 20px; padding: 18px 18px;
  background: var(--p-bg-subdued); border: 1px solid var(--p-border); border-radius: var(--p-r-4);
}
.sg-cta h2 { margin: 0 0 4px; font-size: 1.15rem; font-weight: 800; letter-spacing: -.02em; }
.sg-cta p { margin: 0; font-size: 13.5px; color: var(--p-text-subdued); line-height: 1.45; }
.sg-cta-actions { display: flex; flex-wrap: wrap; gap: 8px; }

.sg-modal[hidden] { display: none !important; }
.sg-modal {
  position: fixed; inset: 0; z-index: 80;
  display: flex; align-items: center; justify-content: center; padding: 16px;
}
.sg-modal-backdrop {
  position: absolute; inset: 0; background: rgba(24, 24, 27, .55); cursor: pointer;
}
.sg-modal-panel {
  position: relative; z-index: 1; width: min(920px, 100%);
  max-height: min(90vh, 820px); overflow: auto;
  display: grid; grid-template-columns: 1.1fr .9fr;
  background: #fff; border-radius: var(--p-r-5);
  box-shadow: 0 24px 64px rgba(0,0,0,.22);
}
.sg-modal-x {
  position: absolute; top: 10px; right: 10px; z-index: 2;
  width: 36px; height: 36px; border: 0; border-radius: 50%;
  background: rgba(255,255,255,.92); color: var(--p-text); cursor: pointer;
  display: flex; align-items: center; justify-content: center;
}
.sg-modal-x svg { width: 18px; height: 18px; }
.sg-modal-media {
  background: #111; display: flex; flex-direction: column; min-height: 280px;
}
.sg-modal-media > img {
  width: 100%; flex: 1; min-height: 260px; max-height: 520px;
  object-fit: contain; background: #111;
}
.sg-modal-thumbs {
  display: flex; gap: 6px; padding: 8px; overflow-x: auto;
  background: #0a0a0a;
}
.sg-modal-thumb {
  flex: 0 0 auto; width: 52px; height: 52px; padding: 0; border: 2px solid transparent;
  border-radius: var(--p-r-2); overflow: hidden; cursor: pointer; background: #222;
}
.sg-modal-thumb.on { border-color: #fff; }
.sg-modal-thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
.sg-modal-copy { padding: 22px 20px 20px; }
.sg-modal-who { margin-bottom: 12px; }
.sg-modal-who strong { display: block; font-size: 16px; font-weight: 800; margin-bottom: 4px; }
.sg-modal-who span { font-size: 13px; color: var(--p-text-subdued); font-weight: 600; }
.sg-modal-copy > p {
  margin: 0 0 16px; font-size: 14.5px; line-height: 1.55; color: var(--p-text);
  white-space: pre-wrap;
}
.sg-modal-product {
  display: inline-flex; font-size: 13.5px; font-weight: 700;
  color: var(--p-brand); text-decoration: none;
}
.sg-modal-product:hover { text-decoration: underline; }

@media (max-width: 960px) {
  .sg-hero { grid-template-columns: 1fr; }
  .sg-trust { grid-template-columns: 1fr 1fr; }
  .sg-grid { grid-template-columns: 1fr 1fr; }
  .sg-info { grid-template-columns: 1fr; }
  .sg-modal-panel { grid-template-columns: 1fr; }
}
@media (max-width: 560px) {
  .sg-page { padding: 4px 12px 36px; }
  .sg-trust { grid-template-columns: 1fr; }
  .sg-grid { grid-template-columns: 1fr; gap: 12px; }
  .sg-cta { padding: 16px; }
  .sg-cta-actions { width: 100%; }
  .sg-cta-actions .btn { flex: 1 1 auto; justify-content: center; }
  .sg-stat { min-width: calc(50% - 6px); flex: 1 1 calc(50% - 6px); }
}
@media (prefers-reduced-motion: reduce) {
  .sg-card-media img { transition: none; }
}


/* ---------- Alışveriş geçmişi (hist-*) ---------- */
.hist-rail {
  margin: 28px 0 8px;
  padding: 0;
}
.hist-rail[hidden] { display: none !important; }
.hist-rail-head {
  display: flex; align-items: flex-end; justify-content: space-between;
  gap: 12px; margin-bottom: 14px;
}
.hist-rail-title {
  margin: 0; font-family: var(--p-font); font-size: 1.15rem; font-weight: 700;
  color: var(--p-text); letter-spacing: -0.01em;
}
.hist-rail-sub {
  margin: 4px 0 0; font-size: 13px; color: var(--p-text-subdued); line-height: 1.4;
}
.hist-rail-nav { display: flex; gap: 6px; flex: none; }
.hist-rail-btn {
  width: 36px; height: 36px; border-radius: 10px; border: 1px solid var(--p-border);
  background: #fff; color: var(--p-text); cursor: pointer;
  display: grid; place-items: center;
}
.hist-rail-btn:hover { background: var(--p-bg-subdued); }
.hist-rail-track {
  display: flex; gap: 12px; overflow-x: auto; scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch; padding-bottom: 4px;
  scrollbar-width: thin;
}
.hist-card {
  flex: 0 0 260px; scroll-snap-align: start;
  display: flex; gap: 12px; align-items: stretch;
  min-height: 118px; padding: 10px;
  background: #fff; border: 1px solid var(--p-border); border-radius: 14px;
}
.hist-card-media, .hist-row-media {
  flex: none; width: 72px; height: 72px; border-radius: 10px; overflow: hidden;
  background: var(--p-bg-subdued); align-self: center;
}
.hist-card-media img, .hist-row-media img,
.hist-ph { width: 100%; height: 100%; object-fit: cover; display: block; }
.hist-ph { background: linear-gradient(135deg, #eee, #ddd); }
.hist-card-body, .hist-row-body { min-width: 0; flex: 1; display: flex; flex-direction: column; gap: 2px; }
.hist-card-title, .hist-row-title {
  font-size: 13px; font-weight: 600; color: var(--p-text); line-height: 1.35;
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
  text-decoration: none;
}
.hist-attrs { font-size: 11px; color: var(--p-text-subdued); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.hist-card-price { font-size: 14px; font-weight: 700; color: var(--p-text); display: flex; align-items: baseline; gap: 6px; flex-wrap: wrap; }
.hist-was { font-size: 12px; font-weight: 500; color: var(--p-text-subdued); text-decoration: line-through; }
.hist-stock { font-size: 11px; font-weight: 600; color: var(--p-success); }
.hist-stock.is-out { color: var(--p-critical); }
.hist-card-actions { display: flex; align-items: center; gap: 6px; margin-top: auto; padding-top: 6px; }
.hist-cta { padding: 6px 10px !important; font-size: 12px !important; min-height: 0 !important; border-radius: 8px !important; }
.hist-fav {
  width: 32px; height: 32px; border-radius: 8px; border: 1px solid var(--p-border);
  background: #fff; color: var(--p-text-subdued); cursor: pointer;
  display: grid; place-items: center; flex: none;
}
.hist-fav[aria-pressed="true"], .hist-fav.on { color: var(--p-critical); border-color: #f0c2c2; }

.hist-fab {
  display: none; position: fixed; right: 20px; bottom: 24px; z-index: 48;
  align-items: center; gap: 8px; padding: 10px 14px;
  background: #fff; color: var(--p-text); border: 1px solid var(--p-border);
  border-radius: 999px; cursor: pointer; font-family: var(--p-font);
  font-size: 13px; font-weight: 600; box-shadow: 0 2px 10px rgba(0,0,0,.06);
}
.hist-fab svg { width: 18px; height: 18px; }
.hist-fab-count {
  min-width: 20px; height: 20px; padding: 0 6px; border-radius: 999px;
  background: var(--p-brand); color: #fff; font-size: 11px; font-weight: 700;
  display: inline-grid; place-items: center;
}
@media (min-width: 901px) {
  .hist-fab:not([hidden]) { display: inline-flex; }
  .hist-fab { bottom: 20px; right: 20px; }
}
.hist-overlay, .hist-sheet-overlay {
  position: fixed; inset: 0; z-index: 120; background: rgba(17,17,17,.42);
  -webkit-tap-highlight-color: transparent;
}
.hist-overlay[hidden], .hist-sheet-overlay[hidden],
.hist-drawer[hidden], .hist-sheet[hidden], .hist-fab[hidden] { display: none !important; }
body.hist-open .hist-overlay,
body.hist-sheet-open .hist-sheet-overlay { display: block; }

.hist-drawer {
  position: fixed; top: 0; right: 0; bottom: 0; z-index: 121;
  width: min(400px, 100vw); background: #fff;
  border-left: 1px solid var(--p-border);
  display: flex; flex-direction: column;
  transform: translateX(100%); transition: transform .22s ease;
  pointer-events: none;
}
body.hist-open .hist-drawer { transform: translateX(0); pointer-events: auto; }
.hist-drawer-head, .hist-sheet-head {
  display: flex; align-items: flex-start; justify-content: space-between;
  gap: 12px; padding: 18px 18px 10px;
}
.hist-drawer-title, .hist-sheet-title {
  margin: 0; font-size: 1.1rem; font-weight: 700; font-family: var(--p-font);
}
.hist-drawer-sub { margin: 4px 0 0; font-size: 13px; color: var(--p-text-subdued); }
.hist-drawer-x {
  width: 40px; height: 40px; border: 0; background: var(--p-bg-subdued);
  border-radius: 10px; cursor: pointer; display: grid; place-items: center; flex: none;
}
.hist-drawer-x svg { width: 18px; height: 18px; }
.hist-drawer-tools, .hist-sheet-foot {
  display: flex; gap: 12px; padding: 0 18px 10px; flex-wrap: wrap;
}
.hist-link-btn {
  background: none; border: 0; padding: 0; cursor: pointer;
  font-size: 13px; font-weight: 600; color: var(--p-brand); font-family: inherit;
}
.hist-link-btn.muted { color: var(--p-text-subdued); font-weight: 500; }
.hist-drawer-list, .hist-sheet-body {
  flex: 1; overflow-y: auto; -webkit-overflow-scrolling: touch;
  padding: 4px 14px 18px;
  display: flex; flex-direction: column; gap: 10px;
  overscroll-behavior: contain;
}
.hist-drawer-foot { padding: 12px 18px 18px; border-top: 1px solid var(--p-border); }
.hist-row {
  display: flex; gap: 12px; padding: 10px;
  border: 1px solid var(--p-border); border-radius: 12px; background: #fff;
}
.hist-time { font-size: 11px; color: var(--p-text-subdued); }
.hist-empty { margin: 24px 8px; text-align: center; color: var(--p-text-subdued); font-size: 14px; }

.hist-sheet {
  position: fixed; left: 0; right: 0; bottom: 0; z-index: 122;
  max-height: min(88vh, 720px); background: #fff;
  border-radius: 18px 18px 0 0; border: 1px solid var(--p-border);
  display: flex; flex-direction: column;
  transform: translateY(110%); transition: transform .22s ease;
  padding-bottom: max(12px, env(safe-area-inset-bottom));
  pointer-events: none;
  box-shadow: 0 -8px 32px rgba(0,0,0,.12);
}
body.hist-sheet-open .hist-sheet { transform: translateY(0); pointer-events: auto; }
.hist-sheet-handle {
  width: 40px; height: 4px; border-radius: 999px; background: #ddd;
  margin: 10px auto 0;
}
.hist-sheet-tabs {
  display: flex; gap: 6px; padding: 0 14px 10px; overflow-x: auto;
  scrollbar-width: none; -webkit-overflow-scrolling: touch;
}
.hist-sheet-tabs::-webkit-scrollbar { display: none; }
.hist-sheet-tab {
  flex: none; padding: 8px 12px; border-radius: 999px;
  border: 1px solid var(--p-border); background: #fff;
  font-size: 12px; font-weight: 600; cursor: pointer; font-family: inherit;
  color: var(--p-text-subdued);
}
.hist-sheet-tab.on { background: var(--p-text); color: #fff; border-color: var(--p-text); }
.hist-sheet-tab.is-soon { opacity: .45; cursor: not-allowed; }
body.hist-open, body.hist-sheet-open { overflow: hidden; }
body.hist-sheet-open .tabbar { pointer-events: none; }

.hist-rail--cart { margin-top: 28px; margin-bottom: 8px; }
.hist-rail--pdp { margin-top: 36px; margin-bottom: 12px; padding-top: 8px; border-top: 1px solid var(--p-border); }
@media (max-width: 900px) {
  .hist-rail-nav { display: none; }
  .hist-rail { margin: 20px 0 4px; }
  .hist-rail-title { font-size: 1.05rem; }
  .hist-rail-sub { font-size: 12.5px; }
  .hist-card {
    flex: 0 0 min(72vw, 240px); max-width: 240px;
    flex-direction: column; gap: 0; min-height: 0; padding: 0;
    overflow: hidden;
  }
  .hist-card-media {
    width: 100%; height: 140px; border-radius: 14px 14px 0 0; align-self: stretch;
  }
  .hist-card-body { padding: 10px 12px 12px; gap: 4px; }
  .hist-card-actions { padding-top: 8px; flex-wrap: wrap; }
  .hist-cta { flex: 1 1 auto; text-align: center; }
  .hist-fab, .hist-drawer, .hist-overlay { display: none !important; }
  .hist-sheet {
    max-height: min(85vh, 680px);
    padding-bottom: max(12px, env(safe-area-inset-bottom));
  }
  .hist-sheet-body { padding-bottom: 16px; }
  .hist-row { align-items: flex-start; }
  .hist-row-media { width: 64px; height: 64px; align-self: flex-start; margin-top: 2px; }
  .hist-row .hist-card-actions { flex-wrap: wrap; }
  .hist-sheet-foot { padding-bottom: 8px; }
}
@media (min-width: 901px) {
  .hist-sheet, .hist-sheet-overlay { display: none !important; }
}
/* ========== Blog ========== */
.blog-list-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin:8px 0 18px;flex-wrap:wrap}
.blog-list-title{margin:0;font-size:clamp(1.6rem,3vw,2.1rem);font-weight:800;letter-spacing:-.02em;color:var(--p-text)}
.blog-list-desc{margin:8px 0 0;max-width:48ch;font-size:14.5px;line-height:1.5;color:var(--p-text-subdued)}
.blog-filters{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 18px}
.blog-chip{display:inline-flex;align-items:center;padding:5px 11px;border-radius:var(--p-r-full);border:1px solid var(--p-border);background:#fff;font-size:12px;font-weight:700;color:var(--p-text-subdued);text-decoration:none}
.blog-chip.is-active,.blog-chip:hover{border-color:var(--p-brand,#f27a1a);color:var(--p-brand-text,#c2410c)}
a.blog-chip{cursor:pointer}
.blog-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;margin-bottom:28px}
.blog-card{display:flex;flex-direction:column;border:1px solid var(--p-border);border-radius:var(--p-r-card,14px);overflow:hidden;background:var(--p-bg-surface,#fff);text-decoration:none;color:inherit;transition:border-color .15s,transform .15s}
.blog-card:hover{border-color:var(--p-brand,#f27a1a);transform:translateY(-2px)}
.blog-card-media{aspect-ratio:16/9;background:var(--p-bg-subdued,#f5f5f5);overflow:hidden}
.blog-card-media.is-empty{background:linear-gradient(135deg,#f7f7f8,#ececec)}
.blog-card-media img{width:100%;height:100%;object-fit:cover;display:block}
.blog-card-body{display:flex;flex-direction:column;gap:8px;padding:14px 14px 16px;flex:1}
.blog-card-body h2,.blog-card-body h3{margin:0;font-size:16px;font-weight:800;line-height:1.3;color:var(--p-text)}
.blog-card-body p{margin:0;font-size:13.5px;line-height:1.5;color:var(--p-text-subdued);flex:1}
.blog-card-body time{font-size:12px;font-weight:600;color:var(--p-text-subdued)}
.blog-pager{display:flex;align-items:center;justify-content:center;gap:14px;margin:8px 0 32px}
.blog-post{max-width:760px;margin:0 auto 40px}
.blog-post-cover{margin:0 0 20px;border-radius:var(--p-r-card,14px);overflow:hidden;background:var(--p-bg-subdued)}
.blog-post-cover img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
.blog-post-head{margin-bottom:18px}
.blog-post-title{margin:10px 0 12px;font-size:clamp(1.55rem,3.2vw,2.15rem);font-weight:800;letter-spacing:-.02em;line-height:1.2;color:var(--p-text)}
.blog-post-meta{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center;font-size:13px;font-weight:600;color:var(--p-text-subdued)}
.blog-post-tags{display:inline-flex;flex-wrap:wrap;gap:6px}
.blog-post-tags span{font-weight:700;color:var(--p-brand-text,#c2410c)}
.blog-post-lead{margin:14px 0 0;font-size:16px;line-height:1.55;color:var(--p-text-subdued)}
.blog-post-body{margin-top:8px;font-size:15.5px;line-height:1.7}
.blog-post-body img{max-width:100%;height:auto;border-radius:10px}
.blog-post-foot{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px;padding-top:18px;border-top:1px solid var(--p-border)}
.blog-related{margin:10px 0 40px}
.blog-section-title{margin:0 0 14px;font-size:1.25rem;font-weight:800}
@media (max-width:640px){
  .blog-list-head{align-items:flex-start}
  .blog-grid{grid-template-columns:1fr;gap:12px}
}

/* ========== Blog v2 ========== */
.blog-search{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:0 0 16px}
.blog-search .input{flex:1;min-width:180px}
.blog-tag-cloud{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 16px}
.blog-featured{margin:0 0 28px}
.blog-grid-featured{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}
.blog-card.is-featured{border-color:rgba(242,122,26,.45);box-shadow:0 8px 24px rgba(0,0,0,.06)}
.blog-chip.is-featured{background:var(--p-brand,#f27a1a);border-color:transparent;color:#fff}
.blog-layout{display:block;max-width:760px;margin:0 auto 40px}
.blog-layout.has-toc{max-width:1100px;display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:28px;align-items:start}
.blog-post{max-width:none;margin:0}
.blog-post-badges{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}
.blog-toc{background:var(--p-bg-subdued,#f7f7f8);border:1px solid var(--p-border);border-radius:12px;padding:12px 14px}
.blog-toc-title{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--p-text-subdued);margin-bottom:8px}
.blog-toc ol{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:6px}
.blog-toc a{font-size:13px;font-weight:600;color:var(--p-text);text-decoration:none;line-height:1.35}
.blog-toc a:hover{color:var(--p-brand-text,#c2410c)}
.blog-toc li.lv3{padding-left:12px}
.blog-toc-side{display:none}
.blog-toc-sticky{position:sticky;top:88px}
.blog-toc-mobile{margin:0 0 18px}
.blog-share{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:22px 0 8px;padding-top:16px;border-top:1px solid var(--p-border)}
.blog-share-label{font-size:12.5px;font-weight:800;color:var(--p-text-subdued);margin-right:4px}
.blog-post-nav{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:20px 0}
.blog-post-nav-item{display:flex;flex-direction:column;gap:4px;padding:12px 14px;border:1px solid var(--p-border);border-radius:12px;text-decoration:none;color:inherit;background:#fff}
.blog-post-nav-item span{font-size:11.5px;font-weight:700;color:var(--p-text-subdued)}
.blog-post-nav-item strong{font-size:13.5px;line-height:1.35}
.blog-post-nav-item.next{text-align:right}
.blog-post-nav-item:hover{border-color:var(--p-brand,#f27a1a)}
.blog-products{margin:28px 0 8px}
.blog-prod-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px}
.blog-prod-card{display:flex;gap:10px;align-items:center;padding:10px;border:1px solid var(--p-border);border-radius:12px;text-decoration:none;color:inherit;background:#fff}
.blog-prod-card:hover{border-color:var(--p-brand,#f27a1a)}
.blog-prod-media{width:56px;height:56px;border-radius:8px;overflow:hidden;background:var(--p-bg-subdued);flex-shrink:0}
.blog-prod-media img{width:100%;height:100%;object-fit:cover;display:block}
.blog-prod-body{display:flex;flex-direction:column;gap:2px;min-width:0}
.blog-prod-body strong{font-size:13px;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.blog-prod-body span{font-size:12.5px;font-weight:700;color:var(--p-brand-text,#c2410c)}
.blog-post-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.blog-post-tags a{font-size:12px;font-weight:700;color:var(--p-brand-text,#c2410c);text-decoration:none}
@media (min-width:960px){
  .blog-layout.has-toc .blog-toc-side{display:block}
  .blog-layout.has-toc .blog-toc-mobile{display:none}
}
@media (max-width:959px){
  .blog-layout.has-toc{grid-template-columns:1fr;max-width:760px}
  .blog-post-nav{grid-template-columns:1fr}
  .blog-post-nav-item.next{text-align:left}
}

/* Blog reviews + comments */
.blog-reviews{display:flex;flex-direction:column;gap:12px;margin:16px 0 22px}
.blog-review{margin:0;padding:14px 16px;border:1px solid var(--p-border);border-radius:12px;background:var(--p-bg-subdued,#f7f7f8)}
.blog-review-head{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center;margin-bottom:6px}
.blog-review-stars{color:#f5a524;letter-spacing:1px;font-size:13px}
.blog-review p{margin:0;font-size:14.5px;line-height:1.55;color:var(--p-text)}
.blog-review footer{margin-top:8px;font-size:12px;font-weight:600;color:var(--p-text-subdued)}
.blog-faq{margin:8px 0 16px}
.blog-faq h3{margin:16px 0 6px;font-size:1.05rem}
.blog-comments{margin:28px 0 8px;padding-top:18px;border-top:1px solid var(--p-border)}
.blog-comment-flash{padding:10px 12px;border-radius:10px;font-size:13.5px;font-weight:600;margin-bottom:12px}
.blog-comment-flash.is-ok{background:#ecfdf5;color:#065f46;border:1px solid #a7f3d0}
.blog-comment-flash.is-err{background:#fef2f2;color:#991b1b;border:1px solid #fecaca}
.blog-comment-list{list-style:none;margin:0 0 18px;padding:0;display:flex;flex-direction:column;gap:12px}
.blog-comment{padding:12px 14px;border:1px solid var(--p-border);border-radius:12px;background:#fff}
.blog-comment-head{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center;margin-bottom:6px;font-size:13px}
.blog-comment-head time{color:var(--p-text-subdued);font-weight:600}
.blog-comment p{margin:0;font-size:14.5px;line-height:1.55}
.blog-comments-empty{font-size:14px;color:var(--p-text-subdued);margin:0 0 14px}
.blog-comment-form{display:flex;flex-direction:column;gap:10px;padding:14px;border:1px solid var(--p-border);border-radius:12px;background:var(--p-bg-subdued,#f7f7f8)}
.blog-comment-grid{display:grid;grid-template-columns:1fr 1fr 120px;gap:10px}
.blog-comment-form .field{margin:0}
.blog-comment-form .muted{font-weight:500;color:var(--p-text-subdued);font-size:12px}
@media (max-width:720px){
  .blog-comment-grid{grid-template-columns:1fr}
}

/* Hoş geldin açılır pencere — ilk ziyaret, tek sefer */
html.sp-welcome-open,
html.sp-welcome-open body { overflow: hidden; }
.sp-welcome-popup {
  position: fixed; inset: 0; z-index: 10050;
  display: grid; place-items: center;
  padding: 16px;
  opacity: 0; pointer-events: none;
  transition: opacity .22s ease;
}
.sp-welcome-popup[hidden] { display: none !important; }
.sp-welcome-popup.on { opacity: 1; pointer-events: auto; }
.sp-welcome-popup-backdrop {
  position: absolute; inset: 0;
  background: rgba(17, 24, 39, .58);
  border: 0; cursor: pointer;
}
.sp-welcome-popup-sheet {
  position: relative; z-index: 1;
  width: min(800px, calc(100vw - 32px));
  max-height: calc(100dvh - 32px);
  transform: translateY(8px) scale(.98);
  transition: transform .22s ease;
}
.sp-welcome-popup.on .sp-welcome-popup-sheet { transform: none; }
.sp-welcome-popup-close {
  position: absolute; top: 10px; right: 10px; z-index: 3;
  width: 44px; height: 44px; border: 0; border-radius: 50%;
  background: rgba(0, 0, 0, .52); color: #fff;
  display: grid; place-items: center;
  cursor: pointer; font-size: 28px; line-height: 1;
  backdrop-filter: blur(6px);
  -webkit-tap-highlight-color: transparent;
}
.sp-welcome-popup-close span { display: block; margin-top: -2px; }
.sp-welcome-popup-media {
  width: 100%; aspect-ratio: 1 / 1;
  max-height: min(800px, calc(100dvh - 48px));
  background: #fff; border-radius: 14px;
  overflow: hidden;
  box-shadow: 0 18px 48px rgba(0, 0, 0, .28);
}
.sp-welcome-popup-media img {
  width: 100%; height: 100%;
  object-fit: contain; display: block;
}
@media (max-width: 640px) {
  .sp-welcome-popup { padding: 12px; }
  .sp-welcome-popup-sheet { width: min(800px, calc(100vw - 24px)); }
  .sp-welcome-popup-close { top: 8px; right: 8px; width: 40px; height: 40px; font-size: 24px; }
}
