:root{
  --dmInk:#0f172a;
  --dmMut:#64748b;
  --dmLine:#e2e8f0;
  --dmBg:#ffffff;
  --dmRose:#e11d48;
  --dmBlue:#1E2A78;
  --dmRad:16px;
}

.dmFaqChips{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:10px;
}

.dmFaqChip{
  border:1px solid var(--dmLine);
  background:#fff;
  border-radius:999px;
  padding:8px 12px;
  font-weight:800;
  font-size:13px;
  cursor:pointer;
}

.dmFaqChip:hover{
  border-color:rgba(225,29,72,.35);
}

.dmFaqChat{ position:fixed; right:8px; bottom:8px; z-index:9999; font-family:Inter,system-ui,Segoe UI,Arial; }
@media (max-width:520px){ .dmFaqChat{ right:12px; bottom:12px; } }

/* Floating button */
.dmFaqFab{
  display:flex; align-items:center; gap:10px;
  border:1px solid var(--dmLine);
  background:var(--dmBg);
  color:var(--dmInk);
  border-radius:999px;
  padding:10px 14px;
  font-weight:800;
  cursor:pointer;
}
.dmFaqFabDot{ width:10px; height:10px; border-radius:999px; background:var(--dmRose); }
.dmFaqFabTxt{ letter-spacing:.2px; }

/* Panel */
.dmFaqPanel{
  width:360px;
  max-width:calc(100vw - 24px);
  margin-bottom:6px;
  border:1px solid var(--dmLine);
  background:var(--dmBg);
  border-radius:var(--dmRad);
  overflow:hidden;
}
@media (max-width:520px){
  .dmFaqPanel{ width:calc(100vw - 24px); }
}

/* Header */
.dmFaqHead{
  display:flex; align-items:flex-start; justify-content:space-between;
  padding:12px 12px;
  border-bottom:1px solid var(--dmLine);
  background:#fff;
}

.dmFaqTitle{
  display:flex;
  align-items:center;
  gap:8px;
  letter-spacing:.2px;
  font-size:15px;
  font-weight:900;
}
.dmFaqSub{ margin-top:2px; font-size:12px; color:var(--dmMut); }
.dmFaqX{
  border:1px solid var(--dmLine);
  background:#fff;
  border-radius:10px;
  padding:6px 10px;
  cursor:pointer;
}

/* Body */
.dmFaqBody{
  height:340px;
  overflow:auto;
  padding:12px;
  background:#fff;
}

/* Bubbles */
.dmFaqRow{ display:flex; margin:10px 0; }
.dmFaqRow.user .dmFaqBubble{
  border-color:rgba(225,29,72,.20);
}
.dmFaqRow.bot .dmFaqBubble{
  border-color:rgba(30,42,120,.18);
}
.dmFaqBubble{
  max-width:88%;
  border:1px solid var(--dmLine);
  border-radius:16px;
  padding:10px 12px;
  font-size:14px;
  line-height:1.45;
  color:var(--dmInk);
  background:#fff;
}
.dmFaqRow.user .dmFaqBubble{
  border-color:rgba(225,29,72,.25);
}

/* Quick buttons inside chat */
.dmFaqQuick{
  display:block;
  width:100%;
  text-align:left;
  margin:8px 0 0;
  border:1px solid var(--dmLine);
  background:#fff;
  border-radius:14px;
  padding:10px 12px;
  cursor:pointer;
  font-weight:800;
}
.dmFaqQuick small{
  display:block;
  margin-top:4px;
  font-weight:600;
  color:var(--dmMut);
  line-height:1.2;
}
/* Footer input */
.dmFaqFoot{
  display:flex; gap:8px;
  padding:10px;
  border-top:1px solid var(--dmLine);
  background:#fff;
}
.dmFaqInput{
  flex:1;
  border:1px solid var(--dmLine);
  border-radius:12px;
  padding:10px 12px;
  outline:none;
}
.dmFaqInput:focus{ border-color:rgba(30,42,120,.45); }
.dmFaqSend{
  border:1px solid var(--dmLine);
  background:#fff;
  border-radius:12px;
  padding:10px 12px;
  font-weight:900;
  cursor:pointer;
}
.dmFaqSend:hover{ border-color:rgba(225,29,72,.35); }