/* Toplu mesaj (kp-; gorunum/kampanya.js, kampanya-form.js, kampanya-detay.js, kampanya-izin.js, kampanya-ortak.js). Renkler yalnız belirteçlerden (Gündüz;
   kurum rengi --vurgu), yeni palet ve yazı tipi yok. Tür rengi yalnız ince şerit ve rozet için: duyuru bilgi mavisi, kampanya şampanya; her yerde adıyla da yazılır.
   Durumlar adıyla yazılır, kırmızı yok (iptal nötr, duraklama amber). Dar ekranda (≤ 640 px) araç çubukları alt alta, durum çipleri kendi kabında yatay kayar
   (sayfa kaymaz), düğme ve seçenekler ≥ 44 px dokunma hedefi; formun kayıt çubuğu telefonda alt gezinmenin üstünde durur. Kesik yazı yok: adlar sarar. */

/* ---------------- kap, başlık ---------------- */
.kp-baslik-alt { display: inline-flex; flex-wrap: wrap; align-items: center; gap: 4px 8px; overflow-wrap: anywhere; }
.kp-destek { margin-bottom: 12px; }
.kp-ust { margin: -4px 0 8px; }
.kp-geri { margin-left: -8px; }
.sekme-panel:has(> .kp-arac), .kp-liste-kap, .kp-izin-kap, .kp-form, .kp-sayilar, .kp-rapor-izgara, .kp-alici-kap { min-width: 0; max-width: 100%; }
.kp-liste-kap[aria-busy="true"] > *, .kp-izin-kap[aria-busy="true"] > *, .kp-alici-kap[aria-busy="true"] > * { opacity: .65; transition: opacity var(--t-hizli); }

/* ---------------- araç çubuğu ---------------- */
.kp-arac { margin-bottom: 14px; min-width: 0; }
.kp-cip-yer { position: relative; min-width: 0; max-width: 100%; }
.kp-suzgec { position: relative; display: flex; flex-wrap: wrap; align-items: center; gap: 8px 10px; min-width: 0; flex: 1 1 auto; }
/* position: görünmez etiketler kayan kabın dışına taşıp sayfayı genişletmesin */
.kp-sec-kutu { position: relative; flex: 0 1 200px; min-width: 0; max-width: 100%; }
.kp-sec-kutu .secim { width: 100%; }
.kp-tarih-aralik { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; min-width: 0; }
.kp-tarih-aralik .girdi { width: auto; flex: 1 1 140px; min-width: 0; max-width: 170px; }
.kp-arac-sag { margin-left: auto; display: flex; flex-wrap: wrap; gap: 8px; }

/* ---------------- ortak rozet, kanal ---------------- */
.kp-tur-rozet, .kp-durum-rozet, .kp-alici-rozet, .kp-izin-rozet { flex: none; }
.kp-kanal-etiket { display: inline-flex; align-items: center; gap: 5px; white-space: nowrap; }
.kp-kanal-etiket > .ikon { color: var(--metin3); }
.kp-kanal-simgeler { position: relative; display: inline-flex; align-items: center; gap: 6px; }
.kp-kanal-simge { display: inline-grid; place-items: center; width: 26px; height: 26px; border-radius: var(--r-tam); background: var(--yuzey2); color: var(--metin2);
  box-shadow: inset 0 0 0 1px var(--cizgi); }
.kp-kisi-hucre { display: flex; flex-direction: column; align-items: flex-start; gap: 2px; min-width: 0; }
.kp-kisi { font-weight: 600; overflow-wrap: anywhere; color: var(--metin); text-underline-offset: 3px; }
a.kp-kisi:hover { color: var(--vurgu); }
.kp-kisi-gizli { font-weight: 500; color: var(--metin3); }
.kp-bag-dugme { all: unset; cursor: pointer; font-weight: 600; color: var(--metin); overflow-wrap: anywhere; border-radius: 4px; }
.kp-bag-dugme:hover { color: var(--vurgu); text-decoration: underline; text-underline-offset: 3px; }
.kp-bag-dugme:focus-visible { outline: 2px solid var(--vurgu); outline-offset: 2px; }
.kp-alt-baslik { margin: 0; display: flex; align-items: center; gap: 6px; font-size: 13px; font-weight: 650; color: var(--metin); }

/* ---------------- Mesajlar listesi ---------------- */
.kp-liste-ad { display: flex; flex-direction: column; align-items: flex-start; gap: 4px; min-width: 0; }
.kp-liste-isim { font-weight: 620; overflow-wrap: anywhere; }
.kp-liste-rozet, .kp-liste-durum { display: inline-flex; flex-wrap: wrap; align-items: center; gap: 4px 6px; }
.kp-liste-durum .metin-3 { font-size: 12px; }
.kp-liste-tarih { font-size: 13px; white-space: nowrap; }

/* ---------------- İzinler sekmesi ---------------- */
.kp-izin-aciklama { margin: 0 0 12px; font-size: 13.5px; max-width: 80ch; overflow-wrap: anywhere; }
.kp-izin-ozet-yer:empty { display: none; }
.kp-izin-ozet { list-style: none; margin: 0 0 14px; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.kp-izin-ozet-oge { display: flex; flex-direction: column; gap: 2px; padding: 12px 14px; border-radius: var(--r); background: var(--yuzey); border: 1px solid var(--cizgi); min-width: 0; }
.kp-izin-ozet-ad { display: inline-flex; align-items: center; gap: 6px; font-size: 13px; font-weight: 600; color: var(--metin2); }
.kp-izin-ozet-ad > .ikon { color: var(--metin3); }
.kp-izin-ozet-sayi { font-size: 13.5px; }
.kp-izin-ozet-sayi strong { font-family: var(--f-sayi); font-size: 24px; font-weight: 600; line-height: 1.1; color: var(--iyi); }
.kp-izin-ozet-oge .metin-3 { font-size: 12.5px; }

/* ---------------- form: bölümler ---------------- */
.kp-form { display: flex; flex-direction: column; gap: 16px; margin-bottom: 8px; }
.kp-adim-serit { margin: -6px 0 14px; min-width: 0; }
/* kayıtlı taslakta tek cümlelik not: zamanı 24 saatten fazla geçen zamanlanmış mesaj taslağa döner */
.kp-taslak-not { margin: 0 0 16px; min-width: 0; max-width: 80ch; }
.kp-adim-serit ol { list-style: none; margin: 0; padding: 2px; display: flex; flex-wrap: wrap; gap: 6px; }
.kp-adim-no { display: inline-grid; place-items: center; flex: none; width: 22px; height: 22px; border-radius: var(--r-tam); background: var(--vurgu-zemin); color: var(--vurgu);
  font-family: var(--f-sayi); font-size: 12px; font-weight: 600; }
.kp-adim-serit .cip .kp-adim-no { width: 18px; height: 18px; font-size: 11px; }
.kp-adim { scroll-margin-top: calc(var(--ust-yukseklik, 56px) + 12px); }
/* bu ekranların kart başlıkları düz yazı (küçük büyük harfli etiket değil): bölüm adı okunur başlık olarak */
:is(.kp-adim, .kp-rapor-izgara, .kp-alicilar) .kart-baslik { text-transform: none; letter-spacing: normal; font-size: 15px; color: var(--metin); }
.kp-adim-baslik { display: flex; align-items: center; gap: 8px; }
.kp-adim .kp-adim-baslik { font-size: 16px; }
.kp-adim-baslik:focus { outline: none; }
.kp-adim-baslik:focus-visible { outline: 2px solid var(--vurgu); outline-offset: 3px; border-radius: 4px; }
.kp-genel-hata[hidden] { display: none; }
.kp-genel-hata { margin-bottom: 12px; }
.kp-genel-hata:focus { outline: none; }
.kp-hata-liste { margin: 4px 0 0; padding-left: 18px; }

/* seçenekler (radyo ve onay kutusu kartları) */
.kp-secenek-alan, .kp-coklu, .kp-alici, .kp-tur-alan { margin: 0; padding: 0; border: 0; min-width: 0; }
.kp-secenek-alan > legend, .kp-coklu > legend, .kp-alici > legend, .kp-tur-alan > legend { padding: 0; margin-bottom: 8px; font-weight: 600; font-size: 13px; }
.kp-secenekler { display: flex; flex-direction: column; gap: 6px; }
.kp-secenekler-yatay { flex-direction: row; flex-wrap: wrap; }
.kp-secenek { display: flex; align-items: center; gap: 10px; min-height: 40px; padding: 6px 12px; border: 1px solid var(--cizgi); border-radius: var(--r);
  background: var(--yuzey); cursor: pointer; overflow-wrap: anywhere; font-size: 13.5px; min-width: 0; }
.kp-secenekler-yatay .kp-secenek { flex: 1 1 140px; }
.kp-secenek > .ikon { color: var(--metin3); flex: none; }
.kp-secenek:has(input:checked) { border-color: color-mix(in oklab, var(--vurgu) 55%, var(--cizgi)); background: var(--vurgu-zemin); }
.kp-secenek input { width: 18px; height: 18px; accent-color: var(--vurgu); flex: none; margin: 0; }
.kp-secenek:focus-within { outline: 2px solid var(--vurgu); outline-offset: 2px; }
.kp-secenek[data-devre-disi] { cursor: not-allowed; opacity: .6; }
.kp-secenek-genis { align-items: flex-start; padding-block: 10px; }
.kp-secenek-genis input { margin-top: 2px; }
.kp-secenek-metin { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.kp-secenek-metin > span { font-weight: 600; }
.kp-secenek-metin small { font-size: 12.5px; color: var(--metin3); }
.kp-alici .kp-secenekler { flex-direction: row; flex-wrap: wrap; }
.kp-alici .kp-secenek { flex: 1 1 220px; }

/* 1) tür */
.kp-tur-secenekler { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.kp-tur-secenek { position: relative; display: flex; align-items: flex-start; gap: 12px; padding: 14px 16px 14px 18px; border: 1px solid var(--cizgi); border-radius: var(--r);
  background: var(--yuzey); cursor: pointer; min-width: 0; transition: border-color var(--t-hizli), background var(--t-hizli); }
.kp-tur-secenek::before { content: ""; position: absolute; left: 0; top: 12px; bottom: 12px; width: 3px; border-radius: 0 3px 3px 0; background: var(--kp-tur, var(--cizgi2)); }
.kp-tur-secenek[data-tur="duyuru"] { --kp-tur: var(--info); }
.kp-tur-secenek[data-tur="kampanya"] { --kp-tur: var(--champagne); }
.kp-tur-secenek input { width: 18px; height: 18px; margin: 2px 0 0; accent-color: var(--vurgu); flex: none; }
.kp-tur-secenek:has(input:checked) { border-color: color-mix(in oklab, var(--vurgu) 55%, var(--cizgi)); background: var(--vurgu-zemin); }
.kp-tur-secenek:focus-within { outline: 2px solid var(--vurgu); outline-offset: 2px; }
.kp-tur-govde { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.kp-tur-ad { font-size: 15px; font-weight: 650; }
.kp-tur-aciklama { font-size: 13px; color: var(--metin2); overflow-wrap: anywhere; }
.kp-duyuru-uyari[hidden] { display: none; }

/* 2) kime */
.kp-kime { min-width: 0; }
.kp-kime-not { margin: 0; font-size: 12.5px; overflow-wrap: anywhere; }
.kp-alici-tek { margin: 0; font-size: 13.5px; }
.kp-suzgecler { display: flex; flex-direction: column; gap: 14px; min-width: 0; }
.kp-suzgec-ikili { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 16px; align-items: start; }
.kp-sz, .kp-yas, .kp-zaman { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; min-width: 0; }
.kp-sz .secim { flex: 1 1 200px; min-width: 0; }
.kp-ay { display: inline-flex; align-items: center; gap: 6px; }
.kp-ay[hidden] { display: none; }
.kp-sayi-girdi { width: 88px; flex: none; }
.kp-yas .kp-sayi-girdi { flex: 1 1 88px; max-width: 120px; }
.kp-sz-aciklama { margin: 4px 0 0; font-size: 12.5px; overflow-wrap: anywhere; }
.kp-sz-aciklama:empty { display: none; }
.kp-saglik { display: flex; flex-direction: column; gap: 12px; padding: 12px 14px; border-radius: var(--r); background: var(--yuzey2); min-width: 0; }
.kp-kayip-yer:empty { display: none; }

/* çoklu seçim */
.kp-coklu { display: flex; flex-direction: column; gap: 8px; }
.kp-coklu-ust { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 12px; margin-top: -4px; }
.kp-coklu-ozet { font-size: 12.5px; }
.kp-coklu-ara { max-width: 320px; }
.kp-coklu-liste { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 200px), 1fr)); gap: 6px; max-height: 236px; overflow-y: auto;
  overscroll-behavior: contain; padding: 2px; border-radius: var(--r); }
.kp-coklu-yatay { display: flex; flex-wrap: wrap; gap: 6px; }
.kp-coklu-yatay .kp-secenek { flex: 0 1 auto; }
.kp-coklu-liste > [hidden], .kp-coklu-yatay > [hidden] { display: none; }

/* canlı sayı */
.kp-canli { display: flex; align-items: flex-start; gap: 10px; padding: 12px 14px; border-radius: var(--r); background: var(--vurgu-zemin);
  border: 1px solid color-mix(in oklab, var(--vurgu) 25%, var(--cizgi)); min-width: 0; }
.kp-canli > .ikon { color: var(--vurgu); margin-top: 2px; flex: none; }
.kp-canli-govde { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 10px; min-width: 0; }
.kp-canli-metin { margin: 0; font-size: 14px; overflow-wrap: anywhere; }
.kp-canli-metin strong { font-family: var(--f-sayi); font-size: 18px; font-weight: 600; }
.kp-canli-uyari { color: var(--uyari); font-weight: 600; }
.kp-canli-donen { width: 14px; height: 14px; border-radius: var(--r-tam); border: 2px solid color-mix(in oklab, var(--vurgu) 30%, transparent); border-top-color: var(--vurgu);
  animation: kp-don 800ms linear infinite; flex: none; }
.kp-canli-donen[hidden] { display: none; }
@keyframes kp-don { to { transform: rotate(360deg); } }

/* 3) kanallar */
.kp-kanal-giris { margin: 0; font-size: 13.5px; overflow-wrap: anywhere; }
.kp-kanal { display: flex; flex-direction: column; gap: 12px; padding: 14px 16px; border: 1px solid var(--cizgi); border-radius: var(--r); background: var(--yuzey); min-width: 0; }
.kp-kanal:has(> .kp-kanal-bas input:checked) { border-color: color-mix(in oklab, var(--vurgu) 40%, var(--cizgi)); }
.kp-kanal[data-kapali] { background: var(--yuzey2); }
.kp-kanal-bas { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 14px; min-width: 0; }
.kp-kanal-baslik { margin: 0; display: inline-flex; align-items: center; gap: 8px; font-size: 15px; font-weight: 650; }
.kp-kanal-baslik > .ikon { color: var(--vurgu); }
.kp-kanal[data-kapali] .kp-kanal-baslik > .ikon { color: var(--metin3); }
.kp-kanal-neden { margin: 0; display: flex; align-items: flex-start; gap: 6px; font-size: 13px; color: var(--metin2); overflow-wrap: anywhere; }
.kp-kanal-neden > .ikon { margin-top: 2px; color: var(--metin3); flex: none; }
.kp-kanal-neden[hidden], .kp-kanal-icerik[hidden], .kp-ret-kap[hidden], .kp-ret-bilgi[hidden], .kp-sms-onizle[hidden], .kp-uyari-metin[hidden] { display: none; }
.kp-kanal-icerik { padding-top: 4px; border-top: 1px dashed var(--cizgi); }
.kp-wa-kategori { margin: 0; font-size: 12.5px; overflow-wrap: anywhere; }
.kp-wa-ust { display: grid; grid-template-columns: minmax(0, 1fr) minmax(120px, 160px); gap: 12px 16px; align-items: start; }
.kp-dil-girdi { font-family: var(--font-mono); }
.kp-param-alan { display: flex; flex-direction: column; gap: 8px; min-width: 0; }
.kp-param-alan > .metin-3 { margin: 0; font-size: 12.5px; overflow-wrap: anywhere; }
.kp-param-liste { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 6px; }
.kp-param-liste:empty { display: none; }
.kp-param { display: grid; grid-template-columns: 44px minmax(0, 1fr) auto; align-items: center; gap: 8px; }
.kp-param-no { font-size: 12.5px; color: var(--metin3); }
.kp-param-alan > .dugme { align-self: flex-start; }
.kp-uyari-metin { margin: 0; display: flex; align-items: flex-start; gap: 6px; font-size: 13px; color: var(--uyari); font-weight: 600; }
.kp-uyari-metin > .ikon { margin-top: 2px; flex: none; }
.kp-ret-onek-uyari[hidden], .kp-ret-ustu[hidden] { display: none; }
/* kampanyada WhatsApp seçiliyken ret düğmesi kutusu işaretli ve kilitli: değiştirilemediği görünür, okunur kalır */
.kp-ret-kap .onay-kutusu[data-kilitli] { cursor: default; }
.kp-ret-kap .onay-kutusu[data-kilitli] .onay-metin { opacity: 1; }
.kp-ret-bilgi { padding: 10px 12px; border-radius: var(--r); background: var(--yuzey2); }
.kp-ret-bilgi p { margin: 0; font-size: 13px; overflow-wrap: anywhere; }
.kp-ret-bilgi .kopya-kutusu { min-width: 0; }
.kp-ret-bilgi .kopya-deger { overflow-wrap: anywhere; white-space: normal; }

/* değişken çipleri */
.kp-degiskenler { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; margin-top: -4px; }
.kp-degiskenler > .metin-3 { font-size: 12.5px; }
.kp-degisken { font-family: var(--font-mono); font-size: 12.5px; }

/* SMS */
.kp-sayac { font-size: 12px; white-space: nowrap; }
.kp-sayac[data-asti="1"] { color: var(--uyari); font-weight: 600; }
.kp-sms-onizle { display: flex; flex-direction: column; gap: 6px; padding: 10px 12px; border-radius: var(--r); background: var(--yuzey2); min-width: 0; }
.kp-sms-onizle p { margin: 0; }
.kp-sms-metin { font-size: 13.5px; white-space: pre-wrap; overflow-wrap: anywhere; }
.kp-ret-satir { color: var(--metin3); }
.kp-ep-ret { margin: 0; font-size: 12.5px; }
.kp-ep-ret:empty { display: none; }

/* görsel */
.kp-gorsel { display: flex; flex-direction: column; gap: 10px; min-width: 0; }
.kp-gorsel-kap { display: grid; grid-template-columns: minmax(0, 260px) minmax(0, 1fr); gap: 12px 16px; align-items: start; }
.kp-gorsel-resim { display: block; width: 100%; max-width: 100%; height: auto; max-height: 260px; object-fit: contain; border-radius: var(--r); background: var(--yuzey2);
  box-shadow: inset 0 0 0 1px var(--cizgi); }
.kp-gorsel-bos { width: 100%; min-height: 120px; }
.kp-gorsel-bilgi { display: flex; flex-direction: column; gap: 8px; min-width: 0; }
.kp-gorsel-bilgi p { margin: 0; }
.kp-gorsel-eylem { display: flex; flex-wrap: wrap; gap: 8px; }
.kp-gorsel-yok { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 14px; }
.kp-gorsel-yok > .metin-3 { margin: 0; flex: 1 1 260px; min-width: 0; font-size: 12.5px; overflow-wrap: anywhere; }
.kp-gorsel-ilerleme { display: flex; flex-direction: column; gap: 4px; max-width: 360px; }
.kp-gorsel-ilerleme[hidden] { display: none; }
.kp-dosya { position: relative; cursor: pointer; }
.kp-dosya:focus-within { outline: 2px solid var(--vurgu); outline-offset: 2px; }

/* 4) önizleme ve gönderim */
.kp-onizle-ust { display: flex; justify-content: flex-end; margin-top: -6px; }
.kp-onizle { display: flex; flex-direction: column; gap: 12px; min-width: 0; }
.kp-onizle-ozet { margin: 0; font-size: 15px; overflow-wrap: anywhere; }
.kp-onizle-ozet strong { font-family: var(--f-sayi); font-size: 26px; font-weight: 600; margin-right: 2px; }
.kp-onizle-tanim { margin: 0; }
.kp-atlanan { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 4px; font-size: 13px; overflow-wrap: anywhere; }
.kp-onizle-not { margin: 0; padding-left: 18px; display: flex; flex-direction: column; gap: 4px; font-size: 12.5px; color: var(--metin3); overflow-wrap: anywhere; }
.kp-ornekler { display: flex; flex-direction: column; gap: 8px; min-width: 0; }
.kp-ornekler > .metin-3 { margin: 0; font-size: 12.5px; }
.kp-ornek-izgara { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 240px), 1fr)); gap: 10px; align-items: start; }
.kp-ornek { display: flex; flex-direction: column; gap: 8px; padding: 12px; border-radius: var(--r); border: 1px solid var(--cizgi); background: var(--yuzey); min-width: 0; }
.kp-ornek p { margin: 0; font-size: 13px; overflow-wrap: anywhere; }
.kp-ornek-bas { display: flex; align-items: center; gap: 6px; font-weight: 650; }
.kp-ornek-bas > .ikon { color: var(--vurgu); }
.kp-ornek-resim { display: block; width: 100%; height: auto; max-height: 180px; object-fit: cover; border-radius: calc(var(--r) - 2px); }
.kp-ornek-param { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 2px; font-size: 13px; overflow-wrap: anywhere; }
.kp-balon { margin: 0; padding: 10px 12px; border-radius: 14px 14px 14px 4px; background: var(--yuzey2); font-size: 13.5px; white-space: pre-wrap; overflow-wrap: anywhere; }
.kp-eposta-onizle { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.kp-eposta-konu { font-weight: 650; }
.kp-eposta-dugme { align-self: flex-start; padding: 6px 12px; border-radius: 8px; background: var(--vurgu); color: var(--vurgu-ustu); font-size: 12.5px; font-weight: 600; }
.kp-eposta-dugme-satir { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 10px; min-width: 0; }
.kp-eposta-adres { font-size: 12px; overflow-wrap: anywhere; min-width: 0; }
/* alt bilgi ve ret satırı: gönderilen e-postadaki gibi gövdeden çizgiyle ayrık */
.kp-eposta-alt { display: flex; flex-direction: column; gap: 2px; margin-top: 4px; padding-top: 6px; border-top: 1px solid var(--cizgi); }
.kp-eposta-onizle .kp-eposta-alt p, .kp-eposta-ret { font-size: 12px; overflow-wrap: anywhere; }
.kp-gonder-not { margin: 0; font-size: 12.5px; overflow-wrap: anywhere; }
.kp-gonder-not:empty { display: none; }
.kp-gonder-eylem { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px; }
.kp-onay-ozet { min-width: 0; }
.kp-zaman .girdi { width: auto; flex: 1 1 140px; min-width: 0; max-width: 200px; }
.kp-zaman-ozet { margin: 4px 0 0; font-size: 12.5px; overflow-wrap: anywhere; }

/* kayıt çubuğu (formun sonunda, ekranın altına yapışık) */
.kp-form-alt { position: sticky; bottom: 16px; z-index: 6; display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; margin-top: 8px; padding: 10px 12px;
  border-radius: 14px; background: var(--yuzey); border: 1px solid var(--cizgi2); box-shadow: var(--golge-buyuk, var(--golge)); }
.kp-form-durum { margin: 0; flex: 1 1 180px; min-width: 0; font-size: 13px; color: var(--metin2); overflow-wrap: anywhere; }
.kp-form-durum[data-kirli="1"] { color: var(--metin); font-weight: 600; }
.kp-form-durum[data-kirli="1"]::before { content: ""; display: inline-block; width: 8px; height: 8px; margin-right: 8px; transform: rotate(45deg); background: var(--champagne);
  vertical-align: 1px; }
.kp-form-alt-eylem { display: flex; flex-wrap: wrap; gap: 8px; margin-left: auto; }
.kp-sil-yer:empty { display: none; }

/* ---------------- rapor (ayrıntı) ---------------- */
.kp-durum-serit:empty { display: none; }
.kp-durum { --kp-ton: var(--info); display: flex; flex-wrap: wrap; align-items: flex-start; justify-content: space-between; gap: 12px 18px; margin-bottom: 16px; padding: 14px 16px 14px 18px;
  border-radius: var(--r); background: var(--yuzey); border: 1px solid var(--cizgi); border-left: 4px solid var(--kp-ton); min-width: 0; }
.kp-durum[data-ton="vurgu"] { --kp-ton: var(--vurgu); }
.kp-durum[data-ton="uyari"] { --kp-ton: var(--uyari); }
.kp-durum[data-ton="basari"] { --kp-ton: var(--iyi); }
.kp-durum[data-ton="notr"] { --kp-ton: var(--cizgi2); }
.kp-durum-metin { display: flex; flex-direction: column; gap: 6px; flex: 1 1 320px; min-width: 0; }
.kp-durum-metin p { margin: 0; overflow-wrap: anywhere; }
.kp-durum-metin .metin-2 { font-size: 13.5px; }
.kp-durum-metin .metin-3 { font-size: 12.5px; }
.kp-durum-baslik { font-size: 16px; font-weight: 650; }
.kp-durum-eylem { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.kp-ilerleme { display: flex; flex-direction: column; gap: 4px; max-width: 520px; }
.kp-ilerleme .cubuk { height: 8px; }
.kp-ilerleme .metin-3 { font-size: 12.5px; }
.kp-sayilar { margin-bottom: 16px; }
.kp-sayilar:empty { display: none; }
.kp-sayaclar { grid-template-columns: repeat(auto-fit, minmax(132px, 1fr)); }
/* alıcı listesi henüz çıkmadı (zamanlandı): sayaçlar yerine tahmin satırı */
.kp-liste-bekliyor { display: flex; align-items: flex-start; gap: 10px; padding: 12px 14px; border: 1px solid var(--cizgi); border-radius: var(--r); background: var(--yuzey); min-width: 0; }
.kp-liste-bekliyor > .ikon { flex: none; margin-top: 1px; color: var(--metin3); }
.kp-liste-bekliyor p { margin: 0; font-size: 14px; overflow-wrap: anywhere; }
.kp-sayac-alt { font-size: 11.5px; }
.kp-rapor-izgara { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; align-items: start; margin-bottom: 16px; }
.kp-rapor-izgara:empty { display: none; }
.kp-neden-liste { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.kp-neden-liste > li { display: grid; grid-template-columns: minmax(0, 1fr) minmax(120px, 44%); align-items: center; gap: 4px 12px; font-size: 13.5px; }
.kp-neden-ad { overflow-wrap: anywhere; }
.kp-neden-sayi { display: inline-flex; align-items: center; gap: 8px; min-width: 0; }
.kp-neden-sayi .cubuk { flex: 1 1 auto; min-width: 40px; }
.kp-neden-sayi > .rakam { flex: none; min-width: 3ch; text-align: right; white-space: nowrap; }
.kp-neden-sayi .cubuk .cubuk-dolu { background: var(--metin3); }
.kp-donus-ana { margin: 0; font-size: 14px; overflow-wrap: anywhere; }
.kp-donus-ana strong { font-family: var(--f-sayi); font-size: 26px; font-weight: 600; line-height: 1.1; }
.kp-donus-oran { font-family: var(--f-sayi); font-size: 18px; font-weight: 600; color: var(--iyi); }
.kp-rapor-izgara .cubuk[data-ton="basari"] .cubuk-dolu { background: var(--iyi); }
.kp-donus-tanim { margin: 0; }
.kp-icerik-yer { margin-bottom: 16px; }
.kp-icerik { padding: 12px 16px; border-radius: var(--r); background: var(--yuzey); border: 1px solid var(--cizgi); }
.kp-icerik > summary { min-height: 36px; display: flex; align-items: center; }
.kp-hedef-tanim { margin: 0; }
.kp-icerik-izgara { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr)); gap: 12px; align-items: start; }
.kp-icerik-blok { display: flex; flex-direction: column; gap: 8px; padding: 12px; border-radius: var(--r); background: var(--yuzey2); min-width: 0; }
.kp-icerik-blok p { margin: 0; overflow-wrap: anywhere; }
.kp-icerik-blok .kp-balon { background: var(--yuzey); }
.kp-icerik-gorsel { display: flex; flex-direction: column; gap: 4px; max-width: 320px; }
.kp-icerik-gorsel p { margin: 0; }
.kp-alici-durum { display: inline-flex; flex-wrap: wrap; align-items: center; gap: 4px 6px; }
.kp-alici-durum .metin-3 { font-size: 12px; }

/* ---------------- izin bölümü (hasta kartı sekmesi, aday çekmecesi) ---------------- */
.kp-izin { display: flex; flex-direction: column; gap: 12px; min-width: 0; }
.kp-izin p { margin: 0; }
.kp-izin-giris { font-size: 12.5px; overflow-wrap: anywhere; }
.kp-izin-kanallar { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; border: 1px solid var(--cizgi); border-radius: var(--r); background: var(--yuzey); }
.kp-izin-satir { display: grid; grid-template-columns: minmax(96px, 128px) auto minmax(0, 1fr); align-items: center; gap: 4px 12px; padding: 10px 12px; border-top: 1px solid var(--cizgi); min-width: 0; }
.kp-izin-satir:first-child { border-top: 0; }
.kp-izin-kanal { display: inline-flex; align-items: center; gap: 6px; font-weight: 600; font-size: 13.5px; }
.kp-izin-kanal > .ikon { color: var(--metin3); }
.kp-izin-ayrinti { font-size: 12.5px; overflow-wrap: anywhere; min-width: 0; }
.kp-izin-adres { grid-column: 1 / -1; display: inline-flex; align-items: center; gap: 5px; font-size: 12.5px; color: var(--uyari); font-weight: 600; }
/* kanal fiilen kapalı (adres düzeyinde ret): nedeni tek satır, satırın tamamına yayılır */
.kp-izin-kapali { grid-column: 1 / -1; display: flex; align-items: flex-start; gap: 5px; font-size: 12.5px; color: var(--metin2); overflow-wrap: anywhere; min-width: 0; }
.kp-izin-kapali > .ikon { flex: none; margin-top: 2px; color: var(--metin3); }
.kp-izin-eylem { display: flex; flex-wrap: wrap; gap: 8px; }
.kp-izin-olaylar { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.kp-izin-olaylar > li { display: flex; flex-direction: column; gap: 2px; padding-left: 10px; border-left: 2px solid var(--cizgi); min-width: 0; }
.kp-izin-olay-bas { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 10px; font-size: 13px; }
.kp-izin-olaylar .metin-3 { font-size: 12px; overflow-wrap: anywhere; }
.kp-izin-mesajlar { display: flex; flex-direction: column; gap: 6px; }
.kp-izin-mesaj-liste { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.kp-izin-mesaj-liste > li { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.kp-izin-mesaj-ad { display: inline-flex; flex-wrap: wrap; align-items: center; gap: 4px 8px; font-weight: 600; font-size: 13.5px; overflow-wrap: anywhere; }
.kp-izin-mesaj-ad a { text-underline-offset: 3px; }
.kp-izin-mesaj-durum { display: inline-flex; flex-wrap: wrap; align-items: center; gap: 4px 8px; font-size: 12.5px; }
.kp-izin-not { font-size: 12.5px; overflow-wrap: anywhere; }
.ay-izin-yer { min-width: 0; }

/* toplu izin */
.kp-toplu .metin-kutusu { font-family: var(--font-mono); font-size: 13px; }
.kp-toplu-sonuc { margin: 0; }

/* ---------------- dar ekran ---------------- */
@media (max-width: 900px) {
  .kp-rapor-izgara { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 759px) {
  .kp-form-alt { bottom: calc(var(--alt-gezinme) + 12px + env(safe-area-inset-bottom)); }
  .kp-adim-serit ol { flex-wrap: nowrap; overflow-x: auto; overscroll-behavior-x: contain; scrollbar-width: thin; padding-bottom: 6px; }
  .kp-adim-serit li { flex: none; }
  .kp-adim-serit .cip { min-height: 44px; white-space: nowrap; }
  .kp-secenek, .kp-tur-secenek { min-height: 44px; }
  .kp-degisken { min-height: 40px; }
  .kp-form-alt .dugme, .kp-gonder-eylem .dugme, .kp-durum-eylem .dugme, .kp-izin-eylem .dugme, .kp-gorsel-eylem .dugme, .kp-gorsel-yok .dugme,
  .kp-param-alan > .dugme, .kp-onizle-ust .dugme, .kp-ust .dugme, .kp-arac-sag .dugme { min-height: 44px; }
  .kp-param .ikon-dugme { min-width: 44px; min-height: 44px; }
  .kp-gorsel-kap { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 640px) {
  .kp-arac { flex-direction: column; align-items: stretch; }
  .kp-suzgec { flex-direction: column; align-items: stretch; }
  .kp-sec-kutu { flex: none; width: 100%; }
  .kp-sec-kutu .secim, .kp-tarih-aralik .girdi { min-height: 44px; }
  .kp-tarih-aralik .girdi { max-width: none; }
  .kp-arac-sag { margin-left: 0; }
  .kp-arac-sag .dugme { width: 100%; }
  /* durum çipleri tek satırda, kendi kabında kayar (sayfa kaymaz) */
  .kp-cip-yer { overflow-x: auto; overscroll-behavior-x: contain; scrollbar-width: thin; padding: 2px 2px 6px; margin: 0 -2px; }
  .kp-cip-yer .bolumlu[data-tur="hap"] { flex-wrap: nowrap; width: max-content; max-width: none; overflow: visible; }
  .kp-cip-yer .bolumlu[data-tur="hap"] .bolumlu-oge { flex: none; max-width: none; white-space: nowrap; min-height: 44px; }
  .kp-izin-ozet { grid-template-columns: minmax(0, 1fr); }
  .kp-izin-ozet-oge { flex-direction: row; flex-wrap: wrap; align-items: baseline; gap: 4px 10px; }
  .kp-tur-secenekler, .kp-suzgec-ikili, .kp-wa-ust { grid-template-columns: minmax(0, 1fr); }
  .kp-izin-satir { grid-template-columns: minmax(0, 1fr) auto; }
  .kp-izin-ayrinti { grid-column: 1 / -1; }
  .kp-neden-liste > li { grid-template-columns: minmax(0, 1fr); }
  .kp-gonder-eylem { flex-direction: column-reverse; align-items: stretch; }
  .kp-gonder-eylem .dugme, .kp-form-alt-eylem .dugme { width: 100%; }
  .kp-form-alt-eylem { width: 100%; margin-left: 0; flex-wrap: nowrap; }
  .kp-form-alt-eylem .dugme { flex: 1 1 0; min-width: 0; }
  .kp-durum-eylem { width: 100%; }
  .kp-durum-eylem .dugme { flex: 1 1 auto; }
  .kp-zaman .girdi { max-width: none; }
  .kp-coklu-ara { max-width: none; }
  .kp-secenekler-yatay .kp-secenek { flex: 1 1 100%; }
  .kp-coklu-yatay .kp-secenek { flex: 1 1 calc(50% - 6px); }
}
@media (pointer: coarse) {
  .kp-secenek, .kp-tur-secenek { min-height: 44px; }
  .kp-durum-eylem .dugme, .kp-izin-eylem .dugme, .kp-gonder-eylem .dugme { min-height: 44px; }
}

/* ---------------- efekt, hareket, zorlanmış renkler ---------------- */
:root:not([data-efekt="sade"]) .kp-form-alt { background: var(--cam, var(--yuzey)); backdrop-filter: var(--cam-bulanik); -webkit-backdrop-filter: var(--cam-bulanik); }
@media (prefers-reduced-motion: reduce) {
  .kp-canli-donen { animation: none; }
  .kp-tur-secenek { transition: none; }
}
@media (forced-colors: active) {
  .kp-tur-secenek::before, .kp-durum { border-color: CanvasText; }
  .kp-tur-secenek::before { background: CanvasText; }
  .kp-tur-secenek:has(input:checked), .kp-secenek:has(input:checked) { outline: 2px solid Highlight; }
  .kp-form-durum[data-kirli="1"]::before { background: CanvasText; }
}
