/* Telcoset — yuzen "Bize Ulas" butonu + iletisim modali */

:root{
  --tci-navy:#0C223F;
  --tci-yesil:#57B957;
  --tci-teal:#005272;
  --tci-cizgi:#E3EAF1;
  --tci-soluk:#7A8798;
  --tci-yumusak:#F4F8FC;
  --tci-font:Cabin,"Segoe UI",Arial,sans-serif;
}

/* ---------- Yuzen tetik butonu (beyaz hap + yesil rozet) ---------- */
.tci-tetik{
  position:fixed;right:24px;bottom:24px;
  /* Cerez bandi ve benzeri seritlerin ustunde kalsin */
  z-index:2147482500;
  display:inline-flex;align-items:center;gap:11px;
  margin:0;padding:11px 22px 11px 12px;
  background:#fff !important;color:var(--tci-navy) !important;
  border:1px solid var(--tci-cizgi) !important;border-radius:100px !important;
  box-shadow:0 10px 30px rgba(12,34,63,.16) !important;
  font-family:var(--tci-font);font-size:15px;font-weight:600;line-height:1;
  cursor:pointer;-webkit-appearance:none;appearance:none;
  transition:transform .18s ease,box-shadow .18s ease,bottom .25s ease;
}

/* Cerez bandi aciksa butonu onun ustune al.
   Bant kapatilinca (#cookie-law-info-bar inline "display: none" alir)
   kural dusuyor ve buton kendiliginden eski yerine iniyor.
   Bant yuksekligi ekran genisligine gore degisiyor: 69px / 137px / 173px. */
body:has(#cookie-law-info-bar:not([style*="display: none"])) .tci-tetik{ bottom:88px; }
.tci-tetik:hover{ transform:translateY(-3px);box-shadow:0 16px 38px rgba(12,34,63,.22) !important; }
.tci-tetik:focus-visible{ outline:2px solid var(--tci-yesil);outline-offset:3px; }
.tci-rozet{
  flex:0 0 34px;width:34px;height:34px;border-radius:50%;
  background:var(--tci-yesil);color:#fff;
  display:inline-flex;align-items:center;justify-content:center;
}
.tci-yazi{ white-space:nowrap; }

/* ---------- Modal ---------- */
.tci-modal{
  position:fixed;top:0;right:0;bottom:0;left:0;z-index:2147483000;
  display:flex;align-items:flex-end;justify-content:flex-end;
  padding:24px;box-sizing:border-box;
}
.tci-modal[hidden]{ display:none; }
.tci-modal *,.tci-modal *::before,.tci-modal *::after{ box-sizing:border-box; }

.tci-arka{
  position:absolute;top:0;right:0;bottom:0;left:0;
  background:rgba(12,34,63,.5);
  -webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);
  opacity:0;transition:opacity .22s ease;
}
.tci-modal.tci-acik .tci-arka{ opacity:1; }

.tci-kutu{
  position:relative;width:100%;max-width:470px;max-height:calc(100vh - 48px);
  overflow-y:auto;background:#fff;border-radius:16px;
  box-shadow:0 30px 90px rgba(12,34,63,.38);
  padding:26px 26px 22px;
  opacity:0;transform:translateY(20px) scale(.98);
  transition:opacity .24s ease,transform .28s cubic-bezier(.22,1,.36,1);
}
.tci-modal.tci-acik .tci-kutu{ opacity:1;transform:none; }

.tci-kapat{
  position:absolute;top:14px;right:14px;
  width:36px;height:36px;padding:0;
  background:var(--tci-yumusak) !important;border:0 !important;border-radius:50% !important;
  color:var(--tci-soluk);cursor:pointer;
  display:inline-flex;align-items:center;justify-content:center;
  transition:background .15s ease,color .15s ease,transform .15s ease;
}
.tci-kapat:hover{ background:var(--tci-navy) !important;color:#fff;transform:rotate(90deg); }
.tci-kapat:focus-visible{ outline:2px solid var(--tci-yesil);outline-offset:2px; }

.tci-ust{ margin:0 40px 18px 0; }
.tci-baslik{
  font-family:var(--tci-font);font-size:22px;font-weight:700;line-height:1.25;
  color:var(--tci-navy);margin:0 0 6px;
}
.tci-alt{
  font-family:var(--tci-font);font-size:14px;line-height:1.5;
  color:var(--tci-soluk);margin:0;
}

/* CF7 formunu modal icinde derli toplu goster */
.tci-govde .wpcf7 p{ margin:0 0 12px;padding:0; }
.tci-govde label{
  display:block;font-family:var(--tci-font);font-size:13.5px;font-weight:600;
  color:var(--tci-navy);
}
.tci-govde input[type=text],.tci-govde input[type=email],.tci-govde input[type=tel],
.tci-govde textarea,.tci-govde select{
  width:100%;margin-top:5px;
  border:1.5px solid var(--tci-cizgi);border-radius:9px;
  padding:10px 12px;
  font-family:var(--tci-font);font-size:14.5px;color:var(--tci-navy);background:#fff;
  transition:border-color .18s ease,box-shadow .18s ease;
}
.tci-govde textarea{ min-height:96px;resize:vertical; }
.tci-govde input:focus,.tci-govde textarea:focus,.tci-govde select:focus{
  outline:none;border-color:var(--tci-yesil);
  box-shadow:0 0 0 3px rgba(87,185,87,.18);
}
.tci-govde input[type=submit],.tci-govde .wpcf7-submit{
  width:100%;margin-top:4px;
  background:var(--tci-yesil) !important;color:#fff !important;
  border:0 !important;border-radius:9px !important;
  padding:13px 20px;
  font-family:var(--tci-font);font-size:15px;font-weight:600;cursor:pointer;
  transition:background .18s ease;
}
.tci-govde input[type=submit]:hover,.tci-govde .wpcf7-submit:hover{ background:#4aa34a !important; }
.tci-govde .wpcf7-response-output{
  margin:12px 0 0 !important;border-radius:8px;font-family:var(--tci-font);font-size:13.5px;
}
.tci-govde .wpcf7-not-valid-tip{ font-family:var(--tci-font);font-size:12.5px; }

/* ---------- reCAPTCHA rozeti ----------
   Rozet sag altta "Bize Ulas" butonuyla cakisiyordu. Gizliyoruz;
   Google'in sarti geregi atif metni modalin altinda gosteriliyor
   (bkz. inc/iletisim-modal.php). display:none yerine visibility
   kullaniliyor ki dogrulama calismaya devam etsin. */
.grecaptcha-badge{ visibility:hidden !important; }

.tci-recaptcha{
  margin:14px 0 0;
  font-family:var(--tci-font);font-size:11.5px;line-height:1.5;
  color:var(--tci-soluk);text-align:center;
}
.tci-recaptcha a{ color:var(--tci-soluk);text-decoration:underline; }
.tci-recaptcha a:hover{ color:var(--tci-navy); }

/* ---------- Duyarli ---------- */
/* Cerez bandi dar ekranlarda satir kaydigi icin yukselir */
@media (max-width:900px){
  body:has(#cookie-law-info-bar:not([style*="display: none"])) .tci-tetik{ bottom:156px; }
}

@media (max-width:600px){
  .tci-tetik{ right:14px;bottom:14px;padding:10px 18px 10px 10px;font-size:14px; }
  body:has(#cookie-law-info-bar:not([style*="display: none"])) .tci-tetik{ bottom:190px; }
  .tci-rozet{ flex-basis:30px;width:30px;height:30px; }
  .tci-modal{ padding:12px;align-items:flex-end; }
  .tci-kutu{ max-width:none;padding:22px 18px 18px;max-height:calc(100vh - 24px); }
  .tci-baslik{ font-size:19px; }
}

@media (prefers-reduced-motion:reduce){
  .tci-tetik,.tci-arka,.tci-kutu,.tci-kapat{ transition:none; }
  .tci-modal.tci-acik .tci-kutu{ transform:none; }
}
