:root{--lsa-accent:#0a73e9;--lsa-safe-bottom:96px}
#lsa-root{position:relative;z-index:9999}
.lsa-root *{box-sizing:border-box}
.lsa-fab{position:fixed;z-index:9998;bottom:calc(var(--lsa-safe-bottom) + env(safe-area-inset-bottom));display:flex;align-items:center;gap:9px;min-width:58px;height:58px;padding:0 16px;border:0;border-radius:999px;background:var(--lsa-accent);color:#fff;box-shadow:0 14px 34px rgba(0,0,0,.28);font:700 14px/1 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,opacity .18s ease}
.lsa-root[data-side="left"] .lsa-fab{left:16px}.lsa-root[data-side="right"] .lsa-fab{right:16px}
.lsa-fab:hover{transform:translateY(-2px);box-shadow:0 18px 38px rgba(0,0,0,.32)}
.lsa-fab svg{width:25px;height:25px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}
.lsa-panel{position:fixed;z-index:9999;bottom:calc(var(--lsa-safe-bottom) + 72px + env(safe-area-inset-bottom));width:min(390px,calc(100vw - 24px));height:min(620px,68vh);display:none;grid-template-rows:auto 1fr auto;background:rgba(255,255,255,.97);color:#0d1420;border:1px solid rgba(20,30,45,.12);border-radius:24px;box-shadow:0 24px 70px rgba(0,0,0,.28);overflow:hidden;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif}
.lsa-root[data-side="left"] .lsa-panel{left:12px}.lsa-root[data-side="right"] .lsa-panel{right:12px}.lsa-panel.is-open{display:grid}
.lsa-head{display:flex;align-items:center;gap:12px;padding:14px 14px 12px;border-bottom:1px solid rgba(20,30,45,.1);background:rgba(250,252,255,.96)}
.lsa-mark{width:42px;height:42px;border-radius:14px;background:color-mix(in srgb,var(--lsa-accent) 12%,#fff);color:var(--lsa-accent);display:grid;place-items:center;font-weight:900}
.lsa-title{min-width:0;flex:1}.lsa-title strong{display:block;font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lsa-title span{display:block;margin-top:2px;font-size:12px;color:#697386}
.lsa-close{width:38px;height:38px;border:0;border-radius:12px;background:#f2f5f9;color:#334155;font-size:24px;line-height:1;cursor:pointer}
.lsa-body{overflow:auto;padding:14px;overscroll-behavior:contain;background:linear-gradient(180deg,#f8fbff 0,#fff 40%)}
.lsa-msg{display:flex;margin:0 0 10px}.lsa-msg.user{justify-content:flex-end}.lsa-bubble{max-width:88%;padding:11px 13px;border-radius:16px;font-size:14px;line-height:1.55;overflow-wrap:anywhere}.lsa-msg.bot .lsa-bubble{background:#fff;border:1px solid #e3e8ef;box-shadow:0 3px 12px rgba(15,23,42,.05)}.lsa-msg.user .lsa-bubble{background:var(--lsa-accent);color:#fff}.lsa-bubble a{color:var(--lsa-accent);font-weight:700}.lsa-msg.user .lsa-bubble a{color:#fff;text-decoration:underline}
.lsa-source{display:block;margin-top:8px;font-size:12px}.lsa-source a{font-weight:700}
.lsa-typing{display:inline-flex;gap:5px;padding:11px 13px;border:1px solid #e3e8ef;border-radius:16px;background:#fff}.lsa-typing i{width:6px;height:6px;border-radius:50%;background:#9aa4b2;animation:lsaBlink 1s infinite}.lsa-typing i:nth-child(2){animation-delay:.15s}.lsa-typing i:nth-child(3){animation-delay:.3s}@keyframes lsaBlink{0%,60%,100%{opacity:.35}30%{opacity:1}}
.lsa-foot{padding:10px 12px 12px;border-top:1px solid rgba(20,30,45,.1);background:#fff}.lsa-chips{display:flex;gap:7px;overflow:auto;padding:0 0 9px;scrollbar-width:none}.lsa-chips::-webkit-scrollbar{display:none}.lsa-chip{flex:0 0 auto;border:1px solid #dfe5ed;background:#f7f9fc;color:#263244;border-radius:999px;padding:8px 11px;font-size:12px;font-weight:700;cursor:pointer}.lsa-form{display:grid;grid-template-columns:1fr 44px;gap:8px}.lsa-input{width:100%;height:44px;border:1px solid #dbe2ea;border-radius:14px;padding:0 13px;background:#f8fafc;color:#111827;outline:none;font:500 14px/1.2 inherit}.lsa-input:focus{border-color:var(--lsa-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--lsa-accent) 14%,transparent)}.lsa-send{width:44px;height:44px;border:0;border-radius:14px;background:var(--lsa-accent);color:#fff;display:grid;place-items:center;cursor:pointer}.lsa-send svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.lsa-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:9px}.lsa-action{font-size:12px;font-weight:750;padding:7px 10px;border-radius:999px;background:#edf5ff;color:#075ebf;text-decoration:none}
@media (prefers-color-scheme:dark){html:not([data-theme="light"]) .lsa-panel{background:rgba(15,20,30,.97);color:#f3f5f8;border-color:rgba(255,255,255,.1)}html:not([data-theme="light"]) .lsa-head,html:not([data-theme="light"]) .lsa-foot{background:#111722;border-color:rgba(255,255,255,.08)}html:not([data-theme="light"]) .lsa-body{background:linear-gradient(180deg,#101722 0,#0e141d 40%)}html:not([data-theme="light"]) .lsa-msg.bot .lsa-bubble,html:not([data-theme="light"]) .lsa-typing{background:#171e29;border-color:#2a3443;color:#eef2f7}html:not([data-theme="light"]) .lsa-close,html:not([data-theme="light"]) .lsa-chip,html:not([data-theme="light"]) .lsa-input{background:#171e29;color:#eef2f7;border-color:#2a3443}html:not([data-theme="light"]) .lsa-title span{color:#9ba7b7}}
html[data-theme="dark"] .lsa-panel{background:rgba(15,20,30,.97);color:#f3f5f8;border-color:rgba(255,255,255,.1)}html[data-theme="dark"] .lsa-head,html[data-theme="dark"] .lsa-foot{background:#111722;border-color:rgba(255,255,255,.08)}html[data-theme="dark"] .lsa-body{background:linear-gradient(180deg,#101722 0,#0e141d 40%)}html[data-theme="dark"] .lsa-msg.bot .lsa-bubble,html[data-theme="dark"] .lsa-typing{background:#171e29;border-color:#2a3443;color:#eef2f7}html[data-theme="dark"] .lsa-close,html[data-theme="dark"] .lsa-chip,html[data-theme="dark"] .lsa-input{background:#171e29;color:#eef2f7;border-color:#2a3443}html[data-theme="dark"] .lsa-title span{color:#9ba7b7}
@media(max-width:620px){.lsa-fab{width:56px;min-width:56px;height:56px;padding:0;justify-content:center}.lsa-fab .lsa-fab-label{display:none}.lsa-panel{width:calc(100vw - 20px);left:10px!important;right:10px!important;height:min(590px,70vh);border-radius:22px}.lsa-bubble{max-width:92%;font-size:13.5px}}
@media(max-height:620px){.lsa-panel{height:58vh}}
