.luna-fab{z-index:50;background:var(--card);border:1px solid var(--violet-border);cursor:pointer;border-radius:999px;align-items:center;gap:10px;padding:10px 18px 10px 10px;transition:transform .28s cubic-bezier(.16,1,.3,1),box-shadow .28s,border-color .28s;display:inline-flex;position:fixed;bottom:24px;right:24px;box-shadow:0 8px 24px -8px #8b5cf652,inset 0 0 0 1px #8b5cf614}.luna-fab:hover{border-color:var(--violet-border-hover);transform:translateY(-2px);box-shadow:0 16px 32px -8px #8b5cf67a,inset 0 0 0 1px #8b5cf629}.luna-fab-label{color:var(--foreground);letter-spacing:.01em;font-size:13px;font-weight:600}.luna-fab-pulse{background:var(--violet-text);width:8px;height:8px;box-shadow:0 0 12px var(--violet-text);border-radius:999px;animation:2.2s ease-in-out infinite luna-fab-pulse;position:absolute;top:8px;right:14px}@keyframes luna-fab-pulse{0%,to{opacity:.9;transform:scale(1)}50%{opacity:.4;transform:scale(1.5)}}.luna-panel{z-index:50;flex-direction:column;width:380px;max-width:calc(100vw - 32px);height:580px;max-height:calc(100vh - 48px);animation:.28s cubic-bezier(.16,1,.3,1) luna-panel-in;display:flex;position:fixed;bottom:24px;right:24px;overflow:hidden;padding:0!important}@keyframes luna-panel-in{0%{opacity:0;transform:translateY(12px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.luna-panel-header{border-bottom:1px solid var(--border);background:radial-gradient(90% 80% at 50% 0%,var(--violet-pill-bg),transparent 70%),transparent;justify-content:space-between;align-items:center;padding:16px 18px;display:flex}.luna-panel-messages{scroll-behavior:smooth;flex-direction:column;flex:1;gap:12px;padding:18px;display:flex;overflow-y:auto}.luna-panel-messages::-webkit-scrollbar{width:6px}.luna-panel-messages::-webkit-scrollbar-thumb{background:var(--violet-pill-border);border-radius:3px}.luna-msg{display:flex}.luna-msg--user{justify-content:flex-end}.luna-msg--assistant{justify-content:flex-start}.luna-msg-bubble{white-space:pre-wrap;word-wrap:break-word;border-radius:14px;max-width:85%;padding:10px 14px;font-size:13.5px;line-height:1.55}.luna-msg--user .luna-msg-bubble{background:var(--cta-primary-bg);color:var(--cta-primary-text);border-bottom-right-radius:4px}.luna-msg--assistant .luna-msg-bubble{background:var(--violet-pill-bg);color:var(--foreground);border:1px solid var(--violet-pill-border);border-bottom-left-radius:4px}.luna-typing{letter-spacing:2px;color:var(--violet-text);animation:1.4s ease-in-out infinite luna-typing-dots;display:inline-block}@keyframes luna-typing-dots{0%,to{opacity:.4}50%{opacity:1}}.luna-cursor{color:var(--violet-text);margin-left:2px;animation:1s steps(2,end) infinite luna-cursor-blink;display:inline-block}@keyframes luna-cursor-blink{0%,50%{opacity:1}51%,to{opacity:0}}.luna-empty{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;padding:20px 16px;display:flex}.luna-quick-prompt{text-align:left;background:var(--cta-ghost-bg);border:1px solid var(--violet-pill-border);width:100%;color:var(--muted-foreground);cursor:pointer;border-radius:10px;padding:9px 13px;font-size:12.5px;transition:background .22s,border-color .22s,color .22s}.luna-quick-prompt:hover{background:var(--violet-pill-bg);border-color:var(--violet-border-hover);color:var(--foreground)}.luna-panel-input{border-top:1px solid var(--border);background:var(--card);align-items:center;gap:8px;padding:12px 14px;display:flex}.luna-input{background:var(--cta-ghost-bg);border:1px solid var(--violet-pill-border);height:38px;color:var(--foreground);border-radius:10px;flex:1;padding:0 14px;font-size:13.5px;transition:border-color .22s,background .22s}.luna-input::placeholder{color:var(--muted-foreground)}.luna-input:focus{border-color:var(--violet-border-hover);background:var(--violet-pill-bg);outline:none}.luna-input:disabled{opacity:.6;cursor:not-allowed}.luna-send{background:var(--cta-primary-bg);width:38px;height:38px;color:var(--cta-primary-text);cursor:pointer;border:1px solid #0000;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;transition:background .22s,transform .22s;display:inline-flex}.luna-send:hover:not(:disabled){background:var(--cta-primary-bg-hover);transform:translateY(-1px)}.luna-send:disabled{opacity:.4;cursor:not-allowed}@media(max-width:640px){.luna-panel{border-radius:16px 16px 0 0;width:100vw;max-width:100vw;height:92vh;bottom:0;left:0;right:0}.luna-fab{bottom:16px;right:16px}}.luna-link{color:#a78bfa;text-underline-offset:2px;font-weight:500;text-decoration:underline}.luna-link:hover{color:#c4b5fd}
