#leadingx-ai-root {
  --lx-primary: #18364b;
  --lx-accent: #f2c94c;
  --lx-red: #cf3e37;
  --lx-orange: #de7d2e;
  --lx-green: #6fac49;
  position: fixed;
  right: 24px;
  bottom: 22px;
  z-index: 999999;
  font-family: "Montserrat", "Helvetica Neue", Arial, sans-serif;
  color: #172c3b;
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
}
body.admin-bar #leadingx-ai-root { bottom: 22px; }
#leadingx-ai-root * { box-sizing: border-box; }
#leadingx-ai-root .screen-reader-text { position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0; }
.lx-launcher {
  min-width: 68px; height: 68px; padding: 0 22px 0 18px; border: 0; border-radius: 36px;
  background: linear-gradient(115deg, #c93636 0%, #df792e 26%, #d7aa28 48%, #5e9f42 72%, #176d83 100%);
  color: #fff; display: flex; align-items: center; gap: 11px; cursor: pointer;
  box-shadow: 0 14px 38px rgba(16, 44, 64, .28); transition: transform .2s ease, opacity .2s ease;
  font: 700 14px/1.15 "Montserrat", Arial, sans-serif; letter-spacing: .01em;
  text-shadow: 0 1px 3px rgba(16, 44, 64, .35);
}
.lx-launcher:hover { transform: translateY(-3px); filter: saturate(1.08) brightness(1.03); }
.lx-launcher:focus-visible, .lx-panel button:focus-visible, .lx-panel textarea:focus-visible { outline: 3px solid var(--lx-accent); outline-offset: 3px; }
.lx-launcher.is-hidden { opacity: 0; transform: scale(.72); pointer-events: none; }
.lx-key-icon { width: 29px; height: 29px; flex: 0 0 29px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; filter: drop-shadow(0 1px 2px rgba(16,44,64,.28)); }
.lx-panel {
  position: absolute; right: 0; bottom: 0; width: min(410px, calc(100vw - 32px)); height: min(690px, calc(100vh - 42px));
  background: #f5f8fa; border: 1px solid rgba(24,54,75,.12); border-radius: 22px; overflow: hidden;
  box-shadow: 0 24px 70px rgba(16,44,64,.24); display: grid; grid-template-rows: auto minmax(0,1fr) auto auto auto;
  opacity: 0; transform: translateY(18px) scale(.96); transform-origin: 100% 100%; pointer-events:none;
  transition: opacity .22s ease, transform .22s ease;
}
.lx-panel.is-open { opacity:1; transform:none; pointer-events:auto; }
.lx-header { position:relative; min-height:82px; padding:16px 54px 16px 18px; background:var(--lx-primary); color:#fff; display:flex; align-items:center; gap:12px; overflow:hidden; }
.lx-header::after { content:""; position:absolute; width:130px;height:130px;right:-52px;top:-78px;border:14px solid rgba(255,255,255,.07);transform:rotate(45deg); }
.lx-avatar { flex:0 0 46px;height:46px;border-radius:50%;background:#fff;color:var(--lx-primary);display:grid;place-items:center;font-size:24px;font-weight:300;box-shadow:inset 0 0 0 3px var(--lx-accent); }
.lx-header strong { display:block;font-size:15px;letter-spacing:.01em; }
.lx-header span { display:block;margin-top:3px;font-size:11px;color:rgba(255,255,255,.78); }
.lx-header span i { display:inline-block;width:7px;height:7px;margin-right:5px;border-radius:50%;background:#79bf50;box-shadow:0 0 0 3px rgba(121,191,80,.14); }
.lx-close { position:absolute;z-index:1;right:14px;top:14px;width:36px;height:36px;border:0;border-radius:50%;background:rgba(255,255,255,.1);color:#fff;font-size:27px;line-height:1;cursor:pointer; }
.lx-messages { overflow-y:auto;padding:18px 16px 8px;scrollbar-width:thin;scrollbar-color:#b9c5cc transparent; }
.lx-message { width:fit-content;max-width:88%;margin:0 0 12px;padding:11px 14px;border-radius:16px;font:400 13.5px/1.55 "Montserrat",Arial,sans-serif;overflow-wrap:anywhere;animation:lx-in .2s ease both; }
.lx-assistant { background:#fff;border:1px solid #e3e9ed;border-bottom-left-radius:5px;box-shadow:0 4px 12px rgba(24,54,75,.06); }
.lx-user { margin-left:auto;background:var(--lx-primary);color:#fff;border-bottom-right-radius:5px; }
.lx-message a { color:#1c668f;text-decoration:underline;text-underline-offset:2px;font-weight:700; }
.lx-suggestions { padding:2px 14px 10px;display:flex;gap:7px;overflow-x:auto;scrollbar-width:none; }
.lx-suggestions::-webkit-scrollbar { display:none; }
.lx-suggestions button { flex:0 0 auto;max-width:250px;border:1px solid #cbd7de;border-radius:18px;background:#fff;color:var(--lx-primary);padding:7px 11px;font:600 11.5px/1.3 "Montserrat",Arial,sans-serif;cursor:pointer;transition:.15s ease; }
.lx-suggestions button:hover { border-color:var(--lx-accent);background:#fff9df; }
.lx-form { margin:0 12px 8px;padding:7px 7px 7px 14px;border:1px solid #d8e1e6;border-radius:17px;background:#fff;display:flex;align-items:flex-end;gap:7px;box-shadow:0 4px 14px rgba(24,54,75,.05); }
.lx-form:focus-within { border-color:#7895a7;box-shadow:0 0 0 3px rgba(24,54,75,.08); }
.lx-form textarea { width:100%;min-height:34px;max-height:112px;padding:7px 0;border:0!important;outline:0!important;box-shadow:none!important;resize:none;background:transparent;color:#172c3b;font:400 13px/1.45 "Montserrat",Arial,sans-serif; }
.lx-form textarea::placeholder{color:#80919c}.lx-form textarea:disabled{opacity:.6}
.lx-form button { flex:0 0 38px;height:38px;border:0;border-radius:12px;background:var(--lx-accent);color:var(--lx-primary);display:grid;place-items:center;cursor:pointer;transition:.15s ease; }
.lx-form button:hover { transform:translateY(-1px);filter:brightness(1.03); }
.lx-form button svg { width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round; }
.lx-form.is-busy button { opacity:.55;pointer-events:none; }
.lx-panel footer { padding:0 12px 10px;text-align:center;color:#74858f;font:400 9.5px/1.3 "Montserrat",Arial,sans-serif; }
.lx-panel footer a { color:inherit;text-decoration:underline; }
.lx-typing { display:flex;gap:4px;padding:14px 16px; }
.lx-typing span { width:6px;height:6px;border-radius:50%;background:#8297a4;animation:lx-dot 1.1s infinite ease-in-out; }
.lx-typing span:nth-child(2){animation-delay:.15s}.lx-typing span:nth-child(3){animation-delay:.3s}
@keyframes lx-dot{0%,60%,100%{transform:translateY(0);opacity:.45}30%{transform:translateY(-4px);opacity:1}}
@keyframes lx-in{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}
@media (max-width: 600px) {
  #leadingx-ai-root { right:12px;bottom:12px; }
  .lx-launcher { min-width:0;max-width:calc(100vw - 24px);height:60px;padding:0 17px;font-size:12.5px; }
  .lx-key-icon { width:26px;height:26px;flex-basis:26px; }
  .lx-launcher-label { display:inline;white-space:nowrap; }
  .lx-panel { position:fixed;inset:8px;width:auto;height:auto;max-height:none;border-radius:18px; }
}
@media (prefers-reduced-motion: reduce) {
  .lx-panel,.lx-launcher,.lx-message,.lx-typing span{animation:none!important;transition:none!important}
}
