.kaur-stylist-root { position: fixed; right: 18px; bottom: 18px; z-index: 999999; font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif; }

.kaur-fab {
  width: 56px; height: 56px; border-radius: 999px;
  border: none; cursor: pointer;
  box-shadow: 0 10px 25px rgba(0,0,0,.18);
  font-weight: 700;
}

.kaur-panel {
  position: absolute; right: 0; bottom: 72px;
  width: 360px; max-width: calc(100vw - 36px);
  height: 520px; max-height: calc(100vh - 120px);
  background: #fff; border-radius: 18px;
  box-shadow: 0 20px 50px rgba(0,0,0,.22);
  display: flex; flex-direction: column;
  overflow: hidden;
}

.kaur-hidden { display: none; }

.kaur-header {
  padding: 12px 12px;
  display: flex; align-items: center; justify-content: space-between;
  border-bottom: 1px solid rgba(0,0,0,.08);
}

.kaur-title { line-height: 1.15; }
.kaur-sub { font-size: 12px; opacity: .7; margin-top: 2px; }

.kaur-close {
  border: none; background: transparent; font-size: 22px; cursor: pointer;
  width: 36px; height: 36px; border-radius: 10px;
}

.kaur-body {
  padding: 14px;
  overflow: auto;
  flex: 1;
  background: rgba(0,0,0,.02);
}

.kaur-msg { display: flex; margin: 10px 0; }
.kaur-user { justify-content: flex-end; }
.kaur-assistant { justify-content: flex-start; }

.kaur-bubble {
  max-width: 82%;
  padding: 10px 12px;
  border-radius: 14px;
  background: #fff;
  border: 1px solid rgba(0,0,0,.08);
  font-size: 14px;
  line-height: 1.35;
}

.kaur-user .kaur-bubble {
  background: rgba(0,0,0,.88);
  color: #fff;
  border: none;
}

.kaur-footer {
  padding: 10px;
  border-top: 1px solid rgba(0,0,0,.08);
  display: flex;
  gap: 8px;
  background: #fff;
}

.kaur-input {
  flex: 1;
  resize: none;
  padding: 10px 10px;
  border-radius: 12px;
  border: 1px solid rgba(0,0,0,.18);
  outline: none;
  font-size: 14px;
}

.kaur-send {
  border: none;
  padding: 0 14px;
  border-radius: 12px;
  cursor: pointer;
  font-weight: 700;
}
