:root {
  --km: #f25c05;
  --km-koyu: #c94a02;
  --km-nav: #1f2430;
  --zemin: #f3f4f7;
}
body { background: var(--zemin); font-size: .925rem; }
.km-nav { background: var(--km-nav); }
.km-nav .nav-link { white-space: nowrap; }
.km-nav .nav-link.active { color: #fff; box-shadow: inset 0 -3px 0 var(--km); }
.btn-km { background: var(--km); border-color: var(--km); color: #fff; }
.btn-km:hover, .btn-km:focus { background: var(--km-koyu); border-color: var(--km-koyu); color: #fff; }
.form-check-input:checked { background-color: var(--km); border-color: var(--km); }
.min-w-0 { min-width: 0; }
.soluk { opacity: .55; }
.kart { background: #fff; border-radius: .75rem; box-shadow: 0 1px 3px rgba(0,0,0,.06); }

/* Giriş */
.giris-sayfa { min-height: 100vh; background: linear-gradient(135deg, var(--km-nav), #3a2a20); }
.giris-kart { width: 100%; max-width: 400px; border: 0; border-radius: 1rem; }
.giris-logo { width: 64px; height: 64px; margin: 0 auto; border-radius: 1rem; background: var(--km); color: #fff; font-size: 2rem; display: grid; place-items: center; }

/* Canlı operasyon */
body.tam-ekran { height: 100vh; display: flex; flex-direction: column; overflow: hidden; }
.canli { flex: 1; display: grid; grid-template-columns: 380px 1fr 290px; min-height: 0; }
.canli > section { display: flex; flex-direction: column; min-height: 0; background: #fff; }
.canli-paketler { border-right: 1px solid #e3e5ea; }
.canli-kuryeler { border-left: 1px solid #e3e5ea; }
.canli-baslik { padding: .75rem; border-bottom: 1px solid #e3e5ea; }
.canli-liste { flex: 1; overflow-y: auto; padding: .5rem; background: #fafbfc; }
.canli-harita, #harita { height: 100%; }
#harita { z-index: 0; }

.cip { display: inline-flex; gap: .3rem; align-items: center; padding: .2rem .6rem; border-radius: 99px; font-size: .8rem;
  background: color-mix(in srgb, var(--renk) 12%, #fff); color: color-mix(in srgb, var(--renk) 80%, #000); }
.cip b { font-size: .95rem; }

.grup-baslik { font-size: .75rem; font-weight: 700; text-transform: uppercase; letter-spacing: .04em; color: var(--renk); margin: .6rem .25rem .35rem; display: flex; align-items: center; gap: .4rem; }
.grup-baslik span { background: var(--renk); color: #fff; border-radius: 99px; padding: 0 .45rem; }

.paket-kart { background: #fff; border: 1px solid #e3e5ea; border-left: 4px solid; border-radius: .6rem; padding: .6rem .7rem; margin-bottom: .45rem; cursor: pointer; transition: box-shadow .15s; }
.paket-kart:hover { box-shadow: 0 2px 8px rgba(0,0,0,.08); }
.paket-kart.durum-beklemede { border-left-color: #dc3545; }
.paket-kart.durum-atandi { border-left-color: #f59f00; }
.paket-kart.durum-kabul { border-left-color: #0d6efd; }
.paket-kart.durum-yolda { border-left-color: #198754; }
.paket-kart.gecikme { animation: nabiz 1.6s infinite; }
@keyframes nabiz { 50% { background: #fff1f1; } }

.kurye-satir { display: flex; align-items: center; gap: .6rem; padding: .5rem .6rem; border-radius: .5rem; cursor: pointer; }
.kurye-satir:hover { background: #eef0f4; }
.kurye-satir.secili { background: #fff3ea; outline: 1px solid var(--km); }
.nokta { width: 10px; height: 10px; border-radius: 50%; background: var(--renk); flex: none; box-shadow: 0 0 0 3px color-mix(in srgb, var(--renk) 25%, transparent); }

/* Harita ikonları */
.km-ikon { background: none; border: 0; }
.ikon-restoran { width: 28px; height: 28px; margin: -14px 0 0 -14px; display: grid; place-items: center; background: var(--km-nav); color: #fff; border-radius: 6px; border: 2px solid #fff; box-shadow: 0 1px 4px rgba(0,0,0,.35); }
.ikon-paket { margin: -11px 0 0 -18px; padding: 1px 6px; font-size: 11px; font-weight: 700; color: #fff; background: var(--renk, #555); border-radius: 99px; border: 2px solid #fff; box-shadow: 0 1px 4px rgba(0,0,0,.3); white-space: nowrap; }
.ikon-kurye { width: 34px; height: 34px; margin: -17px 0 0 -17px; display: grid; place-items: center; border-radius: 50%; background: var(--renk, #198754); color: #fff; font-weight: 700; font-size: 12px; border: 3px solid #fff; box-shadow: 0 2px 6px rgba(0,0,0,.35); position: relative; }
.ikon-kurye b { position: absolute; top: -8px; right: -8px; background: var(--km); color: #fff; border-radius: 99px; font-size: 10px; min-width: 18px; height: 18px; display: grid; place-items: center; border: 2px solid #fff; }
.ikon-kurye.bayat { filter: grayscale(1); opacity: .6; }

#miniHarita { height: 220px; border-radius: .5rem; border: 1px solid #dee2e6; }

.zaman-cizelgesi { list-style: none; padding-left: 1rem; border-left: 2px solid #e3e5ea; margin: 0; }
.zaman-cizelgesi li { position: relative; padding: .25rem 0 .5rem .5rem; }
.zaman-cizelgesi li::before { content: ''; position: absolute; left: -1.35rem; top: .55rem; width: 10px; height: 10px; border-radius: 50%; background: var(--km); }

/* Tablolar */
.table-kart { background: #fff; border-radius: .75rem; overflow: hidden; box-shadow: 0 1px 3px rgba(0,0,0,.06); }
.table-kart .table { margin: 0; }
.table-kart thead th { background: #f8f9fb; font-size: .78rem; text-transform: uppercase; color: #6c757d; letter-spacing: .03em; }

@media (max-width: 1199px) {
  .canli { grid-template-columns: 340px 1fr; }
  .canli-kuryeler { display: none !important; }
}
@media (max-width: 767px) {
  body.tam-ekran { height: auto; overflow: auto; }
  .canli { display: flex; flex-direction: column; }
  .canli-harita { height: 50vh; order: -1; }
  .canli-kuryeler { display: flex !important; }
  .canli-liste { max-height: none; }
}

/* Canlı ekran kurye uyarıları */
.uyari-seridi { padding: .5rem .5rem 0; display: grid; gap: .35rem; background: #fafbfc; }
.uyari-satir { display: flex; align-items: center; gap: .6rem; padding: .45rem .6rem; border-radius: .5rem; cursor: pointer; font-size: .85rem; }
.uyari-satir > .bi { font-size: 1.1rem; }

/* Mesai sayfası */
.mesai-hafta { display: grid; grid-template-columns: repeat(7, 1fr); gap: 2px; min-width: 280px; }
.mesai-gun { position: relative; height: 22px; background: #eef0f4; border-radius: 3px; overflow: hidden; }
.mesai-gun .dilim { position: absolute; top: 0; bottom: 0; background: color-mix(in srgb, var(--km) 70%, #fff); }
.mesai-gun .calisma { position: absolute; bottom: 0; height: 5px; background: #198754; }
.mesai-gun-ad { font-size: .7rem; color: #6c757d; text-align: center; }

/* Mesai kapasite ızgarası */
.kapasite-izgara { border-collapse: separate; border-spacing: 2px; user-select: none; }
.kapasite-izgara thead th { font-size: .7rem; color: #6c757d; text-align: center; font-weight: 600; }
.kapasite-izgara tbody th { font-size: .8rem; padding-right: .5rem; white-space: nowrap; }
.kapasite-izgara td { position: relative; width: 34px; height: 32px; border-radius: 4px; padding: 0; background: #eef0f4; }
.kapasite-izgara td input { width: 100%; height: 100%; border: 0; background: transparent; text-align: center; font-weight: 700; font-size: .85rem; padding: 0; }
.kapasite-izgara td input:focus { outline: 2px solid var(--km); border-radius: 4px; }
.kapasite-izgara td .dolu { position: absolute; right: 2px; bottom: 0; font-size: .6rem; color: #495057; pointer-events: none; }
.kapasite-izgara td.musait, .kap-ornek.musait { background: #d1f0dc; }
.kapasite-izgara td.az, .kap-ornek.az { background: #ffe8a3; }
.kapasite-izgara td.dolu, .kap-ornek.dolu { background: #f8c4c4; }
.kapasite-izgara td.kapali, .kap-ornek.kapali { background: repeating-linear-gradient(45deg, #ced4da, #ced4da 4px, #e9ecef 4px, #e9ecef 8px); }
.kapasite-izgara td.bos, .kap-ornek.bos { background: #eef0f4; }
.kapasite-izgara td.secili { outline: 2px solid var(--km); outline-offset: -1px; }
.kap-ornek { display: inline-block; width: 14px; height: 12px; border-radius: 2px; vertical-align: middle; border: 1px solid #dee2e6; }

/* Ayarlar: iki sütunlu akış + sabit kaydet çubuğu */
.ayar-izgara { columns: 2 560px; column-gap: 1rem; }
.ayar-izgara > section { break-inside: avoid; margin-bottom: 1rem; scroll-margin-top: 1rem; }
.ayar-satir { display: flex; align-items: center; gap: 1rem; padding: .55rem 0; border-bottom: 1px solid #f0f1f4; }
.ayar-satir:last-child { border-bottom: 0; }
.ayar-satir > .min-w-0 { flex: 1; }
.ayar-deger { flex: none; width: 130px; display: flex; justify-content: flex-end; }
.ayar-kaydet { position: sticky; bottom: 0; z-index: 5; display: flex; align-items: center; gap: 1rem; padding: .75rem 1rem;
  margin: 0 -1rem; background: rgba(243,244,247,.92); backdrop-filter: blur(6px); border-top: 1px solid #e3e5ea; }
