/* SiteBrain AI Chat v2.1.0 */
.sb-ai-root{ position:fixed; right:18px; bottom:18px; z-index:99999; font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial; }
.sb-ai-fab{
  width:56px; height:56px; border-radius:999px; border:none; cursor:pointer;
  background: linear-gradient(135deg,#0b3b2e,#0f2f22);
  box-shadow:0 12px 30px rgba(2,44,34,.25);
  display:flex; align-items:center; justify-content:center; gap:4px;
}
.sb-ai-fab__dot{ width:6px; height:6px; border-radius:999px; background:#ecfdf5; opacity:.9; }
.sb-ai-panel{
  width: min(380px, calc(100vw - 36px));
  height: min(560px, calc(100vh - 120px));
  background:#ffffff;
  border-radius:18px;
  box-shadow:0 18px 60px rgba(2,6,23,.22);
  overflow:hidden;
  margin-bottom:12px;
}
.sb-ai-head{
  padding:12px 12px;
  background: linear-gradient(135deg,#0b3b2e,#0f2f22);
  color:#ecfdf5;
  display:flex; align-items:center; justify-content:space-between;
}
.sb-ai-head__title{ display:flex; gap:10px; align-items:center; }
.sb-ai-badge{
  width:34px;height:34px;border-radius:12px;background:rgba(236,253,245,.14);
  display:flex;align-items:center;justify-content:center;font-weight:800;
}
.sb-ai-name{ font-weight:800; font-size:14px; line-height:1.1; }
.sb-ai-sub{ font-size:12px; opacity:.9; }
.sb-ai-close{
  width:34px;height:34px;border:none;border-radius:12px;cursor:pointer;
  background:rgba(236,253,245,.12);color:#ecfdf5;font-size:20px; line-height:0;
}
.sb-ai-messages{ padding:12px; height: calc(100% - 170px); overflow:auto; background:#f8fafc; }
.sb-ai-bubble{ max-width:82%; padding:10px 12px; border-radius:16px; margin:8px 0; font-size:14px; line-height:1.35; box-shadow:0 4px 16px rgba(2,6,23,.06);}
.sb-ai-bubble.user{ margin-left:auto; background:#0f172a; color:#fff; border-bottom-right-radius:6px;}
.sb-ai-bubble.ai{ margin-right:auto; background:#fff; color:#0f172a; border-bottom-left-radius:6px;}
.sb-ai-typing{ display:inline-flex; gap:4px; padding:10px 12px; border-radius:16px; background:#fff; box-shadow:0 4px 16px rgba(2,6,23,.06); }
.sb-ai-typing span{ width:6px;height:6px;border-radius:999px;background:#94a3b8; animation: sbDot 1s infinite ease-in-out; }
.sb-ai-typing span:nth-child(2){ animation-delay:.12s; }
.sb-ai-typing span:nth-child(3){ animation-delay:.24s; }
@keyframes sbDot{ 0%,80%,100%{ transform:translateY(0); opacity:.5;} 40%{ transform:translateY(-4px); opacity:1;} }

.sb-ai-quick{ padding:10px 12px; background:#ffffff; border-top:1px solid rgba(148,163,184,.25); display:flex; gap:8px; flex-wrap:wrap; }
.sb-ai-quick button{
  border:1px solid rgba(15,23,42,.14);
  background:#fff;
  border-radius:999px;
  padding:7px 10px;
  font-size:12px;
  cursor:pointer;
}

.sb-ai-form{ display:flex; gap:8px; padding:10px 12px; background:#ffffff; border-top:1px solid rgba(148,163,184,.25); }
.sb-ai-input{
  flex:1;
  resize:none;
  border:1px solid rgba(148,163,184,.4);
  border-radius:14px;
  padding:10px 10px;
  outline:none;
  font-size:14px;
}
.sb-ai-send{
  border:none; cursor:pointer;
  border-radius:14px;
  padding:0 14px;
  background:#0b3b2e;
  color:#ecfdf5;
  font-weight:700;
}
.sb-ai-footnote{ padding:8px 12px; font-size:11px; color:#64748b; background:#fff; border-top:1px solid rgba(148,163,184,.18); }

@media (max-width:480px){
  .sb-ai-root{ right:12px; bottom:12px; }
}
