/* ITBrAIn — səsli AI köməkçi widget-i */
.naigar {
  --naigar-accent: #5b03a3;
  --naigar-green: #8eff01;
  --naigar-bg: #ffffff;
  --naigar-text: #1a1a1a;
  --naigar-muted: #6d6e76;
  --naigar-line: #f1ebf6;
  position: fixed;
  right: 20px;
  bottom: 20px;
  z-index: 90;
  font-family: "Poppins", sans-serif;
}

[data-theme="dark"] .naigar {
  --naigar-bg: #141019;
  --naigar-text: #f5f5f5;
  --naigar-muted: #a0a0a0;
  --naigar-line: #221a2e;
}

.naigar * { transition: none; }

.naigar-launcher {
  display: flex;
  flex-direction: row-reverse;
  align-items: center;
  gap: 10px;
  padding: 0;
  background: none;
  border: none;
  cursor: pointer;
  margin-left: auto;
}

.naigar-bubble {
  background: var(--naigar-bg);
  color: var(--naigar-text);
  font-size: 13px;
  line-height: 1.3;
  padding: 10px 14px;
  border-radius: 14px 14px 4px 14px; /* quyruq avatara tərəf */
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
  max-width: 190px;
  text-align: left;
}

.naigar-bubble b { color: var(--naigar-accent); }
[data-theme="dark"] .naigar-bubble b { color: var(--naigar-green); }
.naigar.is-open .naigar-bubble { display: none; }

.naigar-avatar {
  --level: 0;
  position: relative;
  flex-shrink: 0;
  width: 64px;
  height: 64px;
  border-radius: 50%;
  padding: 3px;
  background: conic-gradient(from 0deg, var(--naigar-accent), var(--naigar-green), var(--naigar-accent));
  box-shadow: 0 0 0 calc(var(--level) * 14px) rgba(140, 0, 255, 0.18), 0 8px 24px rgba(91, 3, 163, 0.35);
}

.naigar-avatar img {
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  object-fit: cover;
  background: #e7dfe5;
}

.naigar-launcher .naigar-avatar { animation: naigar-float 3s ease-in-out infinite; }

.naigar-avatar--lg { width: 56px; height: 56px; }

.naigar-avatar.is-speaking { animation: naigar-spin 2.4s linear infinite; }
.naigar-avatar.is-speaking img { animation: naigar-spin 2.4s linear infinite reverse; }

@keyframes naigar-float { 50% { transform: translateY(-4px); } }
@keyframes naigar-spin { to { transform: rotate(360deg); } }

.naigar-panel {
  display: flex;
  flex-direction: column;
  width: 360px;
  max-width: calc(100vw - 32px);
  height: 480px;
  max-height: calc(100vh - 120px);
  margin-bottom: 12px;
  background: var(--naigar-bg);
  color: var(--naigar-text);
  border-radius: 20px;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.25);
  overflow: hidden;
}

.naigar-panel[hidden] { display: none; }

.naigar-head {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 14px 16px;
  background: linear-gradient(135deg, #27154c, #5b03a3);
  color: #fff;
}

.naigar-title { display: flex; flex-direction: column; flex: 1; min-width: 0; }
.naigar-title strong { font-size: 16px; }
.naigar-title span { font-size: 12px; opacity: 0.8; }

.naigar-close {
  background: none;
  border: none;
  color: #fff;
  font-size: 26px;
  line-height: 1;
  cursor: pointer;
}

.naigar-log {
  flex: 1;
  overflow-y: auto;
  padding: 14px 16px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.naigar-hint { font-size: 13px; color: var(--naigar-muted); text-align: center; margin: auto 0; }

.naigar-line {
  max-width: 85%;
  padding: 8px 12px;
  border-radius: 14px;
  font-size: 13.5px;
  line-height: 1.45;
}

.naigar-line--bot { align-self: flex-start; background: var(--naigar-line); border-bottom-left-radius: 4px; }
.naigar-line--user { align-self: flex-end; background: var(--naigar-accent); color: #fff; border-bottom-right-radius: 4px; }

.naigar-status {
  padding: 6px 16px;
  font-size: 12px;
  color: var(--naigar-muted);
  text-align: center;
}

.naigar-controls {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 12px 14px;
  border-top: 1px solid var(--naigar-line);
}

.naigar-mic {
  flex-shrink: 0;
  width: 46px;
  height: 46px;
  border-radius: 50%;
  border: none;
  background: var(--naigar-accent);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}

.naigar-mic.is-on {
  background: #e11d48;
  box-shadow: 0 0 0 6px rgba(225, 29, 72, 0.18);
}

.naigar-form {
  flex: 1;
  display: flex;
  align-items: center;
  background: var(--naigar-line);
  border-radius: 999px;
  padding: 4px 4px 4px 14px;
}

.naigar-form input {
  flex: 1;
  min-width: 0;
  border: none;
  outline: none;
  background: transparent;
  color: var(--naigar-text);
  font-size: 13.5px;
}

.naigar-form button {
  width: 34px;
  height: 34px;
  border-radius: 50%;
  border: none;
  background: var(--naigar-accent);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}

@media (max-width: 640px) {
  .naigar { right: 12px; bottom: 12px; }
  .naigar-bubble { display: none; }
  .naigar-avatar { width: 56px; height: 56px; }
}
