:root{
  --acat-accent: #16a34a;
  --acat-bg: #111827;
  --acat-panel: #0b1220;
  --acat-text: #e5e7eb;
  --acat-muted: #93a3b8;
  --acat-radius: 16px;
  --acat-shadow: 0 10px 25px rgba(0,0,0,.35);
}
.acat-chatbot-root{ position:fixed !important; z-index:2147483647 !important; bottom:20px; left:20px; }
.acat-chatbot-root.right{ right:20px; left:auto; } right:20px; left:auto; }

.acat-fab{ z-index:2147483647 !important; z-index:2147483647;
  display:flex; align-items:center; justify-content:center;
  width:56px; height:56px; border-radius:9999px; cursor:pointer;
  background:var(--acat-accent); color:white; box-shadow:var(--acat-shadow);
  border:none; font-weight:700; font-size:20px;
}
.acat-fab:hover{ filter:brightness(1.05); transform:translateY(-1px); }
.acat-panel{ z-index:2147483647 !important; position:fixed !important; z-index:2147483647;
  position:fixed; bottom:90px; left:20px; width:340px; max-width:92vw;
  background:var(--acat-panel); color:var(--acat-text); border-radius:var(--acat-radius);
  border:1px solid rgba(255,255,255,.08); box-shadow:var(--acat-shadow);
  display:none; overflow:hidden;
}
.acat-panel.right{ right:20px; left:auto; }
.acat-header{ padding:14px 16px; background:linear-gradient(135deg, rgba(22,163,74,.25), rgba(22,163,74,.05)); border-bottom:1px solid rgba(255,255,255,.06); }
.acat-title{ margin:0; font-size:16px; font-weight:700; }
.acat-body{ display:grid; grid-template-columns:1fr; max-height:420px; overflow:auto; }
.acat-list{ margin:0; padding:8px; list-style:none; }
.acat-list li{ padding:10px 12px; border-radius:12px; background:#0f172a; margin:8px; cursor:pointer; border:1px solid rgba(255,255,255,.06); }
.acat-list li:hover{ background:#111b33; }
.acat-answer{ padding:12px 14px; font-size:14px; color:var(--acat-text); border-top:1px dashed rgba(255,255,255,.1); display:none; }
.acat-foot{ padding:10px 12px; font-size:12px; color:var(--acat-muted); border-top:1px solid rgba(255,255,255,.06); }
.acat-close{ background:none; border:none; color:#fff; font-size:16px; cursor:pointer; float:right; }
a.acat-link{ color:#9dd2ff; text-decoration:underline; }
@media (max-width:480px){
  .acat-panel{ z-index:2147483647 !important; position:fixed !important; z-index:2147483647; width:92vw; }
}

/* Greeting bubble */
.acat-greet{ position:fixed !important; bottom:86px; left:20px; max-width:240px; background:#0f172a; color:var(--acat-text);
  border:1px solid rgba(255,255,255,.08); box-shadow:var(--acat-shadow); padding:10px 12px; border-radius:12px; display:none; z-index:2147483647 !important; }
.acat-greet.right{ right:20px; left:auto; }
.acat-greet:after{ content:''; position:absolute; bottom:-8px; left:16px; border:8px solid transparent; border-top-color:#0f172a; }

/* Top banner announce */
.acat-announce{ padding:8px 12px; font-size:12px; background:rgba(22,163,74,.15); border-bottom:1px solid rgba(255,255,255,.06); }

/* CTA buttons row */
.acat-ctas{ display:flex; flex-wrap:wrap; gap:8px; padding:10px 12px; border-top:1px solid rgba(255,255,255,.06); }
.acat-ctas a{ background:var(--acat-accent); color:#fff; text-decoration:none; padding:8px 10px; border-radius:10px; font-weight:700; font-size:12px; box-shadow:var(--acat-shadow); }

/* Search + lang toggle */
.acat-tools{ display:flex; gap:8px; padding:10px 12px; border-bottom:1px solid rgba(255,255,255,.06); }
.acat-search{ flex:1; background:#0b1530; border:1px solid rgba(255,255,255,.08); color:#fff; border-radius:10px; padding:8px 10px; }
.acat-lang{ display:flex; gap:6px; }
.acat-lang button{ background:#0b1530; color:#fff; border:1px solid rgba(255,255,255,.08); padding:8px 10px; border-radius:10px; cursor:pointer; }
.acat-lang button.active{ background:var(--acat-accent); border-color:transparent; }

/* Header logo */
.acat-header .acat-logo{ width:24px; height:24px; border-radius:999px; object-fit:cover; margin-right:8px; vertical-align:middle; }
.acat-header .title-row{ display:flex; align-items:center; gap:8px; }
