#luma-panel{display:flex;align-items:center;gap:12px;padding:8px 18px;background:var(--lx-bg3);border-bottom:1px solid var(--lx-border);flex-shrink:0;color:var(--lx-text)}
#luma-avatar{position:relative;width:110px;height:126px;flex-shrink:0;overflow:hidden}
#luma-avatar canvas{display:block;width:100%;height:100%;pointer-events:none}
.luma-placeholder{height:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:6px;color:var(--lx-text2);font-size:11px}
.luma-monogram{display:grid;place-items:center;width:60px;height:60px;border-radius:50%;border:2px solid var(--lx-gold);background:var(--lx-bg2);color:var(--lx-purple);font-size:22px;font-weight:800}
.luma-loaded .luma-placeholder{display:none}
#luma-panel p{font-size:12px;margin:5px 0;color:var(--lx-text2)}
#luma-status{font-size:12px;color:var(--lx-purple);display:block}
#luma-avatar[data-state="thinking"]{opacity:.75}
@media(max-width:767px){#luma-panel{padding:4px 14px;gap:10px}#luma-avatar{width:70px;height:78px}.luma-monogram{width:40px;height:40px;font-size:17px}.luma-placeholder{font-size:9px}}
@media(prefers-reduced-motion:reduce){#ai-chat-win,#ai-chat-win *,#ai-bubble,#ai-bubble *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

#ai-chat-win .lx-tts-btn[hidden]{display:none!important}

/* Generated static portrait; replaced by the canvas when a real GLB loads. */
#luma-avatar{width:136px;height:154px}
.luma-portrait{display:block;width:100%;height:100%;object-fit:contain;object-position:center bottom}
@media(max-width:767px){#luma-avatar{width:94px;height:108px}}

/* Keep actionable microphone/audio errors above the chat overlay. */
#lx-ai-toast{z-index:100010;max-width:min(420px,calc(100vw - 32px));white-space:normal;line-height:1.7}
#luma-voice-preview{margin:4px 0;color:var(--lx-purple)}

/* A single full-body storefront companion, also used during conversations. */
#luma-launcher{position:fixed;right:max(16px,env(safe-area-inset-right));bottom:80px;width:180px;height:300px;padding:0;border:0;background:transparent;z-index:99990;cursor:pointer;display:flex;flex-direction:column;align-items:center;color:var(--lx-purple,#614980)}
#luma-launcher #luma-avatar{width:100%;height:270px;overflow:hidden}
.luma-launcher-caption{background:var(--lx-bg,#fff);border:1px solid var(--lx-border,#ded5e8);border-radius:20px;padding:6px 14px;font-size:12px;box-shadow:0 3px 12px #0001}
#luma-launcher:hover,#luma-launcher:focus-visible{animation-play-state:paused}
#luma-launcher:focus-visible{outline:2px solid var(--lx-purple,#614980);outline-offset:3px;border-radius:20px}
#luma-launcher.chat-open{animation:none;right:min(610px,calc(100vw - 190px));bottom:40px}
.luma-floating-enabled #ai-bubble{display:none!important}
@keyframes luma-roam{0%,20%,100%{transform:translate(0,0)}45%,55%{transform:translate(-65px,-18px)}80%{transform:translate(-20px,-5px)}}
@media(max-width:767px){#luma-launcher{width:115px;height:205px;right:8px;bottom:85px}#luma-launcher #luma-avatar{height:175px}.luma-launcher-caption{font-size:10px;padding:5px 9px}#luma-launcher.chat-open{visibility:hidden}@keyframes luma-roam{0%,20%,100%{transform:translate(0,0)}50%{transform:translate(-25px,-10px)}}}
@media(prefers-reduced-motion:reduce){#luma-launcher{animation:none}}

/* Dock the same avatar inside the conversation on every screen size. */
#luma-launcher.chat-open{visibility:hidden}
#luma-panel #luma-avatar{width:130px;height:195px}
@media(max-width:767px){#luma-panel #luma-avatar{width:95px;height:145px}}

.luma-trigger{display:flex;flex-direction:column;align-items:center;width:100%;height:100%;padding:0;border:0;background:transparent;color:inherit;cursor:grab;touch-action:none;user-select:none}
.luma-trigger img{-webkit-user-drag:none}
.luma-trigger:focus-visible,.luma-fold:focus-visible{outline:2px solid var(--lx-purple,#614980);outline-offset:3px;border-radius:16px}
.luma-fold{position:absolute;top:0;right:0;width:30px;height:30px;border:1px solid var(--lx-border,#ded5e8);border-radius:50%;background:var(--lx-bg,#fff);color:var(--lx-purple,#614980);font-size:22px;cursor:pointer}
.luma-fold[hidden]{display:none}
#luma-launcher.is-compact{width:58px;height:58px}
#luma-launcher.is-compact #luma-avatar{display:none}
#luma-launcher.is-compact .luma-launcher-caption{display:grid;place-items:center;width:58px;height:58px;padding:0;border-radius:50%;box-sizing:border-box;font-size:15px}
#luma-launcher.is-dragging .luma-trigger{cursor:grabbing}

#luma-launcher[hidden],#luma-panel[hidden]{display:none!important}
#luma-launcher:not(.is-compact){height:var(--luma-height,300px);width:calc(var(--luma-height,300px)*.6)}
#luma-launcher:not(.is-compact) #luma-avatar{height:calc(var(--luma-height,300px) - 30px)}
#luma-panel #luma-avatar{height:var(--luma-chat-height,180px);width:calc(var(--luma-chat-height,180px)*.65)}
