body{ --max: 1480px; }
/* Musteri sayfasi: Yemeksepeti benzeri modern liste gorunumu */

.musteri-ustbar {
  display: flex;
  gap: 12px;
  align-items: center;
  justify-content: space-between;
  padding: 12px 14px;
  border-radius: 18px;
  background: var(--panel);
  border: 1px solid var(--cizgi);
  box-shadow: var(--golge2);
}

.musteri-ustbar .adres {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 260px;
  max-width: 460px;
}

.musteri-ustbar .adres .adres-yazi {
  opacity: .92;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.musteri-ustbar .arama {
  flex: 1;
  min-width: 260px;
}

.musteri-ustbar .arama input {
  width: 100%;
}

.musteri-ustbar .ust-aksiyon {
  display: flex;
  align-items: center;
  gap: 10px;
}

.musteri-icerik {
  margin-top: 14px;
  display: grid;
  grid-template-columns: 280px 1fr 340px;
  gap: 14px;
  align-items: start;
}

.musteri-aside {
  position: sticky;
  top: 12px;
}

.filtre-kart .alt-baslik { opacity: .8; font-size: 12px; margin-top: 14px; }
.filtre-kart .radio { display: flex; align-items: center; gap: 8px; margin: 8px 0; }
.filtre-kart .chk { display: flex; align-items: center; gap: 8px; margin: 8px 0; }
.filtre-kart .mini-arama { margin-top: 10px; }
.filtre-kart .mini-arama input { width: 100%; }
.filtre-kart .liste { margin-top: 10px; max-height: 420px; overflow: auto; padding-right: 6px; }

.kategori-serit {
  display: flex;
  gap: 10px;
  overflow-x: auto;
  padding-bottom: 6px;
}

.kategori {
  flex: 0 0 auto;
  width: 96px;
  text-align: center;
  padding: 10px 10px;
  border-radius: 16px;
  background: var(--panel2);
  border: 1px solid var(--cizgi);
  cursor: pointer;
  transition: transform .15s ease, background .15s ease, border-color .15s ease;
}

.kategori:hover { transform: translateY(-2px); background: rgba(255,255,255,.06); }
.kategori.secili { border-color: rgba(255,106,0,.6); background: rgba(255,106,0,.10); }
.kategori .ikon { font-size: 26px; }
.kategori .ad { margin-top: 6px; font-size: 12px; opacity: .92; }

.bolum-baslik {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 10px;
  margin: 10px 0;
}

.bolum-baslik h3 { margin: 0; }
.bolum-baslik .kucuk { opacity: .7; font-size: 12px; }

.restoran-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.restoran-kart {
  cursor: pointer;
  overflow: hidden;
  padding: 0;
}

.restoran-kart .kapak {
  height: 120px;
  border-radius: 16px;
  margin: 12px;
  background: linear-gradient(135deg, rgba(255,255,255,.10), rgba(255,255,255,.02));
  border: 1px solid rgba(255,255,255,.08);
  box-shadow: 0 10px 30px rgba(0,0,0,.22);
  position: relative;
}

.restoran-kart .kapak::after {
  content: '';
  position: absolute;
  inset: 0;
  background: radial-gradient(400px 140px at 20% 20%, rgba(255,255,255,.20), transparent 60%);
  opacity: .9;
}

.restoran-kart .icerik { padding: 0 12px 12px 12px; }
.restoran-kart .satir1 { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.restoran-kart .ad { font-weight: 800; }
.restoran-kart .puan { font-size: 12px; opacity: .9; display: flex; gap: 6px; align-items: center; }
.restoran-kart .alt { margin-top: 8px; font-size: 12px; opacity: .75; display: flex; gap: 10px; flex-wrap: wrap; }
.restoran-kart .rozetler { margin-top: 10px; display: flex; gap: 6px; flex-wrap: wrap; }
.restoran-kart .rozet { font-size: 11px; padding: 5px 8px; border-radius: 999px; border: 1px solid var(--cizgi); background: var(--panel2); }

.menu-baslik {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-top: 14px;
}

.menu-grid {
  margin-top: 10px;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.urun-kart {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 10px;
  align-items: start;
}

.urun-kart .u-ad { font-weight: 800; }
.urun-kart .u-aciklama { margin-top: 4px; opacity: .72; font-size: 12px; }
.urun-kart .u-alt { margin-top: 10px; display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.urun-kart .u-fiyat { font-weight: 800; }

.sepet-kart {
  position: sticky;
  top: 12px;
}

.sepet-urun {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 8px;
  padding: 10px 0;
  border-top: 1px dashed rgba(255,255,255,.10);
}

.sepet-urun:first-child { border-top: 0; }
.sepet-urun .s-ad { font-weight: 700; }
.sepet-urun .s-mini { opacity: .75; font-size: 12px; margin-top: 4px; }
.sepet-urun .s-adet { display: flex; align-items: center; gap: 8px; justify-content: end; }

.demo-etiket {
  display: inline-flex;
  gap: 8px;
  align-items: center;
  padding: 8px 10px;
  border-radius: 999px;
  border: 1px solid rgba(255,106,0,.35);
  background: rgba(255,106,0,.10);
  font-size: 12px;
  opacity: .95;
}

@media (max-width: 1100px) {
  .musteri-icerik { grid-template-columns: 260px 1fr; }
  .sepet-kart { position: static; }
}

@media (max-width: 860px) {
  .musteri-ustbar { flex-wrap: wrap; }
  .musteri-ustbar .adres { min-width: 0; flex: 1; }
  .musteri-ustbar .arama { order: 3; width: 100%; }
  .musteri-icerik { grid-template-columns: 1fr; }
  .musteri-aside { position: static; }
  .restoran-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .menu-grid { grid-template-columns: 1fr; }
}

@media (max-width: 520px) {
  .restoran-grid { grid-template-columns: 1fr; }
}


/* adres input */
.adres{ display:flex; align-items:center; gap:10px; }
.adres-input{
  width: 340px;
  max-width: 48vw;
  padding: 10px 12px;
  border-radius: 14px;
}
@media (max-width: 920px){
  .adres-input{ width: 100%; max-width: 100%; }
}

/* Kenar/taşma düzeltmeleri */
.page{padding:0}
.musteri-icerik{width:100%}
.restoran-grid, .menu-grid{width:100%}

/* Üst bar adres butonu */
#adressInput{}
#konumYenile{min-width:44px}

/* Daha temiz açık tema yüzeyleri */
body.tema-acik .musteri-ustbar{background: rgba(255,255,255,.85)}
body.tema-acik .filtre-kart{background: rgba(255,255,255,.86)}
body.tema-acik .sepet-kart{background: rgba(255,255,255,.86)}
