:root{
  --ts-primary:#2457eb;
  --ts-primary-dark:#102a83;
  --ts-primary-soft:#eff6ff;
  --ts-navy:#0f172a;
  --ts-text:#1e293b;
  --ts-muted:#64748b;
  --ts-line:#e5e7eb;
  --ts-panel:#ffffff;
  --ts-body:#f8fafc;
  --ts-success:#16a34a;
  --ts-warning:#f59e0b;
  --ts-shadow:0 28px 80px rgba(15,23,42,.22);
}

#tervion-assistant{
  position:fixed;
  right:22px;
  bottom:22px;
  z-index:2147483000;
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
  color:var(--ts-text);
}

#tervion-assistant *{
  box-sizing:border-box;
}

.ts-launcher{
  width:66px;
  height:66px;
  border:0;
  border-radius:24px;
  background:
    radial-gradient(circle at 25% 15%,rgba(255,255,255,.38),transparent 32%),
    linear-gradient(135deg,#0f172a 0%,#18327a 42%,var(--ts-primary) 100%);
  box-shadow:0 22px 55px rgba(36,87,235,.35),0 8px 22px rgba(15,23,42,.22);
  cursor:pointer;
  display:grid;
  place-items:center;
  transition:transform .18s ease,box-shadow .18s ease,filter .18s ease;
  position:relative;
}

.ts-launcher:hover{
  transform:translateY(-3px) scale(1.02);
  filter:saturate(1.08);
  box-shadow:0 26px 65px rgba(36,87,235,.42),0 10px 24px rgba(15,23,42,.24);
}

.ts-launcher:active{
  transform:translateY(-1px) scale(.98);
}

.ts-launcher img{
  width:38px;
  height:38px;
  object-fit:contain;
  filter:drop-shadow(0 8px 14px rgba(15,23,42,.22));
}

.ts-notification-dot{
  position:absolute;
  right:8px;
  top:8px;
  width:12px;
  height:12px;
  border-radius:999px;
  background:#22c55e;
  border:2px solid #fff;
  box-shadow:0 0 0 4px rgba(34,197,94,.18);
}

.ts-panel{
  position:absolute;
  right:0;
  bottom:84px;
  width:min(408px,calc(100vw - 28px));
  height:min(700px,calc(100vh - 118px));
  background:var(--ts-panel);
  border:1px solid rgba(226,232,240,.95);
  border-radius:28px;
  box-shadow:var(--ts-shadow);
  display:none;
  overflow:hidden;
  transform-origin:bottom right;
  animation:tsPanelIn .22s ease both;
}

.ts-panel.is-open{
  display:flex;
  flex-direction:column;
}

@keyframes tsPanelIn{
  from{opacity:0;transform:translateY(14px) scale(.96)}
  to{opacity:1;transform:translateY(0) scale(1)}
}

.ts-header{
  display:flex;
  align-items:center;
  gap:13px;
  padding:17px 17px 16px;
  background:
    radial-gradient(circle at 16% 0%,rgba(255,255,255,.24),transparent 30%),
    linear-gradient(135deg,#0f172a 0%,#18327a 48%,#2457eb 100%);
  color:#fff;
  position:relative;
}

.ts-header:after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-1px;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.35),transparent);
}

.ts-logo{
  width:46px;
  height:46px;
  border-radius:17px;
  background:rgba(255,255,255,.96);
  display:grid;
  place-items:center;
  overflow:hidden;
  flex:0 0 auto;
  box-shadow:0 12px 28px rgba(0,0,0,.16);
}

.ts-logo img{
  width:35px;
  height:35px;
  object-fit:contain;
}

.ts-title{
  font-weight:850;
  font-size:15.5px;
  line-height:1.2;
  letter-spacing:.1px;
}

.ts-subtitle{
  font-size:12px;
  opacity:.9;
  margin-top:4px;
  display:flex;
  align-items:center;
  gap:6px;
}

.ts-subtitle:before{
  content:"";
  width:7px;
  height:7px;
  border-radius:999px;
  background:#22c55e;
  box-shadow:0 0 0 4px rgba(34,197,94,.18);
}

.ts-close{
  margin-left:auto;
  width:36px;
  height:36px;
  border:0;
  border-radius:14px;
  background:rgba(255,255,255,.13);
  color:#fff;
  font-size:24px;
  line-height:1;
  cursor:pointer;
  transition:background .15s ease,transform .15s ease;
}

.ts-close:hover{
  background:rgba(255,255,255,.22);
  transform:rotate(3deg);
}

.ts-body{
  flex:1;
  overflow-y:auto;
  padding:17px 16px;
  background:
    linear-gradient(180deg,#f8fafc 0%,#eef4ff 100%);
  scroll-behavior:smooth;
}

.ts-body::-webkit-scrollbar{
  width:8px;
}

.ts-body::-webkit-scrollbar-track{
  background:transparent;
}

.ts-body::-webkit-scrollbar-thumb{
  background:#cbd5e1;
  border-radius:999px;
  border:2px solid transparent;
  background-clip:content-box;
}

.ts-message{
  display:flex;
  margin:0 0 12px;
  animation:tsMessageIn .18s ease both;
}

@keyframes tsMessageIn{
  from{opacity:0;transform:translateY(7px)}
  to{opacity:1;transform:translateY(0)}
}

.ts-message.user{
  justify-content:flex-end;
}

.ts-bubble{
  max-width:86%;
  border-radius:19px;
  padding:12px 13px;
  font-size:14px;
  line-height:1.55;
  white-space:pre-wrap;
  overflow-wrap:anywhere;
  word-break:normal;
  box-shadow:0 8px 22px rgba(15,23,42,.07);
}

.ts-message.assistant .ts-bubble{
  background:#fff;
  border:1px solid rgba(226,232,240,.95);
  color:#0f172a;
  border-bottom-left-radius:7px;
}

.ts-message.user .ts-bubble{
  background:linear-gradient(135deg,#2457eb,#18327a);
  color:#fff;
  border-bottom-right-radius:7px;
  box-shadow:0 10px 24px rgba(36,87,235,.28);
}

.ts-time{
  display:block;
  font-size:10px;
  opacity:.58;
  margin-top:6px;
  text-align:right;
}

.ts-suggestions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:6px 0 14px;
}

.ts-suggestions button{
  border:1px solid #dbe3ef;
  background:rgba(255,255,255,.92);
  color:#1e293b;
  border-radius:999px;
  padding:8px 11px;
  font-size:12px;
  cursor:pointer;
  transition:background .15s ease,border-color .15s ease,transform .15s ease,box-shadow .15s ease;
  box-shadow:0 6px 18px rgba(15,23,42,.04);
}

.ts-suggestions button:hover{
  background:#fff;
  border-color:#bcd0ff;
  transform:translateY(-1px);
  box-shadow:0 8px 22px rgba(36,87,235,.1);
}

.ts-typing{
  display:flex;
  gap:5px;
  align-items:center;
  min-width:54px;
}

.ts-typing span{
  width:7px;
  height:7px;
  border-radius:50%;
  background:#94a3b8;
  display:block;
  animation:tsPulse 1s infinite ease-in-out;
}

.ts-typing span:nth-child(2){animation-delay:.15s}
.ts-typing span:nth-child(3){animation-delay:.3s}

@keyframes tsPulse{
  0%,80%,100%{opacity:.35;transform:translateY(0)}
  40%{opacity:1;transform:translateY(-3px)}
}

.ts-lead{
  display:none;
  background:#fff;
  border-top:1px solid #eef2f7;
  padding:12px;
}

.ts-lead.is-open{
  display:block;
}

.ts-lead-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
}

.ts-lead input,
.ts-lead textarea{
  border:1px solid #dbe3ef;
  border-radius:13px;
  padding:10px;
  font-size:12px;
  font-family:inherit;
  outline:none;
  background:#fff;
}

.ts-lead input:focus,
.ts-lead textarea:focus{
  border-color:var(--ts-primary);
  box-shadow:0 0 0 3px rgba(36,87,235,.1);
}

.ts-lead textarea{
  grid-column:1/-1;
  min-height:60px;
  resize:vertical;
}

.ts-lead-send{
  grid-column:1/-1;
  border:0;
  border-radius:13px;
  background:linear-gradient(135deg,#0f172a,#1e293b);
  color:#fff;
  padding:11px;
  font-weight:850;
  cursor:pointer;
}

.ts-form{
  display:flex;
  gap:10px;
  align-items:flex-end;
  padding:13px;
  border-top:1px solid var(--ts-line);
  background:rgba(255,255,255,.96);
  backdrop-filter:blur(12px);
}

.ts-form textarea{
  flex:1;
  resize:none;
  border:1px solid #dbe3ef;
  border-radius:17px;
  min-height:46px;
  max-height:120px;
  padding:13px 14px;
  font-size:14px;
  line-height:1.4;
  outline:none;
  font-family:inherit;
  color:#0f172a;
  background:#fff;
  transition:border-color .15s ease,box-shadow .15s ease;
}

.ts-form textarea::placeholder{
  color:#94a3b8;
}

.ts-form textarea:focus{
  border-color:var(--ts-primary);
  box-shadow:0 0 0 4px rgba(36,87,235,.11);
}

.ts-form button{
  width:46px;
  height:46px;
  border:0;
  border-radius:16px;
  background:linear-gradient(135deg,#2457eb,#18327a);
  color:#fff;
  font-weight:900;
  cursor:pointer;
  flex:0 0 auto;
  box-shadow:0 10px 24px rgba(36,87,235,.24);
  transition:transform .15s ease,box-shadow .15s ease,opacity .15s ease;
}

.ts-form button:hover{
  transform:translateY(-1px);
  box-shadow:0 14px 28px rgba(36,87,235,.3);
}

.ts-form button:disabled{
  opacity:.55;
  cursor:not-allowed;
  transform:none;
}

.ts-footer{
  border-top:1px solid rgba(226,232,240,.9);
  background:linear-gradient(180deg,#ffffff 0%,#f8fafc 100%);
  padding:10px 12px 12px;
}

.ts-footer-card{
  display:flex;
  flex-direction:column;
  gap:8px;
  align-items:center;
  justify-content:center;
}

.ts-footer-badges{
  display:flex;
  gap:7px;
  align-items:center;
  justify-content:center;
  flex-wrap:wrap;
}

.ts-footer-badge{
  display:inline-flex;
  align-items:center;
  gap:5px;
  min-height:24px;
  padding:5px 10px;
  border:1px solid #e5e7eb;
  border-radius:999px;
  background:#ffffff;
  color:#475569;
  font-size:11px;
  font-weight:650;
  box-shadow:0 8px 20px rgba(15,23,42,.045);
}

.ts-footer-links{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  flex-wrap:wrap;
  color:#94a3b8;
  font-size:11px;
}

.ts-footer-links a{
  color:#475569;
  text-decoration:none;
  font-weight:700;
  transition:color .15s ease;
}

.ts-footer-links a:hover{
  color:#2457eb;
}

.ts-footer-note{
  color:#94a3b8;
  font-size:10.5px;
  text-align:center;
  line-height:1.35;
}

@media(max-width:520px){
  #tervion-assistant{
    right:12px;
    bottom:12px;
  }

  .ts-launcher{
    width:60px;
    height:60px;
    border-radius:21px;
  }

  .ts-panel{
    right:-4px;
    bottom:74px;
    width:calc(100vw - 24px);
    height:calc(100vh - 104px);
    border-radius:24px;
  }

  .ts-header{
    padding:15px;
  }

  .ts-body{
    padding:14px;
  }

  .ts-bubble{
    max-width:91%;
    font-size:13.5px;
  }

  .ts-lead-grid{
    grid-template-columns:1fr;
  }

  .ts-footer-badges{
    gap:6px;
  }

  .ts-footer-badge{
    font-size:10.5px;
    padding:5px 8px;
  }
}

/* Tervion Soft - Sade Müşteri Arayüzü Final */
/* Customer Plus içindeki ekstra kartları ve aksiyon barını kapatır.
   Sadece sade öneri balonları, TR/EN, dosya butonu ve üye sipariş sistemi kalır. */

#tervion-assistant .ts-service-cards,
#tervion-assistant .ts-action-bar,
#tervion-assistant .ts-faq-block,
#tervion-assistant .ts-rating-block{
  display:none!important;
}

#tervion-assistant .ts-lang-switch{
  display:flex!important;
  align-items:center!important;
  gap:4px!important;
  margin-left:auto!important;
  margin-right:8px!important;
  padding:3px!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.14)!important;
  border:1px solid rgba(255,255,255,.18)!important;
  box-shadow:none!important;
}

#tervion-assistant .ts-lang-switch button{
  all:unset!important;
  box-sizing:border-box!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:30px!important;
  height:25px!important;
  padding:0 8px!important;
  border-radius:999px!important;
  color:#fff!important;
  font-size:11px!important;
  font-weight:700!important;
  line-height:1!important;
  cursor:pointer!important;
  opacity:.78!important;
}

#tervion-assistant .ts-lang-switch button.active{
  background:#fff!important;
  color:#2457eb!important;
  opacity:1!important;
}

#tervion-assistant .ts-suggestions{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  margin:8px 0 14px!important;
}

#tervion-assistant .ts-suggestions button{
  all:unset!important;
  box-sizing:border-box!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:36px!important;
  max-width:100%!important;
  padding:9px 13px!important;
  border:1px solid #dbe3ef!important;
  border-radius:999px!important;
  background:#ffffff!important;
  color:#1e293b!important;
  font-size:12px!important;
  font-weight:500!important;
  line-height:1.2!important;
  cursor:pointer!important;
  white-space:normal!important;
  box-shadow:0 8px 18px rgba(15,23,42,.045)!important;
  transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease,background .15s ease!important;
}

#tervion-assistant .ts-suggestions button:hover{
  transform:translateY(-1px)!important;
  background:#f8fbff!important;
  border-color:#bfdbfe!important;
  box-shadow:0 10px 22px rgba(36,87,235,.09)!important;
}

#tervion-assistant .ts-upload-btn{
  all:unset!important;
  box-sizing:border-box!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:46px!important;
  height:46px!important;
  min-width:46px!important;
  border:1px solid #dbeafe!important;
  border-radius:16px!important;
  background:#ffffff!important;
  color:#2457eb!important;
  font-size:18px!important;
  cursor:pointer!important;
  box-shadow:0 8px 20px rgba(36,87,235,.12)!important;
  transition:transform .15s ease,background .15s ease,opacity .15s ease!important;
}

#tervion-assistant .ts-upload-btn:hover{
  background:#eff6ff!important;
  transform:translateY(-1px)!important;
}

#tervion-assistant .ts-upload-btn:disabled{
  opacity:.55!important;
  cursor:not-allowed!important;
  transform:none!important;
}

#tervion-assistant .ts-login-actions{
  display:flex!important;
  gap:8px!important;
  flex-wrap:wrap!important;
  margin-top:10px!important;
}

#tervion-assistant .ts-login-actions a{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:36px!important;
  padding:8px 13px!important;
  border-radius:999px!important;
  background:#2457eb!important;
  color:#ffffff!important;
  font-size:12px!important;
  font-weight:700!important;
  text-decoration:none!important;
  box-shadow:0 8px 18px rgba(36,87,235,.18)!important;
}

#tervion-assistant .ts-login-actions a.secondary{
  background:#ffffff!important;
  color:#2457eb!important;
  border:1px solid #bfdbfe!important;
  box-shadow:0 8px 18px rgba(15,23,42,.045)!important;
}

#tervion-assistant .ts-bubble{
  font-size:13.5px!important;
  line-height:1.58!important;
}

#tervion-assistant .ts-message.assistant .ts-bubble{
  border-radius:18px!important;
  border-bottom-left-radius:8px!important;
}

#tervion-assistant .ts-message.user .ts-bubble{
  border-radius:18px!important;
  border-bottom-right-radius:8px!important;
}

@media(max-width:520px){
  #tervion-assistant .ts-lang-switch{
    position:absolute!important;
    right:56px!important;
    top:18px!important;
    margin:0!important;
  }

  #tervion-assistant .ts-suggestions{
    gap:7px!important;
  }

  #tervion-assistant .ts-suggestions button{
    min-height:34px!important;
    padding:8px 11px!important;
    font-size:11.5px!important;
  }
  
}

#tervion-assistant .ts-order-pulse{
  animation:tsOrderPulse 1.1s ease-in-out 3;
}

@keyframes tsOrderPulse{
  0%{
    transform:scale(1);
  }
  50%{
    transform:scale(1.07);
    box-shadow:0 28px 70px rgba(34,197,94,.42),0 10px 26px rgba(15,23,42,.24);
  }
  100%{
    transform:scale(1);
  }
}

/* Tervion Canlı Destek v8 - Bekleme, Puanlama ve Profesyonel Mesaj Stilleri */
#tervion-assistant .ts-live-waiting-note{
  padding:11px 13px;
  border-top:1px solid #fde68a;
  border-bottom:1px solid #fde68a;
  background:linear-gradient(135deg,#fffbeb,#fff7ed);
  color:#92400e;
  font-size:12px;
  line-height:1.45;
}

#tervion-assistant .ts-live-waiting-note strong{
  display:block;
  color:#78350f;
  font-weight:900;
  margin-bottom:3px;
}

#tervion-assistant .ts-live-waiting-note span{
  display:block;
  color:#92400e;
}

#tervion-assistant .ts-form textarea:disabled{
  background:#f8fafc!important;
  color:#94a3b8!important;
  cursor:not-allowed!important;
}

#tervion-assistant .ts-form button:disabled{
  opacity:.45!important;
  cursor:not-allowed!important;
}

#tervion-assistant .ts-live-rating{
  border:1px solid #fde68a!important;
  background:linear-gradient(135deg,#ffffff,#fffbeb)!important;
}

#tervion-assistant .ts-live-rating-title{
  font-weight:900;
  margin-bottom:8px;
  color:#78350f;
}

#tervion-assistant .ts-live-stars{
  display:flex;
  gap:6px;
  align-items:center;
  flex-wrap:wrap;
}

#tervion-assistant .ts-live-stars button{
  all:unset;
  box-sizing:border-box;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:0;
  background:#fef3c7;
  color:#d97706;
  border-radius:10px;
  width:34px;
  height:34px;
  font-size:19px;
  line-height:1;
  cursor:pointer;
  transition:transform .15s ease,background .15s ease,box-shadow .15s ease;
  box-shadow:0 6px 14px rgba(217,119,6,.12);
}

#tervion-assistant .ts-live-stars button:hover{
  background:#fde68a;
  transform:translateY(-1px) scale(1.05);
  box-shadow:0 8px 18px rgba(217,119,6,.18);
}

#tervion-assistant .ts-live-stars button:active{
  transform:translateY(0) scale(.98);
}

#tervion-assistant .ts-message.assistant .ts-live-rating{
  max-width:92%;
}

@media(max-width:520px){
  #tervion-assistant .ts-live-stars button{
    width:32px;
    height:32px;
    font-size:18px;
  }
}
