/* Dükkanım — Müşteri Pazaryeri — FULL GLASSMORPHISM (mesh gradyan + cam paneller) */
:root{
  /* ===== CAM (glass) — gradyan-dolgulu, ışıklı, yüzen 3D ===== */
  --cam:linear-gradient(180deg, rgba(255,255,255,.34) 0%, rgba(255,255,255,.20) 42%, rgba(255,247,242,.14) 100%);
  --cam-duz:rgba(255,255,255,.22);
  --cam-kenar:rgba(255,255,255,.65);
  /* İçerik camı — daha yoğun buzlu, koyu yazı okunur */
  --cam-yogun:linear-gradient(180deg, rgba(255,255,255,.80) 0%, rgba(255,255,255,.66) 48%, rgba(255,250,247,.60) 100%);
  --cam-yogun-duz:rgba(255,255,255,.70);
  --cam-kenar2:rgba(255,255,255,.85);
  /* Blur + doygunluk: saturate arkadaki rengi büyütür = gerçek lens hissi */
  --cam-blur:saturate(180%) blur(22px);
  /* eski adlar (JS inline stilleri) */
  --bg:transparent; --kart:var(--cam-yogun); --kart2:rgba(255,255,255,.5); --kart3:rgba(255,255,255,.32);
  --cizgi:rgba(255,255,255,.6); --cizgi2:rgba(90,38,22,.16);
  --metin:#241712; --soluk:#7A5347; --soluk2:#8A5F4E;
  --ak:#FFFFFF; --ak-soluk:rgba(255,255,255,.86);
  --acc:#E8312A; --acc-koyu:#C01E18; --acc2:#C01E18; --acc-100:rgba(232,49,42,.16);
  --secondary:#3A1410;
  --yesil:#15B36B; --yesil-bg:rgba(20,200,118,.28); --mavi:#0ea5e9; --amber:#FFC850;
  --kirmizi:#D32F2F; --kirmizi-bg:rgba(211,47,47,.14);
  /* ===== 3D DERİNLİK — çok katmanlı yüzme gölgesi =====
     temas (sıkı) + ortam (geniş yumuşak) + üst inset ışık (specular) + alt inset gölge (kavis) */
  --sh1:0 1px 1px rgba(40,14,8,.18), 0 4px 10px rgba(40,14,8,.22), inset 0 1px 0 rgba(255,255,255,.55), inset 0 -8px 14px -8px rgba(60,20,10,.20);
  --sh2:0 2px 4px rgba(40,14,8,.20), 0 12px 28px rgba(40,14,8,.30), inset 0 1px 0 rgba(255,255,255,.60), inset 0 -12px 22px -10px rgba(60,20,10,.24);
  --sh3:0 4px 8px rgba(40,14,8,.24), 0 22px 50px rgba(40,14,8,.42), inset 0 1.5px 0 rgba(255,255,255,.70), inset 0 -16px 28px -12px rgba(60,20,10,.28);
  --sh-cta:0 10px 26px rgba(232,49,42,.45), inset 0 1px 0 rgba(255,255,255,.45);
  --golge:var(--sh2);
  --r-xs:11px; --r-sm:14px; --r-md:18px; --r-lg:24px; --r-pill:999px;
  --fs-xs:11px; --fs-sm:12px; --fs-md:13px; --fs-base:15px; --fs-lg:17px; --fs-xl:20px;
}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html,body{margin:0;padding:0}
/* MESH GRADYAN — şeftali, coral, tozlu pembe, lavanta, yumuşak mor (parlak ama zengin) */
body{
  color:var(--metin); font-size:16px; line-height:1.45;
  font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","Inter","Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  -webkit-font-smoothing:antialiased;
  padding-bottom:calc(124px + env(safe-area-inset-bottom));
  min-height:100vh;
  background:
    radial-gradient(85% 55% at 60% -2%, #D6884B 0%, rgba(214,136,75,0) 52%),
    radial-gradient(92% 82% at 14% 106%, #2A1410 0%, rgba(42,20,16,0) 60%),
    radial-gradient(82% 72% at 96% 100%, #3E1C14 0%, rgba(62,28,20,0) 56%),
    linear-gradient(165deg, #834326 0%, #4C261B 50%, #22120E 100%);
  background-attachment:fixed;
}
img{max-width:100%;display:block}
button{font-family:inherit;cursor:pointer;border:none;background:transparent;color:inherit}
input,textarea,select{font-family:inherit}
.gizli{display:none !important}

/* ===== ÜST BAR (içerik ekranları) — cam ===== */
.ust{position:sticky;top:0;z-index:20;background:var(--cam);backdrop-filter:var(--cam-blur);-webkit-backdrop-filter:var(--cam-blur);
  border-bottom:1px solid var(--cam-kenar);padding:11px 16px;display:flex;align-items:center;gap:10px;color:var(--ak)}
.ust .geri{font-size:22px;width:42px;height:42px;color:var(--ak);border-radius:13px;background:var(--cam);backdrop-filter:var(--cam-blur);-webkit-backdrop-filter:var(--cam-blur);box-shadow:var(--sh1);border:1px solid var(--cam-kenar);display:grid;place-items:center;flex:0 0 auto;transition:transform .08s}
.ust .geri:active{transform:scale(.92)}
.ust .baslik{font-weight:800;font-size:17px;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;letter-spacing:-.2px;text-shadow:0 1px 8px rgba(55,16,8,.3)}
.ust .sehir{font-size:12px;color:var(--ak);font-weight:700;background:var(--cam);border:1px solid var(--cam-kenar);padding:5px 12px;border-radius:var(--r-pill)}

.sar{max-width:680px;margin:0 auto;padding:16px}

/* ===== KEŞİF EKRANI (mockup) ===== */
.kesfet-bas{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px;color:var(--ak)}
.konum{display:flex;align-items:center;gap:9px;background:var(--cam);backdrop-filter:var(--cam-blur);-webkit-backdrop-filter:var(--cam-blur);
  border:1px solid var(--cam-kenar);border-radius:var(--r-md);padding:9px 13px;box-shadow:var(--sh1)}
.konum .kik{font-size:18px}
.konum .ktxt{line-height:1.15}.konum .ktxt small{display:block;font-size:11px;color:var(--ak-soluk);font-weight:600}
.konum .ktxt b{font-size:14.5px;color:var(--ak);font-weight:700}
.konum .kchev{color:var(--ak-soluk);font-size:13px;margin-left:2px}
.bildirim{width:46px;height:46px;flex:0 0 auto;border-radius:50%;background:var(--cam);backdrop-filter:var(--cam-blur);-webkit-backdrop-filter:var(--cam-blur);
  border:1px solid var(--cam-kenar);display:grid;place-items:center;font-size:20px;box-shadow:var(--sh1);position:relative;color:var(--ak)}
/* statik nokta kaldırıldı — gerçek okunmamış sayısı .bildirim-badge ile data-driven gösterilir */
.selam{color:var(--ak);margin:4px 2px 2px}
.selam h1{font-size:30px;font-weight:800;letter-spacing:-.6px;margin:0;text-shadow:0 2px 14px rgba(55,16,8,.28)}
.selam p{font-size:15px;color:var(--ak-soluk);margin:4px 0 0;line-height:1.35}

/* arama + filtre */
.ara-satir{display:flex;gap:10px;margin:16px 0 14px}
.ara-kutu{position:relative;flex:1}
.ara-kutu input{width:100%;background:var(--cam);backdrop-filter:var(--cam-blur);-webkit-backdrop-filter:var(--cam-blur);border:1px solid var(--cam-kenar);border-radius:var(--r-md);
  padding:15px 16px 15px 48px;color:var(--ak);font-size:16px;box-shadow:var(--sh1);transition:border-color .15s,box-shadow .15s}
.ara-kutu input::placeholder{color:var(--ak-soluk)}
.ara-kutu input:focus{outline:none;border-color:rgba(255,255,255,.7);box-shadow:0 0 0 4px rgba(255,255,255,.14),var(--sh1)}
.ara-kutu .ara-ik{position:absolute;left:17px;top:50%;transform:translateY(-50%);font-size:18px;color:var(--ak-soluk);pointer-events:none}
.filtre-btn{width:54px;flex:0 0 auto;border-radius:var(--r-md);background:var(--cam);backdrop-filter:var(--cam-blur);-webkit-backdrop-filter:var(--cam-blur);
  border:1px solid var(--cam-kenar);display:grid;place-items:center;box-shadow:var(--sh1);color:var(--ak)}
.filtre-btn svg{width:22px;height:22px}

/* kategori çipleri — cam + ince çizgi ikon */
.chip-sira{display:flex;gap:11px;overflow-x:auto;padding:2px 2px 4px;margin:0 -2px 18px;scrollbar-width:none}
.chip-sira::-webkit-scrollbar{display:none}
.chip{flex:0 0 auto;width:78px;height:84px;border-radius:20px;background:var(--cam);backdrop-filter:var(--cam-blur);-webkit-backdrop-filter:var(--cam-blur);
  border:1px solid var(--cam-kenar);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;
  color:var(--ak);font-size:12.5px;font-weight:600;box-shadow:var(--sh1);transition:transform .12s,box-shadow .15s,border-color .15s}
.chip svg{width:26px;height:26px;stroke:var(--ak);stroke-width:1.6;fill:none}
.chip:active{transform:scale(.95)}
.chip.aktif{background:linear-gradient(180deg,var(--acc),var(--acc-koyu));border-color:transparent;box-shadow:var(--sh-cta)}
.chip.aktif svg{stroke:#fff}
.chip.aktif span{color:#fff}

/* promo banner — cam + foto */
.promo{position:relative;display:flex;align-items:stretch;overflow:hidden;border-radius:var(--r-lg);
  background:var(--cam);backdrop-filter:var(--cam-blur);-webkit-backdrop-filter:var(--cam-blur);border:1px solid var(--cam-kenar);
  box-shadow:var(--sh2);margin-bottom:22px;min-height:150px}
.promo-ic{position:relative;flex:1;max-width:63%;padding:18px 16px;display:flex;flex-direction:column;justify-content:center;color:var(--ak);z-index:2}
.promo-ust{font-size:11.5px;font-weight:700;color:var(--ak);background:rgba(255,255,255,.18);border:1px solid var(--cam-kenar);
  align-self:flex-start;padding:4px 11px;border-radius:var(--r-pill);margin-bottom:9px}
.promo-bas{font-size:23px;font-weight:800;letter-spacing:-.4px;text-shadow:0 2px 10px rgba(55,16,8,.3)}
.promo-alt{font-size:13.5px;color:var(--ak-soluk);margin:3px 0 13px}
.promo-cta{align-self:flex-start;display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.16);backdrop-filter:blur(8px);
  border:1px solid var(--cam-kenar);color:var(--ak);font-weight:700;font-size:14px;padding:11px 16px;border-radius:var(--r-pill)}
.promo-foto{position:absolute;right:0;top:0;bottom:0;width:44%;z-index:1}
.promo-foto img{width:100%;height:100%;object-fit:cover;filter:saturate(1.1);
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 28%);mask-image:linear-gradient(90deg,transparent,#000 28%)}

/* bölüm başlığı + sırala */
.bolum-bas{display:flex;align-items:center;justify-content:space-between;margin:0 2px 14px;color:var(--ak)}
.bolum-bas h2{font-size:20px;font-weight:800;letter-spacing:-.3px;display:flex;align-items:center;gap:8px;text-shadow:0 1px 8px rgba(55,16,8,.25)}
.sirala{display:inline-flex;align-items:center;gap:6px;background:var(--cam);backdrop-filter:var(--cam-blur);-webkit-backdrop-filter:var(--cam-blur);
  border:1px solid var(--cam-kenar);color:var(--ak);font-weight:700;font-size:13.5px;padding:9px 13px;border-radius:var(--r-pill);box-shadow:var(--sh1)}

/* ===== RESTORAN KARTI (mockup yatay: foto sol, bilgi sağ) ===== */
.r-kart{display:flex;width:100%;font:inherit;color:var(--ak);text-align:left;cursor:pointer;gap:13px;align-items:stretch;
  background:var(--cam);backdrop-filter:var(--cam-blur);-webkit-backdrop-filter:var(--cam-blur);
  border:1px solid var(--cam-kenar);border-radius:var(--r-lg);overflow:hidden;margin-bottom:16px;padding:11px;
  box-shadow:var(--sh2);transition:transform .14s,box-shadow .14s}
.r-kart:active{transform:scale(.985);box-shadow:var(--sh1)}
.r-foto{position:relative;width:108px;flex:0 0 auto;border-radius:16px;overflow:hidden;background:linear-gradient(135deg,#E9C7B0,#D7A98C);align-self:stretch;min-height:108px}
.r-foto img{width:100%;height:100%;object-fit:cover;filter:saturate(1.08);position:absolute;inset:0}
.r-kalp{position:absolute;top:7px;left:7px;z-index:2;width:30px;height:30px;border-radius:50%;background:rgba(50,24,14,.32);backdrop-filter:blur(6px);
  display:grid;place-items:center;font-size:15px;border:1px solid rgba(255,255,255,.3)}
.r-kalp.dolu{color:#FF6B6B}
.r-logo{position:absolute;bottom:6px;right:6px;z-index:3;width:32px;height:32px;border-radius:9px;overflow:hidden;background:#fff;border:2px solid #fff;box-shadow:0 2px 8px rgba(40,14,8,.4)}
.r-logo img{width:100%;height:100%;object-fit:cover}
.m-logo{position:absolute;top:12px;left:12px;z-index:3;width:54px;height:54px;border-radius:14px;overflow:hidden;background:#fff;border:2.5px solid #fff;box-shadow:0 4px 14px rgba(40,14,8,.45)}
.m-logo img{width:100%;height:100%;object-fit:cover}
.r-sag{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center;gap:3px}
.r-ust{display:flex;align-items:center;gap:8px}
.r-puan{display:inline-flex;align-items:center;gap:4px;background:rgba(255,200,80,.95);border:1px solid rgba(255,200,80,.6);
  border-radius:var(--r-pill);padding:2.5px 9px;font-size:12.5px;font-weight:800;color:#3A2410;box-shadow:0 2px 6px rgba(120,80,10,.22)}
.r-puan .yld,.r-puan svg{color:#7A5410;fill:#7A5410}
.r-durum{display:inline-flex;align-items:center;gap:5px;font-size:11.5px;font-weight:800;padding:3px 10px;border-radius:var(--r-pill);
  background:var(--yesil-bg);color:#063;border:1px solid rgba(255,255,255,.4)}
.r-durum.kapali{background:rgba(120,120,120,.3);color:#fff}
.r-durum::before{content:'';width:6px;height:6px;border-radius:50%;background:currentColor}
.r-ad{font-weight:800;font-size:18px;color:var(--ak);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;letter-spacing:-.3px}
.r-alt{color:var(--ak-soluk);font-size:13px}
.r-rozetler{display:flex;gap:7px;flex-wrap:wrap;margin-top:5px}
.r-rozet{display:inline-flex;align-items:center;gap:5px;background:rgba(255,255,255,.14);border:1px solid var(--cam-kenar);
  color:var(--ak);font-size:11.5px;font-weight:600;padding:4px 9px;border-radius:10px}
.r-kart .chev{position:absolute;top:14px;right:14px;font-size:20px;color:var(--ak-soluk)}
.r-kart{position:relative}
.r-kapali-kart .r-foto img,.r-kapali-kart .r-foto{filter:grayscale(.6) opacity(.85)}
.dahafazla{width:100%;text-align:center;background:var(--cam);backdrop-filter:var(--cam-blur);-webkit-backdrop-filter:var(--cam-blur);
  border:1px solid var(--cam-kenar);color:var(--ak);font-weight:700;font-size:14.5px;padding:15px;border-radius:var(--r-md);box-shadow:var(--sh1);margin-bottom:4px}

/* ===== YÜZEN ALT MENÜ (cam) ===== */
.botnav{position:fixed;left:0;right:0;bottom:0;z-index:40;padding:0 14px calc(12px + env(safe-area-inset-bottom));pointer-events:none}
.botnav-ic{max-width:680px;margin:0 auto;pointer-events:auto;display:flex;justify-content:space-around;align-items:stretch;gap:6px;
  background:linear-gradient(180deg, rgba(62,34,23,.80) 0%, rgba(36,19,14,.86) 100%);
  backdrop-filter:var(--cam-blur);-webkit-backdrop-filter:var(--cam-blur);
  border:1px solid var(--cam-kenar);border-radius:24px;box-shadow:var(--sh3);padding:8px 8px}
.botnav-ic button{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;
  color:rgba(255,255,255,.72);font-size:11px;font-weight:600;padding:8px 6px;border-radius:16px;transition:transform .12s, background .18s, color .18s}
.botnav-ic button svg{width:23px;height:23px;stroke:currentColor;stroke-width:1.7;fill:none;transition:stroke .18s}
.botnav-ic button:active{transform:scale(.9)}
.botnav-ic button.aktif{color:#fff;
  background:linear-gradient(180deg, #FF6B47 0%, #E03C18 100%);
  box-shadow:0 6px 16px rgba(214,52,20,.55), inset 0 1px 0 rgba(255,255,255,.4), inset 0 -6px 12px -6px rgba(120,20,0,.5)}
.botnav-ic button.aktif svg{stroke:#fff;filter:drop-shadow(0 1px 3px rgba(120,20,0,.5))}

/* ===== İSKELET ===== */
.iskelet{display:flex;gap:13px;padding:11px;background:var(--cam);backdrop-filter:var(--cam-blur);-webkit-backdrop-filter:var(--cam-blur);border:1px solid var(--cam-kenar);border-radius:var(--r-lg);margin-bottom:16px;box-shadow:var(--sh1)}
.shim{background:linear-gradient(100deg,rgba(255,255,255,.1) 30%,rgba(255,255,255,.4) 50%,rgba(255,255,255,.1) 70%);background-size:200% 100%;animation:shim 1.3s ease-in-out infinite}
@keyframes shim{0%{background-position:200% 0}100%{background-position:-200% 0}}
.isk-foto{width:108px;height:108px;border-radius:16px;flex:0 0 auto}
.isk-l{height:14px;border-radius:7px}

/* ===== MENÜ EKRANI (içerik — yoğun buzlu cam, koyu yazı) ===== */
.m-kapak{position:relative;width:100%;aspect-ratio:16/9;border-radius:var(--r-lg);overflow:hidden;margin-bottom:-26px;background:linear-gradient(135deg,#E9C7B0,#D7A98C);box-shadow:var(--sh2)}
.m-kapak img{width:100%;height:100%;object-fit:cover;filter:saturate(1.07)}
.m-kapak::after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 45%,rgba(50,24,14,.45))}
.m-rest{position:relative;z-index:2;background:var(--cam-yogun);backdrop-filter:var(--cam-blur);-webkit-backdrop-filter:var(--cam-blur);border:1px solid var(--cam-kenar2);border-radius:var(--r-lg);padding:16px;margin-bottom:14px;box-shadow:var(--sh2);color:var(--metin)}
.m-rest .m-rest-ad{font-weight:800;font-size:21px;letter-spacing:-.3px}
.m-rest .m-rest-alt{color:var(--soluk);font-size:14px;margin-top:3px}
.m-rest .m-rest-aksiyon{display:flex;gap:10px;margin-top:13px}
.kat-bas{font-weight:800;font-size:13px;text-transform:uppercase;letter-spacing:.7px;margin:24px 4px 12px;color:var(--ak);text-shadow:0 1px 6px rgba(55,16,8,.3)}
.m-kart{position:relative;background:var(--cam-yogun);backdrop-filter:var(--cam-blur);-webkit-backdrop-filter:var(--cam-blur);border:1px solid var(--cam-kenar2);border-radius:var(--r-md);padding:13px;margin-bottom:11px;display:flex;gap:13px;align-items:center;box-shadow:var(--sh1);color:var(--metin);transition:box-shadow .12s}
.m-kart:active{box-shadow:var(--sh2)}
.m-ic{flex:1;min-width:0;order:0}
.m-gorsel{position:relative;width:104px;height:104px;border-radius:16px;background:linear-gradient(135deg,#F0DAC8,#E2C0A2);display:grid;place-items:center;font-size:30px;flex:0 0 auto;overflow:hidden;order:1;box-shadow:inset 0 0 0 1px rgba(0,0,0,.05), 0 4px 14px rgba(90,40,22,.14)}
.m-gorsel::after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(to top,rgba(60,28,14,.20),transparent 55%)}
.m-gorsel img{width:100%;height:100%;object-fit:cover;filter:saturate(1.12) contrast(1.04);transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.m-kart:active .m-gorsel img,.m-kart:hover .m-gorsel img{transform:scale(1.07)}
.m-ad{font-weight:700;font-size:17px}
.m-ack{color:var(--soluk);font-size:14px;margin-top:3px;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.4}
.m-fiyat{font-weight:800;color:var(--acc-koyu);margin-top:6px;font-size:17.5px}
.m-tuk{color:var(--acc-koyu);font-size:13px;font-weight:700;margin-top:6px}
.ekle{position:absolute;right:14px;bottom:14px;z-index:4;background:var(--acc);color:#fff;font-weight:800;border-radius:var(--r-pill);
  width:40px;height:40px;font-size:24px;display:grid;place-items:center;box-shadow:var(--sh-cta);border:1px solid rgba(255,255,255,.25);transition:transform .14s}
.ekle:active{transform:scale(.85)}
@keyframes pop{0%{transform:scale(.9)}60%{transform:scale(1.08)}100%{transform:scale(1)}}
.ekle.pop{animation:pop .22s cubic-bezier(.34,1.56,.64,1)}
.adet{display:inline-flex;align-items:center;gap:6px;flex:0 0 auto;background:#fff;border:1px solid var(--cizgi2);border-radius:var(--r-pill);box-shadow:var(--sh1);padding:3px}
.adet button{width:40px;height:40px;border-radius:var(--r-pill);background:var(--acc-100);color:var(--acc-koyu);font-size:21px;font-weight:800;display:grid;place-items:center;transition:transform .1s}
.adet button:active{transform:scale(.86)}
.adet .n{font-weight:800;min-width:20px;text-align:center;font-size:16px;color:var(--metin)}
.m-kart > .adet{position:absolute;right:14px;bottom:14px;z-index:4}

/* sepet bar */
.sepet-bar{position:fixed;left:0;right:0;bottom:0;z-index:35;padding:12px 16px calc(12px + env(safe-area-inset-bottom))}
.sepet-btn{max-width:680px;margin:0 auto;width:100%;background:var(--acc);color:#fff;border-radius:var(--r-md);padding:16px 18px;
  display:flex;align-items:center;justify-content:space-between;font-weight:800;font-size:17px;box-shadow:var(--sh-cta);transition:transform .1s}
.sepet-btn:active{transform:scale(.985)}
.sepet-btn .adet-bal{background:rgba(255,255,255,.28);color:#fff;border-radius:8px;padding:2px 10px;font-size:15px;margin-right:7px}

/* sepet/form/takip — içerik (koyu yazı, yoğun cam) */
.sepet-rest{font-weight:800;color:var(--ak);margin-bottom:6px;font-size:18px;letter-spacing:-.2px;text-shadow:0 1px 6px rgba(55,16,8,.3)}
.s-satir{display:flex;align-items:center;gap:12px;padding:14px;margin-bottom:10px;border-radius:var(--r-md);
  background:var(--cam-yogun);backdrop-filter:var(--cam-blur);-webkit-backdrop-filter:var(--cam-blur);border:1px solid var(--cam-kenar2);box-shadow:var(--sh1);color:var(--metin)}
.s-foto-sar{position:relative;flex:0 0 auto;width:56px;height:56px;border-radius:14px;overflow:hidden;
  background:linear-gradient(135deg,#F0C9A8,#D89B6E);box-shadow:inset 0 0 0 1px rgba(255,255,255,.4)}
.s-foto-sar .s-foto-ph{position:absolute;inset:0;display:grid;place-items:center;color:rgba(255,255,255,.85)}
.s-foto-sar .s-foto-ph svg{width:26px;height:26px;stroke:currentColor;stroke-width:1.6;fill:none}
.s-foto{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:1}
.s-satir .s-orta{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}
.s-satir .s-ad{font-weight:700;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.s-satir .s-fiyat{font-weight:800;color:var(--acc-koyu);font-size:15px}
.s-satir .adet{flex:0 0 auto}
.s-sil{flex:0 0 auto;width:42px;height:42px;border-radius:12px;display:grid;place-items:center;
  background:rgba(214,52,20,.10);color:var(--acc-koyu);border:1px solid rgba(214,52,20,.22);transition:transform .1s,background .15s}
.s-sil svg{width:20px;height:20px;stroke:currentColor;stroke-width:1.7;fill:none}
.s-sil:active{transform:scale(.86);background:rgba(214,52,20,.2)}
.toplam{display:flex;justify-content:space-between;font-weight:800;font-size:19px;margin:18px 4px;padding-top:6px;color:var(--ak);text-shadow:0 1px 6px rgba(55,16,8,.3)}
.ara-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;background:var(--cam-yogun);backdrop-filter:var(--cam-blur);-webkit-backdrop-filter:var(--cam-blur);color:var(--metin);font-weight:700;font-size:15px;
  border:1px solid var(--cam-kenar2);box-shadow:var(--sh1);border-radius:var(--r-sm);padding:12px 16px;text-decoration:none;min-height:48px;transition:transform .08s}
.ara-btn:active{transform:scale(.96)}
.btn-buyuk{width:100%;background:var(--acc);color:#fff;font-weight:800;font-size:17px;border-radius:var(--r-md);padding:17px;margin-top:8px;min-height:54px;box-shadow:var(--sh-cta);transition:transform .1s}
.btn-buyuk:active{transform:scale(.985)}
.btn-buyuk:disabled{opacity:.5;box-shadow:none}
.btn-sade{background:var(--cam-yogun) !important;backdrop-filter:var(--cam-blur);-webkit-backdrop-filter:var(--cam-blur);color:var(--metin) !important;border:1px solid var(--cam-kenar2);box-shadow:var(--sh1) !important}
/* ===== CHECKOUT (yeniden tasarım: özet kartı + iOS-tarzı gruplu form) ===== */
.ode-ozet{background:var(--cam-yogun);backdrop-filter:var(--cam-blur);-webkit-backdrop-filter:var(--cam-blur);
  border:1px solid var(--cam-kenar2);border-radius:var(--r-lg);box-shadow:var(--sh2);padding:15px 16px 13px;margin-bottom:20px;color:var(--metin)}
.ode-ozet .oz-bas{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:11px}
.ode-ozet .oz-rest{font-weight:800;font-size:17px;letter-spacing:-.2px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ode-ozet .oz-adet{font-size:12px;color:#fff;background:var(--acc);border-radius:var(--r-pill);padding:3px 10px;font-weight:700;flex:0 0 auto;box-shadow:0 2px 8px rgba(214,52,20,.3)}
.ode-ozet .oz-list{display:flex;flex-direction:column;gap:8px}
.ode-ozet .oz-sat{display:flex;justify-content:space-between;gap:12px;font-size:14px}
.ode-ozet .oz-ad{color:var(--soluk);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ode-ozet .oz-ad b{color:var(--acc-koyu);font-weight:800;margin-right:3px}
.ode-ozet .oz-fi{font-weight:600;flex:0 0 auto;color:var(--soluk)}
.ode-ozet .oz-teslimat{margin-top:4px}
.ode-ozet .oz-ucretsiz{color:var(--yesil);font-weight:800}
.ode-ozet .oz-top{display:flex;justify-content:space-between;font-weight:800;font-size:20px;margin-top:12px;padding-top:13px;border-top:1.5px dashed rgba(90,40,22,.22);color:var(--metin)}
.ode-ozet .oz-top span:last-child{color:var(--acc-koyu)}

.ode-baslik{font-size:12px;font-weight:800;color:var(--ak);text-transform:uppercase;letter-spacing:.6px;margin:0 4px 9px;text-shadow:0 1px 5px rgba(55,16,8,.3)}
.ode-grup{background:var(--cam-yogun);backdrop-filter:var(--cam-blur);-webkit-backdrop-filter:var(--cam-blur);
  border:1px solid var(--cam-kenar2);border-radius:var(--r-md);box-shadow:var(--sh1);overflow:hidden;margin-bottom:20px}
.ode-satir{display:flex;align-items:center;gap:13px;padding:13px 15px;position:relative}
.ode-satir + .ode-satir::before{content:'';position:absolute;top:0;left:64px;right:0;height:1px;background:rgba(90,40,22,.13)}
.ode-satir.os-col{align-items:flex-start}
.os-ik{flex:0 0 auto;width:36px;height:36px;border-radius:11px;display:grid;place-items:center;
  background:rgba(255,107,71,.14);color:var(--acc-koyu);margin-top:1px;transition:background .15s,color .15s}
.os-ik svg{width:19px;height:19px;stroke:currentColor;stroke-width:1.8;fill:none}
.os-ic{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}
.os-ic label{font-size:11.5px;font-weight:700;color:var(--soluk);letter-spacing:.1px}
.os-ic label .ops{font-weight:500;color:var(--soluk)}
.os-ic input,.os-ic textarea{width:100%;border:none;background:transparent;padding:0;margin:0;color:var(--metin);
  font-size:16px;font-family:inherit;box-shadow:none;-webkit-appearance:none;appearance:none}
.os-ic textarea{min-height:52px;resize:none;line-height:1.45}
.os-ic input:focus,.os-ic textarea:focus{outline:none}
.os-ic input::placeholder,.os-ic textarea::placeholder{color:var(--soluk2)}
.ode-satir:focus-within .os-ik{background:var(--acc);color:#fff;box-shadow:0 3px 10px rgba(214,52,20,.35)}

.kvkk{font-size:12px;color:var(--soluk);line-height:1.55;margin:0 0 16px;padding:11px 13px;text-shadow:none;
  background:var(--cam-yogun);backdrop-filter:var(--cam-blur);-webkit-backdrop-filter:var(--cam-blur);
  border:1px solid var(--cam-kenar2);border-radius:var(--r-md);box-shadow:var(--sh1)}
.kvkk b{color:var(--metin)}
/* para üstü: seçili "Kapıda Nakit"e görsel olarak bağlı */
.os-paraustu{margin-top:14px;border-color:var(--acc);box-shadow:0 0 0 3px rgba(255,107,71,.10),var(--sh1)}

.odeme-secim{ display:flex; flex-direction:column; gap:13px; margin-bottom:6px; padding-top:6px }
.odeme-opt{ display:flex; align-items:center; gap:12px; padding:15px; border:1.5px solid var(--cam-kenar2);
  border-radius:var(--r-md); background:var(--cam-yogun); backdrop-filter:var(--cam-blur); -webkit-backdrop-filter:var(--cam-blur); cursor:pointer; min-height:60px; box-shadow:var(--sh1); color:var(--metin);
  transform:translateY(0) scale(1); transform-origin:center; will-change:transform;
  transition:transform .26s cubic-bezier(.34,1.5,.5,1), box-shadow .26s ease, background .18s, border-color .18s }
.odeme-opt:not(.opt-disabled):active{ transform:scale(.985) }
.odeme-opt input{ position:absolute; opacity:0; width:0; height:0; pointer-events:none }
.odeme-opt .oik{ flex:0 0 auto; width:40px; height:40px; border-radius:11px; display:grid; place-items:center; background:rgba(255,107,71,.14); color:var(--acc-koyu) }
.odeme-opt .oik svg{ width:22px; height:22px; stroke:currentColor; stroke-width:1.8; fill:none }
.odeme-opt .ometin{ display:flex; flex-direction:column; line-height:1.3; flex:1; min-width:0 }
.odeme-opt .ometin b{ font-size:16px } .odeme-opt .ometin small{ color:var(--soluk); font-size:12.5px }
.odeme-opt .otik{ flex:0 0 auto; width:26px; height:26px; border-radius:50%; display:grid; place-items:center;
  background:var(--acc); color:#fff; opacity:0; transform:scale(.5); transition:opacity .15s, transform .15s; box-shadow:0 3px 9px rgba(214,52,20,.4) }
.odeme-opt .otik svg{ width:16px; height:16px; stroke:#fff; stroke-width:2.6; fill:none }
.odeme-opt .oyakinda{ flex:0 0 auto; font-size:11px; font-weight:800; color:var(--acc-koyu); background:rgba(214,52,20,.12);
  border:1px solid rgba(214,52,20,.25); border-radius:var(--r-pill); padding:3px 9px }
.odeme-opt.secili,.odeme-opt:has(input:checked){ border-color:var(--acc);
  background:linear-gradient(180deg, rgba(255,241,234,.96) 0%, rgba(255,227,216,.92) 100%);
  transform:translateY(-5px) scale(1.03); z-index:3; position:relative;
  box-shadow:0 16px 32px -8px rgba(214,52,20,.5), 0 5px 12px rgba(214,52,20,.26), inset 3px 0 0 var(--acc), inset 0 1px 0 rgba(255,255,255,.75);
  animation:odemePop .32s cubic-bezier(.34,1.6,.5,1) }
.odeme-opt.secili .oik,.odeme-opt:has(input:checked) .oik{ background:var(--acc); color:#fff; transform:scale(1.06); box-shadow:0 5px 14px rgba(214,52,20,.45) }
@keyframes odemePop{ 0%{transform:translateY(0) scale(1)} 55%{transform:translateY(-8px) scale(1.045)} 100%{transform:translateY(-5px) scale(1.03)} }
.odeme-opt.secili .otik,.odeme-opt:has(input:checked) .otik{ opacity:1; transform:scale(1) }
.odeme-opt:has(input:focus-visible){ outline:2px solid var(--acc); outline-offset:2px }
.odeme-opt.opt-disabled{ opacity:.7; cursor:not-allowed; box-shadow:none }

.takip{background:var(--cam-yogun);backdrop-filter:var(--cam-blur);-webkit-backdrop-filter:var(--cam-blur);border:1px solid var(--cam-kenar2);border-radius:var(--r-lg);padding:24px 18px;text-align:center;box-shadow:var(--sh2);color:var(--metin)}
.takip .no{font-size:13px;color:var(--soluk);font-weight:600}
.takip .durum{font-size:25px;font-weight:800;margin:8px 0;letter-spacing:-.3px}
.takip .durum .em{font-size:34px;display:block;margin-bottom:4px}
.adimlar{display:flex;justify-content:space-between;margin:24px 0 6px;position:relative}
.adimlar::before{content:'';position:absolute;top:18px;left:10%;right:10%;height:3px;background:rgba(90,40,22,.18);border-radius:3px}
.adimlar::after{content:'';position:absolute;top:18px;left:10%;height:3px;background:var(--yesil);border-radius:3px;width:var(--ilerleme,0%);transition:width .5s ease}
.adim{position:relative;z-index:1;text-align:center;flex:1;font-size:11.5px;color:var(--soluk2);font-weight:600}
.adim .dot{width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.7);border:2px solid rgba(90,40,22,.2);display:grid;place-items:center;margin:0 auto 6px;font-size:16px;transition:.3s}
.adim.tamam .dot{background:var(--yesil);border-color:var(--yesil);color:#fff}
.adim.aktif .dot{background:var(--acc);border-color:var(--acc);color:#fff;animation:nabiz 1.6s ease-in-out infinite}
@keyframes nabiz{0%,100%{box-shadow:0 0 0 4px var(--acc-100)}50%{box-shadow:0 0 0 10px rgba(255,107,71,.08)}}
.adim.tamam, .adim.aktif{color:var(--metin);font-weight:700}
.eta-buyuk{margin-top:14px;font-weight:800;font-size:17px;color:var(--acc-koyu)}

.bos{text-align:center;padding:54px 22px;color:var(--ak)}
.bos .emoji{font-size:50px;margin-bottom:12px}
.bos b{color:var(--ak);font-size:18px}
.bos div{color:var(--ak-soluk)}
.yukleniyor{text-align:center;padding:40px;color:var(--ak-soluk)}
.toast{position:fixed;left:50%;bottom:calc(102px + env(safe-area-inset-bottom));transform:translateX(-50%) translateY(8px);
  background:rgba(58,28,18,.94);backdrop-filter:blur(10px);color:#fff;
  padding:13px 22px;border-radius:var(--r-pill);font-weight:700;font-size:14px;z-index:60;box-shadow:var(--sh3);max-width:90%;opacity:0;transition:opacity .22s,transform .22s;pointer-events:none}
.toast.gor{opacity:1;transform:translateX(-50%) translateY(0)}

@media (prefers-reduced-motion: reduce){ *{animation:none !important;transition:none !important} }
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
  :root{--cam:var(--cam-duz);--cam-yogun:var(--cam-yogun-duz)}
}

/* ===== IŞIKLI CAM KENARI (3D rim-light) — üst/sol kenar en parlak (ışık yukarıdan) ===== */
.konum,.bildirim,.chip,.promo,.r-kart,.botnav-ic,.dahafazla,.sirala,
.ara-kutu input,.filtre-btn,.m-rest,.m-kart,.s-satir,.takip,.odeme-opt{
  border:1px solid var(--cam-kenar);
  border-top-color:rgba(255,255,255,.9);
  border-left-color:rgba(255,255,255,.72);
}
/* Köşegen specular parıltı — büyük cam paneller */
.promo::before,.r-kart::before{
  content:'';position:absolute;inset:0;border-radius:inherit;pointer-events:none;z-index:3;
  background:linear-gradient(135deg, rgba(255,255,255,.20) 0%, rgba(255,255,255,0) 36%);
}
/* içerik specular parıltının ÜSTÜNDE kalsın (okunabilirlik), foto/chev kendi konumunu korur */
.promo-ic{z-index:4}
.r-kart .r-foto,.r-kart .r-sag{position:relative;z-index:4}
.r-kart .chev{z-index:4}

/* ===== 3D BASMA / HOVER TEPKİSİ — kart fiziksel obje gibi ===== */
.chip{transition:transform .14s cubic-bezier(.34,1.4,.5,1), box-shadow .14s}
.chip:active{transform:translateY(-1px) scale(.97); box-shadow:var(--sh2)}
.r-kart{transition:transform .16s cubic-bezier(.34,1.3,.5,1), box-shadow .16s}
.r-kart:active{transform:translateY(1px) scale(.99); box-shadow:var(--sh1)}
.promo{transition:transform .18s ease, box-shadow .18s}
.promo:active{transform:scale(.992); box-shadow:var(--sh3)}
@media (hover:hover){
  .r-kart:hover,.chip:hover,.promo:hover{transform:translateY(-3px); box-shadow:var(--sh3)}
}

/* ===== YAZI OKUNABİLİRLİĞİ (cam üstünde beyaz yazı — yaşlı kullanıcı) ===== */
.selam h1,.selam p,.konum .ktxt b,.r-ad,.promo-bas,.bolum-bas h2,
.chip span,.botnav-ic button,.sirala,.r-puan,.dahafazla{
  text-shadow:0 1px 2px rgba(40,14,8,.45), 0 0 1px rgba(40,14,8,.35);
}
.chip{font-weight:700}
.r-alt,.promo-alt{ color:rgba(255,255,255,.93) }
/* promo yazısı için sol koyu scrim — foto üstüne binmesin */
.promo-ic::before{
  content:'';position:absolute;inset:0;z-index:-1;border-radius:inherit;
  background:linear-gradient(90deg, rgba(35,12,7,.40), rgba(35,12,7,0) 72%);
}

/* =====================================================================
   MÜŞTERİ — MAHALLE SEÇİCİ + KONUM + MESAFE — FROSTED-GLASS REFACTOR
   Kazanan [2] temel alındı; jüri graftNotes harmanlandı.
   Drop-in: markup DEĞİŞMEZ, yalnız mevcut sınıflara yapışır.
   Yalnız :root tokenları (--cam,--cam-duz,--cam-yogun,--acc,--sh*,--r-*) kullanıldı.
   NOT: global reduced-motion (*{...none}) ve @supports backdrop token-swap
   musteri.css'te ZATEN var (sat.334-337) → burada TEKRARLANMADI.
   DENETİM YAMASI: (a) .mhs-grup-bas kontrast --soluk2→--soluk (AA),
   (b) .mhs-liste overflow-x:hidden (full-bleed sticky başlık yatay taşması),
   (c) dokunma hedefleri >=40px (.mhs-kapat/.mhs-chip/.ode-mahalle).
   ===================================================================== */

/* ---------- 1) ÜST KONUM BUTONU (.konum) — cam disk + rim-light tepki ----------
   Header mesh-gradyan üstünde durur → metin --ak (beyaz) bağlamı korunur. */
.konum{
  position:relative;
  transition:transform .14s cubic-bezier(.34,1.4,.5,1), box-shadow .16s, border-color .15s;
}
.konum:active{ transform:translateY(1px) scale(.98); box-shadow:var(--sh1); }
@media (hover:hover){ .konum:hover{ transform:translateY(-1px); box-shadow:var(--sh2); } }
/* GRAFT [3]: ikona acc-tonlu sıcak drop-shadow */
.konum .kik{ font-size:18px; filter:drop-shadow(0 1px 4px rgba(232,49,42,.5)); }
.konum .kchev{ transition:transform .15s; }
.konum:active .kchev{ transform:translateX(1px); }

/* ---------- 2) "MAHALLENİ SEÇ" NUDGE ŞERİDİ (.mh-uyari) — cam + sol acc aksan ---------- */
.mh-uyari{
  position:relative; overflow:hidden;
  background:var(--cam-yogun);
  backdrop-filter:var(--cam-blur); -webkit-backdrop-filter:var(--cam-blur);
  border:1px solid var(--cam-kenar2);
  border-top-color:rgba(255,255,255,.92);
  border-left-color:rgba(255,255,255,.78);
  box-shadow:var(--sh2);
  transition:transform .16s cubic-bezier(.34,1.3,.5,1), box-shadow .16s;
}
/* sol terrakota aksan şeridi — "buraya bas" eylem-daveti sıcaklığı */
.mh-uyari::before{
  content:''; position:absolute; left:0; top:0; bottom:0; width:4px;
  background:linear-gradient(180deg, var(--acc), var(--acc-koyu));
  box-shadow:0 0 12px rgba(232,49,42,.5);
}
.mh-uyari:active{ transform:scale(.99); box-shadow:var(--sh1); }
@media (hover:hover){ .mh-uyari:hover{ transform:translateY(-2px); box-shadow:var(--sh3); } }
/* GRAFT [3]: ikona acc-tonlu drop-shadow (NOT: sonsuz mhuPin animasyonu ALINMADI) */
.mh-uyari .mhu-ik{ filter:drop-shadow(0 1px 5px rgba(214,52,20,.4)); }
.mh-uyari .mhu-ok{ transition:transform .16s ease; }
.mh-uyari:active .mhu-ok{ transform:translateX(3px); }
@media (hover:hover){ .mh-uyari:hover .mhu-ok{ transform:translateX(3px); } }

/* ---------- 3) CHECKOUT MAHALLE BUTONU (.ode-mahalle) — cam pill ----------
   Checkout .os-ic akışında durur; kompakt pill (satır-yüksekliğini bozmaz).
   YAMA: min-height:40px → dokunma hedefi AA. */
.ode-mahalle{
  display:inline-flex; align-items:center; gap:4px; min-height:40px;
  font:inherit; font-weight:700; color:var(--metin);
  padding:5px 12px; border-radius:var(--r-pill); cursor:pointer; text-align:left;
  background:var(--cam);
  backdrop-filter:var(--cam-blur); -webkit-backdrop-filter:var(--cam-blur);
  border:1px solid var(--cam-kenar);
  border-top-color:var(--cam-kenar2);
  box-shadow:var(--sh1);
  transition:transform .12s, box-shadow .15s, color .15s, border-color .15s;
}
.ode-mahalle:active{ transform:scale(.97); box-shadow:none; color:var(--acc-koyu); }
/* GRAFT [0]+[3]: boş durum acc-100 rim-halo → "buraya bas" sinyali güçlenir */
.ode-mahalle.bos{
  color:var(--acc-koyu); font-weight:800;
  border-color:rgba(232,49,42,.45);
  box-shadow:0 0 0 3px var(--acc-100), var(--sh1);
}
@media (hover:hover){ .ode-mahalle:hover{ border-color:var(--cam-kenar2); box-shadow:var(--sh2); } }

/* =====================================================================
   4) MAHALLE SEÇİCİ BOTTOM-SHEET
   ===================================================================== */

/* ---------- OVERLAY SCRIM (.mh-overlay) — sıcak ton korunur, GRAFT [3] saturate ---------- */
.mh-overlay{
  position:fixed; inset:0; z-index:200;
  display:flex; align-items:flex-end; justify-content:center;
  background:rgba(20,8,4,.46);
  backdrop-filter:saturate(120%) blur(7px);
  -webkit-backdrop-filter:saturate(120%) blur(7px);
  animation:mhScrim .22s ease both;
}
.mh-overlay.gizli{ display:none; }
@keyframes mhScrim{ from{opacity:0} to{opacity:1} }

/* ---------- SHEET KARTI (.mhs-kart) — DÜZ BEYAZ → YOĞUN BUZLU CAM ---------- */
/* ===== MAHALLE SEÇİCİ — bottom-sheet + SABİT-yükseklik typeahead satır listesi (yeniden tasarım) =====
   Konsensüs: serpiştirme yok (148 dökülmez), yazdıkça ZIPLAMAZ (.mh-results sabit clamp), emoji yok (SVG). */
.ico{ width:20px; height:20px; flex:0 0 auto; display:inline-block; vertical-align:middle; stroke:currentColor; }

.mh-sheet{
  width:100%; max-width:560px; display:flex; flex-direction:column; position:relative; max-height:88vh; overflow:hidden;
  background:var(--cam-yogun); backdrop-filter:var(--cam-blur); -webkit-backdrop-filter:var(--cam-blur);
  border:1px solid var(--cam-kenar2); border-top-color:rgba(255,255,255,.92); border-left-color:rgba(255,255,255,.78); border-bottom:none;
  border-radius:22px 22px 0 0; padding:0 0 calc(10px + env(safe-area-inset-bottom));
  box-shadow:var(--sh3), 0 -12px 44px rgba(40,14,8,.34); color:var(--metin);
  animation:mhsUp .22s cubic-bezier(.2,.9,.3,1);
}
@keyframes mhsUp{ from{transform:translateY(40px);opacity:.6} to{transform:translateY(0);opacity:1} }

.mh-head{ position:sticky; top:0; z-index:3; flex:0 0 auto; padding:8px 16px 12px;
  background:linear-gradient(180deg, rgba(255,255,255,.30), rgba(255,255,255,0)); }
.mh-handle{ display:block; width:38px; height:5px; border-radius:999px; margin:0 auto 12px;
  background:rgba(255,255,255,.6); box-shadow:inset 0 1px 0 rgba(255,255,255,.7), 0 1px 2px rgba(40,14,8,.18); }
.mh-head-row{ display:flex; align-items:center; justify-content:space-between; margin-bottom:12px; }
.mh-title{ font-size:18px; font-weight:800; color:var(--metin); letter-spacing:-.2px; }
.mh-kapat{ width:40px; height:40px; flex:0 0 auto; border-radius:50%; display:grid; place-items:center;
  background:var(--cam); backdrop-filter:var(--cam-blur); -webkit-backdrop-filter:var(--cam-blur);
  border:1px solid var(--cam-kenar); border-top-color:rgba(255,255,255,.9); color:var(--soluk); cursor:pointer;
  box-shadow:var(--sh1); transition:transform .12s, color .15s; }
.mh-kapat:active{ transform:scale(.9); color:var(--acc-koyu); }
.mh-kapat .ico{ width:18px; height:18px; }

.mh-gps{ width:100%; display:flex; align-items:center; justify-content:center; gap:8px;
  padding:13px; border-radius:var(--r-md); border:none; cursor:pointer;
  background:linear-gradient(180deg, var(--acc), var(--acc-koyu)); color:#fff; font-weight:800; font-size:14.5px;
  box-shadow:var(--sh-cta); text-shadow:0 1px 4px rgba(120,20,0,.4);
  transition:transform .1s, box-shadow .18s, filter .15s; }
.mh-gps .ico{ width:19px; height:19px; }
.mh-gps:active{ transform:scale(.985); }
.mh-gps:disabled{ opacity:.72; cursor:default; }
@media (hover:hover){ .mh-gps:hover{ filter:brightness(1.04); } }

.mh-search{ position:sticky; top:0; z-index:2; flex:0 0 auto; display:flex; align-items:center; gap:9px;
  margin:0 16px 10px; padding:11px 13px; border-radius:var(--r-md);
  background:var(--cam-duz); backdrop-filter:var(--cam-blur); -webkit-backdrop-filter:var(--cam-blur);
  border:1px solid var(--cam-kenar2); border-top-color:rgba(255,255,255,.9);
  box-shadow:var(--sh1); transition:border-color .15s, box-shadow .15s, color .15s; color:var(--soluk); }
.mh-search:focus-within{ border-color:var(--acc); box-shadow:0 0 0 4px var(--acc-100), var(--sh1); color:var(--acc-koyu); }
.mh-search input{ flex:1; border:none; background:none; font-size:15px; color:var(--metin); outline:none; min-width:0; }
.mh-search input::placeholder{ color:var(--soluk); }
.mh-clear{ border:none; background:none; color:var(--soluk2); cursor:pointer; display:grid; place-items:center; padding:2px; }
.mh-clear[hidden]{ display:none; }
.mh-clear .ico{ width:18px; height:18px; }
/* type=search native temizle butonunu gizle (kendi ikonumuz var) */
.mh-search input::-webkit-search-cancel-button{ -webkit-appearance:none; appearance:none; }

.mh-results{ list-style:none; margin:0; padding:0 8px; height:clamp(240px, 46vh, 420px);
  overflow-y:auto; overscroll-behavior:contain; contain:layout; -webkit-overflow-scrolling:touch; scrollbar-width:none; }
.mh-results::-webkit-scrollbar{ width:0; display:none; }
.mh-grup-bas{ list-style:none; font-size:11.5px; font-weight:800; color:var(--soluk2);
  text-transform:uppercase; letter-spacing:.05em; padding:12px 8px 5px; }
.mh-row{ display:flex; align-items:center; gap:11px; min-height:48px; box-sizing:border-box;
  padding:7px 10px; border-radius:14px; cursor:pointer; color:var(--metin);
  transition:background .14s; -webkit-tap-highlight-color:transparent; }
.mh-row .mh-row-ik{ color:var(--soluk2); display:grid; place-items:center; }
.mh-row .mh-row-ik .ico{ width:18px; height:18px; }
.mh-row-ad{ flex:1; font-size:15px; font-weight:600; }
.mh-row-tip{ font-size:12px; color:var(--soluk); font-weight:600; white-space:nowrap; }
.mh-row-go{ color:var(--soluk2); display:grid; place-items:center; }
.mh-row-go .ico{ width:18px; height:18px; }
.mh-row.vurgu, .mh-row:active{ background:rgba(232,49,42,.10); }
@media (hover:hover){ .mh-row:hover{ background:rgba(232,49,42,.08); } }
.mh-row.secili{ background:rgba(232,49,42,.12); }
.mh-row.secili .mh-row-ik, .mh-row.secili .mh-row-go{ color:var(--acc-koyu); }
.mh-row.secili .mh-row-ad{ color:var(--acc-koyu); font-weight:800; }
.mh-bos{ display:flex; align-items:center; justify-content:center; min-height:120px; color:var(--soluk2); font-weight:600; }

/* tetik/diğer butonlardaki emoji→SVG ikon boyutları */
.konum .kik .ico{ width:19px; height:19px; }
.konum .kchev .ico{ width:16px; height:16px; }
.mh-uyari .mhu-ik .ico{ width:22px; height:22px; color:var(--acc); }
.mh-uyari .mhu-ok .ico{ width:20px; height:20px; }
.ara-kutu .ara-ik .ico{ width:18px; height:18px; }
.bos .emoji .ico{ width:46px; height:46px; stroke-width:1.3; margin:0 auto; }

/* =====================================================================
   5) MESAFE ROZETİ (.r-km) — kalın dolgu → ince cam + acc PIN mikro-rozet
   r-kart koyu cam üstünde durur → metin --ak (beyaz) bağlamı.
   ===================================================================== */
.r-rozet.r-km{
  background:rgba(255,255,255,.14);
  border:1px solid rgba(232,49,42,.4);
  border-top-color:rgba(255,255,255,.4);
  color:var(--ak); font-weight:700; font-size:11px;
  padding:3px 8px; gap:4px; letter-spacing:.1px;
  text-shadow:0 1px 2px rgba(40,14,8,.4);
}
/* GRAFT [2]+[3]: damla/pin metaforu — konum rozetine yakışır */
.r-rozet.r-km::before{
  content:''; flex:0 0 auto; width:7px; height:7px;
  border-radius:50% 50% 50% 0; transform:rotate(-45deg);
  background:linear-gradient(180deg, var(--acc), var(--acc-koyu));
  box-shadow:0 0 5px rgba(232,49,42,.55);
}

/* =====================================================================
   6) HEDEFLİ FALLBACK — backdrop-filter çökünce sıcak-açık OPAK tona düş (beyaz DEĞİL)
   NOT: :root token-swap (--cam→--cam-duz, --cam-yogun→--cam-yogun-duz) sat.336'da
   zaten var; aşağıdaki yalnız token-DIŞI yarı-saydam zeminleri opak yapar.
   ===================================================================== */
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
  .mh-sheet{ background:var(--cam-yogun-duz); }
  .mh-search{ background:rgba(255,250,247,.92); }
  .mh-kapat{ background:rgba(255,250,247,.92); }
}

/* ===== Emoji→SVG ikon boyutlandırma (müşteri geneli) ===== */
.serit .ico{ width:17px; height:17px; vertical-align:-3px; }
.bildirim .ico{ width:21px; height:21px; }
.r-foto .ico{ width:40px; height:40px; color:var(--soluk2); opacity:.7; }
.m-gorsel .ico{ width:42px; height:42px; color:var(--soluk2); opacity:.7; }
.r-rozet .ico{ width:13px; height:13px; vertical-align:-2px; margin-right:1px; }
.yesil-dot .ico{ width:9px; height:9px; color:var(--yesil); vertical-align:0; }
.ara-btn .ico{ width:16px; height:16px; vertical-align:-3px; margin-right:3px; }
.r-kalp .ico{ width:17px; height:17px; }
.r-kalp.dolu .ico{ fill:currentColor; }
.adim .dot .ico{ width:15px; height:15px; }
.eta-buyuk .ico{ width:16px; height:16px; vertical-align:-3px; margin-right:2px; }

/* ===== Sipariş operasyonu (açık/kapalı/meşgul rozeti, min sepet uyarısı, sıralama çubuğu) ===== */
.r-durum.mesgul{ color:#fff; background:var(--amber); }
.r-durum.kapali{ color:#fff; background:rgba(120,60,40,.72); }
.r-puan{ background:rgba(255,200,80,.95); border-color:rgba(255,200,80,.6); color:#3A2410; font-weight:800; box-shadow:0 2px 6px rgba(120,80,10,.22); }
.r-puan .ico{ width:12px; height:12px; vertical-align:-2px; color:#7A5410; fill:#7A5410; }
.r-kart.kart-kapali{ opacity:.62; }
.r-kart.kart-kapali .r-foto{ filter:grayscale(.5); }
.ode-uyari{ margin:0 0 12px; padding:12px 14px; border-radius:var(--r-md); font-size:13.5px; font-weight:600;
  background:var(--acc-100); border:1px solid rgba(232,49,42,.4); color:var(--acc-koyu); }
.ode-uyari.kapali{ background:rgba(120,60,40,.14); border-color:rgba(120,60,40,.4); color:var(--metin); }
.btn-buyuk[disabled]{ opacity:.5; pointer-events:none; }
.sira-bar{ display:flex; gap:8px; overflow-x:auto; padding:2px 2px 10px; margin:0 -2px; scrollbar-width:none; }
.sira-bar::-webkit-scrollbar{ display:none; }
.sira-chip{ flex:0 0 auto; padding:8px 14px; border-radius:var(--r-pill); font-size:13px; font-weight:700; cursor:pointer;
  background:var(--cam); backdrop-filter:var(--cam-blur); -webkit-backdrop-filter:var(--cam-blur);
  border:1px solid var(--cam-kenar); color:var(--ak); box-shadow:var(--sh1); white-space:nowrap; }
.sira-chip.sec{ background:linear-gradient(180deg,var(--acc),var(--acc-koyu)); color:#fff; border-color:transparent; box-shadow:var(--sh-cta); }
.sira-chip .ico{ width:14px; height:14px; vertical-align:-3px; }

/* ===== Puan & yorum (takip ekranı) ===== */
.puan-kutu{ margin-top:16px; padding:16px; border-radius:var(--r-lg); background:var(--cam-yogun); backdrop-filter:var(--cam-blur); -webkit-backdrop-filter:var(--cam-blur); border:1px solid var(--cam-kenar2); box-shadow:var(--sh1); }
.puan-bas{ font-weight:800; font-size:15px; margin-bottom:10px; color:var(--metin); }
.puan-yildizlar{ display:flex; gap:6px; justify-content:center; margin-bottom:12px; }
.puan-yildiz{ width:44px; height:44px; display:grid; place-items:center; color:var(--soluk2); transition:transform .1s; }
.puan-yildiz .ico{ width:34px; height:34px; }
.puan-yildiz:active{ transform:scale(.9); }
.puan-yildiz.dolu{ color:#FFB020; }
.puan-yildiz.dolu .ico{ fill:#FFC850; stroke:#FFB020; }
.puan-kutu textarea{ width:100%; background:var(--cam-duz); border:1px solid var(--cam-kenar); border-radius:var(--r-md); padding:11px 13px; color:var(--metin); font-size:15px; resize:none; margin-bottom:12px; }
.puan-kutu textarea::placeholder{ color:var(--soluk2); }
.puan-tamam{ margin-top:16px; padding:14px 16px; border-radius:var(--r-md); background:var(--yesil-bg); color:var(--metin); font-weight:700; font-size:14px; display:flex; align-items:center; gap:8px; }
.puan-tamam .ico{ width:18px; height:18px; color:var(--yesil); }

/* yorum fotoğrafı ekle alanı (puan kutusu) */
.puan-foto{ margin-bottom:12px; }
.puan-foto-btn{ display:inline-flex; align-items:center; gap:8px; cursor:pointer; background:var(--cam-duz); border:1px dashed var(--cam-kenar); border-radius:var(--r-md); padding:10px 14px; color:var(--metin); font-size:14px; font-weight:600; }
.puan-foto-btn .ico{ width:18px; height:18px; }
.puan-foto-btn.gizli{ display:none; }
.puan-foto-onizle{ position:relative; display:inline-block; }
.puan-foto-onizle.gizli{ display:none; }
.puan-foto-onizle img{ max-width:140px; max-height:140px; border-radius:var(--r-md); display:block; object-fit:cover; }
.puan-foto-sil{ position:absolute; top:-8px; right:-8px; width:26px; height:26px; border-radius:50%; background:var(--kirmizi); color:#fff; display:grid; place-items:center; box-shadow:var(--sh1); }
.puan-foto-sil .ico{ width:14px; height:14px; }

/* yorum kartındaki fotoğraf + tam-ekran büyük gör */
.yorum-foto{ margin:8px 0; }
.yorum-foto-btn{ display:block; cursor:zoom-in; padding:0; border-radius:var(--r-md); overflow:hidden; }
.yorum-foto-img{ max-width:180px; max-height:180px; width:100%; object-fit:cover; border-radius:var(--r-md); display:block; }
.yfoto-buyuk{ position:fixed; inset:0; z-index:60; background:rgba(0,0,0,.88); display:grid; place-items:center; padding:24px; }
.yfoto-buyuk-img{ max-width:96vw; max-height:88vh; border-radius:10px; box-shadow:0 12px 40px rgba(0,0,0,.5); }
.yfoto-kapat{ position:absolute; top:16px; right:16px; width:44px; height:44px; border-radius:50%; background:rgba(255,255,255,.16); color:#fff; display:grid; place-items:center; backdrop-filter:blur(8px); -webkit-backdrop-filter:blur(8px); }
.yfoto-kapat .ico{ width:22px; height:22px; }

/* ===== Geçmiş sipariş (tekrar-sipariş) ===== */
.gecmis-aktif{ display:flex; align-items:center; gap:12px; width:100%; text-align:left; padding:14px 16px; margin-bottom:14px; border-radius:var(--r-lg); background:var(--cam-yogun); backdrop-filter:var(--cam-blur); -webkit-backdrop-filter:var(--cam-blur); border:1px solid var(--cam-kenar2); box-shadow:var(--sh1); color:var(--metin); }
.gecmis-aktif .ico{ width:22px; height:22px; color:var(--acc); flex:0 0 auto; }
.gecmis-aktif span{ display:flex; flex-direction:column; flex:1; }
.gecmis-aktif small{ color:var(--soluk); font-size:12.5px; font-weight:500; }
.gecmis-aktif .mhu-ok{ flex:0 0 auto; color:var(--soluk2); }
.gecmis-liste{ display:flex; flex-direction:column; gap:12px; }
.gecmis-kart{ padding:14px 16px; border-radius:var(--r-lg); background:var(--cam-yogun); backdrop-filter:var(--cam-blur); -webkit-backdrop-filter:var(--cam-blur); border:1px solid var(--cam-kenar2); box-shadow:var(--sh1); }
.gecmis-ust{ display:flex; justify-content:space-between; align-items:baseline; gap:10px; margin-bottom:6px; }
.gecmis-ust b{ font-size:15px; color:var(--metin); }
.gecmis-ust span{ font-size:12px; color:var(--soluk); white-space:nowrap; }
.gecmis-kalem{ font-size:13.5px; color:var(--soluk); line-height:1.4; margin-bottom:11px; }
.gecmis-alt{ display:flex; justify-content:space-between; align-items:center; gap:10px; }
.gecmis-tutar{ font-weight:800; font-size:16px; color:var(--metin); }
.btn-tekrar{ display:inline-flex; align-items:center; gap:6px; padding:9px 15px; border-radius:var(--r-pill); font-weight:700; font-size:13.5px; color:#fff; background:linear-gradient(180deg,var(--acc),var(--acc-koyu)); box-shadow:var(--sh-cta); }
.btn-tekrar .ico{ width:15px; height:15px; }

/* ===== Ürün seçenekleri (varyant/ekstra) ===== */
.m-fiyat .m-art{ font-size:11px; font-weight:700; color:var(--acc); margin-left:5px; }
.ekle.sec-dolu{ background:linear-gradient(180deg,var(--acc),var(--acc-koyu)); color:#fff; }
.s-sec{ font-size:12px; color:var(--soluk); line-height:1.35; margin:1px 0 3px; }
.kalem-sec{ color:var(--soluk2); font-weight:500; font-size:.92em; }
.sec-sheet{ max-height:86vh; display:flex; flex-direction:column; }
.sec-govde{ overflow-y:auto; padding:4px 18px 8px; -webkit-overflow-scrolling:touch; }
.sec-grup{ margin:14px 0; }
.sec-grup-bas{ font-weight:800; font-size:15px; color:var(--metin); margin-bottom:8px; display:flex; align-items:baseline; gap:8px; }
.sec-grup-not{ font-size:11.5px; font-weight:600; color:var(--soluk2); text-transform:uppercase; letter-spacing:.3px; }
.sec-opt{ display:flex; align-items:center; justify-content:space-between; gap:12px; padding:13px 14px; margin-bottom:8px; border-radius:var(--r-md); background:var(--cam-duz); border:1px solid var(--cam-kenar); cursor:pointer; }
.sec-opt:has(input:checked){ border-color:var(--acc); background:var(--acc-100); }
.sec-opt-ad{ font-size:14.5px; color:var(--metin); font-weight:600; }
.sec-opt-f{ color:var(--acc); font-weight:700; font-size:13px; margin-left:4px; }
.sec-opt input{ width:22px; height:22px; flex:0 0 auto; accent-color:var(--acc); }
.sec-alt{ padding:12px 18px calc(14px + env(safe-area-inset-bottom)); border-top:1px solid var(--cizgi2); background:var(--cam-yogun); backdrop-filter:var(--cam-blur); -webkit-backdrop-filter:var(--cam-blur); }

/* ===== Kayıtlı adres + indirim kodu + zamanlı teslimat (ödeme ekranı) ===== */
.adres-cipler{ display:flex; gap:8px; flex-wrap:wrap; margin:0 0 8px; }
.adres-cip{ padding:7px 13px; border-radius:var(--r-pill); font-size:13px; font-weight:700; background:var(--cam-duz); border:1px solid var(--cam-kenar); color:var(--ak); }
.adres-cip.sec{ background:linear-gradient(180deg,var(--acc),var(--acc-koyu)); color:#fff; border-color:transparent; }
.adres-cip.yeni{ color:var(--acc); }
.adres-kaydet{ display:flex; align-items:center; gap:7px; font-size:13px; color:var(--soluk); margin-top:8px; cursor:pointer; }
.adres-kaydet input{ width:auto; }
.kod-grup{ padding:12px !important; }
.kod-satir{ display:flex; gap:8px; }
.kod-satir input{ flex:1; background:var(--cam-duz); border:1px solid var(--cam-kenar); border-radius:var(--r-md); padding:12px 14px; color:var(--metin); font-size:15px; text-transform:uppercase; }
.kod-hata{ color:var(--kirmizi); font-size:13px; margin-top:8px; font-weight:600; }
.kod-ok{ color:var(--yesil); font-size:13px; margin-top:8px; font-weight:700; }
.oz-indirim{ color:var(--yesil); font-weight:700; }
.oz-indirim .oz-fi{ color:var(--yesil); }
.zaman-seg{ display:flex; gap:8px; }
.zaman-seg button{ flex:1; padding:11px; border-radius:var(--r-md); font-weight:700; font-size:14px; background:var(--cam-duz); border:1px solid var(--cam-kenar); color:var(--ak); }
.zaman-seg button.sec{ background:linear-gradient(180deg,var(--acc),var(--acc-koyu)); color:#fff; border-color:transparent; }
.zaman-sel{ width:100%; margin-top:10px; background:var(--cam-duz); border:1px solid var(--cam-kenar); border-radius:var(--r-md); padding:12px 14px; color:var(--metin); font-size:15px; }
.takip-ek{ display:flex; gap:14px; flex-wrap:wrap; margin-top:8px; font-size:13.5px; color:var(--soluk); font-weight:600; }
.takip-ek .ico{ width:14px; height:14px; vertical-align:-2px; }
.adres-kayit{ display:flex; align-items:center; gap:10px; padding:12px 14px; border-radius:var(--r-md); background:var(--cam-yogun); border:1px solid var(--cam-kenar2); margin-bottom:8px; }
.adres-kayit .adres-ic{ flex:1; display:flex; flex-direction:column; }
.adres-kayit small{ color:var(--soluk); font-size:12.5px; }
.adres-kayit-sil{ width:34px; height:34px; display:grid; place-items:center; border-radius:9px; color:var(--kirmizi); background:var(--cam-duz); border:1px solid var(--cam-kenar); }

/* ===== Menü içi arama + müşteri yorumları (restoran sayfası) ===== */
.menu-ara{ position:relative; margin:4px 0 14px; }
.menu-ara input{ width:100%; background:var(--cam-duz); backdrop-filter:var(--cam-blur); -webkit-backdrop-filter:var(--cam-blur); border:1px solid var(--cam-kenar); border-radius:var(--r-md); padding:13px 14px 13px 44px; color:var(--metin); font-size:15px; }
.menu-ara .ara-ik{ position:absolute; left:15px; top:50%; transform:translateY(-50%); color:var(--soluk2); pointer-events:none; }
.menu-ara .ara-ik .ico{ width:18px; height:18px; }
.yorum-ozet{ display:flex; align-items:center; gap:12px; margin:6px 0 14px; }
.yo-puan{ font-size:22px; font-weight:800; color:var(--metin); display:inline-flex; align-items:center; gap:6px; }
.yo-puan .ico{ width:20px; height:20px; color:#FFC850; }
.yo-say{ font-size:14px; color:var(--soluk); font-weight:600; }
.yorum-kart{ background:var(--cam-yogun); backdrop-filter:var(--cam-blur); -webkit-backdrop-filter:var(--cam-blur); border:1px solid var(--cam-kenar2); border-radius:var(--r-lg); padding:13px 15px; margin-bottom:10px; box-shadow:var(--sh1); }
.yorum-bas{ display:flex; justify-content:space-between; align-items:center; margin-bottom:6px; }
.yorum-yildiz{ font-weight:800; color:var(--metin); display:inline-flex; align-items:center; gap:5px; }
.yorum-yildiz .ico{ width:15px; height:15px; color:#FFC850; }
.yorum-tarih{ font-size:12px; color:var(--soluk2); }
.yorum-metin{ font-size:14px; color:var(--metin); line-height:1.4; }
.yorum-yanit{ font-size:13px; color:var(--soluk); background:var(--cam-duz); border-left:3px solid var(--acc); border-radius:8px; padding:8px 11px; margin-top:9px; line-height:1.4; }

/* ===== FAZ 1: Kampanya rozeti (kart) + Çalışma saatleri (restoran sayfası) ===== */
.r-foto{ position:relative; }
.r-kampanya{
  position:absolute; top:7px; left:7px; z-index:4;
  display:inline-flex; align-items:center; gap:4px;
  background:linear-gradient(135deg,#FF6B47 0%, var(--acc) 55%, var(--acc-koyu) 100%);
  color:#fff; font-weight:800; font-size:11px; letter-spacing:-.2px;
  padding:4px 9px; border-radius:var(--r-pill);
  border:1px solid rgba(255,255,255,.45); box-shadow:var(--sh-cta);
  text-shadow:0 1px 4px rgba(120,20,0,.4); max-width:78%;
}
.r-kampanya .ico{ width:12px; height:12px; stroke:#fff; stroke-width:2; fill:none; flex:0 0 auto; }
/* Çalışma saatleri — açılır panel (premium cam) */
.cs-panel{ margin-top:12px; background:var(--cam-yogun); backdrop-filter:var(--cam-blur); -webkit-backdrop-filter:var(--cam-blur);
  border:1px solid var(--cam-kenar2); border-radius:var(--r-md); box-shadow:var(--sh1); color:var(--metin); overflow:hidden; }
.cs-ozet{ display:flex; align-items:center; gap:8px; padding:14px 16px; font-weight:800; font-size:14.5px; cursor:pointer; list-style:none; }
.cs-ozet::-webkit-details-marker{ display:none; }
.cs-ozet .ico{ width:17px; height:17px; }
.cs-ozet .cs-chev{ margin-left:auto; transition:transform .2s; }
.cs-ozet .cs-chev .ico{ width:16px; height:16px; transform:rotate(90deg); }
.cs-panel[open] .cs-chev{ transform:rotate(180deg); }
.cs-liste{ padding:0 16px 8px; }
.cs-satir{ display:flex; align-items:center; justify-content:space-between; padding:11px 4px; border-bottom:1px solid var(--cizgi2); font-size:14px; }
.cs-satir:last-child{ border-bottom:none; }
.cs-satir .cs-gun{ color:var(--soluk); font-weight:600; }
.cs-satir .cs-saat{ font-weight:700; font-variant-numeric:tabular-nums; letter-spacing:.2px; }
.cs-satir.bugun{ background:var(--acc-100); margin:0 -16px; padding:11px 20px; border-bottom:none; border-radius:8px; }
.cs-satir.bugun .cs-gun{ color:var(--acc-koyu); font-weight:800; }

/* ===== FAZ 2: ETA geri sayım + Bahşiş + Temassız + Ücretsiz teslimat ===== */
/* Canlı ETA geri sayım */
.eta{ position:relative; display:flex; flex-direction:column; align-items:center; gap:2px; margin-top:14px;
  background:var(--cam-yogun); backdrop-filter:var(--cam-blur); -webkit-backdrop-filter:var(--cam-blur);
  border:1px solid var(--cam-kenar2); border-radius:var(--r-lg); padding:24px 20px; box-shadow:var(--sh2); color:var(--metin); }
.eta::before{ content:''; position:absolute; inset:0; border-radius:inherit; border:2px solid var(--acc); opacity:0; animation:eta-nabiz 2.4s ease-out infinite; pointer-events:none; }
.eta.acil::before{ animation-duration:1.1s; }
@keyframes eta-nabiz{ 0%{ transform:scale(1); opacity:.5 } 100%{ transform:scale(1.04); opacity:0 } }
.eta .dk{ font-size:60px; font-weight:800; line-height:1; letter-spacing:-2px; font-variant-numeric:tabular-nums; color:var(--acc-koyu); }
.eta.acil .dk{ color:var(--acc); }
.eta .birim{ font-size:13px; font-weight:700; color:var(--soluk); text-transform:uppercase; letter-spacing:1px; }
.eta .etiket{ margin-top:8px; font-size:13px; color:var(--soluk); }
/* Bahşiş çipleri */
.bahsis{ display:flex; gap:9px; }
.bahsis-cip{ flex:1; background:var(--cam-yogun); backdrop-filter:var(--cam-blur); -webkit-backdrop-filter:var(--cam-blur);
  border:1px solid var(--cam-kenar2); border-radius:var(--r-md); padding:14px 6px; text-align:center; font-weight:800; font-size:15px; color:var(--metin); box-shadow:var(--sh1); transition:transform .1s; }
.bahsis-cip:active{ transform:scale(.94); }
.bahsis-cip.sec{ color:#fff; border-color:rgba(255,255,255,.5); background:linear-gradient(180deg,#FF6B47 0%,var(--acc-koyu) 100%); box-shadow:var(--sh-cta); }
.bahsis-cip.ozel{ font-size:13px; display:flex; align-items:center; justify-content:center; gap:5px; }
.bahsis-cip.ozel .ico{ width:15px; height:15px; }
/* Temassız teslimat switch */
.tts{ display:flex; align-items:center; justify-content:space-between; gap:14px; padding:15px; background:var(--cam-yogun); backdrop-filter:var(--cam-blur); -webkit-backdrop-filter:var(--cam-blur); border:1px solid var(--cam-kenar2); border-radius:var(--r-md); box-shadow:var(--sh1); color:var(--metin); }
.tts .tts-met{ font-weight:700; font-size:15px; }
.tts .tts-alt{ color:var(--soluk); font-size:13px; margin-top:2px; }
.switch{ position:relative; width:52px; height:31px; flex:0 0 auto; border-radius:var(--r-pill); background:rgba(90,38,22,.22); box-shadow:inset 0 1px 3px rgba(40,14,8,.3); transition:background .2s; cursor:pointer; }
.switch::after{ content:''; position:absolute; top:3px; left:3px; width:25px; height:25px; border-radius:50%; background:#fff; box-shadow:0 2px 6px rgba(40,14,8,.4),inset 0 1px 0 rgba(255,255,255,.8); transition:transform .2s; }
.switch.acik{ background:var(--yesil); }
.switch.acik::after{ transform:translateX(21px); }
/* Ücretsiz teslimat ilerleme */
.ucret-ilerle{ margin:12px 0 4px; background:var(--cam-yogun); backdrop-filter:var(--cam-blur); -webkit-backdrop-filter:var(--cam-blur); border:1px solid var(--cam-kenar2); border-radius:var(--r-md); padding:14px 16px; box-shadow:var(--sh1); color:var(--metin); }
.ucret-ust{ display:flex; align-items:center; gap:7px; font-size:14px; font-weight:700; margin-bottom:10px; }
.ucret-ust b{ color:var(--acc-koyu); }
.ucret-ust .ico{ width:16px; height:16px; flex:0 0 auto; }
.ucret-cubuk{ height:10px; border-radius:var(--r-pill); background:rgba(90,38,22,.16); overflow:hidden; box-shadow:inset 0 1px 2px rgba(40,14,8,.2); }
.ucret-dolu{ height:100%; border-radius:var(--r-pill); background:linear-gradient(90deg,#FF6B47,var(--acc)); box-shadow:0 0 10px rgba(232,49,42,.5); transition:width .5s cubic-bezier(.34,1.2,.64,1); }

/* ===== FAZ 3: Kırılımlı puan (lezzet/servis/paketleme) ===== */
.puan-grup{ background:var(--cam-duz); border:1px solid var(--cam-kenar); border-radius:var(--r-md); padding:4px 14px; margin-bottom:12px; }
.puan-satir{ display:flex; align-items:center; justify-content:space-between; padding:11px 0; border-bottom:1px solid var(--cizgi2); }
.puan-satir:last-child{ border-bottom:none; }
.puan-satir .et{ font-weight:700; font-size:15px; color:var(--metin); }
.yildizlar{ display:inline-flex; gap:5px; }
.yld{ width:30px; height:30px; display:grid; place-items:center; color:var(--soluk2); transition:transform .1s; }
.yld .ico{ width:26px; height:26px; }
.yld:active{ transform:scale(1.2); }
.yld.dolu{ color:#FFB020; }
.yld.dolu .ico{ fill:#FFC850; stroke:#FFB020; }
/* Müşteri yorum kırılım rozetleri + sıralama çipleri */
.yorum-kirilim{ display:flex; gap:10px; flex-wrap:wrap; margin-top:6px; font-size:12px; color:var(--soluk); }
.yorum-kirilim span{ font-weight:600; }
.yorum-sira{ display:flex; gap:8px; margin:0 0 12px; }
.yorum-sira .ys-chip{ padding:6px 13px; border-radius:var(--r-pill); font-size:12.5px; font-weight:700; background:var(--cam-duz); border:1px solid var(--cam-kenar); color:var(--ak); }
.yorum-sira .ys-chip.sec{ background:linear-gradient(180deg,var(--acc),var(--acc-koyu)); color:#fff; border-color:transparent; }
/* Menü ürünü diyet/alerjen etiketleri */
.m-etiketler{ display:flex; gap:6px; flex-wrap:wrap; margin-top:5px; }
.m-etiket{ font-size:10.5px; font-weight:700; padding:2px 8px; border-radius:var(--r-pill); background:var(--yesil-bg); color:var(--yesil); border:1px solid rgba(20,200,118,.3); }
.m-etiket.aci{ background:rgba(226,59,46,.14); color:var(--kirmizi); border-color:rgba(226,59,46,.3); }

/* ===== FAZ 4: Sepet nabzı + Onboarding ===== */
.adet-bal{ position:relative; display:inline-grid; place-items:center; }
.adet-bal.artti{ animation:bal-pop .28s cubic-bezier(.34,1.56,.64,1); }
@keyframes bal-pop{ 0%{ transform:scale(1) } 45%{ transform:scale(1.35) } 100%{ transform:scale(1) } }
.adet-bal::before{ content:''; position:absolute; inset:-3px; border-radius:10px; border:2px solid rgba(255,255,255,.55); opacity:0; animation:bal-nabiz 2.6s ease-out infinite; pointer-events:none; }
@keyframes bal-nabiz{ 0%{ transform:scale(1); opacity:.55 } 100%{ transform:scale(1.5); opacity:0 } }
/* Onboarding alttan-açılır */
.ob-sheet{ padding-bottom:env(safe-area-inset-bottom); }
.ob-govde{ padding:8px 20px 4px; display:flex; flex-direction:column; gap:14px; }
.ob-adim{ display:flex; align-items:center; gap:14px; }
.ob-adim .ob-ik{ width:48px; height:48px; flex:0 0 auto; display:grid; place-items:center; border-radius:14px; background:var(--acc-100); color:var(--acc-koyu); }
.ob-adim .ob-ik .ico{ width:24px; height:24px; }
.ob-adim b{ display:block; font-size:15.5px; color:var(--metin); }
.ob-adim small{ color:var(--soluk); font-size:13px; }

/* ===== FAZ 5: Keşif filtre sheet (diyet + fiyat) ===== */
.filtre-btn{ position:relative; }
.filtre-say{ position:absolute; top:-6px; right:-6px; min-width:20px; height:20px; padding:0 6px; border-radius:var(--r-pill);
  background:linear-gradient(180deg,var(--acc),var(--acc-koyu)); color:#fff; font-size:11px; font-weight:800;
  display:grid; place-items:center; border:1.5px solid rgba(255,255,255,.5); box-shadow:0 2px 8px rgba(214,52,20,.5); }
.fs-govde{ padding:6px 18px 10px; overflow-y:auto; }
.fs-bolum{ font-size:11.5px; font-weight:800; color:var(--soluk2); text-transform:uppercase; letter-spacing:.05em; margin:10px 2px 10px; }
.fs-cipler{ display:flex; flex-wrap:wrap; gap:9px; }
.fs-cip{ padding:9px 15px; border-radius:var(--r-pill); font-size:13.5px; font-weight:700; color:var(--metin);
  background:var(--cam-duz); border:1px solid var(--cam-kenar2); box-shadow:var(--sh1); transition:transform .1s; }
.fs-cip:active{ transform:scale(.95); }
.fs-cip.sec{ color:#fff; border-color:transparent; background:linear-gradient(180deg,var(--acc),var(--acc-koyu)); box-shadow:var(--sh-cta); }
.fs-alt{ display:flex; gap:10px; padding:12px 18px calc(14px + env(safe-area-inset-bottom)); position:sticky; bottom:0;
  background:linear-gradient(0deg,var(--cam-yogun-duz) 65%,transparent); border-top:1px solid var(--cizgi2); }
.fs-temizle{ flex:0 0 auto; padding:14px 20px; border-radius:var(--r-md); font-weight:800; font-size:14.5px; color:var(--soluk);
  background:var(--cam-duz); border:1px solid var(--cam-kenar2); box-shadow:var(--sh1); }
.fs-uygula{ flex:1; }
.fs-temizle:active,.fs-uygula:active{ transform:scale(.985); }

/* ===== FAZ 6: Menü kategori çipleri + Çok satan + Faydalı-oy ===== */
.menu-kat-bar{ display:flex; gap:8px; overflow-x:auto; padding:2px 2px 12px; margin:0 -2px; scrollbar-width:none; }
.menu-kat-bar::-webkit-scrollbar{ display:none; }
.menu-kat-cip{ flex:0 0 auto; padding:8px 15px; border-radius:var(--r-pill); font-size:13px; font-weight:700; white-space:nowrap;
  color:var(--ak); background:var(--cam); backdrop-filter:var(--cam-blur); -webkit-backdrop-filter:var(--cam-blur);
  border:1px solid var(--cam-kenar); box-shadow:var(--sh1); }
.menu-kat-cip.sec{ color:#fff; border-color:transparent; background:linear-gradient(180deg,var(--acc),var(--acc-koyu)); box-shadow:var(--sh-cta); }
/* Çok satan rozeti (menü görseli köşesi) */
.m-gorsel{ position:relative; }
.cs-rozet{ position:absolute; top:7px; left:7px; z-index:4; display:inline-flex; align-items:center; gap:5px;
  font-size:10.5px; font-weight:800; letter-spacing:.2px; padding:3px 9px 3px 7px; border-radius:var(--r-pill); color:#fff;
  background:linear-gradient(180deg,var(--acc),var(--acc-koyu)); border:1px solid rgba(255,255,255,.35);
  box-shadow:0 3px 10px rgba(214,52,20,.4),inset 0 1px 0 rgba(255,255,255,.4); text-shadow:0 1px 3px rgba(120,20,0,.4); }
.cs-rozet .ico{ width:13px; height:13px; stroke:#fff; stroke-width:2; fill:none; flex:0 0 auto; }
/* Faydalı-oy butonu (yorum kartı) */
.fyd-btn{ display:inline-flex; align-items:center; gap:7px; margin-top:10px; padding:7px 13px; border-radius:var(--r-pill);
  font-size:13px; font-weight:700; color:var(--soluk); background:var(--cam-duz); border:1px solid var(--cam-kenar2);
  box-shadow:var(--sh1); transition:transform .12s,background .18s,color .18s,border-color .18s; }
.fyd-btn .ico{ width:16px; height:16px; stroke:currentColor; stroke-width:1.8; fill:none; transition:fill .18s; }
.fyd-btn:active{ transform:scale(.94); }
.fyd-btn .fyd-n{ font-variant-numeric:tabular-nums; }
.fyd-btn.secili{ color:var(--yesil); background:var(--yesil-bg); border-color:rgba(20,200,118,.4); }
.fyd-btn.secili .ico{ fill:var(--yesil); stroke:var(--yesil); }

/* ===== FAZ 7: Flash kampanya rozeti + Bildirim/Görünüm tercih merkezi ===== */
.flash-rozet{ position:absolute; left:7px; bottom:7px; z-index:3; display:inline-flex; align-items:center; gap:6px;
  padding:5px 11px 5px 9px; border-radius:var(--r-pill); font-size:11.5px; font-weight:800; color:#fff; letter-spacing:.1px; max-width:84%;
  background:linear-gradient(105deg,var(--acc) 0%,var(--acc-koyu) 100%); border:1px solid rgba(255,255,255,.3);
  box-shadow:0 4px 14px rgba(214,52,20,.45),inset 0 1px 0 rgba(255,255,255,.4); text-shadow:0 1px 3px rgba(120,20,0,.45); }
.flash-rozet .ico{ width:14px; height:14px; stroke:#fff; stroke-width:2; fill:none; flex:0 0 auto; animation:flash-tik 2s steps(1) infinite; }
.flash-rozet b{ font-weight:900; }
@keyframes flash-tik{ 0%,100%{ opacity:1 } 50%{ opacity:.55 } }
.bt-bolum{ background:var(--cam-yogun); backdrop-filter:var(--cam-blur); -webkit-backdrop-filter:var(--cam-blur);
  border:1px solid var(--cam-kenar2); border-radius:var(--r-lg); padding:4px 16px; box-shadow:var(--sh1); color:var(--metin); }
.bt-satir{ display:flex; align-items:center; gap:14px; padding:14px 0; border-bottom:1px solid rgba(90,38,22,.12); }
.bt-satir:last-child{ border-bottom:none; }
.bt-orta{ flex:1; min-width:0; }
.bt-ad{ font-weight:700; font-size:15px; color:var(--metin); }
.bt-ack{ font-size:12.5px; color:var(--soluk); margin-top:2px; line-height:1.35; }

/* ===== FAZ 8: Açık tema (token-swap; bileşen CSS'i değişmez) ===== */
:root[data-tema="acik"]{
  --metin:#2A1A12; --soluk:#7A5347; --soluk2:#9A7868;
  --ak:#2A1A12; --ak-soluk:rgba(42,26,18,.62);
  --cam:linear-gradient(180deg, rgba(255,255,255,.78) 0%, rgba(255,250,247,.62) 100%);
  --cam-duz:rgba(255,255,255,.68);
  --cam-yogun:linear-gradient(180deg, rgba(255,255,255,.95) 0%, rgba(255,250,247,.90) 100%);
  --cam-yogun-duz:rgba(255,252,250,.93);
  --cam-kenar:rgba(120,70,45,.18); --cam-kenar2:rgba(120,70,45,.14);
  --cizgi2:rgba(120,70,45,.14);
  --sh1:0 1px 2px rgba(120,70,45,.10), 0 4px 12px rgba(120,70,45,.10);
  --sh2:0 2px 6px rgba(120,70,45,.12), 0 12px 30px rgba(120,70,45,.14);
  --sh3:0 4px 10px rgba(120,70,45,.14), 0 22px 50px rgba(120,70,45,.18);
}
:root[data-tema="acik"] body{
  background:
    radial-gradient(85% 55% at 60% -2%, #FFE2CC 0%, rgba(255,226,204,0) 52%),
    radial-gradient(92% 82% at 14% 106%, #FFF3E8 0%, rgba(255,243,232,0) 60%),
    linear-gradient(165deg, #FFF6EE 0%, #FBE9DC 50%, #F6DFD0 100%);
  background-attachment:fixed;
}

/* Faz 8: favori kalp pop animasyonu + esnaf kampanya flash satırı */
.r-kalp.kalp-pop{ animation:kalp-pop .4s cubic-bezier(.34,1.56,.64,1); }
@keyframes kalp-pop{ 0%{ transform:scale(1) } 35%{ transform:scale(1.4) } 60%{ transform:scale(.9) } 100%{ transform:scale(1) } }

/* ===================================================================== */
/*  FAZ 9 — Bildirim Merkezi (in-app)                                     */
/* ===================================================================== */
.bildirim{ position:relative; }
.bildirim-badge{
  position:absolute; top:-2px; right:-2px;
  min-width:17px; height:17px; padding:0 4px;
  display:grid; place-items:center;
  font-size:10.5px; font-weight:800; line-height:1; color:#fff;
  background:var(--kirmizi); border-radius:999px;
  box-shadow:0 0 0 2px var(--cam-yogun-duz), var(--sh1);
  animation:bm-badge-pop .22s ease; pointer-events:none;
}
@keyframes bm-badge-pop{ from{ transform:scale(0) } to{ transform:scale(1) } }

.bm-sheet{ padding-bottom:max(14px, env(safe-area-inset-bottom)); }
.bm-tumoku{
  margin-left:auto; margin-right:6px; padding:7px 11px;
  font-size:12.5px; font-weight:700; color:var(--acc);
  background:rgba(232,49,42,.10); border:none; border-radius:999px; cursor:pointer;
  transition:background .18s ease;
}
.bm-tumoku:active{ background:rgba(232,49,42,.18); }
.bm-liste{ max-height:64vh; overflow-y:auto; -webkit-overflow-scrolling:touch; padding:2px 0 6px; }
.bm-item{
  position:relative; display:grid; grid-template-columns:40px 1fr auto;
  align-items:start; gap:12px; width:100%; min-height:44px; padding:13px 16px;
  text-align:left; background:transparent; border:none;
  border-bottom:1px solid var(--cizgi2); cursor:pointer; transition:background .18s ease;
}
.bm-item:last-child{ border-bottom:none; }
.bm-item:active{ background:rgba(232,49,42,.06); }
.bm-ik{
  display:grid; place-items:center; width:40px; height:40px; border-radius:12px;
  background:var(--cam); box-shadow:var(--sh1); color:var(--acc);
}
.bm-ik svg, .bm-ik .ico{ width:20px; height:20px; }
.bm-govde{ display:flex; flex-direction:column; gap:3px; min-width:0; }
.bm-bas{ font-size:14.5px; font-weight:700; color:var(--metin); line-height:1.3; }
.bm-aciklama{
  font-size:13px; color:var(--soluk); line-height:1.35;
  display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;
}
.bm-zaman{ flex-shrink:0; font-size:11.5px; font-weight:600; color:var(--soluk); white-space:nowrap; padding-top:2px; }
.bm-okunmamis{ background:rgba(232,49,42,.06); }
.bm-okunmamis:active{ background:rgba(232,49,42,.11); }
.bm-okunmamis::before{
  content:""; position:absolute; left:0; top:50%; transform:translateY(-50%);
  width:3px; height:58%; border-radius:0 3px 3px 0; background:var(--acc);
}
.bm-okunmamis .bm-bas::after{
  content:""; display:inline-block; width:7px; height:7px; margin-left:7px;
  vertical-align:middle; border-radius:50%; background:var(--acc);
  box-shadow:0 0 0 3px rgba(232,49,42,.18);
}
.bm-bos{ display:flex; flex-direction:column; align-items:center; text-align:center; padding:54px 24px 60px; }
.bm-bos-ik{
  display:grid; place-items:center; width:64px; height:64px; margin-bottom:14px;
  border-radius:50%; background:var(--cam); box-shadow:var(--sh2); color:var(--soluk);
}
.bm-bos-ik svg, .bm-bos-ik .ico{ width:28px; height:28px; opacity:.55; }
.bm-bos-bas{ margin:0 0 4px; font-size:15px; font-weight:800; color:var(--metin); }
.bm-bos-alt{ margin:0; font-size:13px; color:var(--soluk); }

/* ===================================================================== */
/*  FAZ 13 — Kampanya carousel (kayan banner şeridi)                      */
/* ===================================================================== */
.kmp-carousel{ margin:14px 0 4px; }
.kmp-track{
  display:flex; gap:12px; overflow-x:auto; scroll-snap-type:x mandatory;
  -webkit-overflow-scrolling:touch; scroll-behavior:smooth; padding:2px 16px 4px;
  scrollbar-width:none;
}
.kmp-track::-webkit-scrollbar{ display:none; }
.kmp-banner{
  flex:0 0 86%; max-width:430px; scroll-snap-align:center;
  display:flex; align-items:center; gap:12px; min-height:84px; padding:13px 15px;
  border:1px solid var(--cam-kenar); border-radius:18px;
  background:var(--cam); backdrop-filter:blur(var(--cam-blur)); -webkit-backdrop-filter:blur(var(--cam-blur));
  box-shadow:var(--sh2); color:var(--metin); text-align:left; cursor:pointer;
  transition:transform .18s ease, box-shadow .18s ease;
}
.kmp-banner:active{ transform:scale(.985); }
.kmp-ic{
  flex:0 0 auto; width:42px; height:42px; display:grid; place-items:center;
  border-radius:12px; background:var(--cam-yogun); color:var(--acc);
}
.kmp-ic svg, .kmp-ic .ico{ width:22px; height:22px; }
.kmp-ad{ flex:1 1 auto; min-width:0; display:flex; flex-direction:column; gap:6px; }
.kmp-isim{ font-weight:800; font-size:15px; line-height:1.2; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.kmp-etiket{
  align-self:flex-start; font-size:12px; font-weight:700; line-height:1; padding:5px 10px;
  border-radius:999px; background:var(--cam-yogun); color:var(--metin); white-space:nowrap;
}
.kmp-foto{ flex:0 0 auto; width:56px; height:56px; border-radius:14px; overflow:hidden; box-shadow:var(--sh1); background:var(--cam-yogun); }
.kmp-foto img{ width:100%; height:100%; object-fit:cover; display:block; }
.kmp-flash{ border-color:transparent; background:linear-gradient(135deg, var(--acc), var(--acc-koyu)); color:#fff; box-shadow:var(--sh-cta); }
.kmp-flash .kmp-ic{ background:rgba(255,255,255,.18); color:#fff; }
.kmp-flash .kmp-etiket{ background:rgba(255,255,255,.22); color:#fff; font-weight:800; }
.kmp-flash .kmp-foto{ box-shadow:0 0 0 2px rgba(255,255,255,.35); }
.kmp-dots{ display:flex; justify-content:center; gap:7px; margin-top:10px; }
.kmp-dot{ width:7px; height:7px; border-radius:50%; background:var(--soluk); opacity:.5; transition:width .2s ease, background .2s ease, opacity .2s ease; }
.kmp-dot--aktif{ width:18px; border-radius:4px; background:var(--acc); opacity:1; }
@media (prefers-reduced-motion:reduce){ .kmp-track{ scroll-behavior:auto; } .kmp-banner{ transition:none; } }

/* ===================================================================== */
/*  FAZ 10 — Kırılım puan özeti (lezzet/servis/paketleme barları)         */
/* ===================================================================== */
.kir-ozet{ display:flex; flex-direction:column; gap:9px; margin:2px 2px 14px; padding:14px 14px; background:var(--cam); border:1px solid var(--cam-kenar2); border-radius:16px; box-shadow:var(--sh1); }
.kir-row{ display:grid; grid-template-columns:74px 1fr 30px; align-items:center; gap:10px; }
.kir-et{ font-size:13px; font-weight:700; color:var(--soluk); }
.kir-bar{ height:8px; border-radius:999px; background:rgba(255,255,255,.10); overflow:hidden; box-shadow:inset 0 0 0 1px var(--cizgi2); }
.kir-bar i{ display:block; height:100%; border-radius:999px; background:linear-gradient(90deg, var(--amber), #FFC24B); }
.kir-val{ font-size:13px; font-weight:800; color:var(--metin); text-align:right; font-variant-numeric:tabular-nums; }

/* ===================================================================== */
/*  FAZ 16 — Erişilebilirlik (skip-link + focus-visible)                  */
/* ===================================================================== */
.skip-link{
  position:fixed; top:-60px; left:12px; z-index:2000;
  padding:10px 16px; border-radius:0 0 12px 12px;
  background:var(--acc); color:#fff; font-weight:800; font-size:14px;
  text-decoration:none; box-shadow:var(--sh2); transition:top .18s ease;
}
.skip-link:focus{ top:0; outline:none; }
:focus-visible{ outline:2.5px solid var(--acc); outline-offset:2px; border-radius:6px; }
.r-kart:focus-visible, .kmp-banner:focus-visible, .m-kart:focus-visible{ outline-offset:-2px; }
#ekran:focus{ outline:none; }
@media (prefers-reduced-motion:reduce){ .skip-link{ transition:none; } }

/* ===================================================================== */
/*  FAZ 17 — Güven katmanı: doğrulanmış rozet + puan histogramı + filtre  */
/* ===================================================================== */
.yorum-dogrulanmis{ display:inline-flex; align-items:center; gap:3px; font-size:11px; font-weight:700; color:var(--yesil); background:rgba(40,180,99,.12); border-radius:999px; padding:3px 8px; }
.yorum-dogrulanmis svg, .yorum-dogrulanmis .ico{ width:12px; height:12px; }
.pd-ozet{ display:flex; flex-direction:column; gap:6px; margin:2px 2px 12px; padding:13px 14px; background:var(--cam); border:1px solid var(--cam-kenar2); border-radius:16px; box-shadow:var(--sh1); }
.pd-row{ display:grid; grid-template-columns:34px 1fr 24px; align-items:center; gap:9px; }
.pd-yild{ display:inline-flex; align-items:center; gap:1px; font-size:12px; font-weight:800; color:var(--soluk); }
.pd-yild svg, .pd-yild .ico{ width:11px; height:11px; }
.pd-bar{ height:8px; border-radius:999px; background:rgba(255,255,255,.10); overflow:hidden; box-shadow:inset 0 0 0 1px var(--cizgi2); }
.pd-bar i{ display:block; height:100%; border-radius:999px; background:linear-gradient(90deg, var(--amber), #FFC24B); }
.pd-n{ font-size:12px; font-weight:700; color:var(--soluk); text-align:right; font-variant-numeric:tabular-nums; }
.yorum-filtre{ display:flex; gap:7px; overflow-x:auto; padding:2px 0 8px; scrollbar-width:none; }
.yorum-filtre::-webkit-scrollbar{ display:none; }
.yf-chip{ flex:0 0 auto; font-size:12.5px; font-weight:700; color:var(--soluk); background:var(--cam); border:1px solid var(--cam-kenar); border-radius:999px; padding:6px 13px; cursor:pointer; transition:all .15s ease; }
.yf-chip.sec{ color:#fff; background:var(--acc); border-color:transparent; }

/* ===================================================================== */
/*  FAZ 18 — Keşif: ücretsiz teslimat rozeti + "yine ister misin" satırı  */
/* ===================================================================== */
.r-rozet.r-bedava{ color:var(--yesil); background:rgba(40,180,99,.12); }
.r-rozet.r-bedava svg, .r-rozet.r-bedava .ico{ color:var(--yesil); }
.ts-sira{ display:flex; gap:10px; overflow-x:auto; padding:2px 2px 10px; scrollbar-width:none; }
.ts-sira::-webkit-scrollbar{ display:none; }
.ts-kart{ flex:0 0 auto; max-width:75%; display:flex; align-items:center; gap:10px; padding:11px 14px; background:var(--cam); border:1px solid var(--cam-kenar); border-radius:14px; box-shadow:var(--sh1); cursor:pointer; text-align:left; transition:transform .12s ease; }
.ts-kart:active{ transform:scale(.97); }
.ts-ik{ flex:0 0 auto; width:36px; height:36px; display:grid; place-items:center; border-radius:10px; background:rgba(232,49,42,.12); color:var(--acc); }
.ts-ik svg, .ts-ik .ico{ width:18px; height:18px; }
.ts-ic{ display:flex; flex-direction:column; min-width:0; }
.ts-ad{ font-size:14px; font-weight:800; color:var(--metin); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.ts-alt{ font-size:12px; color:var(--soluk); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }

/* ===================================================================== */
/*  FAZ 19 — Ürün detay modal + menü kartı ürün-favori kalbi             */
/* ===================================================================== */
.m-gorsel{ position:relative; }
.m-kalp{ position:absolute; top:6px; right:6px; width:30px; height:30px; display:grid; place-items:center; border-radius:50%; background:rgba(0,0,0,.32); color:#fff; cursor:pointer; -webkit-backdrop-filter:blur(4px); backdrop-filter:blur(4px); }
.m-kalp svg, .m-kalp .ico{ width:16px; height:16px; }
.m-kalp.dolu{ color:var(--kirmizi); }
.m-kalp.dolu svg, .m-kalp.dolu .ico{ fill:var(--kirmizi); }
.m-ic[data-urundetay], .m-gorsel[data-urundetay]{ cursor:pointer; }

.ud-sheet{ display:flex; flex-direction:column; max-height:92vh; padding:0; overflow:hidden; }
.ud-head{ position:relative; z-index:3; padding:8px 16px 6px; }
.ud-kapat{ position:absolute; top:8px; right:14px; }
.ud-scroll{ flex:1 1 auto; overflow-y:auto; -webkit-overflow-scrolling:touch; }
.ud-foto{ position:relative; width:100%; aspect-ratio:16/9; background:var(--cizgi2); overflow:hidden; }
.ud-foto img{ width:100%; height:100%; object-fit:cover; display:block; }
.ud-foto-rozet{ position:absolute; left:14px; top:14px; display:flex; gap:6px; }
.ud-kalp{ position:absolute; top:12px; right:12px; width:38px; height:38px; }
.ud-govde{ padding:16px 18px 8px; }
.ud-bas{ display:flex; align-items:flex-start; justify-content:space-between; gap:12px; }
.ud-ad{ margin:0; font-size:21px; font-weight:800; line-height:1.25; color:var(--metin); }
.ud-fiyat{ font-size:18px; font-weight:800; color:var(--acc); white-space:nowrap; }
.ud-ack{ margin:10px 0 0; font-size:14px; line-height:1.55; color:var(--soluk); }
.ud-govde .m-etiketler{ margin-top:14px; }
.ud-gruplar{ margin-top:6px; }
.ud-grup{ margin-top:18px; }
.ud-grup-bas{ display:flex; align-items:center; gap:8px; margin-bottom:10px; }
.ud-grup-ad{ font-size:15px; font-weight:800; color:var(--metin); }
.ud-zorunlu, .ud-opsiyonel{ font-size:11px; font-weight:700; padding:3px 8px; border-radius:999px; }
.ud-zorunlu{ color:var(--acc); background:rgba(232,49,42,.12); }
.ud-opsiyonel{ color:var(--soluk); background:var(--cizgi2); }
.ud-opt{ position:relative; display:flex; align-items:center; gap:10px; min-height:48px; padding:0 14px; margin-bottom:8px; border:1px solid var(--cam-kenar); border-radius:14px; background:var(--cam); cursor:pointer; transition:border-color .15s, background .15s, transform .08s; }
.ud-opt:active{ transform:scale(.99); }
.ud-opt input{ position:absolute; opacity:0; pointer-events:none; }
.ud-opt-ad{ flex:1; font-size:14px; font-weight:600; color:var(--metin); }
.ud-opt-f{ font-size:13px; font-weight:700; color:var(--acc); }
.ud-tik{ width:22px; height:22px; border-radius:50%; border:2px solid var(--cizgi2); flex:0 0 auto; position:relative; transition:.15s; }
.ud-tik[data-tip="cok"]{ border-radius:7px; }
.ud-opt input:checked ~ .ud-tik{ border-color:var(--acc); background:var(--acc); }
.ud-opt input:checked ~ .ud-tik::after{ content:""; position:absolute; left:6px; top:2px; width:5px; height:10px; border:solid #fff; border-width:0 2px 2px 0; transform:rotate(45deg); }
.ud-altbar{ flex:0 0 auto; display:flex; align-items:center; gap:12px; padding:12px 16px calc(12px + env(safe-area-inset-bottom)); background:var(--cam-yogun); -webkit-backdrop-filter:blur(var(--cam-blur)); backdrop-filter:blur(var(--cam-blur)); border-top:1px solid var(--cam-kenar); box-shadow:var(--sh3); }
.ud-adet{ flex:0 0 auto; }
.ud-ekle{ flex:1; display:flex; align-items:center; justify-content:center; gap:8px; min-height:52px; padding:0 16px; border:0; border-radius:16px; background:var(--acc); color:#fff; font-size:15px; font-weight:800; box-shadow:var(--sh-cta); cursor:pointer; transition:transform .08s; }
.ud-ekle:active{ transform:scale(.98); }
.ud-ekle svg, .ud-ekle .ico{ width:18px; height:18px; }
.ud-ekle-fiyat{ font-variant-numeric:tabular-nums; }
@media (prefers-reduced-motion:reduce){ .ud-opt, .ud-ekle{ transition:none; } }

.m-kalp.kalp-pop, .ud-kalp.kalp-pop{ animation:kalp-pop .4s cubic-bezier(.34,1.56,.64,1); }

/* ===================================================================== */
/*  FAZ 20 — Gel-al + kupon önerisi + upsell                             */
/* ===================================================================== */
.gelal-not{ font-size:13px; color:var(--soluk); line-height:1.4; margin-top:2px; }
.kupon-oneri{ display:flex; align-items:center; gap:7px; margin-top:8px; padding:9px 12px; font-size:13px; font-weight:600; color:var(--acc); background:rgba(232,49,42,.08); border:1px dashed rgba(232,49,42,.35); border-radius:12px; }
.kupon-oneri svg, .kupon-oneri .ico{ width:15px; height:15px; flex:0 0 auto; }
.up-bas{ font-size:14px; font-weight:800; color:var(--metin); margin:18px 2px 10px; }
.up-sira{ display:flex; gap:10px; overflow-x:auto; padding:2px 2px 8px; scrollbar-width:none; }
.up-sira::-webkit-scrollbar{ display:none; }
.up-kart{ flex:0 0 auto; width:130px; position:relative; display:flex; flex-direction:column; gap:6px; padding:8px; background:var(--cam); border:1px solid var(--cam-kenar); border-radius:14px; box-shadow:var(--sh1); cursor:pointer; text-align:left; transition:transform .12s ease; }
.up-kart:active{ transform:scale(.97); }
.up-foto{ width:100%; aspect-ratio:1/1; border-radius:10px; overflow:hidden; background:var(--cam-yogun); }
.up-foto img{ width:100%; height:100%; object-fit:cover; display:block; }
.up-ad{ font-size:12.5px; font-weight:700; color:var(--metin); line-height:1.25; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.up-fi{ font-size:13px; font-weight:800; color:var(--acc); }
.up-art{ position:absolute; right:8px; bottom:8px; width:28px; height:28px; display:grid; place-items:center; border-radius:50%; background:var(--acc); color:#fff; box-shadow:var(--sh-cta); }
.up-art svg, .up-art .ico{ width:15px; height:15px; }

/* ===================================================================== */
/*  FAZ 21 — Retention: müşteri seviye kartı + doğum günü                 */
/* ===================================================================== */
.seviye-kart{ margin:8px 2px 16px; padding:15px 16px; background:linear-gradient(135deg, rgba(232,49,42,.14), rgba(232,49,42,.05)); border:1px solid var(--cam-kenar); border-radius:18px; box-shadow:var(--sh1); }
.sv-ust{ display:flex; align-items:center; justify-content:space-between; margin-bottom:10px; }
.sv-rozet{ display:inline-flex; align-items:center; gap:6px; font-size:15px; font-weight:800; color:var(--metin); }
.sv-rozet svg, .sv-rozet .ico{ width:18px; height:18px; color:var(--amber); }
.sv-say{ font-size:13px; font-weight:700; color:var(--soluk); }
.sv-bar{ height:8px; border-radius:999px; background:rgba(255,255,255,.12); overflow:hidden; box-shadow:inset 0 0 0 1px var(--cizgi2); }
.sv-bar i{ display:block; height:100%; border-radius:999px; background:linear-gradient(90deg, var(--acc), var(--acc-koyu)); }
.sv-not{ font-size:12.5px; color:var(--soluk); margin-top:8px; }
.dg-satir{ display:flex; align-items:center; gap:12px; padding:4px 2px; }
.dg-satir input{ width:120px; padding:10px 12px; border:1px solid var(--cam-kenar); border-radius:12px; background:var(--cam-yogun-duz); color:var(--metin); font-size:15px; font-weight:700; text-align:center; }
.dg-not{ font-size:12.5px; color:var(--soluk); }

/* ===================================================================== */
/*  FAZ 23 — UX cila: toast geri-al + route animasyon + tamlık + veri     */
/* ===================================================================== */
.toast-msg{ margin-right:4px; }
.toast-geri{ margin-left:12px; padding:5px 12px; font-size:13px; font-weight:800; color:#fff; background:rgba(255,255,255,.18); border:0; border-radius:999px; cursor:pointer; }
.toast-geri:active{ background:rgba(255,255,255,.30); }
@keyframes ekranGir{ from{ opacity:.35; transform:translateY(7px) } to{ opacity:1; transform:none } }
.sar.ekran-gir{ animation:ekranGir .22s cubic-bezier(.22,.61,.36,1); }
@media (prefers-reduced-motion:reduce){ .sar.ekran-gir{ animation:none } }
.tamlik-kart{ margin:0 2px 16px; padding:13px 15px; background:var(--cam); border:1px solid var(--cam-kenar2); border-radius:16px; box-shadow:var(--sh1); }
.tk-ust{ display:flex; align-items:center; justify-content:space-between; font-size:13px; font-weight:700; color:var(--soluk); margin-bottom:8px; }
.tk-ust b{ color:var(--acc); }
.tk-bar{ height:8px; border-radius:999px; background:rgba(255,255,255,.10); overflow:hidden; box-shadow:inset 0 0 0 1px var(--cizgi2); }
.tk-bar i{ display:block; height:100%; border-radius:999px; background:linear-gradient(90deg, var(--yesil), #5fd08a); }
.tk-not{ font-size:12px; color:var(--soluk); margin-top:8px; }
.veri-btn{ flex:1; display:flex; align-items:center; justify-content:center; gap:6px; font-size:13px; font-weight:700; padding:11px 8px; }
.veri-btn svg, .veri-btn .ico{ width:15px; height:15px; }
.veri-sil{ color:var(--kirmizi); }

.pd-not{ font-size:11px; color:var(--soluk); text-align:center; margin-top:4px; }

/* ===================================================================== */
/*  FAZ 25 — Gerçek görsel cilası (ürün detay sinematik overlay)         */
/* ===================================================================== */
.ud-foto::after{ content:''; position:absolute; inset:0; pointer-events:none; background:linear-gradient(to bottom, rgba(20,10,6,.26) 0%, transparent 26%, transparent 60%, rgba(20,10,6,.30) 100%); }
.ud-foto img{ filter:saturate(1.1) contrast(1.03); }

/* ===================================================================== */
/*  FAZ 26 — Bileşen cilası: dokunma hedefi + sepet CTA tutarı           */
/* ===================================================================== */
.r-kalp::before,.m-kalp::before{ content:''; position:absolute; inset:-8px; border-radius:50%; }   /* görünmez dokunma tamponu (44px+) */
.yf-chip,.ys-chip{ min-height:38px; }
.devam-tutar{ margin-left:auto; font-variant-numeric:tabular-nums; }
#devamBtn{ display:flex; align-items:center; justify-content:center; gap:8px; }

/* ===================================================================== */
/*  v102 — 20-AJAN UI TARAMASI: premium cila (override katmanı)          */
/* ===================================================================== */

/* --- Kategori çipleri: kompakt + snap + aktif scale --- */
.chip{width:66px;height:74px;border-radius:20px}
.chip svg{width:24px;height:24px}
.chip-sira{gap:9px;scroll-snap-type:x proximity;-webkit-mask:linear-gradient(90deg,#0000,#000 14px,#000 calc(100% - 16px),#0000)}
.chip{scroll-snap-align:start}
.chip.aktif{transform:scale(1.04)}
.chip.aktif svg{fill:rgba(255,255,255,.18)}

/* --- Restoran kartı: foto gradient + fotodaki puan + chevron ortala + press --- */
.r-foto{position:relative}
.r-foto::after{content:'';position:absolute;inset:auto 0 0 0;height:44%;background:linear-gradient(transparent,rgba(20,8,4,.30));pointer-events:none}
.r-foto .r-puan{position:absolute;left:6px;bottom:6px;z-index:3;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}
.r-kart .chev{top:50%;transform:translateY(-50%);opacity:.5}
.r-kart:active{transform:scale(.985);transition:transform .09s}
.r-kalp{width:36px;height:36px;display:grid;place-items:center}
.r-kalp::before,.m-kalp::before{content:'';position:absolute;inset:-7px;border-radius:50%}

/* --- Menü kartı: sticky kategori + tipografi ritmi + press + adet koyu-tema + kısa rozet --- */
.kat-bas{position:sticky;top:0;z-index:6;background:var(--cam-yogun-duz);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);margin:18px 0 10px;padding:8px 4px}
.m-ad{line-height:1.25;letter-spacing:-.2px}
.m-ack{margin-top:5px}
.m-kart{transition:box-shadow .14s,transform .12s}
.m-kart:active{transform:scale(.985)}
.adet{background:var(--cam-yogun)}
.cs-rozet{padding:3px 8px;font-size:10px}

/* --- Ürün detay: CTA tutar pill + seçili satır tint + kilit + daha yüksek foto --- */
.ud-foto{aspect-ratio:4/3}
.ud-ekle{justify-content:space-between;padding:0 18px}
.ud-ekle>span:nth-of-type(1){margin-right:auto}
.ud-ekle-fiyat{background:rgba(255,255,255,.20);padding:5px 11px;border-radius:11px}
.ud-ekle.kilit{background:var(--cizgi2);color:var(--soluk);box-shadow:none;pointer-events:none}
.ud-opt.secili{border-color:var(--acc);background:var(--acc-100)}
.ud-opt.secili .ud-opt-ad{font-weight:700;color:var(--metin)}

/* --- Sepet: ara-toplam + foto büyüt + press --- */
.ara-toplam{display:flex;justify-content:space-between;align-items:center;color:var(--soluk);font-weight:600;font-size:14px;margin:16px 4px 0}
.toplam{margin-top:6px}
.s-foto-sar{width:62px;height:62px;border-radius:15px}
.s-satir{transition:transform .1s}.s-satir:active{transform:scale(.99)}
#devamBtn .devam-tutar{background:rgba(255,255,255,.2);padding:5px 12px;border-radius:var(--r-pill)}

/* --- Ödeme: tabular rakam + odak satırı + segment/bahşiş marka + disabled netliği --- */
.ode-ozet .oz-fi,.oz-top span,.devam-tutar,.ud-ekle-fiyat{font-variant-numeric:tabular-nums}
.ode-satir:focus-within{background:rgba(232,49,42,.05);border-radius:12px}
.zaman-seg button.sec{box-shadow:var(--sh-cta)}
.bahsis-cip.sec{background:linear-gradient(180deg,var(--acc),var(--acc-koyu));border-color:transparent;color:#fff}
.odeme-opt.opt-disabled{opacity:.5}
.btn-buyuk:disabled{opacity:.45;filter:grayscale(.25)}
.tts{transition:transform .1s,border-color .2s}.tts:active{transform:scale(.99)}

/* --- Takip: ilerleme glow + aktif dot nabız + yıldız pop --- */
.adimlar::after{box-shadow:0 0 8px rgba(40,180,99,.5)}
.adim.aktif .dot{position:relative}
.adim.aktif .dot::after{content:'';position:absolute;inset:-3px;border-radius:50%;border:2px solid var(--acc);animation:dotRing 1.7s ease-out infinite;pointer-events:none}
@keyframes dotRing{0%{transform:scale(1);opacity:.55}100%{transform:scale(1.5);opacity:0}}
.yld.dolu{animation:yldPop .25s cubic-bezier(.34,1.6,.64,1)}
@keyframes yldPop{0%{transform:scale(.6)}60%{transform:scale(1.25)}100%{transform:scale(1)}}
.eta.acil .dk{animation:acilVur 1s ease-in-out infinite}
@keyframes acilVur{0%,100%{transform:scale(1)}50%{transform:scale(1.06)}}

/* --- Değerlendirme: tıklanabilir histogram + kırılım marka rengi + /5 --- */
.pd-row{width:100%;border:0;background:none;cursor:pointer;text-align:left;padding:0}
.pd-row:active{opacity:.65}.pd-bar i{min-width:3px}
.kir-bar i{background:linear-gradient(90deg,var(--amber),#FFC24B)}
.yo-puan::after{content:' /5';font-size:13px;font-weight:600;color:var(--soluk2)}

/* --- Profil: switch yay + seviye glow + tamlık aksanı + KVKK yıkıcı --- */
.switch::after{transition:transform .28s cubic-bezier(.34,1.56,.64,1),width .2s}
.sv-bar i,.tk-bar i{transition:width .6s cubic-bezier(.22,.61,.36,1)}
.sv-rozet svg{filter:drop-shadow(0 0 6px rgba(245,180,40,.5))}
.tamlik-kart{border-left:3px solid var(--yesil)}
.adres-kayit{transition:transform .12s,background .2s}.adres-kayit:active{transform:scale(.985)}
.veri-sil{background:rgba(232,49,42,.08);border-color:rgba(232,49,42,.28)}

/* --- Nav + sepet bar: aktif pop + gösterge + sepet slide-up + geri 44px --- */
.botnav-ic button.aktif{animation:navPop .3s cubic-bezier(.34,1.56,.64,1)}
@keyframes navPop{0%{transform:scale(.85)}60%{transform:scale(1.06)}100%{transform:scale(1)}}
.botnav-ic button.aktif::after{content:'';width:18px;height:3px;border-radius:3px;background:var(--acc);margin-top:3px}
.sepet-bar:not(.gizli){animation:barUp .32s cubic-bezier(.16,1,.3,1)}
@keyframes barUp{from{transform:translateY(120%)}to{transform:translateY(0)}}
.ust .geri{width:44px;height:44px}

/* --- Boş durum: daire ikon kabı (premium .bm-bos deseni) --- */
.bos .emoji{display:grid;place-items:center;width:74px;height:74px;margin:0 auto 16px;border-radius:50%;background:var(--cam);-webkit-backdrop-filter:blur(var(--cam-blur));backdrop-filter:blur(var(--cam-blur));border:1px solid var(--cam-kenar);box-shadow:var(--sh2)}
.bos .emoji .ico,.bos .emoji svg{width:32px;height:32px;opacity:.6}

/* --- Çip ailesi tutarlılığı: yf-chip seçili gradyan + gölge --- */
.yf-chip{box-shadow:var(--sh1)}
.yf-chip.sec{background:linear-gradient(180deg,var(--acc),var(--acc-koyu));box-shadow:var(--sh-cta)}

/* --- Bottom-sheet: tabandan tam giriş + tutamaç dokunma alanı --- */
.mh-sheet{animation:mhsUp .3s cubic-bezier(.16,1,.3,1)}
@keyframes mhsUp{from{transform:translateY(100%)}to{transform:translateY(0)}}
.mh-handle{padding:9px 0;background-clip:content-box;box-sizing:content-box}

/* --- Toast: pop giriş + ömür çizgisi + sepet barı çakışması + marka geri-al --- */
.toast{transition:opacity .2s,transform .26s cubic-bezier(.34,1.56,.64,1)}
body.sepet-acik .toast{bottom:calc(168px + env(safe-area-inset-bottom))}
.toast-geri{border:1px solid rgba(255,255,255,.4)}
.toast.gor.has-action::after{content:'';position:absolute;left:0;bottom:0;height:2px;background:var(--acc);width:100%;animation:toastOmur 4.5s linear forwards;border-radius:0 0 12px 12px}
@keyframes toastOmur{to{width:0}}

/* --- Carousel: başlık + stagger giriş --- */
.kmp-carousel{margin:18px 0 6px}
.kmp-carousel::before{content:'Sana özel kampanyalar';display:block;font-size:16px;font-weight:800;letter-spacing:-.3px;color:var(--metin);padding:0 16px;margin-bottom:11px}
@keyframes seritGir{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:no-preference){.ts-sira{animation:seritGir .4s ease both}.kmp-carousel{animation:seritGir .4s .05s ease both}.sira-bar{animation:seritGir .4s .1s ease both}}
.acik-chip.sec{background:linear-gradient(180deg,var(--yesil),#1f9e54);box-shadow:0 4px 14px rgba(40,180,99,.4)}

/* ===================================================================== */
/*  FAZ 32 — Hero restoran kartı (dikey: büyük foto + alt bilgi)          */
/* ===================================================================== */
.rh-sira{ display:flex; flex-direction:column; }
.r-kart--hero{ flex-direction:column; gap:0; padding:0; align-items:stretch; border-radius:var(--r-lg); overflow:hidden; box-shadow:var(--sh3); margin-bottom:16px; }
.r-kart--hero:active{ transform:scale(.98); transition:transform .09s; }
.rh-foto{ position:relative; width:100%; aspect-ratio:16/9; overflow:hidden; background:linear-gradient(135deg,#E9C7B0,#D7A98C); }
.rh-foto img{ width:100%; height:100%; object-fit:cover; filter:saturate(1.08); position:absolute; inset:0; }
.rh-foto-bos{ display:grid; place-items:center; height:100%; font-size:52px; color:rgba(255,255,255,.85); }
.rh-grad{ position:absolute; inset:0; z-index:1; pointer-events:none; background:linear-gradient(180deg,rgba(20,8,4,.34) 0%,rgba(20,8,4,0) 26%,rgba(20,8,4,0) 60%,rgba(20,8,4,.46) 100%); }
.rh-ust-sol{ position:absolute; top:11px; left:11px; z-index:3; }
.rh-ust-sol .r-durum{ box-shadow:0 2px 8px rgba(20,8,4,.30); }
.rh-ust-sag{ position:absolute; top:11px; right:54px; z-index:3; display:flex; justify-content:flex-end; }
.rh-kamp{ position:static; left:auto; right:auto; top:auto; bottom:auto; box-shadow:0 3px 10px rgba(20,8,4,.34); }
.rh-kalp{ top:10px; right:10px; left:auto; width:38px; height:38px; z-index:4; background:rgba(30,14,8,.40); box-shadow:0 3px 10px rgba(20,8,4,.34); }
.rh-puan-sar{ position:absolute; left:11px; bottom:11px; z-index:3; }
.rh-puan-sar .r-puan{ font-size:13.5px; padding:4px 11px; box-shadow:0 3px 10px rgba(120,80,10,.34); }
.rh-logo{ bottom:11px; right:11px; left:auto; top:auto; width:42px; height:42px; border-radius:12px; z-index:3; }
.rh-bilgi{ display:flex; flex-direction:column; gap:4px; padding:13px 15px 15px; background:var(--cam); -webkit-backdrop-filter:blur(var(--cam-blur)); backdrop-filter:blur(var(--cam-blur)); border-top:1px solid var(--cam-kenar); }
.rh-ad{ font-size:21px; letter-spacing:-.4px; white-space:normal; line-height:1.15; }
.rh-bilgi .r-rozetler{ margin-top:7px; }
@media (hover:hover){ .r-kart--hero:hover{ transform:translateY(-3px); box-shadow:var(--sh3); } }
.r-kart--hero.kart-kapali .rh-foto{ filter:grayscale(.55); }

/* ===================================================================== */
/*  FAZ 29 — Adres yapısal alanlar + konum pin                            */
/* ===================================================================== */
.adres-ek{ display:flex; gap:8px; margin-top:8px; }
.adres-ek input{ flex:1; min-width:0; padding:11px 12px; border:1px solid var(--cam-kenar); border-radius:12px; background:var(--cam-yogun-duz); color:var(--metin); font-size:14px; }
.konum-pin{ display:flex; align-items:center; justify-content:center; gap:7px; width:100%; margin-top:9px; padding:11px; font-size:13.5px; font-weight:700; color:var(--acc); background:rgba(232,49,42,.07); border:1px dashed rgba(232,49,42,.4); border-radius:12px; cursor:pointer; }
.konum-pin svg, .konum-pin .ico{ width:16px; height:16px; }
.konum-pin.var{ color:var(--yesil); background:rgba(40,180,99,.10); border-style:solid; border-color:rgba(40,180,99,.35); }
.konum-pin:active{ transform:scale(.99); }

/* FAZ 30 — pull-to-refresh görsel ipucu */
.sar.ptr-hazir{ box-shadow:inset 0 4px 0 -1px var(--acc); }

/* ===== Canlı kurye haritası (Leaflet) — takip ekranı 'yolda' iken ===== */
.takip-harita-sar{ margin:16px 0; border-radius:18px; overflow:hidden; background:var(--kart); border:1px solid var(--cizgi2); box-shadow:var(--sh1); }
.takip-harita-bas{ display:flex; align-items:center; gap:8px; padding:12px 14px; font-weight:700; font-size:14px; color:var(--metin); }
.takip-harita-bas svg{ width:18px; height:18px; }
/* Leaflet konteyneri sabit yükseklik almalı (yoksa 0px → harita görünmez) */
.takip-harita{ width:100%; height:260px; background:#e8e2dc; }
.takip-harita-not{ padding:9px 14px; font-size:12.5px; color:var(--soluk); border-top:1px solid var(--cizgi2); }
/* divIcon pin — ayrı görsel dosyasız (CDN marker-icon.png bağımlılığı yok) */
.kh-pin-wrap{ background:transparent; border:none; }
.kh-pin{
  width:34px; height:34px; border-radius:50% 50% 50% 0; transform:rotate(-45deg);
  background:var(--kh,#4C261B); display:flex; align-items:center; justify-content:center;
  box-shadow:0 3px 8px rgba(0,0,0,.35); border:2px solid #fff;
}
.kh-pin svg{ width:16px; height:16px; transform:rotate(45deg); color:#fff; }
/* Leaflet popup metni tema rengiyle uyumlu */
.leaflet-popup-content{ font-size:13px; font-weight:600; color:#241712; }
/* Leaflet kontrol/atıf z-index'i overlay'lerin ALTINDA kalsın (sheet açılınca çakışmasın) */
.takip-harita .leaflet-top, .takip-harita .leaflet-bottom{ z-index:400; }

/* ====== Online ödeme (PayTR güvenli iframe overlay) — Faz 34 ====== */
.paytr-overlay{
  position:fixed; inset:0; z-index:2000; display:flex; align-items:flex-end; justify-content:center;
  background:rgba(10,7,6,.62); -webkit-backdrop-filter:blur(4px); backdrop-filter:blur(4px);
  opacity:0; pointer-events:none; transition:opacity .22s ease;
}
.paytr-overlay.acik{ opacity:1; pointer-events:auto; }
@media (min-width:560px){ .paytr-overlay{ align-items:center; } }
.paytr-modal{
  position:relative; width:100%; max-width:480px; max-height:92vh; display:flex; flex-direction:column;
  background:#fff; border-radius:20px 20px 0 0; overflow:hidden;
  box-shadow:0 -10px 40px rgba(0,0,0,.32); transform:translateY(16px); transition:transform .24s cubic-bezier(.22,1,.36,1);
}
.paytr-overlay.acik .paytr-modal{ transform:translateY(0); }
@media (min-width:560px){ .paytr-modal{ border-radius:20px; } }
.paytr-bar{
  display:flex; align-items:center; justify-content:space-between; gap:8px;
  padding:14px 16px; border-bottom:1px solid #eee; font-size:15px; color:#241712; flex:0 0 auto;
}
.paytr-bar b{ font-weight:800; }
.paytr-kapat{
  border:0; background:#f4f0ee; color:#241712; width:34px; height:34px; border-radius:50%;
  font-size:22px; line-height:1; cursor:pointer; display:grid; place-items:center;
}
.paytr-kapat:active{ transform:scale(.94); }
.paytr-yuk{ padding:32px 16px; text-align:center; color:#7a6a63; font-size:14px; font-weight:600; }
#paytrIframe{ width:100%; min-height:480px; border:0; background:#fff; flex:1 1 auto; }

/* ============================================================================
   v105 — "AYDINLIK PREMIUM" tema (20-ajan ortak kararı)
   Açık · ferah · premium · yumuşak. Koyu-cam temayı token-remap ile çevirir:
   --cam (yüzey)→beyaz, --ak (yazı)→koyu mürekkep, --cam-kenar→hairline,
   --sh* gölgeler→tüy, --acc→sıcak mercan-kil. Beyaz-üstü-vurgu yazılar (#fff)
   olduğu gibi kalır (vurgu zeminin üstünde). Bu blok DOSYANIN SONUNDA → cascade kazanır.
   ============================================================================ */
:root{
  /* — yüzeyler: cam → katı/yarı beyaz — */
  --cam:#FFFFFF; --cam-duz:#FFFFFF; --cam-yogun:#FFFFFF; --cam-yogun-duz:#FFFFFF;
  --cam-kenar:#ECEEF1; --cam-kenar2:#E3E6EA;
  --cam-blur:saturate(120%) blur(20px);
  --glass:rgba(247,248,250,.78);                 /* yapışkan başlık buzlu */
  --kart:#FFFFFF; --kart2:#FBFCFD; --kart3:#F1F3F6;
  --cizgi:#ECEEF1; --cizgi2:#ECEEF1;
  /* — mürekkep — */
  --ak:#1B1D21; --ak-soluk:#6B7079;
  --metin:#1B1D21; --soluk:#6B7079; --soluk2:#A2A7AF;
  --secondary:#1B1D21;
  /* — tek vurgu: sıcak mercan-kil — */
  --acc:#E2664B; --acc-koyu:#CE5740; --acc2:#CE5740;
  --acc-100:rgba(226,102,75,.10); --acc-soft:#FCEDE8; --acc-ink:#B8492F;
  /* — durum renkleri (az doygun) — */
  --yesil:#2FA56E; --yesil-bg:rgba(47,165,110,.12);
  --amber:#E5A23C; --star:#F2B544;
  --kirmizi:#D9685E; --kirmizi-bg:rgba(217,104,94,.12); --mavi:#3B82F6;
  /* — tüy gölgeler: TEK ipucu, sıcak/inset YOK — */
  --sh1:0 1px 2px rgba(20,22,28,.05);
  --sh2:0 2px 10px rgba(20,22,28,.07);
  --sh3:0 8px 26px rgba(20,22,28,.10);
  --sh-cta:0 6px 18px rgba(226,102,75,.26);
  --golge:var(--sh2);
  /* — köşe: daha net/premium — */
  --r-xs:10px; --r-sm:12px; --r-md:16px; --r-lg:20px; --r-pill:999px;
  /* — yumuşak hareket eğrileri — */
  --ease-soft:cubic-bezier(.25,.8,.25,1);
  --ease-out:cubic-bezier(.22,.61,.36,1);
}
/* zemin: koyu mesh → aydınlık nötr */
body{
  background:#F7F8FA !important; background-attachment:initial !important;
  color:var(--metin);
}
/* yapışkan üst bar → buzlu beyaz, koyu yazı */
.ust{ background:var(--glass); -webkit-backdrop-filter:saturate(120%) blur(20px); backdrop-filter:saturate(120%) blur(20px);
  border-bottom:1px solid var(--cam-kenar); color:var(--metin); box-shadow:none; }
.ust .geri{ background:var(--surface,#fff); border:1px solid var(--cam-kenar); box-shadow:var(--sh1); color:var(--metin); }
.ust .sehir{ background:#fff; border:1px solid var(--cam-kenar); color:var(--metin); }

/* TÜM metin-gölgelerini öldür (koyu zemin kalıntısı; açık temada artefakt) */
.ust .baslik,.selam h1,.selam p,.konum .ktxt b,.r-ad,.rh-ad,.promo-bas,.promo-alt,
.bolum-bas h2,.chip span,.botnav-ic button,.sirala,.r-puan,.dahafazla,.kat-bas,
.sepet-rest,.toplam,.ode-baslik,.kvkk,.sira-chip,.r-rozet,.r-durum{ text-shadow:none !important; }

/* koyu-zemin için beyaz yapılmış ikincil yazılar → soluk mürekkep */
.r-alt,.promo-alt{ color:var(--ak-soluk) !important; }

/* gölge-veya-hairline disiplini: kartlar tek ipucu (gölge), kenar yok */
.r-kart,.r-kart--hero,.konum,.bildirim,.chip,.promo,.sirala,.dahafazla,.botnav-ic{
  border-color:var(--cam-kenar);
}
.r-kart{ box-shadow:var(--sh1); transition:transform .2s var(--ease-soft), box-shadow .2s var(--ease-soft); }
.r-kart:active{ transform:scale(.985); box-shadow:var(--sh2); }
.r-kart--hero{ box-shadow:var(--sh2); }

/* kategori çipleri: aktif = YUMUŞAK vurgu tonu (bağıran kırmızı dolgu DEĞİL) */
.chip{ box-shadow:var(--sh1); transition:transform .2s var(--ease-out), background .22s var(--ease-out), border-color .22s var(--ease-out); }
.chip:active{ transform:scale(.97); }
.chip.aktif{ background:var(--acc-soft); border-color:transparent; box-shadow:none; }
.chip.aktif svg{ stroke:var(--acc); }
.chip.aktif span{ color:var(--acc-ink); }

/* sırala/filtre çipleri: aktif = yumuşak ton, sıfır zıplama */
.sira-chip{ transition:background .22s var(--ease-out), color .22s var(--ease-out); }
.sira-chip.sec{ background:var(--acc-soft); color:var(--acc-ink); border-color:transparent; box-shadow:none; }
.adres-cip.sec,.zaman-seg button.sec{ background:var(--acc-soft); color:var(--acc-ink); border-color:transparent; }

/* puan rozeti: temiz beyaz pill + altın yıldız (doygun amber dolgu yerine) */
.r-puan{ background:#fff; border:1px solid var(--cam-kenar); color:#1B1D21; box-shadow:var(--sh1); }
.r-puan .yld,.r-puan svg,.r-puan .ico{ color:var(--star); fill:var(--star); }

/* kapalı/meşgul rozet: nötr gri (kahve/kırmızı değil) */
.r-durum.kapali{ background:#EEF0F3; color:#6B7079; }
.r-durum.mesgul{ background:#FBF1E2; color:#9A6B1E; }

/* alt-nav: beyaz buzlu kapsül, aktif = vurgu ikonu (dolu pill değil) */
.botnav-ic{ background:rgba(255,255,255,.92) !important; -webkit-backdrop-filter:saturate(120%) blur(20px); backdrop-filter:saturate(120%) blur(20px); box-shadow:var(--sh3); border:1px solid var(--cam-kenar); }
.botnav-ic button{ color:var(--soluk2); transition:color .22s var(--ease-out); }
.botnav-ic button.aktif{ color:var(--acc); background:transparent; box-shadow:none; animation:none; }
.botnav-ic button.aktif svg{ stroke:var(--acc); filter:none; }
.botnav-ic button.aktif::after{ background:var(--acc); }

/* birincil CTA'lar: yeni mercan + tüy gölge (sert kırmızı bar yumuşar) */
.sepet-btn,.btn-buyuk,.btn-tekrar{ background:var(--acc); box-shadow:var(--sh-cta); border-radius:var(--r-md); transition:transform .16s var(--ease-out), box-shadow .2s var(--ease-out); }
.sepet-btn:active,.btn-buyuk:active{ transform:scale(.98); }
.btn-tekrar,.adres-cip.sec,.zaman-seg button.sec,.ekle.sec-dolu,.sira-chip.sec{ background:var(--acc) !important; }
.sira-chip.sec,.adres-cip.sec,.zaman-seg button.sec{ background:var(--acc-soft) !important; color:var(--acc-ink) !important; }

/* OVERSHOOT/NABIZ yasak — sakin geçişlere indir */
.adim.aktif .dot{ animation:none; box-shadow:0 0 0 4px var(--acc-100); }
.odeme-opt.secili,.odeme-opt:has(input:checked){ animation:none !important; transform:none !important; }
.odeme-opt.secili .oik,.odeme-opt:has(input:checked) .oik{ transform:none; box-shadow:var(--sh1); }
.botnav-ic button.aktif{ animation:none !important; }
.ekle{ box-shadow:var(--sh1); }

/* arama kutusu: nötr dolgu + odakta yumuşak halka */
.ara-kutu input{ background:var(--kart2); border:1px solid var(--cam-kenar); color:var(--metin); box-shadow:none; }
.ara-kutu input::placeholder{ color:var(--soluk2); }
.ara-kutu input:focus{ border-color:var(--acc); box-shadow:0 0 0 3px var(--acc-soft); }
.filtre-btn{ background:#fff; border:1px solid var(--cam-kenar); box-shadow:var(--sh1); color:var(--metin); }

/* promo banner: cam yerine temiz beyaz kart */
.promo{ background:#fff; border:1px solid var(--cam-kenar); box-shadow:var(--sh2); }
.promo-ust{ background:var(--acc-soft); border-color:transparent; color:var(--acc-ink); }
.promo-cta{ background:var(--acc); border-color:transparent; color:#fff; }

/* hero kart alt bilgi paneli: temiz beyaz (foto üstü rozetler korunur) */
.rh-bilgi{ background:#fff; border-top:1px solid var(--cam-kenar); -webkit-backdrop-filter:none; backdrop-filter:none; }

/* mürekkep ağırlıklarını biraz inceltip premium yap */
.selam h1{ font-weight:700; letter-spacing:-.5px; }
.r-ad,.rh-ad{ font-weight:600; }
.bolum-bas h2{ font-weight:600; }

/* v105: HANGİ tema seçili olursa olsun (eski koyu base + Faz-8 cream "acik")
   aydınlık-premium tokenları uygula. Attribute-specificity eşit + kaynak sonra → kazanır. */
:root[data-tema="acik"], :root[data-tema="koyu"]{
  --cam:#FFFFFF; --cam-duz:#FFFFFF; --cam-yogun:#FFFFFF; --cam-yogun-duz:#FFFFFF;
  --cam-kenar:#ECEEF1; --cam-kenar2:#E3E6EA;
  --kart:#FFFFFF; --kart2:#FBFCFD; --kart3:#F1F3F6; --cizgi:#ECEEF1; --cizgi2:#ECEEF1;
  --ak:#1B1D21; --ak-soluk:#6B7079; --metin:#1B1D21; --soluk:#6B7079; --soluk2:#A2A7AF; --secondary:#1B1D21;
  --acc:#E2664B; --acc-koyu:#CE5740; --acc2:#CE5740; --acc-100:rgba(226,102,75,.10);
  --yesil:#2FA56E; --yesil-bg:rgba(47,165,110,.12); --amber:#E5A23C; --star:#F2B544;
  --kirmizi:#D9685E; --kirmizi-bg:rgba(217,104,94,.12);
  --sh1:0 1px 2px rgba(20,22,28,.05); --sh2:0 2px 10px rgba(20,22,28,.07);
  --sh3:0 8px 26px rgba(20,22,28,.10); --sh-cta:0 6px 18px rgba(226,102,75,.26);
}
:root[data-tema="acik"] body, :root[data-tema="koyu"] body{
  background:#F7F8FA !important; background-attachment:initial !important;
}

/* ============================================================================
   v106 — "VIVID GOURMET" (derin redesign: 17-ajan + web araştırması)
   Sıcak iştah açıcı palet (domates+mango, beyaz DEĞİL sıcak krem), foto-öncelikli
   kartlar, gerçek-yemek-fotoğraflı kategori çipleri, hızlı-erişim grid, yumuşak hareket.
   v105'in token-remap'ini SICAK+CANLI değerlere günceller + yeni bileşenler.
   ============================================================================ */
:root, :root[data-tema="acik"], :root[data-tema="koyu"]{
  /* yeni isimli tokenlar (yeni bileşenler) */
  --yuzey:#FFFFFF; --metin2:#6B5A4F;
  --ana:#F03A2E; --ikincil:#FB8C2A; --sicak:linear-gradient(135deg,#FB8C2A,#F03A2E);
  --altin:#E0A33C;
  --kat-hepsi:#6B5A4F; --kat-burger:#C54734; --kat-pizza:#EB1700; --kat-doner:#FB8C2A; --kat-tatli:#E0A33C; --kat-kahvalti:#27B765;
  --ez:cubic-bezier(.2,.8,.2,1); --t-bas:120ms; --t-temel:200ms; --t-yumusak:240ms;
  /* ESKİ tokenları SICAK+CANLI değerlere remap (mevcut bileşenler korunur) */
  --bg:#FAF6EF; --cam:#FFFFFF; --cam-duz:#FFFFFF; --cam-yogun:#FFFFFF; --cam-yogun-duz:#FFFFFF;
  --cam-kenar:#EBE2D6; --cam-kenar2:#E3D7C8; --kart:#FFFFFF; --kart2:#FFFBF5; --kart3:#F3ECE1;
  --cizgi:#EBE2D6; --cizgi2:#EBE2D6;
  --ak:#2A1A12; --ak-soluk:#6B5A4F; --metin:#2A1A12; --soluk:#6B5A4F; --soluk2:#A2937F; --secondary:#2A1A12;
  --acc:#F03A2E; --acc-koyu:#D42718; --acc2:#D42718; --acc-100:rgba(240,58,46,.10); --acc-soft:#FDEAE3; --acc-ink:#C32414;
  --yesil:#27B765; --yesil-bg:rgba(39,183,101,.12); --amber:#E5A23C; --star:#E0A33C;
  --kirmizi:#E0524A; --kirmizi-bg:rgba(224,82,74,.12);
  --sh1:0 1px 2px rgba(40,24,16,.05); --sh2:0 4px 16px rgba(40,24,16,.07); --sh3:0 8px 24px rgba(58,34,18,.10);
  --sh-cta:0 6px 18px rgba(240,58,46,.28);
  --golge:0 4px 16px rgba(40,24,16,.07); --golge-yumusak:0 8px 24px rgba(58,34,18,.10);
}
body, :root[data-tema="acik"] body, :root[data-tema="koyu"] body{
  background:#FAF6EF !important; background-attachment:initial !important;
}

/* ===== KATEGORİ ÇİPLERİ — fotoğraflı kare (chip-foto) ===== */
.chip-sira{ display:flex; gap:12px; overflow-x:auto; -webkit-overflow-scrolling:touch; padding:4px 2px 6px; margin:0 -2px 20px; scrollbar-width:none; }
.chip-sira::-webkit-scrollbar{ display:none; }
.chip{ flex:0 0 auto; width:auto; height:auto; display:flex; flex-direction:column; align-items:center; gap:7px;
  background:none !important; border:0 !important; box-shadow:none !important; padding:0; }
.chip-foto{ width:66px; height:66px; border-radius:20px; overflow:hidden; display:grid; place-items:center;
  box-shadow:inset 0 0 0 1px rgba(0,0,0,.06), var(--golge); background:var(--kart3);
  transition:box-shadow var(--t-temel) var(--ez), transform var(--t-bas) var(--ez); }
.chip-foto img{ width:100%; height:100%; object-fit:cover; opacity:0; transition:opacity var(--t-temel) var(--ez); }
.chip-foto img[src]{ opacity:1; }
.chip-foto--ik{ background:var(--sicak); }
.chip-foto--ik svg{ stroke:#fff; fill:none; width:30px; height:30px; }
.chip>span{ font-size:13px; font-weight:600; color:var(--metin2); }
.chip.aktif{ background:none !important; box-shadow:none !important; }
.chip.aktif .chip-foto{ box-shadow:0 0 0 2.5px var(--c), var(--golge); transform:scale(1.05); }
.chip.aktif svg{ stroke:#fff; }
.chip.aktif>span{ color:var(--metin); font-weight:700; }
.chip:active .chip-foto{ transform:scale(.96); }

/* ===== HIZLI ERİŞİM GRID ===== */
.qa-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:10px; margin:4px 0 22px; }
.qa-tile{ display:flex; flex-direction:column; align-items:center; gap:8px; background:var(--yuzey); border:0;
  border-radius:18px; padding:15px 6px; box-shadow:var(--golge); transition:transform var(--t-bas) var(--ez); }
.qa-tile:active{ transform:scale(.96); }
.qa-ik{ width:44px; height:44px; border-radius:14px; display:grid; place-items:center;
  background:color-mix(in srgb, var(--c) 15%, #fff); }
.qa-ik svg{ stroke:var(--c); fill:none; width:23px; height:23px; }
.qa-ad{ font-size:12px; font-weight:600; color:var(--metin2); }

/* ===== RESTORAN KARTI — DİKEY foto-öncelikli (.r-dikey) ===== */
.r-dikey{ display:flex; flex-direction:column; width:100%; text-align:left; gap:0; align-items:stretch;
  background:var(--yuzey); border:0; border-radius:18px; overflow:hidden; padding:0; margin-bottom:16px;
  box-shadow:var(--golge); transition:transform var(--t-bas) var(--ez), box-shadow var(--t-temel) var(--ez); }
.r-dikey:active{ transform:scale(.985); box-shadow:var(--golge-yumusak); }
.r-dikey .r-foto{ position:relative; width:100%; height:auto; aspect-ratio:16/9; flex:0 0 auto; border-radius:0; overflow:hidden;
  background:linear-gradient(135deg,#F0E2D2,#E4CDB8); min-height:0; }
.r-dikey .r-foto img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; opacity:0;
  transition:opacity var(--t-temel) var(--ez); filter:saturate(1.05); }
.r-dikey .r-foto img[src]{ opacity:1; }
.r-foto-bos{ display:grid; place-items:center; height:100%; font-size:46px; color:#fff; }
.r-grad{ position:absolute; inset:auto 0 0 0; height:48%; z-index:1; pointer-events:none;
  background:linear-gradient(to top, rgba(42,26,18,.46), transparent); }
.r-dikey .flash-rozet, .r-dikey .r-kampanya{ position:absolute; top:11px; left:11px; z-index:3;
  background:var(--sicak); color:#fff; font-weight:700; font-size:12px; padding:6px 10px; border-radius:11px;
  box-shadow:0 3px 10px rgba(120,40,10,.28); text-shadow:none; }
.r-dikey .r-kalp{ position:absolute; top:11px; right:11px; left:auto; bottom:auto; z-index:4; width:36px; height:36px;
  display:grid; place-items:center; background:rgba(255,255,255,.86); border-radius:50%;
  -webkit-backdrop-filter:blur(6px); backdrop-filter:blur(6px); box-shadow:0 2px 8px rgba(40,24,16,.18); }
.r-dikey .r-kalp svg{ width:20px; height:20px; stroke:var(--metin); fill:none; transition:transform var(--t-temel) var(--ez); }
.r-dikey .r-kalp.dolu svg{ fill:var(--ana); stroke:var(--ana); }
.r-puan-sar{ position:absolute; left:11px; bottom:11px; z-index:3; }
.r-puan-sar .r-puan{ background:rgba(20,12,8,.42); border:0; color:#fff; font-weight:700; box-shadow:none;
  -webkit-backdrop-filter:blur(4px); backdrop-filter:blur(4px); }
.r-puan-sar .r-puan svg, .r-puan-sar .r-puan .ico{ color:var(--altin); fill:var(--altin); stroke:var(--altin); }
.r-dikey .r-logo{ position:absolute; right:12px; bottom:-20px; top:auto; left:auto; z-index:3; width:50px; height:50px;
  border-radius:14px; overflow:hidden; border:2.5px solid var(--yuzey); box-shadow:var(--golge); background:#fff; }
.r-dikey .r-sag{ padding:14px 15px 14px; flex:1 1 auto; min-width:0; }
.r-dikey .r-ad{ font-size:16.5px; font-weight:700; color:var(--metin); letter-spacing:-.01em; white-space:normal;
  display:flex; align-items:center; gap:8px; text-shadow:none; }
.r-dikey .r-alt{ font-size:13px; color:var(--metin2); margin-top:3px; }
.r-dikey .r-rozetler{ display:flex; flex-wrap:wrap; gap:7px; margin-top:10px; font-variant-numeric:tabular-nums; }
.r-dikey .r-durum{ font-size:12px; font-weight:600; color:var(--yesil); background:none; padding:0; }
.r-dikey .r-durum.kapali{ color:var(--metin2); } .r-dikey .r-durum.mesgul{ color:var(--ikincil); }
.r-dikey.kart-kapali .r-foto img{ filter:grayscale(.5) saturate(.9); }

/* ===== HERO kart re-skin (yapı değişmez, sadece sıcak palet) ===== */
.rh-foto{ background:linear-gradient(135deg,#F0E2D2,#E4CDB8); }
.rh-grad{ background:linear-gradient(180deg,rgba(20,8,4,.30) 0%,rgba(20,8,4,0) 28%,rgba(20,8,4,0) 58%,rgba(20,8,4,.46) 100%); }
.rh-kamp{ background:var(--sicak) !important; color:#fff; }
.rh-puan-sar .r-puan svg{ color:var(--altin); fill:var(--altin); }

/* ===== promo banner — sıcak gradyan CTA ===== */
.promo-cta{ background:var(--sicak) !important; border-color:transparent; color:#fff; }
.promo-ust{ background:var(--acc-soft); color:var(--acc-ink); border-color:transparent; }

/* ===== motion: favori bounce-free, foto fade, press ===== */
.sepet-btn:active, .btn-buyuk:active, .sira-chip:active{ transform:scale(.97); }

/* ============================================================================
   v107 — "WARM GALLERY" editöryel kimlik (24-ajan + web araştırması)
   Fildişi kâğıt + CEVİZ (walnut) CTA + SAFRAN vurgu (%10) + Fraunces serif +
   PHOSPHOR ikon seti. Gradyan/parlama/turuncu YOK. v106 yapısı korunur, İŞÇİLİK+KİMLİK yükselir.
   ============================================================================ */
:root, :root[data-tema="acik"], :root[data-tema="koyu"]{
  /* yeni isimli editöryel tokenlar */
  --paper:#FAF6EE; --card:#FFFCF6; --hairline:#E8E0D2;
  --ink:#1C1916; --muted:#7A7268; --faint:#A89F92;
  --walnut:#3A2D22; --walnut-press:#2A2018;
  --accent:#C8862C; --accent-press:#A86E1F; --accent-ink:#7A4D14; --accent-tint:#F4E8D2;
  --gold:#D9A441; --scrim:rgba(28,25,22,.72);
  --display:"Fraunces","Georgia",serif; --body:"Inter",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --ease:cubic-bezier(.2,.8,.2,1); --t-press:120ms;
  /* ESKİ tokenları Warm-Gallery'ye remap (mevcut bileşenler korunur) */
  --bg:#FAF6EE; --cam:#FFFCF6; --cam-duz:#FFFCF6; --cam-yogun:#FFFCF6; --cam-yogun-duz:#FFFCF6;
  --cam-kenar:#E8E0D2; --cam-kenar2:#E0D6C6; --kart:#FFFCF6; --kart2:#FBF7EF; --kart3:#F2EBDD; --yuzey:#FFFCF6;
  --cizgi:#E8E0D2; --cizgi2:#E8E0D2;
  --ak:#1C1916; --ak-soluk:#7A7268; --metin:#1C1916; --metin2:#7A7268; --soluk:#7A7268; --soluk2:#A89F92; --secondary:#1C1916;
  /* --acc = SAFRAN (yalnız fiyat/aktif/vurgu) — CTA'lar ayrıca walnut'a override edilir */
  --acc:#C8862C; --acc-koyu:#A86E1F; --acc2:#A86E1F; --acc-100:rgba(200,134,44,.10); --acc-soft:#F4E8D2; --acc-ink:#7A4D14;
  --ana:#C8862C; --ikincil:#C8862C; --sicak:#3A2D22;   /* "Tümü" karesi + rozet zemini = ceviz */
  --yesil:#3E7A53; --yesil-bg:rgba(62,122,83,.12); --amber:#D9A441; --star:#D9A441; --altin:#D9A441;
  --kirmizi:#C0492F; --kirmizi-bg:rgba(192,73,47,.12);
  --sh1:0 1px 2px rgba(28,25,22,.05); --sh2:0 8px 24px rgba(28,25,22,.08); --sh3:0 12px 32px rgba(28,25,22,.14);
  --sh-cta:0 1px 2px rgba(0,0,0,.08), 0 6px 16px rgba(58,45,34,.18);
  --golge:0 8px 24px rgba(28,25,22,.08); --golge-yumusak:0 12px 32px rgba(28,25,22,.14);
}
body, :root[data-tema="acik"] body, :root[data-tema="koyu"] body{
  background:#FAF6EE !important; background-attachment:initial !important;
  font-family:var(--body); color:var(--ink);
}

/* ===== KRİTİK: Phosphor ikonları fill-tabanlı; eski svg fill:none/stroke kurallarını EZ ===== */
.ico{ width:24px; height:24px; display:inline-block; vertical-align:-.18em; flex:0 0 auto; }
svg.ico{ fill:currentColor !important; stroke:none !important; }
svg.ico [stroke="currentColor"]{ stroke:currentColor !important; fill:none !important; }  /* outline heart korunur */

/* ===== TİPOGRAFİ — Fraunces serif başlıklar, Inter gövde ===== */
.selam h1{ font-family:var(--display); font-weight:600; letter-spacing:-.02em; color:var(--ink); }
.selam p{ font-family:var(--body); color:var(--muted); }
.bolum-bas h2{ font-family:var(--display); font-weight:600; letter-spacing:-.01em; color:var(--ink); }
.r-dikey .r-ad, .rh-ad, .r-ad{ font-family:var(--display); font-weight:600; letter-spacing:-.01em; color:var(--ink); }
.ust .baslik{ font-family:var(--display); font-weight:600; }
.kat-bas{ font-family:var(--body); color:var(--muted); }

/* ===== BUTON SİSTEMİ — CTA = CEVİZ (turuncu/gradyan değil) ===== */
.sepet-btn, .btn-buyuk{ background:var(--walnut) !important; color:#FFFCF6 !important; box-shadow:var(--sh-cta) !important; border-radius:14px; }
.sepet-btn:active, .btn-buyuk:active{ background:var(--walnut-press) !important; transform:scale(.98); }
.sepet-btn .adet-bal{ background:rgba(255,252,246,.18); color:#E8C88A; }
.btn-tekrar{ background:var(--card) !important; color:var(--ink) !important; box-shadow:inset 0 0 0 1px var(--hairline) !important; }
/* promo CTA: yumuşak safran-ton, ink yazı (gradyan/parlama YOK) */
.promo-cta{ background:var(--accent-tint) !important; color:var(--accent-ink) !important; border:none !important;
  box-shadow:inset 0 0 0 1px rgba(200,134,44,.25) !important; font-weight:700; }
.promo-ust{ background:var(--accent-tint); color:var(--accent-ink); }
.btn-sade{ background:var(--card); color:var(--ink); box-shadow:inset 0 0 0 1px var(--hairline); }

/* "Tümü" kategori karesi + hero kampanya = ceviz (sıcak gradyan değil) */
.chip-foto--ik{ background:var(--walnut) !important; }
.rh-kamp{ background:var(--walnut) !important; color:#FFFCF6; }
.r-dikey .flash-rozet, .r-dikey .r-kampanya{ background:var(--walnut) !important; color:#FFFCF6; box-shadow:0 3px 10px rgba(28,25,22,.22) !important; }

/* aktif çip/sıra = mürekkep dolgu (editöryel), safran sadece vurgu */
.sira-chip.sec, .sira-chip.aktif{ background:var(--ink) !important; color:var(--card) !important; box-shadow:none !important; }
.chip.aktif .chip-foto{ box-shadow:0 0 0 2.5px var(--accent), var(--golge); }

/* puan = altın yıldız; rozetler editöryel */
.r-puan-sar .r-puan svg, .r-puan-sar .r-puan .ico{ color:var(--gold); fill:var(--gold); }
.r-rozet.r-bedava{ color:var(--yesil); }

/* alt-nav: aktif = safran ikon */
.botnav-ic button.aktif{ color:var(--accent); }
.botnav-ic button.aktif svg{ stroke:none; }
.botnav-ic button.aktif::after{ background:var(--accent); }

/* ödeme/zaman/adres seçili = ceviz veya safran-kenar */
.zaman-seg button.sec, .adres-cip.sec{ background:var(--walnut) !important; color:#FFFCF6 !important; border-color:transparent !important; }
.odeme-opt.secili .oik, .odeme-opt:has(input:checked) .oik{ background:var(--walnut); color:#FFFCF6; }

/* fiyat vurgusu safran */
.menu-fiyat, .fiyat, .s-fiyat, .urun-fiyat{ color:var(--accent); }

/* ============================================================================
   v109 — "MİLAS LEZZET" (referans tasarım birebir uyarlama)
   Sıcak krem zemin + TERRACOTTA (Ege kiremidi) ana renk + ZEYTİN YEŞİLİ vurgu.
   Yuvarlak yemek-fotoğraflı kategoriler. v107 yapısı korunur; palet referansa çekilir.
   Ref: warm Aegean/Milas — krem #FBF6EB, terracotta #C0552E, zeytin #5E6E3A.
   ============================================================================ */
:root, :root[data-tema="acik"], :root[data-tema="koyu"]{
  /* yeni isimli Milas-Lezzet tokenları */
  --paper:#FBF6EB; --card:#FFFFFF; --hairline:#ECE3D3;
  --ink:#2A2018; --muted:#7C6F60; --faint:#A89C8B;
  --terra:#C0552E; --terra-press:#A8451F; --terra-tint:#F6E3D8; --terra-ink:#8A3A1C;
  --olive:#5E6E3A; --olive-press:#4C5A2E; --olive-bg:rgba(94,110,58,.12);
  /* CTA = TERRACOTTA: v107'nin walnut CTA'larını referans kiremidine çek */
  --walnut:#C0552E; --walnut-press:#A8451F;
  --accent:#C0552E; --accent-press:#A8451F; --accent-ink:#8A3A1C; --accent-tint:#F6E3D8;
  --gold:#D9A441;
  /* ESKİ tokenları Milas-Lezzet'e remap */
  --bg:#FBF6EB; --cam:#FFFFFF; --cam-duz:#FFFFFF; --cam-yogun:#FFFFFF; --cam-yogun-duz:#FFFFFF;
  --cam-kenar:#ECE3D3; --cam-kenar2:#E4D9C7; --kart:#FFFFFF; --kart2:#FBF7EF; --kart3:#F4ECDD; --yuzey:#FFFFFF;
  --cizgi:#ECE3D3; --cizgi2:#ECE3D3;
  --acc:#C0552E; --acc-koyu:#A8451F; --acc2:#A8451F; --acc-100:rgba(192,85,46,.10); --acc-soft:#F6E3D8; --acc-ink:#8A3A1C;
  --ana:#C0552E; --ikincil:#C0552E; --sicak:#C0552E;
  --yesil:#5E6E3A; --yesil-bg:rgba(94,110,58,.14); --amber:#D9A441; --star:#D9A441;
  --kirmizi:#C0492F; --kirmizi-bg:rgba(192,73,47,.12);
  --sh-cta:0 1px 2px rgba(0,0,0,.08), 0 8px 18px rgba(192,85,46,.28);
}
body, :root[data-tema="acik"] body, :root[data-tema="koyu"] body{
  background:#FBF6EB !important; background-attachment:initial !important; color:var(--ink);
}

/* ===== YUVARLAK kategori daireleri (referans: foto + altında etiket, kutu yok) ===== */
.chip{ width:74px; height:auto; background:transparent !important; backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important; border:none !important; box-shadow:none !important;
  border-radius:0 !important; gap:7px; padding:2px 0; }
.chip-foto{ width:64px; height:64px; border-radius:50% !important; box-shadow:0 4px 12px rgba(42,32,24,.12);
  border:2px solid #FFFFFF; }
.chip-foto img{ border-radius:50%; }
.chip span:last-child{ font-size:12px; font-weight:600; color:var(--ink); }
.chip.aktif span:last-child{ color:var(--terra); font-weight:700; }
.chip.aktif .chip-foto{ box-shadow:0 0 0 2.5px var(--terra), 0 4px 12px rgba(192,85,46,.25); }
.chip-foto--ik{ background:var(--terra) !important; }

/* ===== CTA / rozet / vurgu = terracotta (otomatik token ile geliyor; pekiştir) ===== */
.sepet-btn, .btn-buyuk{ background:var(--terra) !important; }
.sepet-btn:active, .btn-buyuk:active{ background:var(--terra-press) !important; }
.rh-kamp, .r-dikey .flash-rozet, .r-dikey .r-kampanya{ background:var(--terra) !important; color:#fff !important; }
.botnav-ic button.aktif, .botnav-ic button.aktif::after{ color:var(--terra); background:var(--terra); }
.botnav-ic button.aktif::after{ color:unset; }
.menu-fiyat, .fiyat, .s-fiyat, .urun-fiyat{ color:var(--terra); }

/* ===== ZEYTİN YEŞİLİ: "Açık" rozeti + bedava/taze vurgular (iştah + Ege hissi) ===== */
.r-durum:not(.mesgul){ color:var(--olive) !important; background:var(--olive-bg) !important; }
.r-rozet.r-bedava{ color:var(--olive) !important; }
.adim.tamam .dot, .adimlar::after{ background:var(--olive) !important; border-color:var(--olive) !important; }

/* promo: terracotta-tint yumuşak kart */
.promo-cta{ background:var(--terra) !important; color:#fff !important; box-shadow:none !important; }
.promo-ust{ background:var(--terra-tint); color:var(--terra-ink); }

/* ============================================================================
   v110 — "MİLAS LEZZET" ANA SAYFA TAM YENİDEN KURGU (referans birebir)
   Marka başlığı (logo + wordmark + slogan) · konum · selam · arama · yuvarlak
   kategoriler · TERRACOTTA hero promo (carousel) · "Öne Çıkan" YATAY kartlar ·
   5'li alt menü. Palet v109'dan gelir (krem/terracotta/zeytin).
   ============================================================================ */

/* ===== MARKA BAŞLIĞI ===== */
.ml-marka{ display:flex; align-items:center; justify-content:space-between; gap:10px; padding:4px 2px 2px; }
.ml-marka-sol{ display:flex; align-items:center; gap:10px; min-width:0; }
.ml-mark{ width:44px; height:44px; flex:0 0 auto; filter:drop-shadow(0 2px 5px rgba(94,110,58,.18)); }
.ml-wordmark{ min-width:0; }
.ml-ad{ font-family:var(--display); font-weight:600; font-size:24px; line-height:1.05; letter-spacing:-.01em; }
.ml-ad1{ color:var(--olive); } .ml-ad2{ color:var(--terra); }
.ml-slogan{ font-size:11.5px; color:var(--muted); font-weight:500; margin-top:1px; }
.ml-marka-sag{ display:flex; align-items:center; gap:8px; flex:0 0 auto; }
.ml-ust-btn{ width:44px; height:44px; border-radius:50%; background:#fff; border:1px solid var(--hairline);
  display:grid; place-items:center; color:var(--ink); box-shadow:0 2px 8px rgba(42,32,24,.06); position:relative; }
.ml-ust-btn svg{ width:22px; height:22px; }
.ml-avatar{ border-radius:14px; }
.ml-rozet-nokta{ position:absolute; top:9px; right:10px; width:9px; height:9px; border-radius:50%;
  background:var(--terra); border:2px solid #fff; }

/* ===== KONUM SATIRI ===== */
.ml-konum{ display:inline-flex; align-items:center; gap:6px; background:transparent !important; border:none !important;
  box-shadow:none !important; backdrop-filter:none !important; -webkit-backdrop-filter:none !important;
  padding:8px 2px 2px; color:var(--ink); font-weight:600; }
.ml-konum .kik{ color:var(--terra); display:inline-flex; } .ml-konum .kik svg{ width:20px; height:20px; }
.ml-konum b{ font-size:16px; } .ml-konum .kchev{ color:var(--muted); display:inline-flex; }
.ml-konum .kchev svg{ width:16px; height:16px; }

/* ===== SELAM ===== */
.selam{ margin:8px 2px 12px; } .selam h1{ font-size:26px; margin:0 0 2px; }
.selam .ml-wave{ font-family:initial; -webkit-text-fill-color:initial; }
.selam p{ font-size:16px; margin:0; }

/* ===== HERO PROMO CAROUSEL (terracotta) ===== */
.ml-promo-sar{ margin:6px 0 8px; }
.ml-promo-track{ display:flex; gap:12px; overflow-x:auto; scroll-snap-type:x mandatory;
  scrollbar-width:none; -ms-overflow-style:none; padding:2px 2px 6px; }
.ml-promo-track::-webkit-scrollbar{ display:none; }
.ml-promo{ position:relative; flex:0 0 100%; scroll-snap-align:center; min-height:168px; border-radius:22px;
  overflow:hidden; background:linear-gradient(135deg,#C0552E 0%,#A8451F 100%); color:#FFF3EA;
  box-shadow:0 12px 28px rgba(168,69,31,.28); display:flex; }
.ml-promo-ic{ position:relative; z-index:2; padding:20px 18px; display:flex; flex-direction:column;
  align-items:flex-start; gap:4px; max-width:60%; }
.ml-promo-ust{ font-size:14px; font-weight:600; opacity:.95; display:inline-flex; align-items:center; gap:8px; }
.ml-promo-cizgi{ width:34px; height:2px; background:rgba(255,243,234,.6); border-radius:2px; display:inline-block; }
.ml-promo-bas{ font-family:var(--display); font-weight:600; font-size:30px; line-height:1.05; letter-spacing:-.01em; color:#FFFFFF; }
.ml-promo-alt{ font-size:14px; opacity:.94; margin-bottom:6px; }
.ml-promo-cta{ margin-top:auto; background:#FFFFFF !important; color:var(--terra) !important; font-weight:800;
  font-size:15px; padding:11px 22px; border-radius:var(--r-pill); box-shadow:0 6px 14px rgba(60,20,10,.22) !important; }
.ml-promo-rozet{ position:absolute; top:14px; right:14px; z-index:3; background:rgba(255,255,255,.22);
  backdrop-filter:blur(4px); color:#fff; font-weight:800; font-size:16px; padding:6px 12px; border-radius:14px;
  border:1px solid rgba(255,255,255,.35); }
.ml-promo-foto{ position:absolute; right:-6px; bottom:-6px; top:-6px; width:54%; z-index:1; }
.ml-promo-foto::before{ content:''; position:absolute; inset:0; z-index:1;
  background:linear-gradient(90deg,#A8451F 0%,rgba(168,69,31,.55) 30%,rgba(168,69,31,0) 70%); }
.ml-promo-foto img{ width:100%; height:100%; object-fit:cover; }
.ml-promo-dots{ display:flex; gap:6px; justify-content:center; margin-top:2px; }
.ml-promo-dot{ width:7px; height:7px; border-radius:50%; background:rgba(192,85,46,.28); transition:width .2s,background .2s; }
.ml-promo-dot.aktif{ width:20px; border-radius:4px; background:var(--terra); }

/* ===== BÖLÜM BAŞLIĞI + "Tümünü Gör" ===== */
.bolum-bas.ml-bolum{ display:flex; align-items:baseline; justify-content:space-between; gap:10px; margin:14px 2px 10px; }
.bolum-bas.ml-bolum h2{ font-size:19px; }
.ml-tumu{ display:inline-flex; align-items:center; gap:2px; color:var(--muted); font-size:13.5px; font-weight:600; flex:0 0 auto; }
.ml-tumu svg{ width:15px; height:15px; }

/* ===== ÖNE ÇIKAN — YATAY kartlar ===== */
.ry-sira{ display:flex; gap:14px; overflow-x:auto; scrollbar-width:none; -ms-overflow-style:none;
  padding:2px 2px 8px; scroll-snap-type:x proximity; }
.ry-sira::-webkit-scrollbar{ display:none; }
.ry-kart{ flex:0 0 188px; width:188px; scroll-snap-align:start; background:#fff; border:1px solid var(--hairline);
  border-radius:20px; overflow:hidden; text-align:left; box-shadow:0 6px 18px rgba(42,32,24,.08);
  display:flex; flex-direction:column; transition:transform .12s, box-shadow .12s; }
.ry-kart:active{ transform:scale(.985); }
.ry-kart.kart-kapali{ opacity:.62; }
.ry-foto{ position:relative; width:100%; height:118px; background:#F4ECDD; }
.ry-foto img{ width:100%; height:100%; object-fit:cover; }
.ry-foto-bos{ position:absolute; inset:0; display:grid; place-items:center; color:var(--terra); opacity:.5; }
.ry-foto-bos svg{ width:40px; height:40px; }
.ry-kalp{ position:absolute; top:9px; right:9px; width:34px; height:34px; border-radius:50%; background:rgba(255,255,255,.92);
  display:grid; place-items:center; color:#C0492F; box-shadow:0 2px 8px rgba(0,0,0,.14); }
.ry-kalp svg{ width:18px; height:18px; }
.ry-kalp.dolu{ color:#C0492F; } .ry-kalp.dolu svg{ fill:#C0492F !important; }
.ry-indirim{ position:absolute; left:9px; bottom:9px; background:var(--terra); color:#fff; font-weight:700;
  font-size:11.5px; padding:4px 9px; border-radius:9px; box-shadow:0 3px 9px rgba(168,69,31,.32);
  max-width:78%; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.ry-govde{ padding:11px 12px 13px; display:flex; flex-direction:column; gap:3px; }
.ry-ad{ font-family:var(--display); font-weight:600; font-size:15.5px; color:var(--ink); line-height:1.2;
  white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.ry-puan{ display:flex; align-items:center; gap:4px; font-size:13px; color:var(--ink); }
.ry-puan svg{ width:15px; height:15px; color:var(--gold); fill:var(--gold); }
.ry-puan-say{ color:var(--muted); font-weight:500; }
.ry-sure{ font-size:12.5px; color:var(--muted); }
.ry-alt{ display:flex; align-items:center; justify-content:space-between; gap:8px; margin-top:2px; }
.ry-mutfak{ font-size:12px; color:var(--muted); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.ry-min{ font-size:11.5px; color:var(--faint); font-weight:600; flex:0 0 auto; }

/* ===== 5'Lİ ALT MENÜ — terracotta aktif (referans) ===== */
.botnav-ic{ display:flex; }
.botnav-ic button{ flex:1 1 0; min-width:0; padding:8px 2px; }
/* v109'da yanlışlıkla TÜM aktif butona terracotta ZEMİN gelmişti (kocaman blok) → düzelt: yalnız ikon+etiket renk. */
.botnav-ic button.aktif{ color:var(--terra) !important; background:transparent !important; box-shadow:none !important; }
.botnav-ic button.aktif svg{ fill:var(--terra) !important; stroke:var(--terra) !important; filter:none !important; }
.botnav-ic button span{ font-size:11px; font-weight:600; }
.botnav-ic button.aktif::after{ display:none !important; }

/* ============================================================================
   v111 — "MİLAS LEZZET" CİLA (7-ajan fidelity denetimi sonrası)
   Daha sıcak krem zemin · yumuşak-gölgeli arama · terracotta filtre · 2-satır
   kart adı · güçlü beyaz kategori halkası · zeytin aksanı · yumuşak hero geçişi.
   ============================================================================ */
/* 1) Daha sıcak krem zemin (saf beyaz hissini kır; kartlar beyaz kalır = katman) */
body, :root[data-tema="acik"] body, :root[data-tema="koyu"] body{ background:#F7F1E4 !important; }
:root, :root[data-tema="acik"], :root[data-tema="koyu"]{ --paper:#F7F1E4; --bg:#F7F1E4; }

/* 2) Arama kutusu — kenarlıksız, yumuşak sıcak gölge, sıcak placeholder */
.ara-kutu input{ border:none !important; background:#fff !important; box-shadow:0 4px 16px rgba(120,80,40,.10) !important;
  border-radius:16px !important; padding-top:15px; padding-bottom:15px; }
.ara-kutu input::placeholder{ color:#9A8F82; }
.ara-ik{ color:var(--muted); }
/* 3) Filtre butonu — terracotta ikon, yumuşak beyaz kart */
.filtre-btn{ background:#fff !important; border:none !important; box-shadow:0 4px 16px rgba(120,80,40,.10) !important;
  border-radius:16px !important; color:var(--terra) !important; }
.filtre-btn svg{ stroke:var(--terra) !important; color:var(--terra) !important; }

/* 4) Kategori daireleri — belirgin beyaz halka + sıcak gölge; etiket tam sığsın */
.chip{ width:78px !important; }
.chip-foto{ border:2.5px solid #fff !important; box-shadow:0 0 0 1px rgba(192,85,46,.10), 0 5px 14px rgba(42,32,24,.14) !important; }
.chip span:last-child{ white-space:nowrap; }

/* 5) Selam alt metni — zeytin tonu (sadece terracotta monotonluğunu kır) */
.selam p{ color:#6E7A4E; }

/* 6) "Tümünü Gör" — zeytin aksanı */
.ml-tumu{ color:var(--olive); } .ml-tumu svg{ color:var(--olive); }

/* 7) Öne çıkan kart adı — 2 satıra izin (kırpma yok) */
.ry-ad{ white-space:normal; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical;
  overflow:hidden; line-height:1.2; min-height:2.4em; }
/* kalp dairesi net beyaz + indirim rozeti tam terracotta + biraz daha yuvarlak */
.ry-kalp{ background:#fff !important; box-shadow:0 2px 8px rgba(0,0,0,.16) !important; }
.ry-indirim{ background:var(--terra) !important; border-radius:11px; }
/* kart gölgesini yumuşat/birleştir */
.ry-kart{ box-shadow:0 8px 22px rgba(70,40,20,.08) !important; }

/* 8) Hero foto→terracotta geçişi daha geniş/yumuşak + rozet cam hissi */
.ml-promo-foto::before{ background:linear-gradient(90deg,#A8451F 0%,rgba(168,69,31,.85) 26%,rgba(168,69,31,0) 64%) !important; }
.ml-promo-rozet{ background:rgba(255,255,255,.20) !important; backdrop-filter:blur(8px); -webkit-backdrop-filter:blur(8px);
  border-radius:999px !important; border:1px solid rgba(255,255,255,.40) !important; }

/* 9) marka logo ile wordmark arası nefes + alt menü üst ince çizgi */
.ml-wordmark{ margin-left:2px; }
.botnav-ic{ border-top:1px solid rgba(120,80,40,.07); }

/* ============================================================================
   v112 — "MİLAS LEZZET" NOKTASINA-AYNI PASI (20-ajan referans kıyas raporu)
   Renk düzeltme · 6 kategori sığar · tek-pill arama · sağ-alt indirim rozeti ·
   yumuşak rounded başlık (Baloo 2) · gri pasif nav · daha sıcak krem · outline üst ikon.
   ============================================================================ */
:root, :root[data-tema="acik"], :root[data-tema="koyu"]{
  --terra:#C15630; --terra-press:#A8451F; --terra-tint:#F6E3D8; --terra-ink:#8A3A1C;
  --olive:#5C6B38; --olive-bg:rgba(92,107,56,.12); --gold:#DE9B53;
  --accent:#C15630; --accent-press:#A8451F; --accent-ink:#8A3A1C;
  --acc:#C15630; --acc-koyu:#A8451F; --acc2:#A8451F; --acc-soft:#F6E3D8;
  --ana:#C15630; --ikincil:#C15630; --sicak:#C15630;
  --yesil:#5C6B38; --yesil-bg:rgba(92,107,56,.14); --star:#DE9B53;
  --paper:#F4EDE1; --bg:#F4EDE1;
}
body, :root[data-tema="acik"] body, :root[data-tema="koyu"] body{ background:#F4EDE1 !important; }

/* ===== YUMUŞAK ROUNDED BAŞLIK (Baloo 2) — wordmark Fraunces serif kalır ===== */
.selam h1, .ml-promo-bas, .bolum-bas h2, .ry-ad, .r-dikey .r-ad, .rh-ad, .r-ad{
  font-family:'Baloo 2', system-ui, -apple-system, sans-serif !important; letter-spacing:0 !important; }
.selam h1{ font-weight:700; } .ml-promo-bas{ font-weight:700; } .bolum-bas h2{ font-weight:700; }
.ry-ad{ font-weight:600; } .r-dikey .r-ad, .rh-ad, .r-ad{ font-weight:600; }
.ml-ad{ font-family:'Fraunces','Georgia',serif !important; }
.ml-ad1{ color:#46552F; } .ml-ad2{ color:var(--terra); }

/* ===== ÜST İKONLAR — dolu beyaz daire YOK; düz/outline, profil yuvarlak-kare ===== */
.ml-ust-btn{ background:transparent !important; border:none !important; box-shadow:none !important; color:#4A463F; width:42px; height:42px; }
.ml-ust-btn svg{ width:25px; height:25px; }
.ml-avatar{ border:1.6px solid #D6CBB7 !important; border-radius:12px !important; background:transparent !important; }
.ml-rozet-nokta{ top:6px; right:7px; }

/* ===== KONUM + SELAM ===== */
.ml-konum .kik{ background:#F4E4DC; width:30px; height:30px; border-radius:50%; display:grid; place-items:center; }
.ml-konum .kik svg{ width:17px; height:17px; }
.selam{ margin-top:14px; } .selam p{ color:#5A554E !important; font-weight:500; }

/* ===== ARAMA — tek beyaz pill; filtre İÇERİDE, ince ayraçla; terracotta sliders ===== */
.ara-satir{ background:#fff; border-radius:16px; box-shadow:0 4px 16px rgba(120,80,40,.10); display:flex; align-items:center; gap:0; padding:0; }
.ara-kutu{ flex:1; min-width:0; }
.ara-kutu input{ background:transparent !important; box-shadow:none !important; border:none !important; border-radius:16px !important; }
.filtre-btn{ background:transparent !important; box-shadow:none !important; border:none !important; border-left:1px solid #ECE3D3 !important;
  border-radius:0 !important; width:52px !important; height:34px; color:var(--terra) !important; }
.filtre-btn svg{ stroke:var(--terra) !important; color:var(--terra) !important; width:22px; height:22px; }

/* ===== KATEGORİLER — 6'sı da SIĞAR; halka/karartma yok; gri etiket ===== */
.chip-sira{ display:flex !important; justify-content:space-between !important; gap:2px !important; overflow:visible !important; padding:2px 0 4px; }
.chip{ width:auto !important; flex:1 1 0 !important; min-width:0 !important; padding:0 !important; }
.chip-foto{ width:54px !important; height:54px !important; margin:0 auto 6px; border:2px solid #fff !important;
  box-shadow:0 2px 8px rgba(42,32,24,.12) !important; }
.chip span:last-child{ font-size:11.5px !important; color:#7A7268 !important; font-weight:500 !important; white-space:nowrap; }
.chip.aktif span:last-child{ color:var(--terra) !important; font-weight:700 !important; }
.chip.aktif .chip-foto{ box-shadow:0 0 0 2px var(--terra), 0 2px 8px rgba(0,0,0,.12) !important; }

/* ===== HERO PROMO — %30 SOLİD rozet; noktalar SOLDA + aktif uzun ===== */
.ml-promo-rozet{ background:#9E3A26 !important; backdrop-filter:none !important; -webkit-backdrop-filter:none !important;
  border:none !important; border-radius:12px !important; font-size:15px; }
.ml-promo-dots{ justify-content:flex-start !important; padding-left:20px; }
.ml-promo-dot.aktif{ background:#fff; } .ml-promo-dot{ background:rgba(255,255,255,.45); }
.ml-promo-foto::before{ background:linear-gradient(90deg,#A8451F 0%,rgba(168,69,31,.85) 30%,rgba(168,69,31,0) 66%) !important; }

/* ===== BÖLÜM — "Tümünü Gör" GRİ (zeytin değil) ===== */
.ml-tumu{ color:#9A8F82 !important; font-weight:500; } .ml-tumu svg{ color:#9A8F82 !important; }

/* ===== ÖNE ÇIKAN KART — indirim SAĞ-ALT; daha dar (3. kart peek); yumuşak gölge ===== */
.ry-kart{ flex:0 0 164px !important; width:164px !important; box-shadow:0 6px 18px rgba(70,40,20,.07) !important; }
.ry-indirim{ left:auto !important; right:10px !important; bottom:10px !important; }
.ry-kalp{ top:9px; right:9px; left:auto; }
.ry-puan svg{ color:var(--gold); fill:var(--gold); }

/* ===== ALT MENÜ — pasif ikon/etiket NÖTR GRİ; yalnız aktif terracotta ===== */
.botnav-ic button{ color:#9B958C; }
.botnav-ic button svg{ fill:#9B958C; }
.botnav-ic button.aktif{ color:var(--terra) !important; }
.botnav-ic button.aktif svg{ fill:var(--terra) !important; }

/* v112b — bölüm başlığı tek satır (Baloo 2'de 19px sarıyordu) + indirim rozeti küçült */
.bolum-bas.ml-bolum{ flex-wrap:nowrap; align-items:center; }
.bolum-bas.ml-bolum h2{ font-size:17px !important; white-space:nowrap; line-height:1.2; }
.ml-tumu{ flex:0 0 auto; white-space:nowrap; }
.ry-indirim{ font-size:11px; padding:3px 8px; }

/* v112c — pasif nav GRİ (svg.ico !important'i yen) · kategori foto parlaklık · logo biraz büyük · üst ikon outline */
.botnav-ic button:not(.aktif){ color:#9B958C !important; }
.botnav-ic button:not(.aktif) svg.ico{ fill:#9B958C !important; stroke:none !important; }
.botnav-ic button.aktif svg.ico{ fill:var(--terra) !important; }
.chip-foto img{ filter:brightness(1.06) saturate(1.05); }
.ml-mark{ width:46px; height:46px; }
/* üst ikonlar gerçek outline (stroke) — fill yok */
.ml-ust-btn svg.ico{ fill:none !important; stroke:currentColor !important; stroke-width:1.8 !important; }

/* ============================================================================
   v113 — MARKA = DÜKKANIM (referans düzen aynı; yalnız ad+logo bizim markamız)
   Dükkanım D-amblemi (mor-mavi) + "Dükkanım" wordmark (Baloo 2, lacivert) + slogan.
   Filtre ikonu referanstaki SLIDERS'a çevrildi (huni değil).
   ============================================================================ */
img.ml-mark{ width:46px; height:46px; object-fit:contain; filter:none; border-radius:0; }
.ml-ad-duk{ font-family:'Baloo 2', system-ui, -apple-system, sans-serif !important;
  font-weight:800 !important; font-size:25px; line-height:1.0; letter-spacing:-.01em; color:#15143F; }

/* v113b — konum pin SOLİD terracotta (referans: dolu kırmızı pin) */
.ml-konum .kik{ color:var(--terra) !important; }
.ml-konum .kik svg.ico{ fill:var(--terra) !important; stroke:none !important; }

/* ============================================================================
   v114 — ALT KISIM referans birebir: "Tümünü Gör" YEŞİL · sıralama-çubuğu + ayrı
   "Tüm Restoranlar" listesi KALDIRILDI · az işletmede kart boşluğu giderildi.
   ============================================================================ */
/* "Tümünü Gör" referansta ZEYTİN YEŞİLİ (gri değil) */
.ml-tumu{ color:var(--olive) !important; font-weight:600; } .ml-tumu svg{ color:var(--olive) !important; }

/* Az işletme: yatay boşluk yerine tam-genişlik / iki-sütun (kart referans stilinde kalır) */
.ry-sira--tek{ overflow:visible; }
.ry-sira--tek .ry-kart{ flex:1 1 auto !important; width:100% !important; }
.ry-sira--tek .ry-foto{ height:172px; }
.ry-sira--ikili{ overflow:visible; }
.ry-sira--ikili .ry-kart{ flex:1 1 calc(50% - 7px) !important; width:auto !important; }

/* v114b — öne-çıkan kart referans cilası: kompakt 2-satır köşe rozeti · Min ayrı satır ·
   kart biraz geniş · solid beyaz alt-bar · promo dots ortada/biraz yüksek. */
/* İndirim rozeti: kompakt köşe (referans: "%20" / "indirim" 2 satır, sağ-alt) */
.ry-indirim{ left:auto !important; right:8px !important; bottom:8px !important; max-width:62px; white-space:normal !important;
  text-align:center; line-height:1.04; padding:4px 7px; font-size:10.5px; }
/* Kart gövdesi: mutfak ve "Min. TL" AYRI satır (referans), kart biraz geniş */
.ry-kart{ flex:0 0 172px !important; width:172px !important; }
.ry-sira--tek .ry-kart, .ry-sira--ikili .ry-kart{ flex-basis:auto !important; }
.ry-alt{ flex-direction:column !important; align-items:stretch !important; gap:1px !important; }
.ry-mutfak{ max-width:100%; }
.ry-min{ text-align:right; align-self:flex-end; }
/* Alt menü: SOLİD beyaz bar (krem sızıntısı yok) */
.botnav-ic{ background:#FFFFFF !important; -webkit-backdrop-filter:none !important; backdrop-filter:none !important; }
/* Promo: biraz daha yüksek + dots ortada */
.ml-promo{ min-height:182px; }
.ml-promo-dots{ justify-content:center !important; padding-left:0 !important; }

/* ============================================================================
   v115 — UYGULAMA ARKA PLANI: yumuşak pembe-bej (blush) — referans isteği
   Kartlar/yüzeyler beyaz kalır (kontrast); yalnız sayfa zemini değişir.
   ============================================================================ */
:root, :root[data-tema="acik"], :root[data-tema="koyu"]{ --paper:#FADFDC; --bg:#FADFDC; }
body, :root[data-tema="acik"] body, :root[data-tema="koyu"] body{ background:#FADFDC !important; }

/* ============================================================================
   v116 — Referans (Ulan) uyumu: ARKA PLAN pembe→beyaz GRADYAN (yukarıdan pembe,
   aşağı beyazlaşır) + VURGU/İKON rengi terracotta-kahve → CANLI KIRMIZI.
   ============================================================================ */
/* 1) Arka plan: üstte pembe, ~ekranı geçince beyaz (sayfa aşağı indikçe beyaz) */
:root, :root[data-tema="acik"], :root[data-tema="koyu"]{ --paper:#FFFFFF; --bg:#FFFFFF; }
body, :root[data-tema="acik"] body, :root[data-tema="koyu"] body{
  background:linear-gradient(180deg,#F7CFCC 0%,#F9DAD7 16%,#FCE8E6 38%,#FFFFFF 62%) #FFFFFF no-repeat !important;
  background-size:100% 1500px !important; background-attachment:scroll !important;
}

/* 2) VURGU = CANLI KIRMIZI (ikon çizgileri, pin, filtre, nav-aktif, CTA, rozet) */
:root, :root[data-tema="acik"], :root[data-tema="koyu"]{
  --terra:#EE3B3A; --terra-press:#D42B2A; --terra-tint:#FCE3E1; --terra-ink:#B4231F;
  --accent:#EE3B3A; --accent-press:#D42B2A; --accent-ink:#B4231F; --accent-tint:#FCE3E1;
  --acc:#EE3B3A; --acc-koyu:#D42B2A; --acc2:#D42B2A; --acc-soft:#FCE3E1; --acc-ink:#B4231F;
  --ana:#EE3B3A; --ikincil:#EE3B3A; --sicak:#EE3B3A;
}
/* Hero promo: terracotta gradyan → KIRMIZI gradyan (referans kırmızı banner) */
.ml-promo{ background:linear-gradient(135deg,#EE3B3A 0%,#D42B2A 100%) !important; box-shadow:0 12px 28px rgba(214,43,42,.30) !important; }
.ml-promo-rozet{ background:#C62321 !important; }
.ml-promo-foto::before{ background:linear-gradient(90deg,#D42B2A 0%,rgba(212,43,42,.85) 30%,rgba(212,43,42,0) 66%) !important; }
.ml-promo-cta{ color:#EE3B3A !important; }
/* Konum pini + filtre + alt-nav aktif zaten --terra/currentColor → otomatik kırmızı.
   Sepet/CTA butonları --terra üzerinden kırmızı olur. */
.ry-puan svg{ color:var(--star); fill:var(--star); }   /* yıldız altın kalır */

/* ============================================================================
   v117 — 10-ajan kıyas cilası: arka plan DAHA GÜL PEMBE + pembe kartlara kadar
   sürer (erken beyazlamaz); kırmızı daha CANLI/crimson; arama büyüteci de kırmızı.
   ============================================================================ */
/* Arka plan: gül pembesi (turuncu/somon değil), ~kartlara kadar pembe sonra beyaz */
body, :root[data-tema="acik"] body, :root[data-tema="koyu"] body{
  background:linear-gradient(180deg,#F6CECE 0%,#F8D4D4 30%,#FBE3E3 58%,#FFFFFF 88%) #FFFFFF no-repeat !important;
  background-size:100% 1480px !important;
}
/* Kırmızı vurguyu canlandır (daha crimson, daha az turuncu) */
:root, :root[data-tema="acik"], :root[data-tema="koyu"]{
  --terra:#E93B42; --terra-press:#CF2A33; --acc:#E93B42; --acc-koyu:#CF2A33;
  --accent:#E93B42; --accent-press:#CF2A33; --ana:#E93B42; --ikincil:#E93B42; --sicak:#E93B42;
}
.ml-promo{ background:linear-gradient(135deg,#EC3F46 0%,#D72A33 100%) !important; }
.ml-promo-foto::before{ background:linear-gradient(90deg,#D72A33 0%,rgba(215,42,51,.85) 30%,rgba(215,42,51,0) 66%) !important; }
.ml-promo-rozet{ background:#C12027 !important; }
.ml-promo-cta{ color:#E93B42 !important; }
/* Arama büyüteci de KIRMIZI (referans: magnifier kırmızı) */
.ara-ik{ color:var(--terra) !important; }
.ara-ik svg{ stroke:var(--terra) !important; color:var(--terra) !important; }

/* ============================================================================
   v118 — Referans renkleri BİREBİR (PIL ile örneklendi):
   Kırmızı DAHA AÇIK/canlı coral (#F44C4E; promo #ED3A3D) · zemin yumuşak gül
   pembe (#FBD3D3) ~orta sayfada beyazlar, AŞAĞISI BEMBEYAZ.
   ============================================================================ */
/* Zemin: gül pembe (üst) → ~%55'te beyaz → altı bembeyaz */
body, :root[data-tema="acik"] body, :root[data-tema="koyu"] body{
  background:linear-gradient(180deg,#FBD3D3 0%,#FAD8D8 24%,#FDEEEE 46%,#FFFFFF 62%) #FFFFFF no-repeat !important;
  background-size:100% 1280px !important;
}
/* Kırmızı: daha açık/canlı coral (koyu crimson değil) */
:root, :root[data-tema="acik"], :root[data-tema="koyu"]{
  --terra:#F44C4E; --terra-press:#E03B3D; --acc:#F44C4E; --acc-koyu:#E03B3D;
  --accent:#F44C4E; --accent-press:#E03B3D; --ana:#F44C4E; --ikincil:#F44C4E; --sicak:#F44C4E;
  --terra-tint:#FDE3E3; --acc-soft:#FDE3E3; --accent-tint:#FDE3E3;
}
.ml-promo{ background:linear-gradient(135deg,#F4504F 0%,#E63B3D 100%) !important; box-shadow:0 12px 28px rgba(230,59,61,.28) !important; }
.ml-promo-foto::before{ background:linear-gradient(90deg,#E63B3D 0%,rgba(230,59,61,.85) 30%,rgba(230,59,61,0) 66%) !important; }
.ml-promo-rozet{ background:#D02E30 !important; }
.ml-promo-cta{ color:#F44C4E !important; }
.ara-ik, .ara-ik svg{ color:var(--terra) !important; stroke:var(--terra) !important; }

/* ============================================================================
   v119 — Yeni Dükkanım amblemi (cloche) + SİYAH wordmark + arka plan daha SICAK
   (iştah-açan kırmızı/coral → beyaz; fazla pembe değil).
   ============================================================================ */
svg.ml-mark{ width:46px; height:46px; flex:0 0 auto; }
.ml-ad-duk{ color:#1A1A1A !important; }   /* yeni logodaki gibi siyah wordmark */
/* Arka plan: üstte iştah-açan SICAK coral (daha az pembe) → ~%55 beyaz → altı bembeyaz */
body, :root[data-tema="acik"] body, :root[data-tema="koyu"] body{
  background:linear-gradient(180deg,#FAC4BB 0%,#FBD3CC 24%,#FDEDEA 48%,#FFFFFF 64%) #FFFFFF no-repeat !important;
  background-size:100% 1280px !important;
}

/* ============================================================================
   v120 — Arka plan kırmızılığı ÇOK AZALTILDI: yalnız header'da hafif sıcak ton,
   ~250px'te solup biter, gerisi bembeyaz. (Kullanıcı: "çok fazla, kısalım".)
   ============================================================================ */
body, :root[data-tema="acik"] body, :root[data-tema="koyu"] body{
  background:linear-gradient(180deg,#FAD6CF 0%,#FCE8E3 30%,#FFFFFF 56%) #FFFFFF no-repeat !important;
  background-size:100% 470px !important;
}

/* v121 — Header'da GERÇEK Dükkanım logosu (kullanıcı dosyası, dış zemin şeffaf) + slogan */
.ml-brand{ display:flex; flex-direction:column; gap:1px; min-width:0; }
img.ml-logo{ height:34px; width:auto; max-width:200px; display:block; object-fit:contain; }
.ml-brand .ml-slogan{ font-size:11.5px; color:var(--muted); font-weight:500; margin-left:2px; }

/* ============================================================================
   v122 — HEADER = iştah-açan KIRMIZI bant (çilek/coca tonu #DE1E2B) → KISA geçiş
   → beyaz gövde. Kırmızıda okunsun diye header içeriği BEYAZ (logo dahil).
   ============================================================================ */
body, :root[data-tema="acik"] body, :root[data-tema="koyu"] body{
  background:linear-gradient(180deg,#DE1E2B 0%,#DE1E2B 42%,#EC5A57 58%,#FFFFFF 72%) #FFFFFF no-repeat !important;
  background-size:100% 430px !important;
}
/* header içeriği BEYAZ */
.ml-ust-btn{ color:#FFFFFF !important; }
.ml-ust-btn svg.ico{ stroke:#FFFFFF !important; }
.ml-avatar{ border-color:rgba(255,255,255,.65) !important; }
.ml-rozet-nokta{ background:#FFFFFF !important; }
.ml-brand .ml-slogan{ color:rgba(255,255,255,.88) !important; }
.ml-konum{ color:#FFFFFF !important; }
.ml-konum .kik{ background:rgba(255,255,255,.22) !important; color:#FFFFFF !important; }
.ml-konum .kik svg.ico{ fill:#FFFFFF !important; }
.ml-konum b{ color:#FFFFFF !important; }
.ml-konum .kchev{ color:rgba(255,255,255,.9) !important; }
.selam h1{ color:#FFFFFF !important; }
.selam p{ color:rgba(255,255,255,.92) !important; }

/* ============================================================================
   v123 — Promo kartları KIRMIZI → SİYAH GEÇİŞLİ (kırmızı header'a uyum).
   Yazı/CTA beyaz, geçişin ÜSTünde okunur; foto sağda siyah fade altında.
   ============================================================================ */
.ml-promo{ background:linear-gradient(135deg,#2E2E2E 0%,#0A0A0A 100%) !important;
  box-shadow:0 12px 26px rgba(0,0,0,.30) !important; }
.ml-promo-foto::before{ background:linear-gradient(90deg,#0A0A0A 0%,rgba(10,10,10,.82) 34%,rgba(10,10,10,0) 70%) !important; }
/* %30 / 🔥 rozet kırmızı kalsın (siyah üstünde pop) + Keşfet beyaz pill */
.ml-promo-rozet{ background:#E5202C !important; color:#fff !important; }
.ml-promo-cta{ background:#FFFFFF !important; color:#111111 !important; }
.ml-promo-dot{ background:rgba(255,255,255,.45) !important; }
.ml-promo-dot.aktif{ background:#FFFFFF !important; }

/* ============================================================================
   v124 — Promo: JET SİYAH zemin + foto ÖNDE/parlak (arka planda soluk DEĞİL).
   Siyah fade yalnız SOL (yazı) tarafta; fotonun sağ kısmı tam parlak.
   ============================================================================ */
.ml-promo{ background:#0A0A0A !important; }
.ml-promo-ic{ max-width:53% !important; }
.ml-promo-foto{ width:64% !important; right:0 !important; left:auto !important; top:-8px !important; bottom:-8px !important; }
.ml-promo-foto img{ width:100% !important; height:100% !important; object-fit:cover !important; filter:brightness(1.07) saturate(1.06) !important; }
/* fade SADECE sol kenarda (yazıya doğru) → fotonun gövdesi tam parlak/önde */
.ml-promo-foto::before{ background:linear-gradient(90deg,#0A0A0A 0%,rgba(10,10,10,.65) 16%,rgba(10,10,10,0) 44%) !important; }

/* v124b — 6-ajan: foto DAHA parlak/büyük + perde sağda erken bitsin + altın üst çizgi */
.ml-promo{ min-height:192px !important; }
.ml-promo-foto{ width:67% !important; }
.ml-promo-foto img{ filter:brightness(1.16) saturate(1.1) contrast(1.04) !important; }
/* siyah perde yalnız sol metin bölgesinde; ~%42'de tamamen 0 → sağ yarı TAM parlak */
.ml-promo-foto::before{ background:linear-gradient(90deg,#0A0A0A 0%,rgba(10,10,10,.72) 14%,rgba(10,10,10,.3) 30%,rgba(10,10,10,0) 44%) !important; }
.ml-promo-ic{ max-width:50% !important; }
/* üst etiket çizgisi ALTIN (hedef) + alt metin daha okunur */
.ml-promo-cizgi{ background:linear-gradient(90deg,#E0B24A,rgba(224,178,74,0)) !important; width:40px !important; height:2.5px !important; }
.ml-promo-alt{ color:rgba(255,255,255,.92) !important; }

/* ============================================================================
   v126 — 12-ajan A'dan-Z denetim düzeltmeleri (premium + tutarlılık):
   terracotta artığı→kırmızı · profil çubukları beyaz kart+kontrast · "Tümünü Gör"
   →kırmızı · Min.TL nötr · tükenen ürün soluk · kart gölge cilası.
   ============================================================================ */
/* 1) TERRACOTTA ARTIĞI → KIRMIZI (ödeme seçili segment/adres/zaman + walnut tüm kullanımlar) */
:root, :root[data-tema="acik"], :root[data-tema="koyu"]{ --walnut:#F44C4E; --walnut-press:#E03B3D; }
.zaman-seg button.sec, .adres-cip.sec{ background:var(--terra) !important; color:#fff !important; }
.odeme-opt.secili .oik, .odeme-opt:has(input:checked) .oik{ background:var(--terra) !important; color:#fff !important; }
.ode-ozet .oz-adet{ background:var(--terra) !important; }

/* 2) "Tümünü Gör" YEŞİL → KIRMIZI (tema uyumu) */
.ml-tumu{ color:var(--terra) !important; } .ml-tumu svg{ color:var(--terra) !important; }

/* 3) "Min. TL" amber → NÖTR gri (sarı yalnız yıldıza kalsın) */
.ry-min{ color:#8A8A8A !important; }

/* 4) PROFİL: kartlar BEYAZ + ilerleme çubukları yüksek kontrast (kırmızı dolgu / gri track) */
.seviye-kart, .tamlik-kart{ background:#FFFFFF !important; border:1px solid #ECECEC !important; border-left:1px solid #ECECEC !important; box-shadow:0 4px 14px rgba(0,0,0,.05) !important; }
.sv-bar, .tk-bar{ background:#EDEDED !important; box-shadow:none !important; }
.sv-bar i, .tk-bar i{ background:linear-gradient(90deg,var(--terra),var(--terra-press)) !important; }
.sv-rozet{ color:var(--terra) !important; }

/* 5) Tükenen ürün GÖRSELİ + satırı soluk (alınamaz hissi) */
.m-kart:has(.m-tuk){ opacity:.62; }
.m-kart:has(.m-tuk) .m-foto, .m-kart:has(.m-tuk) img{ filter:grayscale(.4) brightness(.92); }
.m-tuk{ color:#fff !important; background:#9A9A9A !important; }

/* 6) Öne çıkan kart gölge/köşe cilası (premium) */
.ry-kart{ box-shadow:0 6px 20px rgba(0,0,0,.07) !important; border:1px solid #F0F0F0 !important; }
/* 7) Switch (toggle) AÇIK durumu kırmızı (tek vurgu tutarlılığı) */
.switch.acik{ background:var(--terra) !important; }

/* ============================================================================
   v127 — 4 premium iş (ajan denetimli): sticky sepet CTA · parlak kategori
   görselleri · düzenlenebilir profil alanları · kayan-thumb ödeme segmenti.
   ============================================================================ */
/* 1) SEPET "Devam Et" — alta YAPIŞIK (sticky), beyaz fade ile içerik altından geçer */
.sepet-cta-bar{ position:sticky; bottom:0; z-index:6; margin:14px -4px 0; padding:12px 4px calc(14px + env(safe-area-inset-bottom));
  background:linear-gradient(to top, #FFFFFF 62%, rgba(255,255,255,0)); }
.sepet-cta-bar .btn-buyuk{ margin-top:0; }

/* 2) KATEGORİ daireleri — tutarlı parlaklık (karanlık görseller düzelir) */
.chip-foto img{ filter:brightness(1.14) contrast(1.04) saturate(1.08) !important; }

/* 3) PROFİL "Bilgilerim" — düzenlenebilir alanlar (placeholder davet; "—" yok) */
.p-bilgiler{ padding:6px 14px 12px !important; }
.p-alan{ display:flex; align-items:center; gap:10px; padding:11px 0; border-bottom:1px solid #F0F0F0; }
.p-alan:last-child{ border-bottom:none; }
.p-alan--col{ flex-direction:column; align-items:stretch; gap:6px; }
.p-alan label{ font-size:13px; color:#6B6B6B; font-weight:600; flex:0 0 84px; }
.p-alan--col label{ flex:none; }
.p-inp{ flex:1; border:none; background:transparent; font-size:15px; color:var(--ink); text-align:right; font-weight:600; }
.p-alan--col .p-inp{ text-align:left; }
.p-area{ width:100%; min-height:58px; resize:none; background:#F7F7F7; border-radius:12px; padding:10px 12px; font-weight:500; }
.p-inp::placeholder{ color:#B5B5B5; font-weight:500; }
.p-inp:focus{ outline:none; }
.p-alan:focus-within label{ color:var(--terra); }

/* 4) ÖDEME segment kontrolü — gri track + kayan KIRMIZI thumb (modern segmented) */
.zaman-seg{ background:#F1F1F1 !important; border-radius:13px !important; padding:4px !important; gap:0 !important; }
.zaman-seg button{ flex:1; padding:10px 8px !important; border-radius:10px !important; border:none !important; background:transparent !important;
  color:#5B5B5B !important; font-weight:700 !important; transition:color .2s, background .25s, box-shadow .25s !important; }
.zaman-seg button.sec{ background:var(--terra) !important; color:#fff !important; box-shadow:0 3px 10px rgba(244,76,78,.34) !important; }
.zaman-seg button svg, .zaman-seg button .ico{ vertical-align:-.2em; }

/* v127b — ajan denetimi düzeltmeleri: mahalle "hata" görünümü giderildi, sepet CTA
   gerçekten alta sabit (fixed), kategori filtresi yumuşatıldı (iyi görseller bozulmasın). */
/* 1) "Mahalleni seç" → HATA değil, DAVET: kırmızı halka/kenar kaldırıldı, hafif tint */
.ode-mahalle.bos{ border-color:transparent !important; box-shadow:none !important;
  background:rgba(244,76,78,.08) !important; color:var(--terra) !important; }
.ode-mahalle.bos:active{ background:rgba(244,76,78,.14) !important; }
/* 2) Sepet "Devam Et" → her durumda EKRAN ALTINA sabit (kısa listede ortada asılı kalmaz) */
.sepet-cta-bar{ position:fixed !important; left:0; right:0; bottom:0; z-index:30; max-width:680px; margin:0 auto !important;
  padding:12px 16px calc(14px + env(safe-area-inset-bottom)) !important; background:#FFFFFF !important;
  box-shadow:0 -6px 20px rgba(0,0,0,.09) !important; }
/* 3) Kategori filtresi YUMUŞAK (1.14 fazlaydı → iyi görseller doygunlaşmasın) */
.chip-foto img{ filter:brightness(1.06) contrast(1.03) saturate(1.04) !important; }

/* ============================================================================
   v128 — Yemeksepeti kıyas kazanımları (backend'siz, mevcut veriyle):
   sepet ilerleme/min-kapı · para üstü çipleri · değerlendirme etiketleri ·
   ana sayfa hızlı filtre çubuğu.
   ============================================================================ */
/* SEPET nudge (ücretsiz teslimat ilerleme + min-sepet uyarı) */
.sepet-nudge{ display:flex; flex-direction:column; gap:7px; background:#FFF4F4; border:1px solid #FAD9D9; border-radius:14px;
  padding:11px 13px; margin:12px 0; font-size:13.5px; color:var(--ink); }
.sepet-nudge .sn-txt{ display:flex; align-items:center; gap:7px; } .sepet-nudge .sn-txt b{ color:var(--terra); }
.sepet-nudge .sn-ik{ color:var(--terra); display:inline-flex; } .sepet-nudge .sn-ik svg{ width:18px; height:18px; }
.sepet-nudge .sn-bar{ height:7px; border-radius:999px; background:#F1DADA; overflow:hidden; }
.sepet-nudge .sn-bar i{ display:block; height:100%; border-radius:999px; background:linear-gradient(90deg,var(--terra),var(--terra-press)); transition:width .5s var(--ease,ease); }
.sepet-nudge.ok{ background:#EEF7EE; border-color:#CFE8CF; } .sepet-nudge.ok .sn-txt b, .sepet-nudge.ok .sn-ik{ color:#2E8B57; }
.sepet-nudge.uyari{ background:#FFF7E8; border-color:#F2E2BF; margin:0 0 10px; } .sepet-nudge.uyari .sn-txt b, .sepet-nudge.uyari .sn-ik{ color:#C98A12; }
.btn-buyuk[disabled]{ opacity:.55; filter:grayscale(.2); }

/* PARA ÜSTÜ çipleri */
.paraustu-cip{ display:flex; flex-wrap:wrap; gap:8px; margin-top:9px; }
.pu-cip{ padding:8px 14px; border-radius:999px; background:#F2F2F2; color:#444; font-weight:700; font-size:13px; border:1px solid transparent; }
.pu-cip.pu-tam{ background:var(--terra-tint); color:var(--terra-ink, var(--terra)); }
.pu-cip.sec{ background:var(--terra); color:#fff; }

/* DEĞERLENDİRME hızlı etiketleri */
.puan-etiket{ display:flex; flex-wrap:wrap; gap:8px; margin:10px 0 4px; }
.pe-cip{ padding:8px 13px; border-radius:999px; background:#F4F4F4; color:#555; font-weight:600; font-size:13px; border:1px solid #ECECEC; transition:all .15s; }
.pe-cip.sec{ background:var(--terra); color:#fff; border-color:transparent; box-shadow:0 3px 9px rgba(244,76,78,.3); }

/* ANA SAYFA hızlı filtre çubuğu */
.hizli-filtre{ display:flex; gap:8px; overflow-x:auto; scrollbar-width:none; -ms-overflow-style:none; padding:10px 2px 2px; margin-top:2px; }
.hizli-filtre::-webkit-scrollbar{ display:none; }
.hf-cip{ flex:0 0 auto; display:inline-flex; align-items:center; gap:5px; padding:8px 13px; border-radius:999px;
  background:#fff; border:1px solid var(--hairline,#ECE3D3); color:#555; font-weight:600; font-size:13px; box-shadow:0 2px 6px rgba(0,0,0,.04); }
.hf-cip svg, .hf-cip .ico{ width:15px; height:15px; color:#999; }
.hf-cip.sec{ background:var(--terra); border-color:transparent; color:#fff; box-shadow:0 3px 10px rgba(244,76,78,.3); }
.hf-cip.sec svg, .hf-cip.sec .ico{ color:#fff; fill:#fff; }

/* v128b — ajan denetimi: para üstü mikro-metin + hızlı filtre nefes alanı/affordance */
.pu-hint{ margin-top:7px; font-size:12.5px; color:var(--terra); font-weight:600; }
.hizli-filtre{ margin-top:14px !important; padding-top:13px !important; border-top:1px solid #F2EFE9; position:relative; }
.hf-cip svg, .hf-cip .ico{ color:var(--terra) !important; }   /* ikonlar hafif kırmızı → tıklanabilir hissi */
.hf-cip.sec svg, .hf-cip.sec .ico{ color:#fff !important; fill:#fff !important; }

/* ============================================================================
   v129 — Yemeksepeti kıyas: kalan backend'siz kazanımlar
   ürün notu · restoran-detay bilgi çipleri + favori · sepeti boşalt · kalem notu.
   ============================================================================ */
/* Ürün modalı NOT alanı */
.ud-not-sar{ margin-top:16px; }
.ud-not-lbl{ display:flex; align-items:center; gap:6px; font-size:13.5px; font-weight:700; color:var(--ink); margin-bottom:7px; }
.ud-not-lbl .ops{ font-weight:500; color:var(--muted); }
.ud-not-lbl svg{ width:16px; height:16px; color:var(--terra); }
.ud-not{ width:100%; background:#F7F7F7; border:1px solid #ECECEC; border-radius:12px; padding:11px 13px; font-size:14px;
  color:var(--ink); resize:none; font-family:inherit; }
.ud-not:focus{ outline:none; border-color:var(--terra); background:#fff; }
/* Sepet satırı NOT */
.s-not{ display:flex; align-items:center; gap:5px; font-size:12.5px; color:#8A6D2F; background:#FFF7E8; border-radius:8px;
  padding:3px 8px; margin:3px 0; width:fit-content; }
.s-not svg{ width:13px; height:13px; }
/* Restoran detay bilgi çipleri */
.m-rest-cip{ display:flex; flex-wrap:wrap; gap:7px; margin-top:9px; }
.mrc-cip{ display:inline-flex; align-items:center; gap:5px; font-size:12.5px; font-weight:600; color:#555;
  background:#F4F4F4; border-radius:999px; padding:6px 11px; }
.mrc-cip svg, .mrc-cip .ico{ width:14px; height:14px; color:#888; }
.mrc-cip.mrc-puan{ background:var(--terra-tint); color:var(--terra-ink, var(--terra)); }
.mrc-cip.mrc-puan b{ color:var(--ink); } .mrc-cip.mrc-puan svg{ color:var(--gold); fill:var(--gold); }
/* Restoran favori kalbi (kapak üstü) */
.m-kalp-rest{ position:absolute; top:12px; right:12px; z-index:4; width:40px; height:40px; border-radius:50%;
  background:rgba(255,255,255,.94); display:grid; place-items:center; color:#C0492F; box-shadow:0 3px 10px rgba(0,0,0,.16); }
.m-kalp-rest svg{ width:21px; height:21px; } .m-kalp-rest.dolu svg{ fill:#C0492F !important; }
.m-kapak{ position:relative; }
/* Sepeti boşalt */
.sepet-rest-row{ display:flex; align-items:center; justify-content:space-between; gap:10px; }
.sepet-bosalt{ display:inline-flex; align-items:center; gap:5px; font-size:12.5px; font-weight:600; color:#9A9A9A; flex:0 0 auto; }
.sepet-bosalt svg{ width:15px; height:15px; }
.sepet-bosalt:active{ color:var(--kirmizi,#C0492F); }

/* v129b — ajan denetimi: favori kalbi kapak ALT-SAĞ (sticky başlık örtmesin) + not pili tam-genişlik/kontrast */
.m-kalp-rest{ top:auto !important; bottom:12px !important; right:12px !important; }
.s-not{ width:auto !important; white-space:normal; color:#7A5A12 !important; background:#FCEFCF !important; line-height:1.3; }
.mrc-cip svg{ flex:0 0 auto; }
/* v129c — sepet not pili TAM SATIR alta (ürün adını kırpmasın) */
.s-satir{ flex-wrap:wrap; }
.s-not{ flex-basis:100%; order:9; margin:6px 0 0 !important; }

/* ============================================================
   v130 — SADAKAT PUANI · DAVET · ÜRÜN-PUAN · OTO ÇOK-SATAN
   ============================================================ */
/* Puan kartı (profil) */
.puan-kart{ margin:8px 2px 16px; padding:15px 16px; border-radius:18px;
  background:linear-gradient(135deg, rgba(232,49,42,.16), rgba(232,49,42,.04));
  border:1px solid var(--cam-kenar); box-shadow:var(--sh1); color:var(--metin); }
.pk-ust{ display:flex; align-items:flex-start; justify-content:space-between; gap:10px; }
.pk-etik{ display:inline-flex; align-items:center; gap:6px; font-weight:800; font-size:13px; color:var(--acc-koyu); text-transform:uppercase; letter-spacing:.3px; }
.pk-etik svg, .pk-etik .ico{ width:15px; height:15px; }
.pk-bakiye{ margin-top:7px; line-height:1; }
.pk-bakiye b{ font-size:34px; font-weight:800; color:var(--metin); }
.pk-birim{ font-size:14px; color:var(--soluk); font-weight:600; }
.pk-tl{ margin-top:6px; font-size:13px; color:var(--soluk); line-height:1.4; }
.pk-gecmis-btn{ flex:0 0 auto; width:38px; height:38px; border-radius:50%; display:grid; place-items:center;
  background:var(--cam-yogun); border:1px solid var(--cam-kenar2); box-shadow:var(--sh1); color:var(--acc-koyu); }
.pk-gecmis-btn svg, .pk-gecmis-btn .ico{ width:18px; height:18px; }
.pk-anon{ margin-top:11px; padding:9px 11px; border-radius:12px; background:rgba(232,49,42,.07);
  font-size:12.5px; color:var(--soluk2); line-height:1.4; display:flex; align-items:center; gap:7px; }
.pk-anon svg, .pk-anon .ico{ width:15px; height:15px; flex:0 0 auto; }
.pk-gecmis{ margin-top:12px; border-top:1px solid var(--cam-kenar2); padding-top:10px; }
.pk-gecmis.gizli{ display:none; }
.pk-h{ display:flex; justify-content:space-between; align-items:center; padding:6px 0; font-size:13.5px; color:var(--metin); border-bottom:1px dashed rgba(0,0,0,.06); }
.pk-h:last-child{ border-bottom:0; }
.pk-h-sag{ font-weight:800; color:var(--acc-koyu); white-space:nowrap; }
.pk-h-sag small{ color:var(--soluk); font-weight:500; margin-left:5px; }
.pk-bos, .pk-yuk{ font-size:13px; color:var(--soluk); padding:8px 2px; text-align:center; }

/* Davet kartı (profil) */
.davet-kart{ margin:6px 2px 4px; padding:15px 16px; border-radius:18px; background:var(--cam-yogun);
  border:1px solid var(--cam-kenar2); box-shadow:var(--sh1); color:var(--metin); }
.dv-aciklama{ font-size:13.5px; line-height:1.5; color:var(--soluk); }
.dv-aciklama b{ color:var(--metin); }
.dv-link-row{ display:flex; gap:8px; margin-top:13px; }
.dv-link{ flex:1; min-width:0; padding:11px 12px; border-radius:12px; border:1px solid var(--cizgi2);
  background:#fff; font-size:12.5px; color:var(--soluk2); }
.dv-kopya{ flex:0 0 auto; padding:0 14px; border-radius:12px; background:var(--acc-100); color:var(--acc-koyu);
  font-weight:700; font-size:13px; display:inline-flex; align-items:center; gap:5px; }
.dv-kopya svg, .dv-kopya .ico{ width:15px; height:15px; }
.dv-paylas{ width:100%; margin-top:10px; padding:12px; border-radius:13px; font-weight:800; font-size:15px;
  background:linear-gradient(180deg,var(--acc),var(--acc-koyu)); color:#fff; box-shadow:var(--sh-cta);
  display:inline-flex; align-items:center; justify-content:center; gap:8px; }
.dv-paylas svg, .dv-paylas .ico{ width:18px; height:18px; }
.dv-kodgir{ display:flex; gap:8px; margin-top:11px; }
.dv-kod-inp{ flex:1; min-width:0; padding:11px 12px; border-radius:12px; border:1px solid var(--cizgi2); background:#fff; font-size:13.5px; color:var(--metin); }
.dv-kod-btn{ flex:0 0 auto; padding:0 16px; border-radius:12px; background:var(--cam-yogun); border:1px solid var(--cam-kenar2); font-weight:700; font-size:13.5px; color:var(--metin); }
.dv-eden{ margin-top:11px; font-size:13px; color:var(--acc-koyu); font-weight:600; display:flex; align-items:center; gap:7px; }
.dv-eden svg, .dv-eden .ico{ width:16px; height:16px; flex:0 0 auto; }

/* Ürün-bazlı puanlama (takip ekranı) */
.urun-puan-blok{ margin:12px 0 4px; padding-top:10px; border-top:1px solid var(--cam-kenar2); }
.up-bas{ font-size:13.5px; font-weight:700; color:var(--metin); margin-bottom:6px; }
.up-bas .ops{ font-weight:500; color:var(--soluk); text-transform:none; }
.up-satir{ display:flex; align-items:center; justify-content:space-between; gap:10px; padding:5px 0; }
.up-ad{ font-size:13.5px; color:var(--metin); min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.up-yild{ flex:0 0 auto; }
.up-yild .yld{ width:30px; height:30px; }

/* Menüde ürün-puan pili */
.m-urunpuan{ display:inline-flex; align-items:center; gap:3px; margin-left:7px; font-size:12px; font-weight:700;
  color:#9A6A00; background:rgba(245,179,0,.16); border-radius:8px; padding:1px 6px; vertical-align:middle; }
.m-urunpuan svg, .m-urunpuan .ico{ width:12px; height:12px; fill:#F5B300; }
.m-urunpuan small{ font-weight:500; color:var(--soluk); margin-left:1px; }

/* ============================================================
   v132 — KÖŞE GİRİŞ (anasayfa=sipariş; sağ-üst "İşletme Girişi")
   ============================================================ */
.kose-isletme{ display:inline-flex; align-items:center; gap:6px; height:40px; padding:0 13px;
  border-radius:13px; font-size:13px; font-weight:700; text-decoration:none; white-space:nowrap;
  color:#fff; background:rgba(255,255,255,.16); border:1px solid rgba(255,255,255,.34);
  -webkit-backdrop-filter:blur(6px); backdrop-filter:blur(6px); transition:background .15s, transform .1s; }
.kose-isletme:hover{ background:rgba(255,255,255,.26); }
.kose-isletme:active{ transform:scale(.96); }
.kose-isletme svg, .kose-isletme .ico{ width:17px; height:17px; flex:0 0 auto; }
.kose-isletme .et{ line-height:1; }
/* Dar ekran: etiketi gizle, ikon kalsın (44px touch hedefi korunur) */
@media (max-width:374px){ .kose-isletme .et{ display:none; } .kose-isletme{ width:40px; padding:0; justify-content:center; } }
/* ml-marka-sag: 3 öğe sığsın (pill + zil + avatar) */
.ml-marka-sag{ gap:8px; }
.ml-marka-sol{ min-width:0; }

/* v132 — müşteri köşesi: anonimken avatar "Giriş" etiketli pill (R1: müşteri girişi köşede görünür) */
.ml-avatar{ display:inline-flex; align-items:center; justify-content:center; }
.ml-avatar .et{ display:none; }
.ml-avatar.ml-giris{ width:auto; padding:0 13px; gap:6px; border-radius:13px; }
.ml-avatar.ml-giris .et{ display:inline; font-size:13px; font-weight:700; line-height:1; }
@media (max-width:374px){ .ml-avatar.ml-giris{ width:40px; padding:0; } .ml-avatar.ml-giris .et{ display:none; } }
