/* ============================================================
   SALVERA Asistan — sohbet penceresi
   EsteTouch mimarisinin bu siteye uyarlaması: PHP vekil + buz paleti.
   Mobilde alt çubuğun (--bar-h) üstünde durur.
   ============================================================ */
.sb-dgm{position:fixed;right:18px;bottom:calc(var(--bar-h,0px) + 18px);z-index:140;
  display:flex;align-items:center;gap:9px;padding:0 18px;height:52px;border:0;cursor:pointer;
  border-radius:99px;background:var(--petrol);color:#fff;font-family:var(--font-govde);
  font-size:.92rem;font-weight:800;box-shadow:0 14px 34px -12px rgba(10,39,51,.45);
  transition:transform .2s,box-shadow .2s}
.sb-dgm:hover{transform:translateY(-2px);box-shadow:0 18px 40px -12px rgba(10,39,51,.55)}
.sb-dgm svg{width:20px;height:20px;flex:none}
.sb-dgm[data-acik="1"]{display:none}

.sb-panel{position:fixed;right:18px;bottom:calc(var(--bar-h,0px) + 18px);z-index:150;
  width:min(94vw,392px);max-height:min(76vh,600px);display:none;flex-direction:column;
  background:#fff;border:1px solid var(--cizgi);border-radius:20px;overflow:hidden;
  box-shadow:0 30px 70px -24px rgba(10,39,51,.45)}
.sb-panel[data-acik="1"]{display:flex}

.sb-bas{display:flex;align-items:center;gap:10px;padding:12px 14px;
  background:linear-gradient(120deg,var(--gece),var(--petrol));color:#fff}
.sb-avatar{width:38px;height:38px;flex:none;display:grid;place-items:center;border-radius:50%;
  background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.35);
  font-family:var(--font-baslik);font-size:1.15rem;font-weight:600}
.sb-bas-yazi{min-width:0}
.sb-bas-yazi b{display:block;font-family:var(--font-baslik);font-size:1rem;font-weight:600;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sb-bas-yazi small{display:flex;align-items:center;gap:5px;font-size:.66rem;opacity:.85}
.sb-bas-yazi small i{width:7px;height:7px;border-radius:50%;background:#7BE3A0;flex:none}
.sb-bas-ikon{margin-left:auto;display:flex;gap:6px}
.sb-bas-ikon a,.sb-bas-ikon button{width:32px;height:32px;border:0;border-radius:50%;cursor:pointer;
  display:inline-flex;align-items:center;justify-content:center;
  background:rgba(255,255,255,.14);color:#fff;text-decoration:none;font-size:1rem;line-height:1}
.sb-bas-ikon a:hover,.sb-bas-ikon button:hover{background:rgba(255,255,255,.28)}
.sb-bas-ikon svg{width:15px;height:15px}

.sb-uyari{font-size:.7rem;color:var(--sessiz);background:var(--buz-2);
  border-bottom:1px solid var(--cizgi);padding:7px 16px;line-height:1.45}

.sb-akis{flex:1;overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:10px;
  background:var(--buz);overscroll-behavior:contain}
.sb-msj{max-width:86%;padding:10px 13px;border-radius:14px;font-size:.88rem;line-height:1.55;
  white-space:pre-wrap;word-break:break-word}
.sb-msj--a{align-self:flex-start;background:#fff;border:1px solid var(--cizgi);
  border-bottom-left-radius:4px;color:var(--govde)}
.sb-msj--k{align-self:flex-end;background:var(--petrol);color:#fff;border-bottom-right-radius:4px}
.sb-msj--n{align-self:center;font-size:.72rem;color:var(--sessiz);background:none;padding:2px}
.sb-msj a{color:var(--petrol);font-weight:700}
.sb-msj--k a{color:#fff;text-decoration:underline}
.sb-bekle{align-self:flex-start;display:flex;gap:4px;padding:12px 14px}
.sb-bekle i{width:7px;height:7px;border-radius:50%;background:var(--petrol);opacity:.4;
  animation:sbZipla 1.1s ease-in-out infinite}
.sb-bekle i:nth-child(2){animation-delay:.18s}
.sb-bekle i:nth-child(3){animation-delay:.36s}
@keyframes sbZipla{40%{opacity:1;transform:translateY(-4px)}}

/* sarmalı: kaydırmalı sürümde son çip panel kenarında kesik görünüyordu (12 Ağu) */
.sb-cipler{display:flex;flex-wrap:wrap;gap:7px;padding:10px 14px 4px;background:var(--buz)}
.sb-cip{flex:none;display:inline-flex;align-items:center;gap:6px;padding:7px 13px;cursor:pointer;
  border:1px solid var(--cizgi-2);border-radius:99px;background:#fff;color:var(--murekkep);
  font-family:var(--font-govde);font-size:.78rem;font-weight:700;text-decoration:none;white-space:nowrap}
.sb-cip:hover{border-color:var(--petrol);color:var(--petrol)}

.sb-giris{display:flex;align-items:center;gap:8px;padding:10px 12px;background:var(--buz);
  border-top:1px solid var(--cizgi)}
/* font-size 16px ŞART: iOS Safari 16px altındaki alana odaklanınca sayfayı
   otomatik yakınlaştırır ve düzeni bozar (12 Ağu mobil denetimi) */
.sb-giris input{flex:1;min-width:0;height:44px;padding:0 14px;border:1px solid var(--cizgi-2);
  border-radius:12px;font-family:var(--font-govde);font-size:16px;color:var(--murekkep);background:#fff}
.sb-giris input:focus{outline:2px solid var(--petrol);outline-offset:1px}
.sb-giris button{width:44px;height:44px;flex:none;border:1px solid var(--cizgi-2);border-radius:12px;
  cursor:pointer;background:#fff;color:var(--petrol);display:inline-flex;
  align-items:center;justify-content:center}
.sb-giris button svg{width:19px;height:19px}
.sb-giris button:hover{border-color:var(--petrol)}
.sb-giris .sb-gonder{background:var(--petrol);color:#fff;border-color:var(--petrol)}
.sb-mik[data-dinliyor="1"]{background:var(--bakir);color:#fff;border-color:var(--bakir);
  animation:sbNabiz 1.2s ease-in-out infinite}
@keyframes sbNabiz{50%{box-shadow:0 0 0 7px rgba(142,91,35,.18)}}
.sb-arac{display:flex;align-items:center;justify-content:space-between;gap:10px;
  padding:0 14px 8px;background:var(--buz)}
.sb-arac button{display:inline-flex;align-items:center;gap:5px;border:0;background:none;cursor:pointer;
  font-family:var(--font-govde);font-size:.72rem;font-weight:700;color:var(--sessiz);padding:4px 0}
.sb-arac button:hover{color:var(--petrol)}
.sb-arac label{display:inline-flex;align-items:center;gap:6px;font-size:.72rem;font-weight:700;
  color:var(--sessiz);cursor:pointer;user-select:none}
.sb-arac input{accent-color:var(--petrol);width:15px;height:15px}
.sb-alt{font-size:.64rem;color:var(--sessiz);text-align:center;padding:0 12px 9px;background:var(--buz)}

/* ---- 12 Ağu mobil denetimi ---- */
/* sabit satırlar sıkışmasın: kısa telefonlarda mesaj alanı 0'a iniyordu */
.sb-bas,.sb-uyari,.sb-cipler,.sb-giris,.sb-arac,.sb-alt{flex:none}
.sb-akis{min-height:60px}
@media(max-width:520px){
  .sb-uyari{padding:6px 14px;font-size:.66rem}
  .sb-alt{padding:0 12px 7px;font-size:.6rem}}
/* çok kısa ekran (360×640 gibi): mesaj alanı esnesin, alt not kırpılmasın */
@media(max-height:680px){.sb-akis{min-height:0}.sb-bas{padding:9px 14px}}
/* başlık ikonları ve alt araçlar 40px dokunma hedefi */
.sb-bas-ikon{gap:8px}
.sb-bas-ikon a,.sb-bas-ikon button{width:40px;height:40px}
.sb-arac button,.sb-arac label{min-height:40px;padding-block:9px}
.sb-arac input{width:20px;height:20px}
/* panel açıkken arkadaki sayfa kaymasın */
.sb-panel{overscroll-behavior:contain}

@media(max-width:520px){
  /* dvh: iOS'ta vh tarayıcı çubuğunu saymadığı için panel ekrandan taşıyordu */
  .sb-panel{right:10px;left:10px;width:auto;
    max-height:min(72dvh,calc(100dvh - var(--bar-h,0px) - 36px))}
  .sb-dgm{right:12px}
  /* 8 çip 4 satıra yayılıp mesaj alanını yutuyordu → tek satır, kaydırmalı */
  .sb-cipler{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;
    scroll-padding-inline-end:14px;-webkit-overflow-scrolling:touch}
  .sb-cipler::-webkit-scrollbar{display:none}}

/* Hazırlık aracının yapışkan çubuğundaki "Özeti göster" düğmesi balonun altında
   kalıyordu (405-820px bandında örtüşme %94; ajan ölçümü). Çubuğun sağında
   balon şeridi kadar yer bırakılır — çubuk yükselmez, düğme balona girmez. */
@media(max-width:820px){.arac__dip{padding-right:140px}}
@media(max-width:404px){.arac__dip{padding-right:0}}
/* mobil menü açıkken balon menünün üstünde kalıyordu */
.cekmece[data-acik="1"] ~ .sb-dgm{display:none}
@media print{.sb-dgm,.sb-panel{display:none!important}}
