/* =====================================================================
   ADİSYON - Ortak tasarım
   Sıcak, sempatik, büyük ve dokunmatik dostu arayüz
   ===================================================================== */

:root {
    --ana: #ff6b35;          /* turuncu - ana renk */
    --ana-koyu: #e5531d;
    --ana-acik: #fff1ea;
    --mavi: #3d7bfd;
    --mavi-acik: #eaf1ff;
    --yesil: #1fb978;
    --yesil-koyu: #149660;
    --yesil-acik: #e6f8f0;
    --kirmizi: #f0465a;
    --kirmizi-acik: #feecee;
    --sari: #ffb627;
    --sari-acik: #fff6e0;
    --mor: #8b5cf6;
    --mor-acik: #f2edff;
    --zemin: #f6f3ef;        /* sıcak kırık beyaz */
    --kart: #ffffff;
    --yazi: #2b2a33;
    --yazi-soluk: #7a7785;
    --cizgi: #ece7e1;
    --golge: 0 4px 18px rgba(60, 40, 20, .08);
    --golge-buyuk: 0 10px 30px rgba(60, 40, 20, .14);
    --yuvarlak: 20px;
    --bs-body-font-family: 'Nunito', system-ui, -apple-system, 'Segoe UI', sans-serif;
}

html { font-size: 16px; }
@media (min-width: 1200px) { html { font-size: 17px; } }

body {
    font-family: var(--bs-body-font-family);
    background: var(--zemin);
    color: var(--yazi);
    -webkit-tap-highlight-color: transparent;
    min-height: 100vh;
}

h1, h2, h3, h4, h5, .fw-black { font-weight: 800; letter-spacing: -.01em; }
a { color: var(--ana-koyu); }
.text-soluk { color: var(--yazi-soluk) !important; }

/* ---------- Üst bar ---------- */
.ust-bar {
    position: sticky; top: 0; z-index: 1030;
    background: linear-gradient(120deg, var(--ana) 0%, #ff8f5a 100%);
    color: #fff; padding: .55rem 0;
    box-shadow: 0 4px 16px rgba(255, 107, 53, .3);
}
.ust-bar-sistem { background: linear-gradient(120deg, #3b3355 0%, #5b4b8a 100%); box-shadow: 0 4px 16px rgba(59, 51, 85, .3); }
.marka { display: flex; align-items: center; gap: .55rem; color: #fff; text-decoration: none; font-weight: 900; font-size: 1.15rem; max-width: 40%; }
.marka span:last-child { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.marka-ikon { width: 2.3rem; height: 2.3rem; border-radius: 12px; background: rgba(255,255,255,.22); display: grid; place-items: center; font-size: 1.2rem; flex-shrink: 0; }
.sayfa-basligi { font-weight: 800; font-size: 1.1rem; opacity: .95; }
.btn-ust { background: rgba(255,255,255,.18); color: #fff; border: none; border-radius: 14px; font-weight: 700; padding: .5rem .85rem; }
.btn-ust:hover, .btn-ust:focus, .btn-ust.show { background: rgba(255,255,255,.3); color: #fff; }

/* ---------- Kartlar ---------- */
.kart { background: var(--kart); border-radius: var(--yuvarlak); box-shadow: var(--golge); padding: 1.25rem; border: none; }
.kart-baslik { font-weight: 800; font-size: 1.15rem; margin-bottom: 1rem; display: flex; align-items: center; gap: .5rem; }
.kart-baslik i { color: var(--ana); }

/* ---------- Butonlar ---------- */
.btn { border-radius: 14px; font-weight: 700; }
.btn-lg { padding: .8rem 1.4rem; font-size: 1.1rem; border-radius: 16px; }
.btn-ana { background: var(--ana); border-color: var(--ana); color: #fff; }
.btn-ana:hover, .btn-ana:focus { background: var(--ana-koyu); border-color: var(--ana-koyu); color: #fff; }
.btn-yesil { background: var(--yesil); border-color: var(--yesil); color: #fff; }
.btn-yesil:hover, .btn-yesil:focus { background: var(--yesil-koyu); border-color: var(--yesil-koyu); color: #fff; }
.btn-mavi { background: var(--mavi); border-color: var(--mavi); color: #fff; }
.btn-mavi:hover { background: #2a63de; color: #fff; }
.btn-hafif { background: #fff; color: var(--yazi); border: 2px solid var(--cizgi); }
.btn-hafif:hover { border-color: var(--ana); color: var(--ana-koyu); background: #fff; }

/* Kocaman dokunmatik butonlar (kasa, sipariş) */
.dev-buton {
    display: flex; flex-direction: column; align-items: center; justify-content: center; gap: .35rem;
    min-height: 110px; width: 100%; border: none; border-radius: 22px; color: #fff;
    font-weight: 800; font-size: 1.2rem; text-decoration: none; box-shadow: var(--golge);
    transition: transform .12s ease, box-shadow .12s ease;
}
.dev-buton i { font-size: 2.2rem; line-height: 1; }
.dev-buton:hover { transform: translateY(-2px); box-shadow: var(--golge-buyuk); color: #fff; }
.dev-buton:active { transform: scale(.97); }
.dev-buton.yesil { background: linear-gradient(135deg, #22c985, #13a066); }
.dev-buton.mavi { background: linear-gradient(135deg, #4f8bff, #2d64e0); }
.dev-buton.turuncu { background: linear-gradient(135deg, #ff8148, #f05a22); }
.dev-buton.mor { background: linear-gradient(135deg, #9c72ff, #7448e6); }
.dev-buton.gri { background: #fff; color: var(--yazi); border: 2px solid var(--cizgi); }
.dev-buton.gri:hover { color: var(--yazi); }
.dev-buton.kirmizi { background: linear-gradient(135deg, #ff6274, #e23549); }

/* ---------- Ana sayfa menü kutuları ---------- */
.menu-kutusu {
    display: flex; flex-direction: column; justify-content: space-between;
    padding: 1.4rem; min-height: 165px; border-radius: 26px; text-decoration: none;
    color: var(--yazi); background: #fff; box-shadow: var(--golge);
    position: relative; overflow: hidden; transition: transform .15s ease, box-shadow .15s ease;
}
.menu-kutusu:hover { transform: translateY(-4px); box-shadow: var(--golge-buyuk); color: var(--yazi); }
.menu-kutusu:active { transform: scale(.98); }
.menu-kutusu .ikon { width: 3.6rem; height: 3.6rem; border-radius: 18px; display: grid; place-items: center; font-size: 1.8rem; }
.menu-kutusu .baslik { font-size: 1.3rem; font-weight: 900; margin-top: .9rem; }
.menu-kutusu .aciklama { font-size: .9rem; color: var(--yazi-soluk); font-weight: 600; }
.menu-kutusu::after { content: ""; position: absolute; right: -30px; bottom: -30px; width: 110px; height: 110px; border-radius: 50%; opacity: .12; background: currentColor; }
.renk-turuncu .ikon { background: var(--ana-acik); color: var(--ana); } .renk-turuncu::after { color: var(--ana); }
.renk-yesil .ikon { background: var(--yesil-acik); color: var(--yesil); } .renk-yesil::after { color: var(--yesil); }
.renk-mavi .ikon { background: var(--mavi-acik); color: var(--mavi); } .renk-mavi::after { color: var(--mavi); }
.renk-kirmizi .ikon { background: var(--kirmizi-acik); color: var(--kirmizi); } .renk-kirmizi::after { color: var(--kirmizi); }
.renk-sari .ikon { background: var(--sari-acik); color: #d18a00; } .renk-sari::after { color: var(--sari); }
.renk-mor .ikon { background: var(--mor-acik); color: var(--mor); } .renk-mor::after { color: var(--mor); }

.karsilama { font-size: 1.8rem; font-weight: 900; }
.karsilama small { display: block; font-size: 1rem; color: var(--yazi-soluk); font-weight: 600; }

/* Özet sayaçlar */
.sayac { border-radius: 20px; padding: 1rem 1.2rem; background: #fff; box-shadow: var(--golge); height: 100%; }
.sayac .etiket { color: var(--yazi-soluk); font-weight: 700; font-size: .9rem; }
.sayac .deger { font-size: 1.7rem; font-weight: 900; }

/* ---------- Masalar ---------- */
.bolge-sekmeleri { display: flex; gap: .5rem; overflow-x: auto; padding-bottom: .4rem; scrollbar-width: none; }
.bolge-sekmeleri::-webkit-scrollbar { display: none; }
.bolge-sekme { border: 2px solid var(--cizgi); background: #fff; border-radius: 40px; padding: .55rem 1.2rem; font-weight: 800; white-space: nowrap; color: var(--yazi); }
.bolge-sekme.aktif { background: var(--yazi); color: #fff; border-color: var(--yazi); }

.masa-izgara { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 1rem; }
@media (max-width: 576px) { .masa-izgara { grid-template-columns: repeat(2, 1fr); gap: .75rem; } }
.masa {
    position: relative; display: flex; flex-direction: column; justify-content: space-between;
    min-height: 140px; padding: 1rem; border-radius: 24px; text-decoration: none; color: #fff;
    box-shadow: var(--golge); transition: transform .12s ease;
}
.masa:hover { transform: translateY(-3px); color: #fff; }
.masa:active { transform: scale(.97); }
.masa-bos { background: linear-gradient(145deg, #2fd08f, #17a96c); }
.masa-dolu { background: linear-gradient(145deg, #ff7b6b, #ec4258); }
.masa-adi { font-size: 1.35rem; font-weight: 900; line-height: 1.1; }
.masa-durum { font-size: .85rem; font-weight: 700; opacity: .92; }
.masa-tutar { font-size: 1.35rem; font-weight: 900; }
.masa-rozet { position: absolute; top: -8px; right: -6px; background: var(--sari); color: #3d2a00; border-radius: 30px; padding: .2rem .6rem; font-size: .78rem; font-weight: 900; box-shadow: 0 3px 10px rgba(0,0,0,.15); animation: zipla 1.2s infinite; }
.masa-rozet.mutfakta { background: #fff; color: var(--ana-koyu); animation: none; }
@keyframes zipla { 0%,100% { transform: translateY(0); } 50% { transform: translateY(-4px); } }

.renk-aciklama { display: flex; gap: 1rem; flex-wrap: wrap; font-weight: 700; font-size: .9rem; color: var(--yazi-soluk); }
.renk-aciklama span::before { content: ""; display: inline-block; width: 14px; height: 14px; border-radius: 5px; margin-right: 6px; vertical-align: -2px; }
.renk-aciklama .bos::before { background: var(--yesil); }
.renk-aciklama .dolu::before { background: var(--kirmizi); }
.renk-aciklama .hazir::before { background: var(--sari); }

/* ---------- Adisyon / hesap ---------- */
.adisyon-kalem { display: flex; align-items: flex-start; gap: .75rem; padding: .7rem 0; border-bottom: 1px dashed var(--cizgi); }
.adisyon-kalem:last-child { border-bottom: none; }
.adisyon-adet { min-width: 2.4rem; height: 2.4rem; border-radius: 12px; background: var(--ana-acik); color: var(--ana-koyu); font-weight: 900; display: grid; place-items: center; }
.adisyon-ad { flex-grow: 1; font-weight: 700; }
.adisyon-tutar { font-weight: 800; white-space: nowrap; }
.siparis-blok { border: 2px solid var(--cizgi); border-radius: 18px; padding: .8rem 1rem; margin-bottom: .9rem; }
.siparis-blok.iptal { opacity: .55; }
.siparis-blok.iptal .adisyon-ad { text-decoration: line-through; }

.toplam-kutu { background: var(--yazi); color: #fff; border-radius: 20px; padding: 1.1rem 1.3rem; }
.toplam-kutu .satir { display: flex; justify-content: space-between; font-weight: 700; opacity: .85; }
.toplam-kutu .buyuk { font-size: 2rem; font-weight: 900; opacity: 1; }

.durum-rozet { display: inline-block; border-radius: 30px; padding: .2rem .7rem; font-size: .8rem; font-weight: 800; }
.durum-yeni { background: var(--mavi-acik); color: var(--mavi); }
.durum-hazirlaniyor { background: var(--sari-acik); color: #b07400; }
.durum-hazir { background: var(--yesil-acik); color: var(--yesil-koyu); }
.durum-teslim { background: #eeeeee; color: #666; }
.durum-iptal { background: var(--kirmizi-acik); color: var(--kirmizi); }

/* ---------- Sipariş girme (ürün seçimi) ---------- */
.kategori-seridi { display: flex; gap: .5rem; overflow-x: auto; padding: .2rem 0 .6rem; position: sticky; top: 64px; z-index: 5; background: var(--zemin); scrollbar-width: none; }
.kategori-seridi::-webkit-scrollbar { display: none; }
.kategori-buton { border: none; border-radius: 40px; padding: .7rem 1.3rem; font-weight: 800; background: #fff; box-shadow: var(--golge); white-space: nowrap; color: var(--yazi); }
.kategori-buton.aktif { background: var(--ana); color: #fff; }
.urun-izgara { display: grid; grid-template-columns: repeat(auto-fill, minmax(155px, 1fr)); gap: .85rem; }
@media (max-width: 576px) { .urun-izgara { grid-template-columns: repeat(2, 1fr); gap: .6rem; } }
.urun-buton {
    position: relative; border: none; background: #fff; border-radius: 20px; padding: 1rem .9rem; min-height: 110px;
    box-shadow: var(--golge); text-align: left; display: flex; flex-direction: column; justify-content: space-between;
    transition: transform .1s ease; color: var(--yazi);
}
.urun-buton:active { transform: scale(.95); }
.urun-buton .ad { font-weight: 800; font-size: 1.05rem; line-height: 1.2; }
.urun-buton .fiyat { font-weight: 900; color: var(--ana-koyu); font-size: 1.1rem; }
.urun-buton .sepette { position: absolute; top: -8px; right: -8px; background: var(--ana); color: #fff; min-width: 2rem; height: 2rem; border-radius: 1rem; display: grid; place-items: center; font-weight: 900; box-shadow: 0 3px 10px rgba(255,107,53,.4); }
.urun-buton .stok-az { font-size: .75rem; font-weight: 800; color: var(--kirmizi); }

.sepet { position: sticky; top: 80px; }
.sepet-kalem { display: flex; align-items: center; gap: .5rem; padding: .6rem 0; border-bottom: 1px dashed var(--cizgi); }
.sepet-kalem .ad { flex-grow: 1; font-weight: 700; line-height: 1.2; }
.adet-buton { width: 2.4rem; height: 2.4rem; border-radius: 12px; border: none; font-size: 1.2rem; font-weight: 900; display: grid; place-items: center; }
.adet-buton.eksi { background: var(--kirmizi-acik); color: var(--kirmizi); }
.adet-buton.arti { background: var(--yesil-acik); color: var(--yesil-koyu); }
.sepet-bos { text-align: center; color: var(--yazi-soluk); padding: 2rem 0; font-weight: 700; }
.sepet-bos i { font-size: 2.5rem; display: block; margin-bottom: .5rem; opacity: .5; }

/* Mobilde altta sabit sepet çubuğu */
.mobil-sepet-cubugu { position: fixed; left: 0; right: 0; bottom: 0; padding: .75rem 1rem calc(.75rem + env(safe-area-inset-bottom)); background: #fff; box-shadow: 0 -6px 20px rgba(0,0,0,.08); z-index: 1040; }

/* Seçenek kutuları (Sade / Orta / Şekerli) */
.secenek-kutu { cursor: pointer; }
.secenek-kutu input { display: none; }
.secenek-kutu span { display: inline-block; border: 2px solid var(--cizgi); border-radius: 16px; padding: .75rem 1.1rem; font-weight: 800; font-size: 1.05rem; background: #fff; transition: all .1s; }
.secenek-kutu input:checked + span { background: var(--ana); border-color: var(--ana); color: #fff; box-shadow: 0 4px 12px rgba(255,107,53,.35); }
.secenek-yazi { font-size: .85rem; font-weight: 700; color: var(--ana-koyu); }
.urun-buton .secenekli { font-size: .75rem; font-weight: 800; color: var(--mor); }

/* ---------- Ödeme ekranı ---------- */
.tus-takimi { display: grid; grid-template-columns: repeat(3, 1fr); gap: .6rem; }
.tus { border: none; background: #fff; border-radius: 16px; font-size: 1.6rem; font-weight: 800; padding: .8rem 0; box-shadow: var(--golge); color: var(--yazi); }
.tus:active { transform: scale(.95); background: var(--ana-acik); }
.tutar-ekrani { background: #fff; border: 3px solid var(--ana); border-radius: 18px; font-size: 2.3rem; font-weight: 900; text-align: right; padding: .5rem 1rem; width: 100%; color: var(--yazi); }
.hizli-tutar { border: 2px solid var(--cizgi); background: #fff; border-radius: 14px; font-weight: 800; padding: .55rem .9rem; color: var(--yazi); }
.hizli-tutar:hover { border-color: var(--ana); }

/* ---------- Mutfak ---------- */
body.mutfak-modu { background: #1f1d2b; color: #fff; }
.mutfak-izgara { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 1rem; align-items: start; }
.mutfak-kart { background: #fff; color: var(--yazi); border-radius: 22px; overflow: hidden; box-shadow: 0 8px 26px rgba(0,0,0,.3); }
.mutfak-kart-ust { padding: .9rem 1.1rem; color: #fff; display: flex; justify-content: space-between; align-items: center; }
.mutfak-kart.yeni .mutfak-kart-ust { background: linear-gradient(135deg, #4f8bff, #2d64e0); }
.mutfak-kart.hazirlaniyor .mutfak-kart-ust { background: linear-gradient(135deg, #ffc23d, #f0a000); color: #3d2a00; }
.mutfak-kart.hazir .mutfak-kart-ust { background: linear-gradient(135deg, #22c985, #13a066); }
.mutfak-kart.yeni { animation: yeniParla 1.5s ease-in-out 3; }
@keyframes yeniParla { 0%,100% { box-shadow: 0 8px 26px rgba(0,0,0,.3); } 50% { box-shadow: 0 0 0 6px rgba(79,139,255,.6); } }
.mutfak-masa { font-size: 1.5rem; font-weight: 900; line-height: 1; }
.mutfak-sure { font-weight: 800; background: rgba(0,0,0,.15); border-radius: 30px; padding: .2rem .7rem; }
.mutfak-kalem { display: flex; gap: .7rem; padding: .55rem 1.1rem; border-bottom: 1px dashed var(--cizgi); font-size: 1.15rem; font-weight: 700; }
.mutfak-kalem .adet { font-weight: 900; color: var(--ana-koyu); min-width: 2.2rem; }
.mutfak-not { background: var(--sari-acik); color: #7a5300; font-weight: 700; padding: .6rem 1.1rem; }
.mutfak-sayac { display: inline-flex; align-items: center; gap: .4rem; background: rgba(255,255,255,.1); border-radius: 30px; padding: .4rem .9rem; font-weight: 800; }

/* ---------- Formlar ---------- */
.form-control, .form-select { border-radius: 14px; border: 2px solid var(--cizgi); padding: .7rem 1rem; font-weight: 600; }
.form-control:focus, .form-select:focus { border-color: var(--ana); box-shadow: 0 0 0 .25rem rgba(255,107,53,.15); }
.form-control-lg { font-size: 1.15rem; padding: .85rem 1.1rem; }
.form-label { font-weight: 800; margin-bottom: .35rem; }
.form-check-input:checked { background-color: var(--ana); border-color: var(--ana); }
.form-switch .form-check-input { width: 3rem; height: 1.6rem; }
.form-switch .form-check-label { padding-top: .2rem; padding-left: .4rem; font-weight: 700; }
.ipucu { font-size: .88rem; color: var(--yazi-soluk); font-weight: 600; }

/* Yetki seçme kutuları */
.yetki-secim { display: block; cursor: pointer; }
.yetki-secim input { display: none; }
.yetki-secim .icerik { display: flex; gap: .8rem; align-items: center; border: 2px solid var(--cizgi); border-radius: 18px; padding: .85rem 1rem; background: #fff; transition: all .12s; height: 100%; }
.yetki-secim .icerik i.bi:first-child { font-size: 1.5rem; color: var(--yazi-soluk); }
.yetki-secim input:checked + .icerik { border-color: var(--ana); background: var(--ana-acik); }
.yetki-secim input:checked + .icerik i.bi:first-child { color: var(--ana); }
.yetki-secim .tik { margin-left: auto; font-size: 1.4rem; color: var(--cizgi); }
.yetki-secim input:checked + .icerik .tik { color: var(--ana); }

/* ---------- Tablolar ---------- */
.tablo { width: 100%; border-collapse: separate; border-spacing: 0; }
.tablo th { color: var(--yazi-soluk); font-size: .82rem; text-transform: uppercase; letter-spacing: .04em; font-weight: 800; padding: .6rem .75rem; border-bottom: 2px solid var(--cizgi); white-space: nowrap; }
.tablo td { padding: .75rem; border-bottom: 1px solid var(--cizgi); font-weight: 600; vertical-align: middle; }
.tablo tr:last-child td { border-bottom: none; }
.tablo tr.kritik td { background: var(--kirmizi-acik); }

.rozet { display: inline-block; border-radius: 30px; padding: .2rem .7rem; font-size: .8rem; font-weight: 800; }
.rozet-yesil { background: var(--yesil-acik); color: var(--yesil-koyu); }
.rozet-kirmizi { background: var(--kirmizi-acik); color: var(--kirmizi); }
.rozet-sari { background: var(--sari-acik); color: #a36b00; }
.rozet-gri { background: #efefef; color: #666; }
.rozet-mavi { background: var(--mavi-acik); color: var(--mavi); }
.rozet-turuncu { background: var(--ana-acik); color: var(--ana-koyu); }
.rozet-mor { background: var(--mor-acik); color: var(--mor); }

/* Ürün fotoğrafları */
.urun-buton .urun-foto { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; border-radius: 14px; margin-bottom: .5rem; background: var(--zemin); }
.menu-foto { width: 84px; height: 84px; border-radius: 16px; object-fit: cover; flex-shrink: 0; background: var(--zemin); }

/* Garson çağırma uyarısı (personel ekranları) */
.cagri-alani { position: fixed; right: 16px; bottom: 16px; z-index: 2100; display: flex; flex-direction: column; gap: .6rem; width: min(92vw, 360px); }
.cagri { display: flex; align-items: center; gap: .8rem; padding: 1rem 1.1rem; border-radius: 20px; color: #fff; font-weight: 800; box-shadow: var(--golge-buyuk); animation: cagriGel .3s ease, cagriNabiz 1.4s ease-in-out infinite; }
.cagri.garson { background: linear-gradient(135deg, #ff8148, #f05a22); }
.cagri.hesap { background: linear-gradient(135deg, #4f8bff, #2d64e0); }
.cagri i.bi:first-child { font-size: 1.9rem; }
.cagri .metin { flex-grow: 1; line-height: 1.2; }
.cagri .metin b { font-size: 1.25rem; display: block; }
@keyframes cagriGel { from { opacity: 0; transform: translateY(20px); } }
@keyframes cagriNabiz { 0%,100% { box-shadow: var(--golge-buyuk); } 50% { box-shadow: 0 0 0 6px rgba(255,255,255,.5), var(--golge-buyuk); } }

/* ---------- Bildirim (toast) ---------- */
.bildirim-alani { position: fixed; top: 80px; left: 50%; transform: translateX(-50%); z-index: 2000; display: flex; flex-direction: column; gap: .5rem; width: min(92vw, 520px); pointer-events: none; }
.bildirim { pointer-events: auto; display: flex; gap: .7rem; align-items: center; padding: 1rem 1.2rem; border-radius: 18px; font-weight: 800; font-size: 1.05rem; color: #fff; box-shadow: var(--golge-buyuk); animation: bildirimGel .3s ease; }
.bildirim i { font-size: 1.4rem; }
.bildirim-basari { background: var(--yesil); }
.bildirim-hata { background: var(--kirmizi); }
.bildirim.gidiyor { opacity: 0; transform: translateY(-10px); transition: all .3s ease; }
@keyframes bildirimGel { from { opacity: 0; transform: translateY(-14px); } }

/* ---------- Giriş / kayıt ---------- */
.giris-zemini { min-height: 100vh; display: grid; place-items: center; padding: 1.5rem; background:
    radial-gradient(circle at 15% 20%, #ffd9c7 0, transparent 40%),
    radial-gradient(circle at 85% 80%, #ffe7b8 0, transparent 40%), var(--zemin); }
.giris-kart { width: min(100%, 440px); background: #fff; border-radius: 30px; box-shadow: var(--golge-buyuk); padding: 2.2rem 2rem; }
.giris-logo { width: 4.5rem; height: 4.5rem; border-radius: 22px; background: linear-gradient(135deg, var(--ana), #ff9a62); color: #fff; display: grid; place-items: center; font-size: 2.2rem; margin: 0 auto 1rem; box-shadow: 0 10px 24px rgba(255,107,53,.35); }

/* ---------- Boş durum ---------- */
.bos-durum { text-align: center; padding: 3rem 1rem; color: var(--yazi-soluk); }
.bos-durum i { font-size: 3.5rem; display: block; margin-bottom: .75rem; opacity: .45; }
.bos-durum .baslik { font-size: 1.3rem; font-weight: 800; color: var(--yazi); }

/* ---------- Süre uyarısı şeridi ---------- */
.sure-seridi { border-radius: 18px; padding: .85rem 1.1rem; font-weight: 700; display: flex; align-items: center; gap: .7rem; flex-wrap: wrap; }
.sure-seridi.uyari { background: var(--sari-acik); color: #7a5300; }
.sure-seridi.tehlike { background: var(--kirmizi-acik); color: #a3192b; }

/* ---------- Yazdırma ---------- */
@media print {
    .ust-bar, .bildirim-alani, .yazdirma { display: none !important; }
    body { background: #fff !important; }
    main { padding: 0 !important; }
}

/* ---------- Cepte Puan (sadakat) ---------- */
.puan-kutusu { background: linear-gradient(135deg, var(--sari-acik), var(--ana-acik)); }
.kart.puan-kutusu .kart-baslik i { color: var(--sari); }
.musteri-satir { display: flex; align-items: center; gap: .7rem; width: 100%; border: 2px solid var(--cizgi); background: #fff; border-radius: 16px; padding: .6rem .8rem; margin-bottom: .5rem; }
.musteri-satir:hover { border-color: var(--ana); }
.kamera-kutu { position: relative; border-radius: 20px; overflow: hidden; background: #000; aspect-ratio: 4 / 3; }
.kamera-kutu video { width: 100%; height: 100%; object-fit: cover; }
.kamera-cerceve { position: absolute; inset: 18%; border: 4px solid rgba(255,255,255,.9); border-radius: 18px; box-shadow: 0 0 0 999px rgba(0,0,0,.35); }
.kamera-kapat { position: absolute; top: .6rem; right: .6rem; font-weight: 800; }

/* ---------- Hızlı satış ---------- */
.bekleyen-satis { border: 2px solid var(--cizgi); border-radius: 16px; padding: .7rem; margin-bottom: .6rem; background: #fff; }
.bekleyen-satis .satis-no { background: var(--ana); color: #fff; font-weight: 900; border-radius: 10px; padding: .1rem .5rem; }
/* Sağ sütun (sepet + bekleyenler) masaüstünde birlikte sabit durur, sığmazsa kendi içinde kayar.
   Böylece sabit sepet, altındaki bekleyenler kartının üstüne binmez. */
@media (min-width: 992px) {
    .hizli-sag { position: sticky; top: 80px; max-height: calc(100vh - 96px); overflow-y: auto; padding-bottom: .5rem; scrollbar-width: thin; }
}
.bekleyen-serit { display: flex; align-items: center; gap: .5rem; background: var(--ana); color: #fff; font-weight: 800; border-radius: 16px; padding: .6rem .9rem; margin-bottom: .75rem; text-decoration: none; }
.bekleyen-serit:hover { color: #fff; background: var(--ana-koyu); }
#bekleyenKarti { scroll-margin-top: 90px; }
