/* Чат-помічник Kizuna — вікно справа. Токени успадковані з help.css/лендінга.
   Власний префікс kzc-, щоб нічого не чіпати в решті сторінки. */
.kzc{
  --kzc-gold:#DEAA01;
  --kzc-gold-soft:#fbf3d8;
  --kzc-dark:#12100F;
  --kzc-ink:#2b2723;
  --kzc-muted:#6b6560;
  --kzc-line:#ece7e1;
  --kzc-cream:#FFF7F3;
  position:fixed;
  right:24px;
  bottom:24px;
  z-index:9000;
  font-family:'Inter',system-ui,-apple-system,sans-serif;
}

/* згорнутий стан — широка плашка, НЕ кружечок */
.kzc-tab{
  display:none;
  align-items:center;
  gap:9px;
  background:var(--kzc-dark);
  color:#fff;
  border:none;
  border-radius:14px;
  padding:12px 16px;
  font-family:inherit;
  font-size:.875rem;
  font-weight:600;
  line-height:1;
  white-space:nowrap;
  cursor:pointer;
  box-shadow:0 10px 28px rgba(18,16,15,.26);
  transition:transform .18s ease,background .18s ease;
}
.kzc-tab:hover{background:#1d1a18;transform:translateY(-2px);}
.kzc-tab-ico{flex-shrink:0;color:var(--kzc-gold);}
.kzc-tab-txt{flex-shrink:0;}
.kzc-tab-dot{width:7px;height:7px;border-radius:50%;background:#4ade80;flex-shrink:0;}
.kzc.is-collapsed .kzc-tab{display:inline-flex;}
.kzc.is-collapsed .kzc-panel{display:none;}

/* вікно */
.kzc-panel{
  display:flex;
  flex-direction:column;
  width:368px;
  height:min(520px,calc(100vh - 120px));
  background:#fff;
  border:1px solid var(--kzc-line);
  border-radius:18px;
  box-shadow:0 24px 64px rgba(18,16,15,.22);
  overflow:hidden;
}

.kzc-head{
  display:flex;
  align-items:center;
  gap:12px;
  padding:16px 18px;
  background:var(--kzc-dark);
  color:#fff;
  flex-shrink:0;
}
.kzc-head-icon{
  width:36px;height:36px;border-radius:10px;flex-shrink:0;
  background:var(--kzc-gold);
  display:flex;align-items:center;justify-content:center;
  color:var(--kzc-dark);font-weight:800;font-size:.9375rem;
}
.kzc-head-t{flex:1;min-width:0;}
.kzc-head-title{font-size:.9375rem;font-weight:700;line-height:1.2;}
.kzc-head-sub{font-size:.75rem;color:rgba(255,255,255,.55);margin-top:2px;}
.kzc-min{
  background:none;border:none;color:rgba(255,255,255,.6);
  cursor:pointer;border-radius:10px;line-height:0;
  width:40px;height:40px;flex-shrink:0;
  display:flex;align-items:center;justify-content:center;
}
.kzc-min:hover{color:#fff;background:rgba(255,255,255,.1);}

.kzc-body{
  flex:1;
  overflow-y:auto;
  padding:18px;
  background:var(--kzc-cream);
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  gap:14px;
}
.kzc-msg{max-width:88%;font-size:.9375rem;line-height:1.55;white-space:pre-wrap;}
.kzc-msg-bot{
  align-self:flex-start;
  background:#fff;
  border:1px solid var(--kzc-line);
  border-radius:4px 14px 14px 14px;
  padding:12px 14px;
  color:var(--kzc-ink);
}
.kzc-msg-me{
  align-self:flex-end;
  background:var(--kzc-gold-soft);
  border:1px solid #f0e2b4;
  border-radius:14px 4px 14px 14px;
  padding:12px 14px;
  color:#4a3f14;
}
.kzc-src{display:flex;flex-wrap:wrap;gap:6px;align-self:flex-start;max-width:92%;}
.kzc-src a{
  font-size:.75rem;
  color:#8a6d00;
  background:#fff;
  border:1px solid var(--kzc-line);
  border-radius:999px;
  padding:4px 10px;
  text-decoration:none;
}
.kzc-src a:hover{border-color:var(--kzc-gold);background:var(--kzc-gold-soft);}

.kzc-typing{align-self:flex-start;display:flex;gap:4px;padding:12px 14px;}
.kzc-typing span{
  width:6px;height:6px;border-radius:50%;background:var(--kzc-muted);
  animation:kzc-blink 1.2s infinite;
}
.kzc-typing span:nth-child(2){animation-delay:.2s;}
.kzc-typing span:nth-child(3){animation-delay:.4s;}
@keyframes kzc-blink{0%,60%,100%{opacity:.25;}30%{opacity:1;}}

/* швидкі підказки */
.kzc-chips{display:flex;flex-wrap:wrap;gap:6px;align-self:flex-start;}
.kzc-chips button{
  font-family:inherit;font-size:.8125rem;
  background:#fff;border:1px solid var(--kzc-line);border-radius:999px;
  padding:6px 12px;color:var(--kzc-ink);cursor:pointer;
}
.kzc-chips button:hover{border-color:var(--kzc-gold);background:var(--kzc-gold-soft);}

.kzc-foot{
  flex-shrink:0;
  border-top:1px solid var(--kzc-line);
  background:#fff;
  padding:12px;
}
.kzc-form{display:flex;align-items:flex-end;gap:8px;}
.kzc-input{
  flex:1;min-width:0;resize:none;
  font-family:inherit;font-size:.9375rem;line-height:1.4;
  border:1px solid var(--kzc-line);border-radius:12px;
  padding:10px 12px;max-height:96px;color:var(--kzc-ink);
  outline:none;
}
.kzc-input:focus{border-color:var(--kzc-gold);box-shadow:0 0 0 3px var(--kzc-gold-soft);}
.kzc-send{
  flex-shrink:0;width:44px;height:44px;border:none;border-radius:12px;
  background:var(--kzc-gold);color:var(--kzc-dark);cursor:pointer;
  display:flex;align-items:center;justify-content:center;
}
.kzc-send:hover{filter:brightness(.95);}
.kzc-send:disabled{opacity:.45;cursor:default;}
.kzc-hint{
  margin-top:8px;font-size:.6875rem;color:var(--kzc-muted);text-align:center;
}
.kzc-hint button{
  background:none;border:none;padding:0;font:inherit;color:#8a6d00;
  text-decoration:underline;cursor:pointer;
}

/* форма контакту */
.kzc-lead{display:none;flex-direction:column;gap:8px;}
.kzc-lead.is-open{display:flex;}
.kzc-lead input{
  font-family:inherit;font-size:.875rem;
  border:1px solid var(--kzc-line);border-radius:10px;padding:9px 11px;outline:none;
}
.kzc-lead input:focus{border-color:var(--kzc-gold);}
.kzc-lead-row{display:flex;gap:8px;}
.kzc-lead-row button{
  flex:1;font-family:inherit;font-size:.875rem;font-weight:600;
  border:none;border-radius:10px;padding:10px;cursor:pointer;
}
.kzc-lead-send{background:var(--kzc-gold);color:var(--kzc-dark);}
.kzc-lead-cancel{background:#f4efe9;color:var(--kzc-muted);}
.kzc-hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0;}
.kzc-err{font-size:.75rem;color:#b4472f;}

@media(max-width:820px){
  /* контейнер розтягнутий між краями, ярлик тулиться праворуч —
     ширину панелі рахуємо від контейнера, а не у відсотках вікна:
     100vw включає смугу прокрутки й панель вилазила за лівий край. */
  .kzc{right:12px;left:12px;bottom:12px;display:flex;flex-direction:column;align-items:flex-end;}
  .kzc-panel{width:100%;max-width:420px;height:min(62vh,460px);}
  .kzc-tab{padding:13px 18px;font-size:.9375rem;}
}
