/* indirim.in - Instagram görünümlü kupon sitesi. Köşe en çok 10px (düğme 8px), en küçük yazı 12px; yalnız avatar/halka daire.
   Eski telefon tabanı (iOS 12): flex gap, inset, aspect-ratio, padding-inline kullanılmaz. */

@font-face { font-family: "Plus Jakarta Sans"; src: url(/fonts/pjs-latin.woff2) format("woff2"); font-weight: 300 800; font-display: swap;
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "Plus Jakarta Sans"; src: url(/fonts/pjs-latin-ext.woff2) format("woff2"); font-weight: 300 800; font-display: swap;
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF; }:root {
  --ink: #141420;
  --soft: #6b6b78;
  --line: #dedee3;
  --zemin: #ffffff;
  --gri: #f1f1f4;
  --lacivert: #222256;
  --mavi: #2f8fd0;
  --halka: linear-gradient(45deg, #f9a825, #ee3f5a 55%, #c2279a);
  --yan: 244px;
}
* { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body { margin: 0; font: 400 15px/1.5 "Plus Jakarta Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif; color: var(--ink); background: var(--zemin); }
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; }
button { font-family: inherit; }
h1, h2, p { margin: 0; }
:focus-visible { outline: 2px solid var(--mavi); outline-offset: 2px; }
body.kilitli { overflow: hidden; }

/* ---------- çerçeve ---------- */
.yan { position: fixed; top: 0; left: 0; bottom: 0; width: var(--yan); padding: 22px 14px; border-right: 1px solid var(--line); background: var(--zemin); display: flex; flex-direction: column; z-index: 20; }
.yan-logo { display: block; padding: 4px 10px 22px; }
.yan-logo img { width: 150px; height: auto; }
.yan nav a { display: flex; align-items: center; padding: 12px 12px; margin-bottom: 4px; border-radius: 8px; font-size: 16px; }
.yan nav a svg { width: 24px; height: 24px; margin-right: 14px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; flex: none; }
.yan nav a:hover { background: var(--gri); }
.yan nav a[aria-current] { font-weight: 600; }
.yan nav a[aria-current] svg { stroke-width: 2.4; }
.ust, .alt { display: none; }
.ana { margin-left: var(--yan); padding: 30px 24px 60px; }
.ana > * { max-width: 935px; margin-left: auto; margin-right: auto; }

/* ---------- halka + avatar ---------- */
.av { border-radius: 50%; object-fit: contain; background: #fff; width: 40px; height: 40px; }
.av.harf { display: inline-flex; align-items: center; justify-content: center; background: var(--gri); color: var(--lacivert); font-weight: 600; font-size: 16px; }
.halka { display: block; padding: 3px; border-radius: 50%; background: var(--halka); width: 70px; height: 70px; }
/* Logo iç boşluksuz (29 Eki 2026, Aydın: "yuvarlağın paddingi fazla, beyaz çok görünüyor, IKEA logosu bütünlüğünü kaybetmiş"):
   border-radius'lu <img>'in içeriği zaten iç çembere kırpılır; boşluk yalnız beyazı artırıyordu. Kare zeminli logo (IKEA, H&M, Puma...)
   böylece temiz bir daire olur; logoların kendi kenar boşluğu var (215 logo ölçüldü). Halka ile logo arasında 2 px beyaz. */
.halka .av { display: flex; width: 100%; height: 100%; border: 2px solid #fff; padding: 0; box-sizing: border-box; }
.halka .av.harf { padding: 0; font-size: 24px; }
.halka.sonuk { background: var(--line); }
.halka.tum { background: var(--gri); }
.halka.tum .av.harf { font-size: 30px; font-weight: 400; color: var(--soft); }

/* ---------- hikaye şeridi ---------- */
.hikaye-serit { display: flex; overflow-x: auto; -webkit-overflow-scrolling: touch; scrollbar-width: none; padding: 2px 2px 18px; }
.hikaye-serit::-webkit-scrollbar { display: none; }
.hikaye { flex: none; width: 82px; margin-right: 10px; text-align: center; }
.hikaye .halka { margin: 0 auto; }
.hikaye-ad { display: block; margin-top: 6px; font-size: 12px; line-height: 1.25; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

/* ---------- gönderi ızgarası ---------- */
.izgara { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); grid-gap: 6px; }
.gp { position: relative; display: block; overflow: hidden; border-radius: 6px; color: #fff; background: linear-gradient(145deg, var(--g1), var(--g2)); -webkit-tap-highlight-color: transparent; }
.gp::before { content: ""; display: block; padding-top: 100%; }
.gp > span { position: absolute; left: 0; right: 0; }
.gp-ust { top: 0; display: flex; align-items: center; padding: 10px 10px 20px; background: linear-gradient(rgba(0,0,0,.38), rgba(0,0,0,0)); }
.gp-ust .av { width: 28px; height: 28px; margin-right: 8px; flex: none; padding: 1px; box-sizing: border-box; }
.gp-ust .av.harf { padding: 0; font-size: 13px; }
.gp-ust b { font-size: 13px; font-weight: 600; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; text-shadow: 0 1px 2px rgba(0,0,0,.35); }
.gp-orta { top: 50%; -webkit-transform: translateY(-50%); transform: translateY(-50%); text-align: center; font-weight: 600; font-size: clamp(24px, 5vw, 48px); line-height: 1.1; letter-spacing: -.01em; padding: 0 10px; text-shadow: 0 1px 8px rgba(0,0,0,.22); }
.gp-orta.orta { font-size: clamp(18px, 3.4vw, 32px); }
.gp-orta.kucuk { font-size: clamp(15px, 2.5vw, 24px); }
.gp-alt { bottom: 0; padding: 22px 10px 9px; font-size: 12px; font-weight: 600; letter-spacing: .01em; background: linear-gradient(rgba(0,0,0,0), rgba(0,0,0,.42)); }
.gp::after { content: ""; position: absolute; left: 0; right: 0; top: 0; bottom: 0; background: rgba(0,0,0,0); transition: background .15s; }
.gp:hover::after { background: rgba(0,0,0,.14); }
/* görselli kart: görsel kareyi kaplar, vitrin yazısı sol alta küçük bir etikete iner */
.gp-resim { position: absolute; left: 0; top: 0; width: 100%; height: 100%; object-fit: cover; display: block; }
.gp.gorselli .gp-ust { background: linear-gradient(rgba(0,0,0,.5), rgba(0,0,0,0)); }
.gp.gorselli .gp-alt { background: linear-gradient(rgba(0,0,0,0), rgba(0,0,0,.62)); }
/* rozet (29 Eki 2026, Aydın: "% badgelerini biraz daha küçük, masaüstünde çok büyük"): 26 px'ten en çok 18 px'e */
.gp.gorselli .gp-orta { top: auto; bottom: 30px; left: 8px; right: auto; max-width: calc(100% - 16px); -webkit-transform: none; transform: none; text-align: left; padding: 2px 7px; border-radius: 6px; background: rgba(0,0,0,.58); font-size: clamp(13px, 1.5vw, 18px); text-shadow: none; }
.gp.gorselli .gp-orta.orta { font-size: clamp(12px, 1.3vw, 16px); }
.gp.gorselli .gp-orta.kucuk { font-size: clamp(12px, 1.1vw, 14px); line-height: 1.2; }
.devam-yer { text-align: center; padding: 26px 0 6px; }

/* ---------- marka profili ---------- */
.profil { display: flex; align-items: center; padding: 8px 0 26px; }
.profil-av { flex: none; width: 210px; display: flex; justify-content: center; }
.profil .halka.buyuk { width: 134px; height: 134px; padding: 2px; }
.profil .halka.buyuk .av { border-width: 3px; padding: 0; }
.profil .halka.buyuk .av.harf { font-size: 52px; }
.profil-bilgi { min-width: 0; }
.profil h1 { font-size: 28px; font-weight: 600; line-height: 1.2; }
.istat { display: flex; list-style: none; margin: 14px 0 12px; padding: 0; font-size: 16px; }
.istat li { margin-right: 28px; }
.istat b { font-weight: 600; }
.bio { color: var(--ink); max-width: 56ch; }
.sekmeler { display: flex; justify-content: center; border-top: 1px solid var(--line); margin: 6px auto 14px; }
.sekmeler button { background: none; border: 0; border-top: 1px solid transparent; margin-top: -1px; padding: 14px 20px; font-size: 14px; font-weight: 600; color: var(--soft); cursor: pointer; }
.sekmeler button[aria-selected="true"] { color: var(--ink); border-top-color: var(--ink); }

/* ---------- markalar sayfası ---------- */
.sayfa-baslik { font-size: 26px; font-weight: 600; margin: 4px auto 18px; }
.ara-kutu { position: sticky; top: 0; z-index: 12; margin: 0 auto 14px; padding: 10px 0; background: #fff; }
@media (max-width: 899px) { .ara-kutu { top: 54px; top: calc(54px + constant(safe-area-inset-top)); top: calc(54px + env(safe-area-inset-top)); } }
.sayfa-baslik.ortali { text-align: center; }
.ara-kutu input { display: block; width: 100%; max-width: 560px; margin: 0 auto; height: 46px; border: 0; border-radius: 8px; background: var(--gri); padding: 0 16px; font: inherit; font-size: 16px; color: var(--ink); -webkit-appearance: none; appearance: none; }
.ara-kutu input::placeholder { color: var(--soft); }
.marka-liste { display: grid; grid-template-columns: repeat(auto-fill, minmax(112px, 1fr)); grid-gap: 22px 8px; }
.marka-kart { display: block; text-align: center; min-width: 0; }
.marka-kart .halka { margin: 0 auto 8px; width: 84px; height: 84px; }
.marka-kart b { display: block; font-size: 14px; font-weight: 600; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; padding: 0 4px; }
.marka-kart small { display: block; font-size: 12px; color: var(--soft); }
.marka-kart[hidden] { display: none; }

/* ---------- ortak ---------- */
.dugme { display: inline-block; padding: 11px 20px; border: 0; border-radius: 8px; background: var(--lacivert); color: #fff; font-size: 15px; font-weight: 600; cursor: pointer; text-align: center; }
.dugme:hover { background: #2d2d6e; }
.dugme.ikincil { background: var(--gri); color: var(--ink); }
.dugme.ikincil:hover { background: #e6e6ea; }
.dugme.mavi { background: #1877c9; }
.dugme.mavi:hover { background: #1565ad; }
.dugme:disabled { opacity: .55; cursor: default; }
.gorunmez { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; border: 0; white-space: nowrap; }
.bos { color: var(--soft); text-align: center; padding: 48px 16px; }
.bos-sayfa { text-align: center; padding: 70px 16px; }
.bos-sayfa h1 { font-size: 26px; margin-bottom: 8px; }
.bos-sayfa p { color: var(--soft); margin-bottom: 22px; }

/* ---------- kupon penceresi ---------- */
/* Masaüstünde ekranın ortasında; telefonda alttan yukarı çıkan sayfa (sarkoyduyuru'daki gibi, aşağıdaki 640px kuralı).
   .acik sınıfını betik bir kare sonra ekler: geçiş (arka karartma + yerine oturma) böyle çalışır. */
.mk-perde { position: fixed; top: 0; left: 0; right: 0; bottom: 0; z-index: 1000; background: rgba(10,10,20,0); display: flex; align-items: center; justify-content: center; padding: 20px; transition: background .22s ease; }
.mk-perde.acik { background: rgba(10,10,20,.66); }
.mk-kutu { position: relative; width: 100%; max-width: 860px; background: #fff; border-radius: 10px; opacity: 0; -webkit-transform: translateY(14px) scale(.97); transform: translateY(14px) scale(.97); transition: opacity .22s ease, -webkit-transform .26s cubic-bezier(.22,.61,.36,1), transform .26s cubic-bezier(.22,.61,.36,1); }
.mk-perde.acik .mk-kutu { opacity: 1; -webkit-transform: none; transform: none; }
.mk-tutamak { display: none; }
.mk-ic { display: flex; max-height: calc(100vh - 60px); border-radius: 10px; overflow: hidden; }
.mk-gorsel { flex: 0 0 46%; border-radius: 0; }
.mk-yan { flex: 1; min-width: 0; display: flex; flex-direction: column; padding: 22px 22px 22px; overflow-y: auto; -webkit-overflow-scrolling: touch; }
.mk-marka { display: flex; align-items: center; padding-right: 40px; margin-bottom: 14px; }
.mk-marka .av { width: 34px; height: 34px; margin-right: 10px; border: 1px solid var(--line); padding: 3px; box-sizing: border-box; flex: none; }
.mk-marka .av.harf { padding: 0; font-size: 15px; }
.mk-marka a { font-weight: 600; }
.mk-yan h2 { font-size: 22px; font-weight: 600; line-height: 1.25; margin-bottom: 8px; }
.mk-ack { color: #3b3b48; white-space: pre-line; margin-bottom: 16px; }
.mk-kod { display: flex; align-items: center; justify-content: space-between; border: 1.5px dashed #b4b4c0; border-radius: 8px; padding: 6px 6px 6px 16px; margin-bottom: 12px; background: #fafafc; }
.mk-kod code { font: 600 21px/1.2 "Plus Jakarta Sans", sans-serif; letter-spacing: .08em; word-break: break-all; padding-right: 10px; }
.mk-kod .dugme { padding: 9px 16px; flex: none; }
.mk-not { font-size: 13px; color: var(--soft); margin-bottom: 14px; }
.mk-dugmeler { padding-top: 2px; }
.mk-dugmeler .dugme { display: block; width: 100%; }

/* beğeni + yorum (Instagram'daki gibi: kalp, balon, "N beğeni", yorumlar, "Yorum ekle...") */
.mk-sosyal { margin-top: 16px; padding-top: 4px; border-top: 1px solid var(--line); }
.mk-islem { display: flex; align-items: center; padding: 8px 0 4px; }
.kalp, .yorum-dugme { width: 40px; height: 40px; margin: 0 4px 0 -8px; padding: 0; border: 0; background: none; color: var(--ink); cursor: pointer; display: inline-flex; align-items: center; justify-content: center; }
.kalp svg, .yorum-dugme svg { width: 26px; height: 26px; fill: none; stroke: currentColor; stroke-width: 1.9; stroke-linejoin: round; stroke-linecap: round; }
.kalp:hover, .yorum-dugme:hover { opacity: .65; }
.kalp.begenildi { color: #ed4956; }
.kalp.begenildi svg { fill: currentColor; }
@-webkit-keyframes kalp-at { 40% { -webkit-transform: scale(1.25); } }
@keyframes kalp-at { 40% { transform: scale(1.25); } }
.mk-sayac { font-size: 14px; margin-left: 4px; }
.mk-sayac b { font-weight: 600; }
.mk-yorum-baslik { font-size: 13px; color: var(--soft); margin: 6px 0 8px; }
.mk-yorumlar { list-style: none; margin: 0; padding: 0; max-height: 220px; overflow-y: auto; -webkit-overflow-scrolling: touch; }
.yz { display: flex; align-items: flex-start; padding: 6px 0; }
.yz-av { width: 30px; height: 30px; flex: none; margin-right: 10px; font-size: 13px; }
.yz-ic { min-width: 0; font-size: 14px; line-height: 1.4; word-break: break-word; }
.yz-ic b { font-weight: 600; }
.yz-alt { display: block; font-size: 12px; color: var(--soft); margin-top: 1px; }
.yz-sil { background: none; border: 0; padding: 0; font: inherit; font-size: 12px; color: var(--soft); cursor: pointer; }
.yz-sil:hover { color: #ed4956; }
.mk-yorum-form { display: flex; align-items: center; border-top: 1px solid var(--line); margin-top: 10px; padding-top: 6px; }
.mk-yorum-form input { flex: 1; min-width: 0; height: 40px; border: 0; background: none; font: inherit; font-size: 16px; color: var(--ink); padding: 0; -webkit-appearance: none; appearance: none; }
.mk-yorum-form input:focus { outline: none; }
.mk-yorum-form button { border: 0; background: none; color: #1877c9; font: inherit; font-weight: 600; font-size: 14px; cursor: pointer; padding: 8px 4px 8px 10px; }
.mk-yorum-form button:disabled { opacity: .45; }
.mk-giris { font-size: 14px; color: var(--soft); margin: 10px 0 2px; }
.mk-giris a { color: #1877c9; font-weight: 600; }
.mk-kapat { position: absolute; top: 10px; right: 10px; z-index: 7; width: 36px; height: 36px; border: 0; border-radius: 8px; background: rgba(255,255,255,.92); color: var(--ink); font-size: 22px; line-height: 1; cursor: pointer; box-shadow: 0 1px 4px rgba(0,0,0,.18); }
.mk-kutu:focus { outline: none; }
.maytap { position: absolute; z-index: 6; pointer-events: none; }

/* ---------- küçük ekran ---------- */
@media (max-width: 899px) {
  .yan { display: none; }
  .ust { display: flex; align-items: center; justify-content: space-between; position: fixed; top: 0; left: 0; right: 0; z-index: 30; height: 54px; padding: 0 14px; padding-top: constant(safe-area-inset-top); padding-top: env(safe-area-inset-top); box-sizing: content-box; background: var(--zemin); border-bottom: 1px solid var(--line); }
  .ust-logo img { height: 32px; width: auto; }
  .ust-ara { display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; }
  .ust-ara svg, .alt svg { width: 25px; height: 25px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
  .alt { display: flex; position: fixed; bottom: 0; left: 0; right: 0; z-index: 30; height: 56px; padding-bottom: constant(safe-area-inset-bottom); padding-bottom: env(safe-area-inset-bottom); box-sizing: content-box; background: var(--zemin); border-top: 1px solid var(--line); }
  .alt a { flex: 1; display: flex; flex-direction: column; align-items: center; justify-content: center; color: var(--soft); }
  .alt a small { font-size: 12px; line-height: 1.2; margin-top: 2px; }
  .alt a[aria-current] { color: var(--ink); font-weight: 600; }
  .alt a[aria-current] svg { stroke-width: 2.4; }
  .ana { margin-left: 0; padding: 70px 12px 80px; }
  .profil-av { width: 112px; }
  .profil .halka.buyuk { width: 88px; height: 88px; }
  .profil .halka.buyuk .av { padding: 0; border-width: 2px; }
  .profil .halka.buyuk .av.harf { font-size: 34px; }
  .profil h1 { font-size: 22px; }
  .istat { font-size: 15px; margin: 8px 0; }
  .istat li { margin-right: 18px; }
}
@media (max-width: 640px) {
  .izgara { grid-gap: 3px; }
  .gp { border-radius: 4px; }
  .gp-ust { padding: 7px 7px 14px; }
  .gp-ust .av { width: 24px; height: 24px; margin-right: 0; }
  .gp-ust b { display: none; }
  .gp-alt { padding: 14px 7px 6px; }
  .gp-orta { padding: 0 5px; }
  .hikaye { width: 74px; margin-right: 6px; }
  .halka { width: 64px; height: 64px; }
  .mk-perde { padding: 0; align-items: flex-end; }
  .mk-kutu { max-width: none; border-radius: 10px 10px 0 0; opacity: 1; -webkit-transform: translateY(100%); transform: translateY(100%); transition: -webkit-transform .26s cubic-bezier(.22,.61,.36,1), transform .26s cubic-bezier(.22,.61,.36,1); box-shadow: 0 -10px 30px rgba(0,0,0,.2); }
  .mk-perde.acik .mk-kutu { -webkit-transform: none; transform: none; }
  .mk-tutamak { display: block; position: absolute; top: 7px; left: 50%; margin-left: -20px; width: 40px; height: 4px; border-radius: 2px; background: rgba(255,255,255,.75); z-index: 7; }
  .mk-ic { flex-direction: column; overflow-y: auto; -webkit-overflow-scrolling: touch; max-height: 92vh; border-radius: 10px 10px 0 0; }
  .mk-gorsel { flex: none; width: 100%; }
  .mk-gorsel::before { padding-top: 46%; }
  .mk-gorsel .gp-ust b { display: block; }
  .mk-gorsel .gp-ust .av { margin-right: 8px; }
  .mk-yan { overflow: visible; padding: 18px 16px 24px; padding-bottom: calc(24px + constant(safe-area-inset-bottom)); padding-bottom: calc(24px + env(safe-area-inset-bottom)); }
  .mk-marka { display: none; }
  .mk-yan h2 { font-size: 20px; }
}
@media (prefers-reduced-motion: reduce) {
  .mk-perde, .mk-kutu { transition: none; }
  .kalp.begenildi svg { -webkit-animation: none; animation: none; }
  .gp::after { transition: none; }
}

/* ---------- hesap alanı (sol menünün altı, üst çubuk) ---------- */
.yan-hesap { margin-top: auto; padding: 12px 10px 4px; border-top: 1px solid var(--line); }
.yan-hesap .dugme { display: block; width: 100%; }
.yan-uyeol { display: block; text-align: center; margin-top: 10px; font-size: 14px; color: #1877c9; font-weight: 600; }
.yan-uye { display: flex; align-items: center; padding: 8px 4px; border-radius: 8px; font-weight: 600; }
.yan-uye:hover { background: var(--gri); }
.yan-uye .av { width: 34px; height: 34px; margin-right: 12px; }
.ust-ara .av { width: 32px; height: 32px; font-size: 14px; }

/* ---------- gönderi karosundaki beğeni / yorum sayacı ---------- */
.gp > .gp-sayac { right: 0; left: auto; bottom: 0; width: auto; padding: 22px 10px 9px 10px; display: flex; align-items: center; font-size: 12px; font-weight: 600; z-index: 2; }
.gp-sayac > span { display: inline-flex; align-items: center; margin-left: 10px; }
.gp-sayac svg { width: 14px; height: 14px; margin-right: 4px; fill: #fff; stroke: none; }
.gp-sayac .ik-y svg { fill: none; stroke: #fff; stroke-width: 2.2; }

/* ---------- marka profili: ad + takip düğmesi, bio bağlantısı ---------- */
.profil-ust { display: flex; align-items: center; flex-wrap: wrap; }
.profil-ust h1 { margin-right: 16px; }
.profil-ust .dugme { padding: 8px 18px; font-size: 14px; }
.bio { white-space: pre-line; }
.bio-link { display: inline-flex; align-items: center; margin-top: 6px; font-weight: 600; color: #1d4f7c; word-break: break-all; }
.bio-link svg { width: 16px; height: 16px; margin-right: 6px; flex: none; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.bio-link:hover { text-decoration: underline; }

/* ---------- giriş / üye ol / sayfam ---------- */
.giris-sayfa { max-width: 520px; padding: 18px 0 40px; }
.giris-kart { max-width: 380px; margin-left: auto; margin-right: auto; border: 1px solid var(--line); border-radius: 10px; padding: 26px 28px; margin-bottom: 12px; background: #fff; }
.giris-kart.genis { max-width: 520px; }
.giris-kart h1 { font-size: 26px; font-weight: 600; margin-bottom: 4px; }
.giris-alt { color: var(--soft); margin-bottom: 18px; }
.giris-form label { display: block; font-size: 14px; font-weight: 600; margin: 14px 0 6px; }
.giris-form input:not([type=file]):not([type=hidden]), .giris-form textarea { width: 100%; height: 44px; padding: 0 12px; border: 1px solid #cfcfd8; border-radius: 8px; background: #fafafc; color: var(--ink); font: inherit; font-size: 16px; -webkit-appearance: none; appearance: none; }
.giris-form textarea { height: auto; padding: 10px 12px; resize: vertical; line-height: 1.45; }
.giris-form input:focus, .giris-form textarea:focus { outline: 2px solid #1877c9; outline-offset: 0; border-color: #1877c9; background: #fff; }
.giris-form input[readonly] { background: #f0f0f4; color: #55555f; }
.giris-form small { display: block; color: var(--soft); font-size: 12px; margin-top: 4px; }
.giris-form .dugme { width: 100%; margin-top: 20px; padding: 12px; }
.giris-diger { text-align: center; padding: 18px; font-size: 15px; }
.giris-diger a { color: #1877c9; font-weight: 600; }
.form-hata { background: #fdeceb; color: #7a1a14; border: 1px solid #f0b8b4; border-radius: 8px; padding: 9px 12px; margin-bottom: 4px; font-size: 14px; }
.logo-yukle { display: flex; align-items: center; }
.logo-yukle img { width: 54px; height: 54px; object-fit: contain; border: 1px solid var(--line); border-radius: 50%; background: #fff; padding: 4px; margin-right: 12px; }
.logo-yukle input[type=file] { font-size: 14px; max-width: 100%; }
.hesap-cikis { margin-top: 12px; }
.hesap-sayfa { margin: 4px 0 10px; display: flex; align-items: center; flex-wrap: wrap; }
.hesap-sayfa .dugme { margin-left: 12px; padding: 8px 16px; font-size: 14px; }
.alt-baslik { font-size: 18px; font-weight: 600; margin: 26px 0 12px; }

/* ---------- Keşfet: Reels gibi dikey kaydırmalı akış ---------- */
.kesfet-sayfa .ana { padding: 0; }
body.kesfet-sayfa { background: var(--gri); }   /* telefonda alt menünün çentiğinden görünen zemin akışla aynı gri olsun (beyaz daire gibi duruyordu) */
.kesfet-sayfa .ana > * { max-width: none; }
.ks { position: fixed; top: 0; bottom: 0; left: var(--yan); right: 0; overflow-y: auto; -webkit-overflow-scrolling: touch; scroll-snap-type: y mandatory; overscroll-behavior: contain; background: var(--gri); }
.ks:focus { outline: none; }
.ks-slayt { height: 100%; display: flex; align-items: center; justify-content: center; scroll-snap-align: start; scroll-snap-stop: always; padding: 12px 16px; }
.ks-ic { position: relative; width: 100%; max-width: 440px; max-width: min(440px, calc(100vh - 330px)); min-width: 260px; }
.ks-ust { display: flex; align-items: center; justify-content: space-between; margin-bottom: 8px; }
.ks-marka { display: flex; align-items: center; min-width: 0; }
.ks-marka .halka.kucuk { width: 40px; height: 40px; padding: 2px; margin-right: 10px; flex: none; }
.ks-marka .halka.kucuk .av { border-width: 1px; padding: 0; }   /* 2+3 px beyaz ara 40 px'lik dairede fazla geniş duruyordu */
.ks-marka .halka.kucuk .av.harf { font-size: 16px; }
.ks-marka b { font-weight: 600; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.ks-tur { font-size: 12px; color: var(--soft); flex: none; margin-left: 10px; }
.ks .gp { border-radius: 6px; cursor: default; }
/* her Keşfet kartı beyaz bir kutuda, köşeler 6 px (Aydın 29 Eki) */
.ks .ks-ic { padding: 12px 14px 16px; border-radius: 6px; background: #fff; box-shadow: 0 1px 3px rgba(20, 20, 40, .06); }
.ks .gp:hover::after { background: rgba(0, 0, 0, 0); }   /* Keşfet'te görsel tıklanmaz: üzerine gelince kararmaz */
.ks-cta { margin-left: auto; padding: 7px 14px; font-size: 14px; white-space: nowrap; }   /* Kopyala düğmesiyle aynı boy (Aydın: "buton büyüklükleri aynı olsun") */
/* kodlu kuponda satırın sağı: kesik çizgili kod + yanında Kopyala (uzun kod "…" ile kısalır, düğme küçülmez) */
.ks-kodlu { display: flex; align-items: center; min-width: 0; margin-left: auto; padding: 3px 3px 3px 12px; border: 1.5px dashed #b4b4c0; border-radius: 8px; background: #fff; }
.ks-kodlu code { min-width: 0; margin-right: 10px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font: 600 15px/1.2 "Plus Jakarta Sans", sans-serif; letter-spacing: .06em; }
.ks-kodlu .dugme { flex: none; padding: 7px 14px; font-size: 14px; }
.ks-cta, .ks-kodlu .dugme { line-height: 1.3; }   /* bağlantı (a) ile düğme (button) aynı boyda olsun: button'un satır yüksekliği farklı */
.ks-islem > .kalp, .ks-islem > .yorum-dugme, .ks-islem > .sayi { flex: none; }
/* Keşfet başlığının sağı: takip etmiyorsa "Takip et", ediyorsa "Sayfaya git" (Instagram'daki gibi mavi yazı) */
.ks-takip { flex: none; margin-left: 10px; padding: 6px 0 6px 8px; border: 0; background: none; font: inherit; font-size: 14px; font-weight: 600; color: #1877c9; cursor: pointer; }
.ks-takip:hover { color: #1565ad; text-decoration: underline; }
.ks-takip:disabled { opacity: .55; }
/* Keşfet "Kopyala" penceresi: her genişlikte alttan çıkar (masaüstünde içerik alanında ortalı, en çok 440 px). site.js kodPenceresi */
.kk-perde { position: fixed; top: 0; right: 0; bottom: 0; left: 0; z-index: 1000; display: flex; align-items: flex-end; justify-content: center; background: rgba(10, 10, 20, 0); transition: background .22s ease; }
.kk-perde.acik { background: rgba(10, 10, 20, .55); }
.kk-kutu { position: relative; width: 100%; max-width: 440px; padding: 24px 20px 22px; padding-bottom: calc(22px + constant(safe-area-inset-bottom)); padding-bottom: calc(22px + env(safe-area-inset-bottom));
  background: #fff; border-radius: 10px 10px 0 0; text-align: center; box-shadow: 0 -10px 30px rgba(0, 0, 0, .2);
  -webkit-transform: translateY(100%); transform: translateY(100%); transition: -webkit-transform .26s cubic-bezier(.22, .61, .36, 1), transform .26s cubic-bezier(.22, .61, .36, 1); }
.kk-perde.acik .kk-kutu { -webkit-transform: none; transform: none; }
.kk-kutu:focus { outline: none; }
.kk-tutamak { position: absolute; top: 7px; left: 50%; margin-left: -20px; width: 40px; height: 4px; border-radius: 2px; background: #d3d3dc; }
.kk-kapat { position: absolute; top: 12px; right: 12px; width: 36px; height: 36px; border: 0; border-radius: 8px; background: var(--gri); color: var(--ink); font-size: 22px; line-height: 1; cursor: pointer; }
.kk-kapat:hover { background: #e6e6ea; }
/* alttan pencerelerin başındaki profil kartı: marka sayfasındaki başlığın küçüğü (halka, ad + Takip et, "N kupon N kampanya N takipçi") */
.pk-kart { display: flex; align-items: center; margin: 2px 0 16px; min-width: 0; text-align: left; }
.pk-kart.ayrik { padding-bottom: 16px; border-bottom: 1px solid var(--line); }
.pk-ust { padding-right: 44px; }   /* × yalnız ad satırının hizasında; sayılar tüm genişliği kullanır */
.pk-av { display: block; flex: none; margin-right: 14px; }
.pk-av .halka { width: 64px; height: 64px; padding: 2px; }
.pk-av .halka .av { border-width: 2px; padding: 0; }
.pk-bilgi { flex: 1; min-width: 0; }
.pk-ust { display: flex; align-items: center; flex-wrap: wrap; }
.pk-ad { max-width: 100%; margin-right: 12px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 17px; font-weight: 600; color: var(--ink); }
.pk-ust .dugme { padding: 6px 14px; font-size: 14px; line-height: 1.3; }
.pk-istat { display: flex; flex-wrap: wrap; list-style: none; margin: 6px 0 0; padding: 0; font-size: 14px; }
.pk-istat li { margin-right: 14px; white-space: nowrap; }
.pk-istat b { font-weight: 600; }
/* "Kod kopyalandı" sade bir satır (20 px kalın yazı fazla büyüktü) */
.kk-tamam { display: flex; align-items: center; justify-content: center; margin-bottom: 10px; font-size: 15px; font-weight: 600; color: #1d7a47; }
.kk-tamam svg { width: 18px; height: 18px; margin-right: 6px; fill: none; stroke: currentColor; stroke-width: 2.2; stroke-linecap: round; stroke-linejoin: round; }
.kk-kod { margin-bottom: 10px; padding: 10px 12px; border: 1.5px dashed #b4b4c0; border-radius: 8px; background: #fafafc; }
.kk-kod code { font: 600 22px/1.2 "Plus Jakarta Sans", sans-serif; letter-spacing: .08em; word-break: break-all; }
.kk-baslik { margin-bottom: 16px; font-size: 14px; color: #3b3b48; }
.kk-git { display: block; width: 100%; padding: 13px; font-size: 16px; }
.kk-not { margin-top: 10px; font-size: 13px; color: var(--soft); }
/* kupon koşulları: Alışveriş yap'ın altında; yükseklik sabit, uzunsa kendi içinde kayar */
.kk-kosul { max-height: 150px; margin-top: 14px; padding: 12px 14px; overflow-y: auto; -webkit-overflow-scrolling: touch; overscroll-behavior: contain; border-radius: 8px; background: var(--gri); text-align: left; }
.kk-kosul b { display: block; margin-bottom: 4px; font-size: 14px; font-weight: 600; }
.kk-kosul p { font-size: 14px; line-height: 1.5; color: #3b3b48; white-space: pre-line; }
.kk-kutu { max-height: 92vh; overflow-y: auto; -webkit-overflow-scrolling: touch; }
/* Keşfet başlığının sağı: fırsatın tarihi (Aydın 1 Kas 2026: Takip et ve "⋯" menüsü kaldırıldı, yerine küçük tarih) */
.ks-sag { display: flex; align-items: center; flex: none; }
.ks-tarih { font-size: 12px; line-height: 1.3; color: var(--soft); white-space: nowrap; }
.ks-menu { display: inline-flex; align-items: center; justify-content: center; width: 36px; height: 36px; margin: 0 -8px 0 4px; padding: 0; border: 0; border-radius: 8px; background: none; color: var(--ink); cursor: pointer; }
.ks-menu:hover { background: rgba(20, 20, 32, .06); }
.ks-menu svg { width: 22px; height: 22px; fill: currentColor; }
/* "⋯" penceresi: profil kartı + seçenek listesi (Instagram'daki gibi gri kutu, satır aralarında ince çizgi) */
.mn-govde { text-align: left; }
.mn-liste { list-style: none; margin: 0; padding: 0; border-radius: 10px; background: var(--gri); overflow: hidden; }
.mn-liste li + li { border-top: 1px solid #e2e2e8; }
.mn-liste a, .mn-liste button { display: flex; align-items: center; width: 100%; padding: 14px 16px; border: 0; background: none; font: inherit; font-size: 16px; color: var(--ink); text-align: left; cursor: pointer; }
.mn-liste a:hover, .mn-liste button:hover { background: #e8e8ee; }
.mn-liste button:disabled { opacity: .55; }
.mn-liste svg { width: 24px; height: 24px; margin-right: 14px; flex: none; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.mn-liste .kirmizi { color: #d93025; }
.mn-baslik { margin: 4px 48px 12px 0; font-size: 17px; font-weight: 600; }
.mn-not { margin: -4px 0 16px; font-size: 14px; color: var(--soft); text-align: center; }
.mn-tamam { display: block; width: 100%; }
@media (min-width: 900px) { .kk-perde { padding-left: var(--yan); } }
@media (prefers-reduced-motion: reduce) { .kk-perde, .kk-kutu { transition: none; } }
/* marka zaten üstte yazıyorsa kartın sol üstündeki logo + ad tekrar etmez: Keşfet kartı, marka sayfası ızgarası (açılır pencere ayrı, .mk-gorsel) */
.ks .gp-ust, .marka-sayfa #izgara .gp-ust, .kd .gp-ust { display: none; }   /* .kd: kuponun kendi sayfası (marka sağda yazıyor) */
.ks-islem { display: flex; align-items: center; margin-top: 6px; }
.ks-baslik { font-size: 17px; font-weight: 600; line-height: 1.3; margin-top: 2px; }
.ks-ack { color: #3b3b48; font-size: 14px; margin-top: 3px; overflow: hidden; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
/* "devamını oku": iki satırı aşan açıklamanın son satırının sonunda, aynı boy, bir tık koyu; beyaz karta doğru solarak üstüne biner */
.ks-ack-sar { position: relative; }
.ks-devam { position: absolute; right: 0; bottom: 0; padding: 0 0 0 30px; border: 0; background: linear-gradient(90deg, rgba(255, 255, 255, 0), #fff 26px); font: inherit; font-size: 14px; line-height: 1.5; font-weight: 500; color: var(--ink); cursor: pointer; }
.ks-devam[hidden] { display: none; }
.ks-devam:hover { text-decoration: underline; }
.ks-ack-sar.acik .ks-ack { display: block; overflow: visible; -webkit-line-clamp: unset; white-space: pre-line; }
/* birden çok görsel: kare içinde yatay kaydırmalı şerit (Instagram gibi); sayaç sağ üstte, noktalar altta, masaüstünde oklar */
.gp > .gp-kaydir { top: 0; bottom: 0; display: flex; overflow-x: auto; overflow-y: hidden; scroll-snap-type: x mandatory; -webkit-overflow-scrolling: touch; overscroll-behavior-x: contain; scrollbar-width: none; }
.gp-kaydir::-webkit-scrollbar { display: none; }
.gp-kaydir img { flex: 0 0 100%; width: 100%; height: 100%; object-fit: cover; scroll-snap-align: start; scroll-snap-stop: always; }
.gp::after { pointer-events: none; }
.ks .gp > span:not(.gp-kaydir) { pointer-events: none; }   /* yazılar/rozet parmakla kaydırmayı engellemesin */
.gp > .gp-sayi { top: 10px; right: 10px; left: auto; z-index: 3; padding: 3px 8px; border-radius: 6px; background: rgba(0, 0, 0, .55); color: #fff; font-size: 12px; font-weight: 600; line-height: 1.3; }
.ks-gorsel { position: relative; }
.ks-noktalar { position: absolute; left: 0; right: 0; bottom: 8px; z-index: 3; display: flex; justify-content: center; pointer-events: none; }
.ks-noktalar i { width: 6px; height: 6px; margin: 0 3px; border-radius: 3px; background: rgba(255, 255, 255, .5); }
.ks-noktalar i.acik { background: #fff; }
.ks-ok { position: absolute; top: 50%; z-index: 4; display: flex; align-items: center; justify-content: center; width: 32px; height: 32px; margin-top: -16px; padding: 0; border: 0; border-radius: 8px; background: rgba(255, 255, 255, .92); color: var(--ink); cursor: pointer; box-shadow: 0 1px 4px rgba(0, 0, 0, .25); }
.ks-ok[hidden] { display: none; }
.ks-ok.geri { left: 8px; }
.ks-ok.ileri { right: 8px; }
.ks-ok svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 2.4; stroke-linecap: round; stroke-linejoin: round; }
@media (hover: none) { .ks-ok { display: none; } }   /* dokunmatikte parmakla kayar */
.ks-kod { margin-top: 10px; margin-bottom: 0; background: #fff; }

@media (max-width: 899px) {
  .ks { top: 54px; top: calc(54px + constant(safe-area-inset-top)); top: calc(54px + env(safe-area-inset-top)); bottom: 56px; bottom: calc(56px + constant(safe-area-inset-bottom)); bottom: calc(56px + env(safe-area-inset-bottom)); left: 0; }
  .ks-ic { max-width: min(440px, calc(100vh - 380px)); }
  .alt a small { font-size: 12px; }
  .giris-sayfa { margin: 0 auto; }
}
/* ---------- maskot asistanı (Şarköy'deki Adaş gibi): telefonda alt menünün TAM ORTASINDA, çentiğe oturan HAREKETLİ maskot; masaüstünde sağ altta ---------- */
.maskot-yuzen, .maskot-alt { padding: 0; border: 0; background: none; cursor: pointer; -webkit-tap-highlight-color: transparent; font: inherit; color: inherit; }
.maskot-yuzen { display: none; }
.maskot-alt picture, .maskot-resim picture { display: block; width: 100%; height: 100%; }
.maskot-alt img, .maskot-resim img { display: block; width: 100%; height: 100%; object-fit: contain; filter: drop-shadow(0 3px 5px rgba(20, 30, 80, .35)); }
/* nabız halkası (Şarköy'deki saiNabiz): maskotun hareketli olduğunu ve basılabildiğini gösterir */
@-webkit-keyframes maskot-nabiz { 0% { -webkit-transform: scale(.92); opacity: .9; } 70%, 100% { -webkit-transform: scale(1.18); opacity: 0; } }
@keyframes maskot-nabiz { 0% { transform: scale(.92); opacity: .9; } 70%, 100% { transform: scale(1.18); opacity: 0; } }
.maskot-resim { position: relative; display: block; width: 72px; height: 72px; }
.maskot-resim::after, .maskot-alt i::after { content: ""; position: absolute; top: -4px; right: -4px; bottom: -4px; left: -4px; border-radius: 50%; border: 2px solid rgba(47, 143, 208, .7); -webkit-animation: maskot-nabiz 2.4s ease-out infinite; animation: maskot-nabiz 2.4s ease-out infinite; pointer-events: none; }
.maskot-yazi { position: absolute; top: 100%; left: 50%; margin-top: 6px; padding: 6px 10px; border-radius: 8px; background: var(--lacivert); color: #fff; font-size: 13px; font-weight: 600; line-height: 1.2; white-space: nowrap; box-shadow: 0 6px 16px rgba(34, 34, 86, .25); opacity: 0; -webkit-transform: translate(-50%, -6px); transform: translate(-50%, -6px); transition: opacity .18s ease, -webkit-transform .18s ease, transform .18s ease; pointer-events: none; }
.maskot-yuzen:hover .maskot-yazi { opacity: 1; -webkit-transform: translate(-50%, 0); transform: translate(-50%, 0); }
.maskot-yuzen:focus-visible .maskot-yazi { opacity: 1; -webkit-transform: translate(-50%, 0); transform: translate(-50%, 0); }
.maskot-yuzen:focus-visible { outline: 3px solid #1877c9; outline-offset: 4px; border-radius: 10px; }
@media (min-width: 900px) {
  .maskot-yuzen { display: block; position: fixed; right: 24px; bottom: 50px; z-index: 40; }
  .maskot-alt { display: none; }
}
/* Telefon: alt menü 5 sütun, TAM ortası maskot (Şarköy: 3 | Adaş 72px | 3). Zemin ::before'da: ortada maskotun çevresinde aşağı kıvrılan çentik
   (SVG maske 120x40, aşağıdaki not); maskotun arkası şeffaf. 29 Eki'ye kadar yukarı taşan beyaz kabartmaydı. */
@media (max-width: 899px) {
  /* 29 Eki 2026 (Aydın: "maskotun arkasındaki beyazı kaldır, Şarköy Duyuru'da harika oldu"): yukarı taşan beyaz kabartma yerine Şarköy'deki
     ÇENTİK: çubuğun üst kenarı maskotun çevresinde aşağı kıvrılır (SVG maske 120x40, yarıçap 34, köşeleri 10 px yumuşak; SarkoyCore site.css
     .mobile-nav --mn-centik). Çubuğun üstünde zemin yok: maskot şeffaf, arkasından sayfa görünür. */
  .alt { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)) 72px repeat(2, minmax(0, 1fr)); background: none; border-top: 0;
    --mn-orta: 50vw;
    --mn-centik: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 40'%3E%3Cpath d='M0 0H16.73A10 10 0 0 1 26.56 8.18A34 34 0 0 0 93.44 8.18A10 10 0 0 1 103.27 0H120V40H0Z'/%3E%3C/svg%3E"); }
  .alt::before { content: ""; position: absolute; top: 0; right: 0; bottom: 0; left: 0; z-index: -1; background: #fff;
    -webkit-mask: linear-gradient(#000 0 0) left top / calc(var(--mn-orta) - 59px) 100% no-repeat,
                  var(--mn-centik) calc(var(--mn-orta) - 60px) 0 / 120px 40px no-repeat,
                  linear-gradient(#000 0 0) calc(var(--mn-orta) - 60px) 39px / 120px calc(100% - 39px) no-repeat,
                  linear-gradient(#000 0 0) right top / calc(100vw - var(--mn-orta) - 59px) 100% no-repeat;
    mask: linear-gradient(#000 0 0) left top / calc(var(--mn-orta) - 59px) 100% no-repeat,
          var(--mn-centik) calc(var(--mn-orta) - 60px) 0 / 120px 40px no-repeat,
          linear-gradient(#000 0 0) calc(var(--mn-orta) - 60px) 39px / 120px calc(100% - 39px) no-repeat,
          linear-gradient(#000 0 0) right top / calc(100vw - var(--mn-orta) - 59px) 100% no-repeat;
    filter: drop-shadow(0 -1px 0 rgba(20, 20, 60, .14)) drop-shadow(0 -4px 10px rgba(20, 30, 80, .08)); }
  .alt a { min-width: 0; }
  .maskot-alt { position: relative; min-width: 0; display: flex; flex-direction: column; align-items: center; justify-content: flex-end; padding: 5px 2px 3px; font-size: 12px; font-weight: 600; line-height: 1.1; color: var(--ink); }
  .maskot-alt i { position: absolute; top: -24px; left: 50%; width: 54px; height: 54px; margin-left: -27px; font-style: normal; }
  .maskot-alt:active i { -webkit-transform: scale(.93); transform: scale(.93); }
  .alt.alt-iki { grid-template-columns: minmax(0, 1fr) 72px minmax(0, 1fr); }   /* menü yalnız Anasayfa | Keşfet: 1 | maskot | 1 */
}@media (prefers-reduced-motion: reduce) { .maskot-resim::after, .maskot-alt i::after { -webkit-animation: none; animation: none; opacity: 0; } .maskot-yazi { transition: none; } }
/* ---------- maskot penceresi (kupon penceresiyle aynı geçiş: telefonda alttan, masaüstünde ortada) ---------- */
.ai-kutu { max-width: 520px; }
.ai-ic { padding: 22px 22px 22px; text-align: center; max-height: calc(100vh - 60px); overflow-y: auto; -webkit-overflow-scrolling: touch; }
.ai-maskot { display: block; width: 92px; height: 92px; margin: 2px auto 6px; padding: 3px; border-radius: 50%; background: var(--halka); }
.ai-maskot picture { display: block; width: 100%; height: 100%; }
.ai-maskot img { display: block; width: 100%; height: 100%; border-radius: 50%; background: #fff; border: 3px solid #fff; box-sizing: border-box; object-fit: cover; }
.ai-baslik { display: block; font-size: 22px; font-weight: 600; }
.ai-durum { color: var(--soft); margin: 4px 0 2px; min-height: 22px; }
.ai-perde.hata .ai-durum { color: #b3261e; }
.ai-soz { min-height: 22px; font-weight: 600; color: var(--ink); }
.ai-dalga { display: none; height: 28px; align-items: center; justify-content: center; margin: 2px 0 6px; }
.ai-perde.dinliyor .ai-dalga { display: flex; }
.ai-dalga i { display: block; width: 5px; height: 8px; margin: 0 3px; border-radius: 3px; background: #1877c9; -webkit-animation: ai-dalga .9s ease-in-out infinite; animation: ai-dalga .9s ease-in-out infinite; }
.ai-dalga i:nth-child(2) { -webkit-animation-delay: .12s; animation-delay: .12s; } .ai-dalga i:nth-child(3) { -webkit-animation-delay: .24s; animation-delay: .24s; }
.ai-dalga i:nth-child(4) { -webkit-animation-delay: .36s; animation-delay: .36s; } .ai-dalga i:nth-child(5) { -webkit-animation-delay: .48s; animation-delay: .48s; }
@-webkit-keyframes ai-dalga { 50% { height: 26px; } }
@keyframes ai-dalga { 50% { height: 26px; } }
.ai-yaz { display: flex; align-items: center; margin-top: 8px; border: 1px solid #cfcfd8; border-radius: 8px; background: #fafafc; padding-left: 14px; }
.ai-yaz:focus-within { border-color: #1877c9; box-shadow: 0 0 0 2px rgba(24, 119, 201, .25); background: #fff; }
.ai-yaz input { flex: 1; min-width: 0; height: 46px; border: 0; background: none; font: inherit; font-size: 16px; color: var(--ink); -webkit-appearance: none; appearance: none; }
.ai-yaz input:focus { outline: none; }
.ai-yaz button { width: 46px; height: 46px; border: 0; background: none; color: #1877c9; cursor: pointer; display: flex; align-items: center; justify-content: center; }
.ai-yaz button svg { width: 22px; height: 22px; fill: none; stroke: currentColor; stroke-width: 2.2; stroke-linecap: round; }
.ai-oneri { display: flex; flex-wrap: wrap; justify-content: center; margin-top: 14px; }
.ai-oneri button { margin: 0 4px 8px; padding: 8px 14px; border: 1px solid var(--line); border-radius: 8px; background: #fff; font: inherit; font-size: 14px; color: var(--ink); cursor: pointer; }
.ai-oneri button:hover { background: var(--gri); }
.ai-mik { display: inline-flex; align-items: center; margin-top: 6px; padding: 8px 14px; border: 0; border-radius: 8px; background: var(--gri); color: var(--ink); font: inherit; font-size: 14px; font-weight: 600; cursor: pointer; }
.ai-mik svg { width: 18px; height: 18px; margin-right: 6px; }
.ai-mik[hidden] { display: none; }
.ai-liste { margin-top: 14px; text-align: left; }
.ai-satir { display: flex; align-items: center; padding: 8px 6px; border-radius: 8px; }
.ai-satir:hover { background: var(--gri); }
.ai-satir .halka.mini { width: 44px; height: 44px; padding: 2px; flex: none; margin-right: 12px; }
.ai-satir .halka.mini .av { border-width: 1px; padding: 0; }
.ai-satir .halka.mini .av.harf { font-size: 16px; }
.ai-rozet { flex: none; min-width: 44px; max-width: 76px; height: 44px; margin-right: 12px; padding: 0 6px; border-radius: 8px; background: var(--lacivert); color: #fff; font-size: 13px; font-weight: 600; line-height: 1.1; display: flex; align-items: center; justify-content: center; text-align: center; overflow: hidden; }
.ai-metin { min-width: 0; }
.ai-metin b { display: block; font-weight: 600; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.ai-metin small { display: block; font-size: 12px; color: var(--soft); }
@media (max-width: 640px) {
  .ai-ic { max-height: 86vh; padding-bottom: 26px; padding-bottom: calc(26px + constant(safe-area-inset-bottom)); padding-bottom: calc(26px + env(safe-area-inset-bottom)); }
  .ai-kutu .mk-tutamak { background: #d3d3dc; }
}
@media (prefers-reduced-motion: reduce) { .ai-dalga i { -webkit-animation: none; animation: none; height: 16px; } }
/* ---------- parolasız giriş (e-posta kodu) + hesap ---------- */
.dev-kod { background: #fff6e0; color: #6b4a00; border: 1px solid #f1d98c; border-radius: 8px; padding: 9px 12px; margin-bottom: 4px; font-size: 14px; }
.dev-kod b { font-size: 18px; letter-spacing: .12em; }
.giris-form input.kod-girdi { height: 56px; font-size: 28px; font-weight: 600; letter-spacing: .35em; text-align: center; padding: 0 0 0 .35em; }
.giris-tekrar { margin-top: 12px; text-align: center; }
.duz-baglanti { background: none; border: 0; padding: 4px; font: inherit; font-size: 14px; font-weight: 600; color: #1877c9; cursor: pointer; }
.duz-baglanti:hover { text-decoration: underline; }
.hesap-ad { margin: 14px 0 6px; max-width: 420px; }
.hesap-ad label { display: block; font-size: 14px; font-weight: 600; margin-bottom: 6px; }
.hesap-ad-satir { display: flex; align-items: center; }
.hesap-ad-satir input { flex: 1; min-width: 0; height: 42px; padding: 0 12px; border: 1px solid #cfcfd8; border-radius: 8px; background: #fafafc; font: inherit; font-size: 16px; color: var(--ink); -webkit-appearance: none; appearance: none; }
.hesap-ad-satir input:focus { outline: 2px solid #1877c9; border-color: #1877c9; background: #fff; }
.hesap-ad-satir .dugme { margin-left: 8px; padding: 10px 16px; font-size: 14px; }
.hesap-ad small { display: block; margin-top: 5px; font-size: 12px; color: var(--soft); }
.hesap-ad small.hesap-hata { color: #b3261e; }
.hesap-ad small.hesap-tamam { color: #1d7a47; }
/* ---------- hikaye şeridi okları (yalnız fareli cihazda; telefonda parmakla kayar) ---------- */
.serit-sar { position: relative; }
.hikaye-serit { cursor: grab; }
.hikaye-serit a, .hikaye-serit img { -webkit-user-drag: none; }
.hikaye-serit.suruklenior { cursor: grabbing; -webkit-user-select: none; user-select: none; }
.hikaye-serit.suruklenior a { pointer-events: none; }
.serit-ok { display: none; }
@media (hover: hover) and (min-width: 900px) {
  .serit-ok { display: flex; align-items: center; justify-content: center; position: absolute; top: 19px; z-index: 3; width: 34px; height: 34px; padding: 0; border: 1px solid var(--line); border-radius: 8px; background: rgba(255, 255, 255, .96); color: var(--ink); cursor: pointer; box-shadow: 0 2px 8px rgba(20, 30, 80, .16); }
  .serit-ok[hidden] { display: none; }
  .serit-ok:hover { background: #fff; box-shadow: 0 3px 12px rgba(20, 30, 80, .24); }
  .serit-ok.geri { left: -6px; }
  .serit-ok.ileri { right: -6px; }
  .serit-ok svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 2.2; stroke-linecap: round; stroke-linejoin: round; }
}
/* ---------- beğeni / yorum sayısı ikonun yanında + beğeni efekti ---------- */
.mk-islem, .ks-islem { display: flex; align-items: center; }
.kalp, .yorum-dugme { position: relative; overflow: visible; }
.sayi { font-size: 14px; font-weight: 600; margin: 0 16px 0 -2px; font-variant-numeric: tabular-nums; }
.sayi[hidden] { display: none; }
.kalp.begenildi svg { -webkit-animation: none; animation: none; }
.kalp.pop svg { -webkit-animation: kalp-pop .6s cubic-bezier(.2, 1.5, .4, 1); animation: kalp-pop .6s cubic-bezier(.2, 1.5, .4, 1); }
@-webkit-keyframes kalp-pop { 0% { -webkit-transform: scale(.5); } 35% { -webkit-transform: scale(1.45) rotate(-9deg); } 65% { -webkit-transform: scale(.9) rotate(4deg); } 100% { -webkit-transform: scale(1); } }
@keyframes kalp-pop { 0% { transform: scale(.5); } 35% { transform: scale(1.45) rotate(-9deg); } 65% { transform: scale(.9) rotate(4deg); } 100% { transform: scale(1); } }
.kalp-halka { position: absolute; left: 50%; top: 50%; width: 30px; height: 30px; margin: -15px 0 0 -15px; border-radius: 50%; border: 2px solid #ed4956; pointer-events: none; -webkit-animation: kalp-halka .6s ease-out forwards; animation: kalp-halka .6s ease-out forwards; }
@-webkit-keyframes kalp-halka { 0% { opacity: .9; -webkit-transform: scale(.3); } 100% { opacity: 0; -webkit-transform: scale(2.1); } }
@keyframes kalp-halka { 0% { opacity: .9; transform: scale(.3); } 100% { opacity: 0; transform: scale(2.1); } }
.kalp-parca { position: absolute; left: 50%; top: 50%; width: 11px; height: 11px; margin: -5px 0 0 -5px; pointer-events: none; -webkit-animation: kalp-sac .75s ease-out forwards; animation: kalp-sac .75s ease-out forwards; }
.kalp-parca svg { display: block; width: 100%; height: 100%; fill: currentColor; stroke: none; }
@-webkit-keyframes kalp-sac { 0% { opacity: 1; -webkit-transform: translate(0, 0) scale(.4); } 100% { opacity: 0; -webkit-transform: translate(var(--dx), var(--dy)) rotate(var(--r)) scale(1.1); } }
@keyframes kalp-sac { 0% { opacity: 1; transform: translate(0, 0) scale(.4); } 100% { opacity: 0; transform: translate(var(--dx), var(--dy)) rotate(var(--r)) scale(1.1); } }
.buyuk-kalp { position: absolute; left: 50%; top: 50%; width: 96px; height: 96px; margin: -48px 0 0 -48px; z-index: 4; pointer-events: none; color: #fff; filter: drop-shadow(0 4px 14px rgba(0, 0, 0, .35)); -webkit-animation: buyuk-kalp .85s cubic-bezier(.2, 1.4, .4, 1) forwards; animation: buyuk-kalp .85s cubic-bezier(.2, 1.4, .4, 1) forwards; }
.buyuk-kalp svg { display: block; width: 100%; height: 100%; fill: currentColor; stroke: none; }
@-webkit-keyframes buyuk-kalp { 0% { opacity: 0; -webkit-transform: scale(.3); } 25% { opacity: 1; -webkit-transform: scale(1.15); } 55% { opacity: 1; -webkit-transform: scale(.95); } 100% { opacity: 0; -webkit-transform: scale(1.25) translateY(-14px); } }
@keyframes buyuk-kalp { 0% { opacity: 0; transform: scale(.3); } 25% { opacity: 1; transform: scale(1.15); } 55% { opacity: 1; transform: scale(.95); } 100% { opacity: 0; transform: scale(1.25) translateY(-14px); } }
@media (prefers-reduced-motion: reduce) { .kalp.pop svg, .kalp-halka, .kalp-parca, .buyuk-kalp { -webkit-animation: none; animation: none; opacity: 0; } }

/* ---------- indirim merkezi (29 Eki 2026 önizleme) ---------- */
/* Sayfa açma daveti logodaki bilet gibi: lacivert koçan (makas) + delikli çizgi + mavi gövde. Çentikler sayfa zemini renginde daire. */
.bilet { position: relative; display: flex; margin-bottom: 34px; border-radius: 10px; overflow: hidden; background: #1a6fb5; color: #fff; }
.bilet-kok { flex: 0 0 120px; display: flex; align-items: center; justify-content: center; background: var(--lacivert); }
.bilet-kok img { width: 58px; height: 58px; filter: brightness(0) invert(1); }
.bilet-govde { position: relative; flex: 1; min-width: 0; padding: 28px 30px 28px 36px; }
.bilet-govde::before { content: ""; position: absolute; left: 0; top: 16px; bottom: 16px; border-left: 2px dashed rgba(255, 255, 255, .5); }
.bilet::before, .bilet::after { content: ""; position: absolute; left: 110px; width: 20px; height: 20px; border-radius: 50%; background: var(--zemin); }
.bilet::before { top: -10px; }
.bilet::after { bottom: -10px; }
.bilet h2 { font-size: 30px; font-weight: 700; line-height: 1.1; letter-spacing: -.015em; }
.bilet p { margin: 10px 0 20px; max-width: 54ch; color: rgba(255, 255, 255, .92); }
.bilet .bilet-dugme { background: #fff; color: var(--lacivert); }
.bilet .bilet-dugme:hover { background: #e9f2fb; }

/* anasayfadaki bölüm başı: İndirim Kodları hesabı + Tümünü gör */
.bolum-bas { display: flex; align-items: center; justify-content: space-between; margin-bottom: 12px; }
.bolum-hesap { display: flex; align-items: center; min-width: 0; }
.bolum-hesap .halka { width: 46px; height: 46px; padding: 2px; margin-right: 12px; flex: none; }
.bolum-hesap .halka .av { border-width: 2px; padding: 6px; }
.bolum-hesap b { display: block; font-weight: 600; line-height: 1.3; }
.bolum-hesap small { display: block; font-size: 13px; color: var(--soft); }
.bolum-tum { flex: none; margin-left: 12px; font-size: 14px; font-weight: 600; color: #1877c9; }
.bolum-tum:hover { text-decoration: underline; }

/* bölüm profili: Markalar / Kampanyalar sayfasında ad H1 değil */
.profil .profil-ad { font-size: 28px; font-weight: 600; line-height: 1.2; }
.sekmeler a { border-top: 1px solid transparent; margin-top: -1px; padding: 14px 20px; font-size: 14px; font-weight: 600; color: var(--soft); }
.sekmeler a:hover { color: var(--ink); }
.sekmeler a[aria-current] { color: var(--ink); border-top-color: var(--ink); }

/* marka sayfasının üstünde bölüme dönüş yolu */
.bolum-yol { display: flex; align-items: center; margin-bottom: 14px; font-size: 14px; color: var(--soft); white-space: nowrap; overflow: hidden; }
.bolum-yol a { display: inline-flex; align-items: center; font-weight: 600; color: var(--ink); flex: none; }
.bolum-yol a:hover { text-decoration: underline; }
/* küçük avatar: renkli halka ve beyaz ara ince (2+2 px 28 px'lik dairede kalın duruyordu) */
.bolum-yol .halka { width: 26px; height: 26px; padding: 1px; margin-right: 8px; flex: none; }
.bolum-yol .halka .av { border-width: 1px; padding: 2px; }
.bolum-yol .ayrac { margin: 0 8px; }
.bolum-yol span:last-child { overflow: hidden; text-overflow: ellipsis; }
.bolum-yol .yol-ana { display: none; }   /* "Anasayfa ›" yalnız telefonda (masaüstünde sol menüde var) */

/* geri düğmesi: yolun başında, yalnız sitemizin bir sayfasından gelindiyse görünür (site.js). Sağında yoldan ayıran ince dikey çizgi (uçlara doğru solar). */
.geri-dugme { position: relative; display: inline-flex; align-items: center; flex: none; margin-right: 29px; padding: 5px 12px 5px 7px; border: 1px solid var(--line); border-radius: 8px; background: #fff; font: inherit; font-size: 14px; font-weight: 600; color: var(--ink); cursor: pointer; }
.geri-dugme::after { content: ""; position: absolute; top: 2px; bottom: 2px; right: -15px; width: 1px; pointer-events: none;
  background: linear-gradient(rgba(20, 20, 32, 0), rgba(20, 20, 32, .2) 30%, rgba(20, 20, 32, .2) 70%, rgba(20, 20, 32, 0)); }
.geri-dugme[hidden] { display: none; }
.geri-dugme:hover, .bolum-yol .geri-dugme:hover { background: var(--gri); text-decoration: none; }
.geri-dugme svg { width: 18px; height: 18px; margin-right: 4px; fill: none; stroke: currentColor; stroke-width: 2.2; stroke-linecap: round; stroke-linejoin: round; }

@media (max-width: 899px) {
  .profil .profil-ad { font-size: 22px; }
  /* telefon: marka sayfasında üst çubukta logo yerine geri + yol ("Anasayfa › İndirim Kodları › Marka"); hesap simgesi sağda kalır */
  .yollu .ust { justify-content: flex-end; }
  .yollu .ust-logo { display: none; }
  .yollu .bolum-yol { position: fixed; z-index: 31; top: 0; top: constant(safe-area-inset-top); top: env(safe-area-inset-top); left: 0; right: 58px; height: 54px; margin: 0; padding-left: 12px; }
  .yollu .bolum-yol .yol-ana { display: inline-flex; }
  .yollu .bolum-yol .halka { display: none; }
  .yollu .bolum-yol .ayrac { margin: 0 6px; }
  .yollu .geri-dugme { width: 34px; height: 34px; padding: 0; justify-content: center; margin-right: 21px; }
  .yollu .geri-dugme span { display: none; }
  .yollu .geri-dugme svg { margin: 0; }
  .yollu .geri-dugme::after { right: -11px; top: 4px; bottom: 4px; }
}
@media (max-width: 640px) {
  .bilet { margin-bottom: 26px; }
  .bilet-kok { flex-basis: 64px; }
  .bilet-kok img { width: 34px; height: 34px; }
  .bilet::before, .bilet::after { left: 56px; width: 16px; height: 16px; }
  .bilet::before { top: -8px; }
  .bilet::after { bottom: -8px; }
  .bilet-govde { padding: 20px 16px 20px 22px; }
  .bilet h2 { font-size: 22px; }
  .bilet p { font-size: 14px; margin: 8px 0 16px; }
  .sekmeler a { padding: 12px 10px; }
}
/* İndirim Kodları avatarı: lacivert dolu daire, beyaz makas; dolgu halkanın boyuyla orantılı (her boyutta aynı oran). Dosyanın sonunda: aynı özgüllükteki halka kurallarını ezsin.
   TUZAK (29 Eki): border-radius'lu <img>'in içeriği tarayıcıda İÇERİK KUTUSUNUN İÇ ÇEMBERİNE kırpılır (dolgu ne olursa olsun). Favicon'daki makasın sapları köşede
   olduğu için halkaları açık "C" gibi kesiliyordu. makas-beyaz.png bu yüzden 456 px tuvalde ortalı (en uzak nokta yarıçapın 0,955'i), dolgu yalnız boyutu ayarlar. */
.halka .av.kodlar-av, .profil .halka.buyuk .av.kodlar-av { padding: 8%; background: var(--lacivert); }

/* ---------- profil başlığı (marka / üye sayfası, İndirim Kodları): ızgara ----------
   Masaüstü: avatar solda, sağda ad + düğme, sayılar, bio (boşluk satırları bilgiyi dikeyde ortalar).
   Telefon (Instagram'daki gibi): avatar + sayılar yan yana, altında ad, bio, tam genişlikte düğme. Eskiden ad uzun olunca düğme ve sayılar sarıp dağılıyordu. */
.profil.pz { display: grid; grid-template-columns: 210px auto 1fr; grid-template-rows: 1fr auto auto auto 1fr;
  grid-template-areas: "av . ." "av ad dugme" "av istat istat" "av bio bio" "av . ."; align-items: center; }
.pz .profil-av { grid-area: av; width: auto; }
.pz-ad { grid-area: ad; min-width: 0; }
.pz-dugme { grid-area: dugme; justify-self: start; margin-left: 16px; }
.pz-dugme .dugme { padding: 8px 18px; font-size: 14px; }
.pz .istat { grid-area: istat; }
.pz-bio { grid-area: bio; min-width: 0; }
@media (max-width: 899px) {
  .profil.pz { grid-template-columns: 112px auto 1fr; }
}
@media (max-width: 640px) {
  .profil.pz { grid-template-columns: 88px 1fr; grid-template-rows: auto; grid-template-areas: "av istat" "ad ad" "bio bio" "dugme dugme";
    grid-column-gap: 20px; column-gap: 20px; padding: 2px 0 18px; }
  .pz .profil-av { justify-content: flex-start; }
  .pz .istat { display: flex; justify-content: space-around; margin: 0; }
  .pz .istat li { margin: 0; text-align: center; font-size: 14px; line-height: 1.35; }
  .pz .istat b { display: block; font-size: 17px; }
  .pz-ad { margin-top: 12px; }
  .pz-ad h1, .pz .profil-ad { font-size: 17px; line-height: 1.3; }
  .pz-bio .bio { font-size: 14px; }
  .pz-dugme { justify-self: stretch; margin: 12px 0 0; }
  .pz-dugme .dugme { display: block; width: 100%; padding: 9px 12px; }
}

/* Telefonda ızgara karosundaki rozet ("%15", "3 al 2 öde") küçük (29 Eki 2026, Aydın: "mobilde badgeler çok büyük"): 120 px'lik karede
   16 px yazı + iki satıra kayma fazla duruyordu. Tek satır, sığmazsa "…". Keşfet'in büyük kartı ve açılır pencere bundan etkilenmez. */
@media (max-width: 640px) {
  .izgara .gp.gorselli .gp-orta, .izgara .gp.gorselli .gp-orta.orta, .izgara .gp.gorselli .gp-orta.kucuk {
    bottom: 22px; left: 5px; max-width: calc(100% - 10px); padding: 2px 6px; border-radius: 5px; font-size: 12px; line-height: 1.3;
    white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  .izgara .gp-alt { padding: 12px 6px 5px; }
}
/* Telefonda ızgara 2 sütun (30 Eki 2026, Aydın: "3 sırada çok küçük, iki sıralı yap bi göreyim, beğenmezsem 3'e çekeriz"). 3 sütuna dönmek için:
   bu bloğu sil. Kare daha büyük olduğundan rozet / avatar / alt yazı bir kademe büyür; sayfa boyları (12 ve 30) çift, son satır boş kalmaz. */
@media (max-width: 640px) {
  .izgara { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-gap: 4px; }
  .izgara .gp.gorselli .gp-orta, .izgara .gp.gorselli .gp-orta.orta, .izgara .gp.gorselli .gp-orta.kucuk {
    bottom: 28px; left: 8px; max-width: calc(100% - 16px); padding: 2px 7px; border-radius: 6px; font-size: 14px; }
  .izgara .gp-ust { padding: 9px 9px 16px; }
  .izgara .gp-ust .av { width: 28px; height: 28px; }
  .izgara .gp-alt { padding: 14px 9px 7px; }
}
/* ---------- anasayfa marka kartı (1 Kas 2026; Aydın: "logoların etrafındaki paddingleri kaldır, mahvediyorsun; renkleri kaldır, direkt markaları kart yap") ----------
   Düz beyaz kare kart: logo kartın tamamını kaplar (object-fit: contain; daire, dolgu, gradyan yok); ad + fırsat sayısı kartın altında.
   Izgara .izgara (masaüstü 3, telefon 2 sütun). Logo dosyaları 500x500, içerik genişliği ~%96: kart ne kadar büyükse logo o kadar büyük. */
.marka-izgara { grid-gap: 16px 8px; }
.bk { display: block; min-width: 0; color: var(--ink); -webkit-tap-highlight-color: transparent; }
.bk-kart { position: relative; display: block; overflow: hidden; border: 1px solid var(--line); border-radius: 6px; background: #fff; transition: border-color .15s; }
.bk-kart::before { content: ""; display: block; padding-top: 100%; }
.bk-kart > img, .bk-harf { position: absolute; left: 0; top: 0; width: 100%; height: 100%; }
.bk-kart > img { display: block; object-fit: contain; }
.bk-harf { display: flex; align-items: center; justify-content: center; background: var(--gri); color: var(--lacivert); font-size: 64px; font-weight: 600; }
.bk:hover .bk-kart { border-color: #b9c2cc; }
.bk-ad { display: block; margin-top: 8px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 15px; font-weight: 600; line-height: 1.3; }
.bk-say { display: block; font-size: 13px; color: var(--soft); line-height: 1.3; }
@media (max-width: 640px) { .marka-izgara { grid-gap: 14px 6px; } .bk-kart { border-radius: 4px; } .bk-ad { font-size: 14px; margin-top: 6px; } .bk-say { font-size: 12px; } .bk-harf { font-size: 44px; } }
@media (prefers-reduced-motion: reduce) { .bk-kart { transition: none; } }
/* ---------- kuponun kendi sayfası (adres doğrudan açılınca; site içinden tıklayınca açılır pencere) ---------- */
.kd { position: relative; display: flex; margin-bottom: 30px; border: 1px solid var(--line); border-radius: 10px; background: #fff; }
.kd-gorsel { flex: 0 0 46%; min-width: 0; }
.kd-gorsel .gp { border-radius: 10px 0 0 10px; cursor: default; }
.kd .gp:hover::after { background: rgba(0, 0, 0, 0); }
.kd .gp > span:not(.gp-kaydir) { pointer-events: none; }
.kd-bilgi { flex: 1; min-width: 0; padding: 22px 24px; }
.kd-marka { display: inline-flex; align-items: center; margin-bottom: 12px; font-weight: 600; }
.kd-marka .halka.kucuk { width: 36px; height: 36px; padding: 2px; margin-right: 10px; flex: none; }
.kd-marka .halka .av { border-width: 1px; }
.kd-marka:hover b { text-decoration: underline; }
.kd h1 { margin-bottom: 6px; font-size: 24px; font-weight: 600; line-height: 1.25; }
.kd-tur { display: flex; flex-wrap: wrap; margin-bottom: 14px; font-size: 14px; color: var(--soft); }
.kd-tur span { margin-right: 14px; }
.kd-kod { margin-bottom: 10px; }
.kd-git { display: block; width: 100%; }
.kd-ara { margin: 18px 0 4px; font-size: 15px; font-weight: 600; }
.kd-kosul { font-size: 14px; color: #3b3b48; white-space: pre-line; }
.kd-sosyal .mk-sosyal { margin-top: 18px; }
.kd-diger { margin-top: 4px; margin-bottom: 12px; font-size: 18px; font-weight: 600; }
@media (max-width: 640px) {
  .kd { flex-direction: column; }
  .kd-gorsel .gp { border-radius: 10px 10px 0 0; }
  .kd-bilgi { padding: 16px; }
  .kd h1 { font-size: 20px; }
}

/* ---------- marka sayfası: okunur fırsat listesi + SSS (arama motoru ve yapay zeka için de; JSON-LD ile aynı içerik) ---------- */
.firsat-liste, .sss { margin-top: 34px; }
.firsat-liste h2, .sss h2 { margin-bottom: 10px; font-size: 18px; font-weight: 600; }
.firsat-liste ol { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--line); }
.firsat-liste li { padding: 14px 0; border-bottom: 1px solid var(--line); }
.firsat-liste h3 { font-size: 16px; font-weight: 600; line-height: 1.35; }
.firsat-liste h3 a:hover { text-decoration: underline; }
.firsat-liste p { margin-top: 3px; font-size: 14px; color: #3b3b48; }
.firsat-liste .fl-alt { display: flex; flex-wrap: wrap; align-items: center; margin-top: 6px; color: var(--soft); }
.fl-alt span, .fl-alt code { margin-right: 14px; }
.fl-alt code { padding: 1px 8px; border: 1px dashed #b4b4c0; border-radius: 6px; background: #fafafc; color: var(--ink); font: 600 13px/1.5 "Plus Jakarta Sans", sans-serif; letter-spacing: .05em; }
.sss details { border-bottom: 1px solid var(--line); }
.sss details:first-of-type { border-top: 1px solid var(--line); }
.sss summary { position: relative; padding: 13px 30px 13px 0; font-weight: 600; cursor: pointer; list-style: none; }
.sss summary::-webkit-details-marker { display: none; }
.sss summary::after { content: "+"; position: absolute; right: 6px; top: 9px; font-size: 20px; font-weight: 400; color: var(--soft); }
.sss details[open] summary::after { content: "\2212"; }
.sss details p { padding-bottom: 14px; font-size: 14px; color: #3b3b48; }
/* kupon sayfasında maytap tuvali kutunun 24 px dışına taşar: telefonda sayfa yana kaymasın */
.kupon-sayfa .ana { overflow-x: hidden; overflow-x: clip; }

/* Şablon görsel (veri\kuponlar\sb-*.jpg, araclar\sablon-uret.py): vitrin yazısı görselin içinde pişmiş, karttaki yazı etiketi tekrar etmesin */
.gp.sablon .gp-orta { display: none; }
