.has-sites-assistant{padding-bottom:calc(92px + env(safe-area-inset-bottom))}
.sites-assistant-launcher img{border-radius:50%;object-fit:cover;background:#dbe8ff}
.sites-assistant-panel{overflow:auto;overflow-wrap:anywhere;box-sizing:border-box}
.sites-assistant-panel .clementine-panel-header{flex-shrink:0}
.sites-assistant-panel .clementine-panel-header>img{border-radius:50%;object-fit:cover;background:#dbe8ff}
.sites-assistant-content{flex:1;min-height:0;overflow:auto;padding:14px;overscroll-behavior:contain;background:#fffbf5}
.sites-assistant-notice{font-size:12px;line-height:1.5;padding:10px 12px;margin:0 0 14px;background:#e9f8fa;border:1px solid #cadfe4;border-radius:10px;color:#10214a}
.sites-assistant-messages{display:flex;flex-direction:column;gap:12px}
.sites-assistant-message{max-width:100%;padding:12px 14px;background:#fff;border:1px solid #dbe9ec;border-radius:14px;color:#10214a}
.sites-assistant-message-user{background:#e9f8fa;margin-left:24px}
.sites-assistant-author{font-size:11px;color:#466278;display:block}
.sites-assistant-message p{white-space:pre-wrap;margin:6px 0;font-size:14px;line-height:1.6}
.sites-assistant-message a{display:block;color:#2553cb;font-weight:600;min-height:44px;align-content:center;text-underline-offset:3px}
.sites-assistant-topics{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.sites-assistant-topics button{border:1px solid #cadfe4;border-radius:99px;background:#e9f8fa;color:#10214a;padding:8px 14px;font:600 13px/1.3 system-ui,sans-serif;min-height:44px;cursor:pointer}
.sites-assistant-composer{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 8px;flex-shrink:0;padding:10px 14px;background:#fff;border-top:1px solid #dbe9ec;margin:0}
.sites-assistant-composer label{grid-column:1/-1;font-size:12px;font-weight:700;color:#10214a}
.sites-assistant-input-scope{grid-column:1/-1;margin:0;font-size:11px;line-height:1.45;color:#466278}
.sites-assistant-composer input{width:100%;min-width:0;min-height:44px;box-sizing:border-box;padding:10px;border:1px solid #98aebe;border-radius:8px;font:16px/1.3 system-ui,sans-serif;color:#10214a;background:#fff}
.sites-assistant-composer button{border:0;border-radius:8px;padding:8px 12px;background:#10214a;color:#fff;min-height:44px;font:600 12px/1.3 system-ui,sans-serif;max-width:115px;cursor:pointer}
.sites-assistant-composer input:focus-visible{outline:3px solid #315ff1;outline-offset:2px}
.sites-assistant-error{grid-column:1/-1;color:#8b2634;font-size:12px;margin:2px 0}
.sites-assistant-error[hidden]{display:none}
.sites-assistant-composer input[aria-invalid=true]{border:2px solid #8b2634}
.sites-assistant-footer{align-items:center;gap:10px;flex-wrap:wrap;padding:4px 14px}
.sites-assistant-footer .clementine-full{flex:1;text-align:left;justify-content:flex-start;font-size:12px;line-height:1.4;min-width:140px}
.sites-assistant-footer .clementine-reset{font-size:11px;text-decoration:underline;padding:0;line-height:1.4;color:#466278}
.sites-assistant-memory{flex-shrink:0;background:#fff;margin:0;padding:0 14px 8px;font-size:10px;line-height:1.5;color:#466278}
.sites-assistant-status{margin:0;padding:0 14px;background:#fff;font-size:11px;color:#466278;flex-shrink:0}
.sites-assistant-status:empty{display:none}
.sites-assistant-panel.sites-assistant-small-viewport .sites-assistant-content{flex:none;max-height:150px;min-height:70px}
@media(max-width:600px){.sites-assistant-footer{gap:6px}.sites-assistant-composer{padding:8px 12px}.sites-assistant-content{padding:12px}.sites-assistant-panel .clementine-panel-header strong{font-size:14px}.sites-assistant-footer .clementine-full{min-width:125px}}
@media(prefers-reduced-motion:reduce){.sites-assistant-panel *{scroll-behavior:auto}}

/* Keep the demo helper available without covering an event action on desktop. */
.sites-assistant-launcher{width:48px;height:48px;min-width:44px;min-height:44px;justify-content:center;padding:3px;border-width:1px;box-shadow:0 3px 12px #10214a18}
.sites-assistant-launcher img{width:40px;height:40px}
.sites-assistant-launcher>span{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
