﻿/* ============ DropShip — Temalı Tasarım Sistemi ============ */
/* Varsayılan tema: AK Lime (sportif). Diğer şablonlar [data-theme] ile uygulanır. */
:root {
  --primary: #a4d037;
  --primary-dark: #8cbf22;
  --primary-light: #f1f8de;
  --on-primary: #14161c;     /* --primary üzerine gelen metin rengi */
  --ink: #14161c;
  --ink-soft: #2a2d36;
  --bg: #ffffff;
  --bg-soft: #f4f5ef;
  --surface: #ffffff;
  --muted: #6b7280;
  --line: #ebedf0;
  --success: #2f9e1f;
  --danger: #e11d48;
  /* Bölüm renkleri (editörden düzenlenebilir) — varsayılanlar mevcut görünümle aynı */
  --header-bg: #ffffff;
  --header-ink: #2a2d36;
  --footer-bg: #0f1115;
  --footer-ink: #c7cad6;
  --footer-head: #ffffff;
  --footer-link: #9aa0b4;
  --card-bg: #ffffff;
  --radius: 14px;
  --radius-sm: 10px;
  --shadow-sm: 0 1px 2px rgba(16,24,40,.06), 0 1px 3px rgba(16,24,40,.05);
  --shadow: 0 8px 26px rgba(16,24,40,.10);
  --shadow-lg: 0 16px 40px rgba(20,22,28,.18);

  --bs-primary: #a4d037;
  --bs-primary-rgb: 164,208,55;
  --bs-link-color: #14161c;
  --bs-link-hover-color: #8cbf22;
  --bs-body-color: #14161c;
  --bs-body-bg: #ffffff;
  --bs-border-color: #ebedf0;
}

/* Buton köşelerini her temanın --radius-sm değişkenine bağla (tema bazında değişsin) */
.btn { border-radius: var(--radius-sm); }
.btn-lg { border-radius: var(--radius-sm); }

/* ============================================================= */
/* ===  TEMAYA ÖZEL HEADER / LAYOUT İSKELETLERİ  ============== */
/* (her tema farklı header yapısı + içerik genişliği + sidebar)  */
/* ============================================================= */
.container-narrow { max-width:1080px; }
.container-wide { max-width:1480px; margin-left:auto; margin-right:auto; padding-left:1.2rem; padding-right:1.2rem; }
/* İçerik sayfaları (sepet/checkout/ödeme/detay): genişlik kullanılan header ile aynı
   (container ya da container-wide) — logo…sepet hizasında başlayıp bitsin. Ekstra cap yok. */
.content-page { margin-left:auto; margin-right:auto; }


/* ============================================================= */
/* ===  ÜST DUYURU BARI (temaya göre farklı)  ================= */
/* ============================================================= */
.topbar { background:var(--ink); color:var(--bg); font-size:.82rem; font-weight:600; text-align:center; padding:.45rem 0; letter-spacing:.02em; }
.topbar .container { display:flex; justify-content:center; align-items:center; }
[data-theme="ak"] .topbar { background:var(--primary); color:var(--on-primary); }

/* ============================================================= */
/* ===  TEMAYA ÖZEL HERO DÜZENLERİ (farklı HTML markup)  ====== */
/* ============================================================= */
.hero-eyebrow { display:inline-block; font-size:.8rem; font-weight:600; letter-spacing:.22em; text-transform:uppercase; color:var(--primary); margin-bottom:.5rem; }
.hero-cta { display:flex; flex-wrap:wrap; gap:1rem; align-items:center; margin-top:1.4rem; }
.hero-textlink { font-weight:600; text-transform:uppercase; letter-spacing:.08em; font-size:.85rem; color:var(--ink); border-bottom:1px solid currentColor; padding-bottom:2px; }

* { scroll-behavior: smooth; }

body { font-family: 'Inter', system-ui, -apple-system, Segoe UI, Roboto, sans-serif; background: var(--bg); color: var(--ink); margin-bottom: 0 !important; -webkit-font-smoothing: antialiased; }

h1, h2, h3, h4, h5, h6, .navbar-brand { font-family: 'Archivo','Inter',sans-serif; font-weight: 800; color: var(--ink); letter-spacing: -0.01em; }
h1, h2, .section-head h2, .hero-title { text-transform: uppercase; letter-spacing: .02em; }
a { text-decoration: none; }

/* ---------- Navbar ---------- */
.navbar { background: rgba(255,255,255,.92) !important; backdrop-filter: saturate(180%) blur(12px); border-bottom: 1px solid var(--line); box-shadow: var(--shadow-sm); padding-top: .6rem; padding-bottom: .6rem; }
.navbar-brand { font-size: 1.45rem; color: var(--ink) !important; display: inline-flex; align-items: center; gap: .4rem; text-transform: uppercase; }
.navbar-brand i { color: var(--primary); font-size: 1.5rem; }
/* Yüklenen firma logosu (üst menü + footer) */
/* Logo olcusu: --logo-h / --logo-mw tema editorunden gelir (Gorunum -> Logo & Menu).
   Verilmezse her basligin kendi varsayilani gecerlidir. */
.brand-logo { height: var(--logo-h, 42px); max-width: var(--logo-mw, 200px); width: auto; object-fit: contain; display: block; }
.brand-logo-footer { height: var(--logo-h, 48px); max-width: var(--logo-mw, 220px); }
/* Menu fontu tek kuraldan: hicbir baslik varyanti nav-link'e font-family vermiyor. */
.nav-link, .nav-dd a { font-family: var(--nav-font, inherit); }
.navbar .nav-link { color: var(--nav-ink, var(--ink-soft)) !important; font-weight: 600; border-radius: 8px; padding: .4rem .8rem !important; text-transform: uppercase; font-size: .9rem; letter-spacing: .02em; transition: all .15s ease; }
.navbar .nav-link:hover { color: var(--nav-ink-hover, var(--ink)) !important; background: var(--primary-light); }
.dropdown-menu { border:1px solid var(--line); border-radius: var(--radius-sm); box-shadow: var(--shadow); }
.dropdown-item { font-weight:500; padding:.45rem 1rem; }
.dropdown-item:hover { background: var(--primary-light); }

.cart-pill { position: relative; display: inline-flex; align-items: center; gap: .4rem; background: var(--primary); color: var(--on-primary) !important; padding: .45rem .9rem; border-radius: 999px; font-weight: 700; text-transform: uppercase; font-size: .85rem; transition: all .15s ease; }
.cart-pill:hover { transform: translateY(-1px); box-shadow: var(--shadow); color: var(--on-primary) !important; }
.cart-pill .badge-count { background: var(--ink); color: var(--bg); border-radius: 999px; font-size: .72rem; min-width: 20px; height: 20px; display: inline-flex; align-items: center; justify-content: center; padding: 0 5px; font-weight: 700; }

/* Üst sağ ikon butonları (giriş / kayıt / sepet / hesap) */
.hdr-icon { position: relative; width: 42px; height: 42px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; color: var(--ink); font-size: 1.3rem; text-decoration: none; border: none; background: transparent; transition: background .15s ease; }
.hdr-icon:hover { background: var(--primary-light); color: var(--ink); }
.hdr-icon::after { display: none !important; } /* dropdown caret gizle */
.hdr-icon .badge-count { position: absolute; top: 0; right: -1px; background: var(--ink); color: var(--bg); border: 2px solid var(--surface); border-radius: 999px; font-size: .64rem; min-width: 19px; height: 19px; line-height: 1; display: inline-flex; align-items: center; justify-content: center; padding: 0 4px; font-weight: 700; }

.nav-search { position: relative; min-width: 220px; }
.nav-search input { border-radius: 999px; border: 1px solid var(--line); background: #fff; padding: .5rem 1rem .5rem 2.4rem; width: 100%; }
.nav-search input:focus { border-color: var(--primary); box-shadow: 0 0 0 3px var(--primary-light); outline: none; }
.nav-search i { position: absolute; left: .9rem; top: 50%; transform: translateY(-50%); color: var(--muted); }

/* Sayfa genişliği: büyük ekranlarda sağ/sol boşluğu azalt (daha geniş içerik) */
@media (min-width: 1200px) { .container { max-width: 1540px; } }

/* Çoklu seçmeli filtre pill'leri (cinsiyet / numara / renk / stok durumu) */
.filter-checks { display: flex; flex-wrap: wrap; gap: .35rem; }
.filter-checks.scroll { max-height: 172px; overflow: auto; padding: 2px; }
.fchk { position: relative; display: inline-flex; align-items: center; padding: .32rem .72rem; border: 1px solid var(--line); border-radius: 999px; cursor: pointer; font-size: .84rem; user-select: none; margin: 0; background: #fff; transition: all .12s ease; }
.fchk input { position: absolute; opacity: 0; width: 0; height: 0; }
.fchk:hover { border-color: var(--primary); }
.fchk:has(input:checked) { background: var(--primary); border-color: var(--primary); color: var(--on-primary); font-weight: 600; }

/* Modern arama paneli (üstten animasyonla iner) */
.search-backdrop { position: fixed; inset: 0; background: rgba(15,18,22,.45); opacity: 0; visibility: hidden; transition: opacity .25s ease, visibility .25s; z-index: 1090; }
.search-backdrop.open { opacity: 1; visibility: visible; }
.search-panel { position: fixed; left: 0; right: 0; top: 0; background: var(--surface); box-shadow: var(--shadow); border-bottom: 1px solid var(--line); transform: translateY(-105%); opacity: 0; visibility: hidden; transition: transform .4s cubic-bezier(.16,1,.3,1), opacity .3s ease, visibility .4s; z-index: 1100; padding: 1.4rem 0; }
.search-panel.open { transform: translateY(0); opacity: 1; visibility: visible; }
.search-panel-form { display: flex; align-items: center; gap: .7rem; position: relative; max-width: 820px; margin: 0 auto; }
.search-panel-form > .bi-search { position: absolute; left: 1.2rem; font-size: 1.25rem; color: var(--muted); pointer-events: none; }
.search-panel-form input { flex: 1; font-size: 1.15rem; padding: .95rem 1.1rem .95rem 3.1rem; border: 2px solid var(--line); border-radius: 999px; transition: border-color .15s, box-shadow .15s; }
.search-panel-form input:focus { border-color: var(--primary); outline: none; box-shadow: 0 0 0 4px var(--primary-light); }
.search-close { background: transparent; border: none; font-size: 1.25rem; color: var(--muted); width: 44px; height: 44px; border-radius: 50%; flex-shrink: 0; transition: all .15s; }
.search-close:hover { background: var(--bg-soft); color: var(--ink); }
.search-hint { max-width: 820px; margin-left: auto; margin-right: auto; }

/* Yükleniyor (loading) overlay — filtre/sayfa geçişlerinde */
.loading-overlay { position: fixed; inset: 0; background: rgba(255,255,255,.6); backdrop-filter: blur(2px); display: none; align-items: center; justify-content: center; z-index: 2000; }
.loading-overlay.show { display: flex; }
.loading-spinner { width: 52px; height: 52px; border: 4px solid var(--line); border-top-color: var(--primary); border-radius: 50%; animation: ldspin .8s linear infinite; }
@keyframes ldspin { to { transform: rotate(360deg); } }

/* Ürün sayfası kategori banner'ı */
.cat-page-banner { min-height: 150px; }
.cat-page-banner .content h3 { font-size: 1.7rem; text-shadow: 0 1px 8px rgba(0,0,0,.5); }

/* ---------- Buttons ---------- */
.btn { border-radius: 10px; font-weight: 700; padding: .55rem 1.2rem; transition: all .15s ease; }
.btn-lg { padding: .8rem 1.7rem; border-radius: 12px; text-transform: uppercase; letter-spacing: .03em; }
.btn-primary { background: var(--primary); border-color: var(--primary); color: var(--on-primary); }
.btn-primary:hover { background: var(--primary-dark); border-color: var(--primary-dark); color: var(--on-primary); transform: translateY(-1px); box-shadow: var(--shadow); }
.btn-outline-primary { color: var(--ink); border-color: var(--ink); }
.btn-outline-primary:hover { background: var(--primary); border-color: var(--primary); color: var(--on-primary); }
.btn-dark { background: var(--ink); border-color: var(--ink); color: var(--bg); }
.btn-success { background: var(--success); border-color: var(--success); color:#fff; }
.btn-light { background:#fff; border:1px solid var(--line); color: var(--ink); }
.btn-link { color: var(--ink); font-weight:700; }

/* ---------- Cards ---------- */
.card { border: 1px solid var(--line); border-radius: var(--radius); background: var(--surface); box-shadow: var(--shadow-sm); }
.product-card { border: 1px solid var(--line); border-radius: var(--radius); background: var(--card-bg); overflow: hidden; height: 100%; display: flex; flex-direction: column; box-shadow: var(--shadow-sm); transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease; position: relative; }
.product-card:hover { transform: translateY(-6px); box-shadow: var(--shadow); border-color: var(--primary); }
.product-card .thumb { position: relative; aspect-ratio: 4/3; overflow: hidden; background: var(--bg-soft); }
.product-card .thumb img { width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease; }
.product-card:hover .thumb img { transform: scale(1.06); }
.product-card .body { padding: 1rem 1.1rem 1.2rem; display: flex; flex-direction: column; flex: 1; }
.product-card .cat { color: var(--muted); font-size: .72rem; font-weight: 700; text-transform: uppercase; letter-spacing: .05em; }
.product-card .title { font-weight: 600; font-size: 1rem; margin: .25rem 0 .15rem; color: var(--ink); font-family:'Inter',sans-serif; }
.product-card .desc { color: var(--muted); font-size: .85rem; line-height: 1.4; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.product-card .price { font-size: 1.2rem; font-weight: 800; color: var(--ink); font-family:'Archivo',sans-serif; }
.product-card .old-price { color: var(--muted); text-decoration: line-through; font-size: .9rem; margin-left: .4rem; font-weight:500; }
.product-card .foot { margin-top: auto; padding-top: .8rem; display: flex; align-items: center; justify-content: space-between; gap:.5rem; }

.pc-badge { position: absolute; top: .7rem; left: .7rem; z-index: 2; padding: .3rem .6rem; border-radius: 999px; font-size: .72rem; font-weight: 800; text-transform: uppercase; box-shadow: var(--shadow-sm); }
.pc-badge.sale { background: var(--sale-bg, var(--ink)); color: var(--sale-ink, var(--primary)); }
.pc-badge.new  { background: var(--primary); color: var(--on-primary); }
.pc-fav { position: absolute; top: .6rem; right: .6rem; z-index: 2; width: 34px; height: 34px; border-radius: 999px; background: rgba(255,255,255,.92); border:none; color:#9aa0ad; display: inline-flex; align-items: center; justify-content: center; transition: all .15s ease; }
.pc-fav:hover { color: var(--danger); transform: scale(1.1); }
.pc-fav.active, .pc-fav.active:hover { color: var(--danger); }

/* Modern kart: kare/tutarlı görsel + hover'da 2. görsele geçiş (kırpmasız) */
.product-card .thumb { aspect-ratio: 1 / 1; }
.product-card .thumb img { object-fit: contain; padding: .55rem; background: var(--bg-soft); }
.product-card .thumb .thumb-main { position: absolute; inset: 0; }
.product-card .thumb .thumb-hover { position: absolute; inset: 0; opacity: 0; transition: opacity .4s ease; }
.product-card:hover .thumb .thumb-hover { opacity: 1; }
.product-card:hover .thumb img { transform: none; }

/* Yıldız puanı */
.pc-rating { display: flex; align-items: center; gap: 1px; color: #f5b50a; font-size: .82rem; margin: .15rem 0; }
.pc-rating .bi-star { color: #d7dbe0; }
.pc-rating .cnt { color: var(--muted); font-size: .72rem; margin-left: .35rem; }

/* Hızlı Bakış (hover'da görsel üstünde belirir) */
.pc-quick { position: absolute; left: 50%; bottom: .8rem; transform: translate(-50%, 14px); z-index: 2; opacity: 0; transition: all .25s ease; background: rgba(20,22,28,.85); color: #fff; border: none; border-radius: 999px; padding: .42rem .95rem; font-size: .8rem; font-weight: 600; white-space: nowrap; pointer-events: none; }
.product-card:hover .pc-quick { opacity: 1; transform: translate(-50%, 0); pointer-events: auto; }
.pc-quick:hover { background: var(--primary); color: var(--on-primary); }

/* Skeleton (yüklenirken) kartlar */
.skeleton-card { pointer-events: none; box-shadow: var(--shadow-sm); }
.skeleton-card .sk-thumb { aspect-ratio: 1 / 1; }
.skeleton-card .sk-body { padding: 1rem 1.1rem 1.2rem; }
.skeleton-card .sk-thumb, .skeleton-card .sk-line { background: linear-gradient(90deg, #ececec 25%, #f6f6f6 50%, #ececec 75%); background-size: 200% 100%; animation: sksh 1.2s infinite; }
.skeleton-card .sk-line { height: 12px; border-radius: 6px; margin-bottom: .55rem; }
.skeleton-card .sk-line.w40 { width: 40%; }
.skeleton-card .sk-line.w50 { width: 50%; }
.skeleton-card .sk-line.w80 { width: 80%; }
@keyframes sksh { to { background-position: -200% 0; } }

.stock-dot { display:inline-flex; align-items:center; gap:.35rem; font-size:.85rem; font-weight:600; }
.stock-dot.in  { color: var(--success); }
.stock-dot.out { color: var(--danger); }
.stock-dot .dot { width:8px; height:8px; border-radius:999px; background: currentColor; }

/* ---------- Hero ---------- */
.hero { background: var(--bg-soft); border-radius: 22px; padding: clamp(1.8rem,4vw,3.4rem); overflow: hidden; border: 1px solid var(--line); }
.hero-pill { display:inline-flex; align-items:center; gap:.4rem; background:var(--primary); color:var(--on-primary); padding:.35rem .85rem; border-radius:999px; font-size:.8rem; font-weight:800; text-transform:uppercase; letter-spacing:.04em; }
.hero-title { font-family:'Archivo',sans-serif; font-weight:900; font-size: clamp(2rem,5vw,3.6rem); line-height: .98; color: var(--ink); margin:.9rem 0; }
.hero-sub { color: var(--ink-soft); font-size: 1.1rem; max-width: 460px; }
.hero-img { width:100%; border-radius:18px; object-fit:cover; box-shadow: var(--shadow); }
.hero-collage { display:grid; grid-template-columns:1fr 1fr; gap:.7rem; }
.hero-collage a { display:block; border-radius:16px; overflow:hidden; aspect-ratio:1; box-shadow:var(--shadow-sm); background:var(--bg-soft); }
.hero-collage img { width:100%; height:100%; object-fit:cover; transition:transform .35s ease; }
.hero-collage a:hover img { transform:scale(1.07); }

/* ---------- Promo band ---------- */
.promo-band { background: var(--primary); border-radius: 18px; padding: 2rem 2.4rem; display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:1rem; margin: 2rem 0; }
.promo-band h2 { margin:0; font-size: clamp(1.4rem,3vw,2.2rem); color: var(--on-primary); }
.promo-band h2 .hl { background: var(--ink); color: var(--primary); padding: 0 .35rem; border-radius: 4px; }
.promo-band .promo-link { color: var(--on-primary); font-weight:800; text-transform:uppercase; border-bottom:3px solid var(--on-primary); padding-bottom:2px; }

/* ---------- Category banners ---------- */
.cat-banner { position: relative; display:block; border-radius: var(--radius); overflow:hidden; min-height: 220px; box-shadow: var(--shadow-sm); }
.cat-banner img { width:100%; height:100%; object-fit:cover; position:absolute; inset:0; transition: transform .4s ease; }
.cat-banner:hover img { transform: scale(1.06); }
.cat-banner .overlay { position:absolute; inset:0; background: linear-gradient(90deg, rgba(20,22,28,.72) 0%, rgba(20,22,28,.25) 60%, transparent 100%); }
.cat-banner .content { position:absolute; left:0; bottom:0; padding:1.4rem 1.6rem; z-index:2; }
.cat-banner .content h3 { color:#fff; font-size:1.6rem; margin-bottom:.6rem; }

/* ---------- Category tiles ---------- */
.cat-tile { display:flex; flex-direction:column; align-items:center; gap:.5rem; padding:1.3rem 1rem; background:var(--surface); border:1px solid var(--line); border-radius:var(--radius); box-shadow:var(--shadow-sm); transition: all .18s ease; color:var(--ink); height:100%; }
.cat-tile:hover { transform:translateY(-4px); box-shadow:var(--shadow); border-color:var(--primary); }
.cat-tile .ico { width:54px; height:54px; border-radius:14px; background:var(--primary-light); color:var(--ink); display:inline-flex; align-items:center; justify-content:center; font-size:1.6rem; }
.cat-tile span { font-weight:700; text-transform:uppercase; font-size:.85rem; }
.cat-card-ico { position:absolute; inset:0; display:flex; align-items:center; justify-content:center; font-size:2.6rem; color:var(--ink); opacity:.5; }
.cat-card .content h3 { text-shadow:0 1px 6px rgba(0,0,0,.55); }
.cat-card .content { padding-right:.6rem; }

/* Üst menü: ana kategori öğeleri + üzerine gelince alt kategori dropdown'ı */
.has-dd { position: relative; }
.has-dd > .nav-link { display:inline-flex; align-items:center; gap:.3rem; cursor:pointer; }
.nav-dd { display:none; position:absolute; left:0; top:100%; min-width:215px; background:#fff; border:1px solid var(--line); border-top:3px solid var(--primary); border-radius:0 0 12px 12px; box-shadow:var(--shadow); padding:.45rem; z-index:1050; }
.has-dd:hover > .nav-dd, .nav-dd:hover { display:block; }
.nav-dd a { display:block; padding:.45rem .65rem; border-radius:8px; color:var(--nav-ink,var(--muted)); text-decoration:none; font-size:.9rem; line-height:1.3; }
.nav-dd a:hover { background:var(--primary-light); color:var(--ink); }
@media (max-width: 991.98px) { .nav-dd { display:none !important; } }

/* ---------- Section headings ---------- */
.section-head { display:flex; align-items:center; justify-content:space-between; margin: 2.2rem 0 1.1rem; }
.section-head h2 { font-size: 1.5rem; margin:0; }
.section-head a { color:var(--ink); font-weight:700; font-size:.85rem; text-transform:uppercase; }
.section-head a:hover { color:var(--primary-dark); }

/* feature strip */
.feature-strip { display:flex; gap:1rem; flex-wrap:wrap; }
.feature-strip .item { flex:1 1 200px; display:flex; gap:.8rem; align-items:center; background:var(--bg-soft); border:1px solid var(--line); border-radius:var(--radius); padding:1rem 1.2rem; }
.feature-strip .item i { font-size:1.6rem; color:var(--ink); }
.feature-strip .item .t { font-weight:700; font-size:.95rem; }
.feature-strip .item .s { color:var(--muted); font-size:.82rem; }

/* ---------- Filter / forms ---------- */
.filter-bar { background:var(--surface); border:1px solid var(--line); border-radius:var(--radius); padding:1rem; box-shadow:var(--shadow-sm); }
.form-control, .form-select { border-radius:10px; border:1px solid #e2e5ef; padding:.6rem .9rem; }
.form-control:focus, .form-select:focus { border-color:var(--primary); box-shadow:0 0 0 3px var(--primary-light); }
.list-group-item.active { background:var(--ink); border-color:var(--ink); }

.chip { display:inline-flex; align-items:center; gap:.35rem; background:var(--primary-light); color:var(--ink); padding:.3rem .7rem; border-radius:999px; font-size:.8rem; font-weight:700; }

.table { --bs-table-bg: transparent; }
.panel { background:var(--surface); border:1px solid var(--line); border-radius:var(--radius); box-shadow:var(--shadow-sm); padding:1.25rem 1.4rem; }

.breadcrumb { background:transparent; padding:0; }
.breadcrumb a { color:var(--muted); }
.breadcrumb .active { color:var(--ink); }

/* theme picker (admin) */
.theme-card { cursor:pointer; border:2px solid var(--line); border-radius:var(--radius); overflow:hidden; transition:all .15s ease; background:var(--surface); }
.theme-card:hover { border-color:var(--primary); transform:translateY(-3px); box-shadow:var(--shadow); }
.theme-card.selected { border-color:var(--primary); box-shadow:0 0 0 3px var(--primary-light); }
.theme-card .meta { padding:.8rem 1rem; }

/* Tema kartı canlı mini önizlemesi: data-theme ile her tema kendi gerçek
   paletinde (zemin/yüzey/çizgi/aksan/köşe-yuvarlaklığı) render olur. */
.theme-preview { background:var(--bg); padding:9px; height:150px; display:flex; flex-direction:column; gap:7px; overflow:hidden; }
.theme-preview * { box-sizing:border-box; }
.theme-preview .tp-bar { display:flex; align-items:center; gap:5px; background:var(--surface); border:1px solid var(--line); border-radius:var(--radius-sm); padding:5px 7px; }
.theme-preview .tp-logo { width:20px; height:7px; border-radius:3px; background:var(--primary); }
.theme-preview .tp-nav { width:14px; height:4px; border-radius:2px; background:var(--ink); opacity:.45; }
.theme-preview .tp-nav.s { width:9px; }
.theme-preview .tp-dot { width:7px; height:7px; border-radius:50%; background:var(--primary); margin-left:auto; }
.theme-preview .tp-hero { flex:1; background:var(--bg-soft); border-radius:var(--radius-sm); padding:9px 10px; display:flex; flex-direction:column; gap:5px; justify-content:center; }
.theme-preview .tp-h { height:6px; width:72%; border-radius:3px; background:var(--ink); opacity:.85; }
.theme-preview .tp-h.s { width:46%; opacity:.45; }
.theme-preview .tp-btn { margin-top:2px; height:10px; width:38px; border-radius:999px; background:var(--primary); }
.theme-preview .tp-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:5px; }
.theme-preview .tp-card { background:var(--surface); border:1px solid var(--line); border-radius:var(--radius-sm); padding:4px; display:flex; flex-direction:column; gap:3px; box-shadow:var(--shadow-sm); }
.theme-preview .tp-thumb { height:18px; border-radius:calc(var(--radius-sm) * .6); background:var(--bg-soft); }
.theme-preview .tp-line { height:3px; width:80%; border-radius:2px; background:var(--ink); opacity:.35; }
.theme-preview .tp-price { height:4px; width:44%; border-radius:2px; background:var(--primary); }

/* ---------- Footer ----------
   Düzen: üstte tek satırlık bülten şeridi · altında marka bloğu + üç bağlantı kategorisi
   (Mağaza / Yardım / Kurumsal) · en altta telif şeridi. Kategoriler <details> olduğu için
   mobilde açılır-kapanır başlıklara dönüşür (masaüstünde JS ile hep açık tutulur). */
.site-footer { background:var(--footer-bg); color:var(--footer-ink); margin-top:4rem; padding:3rem 0 1.5rem; }
.site-footer h6 { color:var(--footer-head); margin-bottom:.9rem; font-size:.8rem; font-weight:700; letter-spacing:.09em; text-transform:uppercase; }
.site-footer a { color:var(--footer-link); text-decoration:none; }
.site-footer a:hover { color:var(--primary); }
.site-footer .brand { font-family:'Archivo',sans-serif; font-weight:800; font-size:1.3rem; color:var(--footer-head); text-transform:uppercase; }
.site-footer .brand i { color:var(--primary); }

/* Bülten şeridi */
.footer-news { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:1rem 2.5rem;
  padding-bottom:1.6rem; margin-bottom:2.2rem; border-bottom:1px solid color-mix(in srgb, var(--footer-ink) 20%, transparent); }
.footer-news h6 { margin-bottom:.2rem; }
.footer-news p { margin:0; font-size:.85rem; color:var(--footer-link); }
.footer-news-form { display:flex; gap:.5rem; flex:1 1 320px; max-width:430px; }
.footer-news-form .form-control { flex:1 1 auto; min-width:0; }
.footer-news-form .btn { white-space:nowrap; }

/* Marka bloğu + bağlantı sütunları */
.footer-grid { display:grid; grid-template-columns:minmax(210px,.95fr) minmax(0,2.6fr); gap:2.4rem 2.75rem; align-items:start; }
.footer-tagline { margin:.75rem 0 1.1rem; max-width:34ch; font-size:.88rem; line-height:1.6; color:var(--footer-ink); }
.footer-nav { display:grid; grid-template-columns:repeat(auto-fit,minmax(150px,1fr)); gap:1.6rem 1.25rem; }
.footer-col > summary { list-style:none; cursor:default; pointer-events:none; }
.footer-col > summary::-webkit-details-marker { display:none; }
.footer-col > summary::after { content:""; display:none; }
.footer-links { display:grid; }
.footer-links a { display:flex; align-items:center; gap:.4rem; padding:.22rem 0; font-size:.89rem; overflow-wrap:anywhere; }
.footer-links i { opacity:.8; flex:none; }
.footer-links a.footer-more { margin-top:.35rem; font-weight:600; color:var(--footer-head); }

.footer-social { display:flex; gap:.55rem; flex-wrap:wrap; }
.footer-social a { display:inline-flex; align-items:center; justify-content:center; width:38px; height:38px; border-radius:50%; background:color-mix(in srgb, var(--footer-ink) 12%, transparent); color:var(--footer-head); font-size:1.1rem; padding:0; transition:background .15s, color .15s, transform .15s; }
.footer-social a:hover { background:var(--primary); color:var(--on-primary); transform:translateY(-2px); }

/* Telif şeridi */
.site-footer .copy { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:.35rem 1.5rem;
  border-top:1px solid color-mix(in srgb, var(--footer-ink) 18%, transparent); margin-top:2.4rem; padding-top:1.2rem; color:var(--footer-link); font-size:.82rem; }
.site-footer .powered-by { opacity:.8; }
.site-footer .powered-by a { color:var(--primary); text-decoration:none; }
.site-footer .powered-by a:hover { text-decoration:underline; }
.site-footer .powered-by strong { color:var(--primary); font-weight:700; }

@media (max-width:991.98px) {
  .footer-grid { grid-template-columns:1fr; gap:2rem; }
}

/* Mobil: kategoriler akordeona döner, sütunlar tek sıra olur */
@media (max-width:767.98px) {
  .site-footer { margin-top:2.5rem; padding:2rem 0 1.2rem; }
  .footer-news { flex-direction:column; align-items:stretch; gap:.75rem; padding-bottom:1.3rem; margin-bottom:1.5rem; }
  .footer-news-form { max-width:none; flex-basis:auto; }
  .footer-news-form .btn span { display:none; }
  .footer-grid { gap:1.5rem; }
  .footer-tagline { margin:.6rem 0 .9rem; max-width:none; font-size:.86rem; }
  .brand-logo-footer { height:min(var(--logo-h,38px),48px); }
  .footer-nav { grid-template-columns:1fr; gap:0;
    border-top:1px solid color-mix(in srgb, var(--footer-ink) 20%, transparent); }
  .footer-col { border-bottom:1px solid color-mix(in srgb, var(--footer-ink) 20%, transparent); }
  .footer-col > summary { display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:.85rem 0; cursor:pointer; pointer-events:auto; }
  .footer-col > summary h6 { margin:0; }
  .footer-col > summary::after { display:block; content:""; width:8px; height:8px; flex:none;
    border-right:2px solid currentColor; border-bottom:2px solid currentColor; color:var(--footer-link);
    transform:translateY(-2px) rotate(45deg); transition:transform .18s ease; }
  .footer-col[open] > summary::after { transform:translateY(2px) rotate(-135deg); }
  .footer-links { padding-bottom:.75rem; }
  .footer-links a { padding:.45rem 0; font-size:.92rem; }
  /* Son kategorinin alt çizgisi ayırıcı görevi görüyor; telif şeridinin kendi çizgisi
     mobilde çift çizgi oluşturuyordu. */
  .site-footer .copy { justify-content:center; text-align:center; border-top:none; margin-top:1.4rem; padding-top:1rem; font-size:.78rem; }
}

.toast-host { position: fixed; top: 84px; right: 20px; z-index: 1100; }

/* WhatsApp yüzen buton */
.wa-float { position: fixed; right: 20px; bottom: 20px; z-index: 1090; width: 54px; height: 54px; border-radius: 999px; background: #25D366; color: #fff; display: flex; align-items: center; justify-content: center; font-size: 1.7rem; box-shadow: 0 6px 20px rgba(37,211,102,.5); transition: transform .15s ease; }
.wa-float:hover { transform: scale(1.08); color: #fff; }

/* Yasal sayfa metni */
.legal h5 { color: var(--ink); }
.legal p, .legal li { line-height: 1.7; }

.qty { display:inline-flex; align-items:center; border:1px solid #e2e5ef; border-radius:10px; overflow:hidden; }
.qty button { border:none; background:#f6f7fb; width:38px; height:42px; font-size:1.1rem; color:var(--ink); }
.qty input { width:54px; height:42px; border:none; text-align:center; background:transparent; color:var(--ink); }

.empty-state { text-align:center; padding:3.5rem 1rem; color:var(--muted); }
.empty-state i { font-size:3.2rem; color:#c9cdda; }

/* ============ ADMIN TEMPLATE ============ */
/* Yönetim kabuğu (.admin-shell / .admin-sidebar / .stat-card / .ic-*) artık
   admin.css içinde: yalnızca /Admin sayfalarında yüklenir. Buraya geri taşıma —
   vitrin paleti (lime + [data-theme]) ile yönetim paleti birbirini ezmesin. */

html { font-size: 15px; position: relative; min-height: 100%; }
@media (min-width: 768px) { html { font-size: 16px; } }

/* ═══════════════════════════════════════════════════════════════════════════
   LAYOUT MOTORLARI (arşetipler) — sınıf & [data-archetype] bazlı, tema-agnostik.
   Palet 31 [data-theme] token bloğundan; koyu mod [data-mode="dark"] cilasından.
   ═══════════════════════════════════════════════════════════════════════════ */

/* Ortak: yatay kaydırmalı ürün rayı */
.rail-track { display:flex; gap:1rem; overflow-x:auto; scroll-snap-type:x mandatory; padding:.25rem .1rem 1rem; -webkit-overflow-scrolling:touch; scrollbar-width:thin; }
.rail-track > .col { flex:0 0 auto; width:min(74vw,232px); scroll-snap-align:start; }
.rail-track::-webkit-scrollbar { height:8px; }
.rail-track::-webkit-scrollbar-thumb { background:var(--line); border-radius:99px; }

/* ───────────── MOTOR: Marketplace Mega ───────────── */
.mega-shell{ display:flex; align-items:flex-start; gap:0; }
.hdr-mega{ flex:0 0 264px; align-self:stretch; position:sticky; top:0; height:100vh; background:var(--surface); border-right:1px solid var(--line); padding:1.2rem 1rem; display:flex; flex-direction:column; gap:1rem; overflow-y:auto; z-index:1030; }
.hdr-mega .hm-brand{ font-weight:800; font-size:1.3rem; color:var(--ink)!important; display:flex; align-items:center; gap:.4rem; }
.hdr-mega .hm-brand i{ color:var(--primary); }
.hdr-mega .hm-actions{ display:flex; align-items:center; gap:.25rem; padding:.15rem 0 .5rem; border-bottom:1px solid var(--line); }
.hdr-mega .hm-cat-head{ font-size:.72rem; font-weight:800; text-transform:uppercase; letter-spacing:.08em; color:var(--muted); display:flex; align-items:center; gap:.4rem; }
.hdr-mega .hm-nav{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:1px; }
.hdr-mega .hm-nav .nav-item{ position:relative; }
.hdr-mega .hm-nav .nav-link{ display:flex; align-items:center; justify-content:space-between; color:var(--nav-ink,var(--ink-soft))!important; font-weight:600; font-size:.92rem; padding:.55rem .7rem!important; border-radius:8px; }
.hdr-mega .hm-nav .nav-link:hover{ background:var(--primary-light); color:var(--primary-dark)!important; }
.hdr-mega .hm-nav .nav-dd{ position:static; display:block; border:none; box-shadow:none; padding:.1rem 0 .3rem .8rem; min-width:0; background:transparent; }
.hdr-mega .hm-nav .nav-dd a{ font-size:.85rem; padding:.28rem .5rem; }
.hdr-mega .hm-foot{ margin-top:auto; border-top:1px solid var(--line); padding-top:.8rem; display:flex; flex-direction:column; gap:.35rem; font-size:.82rem; }
.hdr-mega .hm-foot a{ color:var(--accent,var(--primary)); font-weight:700; }
.hdr-mega .hm-foot-note{ color:var(--muted); font-size:.76rem; }
.mega-main{ flex:1 1 auto; min-width:0; padding:1.4rem clamp(1rem,2.6vw,2rem); }
.mega-searchbar{ display:flex; gap:.6rem; background:var(--surface); border:1px solid var(--line); border-radius:12px; padding:.5rem; box-shadow:var(--shadow-sm); margin-bottom:1.2rem; }
.mega-searchbar input{ flex:1; border:none; outline:none; background:transparent; font-size:1rem; padding:.4rem .6rem; color:var(--ink); }
.mega-hero{ background:linear-gradient(100deg,var(--primary-dark),var(--primary)); color:var(--on-primary); border-radius:var(--radius); padding:clamp(1.4rem,3vw,2.4rem); display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:1rem; margin-bottom:1.4rem; }
.mega-hero h1{ color:var(--on-primary); font-size:clamp(1.6rem,3.4vw,2.6rem); margin:0 0 .3rem; }
.mega-hero p{ color:var(--on-primary); opacity:.85; margin:0; max-width:52ch; }
.mega-quick{ display:grid; grid-template-columns:repeat(auto-fill,minmax(120px,1fr)); gap:.7rem; margin-bottom:1.6rem; }
.mega-quick a{ background:var(--surface); border:1px solid var(--line); border-radius:10px; padding:.9rem .7rem; text-align:center; color:var(--ink); font-weight:700; font-size:.86rem; box-shadow:var(--shadow-sm); transition:transform .15s, border-color .15s; }
.mega-quick a:hover{ transform:translateY(-3px); border-color:var(--primary); color:var(--primary-dark); }
.mega-quick a i{ display:block; font-size:1.5rem; color:var(--primary); margin-bottom:.35rem; }
.prod-rail{ background:var(--surface); border:1px solid var(--line); border-radius:var(--radius); padding:1rem 1.1rem .4rem; margin-bottom:1.3rem; box-shadow:var(--shadow-sm); }
.prod-rail-head{ display:flex; align-items:center; justify-content:space-between; margin-bottom:.3rem; }
.prod-rail-head h2{ font-size:1.18rem; margin:0; display:flex; align-items:center; gap:.45rem; }
.prod-rail-head .tag{ font-size:.7rem; font-weight:800; text-transform:uppercase; letter-spacing:.06em; color:var(--primary); }
[data-archetype="mega"] .filter-bar{ border-top:3px solid var(--primary); }
@media(max-width:991px){
  .mega-shell{ flex-direction:column; }
  .hdr-mega{ flex:1 1 auto; width:100%; height:auto; position:static; flex-direction:column; border-right:none; border-bottom:1px solid var(--line); }
  .hdr-mega .hm-nav{ flex-direction:row; flex-wrap:wrap; gap:.3rem; }
  .hdr-mega .hm-nav .nav-dd{ display:none; }
  .mega-main{ width:100%; padding:1.1rem; }
}

/* ───────────── MOTOR: Bento Concept Store ───────────── */
.hdr-bento{ background:color-mix(in srgb, var(--bg) 85%, transparent); backdrop-filter:saturate(160%) blur(12px); border-bottom:1px solid var(--line); z-index:1030; }
.hdr-bento .hb-top{ display:flex; align-items:center; gap:1rem; padding:.7rem clamp(1rem,3vw,2rem); }
.hdr-bento .hb-brand{ font-weight:700; font-size:1.35rem; color:var(--ink)!important; display:flex; align-items:center; gap:.5rem; }
.hdr-bento .hb-mark{ width:20px; height:20px; border-radius:6px; background:conic-gradient(from 45deg,var(--primary),var(--accent,var(--primary-dark)),var(--primary)); display:inline-block; }
.hdr-bento .hb-burger{ display:none; background:transparent; border:none; color:var(--ink); font-size:1.4rem; }
.hdr-bento .hb-actions{ display:flex; align-items:center; gap:.25rem; margin-left:auto; }
.hdr-bento .hb-chips ul{ display:flex; flex-wrap:wrap; gap:.5rem; list-style:none; margin:0; padding:0 clamp(1rem,3vw,2rem) .8rem; }
.hdr-bento .hb-chips .nav-item{ position:relative; }
.hdr-bento .hb-chips .nav-link{ color:var(--nav-ink,var(--ink-soft))!important; font-weight:600; font-size:.84rem; padding:.35rem .85rem!important; border:1px solid var(--line); border-radius:999px; }
.hdr-bento .hb-chips .nav-link:hover{ border-color:var(--primary); color:var(--ink)!important; background:var(--primary-light); }
.bento-main{ padding:1.4rem clamp(1rem,3vw,2rem); max-width:1560px; }
.bento-grid{ display:grid; grid-template-columns:repeat(4,1fr); grid-auto-rows:184px; gap:14px; }
.bento-tile{ position:relative; overflow:hidden; border-radius:var(--radius); border:1px solid var(--line); background:var(--surface); display:flex; flex-direction:column; }
.bento-tile.col2{ grid-column:span 2; }
.bento-tile.row2{ grid-row:span 2; }
.bento-img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; transition:transform .5s ease; }
.bento-tile:hover .bento-img{ transform:scale(1.05); }
.bento-tile .bt-overlay{ position:absolute; inset:0; background:linear-gradient(180deg,transparent 30%,rgba(8,8,14,.85)); }
.bento-tile .bt-body{ position:relative; margin-top:auto; padding:1.1rem 1.2rem; z-index:2; }
.bento-tile .bt-kicker{ font-size:.7rem; font-weight:700; letter-spacing:.06em; text-transform:uppercase; color:var(--accent,var(--primary)); }
.bento-tile .bt-title{ color:#fff; font-weight:700; font-size:1.1rem; margin:.15rem 0 0; }
.bento-tile .bt-count{ color:#d4d4e0; font-size:.8rem; }
.bento-feature{ grid-column:span 2; grid-row:span 2; background:linear-gradient(140deg,var(--primary),var(--primary-dark)); border:none; padding:1.6rem 1.7rem; justify-content:flex-end; }
.bento-feature .bf-tag{ position:absolute; top:1.3rem; left:1.7rem; font-size:.72rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; color:var(--on-primary); opacity:.85; }
.bento-feature h1{ position:relative; color:var(--on-primary); font-size:clamp(1.7rem,3vw,2.7rem); line-height:1.02; margin:0 0 .7rem; text-wrap:balance; }
.bento-feature p{ position:relative; color:var(--on-primary); opacity:.9; max-width:34ch; margin:0 0 1.1rem; }
.bento-feature .btn-primary{ background:var(--on-primary); color:var(--primary-dark); border-color:var(--on-primary); }
.bento-tile.promo{ background:linear-gradient(135deg,var(--accent,var(--primary)),var(--primary-dark)); align-items:flex-start; justify-content:center; padding:1.2rem 1.3rem; }
.bento-tile.promo .bt-body{ margin:0; }
.bento-tile.promo .bt-title,.bento-tile.promo .bt-count,.bento-tile.promo .bt-kicker{ color:#04201a; position:relative; }
.bento-prodtile{ padding:0; display:block; }
.bento-prodtile > .col{ width:100%; height:100%; padding:0; }
.bento-prodtile .product-card{ border:none; border-radius:var(--radius); height:100%; background:var(--surface); }
.bento-prodtile .product-card .thumb{ aspect-ratio:auto; flex:1; min-height:150px; }
[data-archetype="bento"] .product-card:hover{ border-color:var(--primary); box-shadow:0 0 0 1px var(--primary),var(--shadow); }
@media(max-width:991px){ .bento-grid{ grid-template-columns:repeat(2,1fr); } .bento-feature,.bento-tile.col2{ grid-column:span 2; } }
@media(max-width:575px){
  .hdr-bento .hb-burger{ display:inline-flex; order:-1; }
  .hdr-bento .hb-chips.collapse:not(.show){ display:none; }
  .bento-grid{ grid-template-columns:repeat(2,1fr); grid-auto-rows:150px; gap:10px; }
}

/* ───────────── MOTOR: Immersive Vitrin (hep koyu) ───────────── */
.hdr-vitrin{ position:sticky; top:0; z-index:1030; display:flex; align-items:center; gap:1.2rem; padding:.8rem clamp(1rem,4vw,2.6rem); background:transparent; transition:background .3s ease, border-color .3s ease; border-bottom:1px solid transparent; }
.hdr-vitrin.solid{ background:color-mix(in srgb, var(--bg) 82%, transparent); backdrop-filter:saturate(160%) blur(14px); border-bottom-color:var(--line); }
.hdr-vitrin .hv-brand{ font-weight:800; font-size:1.3rem; color:var(--ink)!important; letter-spacing:.02em; }
.hdr-vitrin .hv-burger{ display:none; background:transparent; border:none; color:var(--ink); font-size:1.5rem; margin-left:auto; }
.hdr-vitrin .hv-center{ margin:0 auto; }
.hdr-vitrin .hv-nav{ display:flex; align-items:center; gap:1.6rem; list-style:none; margin:0; padding:0; }
.hdr-vitrin .hv-nav .nav-item{ position:relative; }
.hdr-vitrin .hv-nav .nav-link{ color:var(--nav-ink,var(--ink-soft))!important; font-weight:600; font-size:.82rem; text-transform:uppercase; letter-spacing:.08em; padding:.3rem 0!important; }
.hdr-vitrin .hv-nav .nav-link:hover{ color:var(--primary)!important; }
.hdr-vitrin .hv-actions{ display:flex; align-items:center; gap:.2rem; }
.hdr-vitrin .hdr-icon{ color:var(--ink); }
.hdr-vitrin .hdr-icon:hover{ background:rgba(255,255,255,.08); color:var(--primary); }
.vitrin-main{ padding:0; }
.vitrin-wrap{ max-width:1280px; margin:0 auto; padding-inline:clamp(1rem,4vw,2.6rem); }
.vitrin-hero{ position:relative; min-height:86vh; display:flex; align-items:flex-end; overflow:hidden; margin-top:-64px; padding:0 clamp(1rem,4vw,2.6rem) clamp(2rem,6vh,4rem); }
.vitrin-hero .vh-media{ position:absolute; inset:0; z-index:0; }
.vitrin-hero .vh-media img{ width:100%; height:100%; object-fit:cover; opacity:.55; }
.vitrin-hero .vh-media::after{ content:""; position:absolute; inset:0; background:linear-gradient(180deg,rgba(10,10,12,.5) 0%,rgba(10,10,12,.2) 40%,var(--bg) 100%); }
.vitrin-hero .vh-inner{ position:relative; z-index:2; max-width:900px; }
.vitrin-hero .vh-eyebrow{ font-size:.8rem; font-weight:700; letter-spacing:.24em; text-transform:uppercase; color:var(--primary); }
.vitrin-hero h1{ font-size:clamp(2.6rem,8vw,6rem); line-height:.96; margin:.6rem 0 1rem; color:#fff; text-wrap:balance; }
.vitrin-hero p{ color:var(--ink-soft); font-size:1.15rem; max-width:48ch; }
.vh-scrollcue{ position:absolute; left:50%; bottom:1.1rem; transform:translateX(-50%); z-index:2; color:var(--ink-soft); font-size:1.4rem; animation:vhbob 1.8s ease-in-out infinite; }
@keyframes vhbob{ 0%,100%{ transform:translate(-50%,0); } 50%{ transform:translate(-50%,8px); } }
.vitrin-feature{ display:grid; grid-template-columns:1.05fr .95fr; gap:clamp(1.5rem,4vw,3.5rem); align-items:center; padding:clamp(2.5rem,7vh,5rem) 0; }
.vitrin-feature .vf-media{ aspect-ratio:4/5; border-radius:var(--radius); overflow:hidden; background:var(--surface); }
.vitrin-feature .vf-media img{ width:100%; height:100%; object-fit:cover; }
.vitrin-feature .vf-eyebrow{ font-size:.78rem; font-weight:700; letter-spacing:.2em; text-transform:uppercase; color:var(--primary); }
.vitrin-feature h2{ font-size:clamp(1.9rem,4vw,3.2rem); line-height:1.02; margin:.5rem 0 .8rem; }
.vitrin-feature p{ color:var(--ink-soft); font-size:1.05rem; max-width:46ch; }
.vitrin-feature .vf-price{ font-weight:800; font-size:1.8rem; margin:1rem 0; }
.vitrin-manifesto{ padding:clamp(2.5rem,8vh,6rem) 0; text-align:center; }
.vitrin-manifesto p{ font-weight:700; font-size:clamp(1.6rem,4.5vw,3rem); line-height:1.12; max-width:20ch; margin:0 auto; color:var(--ink); text-wrap:balance; }
.vitrin-manifesto p .hl{ color:var(--primary); }
.vitrin-section-head{ display:flex; align-items:baseline; justify-content:space-between; margin:0 0 1.2rem; }
.vitrin-section-head h2{ font-size:clamp(1.4rem,3vw,2rem); margin:0; }
.vitrin-section-head a{ color:var(--primary); font-weight:700; font-size:.85rem; text-transform:uppercase; letter-spacing:.04em; }
@media(max-width:767px){
  .hdr-vitrin .hv-burger{ display:inline-flex; }
  .hdr-vitrin .hv-center{ flex-basis:100%; }
  .hdr-vitrin .hv-center.collapse:not(.show){ display:none; }
  .hdr-vitrin .hv-nav{ flex-direction:column; gap:.4rem; padding:.6rem 0; }
  .vitrin-feature{ grid-template-columns:1fr; }
  .vitrin-hero{ min-height:76vh; }
}

/* ───────────── MOTOR: Editorial Lookbook ───────────── */
.hdr-lookbook{ background:var(--bg); border-bottom:1px solid var(--line); }
.hdr-lookbook .hl-util{ display:flex; align-items:center; justify-content:space-between; padding:.5rem clamp(1rem,4vw,2.4rem); }
.hdr-lookbook .hl-issue{ font-size:.74rem; letter-spacing:.14em; text-transform:uppercase; color:var(--muted); font-weight:600; }
.hdr-lookbook .hl-actions{ display:flex; align-items:center; gap:.2rem; }
.hdr-lookbook .hl-word{ display:block; text-align:center; padding:.4rem 1rem 1rem; font-weight:700; font-size:clamp(2rem,6vw,3.6rem); letter-spacing:.02em; color:var(--ink)!important; line-height:1; }
.hdr-lookbook .hl-word .brand-logo{ height:var(--logo-h,52px); margin:0 auto; }
.hdr-lookbook .hl-nav{ border-top:1px solid var(--ink); border-bottom:1px solid var(--ink); }
.hdr-lookbook .hl-nav ul{ display:flex; flex-wrap:wrap; justify-content:center; gap:0 2rem; list-style:none; margin:0; padding:.6rem 1rem; }
.hdr-lookbook .hl-nav .nav-item{ position:relative; }
.hdr-lookbook .hl-nav .nav-link{ color:var(--nav-ink,var(--ink))!important; text-transform:uppercase; letter-spacing:.12em; font-weight:600; font-size:.76rem; padding:.2rem 0!important; }
.hdr-lookbook .hl-nav .nav-link:hover{ color:var(--primary)!important; }
@media(max-width:767px){ .hdr-lookbook .hl-nav ul{ gap:0 1.1rem; overflow-x:auto; flex-wrap:nowrap; white-space:nowrap; justify-content:flex-start; } }
.lb-cover{ position:relative; min-height:clamp(360px,64vh,620px); display:flex; align-items:flex-end; overflow:hidden; margin-bottom:2.4rem; background:var(--ink); }
.lb-cover img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; opacity:.82; }
.lb-cover::after{ content:""; position:absolute; inset:0; background:linear-gradient(180deg,transparent 35%,rgba(10,8,6,.75)); }
.lb-cover .lbc-inner{ position:relative; z-index:3; padding:clamp(1.6rem,4vw,3rem); max-width:760px; color:#fff; }
.lb-cover .lbc-tag{ font-size:.78rem; letter-spacing:.2em; text-transform:uppercase; font-weight:600; }
.lb-cover h1{ color:#fff; font-size:clamp(2.2rem,6vw,4.4rem); line-height:1.02; margin:.5rem 0 .8rem; text-wrap:balance; }
.lb-cover p{ color:#ece7e0; max-width:52ch; font-size:1.08rem; }
.lb-editorial{ display:grid; grid-template-columns:1fr 1fr; gap:clamp(1.4rem,4vw,3rem); align-items:center; margin:2.6rem 0; }
.lb-editorial.flip .lbe-media{ order:2; }
.lb-editorial .lbe-media{ aspect-ratio:4/5; overflow:hidden; background:var(--bg-soft); }
.lb-editorial .lbe-media img{ width:100%; height:100%; object-fit:cover; transition:transform .6s ease; }
.lb-editorial:hover .lbe-media img{ transform:scale(1.04); }
.lb-editorial .lbe-num{ font-style:italic; color:var(--primary); font-size:1.1rem; }
.lb-editorial h2{ font-size:clamp(1.7rem,3.6vw,2.8rem); line-height:1.05; margin:.3rem 0 .7rem; }
.lb-editorial p{ color:var(--ink-soft); font-size:1.05rem; max-width:44ch; line-height:1.7; }
.lb-editorial .hero-textlink{ color:var(--primary); margin-top:.8rem; display:inline-block; }
.lb-rule{ display:flex; align-items:center; gap:1rem; margin:3rem 0 1.4rem; }
.lb-rule::before,.lb-rule::after{ content:""; flex:1; height:1px; background:var(--ink); }
.lb-rule h2{ font-size:clamp(1.5rem,3vw,2.2rem); margin:0; white-space:nowrap; }
.lb-gallery{ display:flex; gap:1rem; overflow-x:auto; padding-bottom:1rem; scroll-snap-type:x mandatory; }
.lb-gallery a{ flex:0 0 auto; width:min(72vw,300px); aspect-ratio:3/4; overflow:hidden; scroll-snap-align:start; background:var(--bg-soft); }
.lb-gallery img{ width:100%; height:100%; object-fit:cover; transition:transform .5s ease; }
.lb-gallery a:hover img{ transform:scale(1.05); }
@media(max-width:767px){ .lb-editorial{ grid-template-columns:1fr; } .lb-editorial.flip .lbe-media{ order:0; } }

/* ───────────── MOTOR: Boutique (ortalanmış serif masthead) ───────────── */
.hdr-boutique{ background:color-mix(in srgb, var(--bg) 94%, transparent); backdrop-filter:saturate(160%) blur(10px); border-bottom:1px solid var(--line); }
.hdr-boutique .hbq-top{ display:grid; grid-template-columns:1fr auto 1fr; align-items:center; padding:1rem 0 .8rem; }
.hdr-boutique .hbq-side{ display:flex; align-items:center; gap:.3rem; }
.hdr-boutique .hbq-right{ justify-content:flex-end; }
.hdr-boutique .hbq-brand{ font-weight:700; font-size:1.9rem; letter-spacing:.04em; text-align:center; color:var(--ink)!important; }
.hdr-boutique .hbq-brand .brand-logo{ height:var(--logo-h,46px); margin:0 auto; }
.hdr-boutique .hbq-navrow{ border-top:1px solid var(--line); }
.hdr-boutique .hbq-nav{ display:flex; flex-wrap:wrap; justify-content:center; gap:.3rem 1.6rem; list-style:none; margin:0 auto; padding:.6rem 0; }
.hdr-boutique .hbq-nav .nav-item{ position:relative; }
.hdr-boutique .hbq-nav .nav-link{ color:var(--nav-ink,var(--ink-soft))!important; text-transform:uppercase; letter-spacing:.14em; font-weight:500; font-size:.76rem; padding:.25rem .2rem!important; }
.hdr-boutique .hbq-nav .nav-link:hover{ color:var(--primary-dark)!important; }
.bq-hero{ text-align:center; padding:clamp(2.4rem,5vw,4rem) 1rem 2.4rem; }
.bq-hero .bq-title{ font-size:clamp(2.2rem,5.4vw,4rem); line-height:1.04; margin:.5rem auto .8rem; max-width:16ch; }
.bq-hero .bq-title::after{ content:""; display:block; width:64px; height:1px; background:var(--primary); margin:1.2rem auto 0; }
.bq-hero .bq-sub{ color:var(--ink-soft); max-width:52ch; margin:0 auto; font-size:1.08rem; }
.bq-hero .bq-cta{ justify-content:center; }
.bq-strip{ display:grid; grid-template-columns:repeat(4,1fr); gap:.9rem; margin-top:2.4rem; }
.bq-strip a{ display:block; aspect-ratio:3/4; overflow:hidden; border-radius:var(--radius-sm); background:var(--bg-soft); }
.bq-strip img{ width:100%; height:100%; object-fit:cover; transition:transform .5s ease; }
.bq-strip a:hover img{ transform:scale(1.05); }
@media(max-width:575px){ .bq-strip{ grid-template-columns:repeat(2,1fr); } .hdr-boutique .hbq-brand{ font-size:1.4rem; } }

/* ───────────── MOTOR: Minimal (bol boşluk) ───────────── */
.hdr-minimal{ background:var(--bg); border-bottom:1px solid var(--line); }
.hdr-minimal .hmn-bar{ display:flex; align-items:center; gap:1rem; min-height:76px; }
.hdr-minimal .hmn-brand{ font-weight:700; font-size:1.35rem; color:var(--ink)!important; letter-spacing:.02em; }
.hdr-minimal .hmn-brand .brand-logo{ height:var(--logo-h,40px); }
.hdr-minimal .hmn-burger{ display:none; background:transparent; border:none; color:var(--ink); font-size:1.4rem; margin-left:auto; }
.hdr-minimal .hmn-nav{ display:flex; align-items:center; gap:1.5rem; list-style:none; margin:0 0 0 auto; padding:0; }
.hdr-minimal .hmn-nav .nav-item{ position:relative; }
.hdr-minimal .hmn-nav .nav-link{ color:var(--nav-ink,var(--ink-soft))!important; text-transform:uppercase; letter-spacing:.1em; font-weight:500; font-size:.76rem; padding:.3rem 0!important; }
.hdr-minimal .hmn-nav .nav-link:hover{ color:var(--primary)!important; }
.hdr-minimal .hmn-actions{ display:flex; align-items:center; gap:.2rem; margin-left:1rem; }
.mn-hero{ text-align:center; padding:clamp(3rem,9vh,7rem) 1rem clamp(2rem,5vh,3.5rem); }
.mn-hero .mn-title{ font-size:clamp(2.2rem,6vw,4.4rem); line-height:1.05; margin:.6rem auto .9rem; max-width:16ch; text-transform:none; letter-spacing:-.01em; }
.mn-hero .mn-sub{ color:var(--ink-soft); max-width:54ch; margin:0 auto; font-size:1.12rem; }
.mn-gallery{ display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; margin-bottom:1rem; }
.mn-gallery a{ display:block; aspect-ratio:1; overflow:hidden; border-radius:var(--radius-sm); background:var(--bg-soft); }
.mn-gallery img{ width:100%; height:100%; object-fit:cover; transition:transform .5s ease; }
.mn-gallery a:hover img{ transform:scale(1.04); }
@media(max-width:767px){ .hdr-minimal .hmn-burger{ display:inline-flex; } .hdr-minimal .hmn-nav.collapse:not(.show){ display:none; } .hdr-minimal .hmn-nav{ flex-basis:100%; flex-direction:column; align-items:flex-start; gap:.3rem; margin:.4rem 0 .6rem; } .mn-gallery{ grid-template-columns:repeat(2,1fr); } }

/* ───────────── MOTOR: Tech (pill nav + split hero) ───────────── */
.hdr-tech{ background:var(--surface); border-bottom:1px solid var(--line); box-shadow:var(--shadow-sm); }
.hdr-tech .htc-bar{ display:flex; align-items:center; gap:1rem; min-height:72px; }
.hdr-tech .htc-brand{ font-weight:700; font-size:1.4rem; color:var(--ink)!important; display:flex; align-items:center; gap:.45rem; }
.hdr-tech .htc-brand .brand-logo{ height:var(--logo-h,40px); }
.hdr-tech .htc-dot{ width:14px; height:14px; border-radius:50%; background:linear-gradient(135deg,var(--primary),var(--accent,var(--primary-dark))); display:inline-block; }
.hdr-tech .htc-burger{ display:none; background:transparent; border:none; color:var(--ink); font-size:1.4rem; margin-left:auto; }
.hdr-tech .htc-nav{ display:flex; align-items:center; gap:.3rem; list-style:none; margin:0 auto; padding:.3rem; background:var(--bg-soft); border-radius:999px; }
.hdr-tech .htc-nav .nav-item{ position:relative; }
.hdr-tech .htc-nav .nav-link{ color:var(--nav-ink,var(--ink-soft))!important; font-weight:600; font-size:.82rem; padding:.4rem .9rem!important; border-radius:999px; }
.hdr-tech .htc-nav .nav-link:hover{ background:var(--surface); color:var(--primary)!important; }
.hdr-tech .htc-actions{ display:flex; align-items:center; gap:.2rem; }
.tc-hero{ display:grid; grid-template-columns:1.1fr 1fr; gap:clamp(1.5rem,4vw,3rem); align-items:center; padding:clamp(1.6rem,4vw,3rem) 0; }
.tc-hero .tc-title{ font-size:clamp(2rem,5vw,3.6rem); line-height:1.02; margin:.4rem 0 .8rem; text-transform:none; letter-spacing:-.02em; }
.tc-hero .tc-sub{ color:var(--ink-soft); font-size:1.1rem; max-width:46ch; }
.tc-media .tc-grid{ display:grid; grid-template-columns:1fr 1fr; gap:.8rem; }
.tc-media .tc-grid a{ display:block; aspect-ratio:1; overflow:hidden; border-radius:var(--radius); background:var(--bg-soft); box-shadow:var(--shadow-sm); }
.tc-media .tc-grid img,.tc-media .tc-single{ width:100%; height:100%; object-fit:cover; transition:transform .4s ease; }
.tc-media .tc-grid a:hover img{ transform:scale(1.06); }
.tc-media .tc-single{ width:100%; border-radius:var(--radius); box-shadow:var(--shadow); }
@media(max-width:767px){ .hdr-tech .htc-burger{ display:inline-flex; } .hdr-tech .htc-nav.collapse:not(.show){ display:none; } .hdr-tech .htc-nav{ flex-basis:100%; order:3; justify-content:flex-start; overflow-x:auto; border-radius:14px; } .tc-hero{ grid-template-columns:1fr; } }

/* ───────────── MOTOR: Split (asimetrik büyük tipografi) ───────────── */
.hdr-split{ background:color-mix(in srgb, var(--bg) 92%, transparent); backdrop-filter:saturate(160%) blur(10px); border-bottom:1px solid var(--line); }
.hdr-split .hsp-bar{ display:flex; align-items:center; gap:1rem; min-height:72px; }
.hdr-split .hsp-brand{ font-weight:700; font-size:1.4rem; color:var(--ink)!important; text-transform:uppercase; letter-spacing:.04em; }
.hdr-split .hsp-brand .brand-logo{ height:var(--logo-h,40px); }
.hdr-split .hsp-burger{ display:none; background:transparent; border:none; color:var(--ink); font-size:1.4rem; margin-left:auto; }
.hdr-split .hsp-nav{ display:flex; align-items:center; gap:1.4rem; list-style:none; margin:0 auto; padding:0; }
.hdr-split .hsp-nav .nav-item{ position:relative; }
.hdr-split .hsp-nav .nav-link{ color:var(--nav-ink,var(--ink-soft))!important; text-transform:uppercase; letter-spacing:.08em; font-weight:600; font-size:.78rem; padding:.3rem 0!important; }
.hdr-split .hsp-nav .nav-link:hover{ color:var(--primary)!important; }
.hdr-split .hsp-actions{ display:flex; align-items:center; gap:.2rem; }
.sp-hero{ display:grid; grid-template-columns:1fr 1fr; gap:0; align-items:stretch; margin-bottom:2rem; border:1px solid var(--line); border-radius:var(--radius); overflow:hidden; min-height:clamp(340px,52vh,520px); }
.sp-hero .sp-text{ padding:clamp(1.6rem,4vw,3rem); display:flex; flex-direction:column; justify-content:center; background:var(--surface); }
.sp-hero .sp-title{ font-size:clamp(2.4rem,6vw,5rem); line-height:.94; margin:.4rem 0 .8rem; }
.sp-hero .sp-sub{ color:var(--ink-soft); font-size:1.08rem; max-width:42ch; }
.sp-hero .sp-meta{ display:flex; flex-wrap:wrap; gap:.6rem; margin-top:1.4rem; color:var(--muted); font-size:.82rem; font-weight:600; text-transform:uppercase; letter-spacing:.06em; }
.sp-hero .sp-media{ position:relative; overflow:hidden; background:var(--bg-soft); min-height:280px; }
.sp-hero .sp-media img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
@media(max-width:767px){ .hdr-split .hsp-burger{ display:inline-flex; } .hdr-split .hsp-nav.collapse:not(.show){ display:none; } .hdr-split .hsp-nav{ flex-basis:100%; flex-direction:column; align-items:flex-start; gap:.3rem; margin:.4rem 0; } .sp-hero{ grid-template-columns:1fr; } .sp-hero .sp-media{ min-height:240px; order:-1; } }

/* ───────────── KOYU MOD cilası (tüm koyu temalar) ───────────── */
[data-mode="dark"] .fchk{ background:var(--bg-soft); border-color:var(--line); color:var(--ink); }
[data-mode="dark"] .filter-bar,[data-mode="dark"] .panel,[data-mode="dark"] .card{ background:var(--surface); }
[data-mode="dark"] .form-control,[data-mode="dark"] .form-select,[data-mode="dark"] .nav-search input,[data-mode="dark"] .search-panel-form input,[data-mode="dark"] .mega-searchbar input{ background:var(--surface); border-color:var(--line); color:var(--ink); }
[data-mode="dark"] .form-control::placeholder{ color:var(--muted); }
[data-mode="dark"] .form-select option{ background:var(--surface); color:var(--ink); }
[data-mode="dark"] .qty{ border-color:var(--line); }
[data-mode="dark"] .qty button{ background:var(--bg-soft); color:var(--ink); }
[data-mode="dark"] .qty input{ color:var(--ink); }
[data-mode="dark"] .table{ color:var(--ink); --bs-table-color:var(--ink); }
[data-mode="dark"] .btn-light{ background:var(--surface); border-color:var(--line); color:var(--ink); }
[data-mode="dark"] .nav-search input{ background:var(--surface); }
[data-mode="dark"] .nav-dd,[data-mode="dark"] .dropdown-menu{ background:var(--surface); border-color:var(--line); }
[data-mode="dark"] .nav-dd a,[data-mode="dark"] .dropdown-item{ color:var(--ink-soft); }
[data-mode="dark"] .nav-dd a:hover,[data-mode="dark"] .dropdown-item:hover{ background:var(--primary-light); color:var(--ink); }
[data-mode="dark"] .toast.text-bg-light{ background:var(--surface)!important; color:var(--ink)!important; }
[data-mode="dark"] .breadcrumb a{ color:var(--muted); }
[data-mode="dark"] .cat-card-ico{ color:var(--ink); }

@media (prefers-reduced-motion: reduce){
  .vh-scrollcue{ animation:none; }
  .bento-tile:hover .bento-img,.lb-gallery a:hover img,.bq-strip a:hover img,.mn-gallery a:hover img,.tc-media .tc-grid a:hover img,.lb-editorial:hover .lbe-media img{ transform:none; }
}

/* ═══════════════════════════════ TİPOGRAFİ HARİTASI ═══════════════════════════════ */
:is([data-theme="bagatelier"],[data-theme="jewel"],[data-theme="luxfashion"],[data-theme="boutique"],[data-theme="festival"],[data-theme="newseason"]) :is(h1,h2,h3,.hero-title,.navbar-brand,.hbq-brand,.hl-word,.bq-title,.product-card .title){ font-family:'Playfair Display',Georgia,serif; font-weight:700; text-transform:none; letter-spacing:0; }
:is([data-theme="perfumenoir"],[data-theme="noir"],[data-theme="minlux"]) :is(h1,h2,h3,.hero-title,.navbar-brand,.hv-brand,.mn-title,.product-card .title){ font-family:'Cormorant Garamond',serif; font-weight:600; text-transform:none; letter-spacing:0; }
[data-theme="luxeshoe"] :is(h1,h2,h3,.hero-title,.sp-title,.product-card .title){ font-family:'Bodoni Moda',serif; font-weight:700; text-transform:none; letter-spacing:0; }
:is([data-theme="organic"],[data-theme="giftguide"]) :is(h1,h2,h3,.hero-title,.navbar-brand,.hl-word,.mn-title,.product-card .title){ font-family:'Fraunces',serif; font-weight:600; text-transform:none; letter-spacing:0; }
[data-theme="organic"] body{ font-family:'Work Sans','Inter',sans-serif; }
:is([data-theme="sneaker"],[data-theme="drop"]) :is(h1,h2,h3,.hero-title,.hv-brand){ font-family:'Syne',sans-serif; font-weight:800; text-transform:none; letter-spacing:-.02em; }
:is([data-theme="street"],[data-theme="brutal"],[data-theme="techstart"]) :is(h1,h2,h3,.hero-title,.navbar-brand,.hb-brand,.htc-brand,.tc-title){ font-family:'Space Grotesk',sans-serif; font-weight:700; text-transform:none; letter-spacing:-.01em; }
[data-theme="watch"] :is(h1,h2,h3,.hero-title,.sp-title,.hsp-brand){ font-family:'Saira','Inter',sans-serif; font-weight:700; text-transform:uppercase; letter-spacing:.04em; }
:is([data-theme="beautyglow"],[data-theme="glass"]) :is(h1,h2,h3,.hero-title,.navbar-brand,.htc-brand,.tc-title){ font-family:'Outfit','Inter',sans-serif; font-weight:700; text-transform:none; letter-spacing:0; }
:is([data-theme="eyewear"],[data-theme="scandi"]) :is(h1,h2,h3,.hero-title,.navbar-brand,.hmn-brand,.mn-title){ font-family:'Hanken Grotesk','Inter',sans-serif; font-weight:600; text-transform:none; letter-spacing:0; }
[data-theme="sportout"] :is(h1,h2,h3,.hero-title,.htc-brand,.tc-title){ font-family:'Manrope','Inter',sans-serif; font-weight:800; text-transform:none; letter-spacing:-.01em; }
[data-theme="kids"] :is(h1,h2,h3,.hero-title,.hb-brand){ font-family:'Poppins',sans-serif; font-weight:700; text-transform:none; }
[data-theme="kids"] body{ font-family:'Poppins',sans-serif; }
[data-theme="genz"] :is(h1,h2,h3,.hero-title,.navbar-brand){ font-family:'Anton',sans-serif; font-weight:400; text-transform:uppercase; letter-spacing:.01em; }
[data-theme="genz"] body{ font-family:'Poppins',sans-serif; }
[data-theme="terminal"] :is(h1,h2,h3,.hero-title,.sp-title,.hsp-brand){ font-family:'Space Grotesk',ui-monospace,monospace; font-weight:700; text-transform:uppercase; letter-spacing:.02em; }
[data-theme="terminal"] body{ font-family:'IBM Plex Mono',ui-monospace,monospace; }
[data-theme="editorial"] :is(h1,h2,h3,.hero-title){ font-weight:900; }

/* ═══════════════════════════════ 30 PALET (token) ═══════════════════════════════ */
/* — A) Kategori/niş — */
[data-theme="sneaker"]{ --primary:#c6ff00; --primary-dark:#a8db00; --primary-light:#1e2408; --on-primary:#14160a; --ink:#f4f4f2; --ink-soft:#b7b7b0; --muted:#86867f; --bg:#15161a; --bg-soft:#1d1e24; --surface:#1a1c22; --line:#2a2c34; --accent:#c6ff00; --radius:12px; --radius-sm:8px; --shadow:0 16px 40px rgba(0,0,0,.5); --bs-primary:#c6ff00; --bs-primary-rgb:198,255,0; --bs-body-bg:#15161a; --bs-body-color:#f4f4f2; --bs-border-color:#2a2c34; }
[data-theme="luxeshoe"]{ --primary:#c8a86b; --primary-dark:#b0925a; --primary-light:#2a241a; --on-primary:#1a150c; --ink:#f0ece4; --ink-soft:#c3bdb0; --muted:#8f887a; --bg:#171512; --bg-soft:#1f1c17; --surface:#201d18; --line:#322d25; --accent:#c8a86b; --radius:4px; --radius-sm:2px; --shadow:0 16px 40px rgba(0,0,0,.5); --bs-primary:#c8a86b; --bs-primary-rgb:200,168,107; --bs-body-bg:#171512; --bs-body-color:#f0ece4; --bs-border-color:#322d25; }
[data-theme="bagatelier"]{ --primary:#8a6a45; --primary-dark:#6f5436; --primary-light:#efe6d8; --on-primary:#ffffff; --ink:#2a2018; --ink-soft:#4d4235; --muted:#8a7d6b; --bg:#f6f1e8; --bg-soft:#ece3d4; --surface:#fffdf9; --line:#e3d8c6; --accent:#b08d5b; --radius:3px; --radius-sm:2px; --bs-primary:#8a6a45; --bs-primary-rgb:138,106,69; --bs-body-bg:#f6f1e8; --bs-body-color:#2a2018; --bs-border-color:#e3d8c6; }
[data-theme="perfumenoir"]{ --primary:#c9a227; --primary-dark:#a8861c; --primary-light:#2a2411; --on-primary:#14110a; --ink:#f2ece0; --ink-soft:#cdc4b2; --muted:#9a8f7a; --bg:#0c0a08; --bg-soft:#15120d; --surface:#17130d; --line:#2e2820; --accent:#c9a227; --radius:4px; --radius-sm:3px; --shadow:0 18px 44px rgba(0,0,0,.6); --bs-primary:#c9a227; --bs-primary-rgb:201,162,39; --bs-body-bg:#0c0a08; --bs-body-color:#f2ece0; --bs-border-color:#2e2820; }
[data-theme="beautyglow"]{ --primary:#e8688f; --primary-dark:#d24d76; --primary-light:#fce7ee; --on-primary:#ffffff; --ink:#3a2830; --ink-soft:#5e4550; --muted:#97808a; --bg:#fff8fa; --bg-soft:#fbeef2; --surface:#ffffff; --line:#f3dfe6; --accent:#f3a7bf; --radius:18px; --radius-sm:14px; --bs-primary:#e8688f; --bs-primary-rgb:232,104,143; --bs-body-bg:#fff8fa; --bs-body-color:#3a2830; --bs-border-color:#f3dfe6; }
[data-theme="jewel"]{ --primary:#d7d2c4; --primary-dark:#b8b2a2; --primary-light:#23231d; --on-primary:#14120e; --ink:#ece9e1; --ink-soft:#c3bfb4; --muted:#8b8578; --bg:#111114; --bg-soft:#191920; --surface:#1a1a22; --line:#2b2b34; --accent:#c9a227; --radius:4px; --radius-sm:3px; --shadow:0 16px 40px rgba(0,0,0,.55); --bs-primary:#d7d2c4; --bs-primary-rgb:215,210,196; --bs-body-bg:#111114; --bs-body-color:#ece9e1; --bs-border-color:#2b2b34; }
[data-theme="watch"]{ --primary:#5b7fa6; --primary-dark:#4a6a8c; --primary-light:#14202c; --on-primary:#ffffff; --ink:#eef1f5; --ink-soft:#c2c7d0; --muted:#8a909c; --bg:#14171d; --bg-soft:#1a1e26; --surface:#1c2028; --line:#2c313b; --accent:#d64533; --radius:3px; --radius-sm:2px; --shadow:0 16px 40px rgba(0,0,0,.5); --bs-primary:#5b7fa6; --bs-primary-rgb:91,127,166; --bs-body-bg:#14171d; --bs-body-color:#eef1f5; --bs-border-color:#2c313b; }
[data-theme="eyewear"]{ --primary:#1a1a1a; --primary-dark:#000000; --primary-light:#ececec; --on-primary:#ffffff; --ink:#1a1a1a; --ink-soft:#45443f; --muted:#7a756c; --bg:#f7f7f4; --bg-soft:#eeeeea; --surface:#ffffff; --line:#e6e5df; --accent:#1a1a1a; --radius:2px; --radius-sm:2px; --bs-primary:#1a1a1a; --bs-primary-rgb:26,26,26; --bs-body-bg:#f7f7f4; --bs-body-color:#1a1a1a; --bs-border-color:#e6e5df; }
[data-theme="kids"]{ --primary:#ff8fab; --primary-dark:#f06d90; --primary-light:#ffe6ee; --on-primary:#3a1420; --ink:#3a2e33; --ink-soft:#574850; --muted:#8a7d84; --bg:#fffaf2; --bg-soft:#fff2d9; --surface:#ffffff; --line:#f2e6d5; --accent:#37bcc0; --radius:20px; --radius-sm:16px; --bs-primary:#ff8fab; --bs-primary-rgb:255,143,171; --bs-body-bg:#fffaf2; --bs-body-color:#3a2e33; --bs-border-color:#f2e6d5; }
[data-theme="street"]{ --primary:#7c5cff; --primary-dark:#6644ff; --primary-light:#241f3d; --on-primary:#ffffff; --ink:#f3f3f7; --ink-soft:#c7c7d4; --muted:#9a9aad; --bg:#0e0e14; --bg-soft:#16161f; --surface:#181822; --line:#28283a; --accent:#22e0b0; --radius:16px; --radius-sm:12px; --shadow:0 16px 40px rgba(0,0,0,.5); --bs-primary:#7c5cff; --bs-primary-rgb:124,92,255; --bs-body-bg:#0e0e14; --bs-body-color:#f3f3f7; --bs-border-color:#28283a; }
[data-theme="luxfashion"]{ --primary:#6b2737; --primary-dark:#511d2a; --primary-light:#f3e7ea; --on-primary:#ffffff; --ink:#17120f; --ink-soft:#3d332c; --muted:#8a7f78; --bg:#f3efe8; --bg-soft:#eae4d9; --surface:#ffffff; --line:#e4ddd0; --accent:#c2b280; --radius:0px; --radius-sm:0px; --bs-primary:#6b2737; --bs-primary-rgb:107,39,55; --bs-body-bg:#f3efe8; --bs-body-color:#17120f; --bs-border-color:#e4ddd0; }
[data-theme="sportout"]{ --primary:#ff5c00; --primary-dark:#e35200; --primary-light:#2a1608; --on-primary:#ffffff; --ink:#eef0f3; --ink-soft:#c2c6cd; --muted:#8a909a; --bg:#1a1d22; --bg-soft:#22262d; --surface:#23272f; --line:#333842; --accent:#ffd500; --radius:12px; --radius-sm:10px; --shadow:0 16px 40px rgba(0,0,0,.5); --bs-primary:#ff5c00; --bs-primary-rgb:255,92,0; --bs-body-bg:#1a1d22; --bs-body-color:#eef0f3; --bs-border-color:#333842; }
/* — B) Premium stil aileleri — */
[data-theme="minlux"]{ --primary:#1a1a1a; --primary-dark:#000000; --primary-light:#efece3; --on-primary:#ffffff; --ink:#1a1a1a; --ink-soft:#4a4640; --muted:#7a756c; --bg:#faf9f6; --bg-soft:#f0eee8; --surface:#ffffff; --line:#e7e3da; --accent:#9a8b73; --radius:2px; --radius-sm:2px; --bs-primary:#1a1a1a; --bs-primary-rgb:26,26,26; --bs-body-bg:#faf9f6; --bs-body-color:#1a1a1a; --bs-border-color:#e7e3da; }
[data-theme="editorial"]{ --primary:#e5121f; --primary-dark:#bb0e18; --primary-light:#ffe6e8; --on-primary:#ffffff; --ink:#0a0a0a; --ink-soft:#1f1f1f; --muted:#767676; --bg:#ffffff; --bg-soft:#f3f3f3; --surface:#ffffff; --line:#e3e3e3; --accent:#0a0a0a; --radius:0px; --radius-sm:0px; --bs-primary:#e5121f; --bs-primary-rgb:229,18,31; --bs-body-bg:#ffffff; --bs-body-color:#0a0a0a; --bs-border-color:#e3e3e3; }
[data-theme="brutal"]{ --primary:#ffd400; --primary-dark:#e6bf00; --primary-light:#fff7cc; --on-primary:#111111; --ink:#111111; --ink-soft:#1a1a1a; --muted:#555555; --bg:#fdfbf3; --bg-soft:#f6f1df; --surface:#ffffff; --line:#111111; --accent:#ff5ca8; --radius:0px; --radius-sm:0px; --shadow-sm:3px 3px 0 #111; --shadow:5px 5px 0 #111; --bs-primary:#ffd400; --bs-primary-rgb:255,212,0; --bs-body-bg:#fdfbf3; --bs-body-color:#111111; --bs-border-color:#111111; }
[data-theme="glass"]{ --primary:#6d5df6; --primary-dark:#5a49e0; --primary-light:#241f4d; --on-primary:#ffffff; --ink:#ffffff; --ink-soft:#d8d7ec; --muted:#b9b8d6; --bg:#1b1f3b; --bg-soft:#232750; --surface:#262a54; --line:#3a3f6e; --accent:#00c2ff; --radius:18px; --radius-sm:14px; --shadow:0 16px 40px rgba(0,0,0,.4); --bs-primary:#6d5df6; --bs-primary-rgb:109,93,246; --bs-body-bg:#1b1f3b; --bs-body-color:#ffffff; --bs-border-color:#3a3f6e; }
[data-theme="boutique"]{ --primary:#9c7b43; --primary-dark:#7e6234; --primary-light:#f1e8d6; --on-primary:#ffffff; --ink:#221d17; --ink-soft:#4a4035; --muted:#8a7f6d; --bg:#f7f3ec; --bg-soft:#efe7d9; --surface:#fffefb; --line:#e3d9c7; --accent:#9c7b43; --radius:2px; --radius-sm:2px; --bs-primary:#9c7b43; --bs-primary-rgb:156,123,67; --bs-body-bg:#f7f3ec; --bs-body-color:#221d17; --bs-border-color:#e3d9c7; }
[data-theme="noir"]{ --primary:#c9a227; --primary-dark:#a8861c; --primary-light:#2a2414; --on-primary:#14110d; --ink:#f2ece0; --ink-soft:#cdc4b2; --muted:#9a8f7a; --bg:#0c0c0e; --bg-soft:#151517; --surface:#17171a; --line:#2c2c30; --accent:#c9a227; --radius:3px; --radius-sm:3px; --shadow:0 18px 44px rgba(0,0,0,.6); --bs-primary:#c9a227; --bs-primary-rgb:201,162,39; --bs-body-bg:#0c0c0e; --bs-body-color:#f2ece0; --bs-border-color:#2c2c30; }
[data-theme="scandi"]{ --primary:#6f7f57; --primary-dark:#5a6845; --primary-light:#eaede3; --on-primary:#ffffff; --ink:#2e2e2e; --ink-soft:#55534e; --muted:#7c7a75; --bg:#fbfaf8; --bg-soft:#f1efea; --surface:#ffffff; --line:#e8e5de; --accent:#d9c5a0; --radius:10px; --radius-sm:8px; --bs-primary:#6f7f57; --bs-primary-rgb:111,127,87; --bs-body-bg:#fbfaf8; --bs-body-color:#2e2e2e; --bs-border-color:#e8e5de; }
[data-theme="techstart"]{ --primary:#6366f1; --primary-dark:#4f52e0; --primary-light:#ecedfe; --on-primary:#ffffff; --ink:#0f172a; --ink-soft:#334155; --muted:#64748b; --bg:#ffffff; --bg-soft:#f6f8fc; --surface:#ffffff; --line:#e6eaf2; --accent:#22d3ee; --radius:16px; --radius-sm:12px; --bs-primary:#6366f1; --bs-primary-rgb:99,102,241; --bs-body-bg:#ffffff; --bs-body-color:#0f172a; --bs-border-color:#e6eaf2; }
[data-theme="gallery"]{ --primary:#1c1c1c; --primary-dark:#000000; --primary-light:#e5e4e0; --on-primary:#ffffff; --ink:#1c1c1c; --ink-soft:#45443f; --muted:#83817b; --bg:#e9e7e2; --bg-soft:#e0ded8; --surface:#f7f6f3; --line:#d5d3cc; --accent:#a24d3a; --radius:6px; --radius-sm:4px; --bs-primary:#1c1c1c; --bs-primary-rgb:28,28,28; --bs-body-bg:#e9e7e2; --bs-body-color:#1c1c1c; --bs-border-color:#d5d3cc; }
[data-theme="genz"]{ --primary:#c6ff3d; --primary-dark:#a8e024; --primary-light:#f2ffd0; --on-primary:#111111; --ink:#111111; --ink-soft:#222222; --muted:#555555; --bg:#fffbf2; --bg-soft:#fff3d6; --surface:#ffffff; --line:#111111; --accent:#ff4fd8; --radius:14px; --radius-sm:12px; --shadow-sm:3px 3px 0 #111; --shadow:5px 5px 0 #111; --bs-primary:#c6ff3d; --bs-primary-rgb:198,255,61; --bs-body-bg:#fffbf2; --bs-body-color:#111111; --bs-border-color:#111111; }
[data-theme="terminal"]{ --primary:#3fb950; --primary-dark:#2ea043; --primary-light:#0d2018; --on-primary:#06120a; --ink:#c9d1d9; --ink-soft:#9aa4b2; --muted:#6e7681; --bg:#0d1117; --bg-soft:#12171f; --surface:#161b22; --line:#262d38; --accent:#58a6ff; --radius:2px; --radius-sm:2px; --shadow:0 16px 40px rgba(0,0,0,.5); --bs-primary:#3fb950; --bs-primary-rgb:63,185,80; --bs-body-bg:#0d1117; --bs-body-color:#c9d1d9; --bs-border-color:#262d38; }
[data-theme="organic"]{ --primary:#6b7f5b; --primary-dark:#566747; --primary-light:#e7ecdf; --on-primary:#ffffff; --ink:#3a322a; --ink-soft:#574d42; --muted:#857b6c; --bg:#f5f0e6; --bg-soft:#ebe4d5; --surface:#fbf7ee; --line:#e2d9c8; --accent:#c98a5e; --radius:14px; --radius-sm:12px; --bs-primary:#6b7f5b; --bs-primary-rgb:107,127,91; --bs-body-bg:#f5f0e6; --bs-body-color:#3a322a; --bs-border-color:#e2d9c8; }
/* — C) Sezon/kampanya — */
[data-theme="blackfriday"]{ --primary:#ff2d2d; --primary-dark:#e01414; --primary-light:#2a0a0a; --on-primary:#ffffff; --ink:#f2f2f2; --ink-soft:#c2c2c2; --muted:#8a8a8a; --bg:#0a0a0a; --bg-soft:#141414; --surface:#161616; --line:#2a2a2a; --accent:#ffd400; --radius:8px; --radius-sm:6px; --shadow:0 16px 40px rgba(0,0,0,.6); --bs-primary:#ff2d2d; --bs-primary-rgb:255,45,45; --bs-body-bg:#0a0a0a; --bs-body-color:#f2f2f2; --bs-border-color:#2a2a2a; }
[data-theme="newseason"]{ --primary:#b5482f; --primary-dark:#973821; --primary-light:#f5e6df; --on-primary:#ffffff; --ink:#1a1712; --ink-soft:#40382f; --muted:#7c7367; --bg:#efe9df; --bg-soft:#e6dfd2; --surface:#ffffff; --line:#ddd7ca; --accent:#2f4a3d; --radius:0px; --radius-sm:0px; --bs-primary:#b5482f; --bs-primary-rgb:181,72,47; --bs-body-bg:#efe9df; --bs-body-color:#1a1712; --bs-border-color:#ddd7ca; }
[data-theme="drop"]{ --primary:#d8ff3e; --primary-dark:#c2ec1f; --primary-light:#1c2208; --on-primary:#0b0b0d; --ink:#f5f5f2; --ink-soft:#b7b7b0; --muted:#8a8a83; --bg:#0b0b0d; --bg-soft:#131317; --surface:#15151b; --line:#26262e; --accent:#ff3ea5; --radius:14px; --radius-sm:10px; --shadow:0 16px 40px rgba(0,0,0,.55); --bs-primary:#d8ff3e; --bs-primary-rgb:216,255,62; --bs-body-bg:#0b0b0d; --bs-body-color:#f5f5f2; --bs-border-color:#26262e; }
[data-theme="outlet"]{ --primary:#e5121f; --primary-dark:#bb0e18; --primary-light:#ffe6e8; --on-primary:#ffffff; --ink:#1a1a1a; --ink-soft:#3a3a3a; --muted:#6b7280; --bg:#f7f7f8; --bg-soft:#eeeef0; --surface:#ffffff; --line:#e2e3e6; --accent:#ff6a2b; --radius:8px; --radius-sm:6px; --bs-primary:#e5121f; --bs-primary-rgb:229,18,31; --bs-body-bg:#f7f7f8; --bs-body-color:#1a1a1a; --bs-border-color:#e2e3e6; }
[data-theme="festival"]{ --primary:#d4af37; --primary-dark:#b8952a; --primary-light:#2e0d14; --on-primary:#1a0a0e; --ink:#f4e9d8; --ink-soft:#d3c3a8; --muted:#a3907a; --bg:#3a0d16; --bg-soft:#46121c; --surface:#4a1620; --line:#5e2530; --accent:#d4af37; --radius:4px; --radius-sm:2px; --shadow:0 16px 40px rgba(0,0,0,.5); --bs-primary:#d4af37; --bs-primary-rgb:212,175,55; --bs-body-bg:#3a0d16; --bs-body-color:#f4e9d8; --bs-border-color:#5e2530; }
[data-theme="giftguide"]{ --primary:#2f6b4f; --primary-dark:#245640; --primary-light:#e2efe8; --on-primary:#ffffff; --ink:#1a1712; --ink-soft:#40382f; --muted:#7c7367; --bg:#f3efe8; --bg-soft:#eae4d9; --surface:#ffffff; --line:#e2ddd0; --accent:#c25b3a; --radius:4px; --radius-sm:2px; --bs-primary:#2f6b4f; --bs-primary-rgb:47,107,79; --bs-body-bg:#f3efe8; --bs-body-color:#1a1712; --bs-border-color:#e2ddd0; }

/* ═══════════════════════════════ AKSAN CİLALARI ═══════════════════════════════ */
/* Brutal + Gen-Z: kalın siyah kenar + sert gölge */
:is([data-theme="brutal"],[data-theme="genz"]) :is(.product-card,.panel,.btn,.bento-tile,.cat-banner,.feature-strip .item,.filter-bar){ border:2px solid #111; box-shadow:4px 4px 0 #111; }
:is([data-theme="brutal"],[data-theme="genz"]) .product-card:hover{ transform:translate(-2px,-2px); box-shadow:6px 6px 0 #111; border-color:#111; }
:is([data-theme="brutal"],[data-theme="genz"]) .btn:hover{ transform:translate(-1px,-1px); box-shadow:5px 5px 0 #111; }
[data-theme="brutal"] .btn-primary,[data-theme="genz"] .btn-primary{ color:#111; }
/* Glass: buzlu cam katmanlar */
[data-theme="glass"] body{ background:linear-gradient(135deg,#161a33 0%,#2e1848 55%,#0f2f4a 100%) fixed; }
[data-theme="glass"] :is(.product-card,.panel,.hdr-tech,.tc-media .tc-grid a,.prod-rail){ background:rgba(12,14,40,.42); backdrop-filter:blur(16px); -webkit-backdrop-filter:blur(16px); border:1px solid rgba(255,255,255,.14); }
[data-theme="glass"] .product-card .thumb img{ background:rgba(255,255,255,.9); }
[data-theme="glass"] .htc-nav{ background:rgba(255,255,255,.1); }
/* Serif temalarda çerçevesiz zarif ürün kartı */
:is([data-theme="minlux"],[data-theme="bagatelier"],[data-theme="jewel"],[data-theme="boutique"],[data-theme="scandi"],[data-theme="organic"]) .product-card{ border:none; border-bottom:1px solid var(--line); box-shadow:none; background:transparent; }
:is([data-theme="minlux"],[data-theme="bagatelier"],[data-theme="jewel"],[data-theme="boutique"]) .product-card:hover{ transform:none; box-shadow:none; border-color:var(--primary); }
/* Editorial: keskin siyah-beyaz kart */
[data-theme="editorial"] .product-card{ border:2px solid #111; box-shadow:none; }
[data-theme="editorial"] .product-card:hover{ transform:none; border-color:var(--primary); }

/* ═══════════════════════════ MOBİL: BİRLEŞİK ÇEKMECE MENÜ ═══════════════════════════
   ≤991px'de tema header'ı gizlenir; sol üstte hamburger + soldan açılan off-canvas menü. */
.mobile-topbar { display:none; }
.mobile-menu-btn { background:transparent; border:none; color:var(--ink); font-size:1.65rem; width:44px; height:44px; display:inline-flex; align-items:center; justify-content:center; border-radius:10px; flex-shrink:0; }
.mobile-menu-btn:hover { background:var(--primary-light); }
/* Logo mobilde ortada: iki yandaki düğmeler de 44px sabit olduğu için brand'e flex:1 vermek
   markayı tam ortaya hizalar (hamburger solda, sepet sağda kalır). */
.mobile-topbar .mtb-brand { font-family:'Archivo',sans-serif; font-weight:800; font-size:1.2rem; color:var(--ink) !important; text-transform:uppercase; flex:1 1 auto; min-width:0; display:inline-flex; align-items:center; justify-content:center; gap:.4rem; overflow:hidden; white-space:nowrap; }
.mobile-topbar .mtb-brand .brand-logo { height:min(var(--logo-h,34px),44px); max-width:100%; object-fit:contain; }
.mobile-topbar-cart { position:relative; color:var(--ink); font-size:1.4rem; width:44px; height:44px; display:inline-flex; align-items:center; justify-content:center; flex-shrink:0; }
.mobile-topbar-cart .badge-count { position:absolute; top:3px; right:0; background:var(--ink); color:var(--bg); border:2px solid var(--surface); border-radius:999px; font-size:.6rem; min-width:18px; height:18px; line-height:1; display:inline-flex; align-items:center; justify-content:center; padding:0 4px; font-weight:700; }

.mobile-drawer-backdrop { position:fixed; inset:0; background:rgba(10,12,16,.5); opacity:0; visibility:hidden; transition:opacity .3s ease, visibility .3s; z-index:1190; }
.mobile-drawer-backdrop.open { opacity:1; visibility:visible; }
.mobile-drawer { position:fixed; top:0; left:0; bottom:0; width:min(86vw,340px); background:var(--surface); color:var(--ink); box-shadow:var(--shadow-lg); transform:translateX(-100%); transition:transform .32s cubic-bezier(.16,1,.3,1); z-index:1200; display:flex; flex-direction:column; overflow-y:auto; }
.mobile-drawer.open { transform:translateX(0); }
.mobile-drawer .md-head { display:flex; align-items:center; justify-content:space-between; padding:.9rem 1rem; border-bottom:1px solid var(--line); }
.mobile-drawer .md-brand { font-family:'Archivo',sans-serif; font-weight:800; text-transform:uppercase; font-size:1.15rem; color:var(--ink) !important; }
.mobile-drawer .md-brand .brand-logo { height:min(var(--logo-h,36px),46px); }
.mobile-drawer .md-close { background:transparent; border:none; font-size:1.2rem; color:var(--ink); width:40px; height:40px; border-radius:10px; }
.mobile-drawer .md-close:hover { background:var(--primary-light); }
.mobile-drawer .md-search { display:flex; align-items:center; gap:.5rem; margin:.9rem 1rem .4rem; padding:.55rem .85rem; border:1px solid var(--line); border-radius:999px; background:var(--bg); }
.mobile-drawer .md-search i { color:var(--muted); }
.mobile-drawer .md-search input { border:none; outline:none; background:transparent; flex:1; color:var(--ink); font-size:.95rem; }
.mobile-drawer .md-nav { padding:.3rem 0; }
.mobile-drawer .md-nav ul { list-style:none; margin:0; padding:0; }
.mobile-drawer .md-nav .nav-item { border-bottom:1px solid var(--line); }
.mobile-drawer .md-nav .nav-link { display:block; padding:.85rem 1.1rem !important; color:var(--ink) !important; font-weight:600; font-size:.98rem; text-transform:none; letter-spacing:0; }
.mobile-drawer .md-nav .nav-link:hover { background:var(--primary-light); }
/* Alt kategoriler: dokunmatikte hover yok — başlık satırı (link + ok düğmesi) katlanır liste açar */
.mobile-drawer .md-nav .md-row { display:flex; align-items:stretch; }
.mobile-drawer .md-nav .md-row .nav-link { flex:1 1 auto; min-width:0; }
.mobile-drawer .md-nav .nav-link .bi-chevron-down { display:none; }
.mobile-drawer .md-nav .md-sub-toggle { flex:0 0 54px; background:transparent; border:none; color:var(--muted); display:flex; align-items:center; justify-content:center; font-size:.85rem; }
.mobile-drawer .md-nav .md-sub-toggle i { transition:transform .2s ease; }
.mobile-drawer .md-nav .has-dd.open > .md-row .md-sub-toggle i { transform:rotate(180deg); }
.mobile-drawer .md-nav .nav-dd { display:none !important; position:static; min-width:0; border:none; border-top:none; border-radius:0; box-shadow:none; background:var(--bg-soft); padding:.25rem 0 .5rem; }
.mobile-drawer .md-nav .has-dd.open > .nav-dd { display:block !important; }
.mobile-drawer .md-nav .nav-dd a { padding:.6rem 1.1rem .6rem 1.7rem; border-radius:0; color:var(--ink); font-size:.93rem; }
.mobile-drawer .md-nav .nav-dd a:hover { background:var(--primary-light); color:var(--ink); }
.mobile-drawer .md-account { padding:.7rem 1.1rem; border-top:1px solid var(--line); margin-top:auto; display:flex; flex-direction:column; }
.mobile-drawer .md-account a, .mobile-drawer .md-account button { display:flex; align-items:center; gap:.65rem; padding:.62rem 0; color:var(--ink); background:transparent; border:none; font-size:.95rem; font-weight:500; text-align:left; width:100%; }
.mobile-drawer .md-account a i, .mobile-drawer .md-account button i { color:var(--muted); width:20px; }
.mobile-drawer .md-account a:hover, .mobile-drawer .md-account button:hover { color:var(--primary-dark); }
.mobile-drawer .md-support { margin:.3rem 1.1rem 1.3rem; display:inline-flex; align-items:center; gap:.5rem; color:#25D366 !important; font-weight:700; font-size:.92rem; }

/* ============ MOBİL ALT MENÜ (uygulama tarzı sekme çubuğu) ============ */
/* Vitrinin her sayfasında ekranın altına sabitlenir (yalnız ≤991px). Layout, ödeme/kart
   ekranlarında ve ayar kapalıyken hiç render etmez; .has-mtabs gövde sınıfı yalnız çubuk
   basıldığında gelir, bu yüzden alt boşluk da yalnız o zaman eklenir. */
.mtabs { display:none; }
@media (max-width: 991.98px) {
  .mtabs {
    position:fixed; left:0; right:0; bottom:0; z-index:1040;
    display:grid; grid-auto-flow:column; grid-auto-columns:1fr;
    background:var(--surface);
    background:color-mix(in srgb, var(--surface) 88%, transparent);
    -webkit-backdrop-filter:saturate(180%) blur(14px); backdrop-filter:saturate(180%) blur(14px);
    border-top:1px solid var(--line); box-shadow:0 -4px 20px rgba(16,24,40,.09);
    padding-bottom:env(safe-area-inset-bottom);
  }
  .mtab { position:relative; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:.2rem;
          min-height:56px; padding:.4rem .2rem .45rem; color:var(--muted); font-weight:600; text-decoration:none;
          -webkit-tap-highlight-color:transparent; transition:color .15s ease; }
  .mtab-ico { position:relative; display:inline-flex; align-items:center; justify-content:center; height:24px;
              font-size:1.3rem; line-height:1; transition:transform .18s cubic-bezier(.16,1,.3,1); }
  .mtab-lbl { font-size:.68rem; line-height:1; letter-spacing:.005em; white-space:nowrap; }
  .mtab:hover, .mtab:focus { color:var(--ink); }
  .mtab:active .mtab-ico { transform:scale(.86); }
  /* Etkin sekme: ikon dolu + üstte kısa gösterge çizgisi */
  .mtab.active { color:var(--ink); }
  .mtab.active::before { content:""; position:absolute; top:0; left:50%; transform:translateX(-50%);
                         width:26px; height:3px; border-radius:0 0 3px 3px; background:var(--primary); }
  .mtabs .badge-count { position:absolute; top:-6px; right:-11px; min-width:17px; height:17px; padding:0 4px;
                        display:inline-flex; align-items:center; justify-content:center; line-height:1;
                        border-radius:999px; border:2px solid var(--surface); background:var(--primary);
                        color:var(--on-primary); font-size:.6rem; font-weight:800; }
  .mtabs .badge-count.empty { display:none; }
  /* İçerik ve WhatsApp düğmesi çubuğun altında kalmasın */
  body.has-mtabs { padding-bottom:calc(60px + env(safe-area-inset-bottom)); }
  body.has-mtabs .wa-float { bottom:calc(72px + env(safe-area-inset-bottom)); }
}
[data-mode="dark"] .mtabs { box-shadow:0 -4px 20px rgba(0,0,0,.45); }


/* ═══════════════════ SEPET ÇEKMECESİ (mini sepet) ═══════════════════
   Sepet ikonuna dokununca sağdan açılır; içerik /Cart/Panel parçasından gelir.
   Renkler token üzerinden — koyu temalarda --ink/--bg yer değiştirdiği için
   alttaki siyah "SEPETE GİT" bandı kendiliğinden tersine döner. */
.cart-drawer-backdrop { position:fixed; inset:0; background:rgba(10,12,16,.5); opacity:0; visibility:hidden; transition:opacity .3s ease, visibility .3s; z-index:1290; }
.cart-drawer-backdrop.open { opacity:1; visibility:visible; }
.cart-drawer { position:fixed; top:0; right:0; bottom:0; width:min(93vw,430px); background:var(--surface); color:var(--ink); box-shadow:var(--shadow-lg); transform:translateX(101%); transition:transform .32s cubic-bezier(.16,1,.3,1); z-index:1300; display:flex; flex-direction:column; }
.cart-drawer.open { transform:translateX(0); }
.cart-drawer .cd-inner, .cart-drawer .cd-wrap { flex:1 1 auto; min-height:0; display:flex; flex-direction:column; }
.cart-drawer .cd-busy { opacity:.5; pointer-events:none; }

.cart-drawer .cd-head { flex:0 0 auto; display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:1rem 1.1rem; border-bottom:1px solid var(--line); }
.cart-drawer .cd-head h2 { margin:0; font-size:1.35rem; font-weight:800; letter-spacing:-.02em; text-transform:none; }
.cart-drawer .cd-close { background:transparent; border:none; color:var(--ink); width:42px; height:42px; border-radius:12px; font-size:1.15rem; display:flex; align-items:center; justify-content:center; }
.cart-drawer .cd-close:hover { background:var(--bg-soft); }

.cart-drawer .cd-body { flex:1 1 auto; overflow-y:auto; -webkit-overflow-scrolling:touch; padding:0 1.1rem; }
.cart-drawer .cd-row { display:flex; gap:.9rem; padding:1rem 0; border-bottom:1px solid var(--line); }
.cart-drawer .cd-row:last-child { border-bottom:none; }
.cart-drawer .cd-thumb { flex:0 0 88px; width:88px; height:88px; border-radius:8px; overflow:hidden; background:var(--bg-soft); }
.cart-drawer .cd-thumb img { width:100%; height:100%; object-fit:cover; display:block; }
.cart-drawer .cd-info { flex:1 1 auto; min-width:0; }
.cart-drawer .cd-top { display:flex; align-items:flex-start; gap:.5rem; }
.cart-drawer .cd-name { flex:1 1 auto; font-weight:700; font-size:1rem; line-height:1.3; color:var(--ink) !important; }
.cart-drawer .cd-name:hover { text-decoration:underline; }
.cart-drawer .cd-del { flex:0 0 auto; background:transparent; border:none; color:var(--muted); width:32px; height:32px; border-radius:8px; display:flex; align-items:center; justify-content:center; }
.cart-drawer .cd-del:hover { background:var(--bg-soft); color:#dc2626; }
.cart-drawer .cd-meta { color:var(--muted); font-size:.92rem; line-height:1.55; }
.cart-drawer .cd-line { display:flex; align-items:flex-end; justify-content:space-between; gap:.75rem; margin-top:.4rem; }
.cart-drawer .cd-qty { display:inline-flex; align-items:center; gap:.1rem; color:var(--muted); font-size:.92rem; }
.cart-drawer .cd-qty > span { margin-right:.3rem; }
.cart-drawer .cd-qty button { width:30px; height:30px; border:none; background:transparent; color:var(--ink); font-size:1.05rem; line-height:1; border-radius:8px; }
.cart-drawer .cd-qty button:hover:not(:disabled) { background:var(--bg-soft); }
.cart-drawer .cd-qty button:disabled { color:var(--muted); opacity:.4; }
.cart-drawer .cd-qty b { min-width:20px; text-align:center; color:var(--ink); }
/* Kampanya hediyesi: 0 TL satir - adedi degistirilemez, silinemez. */
.cart-drawer .cd-gift { display:inline-flex; align-items:center; gap:.3rem; background:#dcfce7; color:#15803d; font-size:.78rem; font-weight:700; border-radius:999px; padding:.05rem .5rem; }
.cart-drawer .cd-qty-fixed { color:var(--muted); font-size:.92rem; }
.cart-drawer .cd-prices { text-align:right; line-height:1.35; white-space:nowrap; }
.cart-drawer .cd-prices del { display:block; color:var(--muted); font-size:.9rem; }
.cart-drawer .cd-prices strong { font-weight:700; font-size:1rem; }
.cart-drawer .cd-edit { display:block; text-align:right; margin-top:.2rem; font-size:.9rem; color:var(--muted) !important; text-decoration:underline; }

.cart-drawer .cd-foot { flex:0 0 auto; border-top:1px solid var(--line); }
.cart-drawer .cd-sum { background:var(--bg-soft); padding:.8rem 1.1rem; display:flex; flex-direction:column; gap:.35rem; }
.cart-drawer .cd-sum-line { display:flex; align-items:center; justify-content:space-between; gap:1rem; font-size:1rem; }
.cart-drawer .cd-plus { color:#16a34a; font-weight:600; }
.cart-drawer .cd-sum-note { color:var(--muted); font-size:.85rem; }
.cart-drawer .cd-checkout { display:flex; align-items:center; justify-content:center; gap:.55rem; padding:1rem; background:var(--bg-soft); border-top:1px solid var(--line); color:var(--ink) !important; font-weight:800; font-size:1rem; letter-spacing:.02em; }
.cart-drawer .cd-checkout:hover { filter:brightness(.96); }
.cart-drawer .cd-gobar { display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:.85rem 1.15rem; padding-bottom:calc(.85rem + env(safe-area-inset-bottom)); background:var(--ink); color:var(--bg) !important; }
.cart-drawer .cd-gobar-total { display:flex; flex-direction:column; line-height:1.25; }
.cart-drawer .cd-gobar-total small { font-size:.85rem; opacity:.75; }
.cart-drawer .cd-gobar-total strong { font-size:1.15rem; font-weight:800; }
.cart-drawer .cd-gobar-cta { display:inline-flex; align-items:center; gap:.35rem; font-weight:800; letter-spacing:.03em; }

.cart-drawer .cd-empty { flex:1 1 auto; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; padding:2rem 1.5rem; }
.cart-drawer .cd-empty > i { font-size:2.6rem; color:var(--muted); margin-bottom:.6rem; }
.cart-drawer .cd-empty-title { font-weight:700; margin:0 0 .2rem; }
.cart-drawer .cd-empty-text { color:var(--muted); font-size:.93rem; margin:0 0 1.1rem; }
.cart-drawer .cd-empty-btn { display:inline-flex; align-items:center; justify-content:center; padding:.7rem 1.4rem; border-radius:var(--radius-sm); background:var(--ink); color:var(--bg) !important; font-weight:700; }

.cart-drawer .cd-loading { flex:1 1 auto; display:flex; align-items:center; justify-content:center; padding:3rem 0; }
.cart-drawer .cd-spin { width:28px; height:28px; border:3px solid var(--line); border-top-color:var(--muted); border-radius:50%; animation:cd-spin .8s linear infinite; }
@keyframes cd-spin { to { transform:rotate(360deg); } }

@media (max-width: 991.98px) {
  /* Yalnız VİTRİN header'ı gizlenir (yerine .mobile-topbar geçer). Seçici body'nin
     doğrudan çocuğuyla sınırlı: aksi halde admin panelinin <header class="admin-topbar">
     öğesi de gizleniyor ve mobilde başlık/menü düğmesi hiç görünmüyordu. */
  body > header, .hdr-mega { display:none !important; }
  .mega-shell { display:block; }
  .vitrin-hero { margin-top:0 !important; }
  .mobile-topbar { display:flex; align-items:center; gap:.5rem; padding:.5rem .7rem; background:var(--surface); border-bottom:1px solid var(--line); position:sticky; top:0; z-index:1035; }
}

/* ============ MARKET arşetip — ürün-odaklı düzen ============ */
.mk-strip{display:flex;flex-wrap:wrap;gap:1.4rem;justify-content:center;background:var(--bg-soft);border:1px solid var(--line);border-radius:var(--radius);padding:.9rem 1.2rem}
.mk-strip span{display:inline-flex;align-items:center;gap:.45rem;color:var(--muted);font-weight:600;font-size:.92rem}
.mk-strip .bi{color:var(--primary);font-size:1.05rem}
.mk-promo{display:flex;align-items:center;gap:1rem;overflow:hidden;border-radius:var(--radius);border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-sm);text-decoration:none;color:inherit}
.mk-promo img{height:120px;width:auto;object-fit:cover}
.mk-promo-body{padding:.6rem 1.1rem;display:flex;flex-direction:column;gap:.2rem}
.mk-promo-body strong{font-size:1.15rem}
.mk-promo-body span{color:var(--muted);font-size:.92rem}
.mk-cats{display:grid;grid-template-columns:repeat(6,1fr);gap:.7rem}
.mk-cat{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:.9rem .5rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);text-decoration:none;color:var(--ink);font-weight:600;font-size:.86rem;transition:border-color .15s,transform .15s}
.mk-cat:hover{border-color:var(--primary);transform:translateY(-2px)}
.mk-cat img{width:56px;height:56px;object-fit:cover;border-radius:50%;border:1px solid var(--line)}
.mk-cat span{text-align:center;line-height:1.2}
@media(max-width:768px){.mk-cats{grid-template-columns:repeat(3,1fr)}}
/* Market: kırmızı indirim vurgusu (referans tarzı) */
[data-theme="market"] .pc-badge.sale{background:var(--sale-bg,#e11d48);color:var(--sale-ink,#fff)}
[data-theme="market"] .prod-rail-head h2{letter-spacing:-.01em}

/* ============================================================= */
/* === STOREFRONT arşetip — sosyal vitrin (profil + grid) ====== */
/* ============================================================= */

/* Mor palet (Sosyal Vitrin teması) */
[data-theme="sosyal"]{
  --primary:#7c3aed; --primary-dark:#6d28d9; --primary-light:#f3effe; --on-primary:#ffffff;
  --accent:#7c3aed;
  --ink:#1b1d29; --ink-soft:#3a3d4d; --muted:#8a8f9c;
  --bg:#ffffff; --bg-soft:#f5f5f7; --surface:#ffffff; --line:#ececf1;
  --radius:16px; --radius-sm:12px;
  --bs-primary:#7c3aed; --bs-primary-rgb:124,58,237; --bs-link-hover-color:#6d28d9;
}
[data-theme="sosyal"] .topbar{ background:var(--ink); color:#fff; }

/* Header */
.hdr-storefront{ background:var(--header-bg); border-bottom:1px solid var(--line); z-index:1030; }
.sf-hdr-inner{ display:flex; align-items:center; gap:1.2rem; min-height:66px; padding-top:.5rem; padding-bottom:.5rem; }
.sf-brand{ flex:0 0 auto; font-family:'Manrope','Inter',sans-serif; font-weight:800; font-size:1.5rem; letter-spacing:-.02em; color:var(--primary)!important; text-decoration:none; display:inline-flex; align-items:center; }
.sf-brand .brand-logo{ max-height:var(--logo-h,38px); width:auto; }
.sf-search{ flex:1 1 auto; max-width:560px; margin:0 auto; display:flex; align-items:center; gap:.5rem; background:var(--bg-soft); border:1px solid transparent; border-radius:999px; padding:.6rem 1.1rem; transition:border-color .15s, box-shadow .15s; }
.sf-search:focus-within{ background:var(--surface); border-color:var(--primary); box-shadow:0 0 0 3px var(--primary-light); }
.sf-search .bi{ color:var(--muted); font-size:1.05rem; }
.sf-search input{ flex:1; border:none; outline:none; background:transparent; font-size:.95rem; color:var(--ink); }
.sf-search-spacer{ flex:1 1 auto; }
.sf-actions{ flex:0 0 auto; display:flex; align-items:center; gap:.35rem; }
.sf-ico, .sf-ico-account .hdr-icon{ position:relative; width:42px; height:42px; border-radius:999px; display:inline-flex; align-items:center; justify-content:center; color:var(--header-ink); font-size:1.15rem; background:transparent; border:none; transition:background .15s, color .15s; text-decoration:none; }
.sf-ico:hover, .sf-ico-account .hdr-icon:hover{ background:var(--primary-light); color:var(--primary); }
.sf-ico .badge-count{ position:absolute; top:2px; right:2px; background:var(--primary); color:#fff; border:2px solid var(--surface); border-radius:999px; font-size:.62rem; min-width:18px; height:18px; line-height:1; display:inline-flex; align-items:center; justify-content:center; padding:0 4px; font-weight:800; }

/* İçerik genişliği: grid sayfaları geniş, içerik sayfaları merkezî */
.sf-main{ max-width:1480px; }
[data-archetype="storefront"] .sf-content{ max-width:1140px; }

/* Kapak */
.sf-cover{ position:relative; border-radius:0 0 var(--radius) var(--radius); overflow:hidden; background:var(--bg-soft); height:clamp(150px,24vw,280px); }
.sf-cover img{ width:100%; height:100%; object-fit:cover; display:block; }
.sf-cover-fallback{ position:absolute; inset:0; display:flex; align-items:center; justify-content:center; background:linear-gradient(120deg,#efeafd,#f6f5f8); }
.sf-cover-fallback span{ font-family:'Manrope','Inter',sans-serif; font-weight:800; font-size:clamp(1.4rem,4vw,2.6rem); letter-spacing:-.02em; color:var(--primary); }

/* Profil bloğu */
.sf-profile{ display:flex; align-items:flex-end; gap:1.2rem; padding:0 .4rem; margin:-52px 0 1.4rem; position:relative; }
.sf-avatar{ flex:0 0 auto; width:118px; height:118px; border-radius:50%; overflow:hidden; background:var(--surface); border:4px solid var(--surface); box-shadow:var(--shadow); display:flex; align-items:center; justify-content:center; }
.sf-avatar img{ width:100%; height:100%; object-fit:cover; }
.sf-avatar span{ font-family:'Manrope','Inter',sans-serif; font-weight:800; font-size:2.4rem; color:var(--primary); }
.sf-profile-main{ flex:1 1 auto; padding-bottom:.35rem; min-width:0; }
.sf-store-name{ font-family:'Manrope','Inter',sans-serif; font-weight:800; font-size:clamp(1.35rem,2.6vw,1.85rem); letter-spacing:-.02em; color:var(--ink); margin:0 0 .15rem; }
.sf-store-tag{ color:var(--ink-soft); font-size:.95rem; margin:0 0 .4rem; max-width:640px; }
.sf-store-meta{ display:flex; align-items:center; gap:.6rem; font-size:.86rem; }
.sf-store-meta a{ color:var(--muted); font-weight:600; text-decoration:none; display:inline-flex; align-items:center; gap:.3rem; }
.sf-store-meta a:hover{ color:var(--primary); }
.sf-store-meta .sf-dot{ color:var(--line); }
.sf-follow{ flex:0 0 auto; align-self:center; display:inline-flex; align-items:center; gap:.4rem; background:var(--surface); color:var(--ink); border:1.5px solid var(--ink); border-radius:999px; padding:.55rem 1.4rem; font-weight:700; font-size:.92rem; text-decoration:none; transition:background .15s, color .15s; }
.sf-follow:hover{ background:var(--ink); color:#fff; }

/* Kategori sekmeleri */
.sf-tabs{ display:flex; align-items:center; gap:.4rem; border-bottom:1px solid var(--line); margin-bottom:1rem; }
.sf-tabs-track{ flex:1 1 auto; display:flex; gap:.3rem; overflow-x:auto; scrollbar-width:none; }
.sf-tabs-track::-webkit-scrollbar{ display:none; }
.sf-tab{ flex:0 0 auto; position:relative; padding:.85rem .9rem; color:var(--muted); font-weight:600; font-size:.95rem; text-decoration:none; white-space:nowrap; border-bottom:2px solid transparent; margin-bottom:-1px; transition:color .15s; }
.sf-tab:hover{ color:var(--ink); }
.sf-tab.active{ color:var(--ink); font-weight:700; border-bottom-color:var(--ink); }
.sf-tabs-more{ flex:0 0 auto; width:34px; height:34px; border-radius:999px; display:inline-flex; align-items:center; justify-content:center; color:var(--ink-soft); background:var(--bg-soft); text-decoration:none; }
.sf-tabs-more:hover{ background:var(--primary-light); color:var(--primary); }

/* Araç çubuğu */
.sf-toolbar{ display:flex; align-items:center; justify-content:space-between; gap:1rem; margin-bottom:1rem; }
.sf-count{ color:var(--muted); font-size:.92rem; font-weight:600; }
.sf-tools{ display:flex; align-items:center; gap:1.2rem; }
.sf-tool{ display:inline-flex; align-items:center; gap:.4rem; color:var(--ink-soft); font-weight:600; font-size:.92rem; text-decoration:none; }
.sf-tool:hover{ color:var(--primary); }

/* Grid — kart uyarlamaları (referans tarzı: temiz, kenarlıksız, kalp sol-üst) */
[data-archetype="storefront"] .product-card{ border:1px solid transparent; box-shadow:none; background:transparent; }
[data-archetype="storefront"] .product-card:hover{ transform:translateY(-4px); border-color:transparent; box-shadow:none; }
[data-archetype="storefront"] .product-card .thumb{ border-radius:var(--radius); border:1px solid var(--line); background:var(--bg-soft); }
[data-archetype="storefront"] .product-card:hover .thumb{ border-color:var(--primary-light); }
[data-archetype="storefront"] .product-card .body{ padding:.7rem .2rem 0; }
[data-archetype="storefront"] .product-card .cat{ display:none; }
[data-archetype="storefront"] .product-card .title{ font-size:.92rem; line-height:1.3; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; min-height:2.4em; }
[data-archetype="storefront"] .product-card .price{ font-family:'Manrope','Inter',sans-serif; font-size:1.05rem; }
[data-archetype="storefront"] .product-card .foot{ padding-top:.5rem; }
/* İndirim rozeti: sol-alt kompakt kırmızı pill; kalp sol-üst */
[data-archetype="storefront"] .pc-badge{ top:auto; bottom:.6rem; left:.6rem; padding:.22rem .5rem; font-size:.7rem; }
[data-archetype="storefront"] .pc-badge.sale{ background:var(--sale-bg,#e11d48); color:var(--sale-ink,#fff); }
[data-archetype="storefront"] .pc-badge.new{ top:.6rem; bottom:auto; left:auto; right:.6rem; background:var(--primary); color:#fff; }
[data-archetype="storefront"] .pc-fav{ left:.6rem; right:auto; top:.6rem; width:32px; height:32px; box-shadow:var(--shadow-sm); }

/* Yüzen kampanya baloncuğu */
.sf-popup{ position:fixed; top:78px; left:50%; transform:translateX(-50%); z-index:1040; max-width:min(92vw,420px); background:var(--surface); border:1px solid var(--line); border-radius:14px; box-shadow:var(--shadow-lg); padding:1rem 1.2rem 1.1rem; text-align:center; }
.sf-popup-close{ position:absolute; top:.5rem; right:.5rem; width:28px; height:28px; border-radius:999px; border:none; background:var(--bg-soft); color:var(--muted); display:inline-flex; align-items:center; justify-content:center; font-size:.8rem; }
.sf-popup-close:hover{ background:var(--primary-light); color:var(--primary); }
.sf-popup-text{ color:var(--ink-soft); font-size:.95rem; margin:.1rem 1rem .7rem; }
.sf-popup-btn{ display:inline-block; background:var(--bg-soft); color:var(--ink); border-radius:999px; padding:.5rem 1.4rem; font-weight:700; font-size:.9rem; text-decoration:none; transition:background .15s, color .15s; }
.sf-popup-btn:hover{ background:var(--primary); color:#fff; }

@media(max-width:768px){
  .sf-hdr-inner{ gap:.6rem; flex-wrap:wrap; }
  .sf-search{ order:3; flex:1 1 100%; max-width:none; margin:0; }
  .sf-profile{ flex-wrap:wrap; margin-top:-44px; gap:.8rem; }
  .sf-avatar{ width:96px; height:96px; }
  .sf-follow{ align-self:flex-start; }
  .sf-profile-main{ flex:1 1 100%; order:3; }
}

/* Araç çubuğu araçları: Sırala / Filtrele nokta + sıralama menüsü */
.sf-tool{ background:transparent; border:none; }
.sf-tool-dot{ display:inline-flex; align-items:center; justify-content:center; min-width:18px; height:18px; padding:0 5px; border-radius:999px; background:var(--primary); color:#fff; font-size:.68rem; font-weight:800; margin-left:.35rem; }
.sf-sortmenu{ border:1px solid var(--line); border-radius:12px; box-shadow:var(--shadow); padding:.35rem; min-width:190px; }
.sf-sortmenu .dropdown-item{ border-radius:8px; font-size:.9rem; font-weight:600; padding:.5rem .7rem; }
.sf-sortmenu .dropdown-item.active,.sf-sortmenu .dropdown-item:active{ background:var(--primary-light); color:var(--primary); }
.sf-sortmenu .dropdown-item:hover{ background:var(--bg-soft); color:var(--ink); }

/* Sağdan açılan Filtrele çekmecesi */
.sf-drawer-backdrop{ position:fixed; inset:0; background:rgba(20,22,28,.42); opacity:0; visibility:hidden; transition:opacity .25s; z-index:1055; }
.sf-drawer-backdrop.open{ opacity:1; visibility:visible; }
.sf-drawer{ position:fixed; top:0; right:0; height:100%; height:100dvh; width:min(430px,92vw); max-width:100vw; background:var(--surface); box-shadow:-12px 0 40px rgba(20,22,28,.18); transform:translateX(100%); transition:transform .28s cubic-bezier(.4,0,.2,1); z-index:1056; display:flex; flex-direction:column; }
.sf-drawer.open{ transform:translateX(0); }
.sf-drawer-form{ display:flex; flex-direction:column; height:100%; min-height:0; min-width:0; }
.sf-drawer-head{ display:flex; align-items:center; justify-content:space-between; gap:.75rem; padding:1.1rem 1.3rem; border-bottom:1px solid var(--line); }
.sf-drawer-head h5{ margin:0; font-weight:800; font-size:1.15rem; display:inline-flex; align-items:center; gap:.5rem; }
.sf-drawer-close{ flex:0 0 auto; width:34px; height:34px; border-radius:999px; border:none; background:var(--bg-soft); color:var(--ink-soft); display:inline-flex; align-items:center; justify-content:center; }
.sf-drawer-close:hover{ background:var(--primary-light); color:var(--primary); }
/* min-width:0 şart: içerideki sayı kutuları kendi doğal genişliğinde ısrar edip
   gövdeyi yana kaydırıyordu (mobilde filtreler ekranın dışına taşıyordu). */
.sf-drawer-body{ flex:1 1 auto; min-width:0; overflow-y:auto; overflow-x:hidden; overscroll-behavior:contain; -webkit-overflow-scrolling:touch; padding:1.1rem 1.3rem; }
/* Filtre grubu = katlanır bölüm (<details>). Seçim yoksa kapalı gelir. */
.sf-fgroup{ border:1px solid var(--line); border-radius:14px; margin-bottom:.8rem; overflow:hidden; }
.sf-fgroup > summary{ display:flex; align-items:center; gap:.5rem; min-height:48px; padding:.8rem 1.05rem; font-weight:800; font-size:1rem; color:var(--ink); cursor:pointer; user-select:none; list-style:none; }
.sf-fgroup > summary::-webkit-details-marker{ display:none; }
.sf-fgroup > summary:hover{ background:var(--bg-soft); }
.sf-ftitle{ flex:1 1 auto; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.sf-fcount{ flex:0 0 auto; max-width:45%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:.76rem; font-weight:700; padding:.2rem .55rem; border-radius:999px; background:var(--primary-light); color:var(--primary); }
.sf-caret{ flex:0 0 auto; font-size:.8rem; color:var(--muted); transition:transform .2s; }
.sf-fgroup[open] > summary > .sf-caret{ transform:rotate(180deg); }
.sf-fbody{ padding:.15rem 1.05rem 1rem; }
.sf-chips{ display:flex; flex-wrap:wrap; gap:.5rem; }
.sf-chip{ display:inline-flex; align-items:center; gap:.3rem; max-width:100%; padding:.5rem .9rem; border-radius:999px; background:var(--bg-soft); color:var(--ink-soft); font-size:.86rem; font-weight:600; cursor:pointer; text-decoration:none; border:1.5px solid transparent; transition:background .15s,color .15s,border-color .15s; text-align:center; line-height:1.2; overflow-wrap:anywhere; }
.sf-chip:hover{ border-color:var(--primary); color:var(--ink); }
.sf-chip input{ position:absolute; opacity:0; width:0; height:0; }
.sf-chip.on,.sf-chip.sel:has(input:checked){ background:var(--ink); color:#fff; border-color:var(--ink); }
/* Uzun listeler: ilk N seçenek görünür, gerisi "daha fazla" ile açılır (JS ekler) */
.sf-chips.collapsed:not(.searching) .sf-chip.extra{ display:none; }
.sf-chip.hide{ display:none; }
.sf-more{ display:inline-flex; align-items:center; gap:.35rem; margin-top:.6rem; padding:.4rem 0; border:none; background:none; color:var(--primary); font-weight:700; font-size:.88rem; }
.sf-catsearch{ position:relative; margin-bottom:.7rem; }
.sf-catsearch input{ width:100%; box-sizing:border-box; padding:.55rem .8rem .55rem 2.1rem; border:1px solid var(--line); border-radius:10px; background:var(--bg-soft); color:var(--ink); font-size:.9rem; outline:none; }
.sf-catsearch input:focus{ border-color:var(--primary); background:var(--surface); box-shadow:0 0 0 3px var(--primary-light); }
.sf-catsearch > i{ position:absolute; left:.75rem; top:50%; transform:translateY(-50%); color:var(--muted); font-size:.9rem; pointer-events:none; }
.sf-subhead{ margin:.95rem 0 .5rem; font-size:.74rem; font-weight:700; letter-spacing:.05em; text-transform:uppercase; color:var(--muted); }
.sf-empty{ margin:.5rem 0 0; color:var(--muted); font-size:.86rem; }
.sf-price{ display:flex; align-items:center; gap:.6rem; }
.sf-price input{ flex:1 1 0; min-width:0; width:100%; border:1px solid var(--line); border-radius:10px; padding:.55rem .7rem; font-size:.9rem; outline:none; background:var(--surface); color:var(--ink); }
.sf-price input:focus{ border-color:var(--primary); box-shadow:0 0 0 3px var(--primary-light); }
.sf-drawer-foot{ flex:0 0 auto; display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:1rem 1.3rem calc(1rem + env(safe-area-inset-bottom)); border-top:1px solid var(--line); background:var(--surface); }
.sf-clear{ flex:0 0 auto; color:var(--primary); font-weight:700; font-size:.92rem; text-decoration:none; }
.sf-clear:hover{ text-decoration:underline; }
.sf-apply{ flex:1 1 auto; max-width:260px; border-radius:999px; font-weight:800; padding:.7rem 1.4rem; }
/* Çekmece açıkken WhatsApp balonu (z-index 1090) "Uygula" düğmesinin üstüne biniyordu */
body.sf-drawer-open .wa-float{ opacity:0; visibility:hidden; pointer-events:none; }

@media (max-width:767.98px){
  .sf-drawer-head{ padding:.9rem 1rem; }
  .sf-drawer-body{ padding:.9rem 1rem; }
  .sf-fgroup > summary{ padding:.75rem .85rem; }
  .sf-fbody{ padding:.1rem .85rem .9rem; }
  .sf-chip{ min-height:40px; padding:.55rem .85rem; }
  .sf-price{ gap:.45rem; }
  .sf-drawer-foot{ padding:.85rem 1rem calc(.85rem + env(safe-area-inset-bottom)); }
  .sf-apply{ max-width:none; }
}

/* ═══════════════════ SNEAKSNET (lime + siyah sokak / sneaker) ═══════════════════ */
[data-theme="sneaksnet"]{
  --primary:#a4d037; --primary-dark:#8cbf22; --primary-light:#f1f8de; --on-primary:#14161c; --accent:#a4d037;
  --ink:#111114; --ink-soft:#3a3d44; --muted:#8a8f9a; --bg:#ffffff; --bg-soft:#f3f4f6; --surface:#ffffff; --line:#e7e9ee;
  --header-bg:#ffffff; --header-ink:#111114; --footer-bg:#111114; --footer-ink:#c7cad2; --card-bg:#ffffff;
  --radius:14px; --radius-sm:8px;
  --bs-primary:#a4d037; --bs-primary-rgb:164,208,55; --bs-body-bg:#ffffff; --bs-body-color:#111114; --bs-border-color:#e7e9ee;
}
[data-theme="sneaksnet"] .topbar{ background:#111114; color:#fff; }
[data-theme="sneaksnet"] .btn-primary{ color:#14161c; font-weight:800; }

.sn-hero{ background:var(--bg-soft); border-radius:20px; padding:clamp(1.6rem,4vw,3.4rem); display:grid; grid-template-columns:1.05fr .95fr; gap:1.5rem; align-items:center; margin-bottom:1.6rem; overflow:hidden; }
.sn-hero-eyebrow{ display:inline-block; font-weight:800; font-size:.72rem; letter-spacing:.16em; text-transform:uppercase; color:var(--ink); background:var(--primary); padding:.32rem .7rem; border-radius:6px; }
.sn-hero h1{ font-family:'Archivo',sans-serif; font-weight:900; font-size:clamp(2rem,5vw,3.6rem); line-height:.98; color:var(--ink); margin:.7rem 0 .5rem; text-transform:uppercase; }
.sn-hero p{ color:var(--ink-soft); font-size:1.05rem; max-width:420px; margin-bottom:1.3rem; }
.sn-hero .btn{ background:var(--primary); color:var(--on-primary); border:none; font-weight:800; text-transform:uppercase; letter-spacing:.03em; padding:.72rem 1.6rem; border-radius:8px; }
.sn-hero .btn:hover{ background:var(--primary-dark); }
.sn-hero-art{ display:flex; align-items:center; justify-content:center; }
.sn-hero-art img,.sn-hero-art svg{ width:100%; max-width:440px; height:auto; }

.sn-wall{ display:grid; grid-template-columns:repeat(6,1fr); gap:.6rem; margin-bottom:1.8rem; }
.sn-wall a{ display:block; aspect-ratio:1; border-radius:12px; overflow:hidden; background:var(--bg-soft); border:1px solid var(--line); }
.sn-wall img{ width:100%; height:100%; object-fit:cover; transition:transform .3s ease; }
.sn-wall a:hover img{ transform:scale(1.06); }

.sn-band{ background:var(--primary); color:var(--on-primary); border-radius:14px; padding:1.05rem 1.6rem; display:flex; align-items:baseline; gap:.85rem; flex-wrap:wrap; margin:1.4rem 0 1rem; }
.sn-band-sm{ font-weight:700; font-size:.85rem; letter-spacing:.05em; text-transform:uppercase; opacity:.85; }
.sn-band-lg{ font-family:'Archivo',sans-serif; font-weight:900; font-size:clamp(1.4rem,3.4vw,2.3rem); text-transform:uppercase; letter-spacing:-.01em; }

.sn-feature{ display:grid; grid-template-columns:1fr 1fr; gap:1rem; margin-bottom:.6rem; }
.sn-feature-card{ position:relative; background:var(--bg-soft); border:1px solid var(--line); border-radius:16px; overflow:hidden; display:flex; align-items:center; justify-content:center; min-height:320px; padding:1.4rem; text-decoration:none; transition:box-shadow .2s ease; }
.sn-feature-card:hover{ box-shadow:0 12px 30px rgba(16,24,40,.12); }
.sn-feature-card>img{ max-width:80%; max-height:230px; object-fit:contain; }
.sn-feature-meta{ position:absolute; left:1.4rem; right:1.4rem; bottom:1.2rem; display:flex; align-items:flex-end; justify-content:space-between; gap:1rem; }
.sn-feature-meta h3{ font-family:'Archivo',sans-serif; font-weight:800; text-transform:uppercase; font-size:clamp(1.05rem,2vw,1.55rem); margin:0; color:var(--ink); line-height:1.02; }
.sn-feature-meta .btn{ background:var(--primary); color:var(--on-primary); font-weight:800; font-size:.72rem; text-transform:uppercase; letter-spacing:.05em; padding:.5rem .9rem; border-radius:6px; white-space:nowrap; border:none; }

@media (max-width:768px){
  .sn-hero{ grid-template-columns:1fr; }
  .sn-hero-art{ order:-1; }
  .sn-wall{ grid-template-columns:repeat(3,1fr); }
  .sn-feature{ grid-template-columns:1fr; }
}


/* ═══════════════════ BOOMER — siyah/beyaz butik sokak vitrini ═══════════════════
   Keskin köşe (radius 0), Poppins, tam genişlik slider, görsel duvarı,
   "KEŞFET" kategori kuleleri, marka vitrin blokları, siyah kare indirim rozeti,
   siyah bülten bandı ve sipariş sorgulama formu.                                  */
html[data-theme="boomer"]{ overflow-x:clip; }   /* .bmr-full tam genişlik taşmasını kırp (sticky bozulmaz) */

[data-theme="boomer"]{
  --primary:#050505; --primary-dark:#000000; --primary-light:#f2f2f3; --on-primary:#ffffff; --accent:#050505;
  --ink:#000000; --ink-soft:#232323; --muted:#8b8b8b; --bg:#ffffff; --bg-soft:#f7f7f7; --surface:#ffffff; --line:#e9e9ec;
  --header-bg:#ffffff; --header-ink:#031c37; --footer-bg:#ffffff; --footer-ink:#8b8b8b; --footer-head:#000000; --footer-link:#8b8b8b;
  --card-bg:#ffffff; --sale-bg:#000000; --sale-ink:#ffffff;
  --radius:0px; --radius-sm:0px;
  --shadow-sm:none; --shadow:0 5px 5px -7px #989898; --shadow-lg:0 18px 44px rgba(0,0,0,.14);
  --bs-primary:#050505; --bs-primary-rgb:5,5,5; --bs-body-bg:#ffffff; --bs-body-color:#000000; --bs-border-color:#e9e9ec;
  --bs-link-color:#000000; --bs-link-hover-color:#232323;
}
[data-theme="boomer"] body{ font-family:'Poppins','Inter',sans-serif; }
[data-theme="boomer"] :is(h1,h2,h3,h4,h5,h6,.navbar-brand,.btn,.product-card .title,.product-card .price){ font-family:'Poppins','Inter',sans-serif; }
[data-theme="boomer"] :is(h1,h2,h3,.section-head h2){ letter-spacing:0; }
[data-theme="boomer"] .topbar{ background:#050505; color:#f7f7fa; font-size:.86rem; font-weight:500; letter-spacing:.01em; padding:.82rem 0; }
[data-theme="boomer"] :is(.btn,.btn-lg,.btn-sm,.form-control,.form-select,.panel,.chip,.badge){ border-radius:0; }
[data-theme="boomer"] .btn-primary{ background:#000; border-color:#000; color:#fff; font-weight:700; }
[data-theme="boomer"] .btn-primary:hover{ background:#232323; border-color:#232323; color:#fff; }
[data-theme="boomer"] .btn-outline-primary{ background:#fff; border:.8px solid #000; color:#232323; font-weight:700; }
[data-theme="boomer"] .btn-outline-primary:hover{ background:#000; color:#fff; }

/* ── Header (beyaz, 80px, logo sol · menü · sağda ikonlar) ───────────────────── */
.bmr-hdr{ position:sticky; top:0; z-index:1030; background:var(--header-bg); box-shadow:0 5px 5px -7px #989898; }
.bmr-hdr-inner{ max-width:1390px; margin:0 auto; padding:0 1.2rem; min-height:80px; display:flex; align-items:center; gap:2rem; }
.bmr-logo{ flex:0 0 auto; font-weight:800; font-size:1.6rem; letter-spacing:-.02em; text-transform:uppercase; color:#000 !important; display:inline-flex; align-items:center; }
.bmr-logo .brand-logo{ height:var(--logo-h,52px); max-width:var(--logo-mw,230px); }
.bmr-nav{ flex:1 1 auto; min-width:0; }
.bmr-nav > ul{ display:flex; align-items:center; flex-wrap:wrap; gap:.4rem 1.7rem; list-style:none; margin:0; padding:0; }
.bmr-nav .nav-item{ position:relative; }
.bmr-nav .nav-link{ display:inline-flex; align-items:center; gap:.35rem; font-size:.875rem; font-weight:400; letter-spacing:normal; text-transform:none; color:#031c37 !important; background:none !important; padding:.5rem 0 !important; }
.bmr-nav .nav-link:hover{ color:#000 !important; }
.bmr-nav .nav-dd{ border-radius:0; border-top:2px solid #000; padding:.45rem; }
.bmr-nav .nav-dd a{ border-radius:0; color:#5b5b5b; font-size:.875rem; }
.bmr-nav .nav-dd a:hover{ background:#f4f4f5; color:#000; }
.bmr-actions{ flex:0 0 auto; display:flex; align-items:center; gap:.1rem; }
.bmr-actions .hdr-icon{ border-radius:0; color:#000; font-size:1.25rem; }
.bmr-actions .hdr-icon:hover{ background:transparent; opacity:.6; }
.bmr-actions .hdr-icon .badge-count{ background:#000; color:#fff; border-color:#fff; }
.bmr-actions .dropdown-menu{ border-radius:0; border-color:#e9e9ec; }

/* ── Gövde: 1390 kapsayıcı + tam genişlik (full-bleed) bölümler ──────────────── */
.bmr-main{ max-width:1390px; margin:0 auto; padding:0 1.2rem 1rem; }
.bmr-full{ margin-left:calc(50% - 50vw); margin-right:calc(50% - 50vw); }

/* ── Hero slider (tam genişlik, ok + nokta) ──────────────────────────────────── */
.bmr-slider{ background:#f1efec; margin-bottom:1.5rem; }
.bmr-slider .carousel-item img{ width:100%; height:clamp(240px,40vw,577px); object-fit:cover; display:block; }
.bmr-slider .carousel-indicators{ margin-bottom:1.4rem; gap:.5rem; }
.bmr-slider .carousel-indicators [data-bs-target]{ width:8px; height:8px; margin:0; border:none; border-radius:50%; background:#fff; opacity:1; transition:width .25s ease, background .25s ease, border-radius .25s ease; }
.bmr-slider .carousel-indicators .active{ width:32px; border-radius:160px; background:#000; }
.bmr-slider .carousel-control-prev,.bmr-slider .carousel-control-next{ width:72px; opacity:1; }
.bmr-arrow{ width:25px; height:25px; display:inline-flex; align-items:center; justify-content:center; color:#000; font-size:1.55rem; line-height:1; }
.bmr-slide-cap{ position:absolute; left:50%; top:2.2rem; transform:translateX(-50%); width:min(92%,860px); text-align:center; }
.bmr-slide-cap h3{ display:inline-block; background:#7d1420; color:#fff; font-size:clamp(.85rem,1.6vw,1.32rem); font-weight:700; text-transform:uppercase; letter-spacing:.01em; margin:0 0 .3rem; padding:.28rem .8rem; line-height:1.35; }
.bmr-slide-cap p{ display:inline-block; background:#7d1420; color:#fff; font-size:clamp(.72rem,1.25vw,1.02rem); font-weight:600; text-transform:uppercase; margin:0; padding:.24rem .8rem; }
.bmr-slide-cap .btn{ display:inline-block; margin-top:.7rem; background:#000; color:#fff; border:none; font-weight:700; padding:.6rem 1.6rem; font-size:.85rem; text-transform:uppercase; letter-spacing:.05em; }
.bmr-slide-cap .btn:hover{ background:#fff; color:#000; }

/* ── Görsel duvarı (3 kolon, beyaz zeminde contain) ──────────────────────────── */
.bmr-gallery{ display:grid; grid-template-columns:repeat(3,1fr); gap:1.5rem; margin:1.6rem 0; }
.bmr-gallery a{ display:block; background:#fff; overflow:hidden; }
.bmr-gallery img{ width:100%; aspect-ratio:1/1; object-fit:contain; transition:transform .4s ease; }
.bmr-gallery a:hover img{ transform:scale(1.05); }

/* ── Kategori kuleleri (görsel + beyaz KEŞFET pill) ──────────────────────────── */
.bmr-tiles{ display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; margin:1.6rem 0 2.6rem; }
.bmr-tile{ position:relative; display:block; aspect-ratio:2/3; overflow:hidden; background:#efefef; }
.bmr-tile img{ width:100%; height:100%; object-fit:cover; transition:transform .5s ease; }
.bmr-tile:hover img{ transform:scale(1.05); }
.bmr-tile::after{ content:""; position:absolute; inset:0; background:linear-gradient(180deg,rgba(0,0,0,0) 40%,rgba(0,0,0,.42) 100%); }
.bmr-tile-body{ position:absolute; z-index:2; left:0; right:0; bottom:9%; text-align:center; padding:0 1rem; }
.bmr-tile-body h3{ margin:0 0 1rem; color:#fff; font-size:clamp(1.35rem,2.4vw,2rem); font-weight:900; text-transform:uppercase; text-shadow:0 2px 18px rgba(0,0,0,.45); }
.bmr-tile-btn{ display:inline-block; width:195px; max-width:80%; padding:11px 0; background:#fff; color:#000; border-radius:100px; font-size:.875rem; font-weight:700; letter-spacing:.7px; text-align:center; transition:background .2s ease, color .2s ease; }
.bmr-tile:hover .bmr-tile-btn{ background:#000; color:#fff; }

/* ── Marka / kategori vitrin bloğu (başlık + büyük görsel + 3×2 ürün) ────────── */
.bmr-showcase{ padding:1.4rem 0; }
.bmr-sc-title{ text-align:center; margin:0 0 1.4rem; font-size:clamp(1.5rem,2.6vw,2.19rem); font-weight:700; text-transform:uppercase; color:#000; }
.bmr-sc-grid{ display:grid; grid-template-columns:4fr 8fr; gap:1.5rem; align-items:stretch; }
.bmr-sc-hero{ display:block; overflow:hidden; background:#f5f5f5; min-height:100%; }
.bmr-sc-hero img{ width:100%; height:100%; min-height:320px; object-fit:cover; display:block; transition:transform .5s ease; }
.bmr-sc-hero:hover img{ transform:scale(1.04); }
.bmr-sc-items{ display:grid; grid-template-columns:repeat(3,1fr); gap:1.5rem; }

/* ── Ürün kartı (referans: çerçevesiz, beyaz zemin, ad 14px, fiyat 900) ──────── */
.bmr-card{ display:block; color:inherit; }
.bmr-card:hover{ color:inherit; }
.bmr-card .ph{ display:block; position:relative; overflow:hidden; background:#fff; }
.bmr-card .ph img{ display:block; width:100%; aspect-ratio:1/1; object-fit:contain; transition:transform .4s ease; }
.bmr-card:hover .ph img{ transform:scale(1.05); }
.bmr-card .nm{ margin:.75rem 0 .45rem; font-size:.875rem; font-weight:400; line-height:1.5; color:#000; }
.bmr-price{ display:flex; align-items:center; gap:.5rem; }
.bmr-disc{ flex:0 0 38px; width:38px; height:38px; display:inline-flex; align-items:center; justify-content:center; background:#000; color:#fff; font-size:.75rem; font-weight:900; }
.bmr-price-col{ display:flex; flex-direction:column; line-height:1.2; }
.bmr-old{ font-size:.8rem; font-weight:500; color:#9b9b9b; text-decoration:line-through; }
.bmr-now{ font-size:1.125rem; font-weight:900; color:#000; }
.bmr-note{ margin-top:.35rem; font-size:.82rem; color:#8b8b8b; }
.bmr-soldout{ display:inline-block; margin-top:.35rem; background:#ededed; color:#000; font-size:.72rem; font-weight:700; padding:.2rem .55rem; text-transform:uppercase; }

.bmr-prods{ display:grid; grid-template-columns:repeat(4,1fr); gap:1.5rem; }
.bmr-favs{ padding:1.6rem 0 .6rem; }
.bmr-favs h2{ text-align:center; margin:0 0 1.4rem; font-size:clamp(1.25rem,2.2vw,1.56rem); font-weight:700; text-transform:uppercase; }

/* ── Avantaj şeridi (3 kolon, büyük siyah ikon) ──────────────────────────────── */
.bmr-features{ display:grid; grid-template-columns:repeat(3,1fr); gap:1.5rem; max-width:1000px; margin:3rem auto; text-align:center; }
.bmr-feature i{ display:block; margin-bottom:.9rem; font-size:2.6rem; color:#000; line-height:1; }
.bmr-feature h4{ margin:0 0 .5rem; font-size:.94rem; font-weight:600; text-transform:uppercase; letter-spacing:.01em; color:#000; }
.bmr-feature p{ margin:0; font-size:.94rem; color:#000; }

/* ── Bülten bandı (tam genişlik, siyah + görsel) ─────────────────────────────── */
.bmr-subscribe{ position:relative; overflow:hidden; background:#010101; padding:3.4rem 1.2rem; text-align:center; }
.bmr-sub-bg{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; opacity:.8; }
.bmr-sub-in{ position:relative; z-index:2; max-width:660px; margin:0 auto; }
.bmr-sub-in h2{ margin:0 0 .45rem; color:#fff; font-size:clamp(1.7rem,3.6vw,2.4rem); font-weight:900; text-transform:uppercase; text-shadow:0 2px 20px rgba(0,0,0,.5); }
.bmr-sub-in > p:not(.bmr-sub-kvkk){ margin:0 0 1.25rem; color:#fff; font-size:.94rem; font-weight:600; text-transform:uppercase; letter-spacing:.02em; text-shadow:0 2px 14px rgba(0,0,0,.5); }
.bmr-sub-form{ display:flex; justify-content:center; }
.bmr-sub-form input{ width:280px; max-width:58vw; height:47px; padding:0 20px; border:none; background:#fff; color:#495057; font-size:.94rem; outline:none; }
.bmr-sub-form button{ height:47px; padding:0 15px; border:none; background:#000; color:#fff; font-size:.875rem; font-weight:700; }
.bmr-sub-form button:hover{ background:#232323; }
.bmr-sub-kvkk{ margin:1rem 0 0; color:#fff; font-size:.875rem; text-shadow:0 2px 14px rgba(0,0,0,.5); }
.bmr-sub-kvkk a{ color:#fff; text-decoration:underline; }

/* ── Sipariş sorgulama formu ─────────────────────────────────────────────────── */
.bmr-track{ max-width:812px; margin:2.6rem auto 3.4rem; }
.bmr-track-grid{ display:grid; grid-template-columns:1fr 1fr; gap:1rem 2rem; }
.bmr-fld label{ display:block; margin-bottom:.25rem; font-size:.875rem; font-weight:500; color:#6c757d; }
.bmr-fld label span{ color:#dc3545; }
.bmr-fld input{ width:100%; padding:.5rem 0; border:none; border-bottom:1px solid #dcdcdc; background:transparent; font-size:.875rem; font-weight:500; color:#000; outline:none; }
.bmr-fld input:focus{ border-bottom-color:#000; }
.bmr-track .bmr-track-btn{ display:block; width:100%; margin-top:1.6rem; height:56px; border:none; border-radius:100px; background:#000; color:#fff; font-size:.94rem; font-weight:700; letter-spacing:.06em; text-transform:uppercase; }
.bmr-track .bmr-track-btn:hover{ background:#232323; color:#fff; }

/* ── Ödeme rozetleri (footer) ────────────────────────────────────────────────── */
.bmr-pay{ display:flex; align-items:center; gap:.55rem; font-size:1.9rem; line-height:1; color:#1a1f71; }
.bmr-pay .bi-mastercard{ color:#eb001b; }
.bmr-pay .bi-paypal{ color:#003087; }

/* ── Arşetip geneli: liste/kategori sayfalarındaki ortak bileşenler ──────────── */
[data-archetype="boomer"] .product-card{ border:none; border-radius:0; background:transparent; box-shadow:none; }
[data-archetype="boomer"] .product-card:hover{ transform:none; box-shadow:none; border-color:transparent; }
[data-archetype="boomer"] .product-card .thumb{ border-radius:0; background:#fff; }
[data-archetype="boomer"] .product-card .thumb img{ background:#fff; }
[data-archetype="boomer"] .product-card .body{ padding:.7rem .1rem 0; }
[data-archetype="boomer"] .product-card .cat{ display:none; }
[data-archetype="boomer"] .product-card .title{ font-size:.875rem; font-weight:400; letter-spacing:0; text-transform:none; color:#000; }
[data-archetype="boomer"] .product-card .price{ font-size:1.125rem; font-weight:900; }
[data-archetype="boomer"] .product-card .old-price{ color:#9b9b9b; }
[data-archetype="boomer"] .pc-badge{ border-radius:0; box-shadow:none; font-weight:900; }
[data-archetype="boomer"] .pc-badge.sale{ background:#000; color:#fff; }
[data-archetype="boomer"] .pc-badge.new{ background:#000; color:#fff; }
[data-archetype="boomer"] .pc-fav{ border-radius:0; }
[data-archetype="boomer"] .pc-add{ border-radius:0; background:#fff; border:.8px solid #000; color:#232323; font-weight:700; }
[data-archetype="boomer"] .pc-add:hover{ background:#000; color:#fff; }
[data-archetype="boomer"] .section-head h2{ font-weight:700; letter-spacing:0; }
[data-archetype="boomer"] :is(.panel,.cat-banner,.chip,.fchk,.sf-chip,.nav-dd,.dropdown-menu,.search-panel input){ border-radius:0; }
[data-archetype="boomer"] .fchk:has(input:checked){ background:#000; border-color:#000; color:#fff; }

/* ── Footer (beyaz gövde + tam genişlik siyah telif şeridi) ──────────────────── */
[data-archetype="boomer"] .site-footer{ background:#fff; color:#8b8b8b; border-top:1px solid #ededed; margin-top:0; padding:2.8rem 0 0; }
[data-archetype="boomer"] .site-footer h6{ color:#000; font-size:1.02rem; font-weight:700; text-transform:none; letter-spacing:0; }
[data-archetype="boomer"] .site-footer a{ color:#8b8b8b; }
[data-archetype="boomer"] .site-footer a:hover{ color:#000; }
[data-archetype="boomer"] .site-footer .brand{ color:#000; font-family:'Poppins',sans-serif; font-weight:800; font-size:1.5rem; }
[data-archetype="boomer"] .site-footer .form-control{ border-radius:0; }
/* _Layout.cshtml.css (scoped ASP.NET şablon artığı) footer bülten butonunu maviye boyuyor —
   siyah/beyaz paleti bozmasın diye burada daha yüksek özgüllükle geri alınır. */
[data-archetype="boomer"] .site-footer .btn-primary{ background:#000; border-color:#000; color:#fff; }
[data-archetype="boomer"] .site-footer .copy{ margin:2.4rem calc(50% - 50vw) 0; padding:1.25rem calc(50vw - 50% + .75rem); background:#000; color:#fff; border-top:none; font-size:.81rem; }
[data-archetype="boomer"] .site-footer .copy a{ color:#fff; display:inline; }

/* ── Duyarlı ─────────────────────────────────────────────────────────────────── */
@media (max-width:1199.98px){
  .bmr-prods{ grid-template-columns:repeat(3,1fr); }
}
@media (max-width:991.98px){
  .bmr-sc-grid{ grid-template-columns:1fr; }
  .bmr-sc-hero img{ min-height:240px; max-height:360px; }
}
@media (max-width:767.98px){
  .bmr-gallery,.bmr-tiles{ grid-template-columns:repeat(2,1fr); gap:.8rem; }
  .bmr-prods,.bmr-sc-items{ grid-template-columns:repeat(2,1fr); gap:1rem; }
  .bmr-features{ grid-template-columns:1fr; gap:2rem; margin:2.2rem auto; }
  .bmr-track-grid{ grid-template-columns:1fr; }
  .bmr-sub-form input{ max-width:52vw; }
  .bmr-slide-cap{ top:1rem; }
}
/* ═══════════════ MOBİL VERİ TABLOLARI ═══════════════
   responsive-tables.js her hücreye başlık metnini data-label olarak yazar;
   ≤767px'de tablo satırları "etiket → değer" kartına dönüşür. Kart görünümüne
   uygun olmayan tablolar .table-scroll içinde yatay kaydırılır. */

.table-scroll { overflow-x:auto; -webkit-overflow-scrolling:touch; max-width:100%; }

@media (max-width: 767.98px) {
  table.t-stack, table.t-stack > tbody, table.t-stack > tbody > tr, table.t-stack > tbody > tr > td {
    display:block; width:100%;
  }
  table.t-stack > thead { display:none; }

  table.t-stack > tbody > tr {
    border:1px solid var(--line); border-radius:12px;
    background:var(--surface);
    padding:.55rem .8rem; margin:0 0 .7rem;
  }
  table.t-stack > tbody > tr:last-child { margin-bottom:0; }

  table.t-stack > tbody > tr > td {
    display:flex; align-items:center; justify-content:space-between; gap:.9rem;
    padding:.34rem 0; border:0; box-shadow:none;
    text-align:right; min-height:0;
  }
  table.t-stack > tbody > tr > td + td { border-top:1px solid var(--line); }

  /* Hücre içeriği (responsive-tables.js sarar) — etiketin karşısında tek blok. */
  table.t-stack > tbody > tr > td > .t-val { flex:1 1 auto; min-width:0; text-align:right; }
  table.t-stack > tbody > tr > td > .t-val > div { display:block; }

  table.t-stack > tbody > tr > td::before {
    content:attr(data-label);
    flex:0 0 40%; text-align:left;
    font-size:.76rem; font-weight:700; text-transform:uppercase; letter-spacing:.03em;
    color:var(--muted); line-height:1.25;
  }
  /* Görselli hücre (ürün satırı): etiket üstte, içerik altta sola yaslı. */
  table.t-stack > tbody > tr > td.t-media { display:block; text-align:left; }
  table.t-stack > tbody > tr > td.t-media::before { display:block; flex:none; margin-bottom:.3rem; }
  table.t-stack > tbody > tr > td.t-media > .t-val {
    display:flex; align-items:center; gap:.7rem; text-align:left;
  }
  table.t-stack > tbody > tr > td.t-media img { flex:0 0 auto; max-width:72px; height:auto; }

  /* Başlığı boş kolon (genelde eylem düğmeleri) tam genişlik alsın. */
  table.t-stack > tbody > tr > td[data-label=""] { display:block; text-align:left; }
  table.t-stack > tbody > tr > td[data-label=""]::before { display:none; }
  table.t-stack > tbody > tr > td[data-label=""] .btn { width:100%; }
  table.t-stack > tbody > tr > td[data-label=""] .btn + .btn { margin-top:.4rem; }
  /* Metinsiz (yalnız ikon) eylem hücresi: sağa yaslı, doğal genişlikte. */
  table.t-stack > tbody > tr > td.t-icons { display:flex; justify-content:flex-end; }
  table.t-stack > tbody > tr > td.t-icons::before { display:none; }
  table.t-stack > tbody > tr > td.t-icons .btn { width:auto; }

  /* Yan yana duran eylem düğmeleri (d-flex / btn-group) kendi düzenini korusun. */
  table.t-stack > tbody > tr > td[data-label=""] :is(.d-flex, .btn-group, .btn-toolbar) .btn { width:auto; margin-top:0; }

  /* "Kayıt yok" gibi tek hücreye yayılan satırlar kart olmasın. */
  table.t-stack > tbody > tr.t-stack-full { border:0; padding:0; background:transparent; }
  table.t-stack > tbody > tr.t-stack-full > td { display:block; text-align:center; padding:1rem 0; border-top:0; }
  table.t-stack > tbody > tr.t-stack-full > td::before { display:none; }

  /* Uzun sipariş numarası / e-posta gibi değerler taşmasın. */
  table.t-stack > tbody > tr > td { overflow-wrap:anywhere; }

  /* Tablo p-0 panelin içindeyse kartlara nefes payı ver. */
  .panel.p-0:has(> table.t-stack),
  .panel.p-0:has(> .table-scroll > table.t-stack) { padding:.7rem; background:transparent; border:0; box-shadow:none; }
}

/* ═══════════════ MOBİL: FORM & DOKUNMA HEDEFLERİ ═══════════════ */

/* iOS Safari, 16px'ten küçük yazılı bir alana odaklanınca sayfayı kendiliğinden
   yakınlaştırır (kök yazı boyutu mobilde 15px olduğu için tüm alanlar bu tuzağa
   düşüyordu). Yalnız telefon genişliği yetmez: iPad portrait 768px'tir, orada da
   aynı zoom oluyor — bu yüzden dokunmatik cihazların tamamı kapsanıyor. */
@media (max-width: 991.98px), (hover: none) and (pointer: coarse) {
  .form-control, .form-select, .sf-price input,
  input:not([type=checkbox]):not([type=radio]):not([type=range]), select, textarea {
    font-size: 16px;
  }
}

@media (max-width: 767.98px) {
  /* Onay kutusu / radyo 15px'ti — parmakla isabet ettirmek zordu. */
  .form-check-input { width:1.35rem; height:1.35rem; margin-top:.1em; }
  /* Uyarı/panel kapatma düğmesi de 20px'ti. */
  .btn-close { width:1.4rem; height:1.4rem; background-size:.85rem; }
  .form-check-label { padding-left:.15rem; }
  .form-switch .form-check-input { width:2.4rem; height:1.2rem; }

  /* Küçük düğmeler en az 36px yüksekliğe çıksın (WCAG dokunma hedefi). */
  .btn-sm { min-height:36px; padding-top:.35rem; padding-bottom:.35rem; }

  /* Vitrin araç çubuğu (Sırala / Filtrele) 21px yüksekliğindeydi. */
  .sf-tool { min-height:40px; display:inline-flex; align-items:center; padding:.4rem .3rem; }
}

/* ═════════════ SNEAKS / "Sneaksnet Pro" — tam genişlik sokak & sneaker vitrini ═════════════
   Motor: beyaz mega menü başlık · kenardan kenara hero · çerçevesiz ürün duvarı ·
   lime kampanya şeritleri · ikili kategori vitrin blokları · güven şeridi · beyaz alt bilgi. */

[data-theme="sneakspro"]{
  --primary:#c2f158; --primary-dark:#aee23c; --primary-light:#f3fce1; --on-primary:#0a0a0a; --accent:#1cba1c;
  --ink:#000000; --ink-soft:#3f3f46; --muted:#71717a; --bg:#ffffff; --bg-soft:#f9f9f9; --surface:#ffffff; --line:#e4e4e7;
  --header-bg:#ffffff; --header-ink:#000000; --footer-bg:#ffffff; --footer-ink:#3f3f46; --footer-head:#000000; --footer-link:#3f3f46; --card-bg:#ffffff;
  --radius:6px; --radius-sm:4px;
  --bs-primary:#c2f158; --bs-primary-rgb:194,241,88; --bs-body-bg:#ffffff; --bs-body-color:#000000; --bs-border-color:#e4e4e7;
}
[data-theme="sneakspro"] body{ font-family:'Poppins','Inter',sans-serif; }
[data-theme="sneakspro"] .topbar{ background:#000; color:#fff; }
[data-theme="sneakspro"] .btn-primary{ color:var(--on-primary); font-weight:700; }
[data-theme="sneakspro"] .btn-primary:hover{ background:var(--primary-dark); border-color:var(--primary-dark); color:var(--on-primary); }

/* ---- ortak iç genişlik ---- */
.sk-in{ max-width:1480px; margin-inline:auto; padding-inline:clamp(1rem,3vw,2.6rem); }
.sk-main{ padding:0; }

/* ---- başlık ---- */
.sk-hdr{ background:var(--header-bg); border-bottom:1px solid var(--line); z-index:1030; }
.sk-hdr-in{ display:flex; align-items:center; gap:clamp(.9rem,2vw,1.9rem); max-width:1480px; margin-inline:auto;
  padding-inline:clamp(1rem,3vw,2.6rem); min-height:80px; }
.sk-brand{ font-family:'Archivo',sans-serif; font-weight:900; font-size:1.65rem; letter-spacing:-.03em; line-height:1;
  color:var(--header-ink); text-decoration:none; white-space:nowrap; flex:0 0 auto; }
.sk-brand:hover{ color:var(--header-ink); }
.sk-brand .brand-logo{ height:var(--logo-h,38px); max-width:var(--logo-mw,190px); }

/* kampanya bağlantıları (yeşil, iki satıra sarabilir) */
.sk-ticker{ display:flex; align-items:center; gap:clamp(.8rem,1.6vw,1.6rem); flex:0 0 auto; }
.sk-ticker a{ display:block; max-width:9rem; color:var(--accent); font-weight:700; font-size:.8rem; line-height:1.25;
  text-transform:uppercase; text-decoration:none; }
.sk-ticker a:hover{ color:var(--primary-dark); }

/* menü */
.sk-nav{ display:flex; align-items:center; gap:clamp(.9rem,1.9vw,1.7rem); list-style:none; margin:0; padding:0; flex:1 1 auto; }
.sk-nav .nav-item{ position:relative; }
.sk-nav .nav-link{ display:inline-flex; align-items:center; gap:.32rem; padding:.5rem 0; white-space:nowrap;
  color:var(--header-ink); font-weight:700; font-size:15px; text-decoration:none; }
.sk-nav .nav-link:hover{ color:var(--accent); }
.sk-nav .nav-dd{ border-top:1px solid var(--line); border-radius:0; padding:.4rem 0; min-width:220px;
  box-shadow:0 14px 34px rgba(0,0,0,.11); }
.sk-nav .nav-dd a{ border-radius:0; padding:.55rem 1.15rem; color:var(--ink); font-size:.92rem; }
.sk-nav .nav-dd a:hover{ background:var(--bg-soft); color:var(--ink); }
.sk-actions{ display:flex; align-items:center; gap:.25rem; margin-left:auto; flex:0 0 auto; }

/* ---- hero ---- */
.sk-hero{ background:var(--bg-soft); }
/* Hero "alana yay": gorsel tum bolumu kaplar, metin uzerine biner. Tema acik zeminli
   oldugu icin okunurluk soldan saga beyaza giden bir katmanla saglanir. */
.sk-hero.is-fill{ position:relative; overflow:hidden; }
.sk-hero-bg{ position:absolute; inset:0; z-index:0; display:block; }
.sk-hero-bg img{ width:100%; height:100%; object-fit:cover; display:block; }
/* Blokta baglanti verilmisse gorsel <a class="sk-hero-bg"> olur ama metin katmani (z-index:2)
   tum alani ortuyor ve tiklamayi yutuyordu: katmani tiklamaya seffaf yapip yalnizca butonu
   tiklanabilir birakiyoruz — boylece hero'nun her yeri baglantiya gider. */
.sk-hero.is-fill.has-link .sk-hero-in{ pointer-events:none; }
.sk-hero.is-fill.has-link .sk-hero-in a,
.sk-hero.is-fill.has-link .sk-hero-in button{ pointer-events:auto; }
.sk-hero.is-fill::after{ content:""; position:absolute; inset:0; z-index:1; pointer-events:none;
  background:linear-gradient(90deg, rgba(255,255,255,var(--sk-ov,.94)) 0%,
    rgba(255,255,255,calc(var(--sk-ov,.94) * .8)) 38%, rgba(255,255,255,0) 72%); }
.sk-hero.is-fill .sk-hero-in{ position:relative; z-index:2; }
/* Hero'nun basligi/alt metni/butonu bos birakildiysa kutuyu ayakta tutacak icerik kalmaz:
   masaustunde min-height kutuyu ayakta tutuyor, mobilde o kural sifirlandigi icin bolum yalnizca
   dolgu kadar (60px) kaliyor ve banner ince bir seride kirpiliyordu. Yalniz gorselden olusan
   hero'da gorseli akisa aliyoruz: yukseklik gorselin KENDI oranindan gelir, hicbir yeri kirpilmaz. */
.sk-hero.is-bare .sk-hero-bg{ position:static; }
.sk-hero.is-bare .sk-hero-bg img{ height:auto; object-fit:contain; }
.sk-hero.is-bare .sk-hero-in{ display:none; }
.sk-hero.is-bare::after{ display:none; }
@media (max-width:991.98px){
  .sk-hero.is-fill::after{ background:linear-gradient(180deg, rgba(255,255,255,var(--sk-ov,.92)) 0%,
    rgba(255,255,255,calc(var(--sk-ov,.92) * .78)) 55%, rgba(255,255,255,calc(var(--sk-ov,.92) * .54)) 100%); }
}
/* Referansin hero kenar boslugu ORANSAL: 1440'ta 209px, 2560'ta 372px — ikisi de %14.5.
   Sabit max-width kullanilinca genis ekranda bosluk %30'a cikip icerik ortada sikisiyordu. */
.sk-hero-in{ display:grid; grid-template-columns:1fr 1fr; gap:clamp(1.5rem,4vw,3rem); align-items:center;
  max-width:none; padding-inline:14.5%; min-height:clamp(420px,46vw,1180px); padding-block:clamp(2rem,4.5vw,3.4rem); }
/* Referans olcusu: kap 41px (~60px punto), "TARZ VE KONFOR" tek satirda 443px, satir
   ilerlemesi 70px. Archivo Black varsayilan genislikte ayni metni 523px suruyor ve baslik
   3 satira kiriliyordu; wdth ekseni %84'e cekilince 439px'e inip referansa oturuyor. */
.sk-hero-copy h1{ font-family:'Archivo',sans-serif; font-weight:900; font-stretch:84%; text-transform:uppercase;
  font-size:clamp(2rem,3.96vw,101px); line-height:1.17; letter-spacing:-.02em; color:var(--ink); margin:0 0 .85rem; }
.sk-hero-copy p{ font-style:italic; font-size:clamp(1rem,1.55vw,40px); line-height:1.4; color:var(--ink-soft);
  margin:0 0 1.7rem; max-width:34ch; }
.sk-hero-art{ display:flex; align-items:center; justify-content:center; color:var(--ink); }
/* Banner gorseli yoksa hero tek sutuna duser (bos sag sutun birakilmaz). */
.sk-hero-solo{ grid-template-columns:1fr; }
.sk-hero-art img,.sk-hero-art svg{ width:100%; max-width:520px; height:auto; max-height:min(60vh,520px); object-fit:contain; }
/* Banner gorseli baglantiliysa <a> ile sarilir; olcu/ortalama sarmalayicida da korunur. */
.sk-hero-art a{ display:flex; align-items:center; justify-content:center; width:100%; max-width:520px; }

/* lime buton */
.sk-btn{ display:inline-block; background:var(--primary); color:var(--on-primary); border:none; border-radius:2px;
  font-weight:700; font-size:.85rem; letter-spacing:.045em; text-transform:uppercase; text-decoration:none;
  padding:.85rem 1.55rem; transition:background .18s ease; }
.sk-btn:hover{ background:var(--primary-dark); color:var(--on-primary); }
.sk-btn-sm{ padding:.58rem 1.05rem; font-size:.72rem; white-space:nowrap; }

/* ---- ürün duvarı (çerçevesiz, beyaz zemin) ---- */
/* ---- gorsel serit: referansta oldugu gibi TEK gorsel (urun listesi degil) ---- */
.sk-wall{ display:block; background:var(--bg); padding:clamp(1rem,1.7vw,1.5rem) clamp(.25rem,.6vw,.6rem); }
.sk-wall a{ display:block; }
.sk-wall img{ display:block; width:100%; height:auto; }

/* ---- kampanya şeridi ---- */
.sk-band{ display:block; background:var(--primary); color:var(--on-primary); text-align:center;
  padding:clamp(1.1rem,2.2vw,1.66rem) 1rem; }
.sk-band-sm{ display:block; font-weight:600; font-size:clamp(.78rem,1.35vw,1.05rem); letter-spacing:.07em;
  text-transform:uppercase; margin-bottom:.1rem; }
.sk-band-lg{ display:block; font-family:'Archivo',sans-serif; font-weight:900; font-stretch:84%; text-transform:uppercase;
  font-size:clamp(1.75rem,5.2vw,133px); line-height:1; letter-spacing:-.025em; }

/* ---- ikili kategori vitrin blokları ---- */
.sk-feature{ display:grid; grid-template-columns:1fr 1fr; gap:clamp(.7rem,1.7vw,24px);
  background:var(--bg); padding:1rem .25rem; }
.sk-feature-card{ display:flex; flex-direction:column; justify-content:space-between; overflow:hidden;
  background:var(--bg-soft); height:clamp(330px,49vw,1255px); padding:clamp(1.2rem,2.4vw,2rem); text-decoration:none; }
.sk-feature-img{ flex:1 1 auto; display:flex; align-items:center; justify-content:center; min-height:0; }
.sk-feature-img img{ max-width:76%; max-height:100%; width:auto; height:auto; object-fit:contain; transition:transform .4s ease; }
.sk-feature-card:hover .sk-feature-img img{ transform:scale(1.05); }
/* Kart uzeri efekti (kart ayarlarindan secilir). Varsayilan: zoom (ustteki kural). */
.sk-feature-card.anim-none:hover .sk-feature-img img{ transform:none; }
.sk-feature-card.anim-lift{ transition:transform .25s ease, box-shadow .25s ease; }
.sk-feature-card.anim-lift:hover{ transform:translateY(-8px); box-shadow:0 18px 40px rgba(0,0,0,.16); }
.sk-feature-card.anim-lift:hover .sk-feature-img img{ transform:none; }
.sk-feature-card.anim-glow{ transition:filter .25s ease; }
.sk-feature-card.anim-glow:hover{ filter:brightness(1.06) saturate(1.08); }
.sk-feature-card.anim-glow:hover .sk-feature-img img{ transform:none; }
/* "Alttan perde": fare uzerine gelince kartin altindan gri bir katman yukselir.
   ::after alt perde icin kullanildigindan bu efekt ::before uzerinden calisir. */
.sk-feature-card.anim-slide{ position:relative; }
.sk-feature-card.anim-slide::before{ content:""; position:absolute; left:0; right:0; bottom:0; height:100%;
  background:linear-gradient(to top, rgba(48,48,52,.62), rgba(48,48,52,.28) 55%, rgba(48,48,52,0));
  transform:translateY(100%); transition:transform .32s ease; z-index:1; pointer-events:none; }
.sk-feature-card.anim-slide:hover::before{ transform:translateY(0); }
.sk-feature-card.anim-slide:hover .sk-feature-img img{ transform:none; }
.sk-feature-card.anim-slide .sk-feature-meta{ position:relative; z-index:2; }
/* "Alana yay": gorsel karti tamamen kaplar; metin okunur kalsin diye altta beyaz gecis. */
.sk-feature-card.is-fill{ position:relative; }
.sk-feature-card.is-fill .sk-feature-img{ position:absolute; inset:0; }
.sk-feature-card.is-fill .sk-feature-img img{ width:100%; height:100%; max-width:none; max-height:none; object-fit:cover; }
.sk-feature-card.is-fill::after{ content:""; position:absolute; left:0; right:0; bottom:0; height:55%;
  background:linear-gradient(to top, rgba(255,255,255,var(--sk-cov,.95)), rgba(255,255,255,0)); pointer-events:none; }
/* Gorsel mutlak konumlandigi icin esnek akista tek oge kalir; space-between metni basa
   itiyordu. margin-top:auto ile metin yine kartin ALTINDA kalir (alttaki beyaz gecisin uzerinde). */
.sk-feature-card.is-fill .sk-feature-meta{ position:relative; z-index:1; margin-top:auto; }
/* Ayni durum kartlarda: metinsiz "alana yay" kart sabit yukseklikte oldugu icin kare banner'in
   alt kenari (uzerine yazilmis basligi) kirpiliyordu. Yalniz gorselse kart da kendi oranini korur. */
.sk-feature-card.is-bare{ height:auto; align-self:start; padding:0; }
.sk-feature-card.is-bare .sk-feature-img{ position:static; display:block; }
.sk-feature-card.is-bare .sk-feature-img img{ height:auto; object-fit:contain; }
.sk-feature-card.is-bare .sk-feature-meta{ display:none; }
.sk-feature-card.is-bare::after{ display:none; }
.sk-feature-meta{ flex:0 0 auto; display:flex; align-items:flex-end; justify-content:space-between; gap:1rem; }
.sk-feature-title{ font-family:'Archivo',sans-serif; font-weight:900; font-stretch:84%; text-transform:uppercase;
  font-size:clamp(1.15rem,2.4vw,61px); line-height:1.04; letter-spacing:-.015em; color:var(--ink); max-width:13ch; }

/* ---- güven şeridi ---- */
.sk-trust{ background:var(--bg); }
.sk-trust-in{ display:grid; grid-template-columns:repeat(3,1fr); gap:1.5rem; padding-block:clamp(1rem,1.6vw,1.4rem); }
.sk-trust-item{ display:flex; flex-direction:column; align-items:center; gap:.5rem; text-align:center; }
.sk-trust-item i{ font-size:1.75rem; color:var(--ink); line-height:1; }
.sk-trust-item span{ font-size:14px; line-height:21px; color:var(--ink); }

/* ---- koleksiyon / ürün listeleme (referans: sneaksnet.com koleksiyon sayfası) ----
   Yalın düzen: ortalanmış ürün sayısı + çerçevesiz kart duvarı. Kartta sıra
   görsel → SEPETE EKLE → ürün adı → fiyat → beden sayısı. */
.sk-list{ padding-block:clamp(1.2rem,2.4vw,2.2rem) clamp(2.5rem,5vw,4rem); }
.sk-list-title{ font-family:'Archivo',sans-serif; font-weight:900; font-stretch:84%; text-transform:uppercase;
  font-size:clamp(1.35rem,2.5vw,2.3rem); line-height:1.1; letter-spacing:-.02em; text-align:center;
  color:var(--ink); margin:0 0 .7rem; }
.sk-list-bar{ display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:1rem;
  margin-bottom:clamp(1rem,2vw,1.7rem); }
.sk-list-side{ display:flex; align-items:center; min-width:0; }
.sk-list-side.end{ justify-content:flex-end; }
.sk-list-count{ color:var(--muted); font-size:.85rem; font-weight:500; text-align:center; white-space:nowrap; }
.sk-list-tool{ display:inline-flex; align-items:center; gap:.4rem; background:none; border:none; padding:.35rem 0;
  color:var(--ink); font-size:.75rem; font-weight:700; letter-spacing:.07em; text-transform:uppercase; }
.sk-list-tool:hover{ color:var(--accent); }
.sk-list-more{ display:flex; justify-content:center; margin-top:clamp(1.8rem,3.5vw,3rem); }

/* çerçevesiz kart */
.sk-grid{ --bs-gutter-x:clamp(.5rem,1vw,.95rem); --bs-gutter-y:clamp(1.4rem,2.4vw,2.1rem); }
.sk-card{ border:none; border-radius:0; background:transparent; box-shadow:none; }
.sk-card:hover{ transform:none; box-shadow:none; border-color:transparent; }
/* Kare kadraj: katalogda hem dikey (yasam tarzi) hem yatay (beyaz fon) cekim var; 4/3 kutu
   dikeyleri asiri daraltiyordu. Zemin BEYAZ — beyaz fonlu cekimlerde "contain" boslugu
   gorunmez kalsin (gri zeminde fotografin kenarinda serit gibi duruyordu). Kirpma YOK:
   magazanin site geneli kurali gibi urun gorseli hicbir zaman kesilmez. */
.sk-card .thumb{ aspect-ratio:1/1; border-radius:0; background:#fff; }
.sk-card .thumb img{ padding:0; background:#fff; }
.sk-card:hover .thumb img{ transform:none; }
.sk-card .pc-badge{ top:0; left:0; border-radius:0; box-shadow:none; padding:.3rem .55rem; font-size:.68rem; letter-spacing:.04em; }
.sk-card .pc-badge.sale{ background:var(--ink); color:var(--primary); }
/* Kalp yalnızca imleç varken görünür; dokunmatikte hep açık kalır (hover yok). */
@media (hover:hover){
  .sk-card .pc-fav{ opacity:0; transition:opacity .2s ease; }
  .sk-card:hover .pc-fav,.sk-card .pc-fav.active,.sk-card .pc-fav:focus-visible{ opacity:1; }
}

/* görselin hemen altındaki ince çerçeveli sepet butonu */
.sk-card-form{ margin:0; }
.sk-card-add{ display:block; width:100%; margin-top:.5rem; padding:.85rem .5rem; line-height:1;
  background:transparent; border:1px solid var(--line); color:var(--ink); text-align:center; text-decoration:none;
  font-size:.72rem; font-weight:700; letter-spacing:.11em; text-transform:uppercase;
  transition:background .16s ease,color .16s ease,border-color .16s ease; }
.sk-card-add:hover{ background:var(--ink); border-color:var(--ink); color:#fff; }
.sk-card-add.out{ color:var(--muted); }
.sk-card-add.out:hover{ background:transparent; border-color:var(--line); color:var(--ink); }

.sk-card .body{ padding:.7rem 0 0; }
.sk-card .cat{ display:none; }
/* Ad en fazla iki satir; iki satirlik yer HER kartta ayrilir ki satirdaki fiyatlar hizali dursun. */
.sk-card .title{ display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;
  font-family:'Poppins','Inter',sans-serif; font-size:.79rem; font-weight:400; line-height:1.35;
  letter-spacing:.02em; text-transform:uppercase; color:var(--ink-soft); margin:0; min-height:2.7em; }
.sk-card .title:hover{ color:var(--ink); }
.sk-card .prices{ display:flex; align-items:baseline; flex-wrap:wrap; gap:.45rem; margin-top:.32rem; }
.sk-card .price{ font-family:'Poppins','Inter',sans-serif; font-size:1.05rem; font-weight:800; color:var(--ink); }
.sk-card .old-price{ margin-left:0; font-size:.8rem; font-weight:500; }
.sk-card-sizes{ display:block; margin-top:.24rem; font-size:.69rem; font-weight:700; letter-spacing:.06em;
  text-transform:uppercase; color:var(--ink); }

/* ---- alt bilgi (beyaz gövde + tam genişlik siyah telif şeridi) ---- */
/* overflow-x:clip — telif seridi 50vw ile tam genislige tasiyor; vw kaydirma cubugunu da sayar ve
   sayfada 12px yatay tasma yaratiyordu. clip, scroll kabi olusturmadan bu tasmayi kirpar. */
[data-archetype="sneaks"] .site-footer{ border-top:1px solid var(--line); margin-top:0; padding:clamp(2rem,4vw,3.2rem) 0 0; overflow-x:clip; }
[data-archetype="sneaks"] .site-footer > .container{ max-width:1480px; padding-inline:clamp(1rem,3vw,2.6rem); }
[data-archetype="sneaks"] .sk-foot-brand{ display:block; text-align:center; margin-bottom:clamp(1.8rem,4vw,3rem);
  font-family:'Archivo',sans-serif; font-weight:900; font-size:clamp(1.6rem,3.4vw,2.4rem); letter-spacing:-.03em;
  color:var(--footer-head); text-decoration:none; }
[data-archetype="sneaks"] .sk-foot-brand .brand-logo{ margin-inline:auto; }
[data-archetype="sneaks"] .site-footer .brand{ display:none; }
@media (min-width:992px){
  [data-archetype="sneaks"] .site-footer .footer-grid{ grid-template-columns:minmax(0,2.6fr) minmax(210px,.95fr); }
}
[data-archetype="sneaks"] .site-footer .footer-nav{ order:1; }
[data-archetype="sneaks"] .site-footer .footer-brand{ order:2; }
/* Sneaks mobilde bağlantı sütunları bülten şeridinin hemen altına geliyor; ikinci bir
   ayırıcı çizgi oluşmasın diye sütunların üst çizgisi kapatılır. */
@media (max-width:767.98px){
  [data-archetype="sneaks"] .site-footer .footer-nav{ border-top:none; }
}
[data-archetype="sneaks"] .site-footer h6{ font-size:1rem; font-weight:700; text-transform:none; letter-spacing:0; }
[data-archetype="sneaks"] .site-footer a:hover{ color:var(--ink); }
[data-archetype="sneaks"] .site-footer .copy{ font-size:15px; font-weight:600; justify-content:center !important; text-align:center; border-top:none;
  background:#000; color:#fff; margin:clamp(1.8rem,3.5vw,3rem) calc(50% - 50vw) 0;
  padding:1.05rem clamp(1rem,3vw,2.6rem); }
[data-archetype="sneaks"] .site-footer .powered-by a,[data-archetype="sneaks"] .site-footer .powered-by strong{ color:var(--primary); }
[data-archetype="sneaks"] .site-footer .copy a{ display:inline; padding:0; }
[data-archetype="sneaks"] .site-footer .copy .powered-by{ white-space:nowrap; }


/* ---- ürün detay sayfası (referans: sneaksnet.com ürün sayfası) ----
   Düzen: küçük görsel şeridi | büyük görsel | satın alma paneli; altında "Sepetini
   Tamamla" paketi, çok satanlar ve değerlendirmeler. Kapsayıcı .sk-in'dir: sayfa
   başlıkla (mega menü) TAM AYNI genişlikte başlar ve biter. */
.sk-pd{ padding-block:clamp(1rem,2vw,1.7rem) clamp(2.5rem,5vw,4rem); }

.sk-pd-crumbs{ display:flex; flex-wrap:wrap; align-items:center; gap:.4rem;
  font-size:.74rem; color:var(--muted); margin-bottom:clamp(.8rem,1.6vw,1.3rem); }
.sk-pd-crumbs a{ color:var(--muted); text-decoration:none; }
.sk-pd-crumbs a:hover{ color:var(--ink); }
.sk-pd-crumbs strong{ color:var(--ink); font-weight:600; }

/* Sutun oranlari referanstaki gibi: kucuk gorsel seridi ~%7, buyuk gorsel ~%57,
   panel ~%28 (tam genislikte panel igne gibi kalmasin diye alt sinir 340px). */
.sk-pd-top{ display:grid; grid-template-columns:96px minmax(0,1fr) minmax(340px,28%);
  gap:clamp(1rem,2vw,2rem); align-items:start; }

/* küçük görsel şeridi */
.sk-pd-thumbs{ display:flex; flex-direction:column; gap:.5rem; max-height:640px; overflow:auto; }
.sk-pd-thumb{ flex:0 0 auto; width:96px; height:108px; padding:0; overflow:hidden;
  background:#fff; border:1px solid transparent; cursor:pointer; }
.sk-pd-thumb img{ width:100%; height:100%; object-fit:contain; }
.sk-pd-thumb.active{ border-color:var(--ink); }

/* büyük görsel */
.sk-pd-stage{ position:relative; display:flex; align-items:center; justify-content:center;
  aspect-ratio:5/4; max-height:640px; overflow:hidden; background:#fff; }
/* Flex ogesinin varsayilan min-height:auto'su max-height'i eziyor ve dikey urun fotografi
   kutunun altindan tasiyordu; olcu kutuya sabitlenip goruntu contain ile oturtulur. */
.sk-pd-stage img{ width:100%; height:100%; object-fit:contain; }
.sk-pd-arrow{ position:absolute; top:50%; transform:translateY(-50%); width:34px; height:34px;
  display:flex; align-items:center; justify-content:center; background:#fff; border:1px solid var(--line);
  color:var(--ink); font-size:1rem; cursor:pointer; }
.sk-pd-arrow.prev{ left:0; }
.sk-pd-arrow.next{ right:0; }
.sk-pd-arrow:hover{ background:var(--ink); border-color:var(--ink); color:#fff; }

/* satın alma paneli */
.sk-pd-buy{ display:flex; flex-direction:column; }
.sk-pd-buy-head{ display:flex; align-items:center; justify-content:space-between; gap:.6rem; margin-bottom:.75rem; }
.sk-pd-finder{ display:inline-flex; align-items:center; gap:.4rem; background:#fff; border:1px solid var(--line);
  border-radius:999px; padding:.42rem .95rem; font-size:.74rem; font-weight:600; color:var(--ink); cursor:pointer; }
.sk-pd-finder:hover{ border-color:var(--ink); }
.sk-pd-fav{ width:34px; height:34px; display:inline-flex; align-items:center; justify-content:center;
  background:none; border:none; color:var(--ink); font-size:1.15rem; cursor:pointer; }
.sk-pd-fav:hover{ color:#e11d48; }
/* Tema genelinde h1 Archivo/uppercase; urun adi referansta yazildigi gibi kalir. */
.sk-pd-name{ font-family:'Poppins','Inter',sans-serif; font-size:1.08rem; font-weight:600; font-stretch:normal;
  line-height:1.35; letter-spacing:0; text-transform:none; color:var(--ink); margin:0 0 .5rem; }
.sk-pd-low,.sk-pd-out{ display:flex; align-items:center; gap:.35rem; font-size:.78rem; font-weight:600; margin:0 0 .7rem; }
.sk-pd-low{ color:#e11d48; }
.sk-pd-out{ color:var(--muted); }

.sk-pd-price{ display:flex; align-items:center; gap:.6rem; margin-bottom:.9rem; }
.sk-pd-off{ flex:0 0 auto; background:var(--ink); color:#fff; font-size:.72rem; font-weight:700; padding:.22rem .45rem; line-height:1; }
.sk-pd-old{ display:block; font-size:.8rem; color:var(--muted); text-decoration:line-through; }
.sk-pd-now{ display:block; font-size:1.45rem; font-weight:700; color:var(--ink); line-height:1.25; }

.sk-stars{ color:var(--ink); font-size:.78rem; letter-spacing:.05em; }
.sk-pd-rate{ display:flex; align-items:center; flex-wrap:wrap; gap:.5rem; font-size:.72rem; color:var(--muted); margin-bottom:1rem; }
.sk-pd-rate a{ color:var(--muted); text-decoration:underline; }
.sk-pd-rate a:hover{ color:var(--ink); }
.sk-pd-buyers{ color:var(--accent); font-weight:600; }

.sk-pd-opt{ margin-bottom:1.35rem; }
.sk-pd-opt-label{ display:block; font-size:.85rem; font-weight:600; color:var(--ink-soft); margin-bottom:.6rem; }
.sk-pd-chips{ display:flex; flex-wrap:wrap; gap:.5rem; }
.sk-pd-chip{ min-width:58px; height:50px; padding:0 1rem; display:inline-flex; align-items:center; justify-content:center;
  line-height:1; background:#fff; border:1px solid var(--line); border-radius:6px;
  color:var(--ink); font-size:1rem; font-weight:600; cursor:pointer;
  transition:border-color .15s ease, background .15s ease, color .15s ease; }
.sk-pd-chip:hover{ border-color:var(--ink); }
.sk-pd-chip.active{ background:var(--ink); border-color:var(--ink); color:#fff; }
.sk-pd-chip.out{ background:var(--bg-soft); color:var(--muted); text-decoration:line-through; cursor:not-allowed; }

.sk-pd-share{ display:flex; align-items:center; gap:.45rem; font-size:.74rem; color:var(--muted); margin-bottom:1rem; }
.sk-pd-sbtn{ width:30px; height:30px; display:inline-flex; align-items:center; justify-content:center;
  background:#fff; border:1px solid var(--line); border-radius:50%; color:var(--ink-soft); font-size:.9rem;
  text-decoration:none; cursor:pointer; transition:color .15s ease,border-color .15s ease,background .15s ease; }
.sk-pd-sbtn:hover{ border-color:var(--ink); color:var(--ink); }
.sk-pd-sbtn.done{ background:var(--accent); border-color:var(--accent); color:#fff; }

.sk-pd-cta{ display:block; width:100%; padding:1rem .8rem; line-height:1; background:var(--ink); color:#fff;
  border:1px solid var(--ink); font-size:.78rem; font-weight:700; letter-spacing:.12em; text-transform:uppercase;
  cursor:pointer; transition:background .16s ease,border-color .16s ease; }
.sk-pd-cta:hover{ background:#27272a; border-color:#27272a; color:#fff; }
.sk-pd-cta:disabled{ background:var(--muted); border-color:var(--muted); cursor:not-allowed; }
.sk-pd-cta.buy{ background:var(--accent); border-color:var(--accent); }
.sk-pd-cta.buy:hover{ background:#179417; border-color:#179417; }

/* sipariş -> kargo -> teslimat çizelgesi */
.sk-pd-track{ display:grid; grid-template-columns:repeat(3,1fr); list-style:none; margin:1.2rem 0; padding:0; }
.sk-pd-track li{ position:relative; display:flex; flex-direction:column; align-items:center; gap:.25rem; text-align:center; }
.sk-pd-track li:not(:first-child)::before{ content:""; position:absolute; top:15px; right:50%; left:-50%; height:1px; background:var(--line); }
.sk-pd-track-ic{ position:relative; z-index:1; width:30px; height:30px; display:flex; align-items:center;
  justify-content:center; border-radius:50%; background:var(--bg-soft); color:var(--ink); font-size:.85rem; }
.sk-pd-track strong{ font-size:.72rem; font-weight:600; color:var(--ink); }
.sk-pd-track em{ font-size:.68rem; font-style:normal; color:var(--muted); }

.sk-pd-notes{ display:grid; grid-template-columns:1fr 1fr; gap:.5rem; margin-bottom:1rem; }
.sk-pd-note{ background:#eaf7ea; padding:.7rem .75rem; }
.sk-pd-note strong{ display:flex; align-items:center; gap:.3rem; font-size:.67rem; font-weight:700;
  letter-spacing:.05em; text-transform:uppercase; color:#15803d; margin-bottom:.25rem; }
.sk-pd-note span{ display:block; font-size:.68rem; line-height:1.45; color:#40684a; }

.sk-pd-try{ width:100%; margin-top:.7rem; padding:.8rem; background:#fff; border:1px solid var(--line);
  color:var(--ink); font-size:.74rem; font-weight:600; cursor:pointer; }
.sk-pd-try:hover{ border-color:var(--ink); }

/* ürün bilgisi (açılır başlıklar) */
.sk-pd-acc{ margin-top:1.5rem; border-top:1px solid var(--line); }
.sk-pd-acc details{ border-bottom:1px solid var(--line); }
.sk-pd-acc summary{ display:flex; align-items:center; justify-content:space-between; gap:1rem;
  padding:.85rem 0; list-style:none; cursor:pointer; font-size:.74rem; font-weight:700;
  letter-spacing:.06em; text-transform:uppercase; color:var(--ink); }
.sk-pd-acc summary::-webkit-details-marker{ display:none; }
.sk-pd-acc summary::after{ content:"+"; font-size:1.05rem; font-weight:400; line-height:1; }
.sk-pd-acc details[open] summary::after{ content:"\2013"; }
.sk-pd-acc-body{ padding-bottom:1rem; font-size:.79rem; line-height:1.6; color:var(--ink-soft); }
.sk-pd-acc-body p{ margin-bottom:.6rem; }
.sk-pd-specs{ display:grid; grid-template-columns:auto 1fr; gap:.32rem .9rem; margin:0; font-size:.78rem; }
.sk-pd-specs dt{ color:var(--muted); font-weight:500; }
.sk-pd-specs dd{ margin:0; color:var(--ink); }

/* ---- "Sepetini Tamamla" paketi ---- */
.sk-pd-bundle{ margin-top:clamp(2.2rem,4.5vw,3.4rem); }
.sk-pd-bundle h2{ font-size:1.02rem; font-weight:700; color:var(--ink); margin:0 0 .9rem; }
.sk-pd-bundle-grid{ display:grid; grid-template-columns:2fr 1fr; gap:.8rem; align-items:stretch; }
.sk-pd-bundle-items{ display:grid; grid-template-columns:1fr 1fr; gap:.8rem; align-content:start; }
.sk-pd-bi{ position:relative; display:flex; align-items:flex-start; gap:.7rem; padding:.8rem;
  background:#fff; border:1px solid var(--line); }
.sk-pd-bi.main{ background:var(--bg-soft); }
.sk-pd-bi img{ flex:0 0 auto; width:84px; height:84px; object-fit:contain; background:#fff; }
.sk-pd-bi-body{ flex:1 1 auto; min-width:0; padding-right:2.6rem; }
.sk-pd-bi-name{ display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;
  font-size:.76rem; line-height:1.35; color:var(--ink); text-decoration:none; }
.sk-pd-bi-name:hover{ color:var(--accent); }
.sk-pd-bi-price{ display:flex; align-items:baseline; flex-wrap:wrap; gap:.35rem; margin-top:.45rem; }
.sk-pd-bi-off{ background:#e11d48; color:#fff; font-size:.64rem; font-weight:700; padding:.12rem .32rem; line-height:1.3; }
.sk-pd-bi-price s{ font-size:.7rem; color:var(--muted); }
.sk-pd-bi-price b{ font-size:.85rem; font-weight:700; color:var(--ink); }

/* pakete dahil et anahtarı */
.sk-pd-sw{ position:absolute; top:.8rem; right:.8rem; display:inline-flex; cursor:pointer; }
.sk-pd-sw input{ position:absolute; width:0; height:0; opacity:0; }
.sk-pd-sw span{ position:relative; display:block; width:38px; height:21px; border-radius:999px;
  background:#d4d4d8; transition:background .18s ease; }
.sk-pd-sw span::after{ content:""; position:absolute; top:2px; left:2px; width:17px; height:17px;
  border-radius:50%; background:#fff; transition:transform .18s ease; }
.sk-pd-sw input:checked + span{ background:var(--ink); }
.sk-pd-sw input:checked + span::after{ transform:translateX(17px); }
.sk-pd-sw input:focus-visible + span{ outline:2px solid var(--accent); outline-offset:2px; }

.sk-pd-bundle-sum{ display:flex; flex-direction:column; padding:.9rem; background:var(--bg-soft); border:1px solid var(--line); }
.sk-pd-bundle-info{ font-size:.7rem; line-height:1.5; color:var(--ink-soft); margin:0 0 auto; }
.sk-pd-bundle-total{ margin:1.1rem 0 .8rem; }
.sk-pd-bundle-label{ display:block; font-size:.78rem; font-weight:700; color:var(--ink); margin-bottom:.35rem; }
.sk-pd-bundle-figs{ display:flex; align-items:baseline; flex-wrap:wrap; gap:.4rem; }
.sk-pd-bundle-figs s{ font-size:.75rem; color:var(--muted); }
.sk-pd-bundle-figs b{ font-size:1rem; font-weight:700; color:var(--ink); }

/* ---- çok satanlar / benzer ürünler ---- */
.sk-pd-row{ margin-top:clamp(2.4rem,5vw,3.8rem); }
.sk-pd-row h2{ font-family:'Archivo',sans-serif; font-weight:900; font-stretch:84%; text-transform:uppercase;
  font-size:clamp(1.1rem,2.2vw,1.6rem); letter-spacing:-.01em; text-align:center; color:var(--accent);
  margin:0 0 clamp(1rem,2vw,1.5rem); }
/* Referansta bu bloktaki kartlarda sepet butonu yok: görsel, ad, fiyat, beden sayısı. */
.sk-pd-row .sk-card-add{ display:none; }

/* Yatay ray: kartlar alt alta sarmaz, tek sırada yana kayar. Mobilde bir sonraki kartın
   ucu görünsün diye sütun sayısı kesirli (2.2) — kaydırılabildiği ilk bakışta anlaşılır. */
.sk-rail{ --rail-gap:clamp(.7rem,2vw,1.1rem); --rail-cols:2.2; --rail-pad:clamp(1rem,3vw,2.6rem);
  position:relative; }
@media(min-width:768px){ .sk-rail{ --rail-cols:3.2; } }
@media(min-width:992px){ .sk-rail{ --rail-cols:4; } }
.sk-rail-track{ display:flex; flex-wrap:nowrap; gap:var(--rail-gap); overflow-x:auto;
  scroll-snap-type:x mandatory; scroll-behavior:smooth; overscroll-behavior-x:contain;
  -webkit-overflow-scrolling:touch; scrollbar-width:none; padding-bottom:.2rem; }
.sk-rail-track::-webkit-scrollbar{ display:none; }
.sk-rail-track > .col{ flex:0 0 auto; scroll-snap-align:start;
  width:calc((100% - (var(--rail-cols) - 1) * var(--rail-gap)) / var(--rail-cols)); }
/* Mobilde ray ekranın kenarına kadar uzar; ilk kart yine metinle hizalı başlar. */
@media(max-width:767px){
  .sk-rail{ margin-inline:calc(-1 * var(--rail-pad)); }
  .sk-rail-track{ padding-inline:var(--rail-pad); scroll-padding-inline:var(--rail-pad); }
}
/* Oklar: dokunmatik olmayan geniş ekranlarda, ray kaydırılabildiği sürece. */
.sk-rail-nav{ display:none; position:absolute; top:calc(50% - 3rem); transform:translateY(-50%); z-index:3;
  width:2.6rem; height:2.6rem; padding:0; line-height:1; font-size:1.5rem;
  background:#fff; color:var(--ink); border:1px solid var(--line); cursor:pointer;
  box-shadow:0 2px 12px rgba(0,0,0,.12); transition:background .15s, color .15s, opacity .15s; }
.sk-rail-nav:hover{ background:var(--ink); color:#fff; }
.sk-rail-nav.prev{ left:calc(-1 * var(--rail-gap)); }
.sk-rail-nav.next{ right:calc(-1 * var(--rail-gap)); }
.sk-rail-nav[disabled]{ opacity:0; pointer-events:none; }
@media(min-width:992px) and (hover:hover){ .sk-rail.is-scrollable .sk-rail-nav{ display:block; } }

/* ---- değerlendirmeler ---- */
.sk-pd-reviews{ margin-top:clamp(2.4rem,5vw,3.8rem); }
.sk-pd-noreview{ color:var(--muted); font-size:.82rem; }
.sk-pd-rev{ padding:.9rem 1.1rem; margin-bottom:.6rem; background:#fff; border:1px solid var(--line); }
.sk-pd-rev .sk-stars{ display:block; margin-bottom:.35rem; }
.sk-pd-rev-who{ display:flex; align-items:center; flex-wrap:wrap; gap:.5rem; font-size:.68rem;
  color:var(--muted); margin-bottom:.35rem; }
.sk-pd-rev-who strong{ font-size:.73rem; font-weight:700; color:var(--ink); }
.sk-pd-verified{ color:var(--accent); font-weight:600; }
.sk-pd-rev p{ margin:0; font-size:.79rem; line-height:1.55; color:var(--ink-soft); }
.sk-pd-rev-plain{ font-style:italic; }
/* Yoruma iliştirilen müşteri deneyim görseli (panelden eklenir). */
.sk-pd-rev-photo{ display:inline-block; margin-top:.55rem; }
.sk-pd-rev-photo img{ width:88px; height:88px; object-fit:cover; border:1px solid var(--line); display:block; }
.sk-pd-pager{ display:flex; justify-content:center; gap:.3rem; margin-top:1.2rem; }
.sk-pd-pager button{ min-width:30px; height:30px; background:#fff; border:1px solid var(--line);
  color:var(--ink); font-size:.75rem; cursor:pointer; }
.sk-pd-pager button:hover{ border-color:var(--ink); }
.sk-pd-pager button.active{ background:var(--ink); border-color:var(--ink); color:#fff; }
.sk-pd-spot{ max-width:62ch; margin:clamp(1.8rem,3.5vw,2.8rem) auto 0; text-align:center; }
.sk-pd-spot blockquote{ margin:.5rem 0 .3rem; font-size:.82rem; line-height:1.6; color:var(--ink-soft); }
.sk-pd-spot figcaption{ font-size:.72rem; font-style:italic; color:var(--muted); }
.sk-pd-revform{ margin-top:1.7rem; padding-top:1rem; border-top:1px solid var(--line); }
.sk-pd-revform summary{ cursor:pointer; font-size:.74rem; font-weight:700; letter-spacing:.08em;
  text-transform:uppercase; color:var(--ink); }
.sk-pd-revform form{ display:flex; flex-direction:column; align-items:flex-start; gap:.6rem;
  max-width:520px; margin-top:.9rem; }
.sk-pd-revform label{ display:flex; align-items:center; gap:.5rem; font-size:.75rem; color:var(--muted); }
.sk-pd-revform select,.sk-pd-revform textarea{ padding:.5rem .6rem; background:#fff; border:1px solid var(--line);
  color:var(--ink); font-size:.8rem; }
.sk-pd-revform textarea{ width:100%; }
.sk-pd-revform .sk-pd-cta{ width:auto; padding:.8rem 1.7rem; }

@media (max-width:1199.98px){
  .sk-pd-top{ grid-template-columns:80px minmax(0,1fr) minmax(300px,30%); }
  .sk-pd-thumb{ width:80px; height:90px; }
}
@media (max-width:991.98px){
  .sk-pd-top{ grid-template-columns:68px minmax(0,1fr); }
  .sk-pd-buy{ grid-column:1 / -1; margin-top:.6rem; }
  .sk-pd-thumb{ width:68px; height:78px; }
  .sk-pd-bundle-grid{ grid-template-columns:1fr; }
}
@media (max-width:575.98px){
  .sk-pd-top{ grid-template-columns:1fr; }
  .sk-pd-stage{ order:1; aspect-ratio:1/1; }
  .sk-pd-thumbs{ order:2; flex-direction:row; max-height:none; }
  .sk-pd-buy{ order:3; margin-top:.3rem; }
  .sk-pd-bundle-items{ grid-template-columns:1fr; }
  .sk-pd-notes{ grid-template-columns:1fr; }
}

/* ---- duyarlılık ---- */
@media (max-width:1199.98px){
  .sk-ticker{ display:none; }
}
@media (max-width:991.98px){
  .sk-hero-in{ grid-template-columns:1fr; text-align:center; min-height:0; padding-inline:clamp(1rem,5vw,2rem); }
  /* min-height:0 gorseli AKISTA olan hero icindir; "alana yay" hero'da gorsel mutlak konumlu
     oldugundan kutunun kendi olcusu olmali, yoksa metin kadar kalip banner'i kirpar. */
  .sk-hero.is-fill:not(.is-bare) .sk-hero-in{ min-height:clamp(260px,62vw,430px); }
  .sk-hero-art{ order:-1; }
  .sk-hero-copy p{ margin-inline:auto; }
  .sk-feature-title{ max-width:none; }
}
@media (max-width:575.98px){
  .sk-list-bar{ grid-template-columns:auto 1fr; row-gap:.4rem; }
  .sk-list-count{ grid-column:1 / -1; order:3; text-align:left; }
  .sk-card-add{ padding:.7rem .4rem; font-size:.65rem; letter-spacing:.08em; }
  .sk-feature{ grid-template-columns:1fr; }
  .sk-feature-card{ height:300px; }
  .sk-feature-meta{ flex-direction:column; align-items:flex-start; gap:.7rem; }
  /* Guven seridi mobilde de yan yana: 3 sutun kalir, tipografi kuculur. */
  .sk-trust-in{ grid-template-columns:repeat(3,1fr); gap:.5rem; padding-inline:.5rem; }
  .sk-trust-item{ gap:.35rem; }
  .sk-trust-item i{ font-size:1.3rem; }
  .sk-trust-item span{ font-size:11px; line-height:15px; text-wrap:balance; }
}

/* ── Kategori hero (kategori sayfası kapağı; mağaza bazlı, Kategori Hero'ları ekranı) ─────────── */
.cat-hero{ position:relative; display:flex; overflow:hidden; isolation:isolate;
  min-height:var(--ch-h,280px); border-radius:var(--radius); margin-bottom:1.5rem;
  background:var(--primary-light); box-shadow:var(--shadow-sm); }
.cat-hero-bg{ position:absolute; inset:0; width:100%; height:100%; z-index:0; }
.cat-hero.is-fill .cat-hero-bg{ object-fit:cover; }
/* "Alana yay" kapalı: görsel kırpılmadan ortalanır, arta kalan alan tema zeminiyle dolar. */
.cat-hero.is-fit{ background:var(--bg-soft); }
.cat-hero.is-fit .cat-hero-bg{ object-fit:contain; }
/* "Yukseklik: gorsele gore otomatik" — alan gorselin kendi oranini alir: banner ne kirpilir ne de bosluk kalir.
   Gorsel, perde ve metin ayni grid hucresinde ust uste biner; yukseklik ikisinin buyugu kadar olur. */
.cat-hero.is-auto{ display:grid; min-height:0; background:none; }
.cat-hero.is-auto > picture,
.cat-hero.is-auto > .cat-hero-scrim,
.cat-hero.is-auto > .cat-hero-in{ grid-area:1 / 1; }
.cat-hero.is-auto > picture{ display:block; z-index:0; }
.cat-hero.is-auto .cat-hero-bg{ position:static; width:100%; height:auto; display:block; }
.cat-hero.is-auto .cat-hero-scrim{ position:static; }
.cat-hero-scrim{ position:absolute; inset:0; z-index:1; pointer-events:none; }
/* Panelde hic metin yazilmamis hero: gorunur baslik/alt metin/buton yok, ic dolgu yer kaplamasin. */
.cat-hero.no-text .cat-hero-in{ padding:0; }
.cat-hero-in{ position:relative; z-index:2; display:flex; flex-direction:column; justify-content:center;
  gap:.55rem; width:100%; padding:clamp(1.2rem,3.5vw,2.6rem); }
.cat-hero-title{ margin:0; font-size:clamp(1.5rem,3.4vw,2.6rem); line-height:1.15; font-weight:800; color:#fff;
  text-shadow:0 2px 18px rgba(0,0,0,.35); }
.cat-hero-sub{ margin:0; max-width:52ch; font-size:clamp(.95rem,1.3vw,1.12rem); color:rgba(255,255,255,.93);
  text-shadow:0 1px 12px rgba(0,0,0,.35); }
.cat-hero-btn{ align-self:flex-start; margin-top:.35rem; display:inline-block; text-decoration:none;
  padding:.62rem 1.5rem; border-radius:999px; font-weight:700; background:#fff; color:#111418;
  box-shadow:0 6px 20px rgba(0,0,0,.18); transition:transform .18s ease, box-shadow .18s ease; }
.cat-hero-btn:hover{ transform:translateY(-2px); box-shadow:0 10px 26px rgba(0,0,0,.24); color:#111418; }
/* Buton bagliantisi yazilmissa buton olmasa da hero'nun tamami tiklanabilir: metnin uzerine serilen
   gorunmez bag. Buton varsa o daha ustte kalir (ayni hedefe gitse de hover efekti calissin). */
.cat-hero-link{ position:absolute; inset:0; z-index:3; display:block; text-indent:-9999px; overflow:hidden; }
.cat-hero.is-linked .cat-hero-btn{ position:relative; z-index:4; }
.cat-hero-link:focus-visible{ outline:3px solid #fff; outline-offset:-4px; border-radius:var(--radius); }
/* Görselsiz hero: tema zemini üzerinde koyu metin. */
.cat-hero.no-img .cat-hero-title,
.cat-hero.no-img .cat-hero-sub{ color:var(--ink); text-shadow:none; }
.cat-hero.no-img .cat-hero-btn{ background:var(--primary); color:var(--on-primary,#fff); }
/* Metin hizası */
.cat-hero.align-center .cat-hero-in{ align-items:center; text-align:center; }
.cat-hero.align-center .cat-hero-btn{ align-self:center; }
.cat-hero.align-end .cat-hero-in{ align-items:flex-end; text-align:right; }
.cat-hero.align-end .cat-hero-btn{ align-self:flex-end; }
/* Storefront/sneaks arşetiplerinde tam genişlik şeritlerin arasında nefes alsın. */
.sf-toolbar + .cat-hero, .sk-list > .cat-hero{ margin-top:.25rem; }
[data-archetype="boomer"] .cat-hero{ border-radius:0; }
@media (max-width:767.98px){
  /* Mobil yukseklik verilmisse ona uy; verilmemisse eskisi gibi otomatik kucul. */
  .cat-hero{ min-height:var(--ch-hm, min(var(--ch-h,280px),210px)); }
  .cat-hero.is-auto{ min-height:0; }
  .cat-hero-sub{ display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
}

/* ═══════════════ MOBİL SEPET ═══════════════
   Sepet tablosu ≤767px'de gizlenir; yerine ürün başına tek kart gelir.
   Jenerik t-stack kartı burada 5 ayrı "etiket → değer" satırı üretiyor,
   ürün başına yarım ekran yer kaplıyordu. */
.cart-m-row{
  display:grid; grid-template-columns:64px 1fr; gap:.75rem; align-items:start;
  background:var(--surface); border:1px solid var(--line); border-radius:14px;
  padding:.7rem; margin-bottom:.6rem;
}
.cart-m-row:last-child{ margin-bottom:0; }
.cart-m-img{ width:64px; height:64px; object-fit:cover; border-radius:10px; background:var(--bg-soft); }
.cart-m-body{ min-width:0; }
.cart-m-head{ display:flex; align-items:flex-start; justify-content:space-between; gap:.5rem; }
.cart-m-name{
  font-weight:600; font-size:.95rem; line-height:1.3;
  display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;
}
.cart-m-var{ font-size:.8rem; color:var(--muted); margin-top:.12rem; }
.cart-m-del{
  flex:0 0 auto; width:32px; height:32px; margin:-.35rem -.35rem 0 0;
  display:grid; place-items:center; border:0; border-radius:8px;
  background:transparent; color:var(--muted); font-size:.95rem;
}
.cart-m-del:active{ background:var(--bg-soft); color:#dc3545; }
.cart-m-foot{ display:flex; align-items:center; justify-content:space-between; gap:.6rem; margin-top:.55rem; }
.cart-m-qty{ display:inline-flex; align-items:center; border:1px solid var(--line); border-radius:10px; overflow:hidden; }
.cart-m-qty button{
  width:34px; height:34px; border:0; background:var(--bg-soft); color:var(--ink);
  font-size:1.05rem; line-height:1; padding:0;
}
.cart-m-qty button[disabled]{ opacity:.4; }
.cart-m-qty span{ min-width:36px; text-align:center; font-weight:600; font-size:.9rem; }
.cart-m-price{ text-align:right; line-height:1.25; }
.cart-m-total{ font-weight:700; }
.cart-m-unit{ font-size:.75rem; color:var(--muted); }

/* ═══════════════ SİPARİŞ LİSTESİ (hesabım → siparişlerim) ═══════════════
   Genel tablo→kart dönüşümü (t-stack) her siparişi "etiket → değer" biçiminde
   5 satıra bölüyordu; liste ekranı doldurup taranamaz hale geliyordu. Burada
   sipariş satırı kendi ızgarasına sahip: geniş ekranda tablo gibi kolonlanır,
   dar ekranda iki satırlık kompakt karta iner. Satırın tamamı detay bağlantısı.
   Kolon şablonu başlık ve satırlarda AYNI olmalı (auto kullanılmaz; başlık metni
   ile rozet farklı genişlik verip hizayı bozar). */

.order-list { --oi-cols: minmax(0,1.5fr) minmax(0,1.3fr) 8.5rem minmax(0,1fr) 1.1rem; }

.order-list-head {
  display:grid; grid-template-columns:var(--oi-cols); gap:1rem; align-items:end;
  /* Satırların 1px kenarlığı kadar içeri: başlık kolonu değerin tam üstüne gelsin. */
  padding:0 calc(1.05rem + 1px) .5rem;
  font-size:.72rem; font-weight:700; letter-spacing:.05em; text-transform:uppercase;
  color:var(--muted);
}
.order-list-head .oi-h-total { text-align:right; }

.order-item {
  display:grid; grid-template-columns:var(--oi-cols); gap:1rem; align-items:center;
  grid-template-areas:"no date status total go";
  padding:.9rem 1.05rem;
  border:1px solid var(--line); border-radius:14px;
  background:var(--surface); color:var(--ink); text-decoration:none;
  transition:border-color .15s, box-shadow .15s;
}
.order-item + .order-item { margin-top:.6rem; }
.order-item:hover, .order-item:focus-visible {
  color:var(--ink); border-color:var(--primary);
  box-shadow:0 6px 20px rgba(0,0,0,.07);
}
.order-item:hover .oi-go { transform:translateX(3px); }

.oi-no     { grid-area:no; font-weight:700; overflow-wrap:anywhere; }
.oi-date   { grid-area:date; color:var(--muted); font-size:.85rem; }
.oi-status { grid-area:status; justify-self:start; }
.oi-total  { grid-area:total; text-align:right; font-weight:700; white-space:nowrap; }
.oi-go     { grid-area:go; color:var(--muted); text-align:right; transition:transform .15s; }
.oi-sep    { margin:0 .35rem; opacity:.55; }

/* Rozet satır yüksekliğini şişirmesin, tüm durumlar aynı yükseklikte dursun. */
.order-item .badge { font-size:.72rem; font-weight:700; padding:.4em .7em; border-radius:999px; }

@media (max-width:767.98px) {
  .order-list-head { display:none; }
  .order-item {
    grid-template-columns:minmax(0,1fr) auto .85rem;
    grid-template-areas:"no    status go"
                        "date  total  go";
    gap:.25rem .7rem;
    padding:.85rem .95rem;
    border-radius:12px;
  }
  .oi-status { justify-self:end; }
  .oi-date   { font-size:.8rem; }
  .oi-total  { font-size:1.02rem; }
  .oi-go     { align-self:center; }
}

/* Çok dar cihazlarda (≤360px) ürün adedi tarihi ikinci satıra kırıyor: düşsün. */
@media (max-width:359.98px) {
  .oi-sep, .oi-count { display:none; }
  .order-item .badge { font-size:.68rem; padding:.35em .6em; }
}

/* ═══════════════ HESABIM — üye hesap ekranları (Identity/Manage) ═══════════════
   Tüm renkler tema değişkenlerinden gelir; koyu mod ve tema paletleri kendiliğinden uyar. */

/* ---- Kimlik başlığı: avatar + ad + özet sayaçlar ---- */
.acct-hero{
  display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:1.25rem;
  background:
    radial-gradient(120% 160% at 100% 0%, color-mix(in srgb, var(--primary) 22%, transparent) 0%, transparent 60%),
    var(--surface);
  border:1px solid var(--line); border-radius:var(--radius); box-shadow:var(--shadow-sm);
  padding:1.35rem 1.5rem; margin-bottom:1.1rem; position:relative; overflow:hidden;
}
.acct-hero::after{
  content:""; position:absolute; left:0; right:0; top:0; height:3px;
  background:linear-gradient(90deg, var(--primary), transparent 70%);
}
.acct-hero-id{ display:flex; align-items:center; gap:1rem; min-width:0; }
.acct-avatar{
  flex:0 0 auto; width:66px; height:66px; border-radius:50%;
  display:grid; place-items:center;
  background:var(--primary); color:var(--on-primary);
  font-family:'Archivo','Inter',sans-serif; font-weight:800; font-size:1.5rem; letter-spacing:.02em;
  box-shadow:0 0 0 4px color-mix(in srgb, var(--primary) 18%, transparent);
}
.acct-hero-txt{ min-width:0; }
.acct-name{
  font-size:1.5rem; margin:0 0 .3rem; line-height:1.15;
  text-transform:none; letter-spacing:-.01em; overflow-wrap:anywhere;
}
.acct-meta{ display:flex; flex-wrap:wrap; gap:.35rem .9rem; color:var(--muted); font-size:.85rem; }
.acct-meta-i{ display:inline-flex; align-items:center; gap:.35rem; min-width:0; overflow-wrap:anywhere; }
.acct-meta-i i{ opacity:.75; }

.acct-stats{ display:flex; gap:.6rem; flex-wrap:wrap; }
.acct-stat{
  display:grid; grid-template-areas:"ico val" "ico lbl"; grid-template-columns:auto 1fr;
  column-gap:.6rem; align-items:center;
  min-width:132px; padding:.7rem .9rem;
  background:var(--bg-soft); border:1px solid var(--line); border-radius:var(--radius-sm);
  color:var(--ink); text-decoration:none; transition:border-color .15s ease, transform .15s ease, box-shadow .15s ease;
}
a.acct-stat:hover{ border-color:var(--primary); transform:translateY(-2px); box-shadow:var(--shadow-sm); color:var(--ink); }
.acct-stat.is-static{ cursor:default; }
.acct-stat-ico{
  grid-area:ico; width:36px; height:36px; border-radius:10px; display:grid; place-items:center;
  background:var(--primary-light); color:var(--ink); font-size:1.05rem;
}
.acct-stat-val{ grid-area:val; font-weight:800; font-size:1.05rem; line-height:1.15; }
.acct-stat-lbl{ grid-area:lbl; color:var(--muted); font-size:.76rem; line-height:1.2; }

/* ---- İki sütunlu iskelet ---- */
.acct-shell{ display:grid; grid-template-columns:290px minmax(0,1fr); gap:1.1rem; align-items:start; }
.acct-side{ position:sticky; top:1rem; }

/* ---- Yan menü ---- */
.acct-nav{
  background:var(--surface); border:1px solid var(--line); border-radius:var(--radius);
  box-shadow:var(--shadow-sm); padding:.5rem; display:flex; flex-direction:column; gap:.15rem;
}
.acct-nav form{ margin:0; }
.acct-navitem{
  display:flex; align-items:center; gap:.7rem; width:100%; text-align:left;
  padding:.6rem .65rem; border:0; border-radius:var(--radius-sm);
  background:transparent; color:var(--ink-soft); text-decoration:none;
  font-family:inherit; font-size:1rem; position:relative;
  transition:background .15s ease, color .15s ease;
}
.acct-navitem:hover{ background:var(--bg-soft); color:var(--ink); }
.acct-navitem .ai-ico{
  flex:0 0 auto; width:36px; height:36px; border-radius:10px; display:grid; place-items:center;
  background:var(--bg-soft); color:var(--ink); font-size:1.02rem; transition:background .15s ease, color .15s ease;
}
.acct-navitem .ai-txt{ display:flex; flex-direction:column; min-width:0; line-height:1.25; }
.acct-navitem .ai-txt b{ font-weight:700; font-size:.94rem; }
.acct-navitem .ai-txt small{ color:var(--muted); font-size:.76rem; }
.acct-navitem .ai-ch{ margin-left:auto; color:var(--muted); font-size:.78rem; opacity:0; transition:opacity .15s ease, transform .15s ease; }
.acct-navitem:hover .ai-ch{ opacity:.8; transform:translateX(2px); }
.acct-navitem.active{ background:var(--primary-light); color:var(--ink); }
.acct-navitem.active .ai-ico{ background:var(--primary); color:var(--on-primary); }
.acct-navitem.active .ai-txt b{ font-weight:800; }
.acct-navitem.active::before{
  content:""; position:absolute; left:0; top:22%; bottom:22%; width:3px;
  border-radius:0 3px 3px 0; background:var(--primary);
}
.acct-navitem.is-danger{ color:var(--danger); }
.acct-navitem.is-danger .ai-ico{ background:color-mix(in srgb, var(--danger) 12%, transparent); color:var(--danger); }
.acct-navitem.is-danger .ai-txt small{ color:color-mix(in srgb, var(--danger) 65%, var(--muted)); }
.acct-navitem.is-danger:hover{ background:color-mix(in srgb, var(--danger) 10%, transparent); }
.acct-nav-sep{ height:1px; background:var(--line); margin:.4rem .5rem; }

/* ---- İçerik kartı ---- */
.acct-card{
  background:var(--surface); border:1px solid var(--line); border-radius:var(--radius);
  box-shadow:var(--shadow-sm); padding:1.4rem 1.5rem; max-width:640px;
}
.acct-card-head{ display:flex; gap:.85rem; align-items:flex-start; padding-bottom:1rem; margin-bottom:1.1rem; border-bottom:1px solid var(--line); }
.acct-card-head .ach-ico{
  flex:0 0 auto; width:42px; height:42px; border-radius:12px; display:grid; place-items:center;
  background:var(--primary-light); color:var(--ink); font-size:1.15rem;
}
.acct-card-head h2{ font-size:1.15rem; margin:0 0 .2rem; text-transform:none; letter-spacing:-.01em; }
.acct-card-head p{ margin:0; color:var(--muted); font-size:.86rem; line-height:1.45; }

/* ---- Bildirim / uyarı şeritleri ---- */
.acct-flash{
  display:flex; align-items:flex-start; gap:.55rem; margin-bottom:1.1rem;
  padding:.7rem .9rem; border-radius:var(--radius-sm); font-size:.9rem; font-weight:600;
  background:color-mix(in srgb, var(--success) 12%, transparent);
  border:1px solid color-mix(in srgb, var(--success) 30%, transparent);
  color:color-mix(in srgb, var(--success) 78%, var(--ink));
}
.acct-errors:not(:empty){
  margin-bottom:1rem; padding:.7rem .9rem; border-radius:var(--radius-sm); font-size:.88rem;
  background:color-mix(in srgb, var(--danger) 10%, transparent);
  border:1px solid color-mix(in srgb, var(--danger) 28%, transparent);
  color:var(--danger);
}
.acct-errors ul{ margin:0; padding-left:1.1rem; }
.acct-note{
  display:flex; gap:.55rem; align-items:flex-start;
  background:var(--bg-soft); border:1px solid var(--line); border-radius:var(--radius-sm);
  padding:.7rem .85rem; color:var(--muted); font-size:.83rem; line-height:1.5;
}
.acct-note i{ color:var(--primary); font-size:.95rem; margin-top:.1rem; }

/* ---- Mevcut değer satırı (e-posta ekranı) ---- */
.acct-current{
  display:flex; align-items:center; gap:.8rem; flex-wrap:wrap;
  background:var(--bg-soft); border:1px solid var(--line); border-radius:var(--radius-sm);
  padding:.8rem .9rem; margin-bottom:1.2rem;
}
.acct-current-ico{
  width:38px; height:38px; flex:0 0 auto; border-radius:10px; display:grid; place-items:center;
  background:var(--surface); border:1px solid var(--line); color:var(--ink);
}
.acct-current-txt{ display:flex; flex-direction:column; min-width:0; line-height:1.3; }
.acct-current-txt small{ color:var(--muted); font-size:.75rem; }
.acct-current-txt b{ font-size:.95rem; overflow-wrap:anywhere; }
.acct-tag{
  margin-left:auto; display:inline-flex; align-items:center; gap:.3rem;
  background:color-mix(in srgb, var(--success) 14%, transparent);
  color:color-mix(in srgb, var(--success) 80%, var(--ink));
  border-radius:999px; padding:.22rem .6rem; font-size:.76rem; font-weight:700; white-space:nowrap;
}

/* ---- Form alanları ---- */
.acct-form{ display:flex; flex-direction:column; gap:1.05rem; }
.acct-field{ display:flex; flex-direction:column; gap:.35rem; }
.acct-label{ font-size:.85rem; font-weight:700; color:var(--ink); margin:0; }
.acct-input{ position:relative; display:flex; align-items:center; }
.acct-input > i:first-child{
  position:absolute; left:.85rem; color:var(--muted); font-size:.95rem; pointer-events:none; z-index:2;
}
.acct-input .form-control{ padding-left:2.5rem; }
.acct-input .form-control:disabled,
.acct-input .form-control[readonly]{ background:var(--bg-soft); color:var(--muted); }
.acct-field.is-locked .acct-input .form-control{ padding-right:2.4rem; }
.acct-lock{ position:absolute; right:.9rem; color:var(--muted); font-size:.8rem; pointer-events:none; }
.acct-eye{
  position:absolute; right:.35rem; width:34px; height:34px; border:0; background:transparent;
  color:var(--muted); border-radius:8px; display:grid; place-items:center; font-size:.95rem; padding:0;
}
.acct-eye:hover{ background:var(--bg-soft); color:var(--ink); }
.acct-input:has(.acct-eye) .form-control{ padding-right:2.7rem; }
.acct-hint{ color:var(--muted); font-size:.8rem; line-height:1.45; }
.acct-hint a{ color:var(--ink); font-weight:600; border-bottom:1px solid var(--primary); }
.acct-err{ color:var(--danger); font-size:.8rem; font-weight:600; }
.acct-err:empty{ display:none; }

/* ---- Şifre gücü göstergesi ---- */
.acct-meter{ display:flex; align-items:center; gap:.6rem; margin-top:.15rem; }
.acct-meter-bar{ flex:1; height:5px; border-radius:999px; background:var(--bg-soft); border:1px solid var(--line); overflow:hidden; }
.acct-meter-bar > span{ display:block; height:100%; width:0; border-radius:999px; background:var(--muted); transition:width .2s ease, background .2s ease; }
.acct-meter-lbl{ color:var(--muted); font-size:.76rem; font-weight:600; min-width:76px; text-align:right; }
.acct-meter[data-level="0"] .acct-meter-bar > span,
.acct-meter[data-level="1"] .acct-meter-bar > span{ background:var(--danger); }
.acct-meter[data-level="2"] .acct-meter-bar > span{ background:#e8a317; }
.acct-meter[data-level="3"] .acct-meter-bar > span,
.acct-meter[data-level="4"] .acct-meter-bar > span{ background:var(--success); }

/* ---- Kaydet satırı ---- */
.acct-actions{
  display:flex; align-items:center; gap:.9rem; flex-wrap:wrap;
  padding-top:1.05rem; margin-top:.2rem; border-top:1px solid var(--line);
}
.acct-actions .btn{ font-weight:700; }
.acct-actions-note{ display:inline-flex; align-items:center; gap:.35rem; color:var(--muted); font-size:.79rem; }

/* ---- Tablet / mobil ---- */
@media (max-width: 991.98px){
  .acct-shell{ grid-template-columns:minmax(0,1fr); }
  .acct-side{ position:static; }
  /* Menü yatay sekme şeridine dönüşür: alt yazılar ve ayraçlar gizlenir. */
  .acct-nav{ flex-direction:row; gap:.4rem; overflow-x:auto; padding:.45rem; scrollbar-width:none; }
  .acct-nav::-webkit-scrollbar{ display:none; }
  .acct-nav-sep{ display:none; }
  .acct-navitem{ flex-direction:column; gap:.3rem; padding:.55rem .75rem; white-space:nowrap; text-align:center; }
  .acct-navitem .ai-txt small,
  .acct-navitem .ai-ch{ display:none; }
  .acct-navitem.active::before{ left:22%; right:22%; top:auto; bottom:0; width:auto; height:3px; border-radius:3px 3px 0 0; }
  .acct-card{ max-width:none; }
}

@media (max-width: 575.98px){
  .acct-hero{ padding:1.1rem; gap:1rem; }
  .acct-avatar{ width:56px; height:56px; font-size:1.25rem; }
  .acct-name{ font-size:1.25rem; }
  .acct-meta{ font-size:.8rem; }
  .acct-stats{ width:100%; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.45rem; }
  .acct-stat{ min-width:0; grid-template-areas:"ico" "val" "lbl"; grid-template-columns:1fr; justify-items:center; text-align:center; row-gap:.2rem; padding:.6rem .35rem; }
  .acct-stat-ico{ width:32px; height:32px; font-size:.95rem; }
  .acct-stat-val{ font-size:.95rem; }
  .acct-stat-lbl{ font-size:.7rem; }
  .acct-card{ padding:1.1rem; }
  .acct-card-head{ gap:.7rem; }
  .acct-tag{ margin-left:0; }
}

/* Boomer teması keskin köşelidir — hesap bileşenleri de kare kalsın. */
[data-theme="boomer"] :is(.acct-hero,.acct-avatar,.acct-stat,.acct-stat-ico,.acct-nav,.acct-navitem,
  .acct-navitem .ai-ico,.acct-card,.acct-card-head .ach-ico,.acct-flash,.acct-errors,.acct-note,
  .acct-current,.acct-current-ico,.acct-tag,.acct-eye,.acct-meter-bar,.acct-meter-bar > span){ border-radius:0; }


/* Mobil görselli bloklar <picture> ile sarılır. display:contents kutuyu ortadan kaldırır;
   böylece <img> üst öğenin (flex/grid/absolute) düzeninde doğrudan yer alır ve mevcut
   ".x img" kuralları hiç değişmeden çalışmaya devam eder. */
picture { display: contents; }

/* ---------- Sayfa blokları (üste binen mod): slider / menü / şerit ---------- */
.pageblocks { display: flex; flex-direction: column; gap: 1rem; margin-bottom: 1.25rem; }
.pb-slider { border-radius: var(--radius, 16px); overflow: hidden; box-shadow: var(--shadow-sm); }
.pb-slider .carousel-item { position: relative; height: var(--pb-h, 360px); background: var(--bg-soft); }
.pb-slide-img { width: 100%; height: 100%; object-fit: cover; display: block; }
.pb-slide-cap { position: absolute; left: 0; bottom: 0; z-index: 2; padding: clamp(1rem,3vw,1.8rem);
    color: #fff; text-shadow: 0 2px 14px rgba(0,0,0,.55); max-width: min(560px, 82%); }
.pb-slide-cap h3 { color: #fff; font-weight: 800; font-size: clamp(1.3rem,3.2vw,2.2rem); margin: 0 0 .35rem; line-height: 1.1; }
.pb-slide-cap p { margin: 0 0 .7rem; opacity: .96; font-size: clamp(.9rem,1.6vw,1.05rem); }
.pb-slide-cover { position: absolute; inset: 0; z-index: 1; }
.pb-menu { display: flex; flex-wrap: wrap; gap: .4rem .55rem; align-items: center; padding: .2rem 0; }
.pb-menu-link { text-decoration: none; color: var(--ink); font-weight: 600; font-size: .95rem; padding: .5rem .95rem; transition: all .15s; white-space: nowrap; }
.pb-menu-pills .pb-menu-link { background: var(--bg-soft); border: 1px solid var(--line); border-radius: 999px; }
.pb-menu-pills .pb-menu-link:hover { background: var(--primary); color: var(--on-primary); border-color: var(--primary); }
.pb-menu-underline .pb-menu-link { padding: .5rem .35rem; border-bottom: 2px solid transparent; }
.pb-menu-underline .pb-menu-link:hover { border-bottom-color: var(--primary); color: var(--primary); }
.pb-menu-plain .pb-menu-link:hover { color: var(--primary); }
.pb-strip { display: flex; align-items: center; justify-content: center; gap: 1rem; flex-wrap: wrap;
    padding: .75rem 1.1rem; border-radius: var(--radius-sm, 10px); font-weight: 600; text-align: center; }
.pb-strip-btn { text-decoration: none; padding: .38rem 1.05rem; border-radius: 999px; font-weight: 700; font-size: .9rem; white-space: nowrap; transition: transform .15s ease; }
.pb-strip-link { text-decoration: underline; font-weight: 700; white-space: nowrap; }
/* Bağlantılı şerit: bandın tamamı tek tıklama alanı. */
.pb-strip-a { text-decoration: none; color: inherit; cursor: pointer; transition: filter .15s ease, transform .15s ease; }
.pb-strip-a:hover { filter: brightness(1.07); }
.pb-strip-a:hover .pb-strip-btn { transform: translateY(-1px); }
.pb-strip-a:focus-visible { outline: 2px solid currentColor; outline-offset: 2px; }


/* ═══════════════ SAYFA KURUCUSU BLOKLARI (hb-*) ═══════════════
   Ana sayfanın tamamı bloklardan kurulduğunda kullanılan düzen. Renk/font/kart stili
   yine temanın kendi değişkenlerinden gelir; arşetip derisi aşağıda [data-archetype] ile
   ince ayar yapar. Böylece aynı bloklar her temada o temanın diliyle görünür. */
.hb { margin: 0 0 2rem; }
.hb:last-child { margin-bottom: 0; }

/* Hero */
.hb-hero { position:relative; background:var(--bg-soft); border:1px solid var(--line); border-radius:22px; overflow:hidden; }
.hb-hero-in { position:relative; z-index:2; display:grid; grid-template-columns:1fr 1fr; gap:clamp(1rem,3vw,2.4rem);
    align-items:center; padding:clamp(1.6rem,4vw,3.2rem); min-height:var(--hb-h,420px); }
.hb-hero-copy h1 { font-family:'Archivo',sans-serif; font-weight:900; font-size:clamp(2rem,5vw,3.6rem); line-height:.98; color:var(--ink); margin:0 0 .9rem; }
.hb-hero-copy p { color:var(--ink-soft); font-size:1.08rem; max-width:460px; margin:0 0 1.3rem; }
.hb-hero-art img { width:100%; border-radius:18px; object-fit:cover; box-shadow:var(--shadow); display:block; }
.hb-hero-bg { position:absolute; inset:0; z-index:0; }
.hb-hero-bg img { width:100%; height:100%; object-fit:cover; display:block; }
/* "Alana yay": görsel tüm hero'yu kaplar, metin okunsun diye soldan perde iner. */
.hb-hero.is-fill .hb-hero-in { grid-template-columns:1fr; }
.hb-hero.is-fill::after { content:""; position:absolute; inset:0; z-index:1;
    background:linear-gradient(90deg, rgba(255,255,255,var(--hb-ov,.94)) 0%, rgba(255,255,255,calc(var(--hb-ov,.94) * .5)) 48%, transparent 100%); }
/* Metnin üçü de boşsa hero "yalnız görsel"dir: yükseklik görselin kendi oranından gelsin,
   yoksa kutu sadece dolgu kadar kalıp banner'ı şerit gibi kırpar. */
.hb-hero.is-bare .hb-hero-in { display:none; }
.hb-hero.is-bare::after { display:none; }
.hb-hero.is-bare .hb-hero-bg { position:static; }
.hb-hero.is-bare .hb-hero-bg img { height:auto; }
.hb-hero.is-center .hb-hero-in { text-align:center; justify-items:center; }
.hb-hero.is-center .hb-hero-copy p { margin-left:auto; margin-right:auto; }
.hb-hero.is-end .hb-hero-in { text-align:right; justify-items:end; }
@media (max-width:900px) { .hb-hero-in { grid-template-columns:1fr; } .hb-hero-art { display:none; } }

/* Ürün rafı (yatay kaydırma) */
.hb-rail { display:flex; gap:1rem; overflow-x:auto; padding-bottom:.6rem; scroll-snap-type:x proximity; }
.hb-rail > .col { flex:0 0 calc((100% - (var(--hb-cols,4) - 1) * 1rem) / var(--hb-cols,4)); min-width:170px; scroll-snap-align:start; }
@media (max-width:768px) { .hb-rail > .col { flex-basis:46%; } }

/* Görsel duvarı: kartsız ürün görselleri */
.hb-wall { display:grid; grid-template-columns:repeat(var(--hb-cols,6),1fr); gap:.5rem; }
.hb-wall a { display:block; overflow:hidden; background:var(--bg-soft); aspect-ratio:1; border-radius:var(--radius-sm,10px); }
.hb-wall img { width:100%; height:100%; object-fit:cover; transition:transform .4s ease; }
.hb-wall a:hover img { transform:scale(1.06); }
@media (max-width:768px) { .hb-wall { grid-template-columns:repeat(3,1fr); } }

/* Kategori / vitrin kartları */
.hb-cat-grid { display:grid; grid-template-columns:repeat(var(--hb-cols,4),1fr); gap:1rem; }
.hb-cat { position:relative; display:block; overflow:hidden; border-radius:var(--radius); min-height:var(--hb-ch,200px);
    background:var(--primary-light); box-shadow:var(--shadow-sm); color:#fff; transition:transform .25s ease, box-shadow .25s ease; }
.hb-cat img { position:absolute; inset:0; width:100%; height:100%; transition:transform .4s ease; }
.hb-cat img.is-fill { object-fit:cover; }
.hb-cat img.is-contain { object-fit:contain; background:var(--surface); }
.hb-cat-veil { position:absolute; inset:0; z-index:1;
    background:linear-gradient(0deg, rgba(20,22,28,.78) 0%, rgba(20,22,28,.18) 55%, transparent 100%); opacity:calc(1 - var(--hb-cv,0)); }
.hb-cat-body { position:absolute; left:0; right:0; bottom:0; z-index:2; padding:1.1rem 1.3rem;
    display:flex; flex-direction:column; align-items:flex-start; gap:.3rem; }
.hb-cat-name { font-size:1.3rem; font-weight:800; color:#fff; line-height:1.15; text-shadow:0 1px 8px rgba(0,0,0,.5); }
.hb-cat-sub { font-size:.8rem; color:rgba(255,255,255,.78); }
.hb-cat-btn { margin-top:.4rem; background:var(--primary); color:var(--on-primary); font-weight:800; font-size:.82rem; padding:.42rem .95rem; border-radius:999px; }
/* Kart efektleri (blok başına seçilir) */
.hb-cat:hover img, .hb-cat.fx-zoom:hover img { transform:scale(1.07); }
.hb-cat.fx-none img { transition:none; }
.hb-cat.fx-none:hover img { transform:none; }
.hb-cat.fx-lift:hover { transform:translateY(-6px); box-shadow:var(--shadow); }
.hb-cat.fx-lift:hover img { transform:none; }
.hb-cat.fx-glow:hover { box-shadow:0 0 0 3px var(--primary), var(--shadow); }
.hb-cat.fx-slide .hb-cat-body { transform:translateY(18px); transition:transform .28s ease; }
.hb-cat.fx-slide:hover .hb-cat-body { transform:translateY(0); }
/* Vitrin biçimleri */
.hb-cats.is-banner .hb-cat-veil { background:linear-gradient(90deg, rgba(20,22,28,.72) 0%, rgba(20,22,28,.25) 60%, transparent 100%); }
.hb-cats.is-banner .hb-cat-name { font-size:clamp(1.4rem,2.6vw,1.9rem); }
.hb-cats.is-tower .hb-cat-body { align-items:center; text-align:center; bottom:1.6rem; }
.hb-cats.is-tower .hb-cat-name { text-transform:uppercase; letter-spacing:.02em; }
@media (max-width:768px) { .hb-cat-grid { grid-template-columns:repeat(2,1fr); } }
@media (max-width:480px) { .hb-cats.is-banner .hb-cat-grid, .hb-cats.is-tower .hb-cat-grid { grid-template-columns:1fr; } }

/* Avantaj şeridi — blok kendi zeminini alırsa maddeler saydamlaşır */
.hb-features.has-bg { padding:1.1rem 1.3rem; border-radius:var(--radius); }
.hb-features.has-bg .item { background:transparent; border-color:currentColor; }
.hb-features.has-bg .item i, .hb-features.has-bg .item .t, .hb-features.has-bg .item .s { color:inherit; }

/* Bülten ve sipariş sorgulama bandı */
.hb-news, .hb-track { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:1.2rem;
    background:var(--bg-soft); border:1px solid var(--line); border-radius:var(--radius); padding:1.6rem 1.8rem; }
.hb-news h2, .hb-track h2 { margin:0 0 .3rem; font-size:1.4rem; }
.hb-news p, .hb-track p { margin:0; color:var(--ink-soft); font-size:.94rem; }
.hb-news-form, .hb-track-form { display:flex; gap:.5rem; flex:1 1 320px; max-width:560px; }
.hb-news-form .form-control, .hb-track-form .form-control { flex:1 1 auto; min-width:0; }
.hb-news-form .btn, .hb-track-form .btn { white-space:nowrap; }
/* Bültende onay satırı alta iner: kutu + buton kendi satırında kalsın diye form sütun akar. */
.hb-news-form { flex-direction:column; }
.hb-news-row { display:flex; gap:.5rem; }
.hb-news-row .form-control { flex:1 1 auto; min-width:0; }
.hb-news-kvkk { display:flex; align-items:flex-start; gap:.5rem; font-size:.85rem; text-align:left; }
.hb-news-kvkk .form-check-input { flex:0 0 auto; margin-top:.15rem; }
.hb-news-kvkk a { color:inherit; text-decoration:underline; }
/* Sipariş sorgulama alan etiketi: varsayılan olarak yalnız ekran okuyucuya görünür;
   görünür etiket isteyen arşetip kendi derisinde açar (bkz. boomer). */
.hb-fld { display:contents; }
.hb-fld-lbl { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }

/* Serbest metin */
.hb-text.is-center { text-align:center; }
.hb-text.is-end { text-align:right; }
.hb-text h2 { font-size:1.6rem; margin:0 0 .5rem; }
.hb-text p { color:var(--ink-soft); margin:0; white-space:pre-line; }

/* Sosyal vitrin başlığı: kapak yüksekliği bloktan gelir */
.hb-profile .sf-cover { height:var(--hb-h,220px); }

/* Tam genişlik (kenardan kenara) bloklar — kapsayıcının dışına taşar.
   overflow-x:clip yalnızca taşma olan sayfada açılır; sticky başlığı bozmaz. */
html:has(.is-wide) { overflow-x: clip; }
.hb.is-wide, .hb-embed.is-wide { margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw); border-radius: 0; }
:is(.hb-news,.hb-track,.hb-features,.hb-cats,.hb-prods,.hb-text).is-wide { padding-left: clamp(1.2rem,5vw,3rem); padding-right: clamp(1.2rem,5vw,3rem); }
:is(.hb-news,.hb-track).is-wide { border-left: 0; border-right: 0; }
/* slider / menü / kampanya şeridi _PageBlocks'a devredilir; sarmalayıcı aralığı korur */
.hb-embed { margin: 0 0 2rem; }
.hb-embed .pageblocks { margin-bottom: 0; }

/* Ortalanmış bölüm başlığı (marka vitrini / haftanın favorileri gibi) */
.section-head.is-center { flex-direction: column; align-items: center; justify-content: center; gap: .3rem; text-align: center; }

/* Marka vitrini: solda büyük tanıtım görseli, sağda ürün ızgarası */
.hb-sc { display: grid; grid-template-columns: 4fr 8fr; gap: 1.5rem; align-items: stretch; }
.hb-sc.is-bare { grid-template-columns: 1fr; }
.hb-sc-lead { display: block; overflow: hidden; background: var(--bg-soft); border-radius: var(--radius); }
.hb-sc-lead picture { display: block; height: 100%; }
.hb-sc-lead img { width: 100%; height: 100%; min-height: 320px; object-fit: cover; display: block; transition: transform .5s ease; }
.hb-sc-lead:hover img { transform: scale(1.04); }
@media (max-width: 991.98px) { .hb-sc { grid-template-columns: 1fr; } .hb-sc-lead img { min-height: 220px; } }

/* Kategori vitrini "yatay raf": kartlar kaydırılarak gezilir */
.hb-cats.is-rail .hb-cat-grid { display: flex; gap: 1rem; overflow-x: auto; scroll-snap-type: x proximity; padding-bottom: .5rem; }
.hb-cats.is-rail .hb-cat { flex: 0 0 calc((100% - (var(--hb-cols,4) - 1) * 1rem) / var(--hb-cols,4)); scroll-snap-align: start; }
.hb-cats.is-rail .hb-cat-body { align-items: center; text-align: center; bottom: 8%; padding: 0 1rem; }
.hb-cats.is-rail .hb-cat-name { text-transform: uppercase; letter-spacing: .02em; }
@media (max-width: 768px) { .hb-cats.is-rail .hb-cat { flex-basis: 62%; } }

/* Yatay raf gezinme okları — raf CSS ile kayar, oklar bir ekran boyu kaydırır.
   .is-plain: kategori vitrininin raf DIŞI biçimleri aynı sarmalayıcıyı kullanır
   ama ne ok ne de konumlandırma alır. */
.hb-railwrap { position: relative; }
.hb-railwrap.is-plain { position: static; }
.hb-rail-nav { position: absolute; top: 50%; transform: translateY(-50%); z-index: 3;
    width: 40px; height: 40px; display: inline-flex; align-items: center; justify-content: center;
    padding: 0; border: 1px solid var(--line); border-radius: 50%; background: var(--surface);
    color: var(--ink); font-size: 1.2rem; line-height: 1; box-shadow: var(--shadow-sm);
    transition: opacity .2s ease, background .2s ease; }
.hb-rail-nav:hover:not(:disabled) { background: var(--bg-soft); }
.hb-rail-nav.is-prev { left: -14px; }
.hb-rail-nav.is-next { right: -14px; }
.hb-rail-nav:disabled { opacity: .22; cursor: default; }
.hb-railwrap.is-static .hb-rail-nav, .hb-railwrap.is-plain .hb-rail-nav { display: none; }
@media (max-width: 768px) { .hb-rail-nav { display: none; } }

/* Avantaj maddesinde ikon yerine küçük kare görsel */
.hb-features .hb-feat-img { flex: 0 0 auto; display: block; width: 70px; }
.hb-features .hb-feat-img img { width: 100%; height: auto; display: block; }

/* Bülten bandı zemin görseli */
.hb-news.has-img { position: relative; overflow: hidden; flex-direction: column; justify-content: center; text-align: center; }
.hb-news-bg { position: absolute; inset: 0; z-index: 0; }
.hb-news-bg img { width: 100%; height: 100%; object-fit: cover; display: block; }
.hb-news.has-img > :not(.hb-news-bg) { position: relative; z-index: 2; }
.hb-news.has-img .hb-news-copy h2, .hb-news.has-img .hb-news-copy p { color: #fff; text-shadow: 0 2px 18px rgba(0,0,0,.55); }
/* Bant dikey yerleştiğinde flex-basis YÜKSEKLİK olur: 520px taban e-posta kutusunu
   yarım ekran boyunda uzatırdı — form kendi içeriği kadar yüksek kalsın. */
.hb-news.has-img .hb-news-form { flex: 0 0 auto; align-self: center; width: 100%; max-width: 520px; }

/* ── Arşetip derileri: aynı bloklar, temanın kendi dili ── */
[data-archetype="sneaksnet"] .hb-hero { background:var(--ink); border:0; border-radius:0; }
[data-archetype="sneaksnet"] .hb-hero-copy h1 { color:#fff; text-transform:uppercase; }
[data-archetype="sneaksnet"] .hb-hero-copy p { color:rgba(255,255,255,.72); }
[data-archetype="sneaksnet"] .hb-cat { border-radius:0; }
[data-archetype="sneaksnet"] .hb-wall { gap:.35rem; }
[data-archetype="sneaksnet"] .hb-cat-name { text-transform:uppercase; }

[data-archetype="boomer"] .hb-hero, [data-archetype="boomer"] .hb-cat,
[data-archetype="boomer"] .hb-news, [data-archetype="boomer"] .hb-track { border-radius:0; }
[data-archetype="boomer"] .hb-cat-name, [data-archetype="boomer"] .hb-cat-btn,
[data-archetype="boomer"] .hb-news h2, [data-archetype="boomer"] .hb-track h2 { text-transform:uppercase; letter-spacing:.02em; }
[data-archetype="boomer"] .hb-cat-btn { border-radius:0; background:#fff; color:#050505; }
[data-archetype="boomer"] .hb-news { background:#050505; color:#fff; border-color:#050505; }
[data-archetype="boomer"] .hb-news p { color:rgba(255,255,255,.72); }

[data-archetype="market"] .hb { margin-bottom:1.4rem; }
[data-archetype="market"] .hb-cat { min-height:var(--hb-ch,140px); }
[data-archetype="market"] .hb-cat-name { font-size:1rem; }

/* Kampanya bandı ("büyük" biçim): üstte küçük satır, altında iri başlık — tema bandı gibi */
.pb-strip-big { flex-direction:column; gap:.2rem; padding:1.05rem 1.6rem; border-radius:14px; text-align:center; }
.pb-strip-big .pb-strip-sm { font-weight:700; font-size:.85rem; letter-spacing:.05em; text-transform:uppercase; opacity:.85; }
.pb-strip-big .pb-strip-text { font-family:'Archivo',sans-serif; font-weight:900; font-size:clamp(1.4rem,3.4vw,2.3rem);
    text-transform:uppercase; letter-spacing:-.01em; line-height:1.1; }

/* ── Arşetip derileri: görsel duvarı ve kuleler özgün temalarındaki gibi ── */
/* sneaksnet: yuvarlak köşeli, çerçeveli 6'lı duvar (özgün .sn-wall) */
[data-archetype="sneaksnet"] .hb-wall a { border-radius:12px; border:1px solid var(--line); }
[data-archetype="sneaksnet"] .hb-wall { gap:.6rem; }
/* boomer: görseller kırpılmaz (contain), beyaz zemin, geniş boşluk (özgün .bmr-gallery) */
[data-archetype="boomer"] .hb-wall { gap:1.5rem; }
[data-archetype="boomer"] .hb-wall a { background:#fff; }
[data-archetype="boomer"] .hb-wall img { object-fit:contain; }
/* boomer: kategori kuleleri 2/3 oranında dikey (özgün .bmr-tile) */
[data-archetype="boomer"] .hb-cats.is-tower .hb-cat { aspect-ratio:2/3; min-height:0; }

/* Kule kartı: metin dipten biraz yukarıda, geniş buton — özgün .bmr-tile ölçüleri */
.hb-cats.is-tower .hb-cat-body { bottom:9%; padding:0 1rem; }
.hb-cats.is-tower .hb-cat-name { font-size:clamp(1.35rem,2.4vw,2rem); font-weight:900; text-shadow:0 2px 18px rgba(0,0,0,.45); }
.hb-cats.is-tower .hb-cat-btn { width:195px; max-width:80%; padding:11px 0; text-align:center; letter-spacing:.7px; }
[data-archetype="boomer"] .hb-cats.is-tower .hb-cat:hover .hb-cat-btn { background:#000; color:#fff; }

/* boomer: ortalanmış iri bölüm başlığı (özgün .bmr-sc-title / .bmr-favs h2) */
[data-archetype="boomer"] .section-head.is-center h2 { font-size:clamp(1.5rem,2.6vw,2.19rem); font-weight:700; text-transform:uppercase; }
/* boomer: marka vitrini keskin köşeli, görsel kırpılarak yayılır (özgün .bmr-showcase) */
[data-archetype="boomer"] .hb-sc-lead { border-radius:0; background:#f5f5f5; }
/* boomer: kategori rafı 2/3 oranında dikey afişler (özgün .bmr-tile) */
[data-archetype="boomer"] .hb-cats.is-rail .hb-cat { aspect-ratio:2/3; min-height:0; }
[data-archetype="boomer"] .hb-cats.is-rail .hb-cat-btn { width:195px; max-width:80%; padding:11px 0; text-align:center; border-radius:100px; }
[data-archetype="boomer"] .hb-cats.is-rail .hb-cat:hover .hb-cat-btn { background:#000; color:#fff; }
/* boomer: siyah bülten bandı (özgün .bmr-subscribe) */
[data-archetype="boomer"] .hb-news.has-img { background:#010101; border-color:#010101; padding:3.4rem 1.2rem; }
[data-archetype="boomer"] .hb-news-bg img { opacity:.8; }
[data-archetype="boomer"] .hb-news.has-img .hb-news-copy h2 { font-size:clamp(1.7rem,3.6vw,2.4rem); font-weight:900; }
[data-archetype="boomer"] .hb-news.has-img .hb-news-copy p { font-weight:600; text-transform:uppercase; letter-spacing:.02em; }
/* boomer: sipariş sorgulama çerçevesiz ve ortalı (özgün .bmr-track) */
[data-archetype="boomer"] .hb-track { max-width:812px; margin-left:auto; margin-right:auto; background:transparent; border:0;
    flex-direction:column; text-align:center; padding:2.6rem 1.2rem 3.4rem; }
[data-archetype="boomer"] .hb-track .hb-track-form { max-width:100%; flex:1 1 100%; }

/* boomer: avantaj şeridi çerçevesiz, ortalanmış, ikon/görsel metnin ÜSTÜNDE (özgün .bmr-features) */
[data-archetype="boomer"] .hb-features { display:grid; grid-template-columns:repeat(3,1fr);
    gap:1.5rem; max-width:1000px; margin-left:auto; margin-right:auto; }
[data-archetype="boomer"] .hb-features .item { flex-direction:column; text-align:center;
    background:transparent; border:0; padding:1.4rem .6rem; }
[data-archetype="boomer"] .hb-features .item i { font-size:2.6rem; color:#000; line-height:1; margin-bottom:.5rem; }
[data-archetype="boomer"] .hb-features .hb-feat-img { width:70px; margin:0 auto .7rem; }
[data-archetype="boomer"] .hb-features .item .t { font-size:.94rem; font-weight:600; text-transform:uppercase; color:#000; }
[data-archetype="boomer"] .hb-features .item .s { font-size:.94rem; color:#000; }
@media (max-width:575.98px) { [data-archetype="boomer"] .hb-features { grid-template-columns:1fr; } }

/* boomer: raf okları keskin köşeli, çerçevesiz siyah chevron */
[data-archetype="boomer"] .hb-rail-nav { border:0; border-radius:0; background:transparent;
    box-shadow:none; color:#000; font-size:1.55rem; width:25px; height:25px; }
[data-archetype="boomer"] .hb-rail-nav:hover:not(:disabled) { background:transparent; opacity:.6; }
[data-archetype="boomer"] .hb-rail-nav.is-prev { left:-26px; }
[data-archetype="boomer"] .hb-rail-nav.is-next { right:-26px; }

/* boomer: sipariş sorgulama — iki kolon, görünür etiket, alt çizgili alan, tam genişlik pill buton */
[data-archetype="boomer"] .hb-track-form { display:grid; grid-template-columns:1fr 1fr; gap:1rem 2rem; max-width:100%; }
[data-archetype="boomer"] .hb-fld { display:block; text-align:left; }
[data-archetype="boomer"] .hb-fld-lbl { position:static; width:auto; height:auto; clip-path:none;
    display:block; margin-bottom:.25rem; font-size:.875rem; font-weight:500; color:#6c757d; }
[data-archetype="boomer"] .hb-fld-lbl b { color:#dc3545; font-weight:500; }
[data-archetype="boomer"] .hb-track-form .form-control { border:0; border-bottom:1px solid #dcdcdc;
    border-radius:0; padding:.5rem 0; background:transparent; font-size:.875rem; font-weight:500; }
[data-archetype="boomer"] .hb-track-form .form-control:focus { border-bottom-color:#000; box-shadow:none; }
[data-archetype="boomer"] .hb-track-form .btn { grid-column:1 / -1; height:56px; margin-top:.6rem;
    border-radius:100px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; }
@media (max-width:575.98px) { [data-archetype="boomer"] .hb-track-form { grid-template-columns:1fr; } }

/* boomer: bülten onay satırı beyaz ve ortalanmış */
[data-archetype="boomer"] .hb-news.has-img .hb-news-kvkk { justify-content:center; color:#fff;
    text-shadow:0 2px 14px rgba(0,0,0,.5); }

/* ── Link vurgusu (Yönetim → Üst Menü) ────────────────────────────────────────
   Menü/alt bilgi öğesine seçilen renk inline --menu-accent olarak gelir; rozet için
   okunur yazı rengi --menu-accent-ink sunucuda hesaplanır (MenuCategoryRules.ReadableInk).
   Tema başlık kuralları .nav-link rengini !important ile bastığı (ör. .hdr-mega .hm-nav
   .nav-link:hover) için vurgu kuralları sınıf tekrarıyla onlardan daha yüksek özgüllüğe
   çıkarılır — yeni bir tema eklendiğinde de vurgu kazanmaya devam etsin. */
a.menu-accent.menu-accent.menu-accent.menu-accent,
a.menu-accent.menu-accent.menu-accent.menu-accent:hover,
a.menu-accent.menu-accent.menu-accent.menu-accent:focus {
  color: var(--menu-accent) !important;
  font-weight: 700;
}
a.menu-accent-badge.menu-accent-badge.menu-accent-badge.menu-accent-badge,
a.menu-accent-badge.menu-accent-badge.menu-accent-badge.menu-accent-badge:hover,
a.menu-accent-badge.menu-accent-badge.menu-accent-badge.menu-accent-badge:focus {
  display: inline-flex;
  align-items: center;
  gap: .3rem;
  justify-self: start;      /* alt bilgi sütunu grid: hap satır boyunca uzamasın */
  align-self: center;
  background: var(--menu-accent) !important;
  color: var(--menu-accent-ink) !important;
  padding: .3rem .75rem !important;
  border-radius: 999px;
  line-height: 1.2;
}
/* Mobil çekmecede satırın tamamı tıklanabilir kalsın: rozet yerine yalnızca yazı rengi. */
.mobile-drawer .md-nav a.menu-accent-badge.menu-accent-badge.menu-accent-badge {
  display: block;
  background: none !important;
  color: var(--menu-accent) !important;
  padding: .85rem 1.1rem !important;
  border-radius: 0;
}


/* ═══════════════ HIZLI SEPET (quick add) — liste kartındaki "Sepete Ekle" penceresi ═══════════════
   İçerik /Products/QuickAdd'den gelir ve ürün detayının bileşenlerini (sk-pd-*) yeniden kullanır;
   burada yalnızca pencerenin kabuğu (perde, iki sütun, görsel alanı) tanımlanır. */
.qv-wrap { position: fixed; inset: 0; z-index: 1085; display: none; }
.qv-wrap.open { display: block; }
.qv-back { position: absolute; inset: 0; background: rgba(15, 17, 21, .55); animation: qv-fade .18s ease; }
.qv-modal {
  position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%);
  width: min(1120px, calc(100vw - 2.5rem)); max-height: min(88vh, 880px);
  display: flex; overflow: hidden; background: var(--surface);
  border-radius: var(--radius-sm); box-shadow: 0 30px 80px rgba(0, 0, 0, .35);
  animation: qv-up .2s ease;
}
.qv-close {
  position: absolute; top: .7rem; right: .7rem; z-index: 3; width: 36px; height: 36px;
  display: flex; align-items: center; justify-content: center;
  background: var(--ink); color: #fff; border: 0; font-size: .95rem; cursor: pointer;
}
.qv-close:hover { background: #27272a; color: #fff; }
.qv-inner { flex: 1 1 auto; min-width: 0; display: flex; overflow: auto; }
.qv-loading { flex: 1 1 auto; display: flex; align-items: center; justify-content: center; padding: 5rem 0; }
.qv-loading .cd-spin { width: 28px; height: 28px; border: 3px solid var(--line); border-top-color: var(--muted);
  border-radius: 50%; animation: cd-spin .8s linear infinite; }
.qv { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(320px, .9fr); width: 100%; }

.qv-media { position: relative; display: flex; align-items: center; justify-content: center;
  padding: 2rem; background: var(--surface); min-height: 320px; }
.qv-img { max-width: 100%; max-height: min(58vh, 480px); object-fit: contain; }
.qv-arrow {
  position: absolute; top: 50%; transform: translateY(-50%); width: 36px; height: 36px;
  display: flex; align-items: center; justify-content: center; cursor: pointer;
  background: var(--surface); border: 1px solid var(--line); color: var(--ink);
}
.qv-arrow:hover { border-color: var(--ink); }
.qv-arrow.prev { left: .9rem; }
.qv-arrow.next { right: .9rem; }

.qv-info { padding: 2.4rem 2rem 1.75rem; overflow: auto; border-left: 1px solid var(--line); }
.qv-cat { display: block; font-size: .72rem; font-weight: 600; letter-spacing: .08em; text-transform: uppercase;
  color: var(--muted); text-decoration: none; margin-bottom: .3rem; }
.qv-cat:hover { color: var(--ink); }
.qv-name { display: block; font-size: 1.1rem; font-weight: 600; line-height: 1.35;
  color: var(--ink); text-decoration: none; margin-bottom: 1rem; }
.qv-name:hover { color: var(--ink); text-decoration: underline; }
.qv-out { display: flex; align-items: center; justify-content: center; text-decoration: none; }
.qv-detail { display: inline-flex; align-items: center; gap: .35rem; font-size: .8rem;
  color: var(--muted); text-decoration: none; }
.qv-detail:hover { color: var(--ink); }
/* Karttaki buton pencere açılırken beklemede görünsün (çift tıklamayı da engeller). */
[data-quick-add].is-busy, .qv .sk-pd-cta.is-busy { opacity: .6; pointer-events: none; }

@keyframes qv-fade { from { opacity: 0; } }
@keyframes qv-up { from { opacity: 0; transform: translate(-50%, calc(-50% + 14px)); } }

@media (max-width: 860px) {
  /* Mobilde alttan açılan sayfa: görsel üstte, seçim ve buton altta. */
  .qv-modal { left: 0; right: 0; top: auto; bottom: 0; transform: none; width: 100%;
    max-height: 92vh; border-radius: 16px 16px 0 0; animation: qv-sheet .22s ease; }
  .qv { grid-template-columns: 1fr; }
  .qv-media { padding: 1.5rem 1rem .5rem; min-height: 0; }
  .qv-img { max-height: 34vh; }
  .qv-info { padding: 1.25rem 1.1rem 1.5rem; border-left: 0; }
  .qv-arrow { width: 32px; height: 32px; }
}
@keyframes qv-sheet { from { transform: translateY(24px); opacity: 0; } }
