/* =====================================================
   CIVARI — Rehber katmanı stilleri (v27)
   ===================================================== */

/* ---------- Hızlı açılış: intro düğmesiz, kendiliğinden kapanır ---------- */
#intro.hizli .btn-discover { opacity:0; pointer-events:none; }
#intro.hizli { cursor:pointer; }
#intro.hizli .intro-content { animation:introHizli 1.1s ease both; }
@keyframes introHizli { 0%{ transform:scale(.96); opacity:0;} 25%{ opacity:1;} 100%{ transform:scale(1.02);} }

/* ---------- Mobilde çerez bandı daha küçük (içeriği kapatmasın) ---------- */
@media (max-width:640px){
  #czBanner.cz-banner { padding:12px 14px calc(12px + env(safe-area-inset-bottom,0px)); }
  #czBanner .cz-in { gap:10px; }
  #czBanner .cz-txt { font-size:.8rem; line-height:1.45; flex-basis:100%; }
  #czBanner .cz-txt b { font-size:.9rem; margin-bottom:2px; }
  #czBanner .cz-btn { padding:11px 10px; font-size:.86rem; }
}

/* ---------- Şehir seçici ---------- */
.sehir-btn { display:inline-flex; align-items:center; gap:5px; height:40px; padding:0 12px 0 10px; border-radius:30px; border:1px solid var(--gray);
  background:#fff; font-family:inherit; font-size:.88rem; cursor:pointer; color:var(--ink,#1c1c1e); margin-right:10px; transition:.2s; white-space:nowrap; }
.sehir-btn b { font-weight:800; }
.sehir-btn svg { width:16px; height:16px; color:var(--muted); }
.sehir-btn:hover { border-color:var(--primary); background:#fffaf2; }
@media (max-width:620px){
  .sehir-btn { height:36px; padding:0 9px 0 8px; font-size:.82rem; margin-right:6px; gap:3px; }
  .header .auth-trigger { padding:9px 14px; font-size:.85rem; }
}
.ss-bas { text-align:center; margin-bottom:14px; }
.ss-harita { font-size:2.4rem; }
.ss-bas h3 { font-family:var(--font-display); font-size:1.5rem; font-weight:800; letter-spacing:-.5px; margin:4px 0 6px; }
.ss-bas p { color:var(--muted); font-size:.92rem; line-height:1.55; }
.ss-liste { display:flex; flex-direction:column; gap:7px; max-height:46vh; overflow:auto; padding:2px; }
.ss-sehir { position:relative; display:flex; align-items:center; justify-content:space-between; gap:10px; width:100%; min-height:48px; padding:0 14px;
  border:1.5px solid var(--gray); border-radius:14px; background:#fff; font-family:inherit; font-size:.95rem; cursor:pointer; overflow:hidden; color:inherit; text-align:left; }
.ss-sehir.aktif { border-color:#16a34a; background:rgba(22,163,74,.07); font-weight:800; margin-bottom:8px; cursor:default; }
.ss-sehir.aktif em { font-style:normal; color:#15803d; font-size:.82rem; font-weight:800; }
.ss-sehir:hover:not(.aktif) { border-color:var(--primary); }
.ss-sehir.benim { border-color:#111; box-shadow:inset 0 0 0 1px #111; }
.ss-dolu { position:absolute; left:0; top:0; bottom:0; background:linear-gradient(90deg, rgba(255,153,0,.14), rgba(255,153,0,.26)); transition:width .7s cubic-bezier(.2,.8,.2,1); }
.ss-ad, .ss-say { position:relative; }
.ss-ad { font-weight:700; }
.ss-say { color:var(--muted); font-size:.8rem; font-weight:700; }
.ss-not { color:var(--muted); font-size:.8rem; text-align:center; margin-top:12px; }

/* ---------- "Şu an ne lazım?" ---------- */
.durum-bolum { margin-top:6px; margin-bottom:30px; }
.durum-bolum.hidden { display:none; }
.durum-row { display:grid; grid-template-columns:repeat(auto-fill, minmax(180px,1fr)); gap:12px; }
.durum-kart { position:relative; display:flex; flex-direction:column; align-items:flex-start; gap:3px; text-align:left; padding:16px 16px 14px; min-height:132px;
  border:1px solid var(--gray); border-radius:20px; background:#fff; cursor:pointer; font-family:inherit; color:var(--ink,#1c1c1e); overflow:hidden;
  transition:transform .25s cubic-bezier(.2,.8,.2,1), box-shadow .25s, border-color .25s; }
.durum-kart::after { content:''; position:absolute; right:-30px; top:-30px; width:110px; height:110px; border-radius:50%; background:radial-gradient(circle, rgba(255,153,0,.18), rgba(255,153,0,0) 70%); transition:transform .4s; }
.durum-kart:hover { transform:translateY(-4px); border-color:var(--primary); box-shadow:0 16px 30px -18px rgba(255,153,0,.6); }
.durum-kart:hover::after { transform:scale(1.4); }
.durum-kart:active { transform:scale(.97); }
.dk-emoji { font-size:1.9rem; margin-bottom:6px; transition:transform .3s; }
.durum-kart:hover .dk-emoji { transform:rotate(-8deg) scale(1.12); }
.dk-ad { font-family:var(--font-display); font-weight:800; font-size:1.05rem; letter-spacing:-.3px; }
.dk-alt { color:var(--muted); font-size:.8rem; }
.dk-say { margin-top:auto; padding-top:8px; font-size:.78rem; font-weight:700; color:#334155; display:flex; align-items:center; gap:4px; }
.dk-say b { display:inline-flex; align-items:center; gap:5px; color:#15803d; }
.dk-say .nabiz-dot { width:7px; height:7px; }
@media (max-width:620px){
  .durum-bolum { margin-bottom:18px; }
  .durum-row { display:flex; overflow-x:auto; gap:10px; margin:0 -16px; padding:2px 16px 10px; scroll-snap-type:x proximity; scrollbar-width:none; }
  .durum-row::-webkit-scrollbar { display:none; }
  .durum-kart { flex:0 0 148px; min-height:128px; scroll-snap-align:start; padding:14px 13px 12px; }
}

/* Durum sonucu */
.ds-bas { text-align:center; margin-bottom:14px; }
.ds-emoji { font-size:2.6rem; display:inline-block; animation:zarSalla 3s ease-in-out infinite; }
.ds-bas h3 { font-family:var(--font-display); font-size:1.55rem; font-weight:800; letter-spacing:-.5px; margin:2px 0 4px; }
.ds-bas p { color:var(--muted); font-size:.92rem; }
.ds-acik { color:#15803d; }
.ds-liste { display:flex; flex-direction:column; gap:8px; max-height:52vh; overflow:auto; padding:2px; }
.ds-satir { display:flex; align-items:center; gap:12px; width:100%; text-align:left; border:1.5px solid var(--gray); background:#fff; border-radius:16px;
  padding:10px 12px; cursor:pointer; font-family:inherit; color:inherit; transition:.18s; min-height:66px; }
.ds-satir:hover { border-color:var(--primary); transform:translateX(2px); }
.ds-k { width:50px; height:50px; flex:none; border-radius:14px; display:flex; align-items:center; justify-content:center; color:#fff; font-weight:800; font-family:var(--font-display);
  background:linear-gradient(135deg,var(--cc,#ff9900),color-mix(in srgb,var(--cc,#ff9900) 50%,#000)); background-size:cover; background-position:center; }
.ds-m { flex:1; min-width:0; }
.ds-m b { display:block; font-size:.98rem; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.ds-m small { color:var(--muted); font-size:.78rem; }
.ds-neden { display:flex; flex-wrap:wrap; gap:4px; margin-top:4px; }
.ds-neden em { font-style:normal; font-size:.7rem; font-weight:700; background:#fff7ec; color:#b45309; padding:2px 7px; border-radius:10px; }
.ds-satir .status-pill { flex:none; }
.ds-alt { display:flex; gap:8px; margin-top:14px; flex-wrap:wrap; }
.ds-alt .btn-primary { flex:1 1 200px; padding:14px; }
.ds-alt .btn-ghost { flex:1 1 140px; }

/* ---------- Doğrulanmış rozeti ---------- */
.dg-rozet { display:inline-flex; align-items:center; justify-content:center; width:17px; height:17px; border-radius:50%; background:#1d9bf0; color:#fff;
  font-style:normal; font-size:.62rem; font-weight:900; vertical-align:2px; margin-left:3px; }

/* ---------- Güven katmanı (detay penceresi) ---------- */
#guvenBlok { display:flex; flex-direction:column; gap:12px; margin:4px 0 18px; }
.gv-saat { border:1px solid var(--gray); border-radius:16px; background:#fff; overflow:hidden; }
.gv-saat summary { list-style:none; display:flex; align-items:center; gap:10px; padding:12px 14px; cursor:pointer; font-size:.92rem; min-height:48px; }
.gv-saat summary::-webkit-details-marker { display:none; }
.gv-saat summary > span:nth-child(2) { flex:1; }
.gv-ac { font-size:.78rem; font-weight:800; color:var(--primary-dark); }
.gv-saat[open] .gv-ac { opacity:.5; }
.gv-hafta { padding:0 14px 12px; display:grid; gap:2px; }
.gv-hafta div { display:flex; justify-content:space-between; font-size:.86rem; padding:5px 8px; border-radius:8px; color:#334155; }
.gv-hafta div.bugun { background:#fff7ec; font-weight:800; color:#111; }
.gv-ikon { font-size:1.1rem; flex:none; }
.gv-kart { border-radius:16px; background:linear-gradient(135deg,#f8fafc,#fff); border:1px solid var(--border); padding:12px 14px; display:flex; flex-direction:column; gap:10px; }
.gv-rozet { display:flex; gap:10px; align-items:center; }
.gv-rozet > span { width:36px; height:36px; border-radius:12px; background:rgba(29,155,240,.12); display:flex; align-items:center; justify-content:center; font-size:1.1rem; flex:none; }
.gv-rozet b { display:block; font-size:.92rem; }
.gv-rozet small { color:var(--muted); font-size:.78rem; }
.gv-teyit { display:flex; flex-direction:column; gap:10px; }
.gv-yukleniyor { color:var(--muted); font-size:.85rem; }
.gv-teyit-satir { display:flex; gap:10px; align-items:flex-start; font-size:.88rem; line-height:1.45; color:#334155; }
.gv-teyit-btn { display:flex; gap:8px; }
.gv-teyit-btn button { flex:1; min-height:44px; border-radius:12px; border:1.5px solid var(--gray); background:#fff; font-family:inherit; font-weight:800; font-size:.86rem; cursor:pointer; transition:.18s; color:#1c1c1e; }
.gv-teyit-btn button:first-child { border-color:#16a34a; color:#15803d; }
.gv-teyit-btn button:first-child:hover:not(:disabled) { background:rgba(22,163,74,.08); }
.gv-teyit-btn button.secili { background:#16a34a; color:#fff; cursor:default; }
.gv-teyit-btn button:last-child:hover { border-color:#f59e0b; background:#fffbeb; }
.gv-uyari { background:#fef3c7; border:1px solid #fcd34d; color:#92400e; border-radius:12px; padding:10px 12px; font-size:.85rem; font-weight:700; }
.gv-uyari.hafif { background:#f1f5f9; border-color:#e2e8f0; color:#475569; font-weight:600; }
.gv-bilgi { border:1px solid var(--gray); border-radius:16px; padding:12px 14px 14px; }
.gv-bas { display:flex; align-items:baseline; justify-content:space-between; gap:10px; margin-bottom:10px; flex-wrap:wrap; }
.gv-bas h4 { font-family:var(--font-display); font-size:1.05rem; font-weight:800; }
.gv-bas small { color:var(--muted); font-size:.76rem; }
.gv-bas small b { color:var(--primary-dark); }
.gv-izgara { display:grid; grid-template-columns:repeat(3,1fr); gap:7px; }
@media (max-width:420px){ .gv-izgara { grid-template-columns:repeat(2,1fr); } }
.gv-oz { display:flex; align-items:center; gap:7px; padding:9px 10px; min-height:46px; border-radius:12px; border:1px solid var(--border); background:#fff; cursor:pointer;
  font-family:inherit; text-align:left; color:#1c1c1e; transition:.18s; }
.gv-oz:hover { border-color:var(--primary); }
.gv-oz:active { transform:scale(.96); }
.gv-oz-ikon { font-size:1.05rem; flex:none; }
.gv-oz-ad { flex:1; font-size:.78rem; font-weight:700; line-height:1.15; }
.gv-oz-durum { font-size:.72rem; font-weight:900; flex:none; }
.gv-oz.var { background:rgba(22,163,74,.07); border-color:rgba(22,163,74,.35); }
.gv-oz.var .gv-oz-durum { color:#15803d; }
.gv-oz.yok { background:#f8fafc; }
.gv-oz.yok .gv-oz-ad { color:#94a3b8; text-decoration:line-through; }
.gv-oz.yok .gv-oz-durum { color:#94a3b8; }
.gv-oz.bilinmiyor { border-style:dashed; }
.gv-oz.bilinmiyor .gv-oz-durum { width:18px; height:18px; border-radius:50%; background:#fff7ec; color:var(--primary-dark); display:flex; align-items:center; justify-content:center; }
.gv-oz.benim { box-shadow:inset 0 0 0 1.5px #111; }

/* ---------- Karşılama (uygulamada ilk açılış) ---------- */
.kr-ekran { background:radial-gradient(120% 70% at 50% 0%, #fff4e0 0%, #fff 60%); flex-direction:column; padding:calc(30px + env(safe-area-inset-top,0px)) 26px calc(26px + env(safe-area-inset-bottom,0px)); z-index:8000; }
.kr-adim { display:none; flex-direction:column; align-items:center; text-align:center; max-width:420px; width:100%; gap:12px; animation:krGir .5s cubic-bezier(.2,.8,.2,1) both; }
.kr-adim.aktif { display:flex; }
@keyframes krGir { from{ opacity:0; transform:translateX(30px);} to{ opacity:1; transform:none;} }
.kr-pin { position:relative; width:150px; height:150px; display:flex; align-items:center; justify-content:center; margin-bottom:4px; }
.kr-adim h2 { font-family:var(--font-display); font-size:3.2rem; font-weight:800; letter-spacing:-2px; line-height:1; }
.kr-adim h2 span { color:var(--primary); }
.kr-adim h3 { font-family:var(--font-display); font-size:1.8rem; font-weight:800; letter-spacing:-.8px; }
.kr-adim p { color:#475569; font-size:1rem; line-height:1.55; }
.kr-buyuk { font-size:1.2rem !important; font-weight:800; color:#111 !important; }
.kr-adim .btn-primary { margin-top:14px; min-height:56px; font-size:1.05rem; }
.kr-zevk { display:flex; flex-wrap:wrap; gap:9px; justify-content:center; margin:10px 0; }
.kr-zevk button { border:1.5px solid var(--gray); background:#fff; border-radius:30px; padding:12px 18px; font-family:inherit; font-weight:700; font-size:.98rem; cursor:pointer; min-height:48px; transition:.18s; }
.kr-zevk button.secili { background:var(--primary); border-color:var(--primary); color:#fff; transform:scale(1.04); box-shadow:0 10px 20px -10px rgba(255,153,0,.8); }
.kr-konum { font-size:4rem; animation:pinZipla 1.6s ease-in-out infinite; }
@keyframes pinZipla { 0%,100%{ transform:translateY(0);} 50%{ transform:translateY(-12px);} }
.kr-gec { background:none; border:none; color:var(--muted); font-family:inherit; font-weight:700; font-size:.95rem; cursor:pointer; min-height:44px; padding:0 20px; }
.kr-nokta { display:flex; gap:7px; margin-top:28px; }
.kr-nokta i { width:8px; height:8px; border-radius:8px; background:var(--gray); transition:.3s; }
.kr-nokta i.aktif { width:24px; background:var(--primary); }

/* =====================================================
   C-002 — Emoji yerine çizgi ikon (Lucide) + marka simgesi tek C
   ===================================================== */
.ik, i[data-lucide] { display:inline-block; width:1.1em; height:1.1em; vertical-align:-.18em; stroke-width:2; flex:none; }
svg.ik { width:1.1em; height:1.1em; }

/* Marka C (intro + karşılama): pin yerine, nabız halkalarının ortasında nefes alır */
.marka-c { position:relative; z-index:2; width:92px; height:92px; object-fit:contain; animation:cNefes 2.6s ease-in-out infinite; filter:drop-shadow(0 12px 20px rgba(255,153,0,.35)); }
@keyframes cNefes { 0%,100%{ transform:scale(1);} 50%{ transform:scale(1.06);} }
.intro-pin .pin-mark, .kr-pin .pin-mark { display:none; }
.kr-pin .marka-c { width:104px; height:104px; }

/* Durum kartı ikon kutusu */
.durum-kart .dk-emoji { width:46px; height:46px; border-radius:15px; background:#fff4e0; color:#e07f00; display:flex; align-items:center; justify-content:center; font-size:1rem; margin-bottom:10px; }
.durum-kart .dk-emoji svg { width:23px; height:23px; }
.durum-kart:hover .dk-emoji { background:var(--primary); color:#fff; transform:rotate(-6deg) scale(1.06); }
.ds-emoji { width:64px; height:64px; border-radius:20px; background:#fff4e0; color:#e07f00; display:inline-flex !important; align-items:center; justify-content:center; }
.ds-emoji svg { width:30px; height:30px; }
.ds-alt svg, .scs-btn svg, .gv-teyit-btn svg { width:17px; height:17px; vertical-align:-3px; }

/* Hikâye özel halkaları (Bana Seç / Ekiple Seç) */
.hk-ikon svg { width:28px; height:28px; color:#e07f00; }
@media (max-width:620px){ .hk-ikon svg { width:24px; height:24px; } }

/* Mod düğmeleri, çark filtreleri, karşılama zevkleri */
.mood-pill .mp-ikon, .mood-pill svg.mp-ikon { width:16px; height:16px; color:#e07f00; }
.mood-pill.active svg { color:#fff; }
.sc-filtre button { display:inline-flex; align-items:center; gap:6px; }
.sc-filtre svg { width:15px; height:15px; }
.sc-zar { width:64px; height:64px; border-radius:20px; background:#fff4e0; color:#e07f00; display:inline-flex !important; align-items:center; justify-content:center; }
.sc-zar svg { width:32px; height:32px; }
.ek-emoji { width:64px; height:64px; border-radius:20px; background:#fff4e0; color:#e07f00; display:inline-flex !important; align-items:center; justify-content:center; }
.ek-emoji svg { width:30px; height:30px; }
.ek-tac { color:#f59e0b; }
.kr-zevk button { display:inline-flex; align-items:center; gap:8px; }
.kr-zevk svg { width:18px; height:18px; color:#e07f00; }
.kr-zevk button.secili svg { color:#fff; }
.kr-konum { width:96px; height:96px; border-radius:30px; background:#fff4e0; color:#e07f00; display:flex; align-items:center; justify-content:center; font-size:1rem; }
.kr-konum svg { width:46px; height:46px; }

/* Nabız, uyku, güven, şehir */
.nabiz-ay svg { width:17px; height:17px; color:#b45309; }
.ub-ay { color:#b45309; }
.ub-ay svg { width:44px; height:44px; }
.gv-ikon svg { width:18px; height:18px; color:#64748b; }
.gv-rozet > span { color:#1d9bf0; }
.gv-rozet > span svg { width:20px; height:20px; }
.gv-uyari svg { width:16px; height:16px; vertical-align:-3px; }
.gv-oz-ikon svg { width:18px; height:18px; color:#64748b; }
.gv-oz.var .gv-oz-ikon svg { color:#15803d; }
.ss-harita { width:64px; height:64px; border-radius:20px; background:#fff4e0; color:#e07f00; display:inline-flex; align-items:center; justify-content:center; }
.ss-harita svg { width:30px; height:30px; }
.ss-sehir.aktif svg { width:16px; height:16px; vertical-align:-3px; color:#15803d; }
.sehir-btn svg:first-child { color:var(--primary-dark); }
.hk-kart-adres svg { width:15px; height:15px; vertical-align:-2px; }
.ic-goz svg { width:13px; height:13px; vertical-align:-2px; }
.photo-lock-note svg { width:14px; height:14px; vertical-align:-2px; }

/* 360 px: durum listesinde ad kesilmesin, rozet alta insin */
@media (max-width:400px){
  .ds-satir { flex-wrap:wrap; row-gap:6px; }
  .ds-satir .ds-m { flex:1 1 calc(100% - 64px); }
  .ds-satir .status-pill { margin-left:62px; }
}

/* =====================================================
   C-003 — Son katman: rehberin mobil ölçü ve hareket dili
   ===================================================== */
.sehir-btn {
  min-width:44px; min-height:44px; height:auto; padding:8px 12px;
  margin-right:8px; gap:4px; border-radius:16px; line-height:1.3;
}
.ss-bas { margin-bottom:16px; }
.ss-bas h3 { margin:8px 0; line-height:1.2; }
.ss-liste { gap:8px; padding:4px; overscroll-behavior:contain; }
.ss-sehir { border-radius:16px; padding:12px 16px; gap:8px; }
.ss-ad, .ss-say { min-width:0; overflow-wrap:anywhere; }
.ss-say { text-align:right; }
.ss-not { margin-top:16px; line-height:1.5; }

.durum-bolum { margin:8px auto 32px; }
.durum-row { gap:16px; }
.durum-kart {
  border-radius:20px; padding:16px; gap:8px;
  box-shadow:var(--cila-shadow); min-width:0;
}
.durum-kart::after { background:radial-gradient(circle,rgba(255,153,0,.1),transparent 70%); }
.durum-kart .dk-emoji { width:48px; height:48px; border-radius:16px; margin:0 0 8px; }
.dk-ad { font-size:1.0625rem; line-height:1.2; overflow-wrap:anywhere; }
.dk-alt { line-height:1.5; }
.dk-say { padding-top:8px; gap:4px; line-height:1.4; flex-wrap:wrap; }
.durum-kart:hover { box-shadow:var(--cila-shadow-hover); }
.ds-bas { margin-bottom:16px; }
.ds-bas h3 { margin:8px 0; line-height:1.2; }
.ds-bas p { line-height:1.5; }
.ds-liste { gap:8px; padding:4px; overscroll-behavior:contain; }
.ds-liste:empty { min-height:32px; }
.ds-satir { gap:8px; padding:16px; border-radius:16px; }
.ds-k { width:48px; height:48px; border-radius:16px; }
.ds-m b { white-space:normal; overflow:visible; overflow-wrap:anywhere; line-height:1.35; }
.ds-m small { display:block; line-height:1.5; margin-top:4px; }
.ds-neden { gap:4px; margin-top:8px; }
.ds-neden em { line-height:1.5; }
.ds-alt { margin-top:16px; }
.ds-alt .btn-primary, .ds-alt .btn-ghost { min-height:48px; border-radius:16px; }
.ds-emoji, .sc-zar, .ek-emoji, .ss-harita { border-radius:20px; }

#guvenBlok { gap:16px; margin:8px 0 24px; }
.gv-saat, .gv-kart, .gv-bilgi { border-radius:16px; }
.gv-saat summary { gap:8px; padding:16px; line-height:1.4; }
.gv-saat summary > span:nth-child(2) { min-width:0; }
.gv-ac { flex:none; }
.gv-hafta { padding:0 8px 16px; gap:4px; }
.gv-hafta div { gap:8px; padding:8px; }
.gv-kart, .gv-bilgi { padding:16px; background:#fff; }
.gv-kart, .gv-rozet, .gv-teyit, .gv-teyit-satir { gap:8px; }
.gv-rozet > div, .gv-teyit-satir > span { min-width:0; overflow-wrap:anywhere; }
.gv-rozet b, .gv-rozet small { line-height:1.5; }
.gv-bas { margin-bottom:16px; gap:8px; }
.gv-bas h4 { line-height:1.25; }
.gv-bas small { line-height:1.5; }
.gv-izgara { gap:8px; grid-template-columns:repeat(3,minmax(0,1fr)); }
.gv-oz { padding:12px 8px; gap:8px; min-width:0; min-height:48px; border-radius:16px; }
.gv-oz-ad { min-width:0; overflow-wrap:anywhere; line-height:1.4; }
.gv-teyit-btn button { min-height:48px; padding:8px; border-radius:16px; line-height:1.4; }
.gv-uyari { padding:16px; border-radius:16px; line-height:1.5; }

/* Kısa ekranda karşılama içeriği üstten kırpılmadan kaydırılabilsin. */
.kr-ekran { overflow-y:auto; overscroll-behavior:contain; justify-content:flex-start; padding:calc(24px + env(safe-area-inset-top,0px)) 24px calc(24px + env(safe-area-inset-bottom,0px)); }
.kr-adim { flex-shrink:0; gap:16px; margin-top:auto; }
.kr-adim h3 { line-height:1.15; }
.kr-adim .btn-primary { margin-top:8px; border-radius:16px; }
.kr-pin { flex:none; margin-bottom:0; }
.kr-zevk { gap:8px; margin:8px 0; }
.kr-zevk button { min-height:48px; border-radius:16px; padding:12px 16px; color:var(--cila-ink); }
.kr-zevk button.secili { color:var(--cila-ink); transform:none; box-shadow:var(--cila-shadow); }
.kr-zevk button.secili svg { color:currentColor; }
.kr-konum { border-radius:24px; flex:none; }
.kr-nokta { flex-shrink:0; margin-top:24px; margin-bottom:auto; gap:8px; padding-bottom:8px; }

@media (max-width:620px) {
  .sehir-btn { font-size:.8125rem; margin-right:8px; }
  .header .auth-trigger { min-height:44px; padding:8px 16px; border-radius:16px; }
  .durum-bolum { margin-bottom:32px; }
  .durum-row { gap:16px; padding:8px 16px 16px; scroll-padding-inline:16px; }
  .durum-kart { flex-basis:160px; min-height:176px; padding:16px; }
  .ds-satir { display:grid; grid-template-columns:48px minmax(0,1fr); align-items:start; }
  .ds-satir .ds-m { min-width:0; }
  .ds-satir .status-pill { grid-column:2; justify-self:start; margin-left:0; white-space:normal; line-height:1.4; }
  .ds-alt > .btn-primary, .ds-alt > .btn-ghost { flex-basis:100%; }
  .gv-izgara { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .ss-sehir { flex-wrap:wrap; }
  .ss-sehir.aktif em { line-height:1.5; }
}
@media (max-width:620px) and (max-height:700px) {
  .kr-pin { width:112px; height:112px; }
  .kr-pin .marka-c { width:80px; height:80px; }
  .kr-adim h2 { font-size:2.75rem; }
  .kr-adim { gap:16px; }
}
@media (hover:none) {
  .durum-kart:hover, .ds-satir:hover { transform:none; box-shadow:var(--cila-shadow); }
  .durum-kart:hover::after { transform:none; }
  .durum-kart:hover .dk-emoji { transform:none; background:#fff4e0; color:#e07f00; }
}
@media (prefers-reduced-motion:no-preference) {
  .durum-bolum, #vitrinWrap, .isletme-cta { animation:cilaBolumGir .4s ease-out both; }
  .durum-kart:active, .ds-satir:active, .ss-sehir:not(.aktif):active { transform:scale(.98); }
  @keyframes cilaBolumGir { from { opacity:.75; transform:translateY(8px); } to { opacity:1; transform:none; } }
}
/* En son katman: yeni ve eski bütün CSS animasyonları bu tercihe uyar. */
@media (prefers-reduced-motion:reduce) {
  *, *::before, *::after {
    animation-duration:.01ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.01ms !important;
    transition-delay:0s !important;
    scroll-behavior:auto !important;
  }
  .marka-c, .pin-pulse, .kr-konum, .ds-emoji, .durum-bolum, #vitrinWrap, .isletme-cta { animation:none !important; }
  .durum-kart:active, .ds-satir:active, .gv-oz:active, .ek-mekan:active, .ek-oy:active,
  .ic-btn:active, .nabiz-btn:active, .hk-butonlar button:active, .hk-oge:active .hk-halka { transform:none; }
}

/* ---------- Akıllı arama: "ne anladım" kartı ---------- */
.anlam-kart { border:1px solid var(--gray); background:linear-gradient(135deg,#fff,#fff8ee); border-radius:20px; padding:14px 16px; margin:0 0 18px; display:flex; flex-direction:column; gap:10px; animation:nabizGir .45s cubic-bezier(.2,.8,.2,1) both; }
.ak-satir { display:flex; gap:10px; align-items:flex-start; flex-wrap:wrap; }
.ak-baslik { display:inline-flex; align-items:center; gap:6px; font-weight:800; font-size:.82rem; color:#b45309; padding-top:5px; white-space:nowrap; }
.ak-baslik svg { width:16px; height:16px; }
.ak-etiketler { display:flex; flex-wrap:wrap; gap:6px; flex:1; }
.ak-etiket { display:inline-flex; align-items:center; gap:5px; font-size:.8rem; font-weight:700; padding:5px 10px; border-radius:20px; background:#fff; border:1px solid var(--gray); color:#1c1c1e; }
.ak-etiket svg { width:14px; height:14px; color:#e07f00; }
.ak-etiket.yerdisi { background:#111; color:#fff; border-color:#111; }
.ak-etiket.yerdisi svg { color:#ff9900; }
.ak-not { display:flex; gap:8px; align-items:flex-start; font-size:.86rem; line-height:1.5; color:#475569; margin:0; }
.ak-not svg { width:16px; height:16px; flex:none; margin-top:3px; color:#94a3b8; }
.ak-not.yerdisi { color:#1c1c1e; font-weight:600; }
.ak-not.yerdisi svg { color:#e07f00; }
.ak-sehir { align-self:flex-start; display:inline-flex; align-items:center; gap:6px; min-height:44px; padding:0 16px; border-radius:14px; border:none; background:#111; color:#fff; font:inherit; font-weight:800; font-size:.88rem; cursor:pointer; }
.ak-sehir svg { width:16px; height:16px; color:#ff9900; }
.ak-sehir:hover { background:#000; transform:translateY(-1px); }

/* ---------- Arama modu ---------- */
body.arama-modu #durumWrap, body.arama-modu #vitrinWrap, body.arama-modu .isletme-cta { display:none !important; }
body.arama-modu .hero { padding-bottom:4px; margin-bottom:0; }
body.arama-modu .hero-content .hikaye-bolum, body.arama-modu .nabiz { display:none; }
#searchInput::-webkit-search-cancel-button { -webkit-appearance:none; appearance:none; width:20px; height:20px; cursor:pointer;
  background:no-repeat center/14px url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2.5' stroke-linecap='round'%3E%3Cpath d='M18 6 6 18M6 6l12 12'/%3E%3C/svg%3E"); }

.kart-neden { display:flex; align-items:center; gap:6px; margin-top:10px; padding:7px 10px; border-radius:12px; background:#fff7ec; color:#9a5700; font-size:.8rem; font-weight:700; }
.kart-neden svg { width:14px; height:14px; flex:none; }

/* ---------- Hero: marka vaadi + sade arama (v28) ---------- */
.hero-alt { color:#64748b; font-size:1.02rem; line-height:1.5; max-width:560px; margin:-18px auto 22px; }
@media (max-width:620px){
  .hero-alt { font-size:.9rem; margin:-4px auto 14px; padding:0 8px; }
  .hero-title { font-size:2rem; line-height:1.08; }
  .hero-title span { display:block; }
  /* Mobilde kategori açılır menüsü gizli: mod düğmeleri ve liste üstündeki çipler aynı işi yapar, arama tek satır kalır */
  .search-bar .combo { display:none; }
  .search-bar { flex-wrap:nowrap; }
}

/* Nabız: mobilde tek satırlık şerit (kutu değil) */
@media (max-width:620px){
  .nabiz { display:flex; flex-wrap:nowrap; width:100%; max-width:none; justify-content:flex-start; margin:0 0 12px; padding:6px 6px 6px 12px; border-radius:14px; font-size:.8rem; }
  .nabiz > span:not(.nabiz-dot):not(.nabiz-saat):not(.nabiz-ay) { flex:1; min-width:0; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; text-align:left; }
  .nabiz.uyku > span:last-child { white-space:normal; }
  .nabiz-btn { min-height:34px; padding:0 12px; }
}

@media (max-width:620px){ .hero-content .hikaye-bolum { margin-bottom:2px; } .hero-title { margin-top:4px; } }

.empty-state .bos-alt { color:#94a3b8; font-size:.88rem; font-weight:500; }

/* Tablette de kategori menüsü gizli: mod düğmeleri ve çipler aynı işi yapar */
@media (max-width:860px){ .search-bar .combo { display:none; } .search-bar { flex-wrap:nowrap; } }

/* ---------- Kart cilası (v28) ---------- */
#vitrinWrap.az-mekan { display:none !important; }
/* "Yeni" rozeti aslında "henüz puan yok" demekti; yanıltıcıydı. Puan gelince yıldız görünür. */
.card-rating.new { display:none; }
.card-reviews { font-weight:800; letter-spacing:.5px; color:#475569; }
