/* =====================================================
   CIVARI — "Vaay" katmanı stilleri (v26)
   Marka: turuncu #ff9900 · beyaz · gri #d2d2d1
   ===================================================== */

/* ---------- Kapalı rozeti: kırmızı alarm değil, sakin gri + açılış saati ---------- */
.status-pill.closed { background:#f1f2f4; color:#475569; }
.status-pill.closed .dot { background:#94a3b8; }

/* ---------- Ankara nabzı ---------- */
.nabiz { display:inline-flex; align-items:center; gap:10px; flex-wrap:wrap; justify-content:center;
  margin:-14px auto 22px; padding:8px 8px 8px 16px; border-radius:40px; font-size:.92rem; font-weight:500;
  background:#fff; border:1px solid var(--gray); color:var(--ink,#1c1c1e); box-shadow:0 6px 24px -14px rgba(0,0,0,.25);
  min-height:44px; animation:nabizGir .6s cubic-bezier(.2,.8,.2,1) both; max-width:calc(100% - 24px); }
.nabiz:empty { display:none; }
.nabiz b { font-weight:800; }
.nabiz-saat { font-variant-numeric:tabular-nums; font-weight:800; color:var(--primary-dark); }
.nabiz-dot { width:9px; height:9px; border-radius:50%; background:#16a34a; box-shadow:0 0 0 0 rgba(22,163,74,.55); animation:nabizAtim 1.6s infinite; flex:none; display:inline-block; }
.nabiz.uyku { padding-right:16px; background:linear-gradient(135deg,#fff,#fff7ec); }
.nabiz-ay { font-size:1.05rem; animation:ayYuz 4s ease-in-out infinite; }
.nabiz-btn { display:inline-flex; align-items:center; gap:4px; border:none; background:var(--primary); color:#fff; font-weight:800; font-size:.82rem;
  padding:7px 14px; border-radius:30px; cursor:pointer; transition:.2s; font-family:inherit; }
.nabiz-btn i { width:15px; height:15px; }
.nabiz-btn:hover { background:var(--primary-dark); transform:translateX(2px); }
.nabiz-link { border:none; background:none; padding:0; font:inherit; font-weight:800; color:var(--primary-dark); cursor:pointer; text-decoration:underline; text-underline-offset:3px; }
@keyframes nabizAtim { 0%{ box-shadow:0 0 0 0 rgba(22,163,74,.55);} 70%{ box-shadow:0 0 0 9px rgba(22,163,74,0);} 100%{ box-shadow:0 0 0 0 rgba(22,163,74,0);} }
@keyframes nabizGir { from{ opacity:0; transform:translateY(8px) scale(.97);} to{ opacity:1; transform:none;} }
@keyframes ayYuz { 0%,100%{ transform:rotate(-8deg);} 50%{ transform:rotate(8deg) translateY(-2px);} }

.mood-pill.acik-pill { gap:8px; }
.mood-pill.acik-pill.active .nabiz-dot { background:#fff; box-shadow:none; animation:none; }

.empty-state.uyku-bos { padding:46px 20px; }
.uyku-bos .ub-ay { font-size:3rem; animation:ayYuz 4s ease-in-out infinite; }
.uyku-bos p { margin:10px 0 18px; line-height:1.6; }

/* ---------- Hikâye şeridi ---------- */
.hikaye-bolum { margin-top:6px; margin-bottom:6px; }
.hikaye-row { display:flex; gap:14px; overflow-x:auto; padding:10px 4px 14px; scroll-snap-type:x proximity;
  -webkit-overflow-scrolling:touch; scrollbar-width:none; }
.hikaye-row::-webkit-scrollbar { display:none; }
@media (min-width:861px){ .hikaye-row { justify-content:center; flex-wrap:wrap; } }
.hk-oge { flex:none; width:82px; display:flex; flex-direction:column; align-items:center; gap:7px; background:none; border:none; cursor:pointer;
  scroll-snap-align:start; font-family:inherit; padding:0; -webkit-tap-highlight-color:transparent; }
.hk-halka { position:relative; width:76px; height:76px; border-radius:50%; padding:3px;
  background:conic-gradient(from 210deg, #ff9900, #ffb84d, #ff6a00, #ff9900); transition:transform .25s cubic-bezier(.2,.8,.2,1); }
.hk-oge:hover .hk-halka { transform:scale(1.06) rotate(-3deg); }
.hk-oge:active .hk-halka { transform:scale(.94); }
.hk-oge.goruldu .hk-halka { background:var(--gray); }
.hk-halka.ozel { background:conic-gradient(from 0deg, #ff9900, #fff0d6, #ff9900); animation:halkaDon 6s linear infinite; }
.hk-halka.ozel.ekip { background:conic-gradient(from 0deg, #111, #ff9900, #111); animation-duration:8s; }
.hk-halka.ozel .hk-ic { animation:halkaDon 6s linear infinite reverse; }
.hk-halka.ozel.ekip .hk-ic { animation-duration:8s; }
@keyframes halkaDon { to{ transform:rotate(360deg);} }
.hk-ic { width:100%; height:100%; border-radius:50%; border:3px solid #fff; display:flex; align-items:center; justify-content:center;
  background:linear-gradient(135deg, var(--cc,#ff9900), color-mix(in srgb, var(--cc,#ff9900) 55%, #000)); background-size:cover; background-position:center;
  color:#fff; font-family:var(--font-display); font-weight:800; font-size:1.7rem; }
.hk-ikon { background:#fff; color:#111; font-size:1.9rem; }
.hk-canli { position:absolute; left:50%; bottom:-5px; transform:translateX(-50%); background:#16a34a; color:#fff; font-size:.58rem; font-weight:900;
  letter-spacing:.8px; padding:2px 7px; border-radius:10px; border:2px solid #fff; }
.hk-ad { font-size:.76rem; font-weight:600; color:var(--ink,#1c1c1e); max-width:82px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.hk-ozel .hk-ad { font-weight:800; }

/* ---------- Ortak tam ekran katman ---------- */
.vy-ekran { position:fixed; inset:0; z-index:4000; display:flex; align-items:center; justify-content:center; opacity:0; visibility:hidden;
  transition:opacity .28s ease, visibility .28s; }
.vy-ekran.acik { opacity:1; visibility:visible; }

/* ---------- Hikâye görüntüleyici ---------- */
.hk-ekran { background:#0b0b0c; }
.hk-bulanik { position:absolute; inset:-40px; background:var(--cc,#222) center/cover; filter:blur(40px) brightness(.45) saturate(1.3); transform:scale(1.1); }
.hk-sahne { position:relative; width:min(100vw, calc(92vh * 9 / 16)); height:min(92vh, calc(100vw * 16 / 9)); border-radius:22px; overflow:hidden;
  background:#111; box-shadow:0 40px 90px -20px rgba(0,0,0,.8); touch-action:none; user-select:none; -webkit-user-select:none;
  transition:transform .25s ease; transform:scale(.94); }
.hk-ekran.acik .hk-sahne { transform:none; }
.hk-sahne.kay-sol { animation:kaySol .35s cubic-bezier(.2,.8,.2,1); }
.hk-sahne.kay-sag { animation:kaySag .35s cubic-bezier(.2,.8,.2,1); }
@keyframes kaySol { from{ transform:translateX(40px) rotateY(-12deg); opacity:.4;} to{ transform:none; opacity:1;} }
@keyframes kaySag { from{ transform:translateX(-40px) rotateY(12deg); opacity:.4;} to{ transform:none; opacity:1;} }
@media (max-width:620px){
  .hk-sahne { width:100vw; height:100dvh; height:100vh; border-radius:0; }
  @supports (height:100dvh){ .hk-sahne { height:100dvh; } }
}
.hk-cubuklar { position:absolute; top:calc(10px + env(safe-area-inset-top,0px)); left:10px; right:10px; display:flex; gap:4px; z-index:5; }
.hk-cubuk { flex:1; height:3px; border-radius:3px; background:rgba(255,255,255,.35); overflow:hidden; }
.hk-cubuk i { display:block; height:100%; width:0; background:#fff; border-radius:3px; }
.hk-ust { position:absolute; top:calc(22px + env(safe-area-inset-top,0px)); left:12px; right:8px; display:flex; align-items:center; gap:10px; z-index:5; color:#fff; }
.hk-mini { width:38px; height:38px; flex:none; border-radius:50%; border:2px solid #fff; background:linear-gradient(135deg,var(--cc,#ff9900),#000) center/cover;
  display:flex; align-items:center; justify-content:center; font-family:var(--font-display); font-weight:800; }
.hk-mini[style*="background-image"] { background-size:cover; }
.hk-kimlik { flex:1; min-width:0; line-height:1.2; text-shadow:0 1px 6px rgba(0,0,0,.5); }
.hk-kimlik b { display:block; font-size:.98rem; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.hk-kimlik small { font-size:.78rem; opacity:.92; }
.hk-durum.open, .hk-durum.soon { color:#86efac; font-weight:700; }
.hk-kapat { width:44px; height:44px; border:none; background:transparent; color:#fff; font-size:1.3rem; cursor:pointer; border-radius:50%; }
.hk-kapat:hover { background:rgba(255,255,255,.12); }
.hk-medya { position:absolute; inset:0; }
.hk-medya::after { content:''; position:absolute; inset:0; pointer-events:none;
  background:linear-gradient(180deg, rgba(0,0,0,.55) 0%, rgba(0,0,0,0) 22%, rgba(0,0,0,0) 55%, rgba(0,0,0,.82) 100%); }
.hk-foto { width:100%; height:100%; object-fit:cover; animation:kenBurns 7s ease-out both; }
@keyframes kenBurns { from{ transform:scale(1.12) translate(1.5%, 1%);} to{ transform:scale(1) translate(0,0);} }
.hk-kart { position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; padding:30px; color:#fff;
  background:radial-gradient(120% 80% at 50% 10%, color-mix(in srgb, var(--cc) 85%, #fff) 0%, var(--cc) 45%, color-mix(in srgb, var(--cc) 40%, #000) 100%); }
.hk-kart-harf { font-family:var(--font-display); font-size:7rem; font-weight:800; line-height:1; opacity:.22; position:absolute; top:12%; animation:harfSuz 6.5s ease-out both; }
@keyframes harfSuz { from{ transform:scale(1.4); opacity:0;} to{ transform:scale(1); opacity:.22;} }
.hk-kart-kat { letter-spacing:4px; text-transform:uppercase; font-size:.75rem; font-weight:800; opacity:.85; margin-bottom:10px; animation:yukari .6s .1s both; }
.hk-kart-ad { font-family:var(--font-display); font-size:clamp(2rem,9vw,2.8rem); font-weight:800; letter-spacing:-1px; line-height:1.05; animation:yukari .6s .2s both; }
.hk-kart-adres { margin-top:16px; font-size:.92rem; opacity:.9; max-width:300px; animation:yukari .6s .35s both; }
.hk-kart-durum { margin-top:18px; display:inline-block; padding:8px 16px; border-radius:30px; background:rgba(255,255,255,.18); font-weight:800; font-size:.88rem; animation:yukari .6s .5s both; }
.hk-kart-durum.open { background:#16a34a; }
@keyframes yukari { from{ transform:translateY(16px); opacity:0;} to{ transform:none; opacity:1;} }
.hk-alt-panel { position:absolute; left:0; right:0; bottom:0; z-index:5; padding:18px 16px calc(18px + env(safe-area-inset-bottom,0px)); color:#fff; }
.hk-aciklama { font-size:.92rem; line-height:1.5; margin-bottom:14px; text-shadow:0 1px 8px rgba(0,0,0,.6); }
.hk-aciklama:empty { display:none; }
.hk-butonlar { display:flex; gap:8px; }
.hk-butonlar button { flex:1; min-height:46px; border-radius:14px; border:1px solid rgba(255,255,255,.35); background:rgba(255,255,255,.14); color:#fff;
  font-weight:800; font-family:inherit; font-size:.92rem; cursor:pointer; -webkit-backdrop-filter:blur(10px); backdrop-filter:blur(10px); transition:.2s; }
.hk-butonlar button:first-child { background:var(--primary); border-color:var(--primary); }
.hk-butonlar button:last-child { flex:0 0 46px; font-size:1.1rem; }
.hk-butonlar button:active { transform:scale(.96); }
.hk-ipucu { position:absolute; top:calc(70px + env(safe-area-inset-top,0px)); left:50%; transform:translateX(-50%); z-index:4; font-size:.72rem; color:#fff;
  background:rgba(0,0,0,.35); padding:5px 12px; border-radius:20px; white-space:nowrap; pointer-events:none; animation:ipucuSol 3.5s 1s both; }
@keyframes ipucuSol { 0%{opacity:0} 15%{opacity:1} 80%{opacity:1} 100%{opacity:0} }
.hk-ekran.duraklatildi .hk-ust, .hk-ekran.duraklatildi .hk-alt-panel, .hk-ekran.duraklatildi .hk-cubuklar { opacity:0; transition:opacity .2s; }
.hk-ekran.duraklatildi .hk-foto { animation-play-state:paused; }

/* Detay penceresindeki "Hikâye olarak izle" */
.detail-img { position:relative; }
.hk-izle { position:absolute; left:14px; bottom:14px; z-index:3; display:inline-flex; align-items:center; gap:8px; border:none; cursor:pointer; font-family:inherit;
  background:rgba(0,0,0,.55); color:#fff; font-weight:800; font-size:.82rem; padding:8px 14px 8px 8px; border-radius:30px;
  -webkit-backdrop-filter:blur(10px); backdrop-filter:blur(10px); transition:.2s; }
.hk-izle:hover { background:#000; transform:translateY(-2px); }
.hk-izle-halka { width:22px; height:22px; border-radius:50%; background:conic-gradient(#ff9900,#ffd08a,#ff9900); position:relative; }
.hk-izle-halka::after { content:''; position:absolute; inset:4px; border-radius:50%; background:#fff;
  clip-path:polygon(35% 25%, 80% 50%, 35% 75%); }

/* ---------- Modal kartı (Bana Seç + Ekiple) ---------- */
.vy-modal { background:rgba(10,10,12,.55); -webkit-backdrop-filter:blur(6px); backdrop-filter:blur(6px); padding:16px; }
.vy-kart { position:relative; width:100%; max-width:460px; max-height:calc(100dvh - 32px); overflow:auto; background:#fff; border-radius:26px;
  padding:28px 22px 22px; box-shadow:0 40px 80px -24px rgba(0,0,0,.45); transform:translateY(24px) scale(.97); transition:transform .35s cubic-bezier(.2,.9,.25,1.15); }
.vy-ekran.acik .vy-kart { transform:none; }
@media (max-width:620px){
  .vy-modal { align-items:flex-end; padding:0; }
  .vy-kart { max-width:none; border-radius:26px 26px 0 0; padding-bottom:calc(22px + env(safe-area-inset-bottom,0px)); max-height:92dvh; transform:translateY(100%); }
  .vy-kart::before { content:''; position:absolute; top:8px; left:50%; width:42px; height:5px; border-radius:5px; background:var(--gray); transform:translateX(-50%); }
}
.vy-kapat { position:absolute; top:12px; right:12px; width:40px; height:40px; border-radius:50%; border:none; background:#f3f4f6; cursor:pointer; font-size:1rem; color:#334155; z-index:2; }
.vy-kapat:hover { background:#e5e7eb; }
.vy-kart .btn-ghost { padding:11px 18px; font-size:.9rem; }

/* ---------- Bana Seç ---------- */
.sc-bas { text-align:center; margin-bottom:14px; }
.sc-zar { font-size:2.6rem; display:inline-block; animation:zarSalla 2.6s ease-in-out infinite; }
@keyframes zarSalla { 0%,70%,100%{ transform:rotate(0);} 75%{ transform:rotate(-18deg) translateY(-4px);} 85%{ transform:rotate(14deg);} 92%{ transform:rotate(-6deg);} }
.sc-bas h3 { font-family:var(--font-display); font-size:1.6rem; font-weight:800; letter-spacing:-.5px; margin:4px 0 4px; }
.sc-bas p { color:var(--muted); font-size:.92rem; }
.sc-filtre { display:flex; gap:7px; overflow-x:auto; padding:2px 2px 10px; scrollbar-width:none; justify-content:center; flex-wrap:wrap; }
.sc-filtre button { border:1px solid var(--gray); background:#fff; border-radius:30px; padding:8px 13px; font-weight:700; font-size:.84rem; cursor:pointer; font-family:inherit; min-height:38px; }
.sc-filtre button.active { background:#111; color:#fff; border-color:#111; }
.sc-makine { position:relative; margin:8px 0 16px; border-radius:20px; padding:10px; background:linear-gradient(180deg,#111,#2a2a2e); box-shadow:inset 0 2px 10px rgba(0,0,0,.6); }
.sc-makine.gizli { display:none; }
.sc-pencere { height:204px; overflow:hidden; border-radius:14px; background:#fff; position:relative;
  -webkit-mask-image:linear-gradient(180deg, transparent 0, #000 28%, #000 72%, transparent 100%); mask-image:linear-gradient(180deg, transparent 0, #000 28%, #000 72%, transparent 100%); }
.sc-cerceve { position:absolute; left:6px; right:6px; top:50%; height:68px; transform:translateY(-50%); border:3px solid var(--primary); border-radius:14px;
  box-shadow:0 0 0 4px rgba(255,153,0,.18), 0 0 30px rgba(255,153,0,.35); pointer-events:none; }
.sc-makine.kazandi .sc-cerceve { animation:kazandi .9s ease; }
@keyframes kazandi { 0%,100%{ box-shadow:0 0 0 4px rgba(255,153,0,.18);} 30%{ box-shadow:0 0 0 14px rgba(255,153,0,.0), 0 0 60px rgba(255,153,0,.9);} 50%{ transform:translateY(-50%) scale(1.03);} }
.sc-serit { will-change:transform; }
.sc-satir { height:68px; display:flex; align-items:center; gap:12px; padding:0 16px; }
.sc-k { width:44px; height:44px; flex:none; border-radius:12px; 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; }
.sc-ad { flex:1; font-weight:800; font-size:1.02rem; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; color:#111; }
.sc-kat { font-size:.75rem; color:var(--muted); font-weight:600; }
.sc-cevir { font-size:1.05rem; min-height:54px; }
.sc-cevir:disabled { opacity:.75; cursor:default; }
.sc-sonuc { margin:4px 0 14px; border:1px solid var(--gray); border-radius:20px; overflow:hidden; animation:sonucGir .5s cubic-bezier(.2,.9,.25,1.2) both; }
.sc-sonuc.gizli { display:none; }
@keyframes sonucGir { from{ transform:scale(.9) translateY(14px); opacity:0;} to{ transform:none; opacity:1;} }
.scs-kapak { height:150px; position:relative; display:flex; align-items:center; justify-content:center; color:#fff; font-family:var(--font-display); font-size:4rem; font-weight:800;
  background:linear-gradient(135deg,var(--cc,#ff9900),color-mix(in srgb,var(--cc,#ff9900) 45%,#000)); background-size:cover; background-position:center; }
.scs-kapak em { position:absolute; top:12px; left:12px; font-style:normal; font-family:var(--font-body); font-size:.72rem; font-weight:800; letter-spacing:1px;
  background:var(--primary); padding:5px 11px; border-radius:20px; text-transform:uppercase; }
.scs-govde { padding:14px 16px 16px; }
.scs-govde h4 { font-family:var(--font-display); font-size:1.4rem; font-weight:800; letter-spacing:-.5px; }
.scs-govde p { color:var(--muted); font-size:.88rem; margin:2px 0 8px; }
.scs-btn { display:grid; grid-template-columns:1fr 1fr; gap:8px; margin-top:14px; }
.scs-btn .btn-primary { grid-column:1 / -1; padding:14px; }

/* ---------- Ekiple Karar Ver ---------- */
.ek-bas { text-align:center; margin-bottom:16px; }
.ek-bas.kucuk { margin-bottom:12px; }
.ek-emoji { font-size:2.6rem; animation:zarSalla 3s ease-in-out infinite; display:inline-block; }
.ek-bas h3 { font-family:var(--font-display); font-size:1.55rem; font-weight:800; letter-spacing:-.5px; margin:4px 0 6px; padding:0 30px; }
.ek-bas p { color:var(--muted); font-size:.92rem; line-height:1.55; }
.ek-bas .btn-primary { margin-top:16px; }
.ek-rozet { display:inline-flex; align-items:center; gap:7px; font-size:.7rem; font-weight:900; letter-spacing:1.2px; color:#15803d; background:rgba(22,163,74,.1); padding:5px 12px; border-radius:20px; }
.ek-baslik { width:100%; min-height:48px; border:1px solid var(--gray); border-radius:14px; padding:0 14px; font-family:inherit; font-size:16px; margin-bottom:12px; outline:none; }
.ek-baslik:focus { border-color:var(--primary); box-shadow:0 0 0 4px rgba(255,153,0,.15); }
.ek-secim { display:flex; flex-direction:column; gap:8px; max-height:44vh; overflow:auto; padding:2px; }
.ek-mekan, .ek-oy { position:relative; 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; transition:.18s; min-height:62px; overflow:hidden; color:inherit; }
.ek-mekan:hover, .ek-oy:hover:not(:disabled) { border-color:var(--primary); }
.ek-mekan.secili { border-color:var(--primary); background:#fff8ee; box-shadow:0 6px 18px -10px rgba(255,153,0,.7); }
.ek-mekan:active, .ek-oy:active { transform:scale(.98); }
.ek-k { width:42px; height:42px; flex:none; border-radius:12px; position:relative; z-index:1; 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; }
.ek-m { flex:1; min-width:0; position:relative; z-index:1; }
.ek-m b { display:block; font-size:.98rem; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.ek-m small { color:var(--muted); font-size:.78rem; }
.ek-acik { color:#15803d; font-style:normal; font-weight:700; }
.ek-tik { width:26px; height:26px; flex:none; border-radius:50%; border:2px solid var(--gray); display:flex; align-items:center; justify-content:center; color:#fff; font-weight:900; font-size:.85rem; }
.ek-mekan.secili .ek-tik { background:var(--primary); border-color:var(--primary); animation:tikPat .3s cubic-bezier(.2,.9,.3,1.5); }
@keyframes tikPat { from{ transform:scale(.4);} to{ transform:scale(1);} }
.ek-alt { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-top:14px; flex-wrap:wrap; }
.ek-alt span { color:var(--muted); font-weight:700; font-size:.88rem; }
.ek-alt .btn-primary { width:auto; padding:14px 22px; flex:1; max-width:240px; }
.ek-alt .btn-primary:disabled { opacity:.45; cursor:not-allowed; }
.ek-paylas { background:#fff8ee; border:1px dashed var(--primary); border-radius:18px; padding:12px; margin-bottom:14px; animation:sonucGir .5s both; }
.ek-link { display:flex; align-items:center; gap:8px; background:#fff; border-radius:12px; padding:6px 6px 6px 12px; border:1px solid var(--gray); }
.ek-link span { flex:1; font-weight:800; font-size:.88rem; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.ek-link button { border:none; background:#111; color:#fff; font-weight:800; border-radius:9px; padding:9px 14px; cursor:pointer; font-family:inherit; }
.ek-paylas-btn { display:flex; gap:8px; margin-top:10px; }
.ek-wa { flex:1; display:flex; align-items:center; justify-content:center; min-height:48px; border-radius:14px; background:#25d366; color:#fff; font-weight:800; text-decoration:none; }
.ek-wa:active { transform:scale(.97); }
.ek-oylar { display:flex; flex-direction:column; gap:9px; }
.ek-dolu { position:absolute; left:0; top:0; bottom:0; background:linear-gradient(90deg, rgba(255,153,0,.16), rgba(255,153,0,.28)); transition:width .7s cubic-bezier(.2,.8,.2,1); z-index:0; }
.ek-oy.lider { border-color:var(--primary); }
.ek-oy.benim { border-color:#111; box-shadow:0 0 0 2px #111 inset; }
.ek-oy.benim .ek-m small::after { content:' · senin oyun'; font-weight:800; color:#111; }
.ek-yuzde { position:relative; z-index:1; text-align:right; font-family:var(--font-display); font-weight:800; font-size:1.15rem; line-height:1.1; }
.ek-yuzde small { display:block; font-family:var(--font-body); font-size:.7rem; color:var(--muted); font-weight:600; }
.ek-yukleniyor { display:flex; align-items:center; justify-content:center; gap:10px; padding:40px 0; color:var(--muted); font-weight:700; }

/* ---------- İşletme bölümü ---------- */
.isletme-cta { padding:30px 0 70px; }
.ic-ic { position:relative; display:grid; grid-template-columns:1.15fr .85fr; gap:30px; align-items:center; overflow:hidden;
  background:#0d0d0f; color:#fff; border-radius:32px; padding:48px; }
.ic-ic::before { content:''; position:absolute; width:520px; height:520px; right:-160px; top:-200px; border-radius:50%;
  background:radial-gradient(circle, rgba(255,153,0,.45), rgba(255,153,0,0) 65%); pointer-events:none; }
.ic-rozet { display:inline-block; font-size:.72rem; font-weight:900; letter-spacing:2px; color:var(--primary); border:1px solid rgba(255,153,0,.45); padding:6px 12px; border-radius:20px; }
.ic-ic h3 { font-family:var(--font-display); font-size:clamp(1.8rem,4vw,2.7rem); font-weight:800; letter-spacing:-1.2px; line-height:1.08; margin:16px 0 12px; }
.ic-ic h3 span { color:var(--primary); }
.ic-ic > div > p { color:#c7c7cc; font-size:1rem; line-height:1.6; max-width:480px; }
.ic-adimlar { list-style:none; display:grid; gap:12px; margin:22px 0 26px; counter-reset:adim; padding:0; }
.ic-adimlar li { display:flex; gap:14px; align-items:center; counter-increment:adim; }
.ic-adimlar li::before { content:counter(adim); width:34px; height:34px; flex:none; border-radius:50%; background:rgba(255,153,0,.15); color:var(--primary);
  display:flex; align-items:center; justify-content:center; font-weight:900; border:1px solid rgba(255,153,0,.4); }
.ic-adimlar b { display:block; font-size:.98rem; }
.ic-adimlar span { color:#a1a1aa; font-size:.86rem; }
.ic-btn { display:inline-flex; align-items:center; gap:10px; border:none; background:var(--primary); color:#fff; font-weight:800; font-size:1rem; font-family:inherit;
  padding:16px 28px; border-radius:16px; cursor:pointer; min-height:54px; box-shadow:0 14px 30px -10px rgba(255,153,0,.7); transition:.2s; }
.ic-btn:hover { background:var(--primary-dark); transform:translateY(-2px); }
.ic-not { display:block; margin-top:12px; color:#8e8e93; font-size:.8rem; }
.ic-telefon { position:relative; justify-self:center; width:250px; aspect-ratio:9/18.5; border-radius:38px; background:#1c1c1e; padding:10px;
  box-shadow:0 0 0 2px #2c2c2e, 0 40px 70px -20px rgba(0,0,0,.8); transform:rotate(6deg); animation:telefonYuz 6s ease-in-out infinite; }
@keyframes telefonYuz { 0%,100%{ transform:rotate(6deg) translateY(0);} 50%{ transform:rotate(4deg) translateY(-10px);} }
.ic-ekran { width:100%; height:100%; border-radius:30px; background:#fff; overflow:hidden; color:#111; display:flex; flex-direction:column; }
.ic-kapak { height:46%; background:linear-gradient(135deg,#ff9900,#ff6a00); display:flex; align-items:flex-end; padding:14px; position:relative; }
.ic-kapak::before { content:''; width:44px; height:44px; background:no-repeat center/contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M10 2v2'/%3E%3Cpath d='M14 2v2'/%3E%3Cpath d='M16 8a1 1 0 0 1 1 1v8a4 4 0 0 1-4 4H7a4 4 0 0 1-4-4V9a1 1 0 0 1 1-1h14a4 4 0 1 1 0 8h-1'/%3E%3Cpath d='M6 2v2'/%3E%3C/svg%3E"); position:absolute; right:16px; top:16px; font-size:2.2rem; animation:ayYuz 3s ease-in-out infinite; }
.ic-kapak b { font-family:var(--font-display); color:#fff; font-size:1.25rem; line-height:1.1; text-shadow:0 2px 10px rgba(0,0,0,.25); }
.ic-govde { padding:14px; display:grid; gap:9px; }
.ic-satir { height:10px; border-radius:6px; background:#f1f2f4; }
.ic-satir.k { width:60%; }
.ic-rozetler { display:flex; gap:6px; flex-wrap:wrap; }
.ic-rozetler span { font-size:.66rem; font-weight:800; padding:4px 9px; border-radius:20px; background:rgba(22,163,74,.12); color:#15803d; }
.ic-rozetler span + span { background:#fff3e0; color:#b45309; }
.ic-goz { display:flex; align-items:center; gap:6px; font-size:.72rem; font-weight:800; color:#111; background:#fff8ee; border-radius:10px; padding:8px 10px; }
@media (max-width:860px){
  .isletme-cta { padding:10px 0 40px; }
  .ic-ic { grid-template-columns:1fr; padding:32px 22px; border-radius:26px; gap:10px; }
  .ic-telefon { width:190px; margin-top:6px; }
  .ic-btn { width:100%; justify-content:center; }
}

/* ---------- Hesap silme ---------- */
.hs-alan { margin-top:26px; padding-top:18px; border-top:1px solid var(--border); display:flex; align-items:center; justify-content:space-between; gap:10px; flex-wrap:wrap; }
.hs-btn { display:inline-flex; align-items:center; gap:7px; border:1px solid #fecaca; background:#fff; color:#dc2626; font-weight:700; border-radius:12px; padding:10px 14px;
  cursor:pointer; font-family:inherit; min-height:44px; }
.hs-btn i { width:16px; height:16px; }
.hs-btn:hover { background:#fef2f2; }
.hs-alan a { color:var(--muted); font-size:.85rem; }

/* ---------- Sahte sosyal giriş düğmeleri gizli; gerçekleri sosyal.js doldurur ---------- */
.sosyal-alan:empty, .sosyal-alan:empty + .auth-divider { display:none; }

/* ---------- Mobil uygulama içindeyken ---------- */
html.uygulamada .footer-bottom { padding-bottom:calc(90px + env(safe-area-inset-bottom,0px)); }
html.uygulamada body { -webkit-user-select:none; user-select:none; -webkit-touch-callout:none; }
html.uygulamada input, html.uygulamada textarea { -webkit-user-select:text; user-select:text; }

@media (prefers-reduced-motion: reduce){
  .hk-foto, .hk-halka.ozel, .hk-halka.ozel .hk-ic, .sc-zar, .ek-emoji, .ic-telefon, .nabiz-dot, .nabiz-ay { animation:none !important; }
}

/* Yorum şikayet / engelle */
.rv-mod { display:inline-flex; gap:12px; margin-top:6px; }
.rv-mod button { background:none; border:none; padding:4px 0; font:inherit; font-size:.76rem; color:var(--muted); cursor:pointer; text-decoration:underline; text-underline-offset:2px; min-height:32px; }
.rv-mod button:hover { color:#dc2626; }
.hs-engel { margin-top:12px; background:none; border:none; color:var(--muted); font:inherit; font-size:.85rem; text-decoration:underline; cursor:pointer; min-height:40px; }

/* ---------- Hikâyeler hero'nun tepesinde ---------- */
.hero-content .hikaye-bolum { margin:0 auto 18px; max-width:100%; }
.hero-content .hikaye-row { text-align:left; }

/* ---------- Mobil düzen düzeltmeleri ---------- */
@media (max-width:620px){
  .hero { padding-top:calc(78px + env(safe-area-inset-top,0px)); }
  .hero-content .hikaye-bolum { margin:0 -16px 12px; }
  .hero-content .hikaye-row { padding:6px 16px 10px; gap:12px; }
  .hk-oge { width:70px; }
  .hk-halka { width:66px; height:66px; }
  .hk-ic { font-size:1.4rem; }
  .hk-ikon { font-size:1.6rem; }
  .hk-ad { font-size:.72rem; max-width:70px; }
  .hero-title { font-size:1.85rem; margin-bottom:12px; letter-spacing:-1px; }
  .nabiz { margin:0 auto 14px; font-size:.8rem; gap:7px; padding:6px 6px 6px 12px; min-height:38px; flex-wrap:nowrap; text-align:left; }
  .nabiz.uyku { padding-right:12px; }
  .nabiz > span:last-of-type { min-width:0; }
  .nabiz-btn { padding:7px 11px; font-size:.76rem; flex:none; }
  .mood-bar { flex-wrap:nowrap; overflow-x:auto; justify-content:flex-start; margin:14px -16px 0; padding:2px 16px 8px; scrollbar-width:none; -webkit-overflow-scrolling:touch; }
  .mood-bar::-webkit-scrollbar { display:none; }
  .mood-pill { flex:none; white-space:nowrap; }
  .ai-hint { display:none; }
}

/* iPhone'da 16px altı yazı kutusuna dokununca sayfa yakınlaşıp kayıyordu */
@media (max-width:860px){
  select, textarea, input:not([type=checkbox]):not([type=radio]):not([type=file]) { font-size:16px !important; }
}
.hk-ekran { overflow:hidden; }
/* Tam ekran katmanlar alt menünün ve modalların üstünde; açıkken alt menü saklanır */
.vy-ekran { z-index:7000; }
body.modal-open .mobile-nav { transform:translateY(110%); transition:transform .25s ease; }
.mobile-nav { transition:transform .25s ease; }
.isletme-not svg { flex:none; width:16px; height:16px; margin-top:2px; }

/* =====================================================
   C-003 — Mobil cila: hikâye, seçim pencereleri ve işletme
   Ölçüler çekirdek dosyadaki ortak cila değişkenlerini kullanır.
   ===================================================== */
.nabiz { box-shadow:var(--cila-shadow); line-height:1.5; }
.nabiz-btn, .nabiz-link { min-height:44px; min-width:44px; }
.nabiz-btn { justify-content:center; border-radius:16px; color:var(--cila-ink); }
.nabiz-btn:hover { color:var(--cila-ink); transform:none; }
.nabiz-link { color:var(--cila-focus); }
.hk-ad { white-space:normal; overflow:visible; overflow-wrap:anywhere; line-height:1.35; }
.hk-oge { gap:8px; }
.hk-izle { min-height:44px; max-width:calc(100% - 28px); }
.hk-kimlik b { white-space:normal; overflow-wrap:anywhere; line-height:1.35; }
.hk-kapat { flex:none; }
.hk-butonlar button { border-radius:16px; }
.hk-butonlar button:first-child { color:var(--cila-ink); }
.hk-butonlar button:not(:last-child) { min-width:0; padding:8px; }
.hk-kart-ad, .hk-kart-adres, .hk-aciklama { overflow-wrap:anywhere; }

.vy-kart {
  border-radius:var(--cila-radius-lg);
  padding:64px 24px 24px;
  box-shadow:var(--shadow-lg);
  overscroll-behavior:contain;
  scrollbar-gutter:stable;
}
.vy-kapat {
  top:12px; right:12px; width:44px; height:44px;
  display:flex; align-items:center; justify-content:center;
  border:1px solid var(--cila-line); background:#fff; color:var(--cila-ink);
}
.vy-kart .btn-ghost { min-height:48px; border-radius:16px; border:1px solid var(--cila-line); background:#fff; color:var(--cila-ink); }
.vy-kart .btn-ghost:hover { background:var(--cila-tint); border-color:var(--primary); }
.sc-bas, .ek-bas { margin-bottom:16px; }
.sc-bas h3, .ek-bas h3 { font-size:1.625rem; line-height:1.15; margin:8px 0; }
.ek-bas h3 { padding:0; }
.sc-bas p, .ek-bas p { line-height:1.5; }
.sc-filtre { gap:8px; padding:4px 4px 16px; }
.sc-filtre button {
  min-height:44px; min-width:44px; padding:8px 16px; border-radius:16px;
  color:var(--cila-ink); line-height:1.35;
}
.sc-filtre button.active { background:var(--primary); border-color:var(--primary); color:var(--cila-ink); }
.sc-filtre button.active svg { color:currentColor; }
.sc-makine { margin:0 0 16px; border-radius:20px; padding:8px; }
/* Çark satırının 68 px yüksekliği JavaScript hesabının parçasıdır; korunur. */
.sc-satir { padding:0 8px; gap:8px; min-width:0; }
.sc-ad { min-width:0; font-size:.9375rem; white-space:normal; overflow-wrap:anywhere; line-height:1.2; }
.sc-kat { flex:0 1 64px; line-height:1.3; overflow-wrap:anywhere; }
.sc-sonuc { border-radius:20px; margin:0 0 16px; box-shadow:var(--cila-shadow); }
.scs-govde { padding:16px; }
.scs-govde h4 { line-height:1.2; overflow-wrap:anywhere; }
.scs-govde p { line-height:1.5; }
.scs-btn { grid-template-columns:repeat(2,minmax(0,1fr)); margin-top:16px; }
.scs-btn .btn-ghost { min-width:0; padding:12px 8px; }
.scs-kapak em { color:var(--cila-ink); }

.ek-baslik { border-radius:16px; margin-bottom:16px; }
.ek-secim { padding:4px; overscroll-behavior:contain; }
.ek-mekan, .ek-oy { padding:16px; gap:8px; border-radius:16px; }
.ek-m b { white-space:normal; overflow:visible; overflow-wrap:anywhere; line-height:1.35; }
.ek-m small { display:block; line-height:1.5; margin-top:4px; }
.ek-yuzde { flex:none; }
.ek-alt { gap:8px; margin-top:16px; }
.ek-paylas { padding:16px; border-radius:20px; margin-bottom:16px; }
.ek-link { min-width:0; gap:8px; }
.ek-link span { min-width:0; }
.ek-link button { min-width:44px; min-height:44px; border-radius:16px; }
.ek-paylas-btn { flex-wrap:wrap; }
.ek-paylas-btn > * { min-width:0; flex:1 1 128px; }
.ek-wa { border-radius:16px; color:#10331d; }
.ek-yukleniyor { min-height:144px; padding:32px 16px; line-height:1.5; }

.ic-ic { border-radius:24px; gap:32px; }
.ic-adimlar { gap:16px; margin:24px 0; }
.ic-adimlar li { gap:16px; }
.ic-adimlar b, .ic-adimlar span { line-height:1.5; }
.ic-btn { border-radius:16px; color:var(--cila-ink); box-shadow:var(--cila-shadow); }
.ic-btn:hover { color:var(--cila-ink); box-shadow:var(--cila-shadow-hover); }
.ic-not { line-height:1.5; }
.rv-mod { gap:8px; flex-wrap:wrap; }
.rv-mod button, .hs-engel { min-width:44px; min-height:44px; padding:8px 4px; }
.hs-alan a { display:inline-flex; align-items:center; min-height:44px; }

@media (max-width:620px) {
  .hero-content .hikaye-bolum { margin:0 -16px 16px; }
  .hero-content .hikaye-row { padding:8px 16px 12px; gap:16px; align-items:flex-start; scroll-padding-inline:16px; }
  .hk-oge { width:72px; }
  .hk-ad { max-width:72px; font-size:.75rem; }
  .hero-title { font-size:2rem; line-height:1.1; margin-bottom:16px; }
  .nabiz { max-width:100%; flex-wrap:wrap; gap:8px; margin:0 auto 16px; padding:8px 12px; border-radius:20px; }
  .nabiz-btn { padding:8px 12px; }
  .mood-bar { gap:8px; margin-top:16px; padding-top:4px; padding-bottom:8px; scroll-padding-inline:16px; }
  .mood-pill { min-height:44px; }
  .vy-kart {
    max-height:calc(100dvh - 16px - env(safe-area-inset-top,0px));
    border-radius:24px 24px 0 0;
    padding:64px 16px calc(24px + env(safe-area-inset-bottom,0px));
  }
  .vy-kart::before { top:12px; width:40px; height:4px; }
  .ek-alt .btn-primary { max-width:none; min-width:0; }
  .ek-paylas { padding:12px; }
  .ic-ic { padding:32px 24px; gap:24px; }
  .ic-ic > div { min-width:0; }
  .ic-ic h3 { margin:16px 0; font-size:2rem; letter-spacing:-.75px; }
  .ic-rozet { max-width:100%; line-height:1.5; letter-spacing:1.5px; }
  .isletme-cta { padding:16px 0 48px; }
}

@media (hover:hover) and (pointer:fine) {
  .ek-mekan:hover, .ek-oy:hover:not(:disabled) { box-shadow:var(--cila-shadow); }
}
@media (hover:none) {
  .hk-oge:hover .hk-halka, .hk-izle:hover, .ic-btn:hover { transform:none; }
}
@media (prefers-reduced-motion:no-preference) {
  .ek-mekan:active, .ek-oy:not(:disabled):active, .ic-btn:active, .nabiz-btn:active { transform:scale(.98); }
}

/* Ana sayfa örnek aramaları */
.ornek-aramalar{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;align-items:center;margin-top:14px}
.ornek-aramalar .oa-baslik{display:inline-flex;align-items:center;gap:6px;font-size:.85rem;opacity:.75}
.ornek-aramalar .oa-baslik svg{width:15px;height:15px}
.oa-hap{border:1.5px solid rgba(0,0,0,.12);background:rgba(255,255,255,.85);color:inherit;border-radius:999px;padding:7px 13px;font:inherit;font-size:.85rem;font-weight:600;cursor:pointer;transition:transform .15s,border-color .15s}
.oa-hap:hover,.oa-hap:focus-visible{border-color:#ff9900;transform:translateY(-1px)}
@media (max-width:520px){.ornek-aramalar{justify-content:flex-start;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;padding-bottom:2px}.oa-hap{white-space:nowrap;flex:0 0 auto}}

/* Mekan penceresi: örnek fiyatlar */
.fiyat-blok{margin:14px 0;border:1px solid #eee;border-radius:14px;padding:12px 14px;background:#fff}
.fiyat-blok h4{margin:0 0 8px;font-size:.95rem}
.fiyat-blok .fb-satir{display:flex;justify-content:space-between;gap:12px;padding:5px 0;border-bottom:1px dashed #eee;font-size:.9rem}
.fiyat-blok .fb-satir:last-of-type{border-bottom:0}
.fiyat-blok small{display:block;margin-top:6px;color:#71717a;font-size:.75rem}

/* Arama: sohbetle daraltma çubuğu */
.daralt-cubuk{margin:0 0 14px}
.daralt-cubuk .dc-satir{display:flex;gap:8px;flex-wrap:wrap}
.dc-hap{display:inline-flex;align-items:center;gap:6px;border:1.5px solid #e4e4e7;background:#fff;color:#18181b;border-radius:999px;padding:8px 14px;font:inherit;font-size:.88rem;font-weight:700;cursor:pointer}
.dc-hap svg{width:16px;height:16px}
.dc-hap.secili{background:#18181b;color:#fff;border-color:#18181b}
.dc-hap:focus-visible{outline:2px solid #ff9900;outline-offset:2px}
.dc-not{margin:8px 0 0;font-size:.85rem;color:#71717a}
.ek-ekipara{display:inline-flex;align-items:center;gap:6px;margin-top:8px;font-weight:700;color:#a85800;text-decoration:none;font-size:.9rem}
.ek-ekipara svg{width:16px;height:16px}

/* "Şunu tanımadım" notundaki öneri düğmesi ve kapalı-uyan notu (13 Eki) */
.ak-not .ak-oner{flex:none;margin-left:auto;align-self:center;min-height:36px;padding:6px 14px;border-radius:999px;border:1px solid #17130f;background:#17130f;color:#fff;font:700 .82rem/1 inherit;cursor:pointer}
.ak-not .ak-oner:focus-visible{outline:2px solid #ff9900;outline-offset:2px}
.ak-not.kapali{color:#3a332b;font-weight:600}
/* Dokunma hedefleri (13 Eki regresyon): örnek hapları ve detaydaki "Mekan sayfası" bağlantısı en az 44 px */
.oa-hap{min-height:44px}
.dt-sayfa{padding:12px 0;margin:-12px 0 -12px 4px}
/* "Anladığım" satırındaki aramayı paylaş düğmesi (13 Eki) */
.ak-satir .ak-paylas{margin-left:auto;display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:6px 12px;border-radius:999px;border:1px solid rgba(0,0,0,.14);background:#fff;color:#17130f;font:600 .8rem/1 inherit;cursor:pointer;flex:none}
.ak-satir .ak-paylas svg{width:15px;height:15px}
/* Dokunma hedefleri 2 (13 Eki ikinci regresyon turu): yeni düğmeler ve detay okları en az 44 px */
.ak-satir .ak-paylas, .ak-not .ak-oner{min-height:44px}
button.tg-ok{width:44px;height:44px;margin-top:-22px}   /* tasarim.css sonra yüklendiği için seçici güçlü */
button.tg-hikaye{min-height:44px}

/* Sponsorlu (Öne Çık paketi) ve gurme unvanı (14 Eki) — reklam açıkça ayırt edilebilir olmalı */
.t-sponsor, .mk-sponsor{display:inline-block;font-size:.72rem;font-weight:800;letter-spacing:.02em;text-transform:none;border-radius:6px;padding:2px 7px;background:#fff;color:#17130f;border:1px solid rgba(0,0,0,.18)}
.mk-foto .mk-sponsor{position:absolute;left:12px;top:12px;z-index:2}
.rv-unvan{display:inline-block;margin-left:6px;font-size:.72rem;font-weight:700;color:#a85800;background:#fff2de;border-radius:999px;padding:2px 8px;vertical-align:middle}
.tv-kart{position:relative}
.tv-temsili{position:absolute;left:12px;top:12px;z-index:2}
