#ln-chat-root{--ln-p: #570df8;position:fixed;right:1rem;bottom:1rem;z-index:60;font-size:14px}.ln-chat-launcher{position:relative;width:3.25rem;height:3.25rem;border-radius:9999px;border:none;cursor:pointer;font-size:1.4rem;background:var(--ln-p);color:#fff;box-shadow:0 4px 14px #00000040}.ln-badge{position:absolute;top:-.35rem;right:-.35rem;min-width:1.15rem;height:1.15rem;padding:0 .25rem;display:flex;align-items:center;justify-content:center;border-radius:9999px;background:#ef4444;color:#fff;font-size:.7rem;font-weight:700;line-height:1;box-shadow:0 1px 4px #00000059}.ln-toast{position:absolute;right:0;bottom:4.4rem;z-index:61;max-width:min(82vw,300px);background:#1f2937;color:#f3f4f6;font-size:.8rem;padding:.5rem .7rem;border-radius:.6rem;box-shadow:0 8px 24px #00000059;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ln-chat-panel{position:absolute;right:0;bottom:4rem;width:min(92vw,460px);height:min(78vh,620px);display:flex;flex-direction:column;background:#fff;color:#1f2937;border:1px solid #e5e7eb;border-radius:.75rem;box-shadow:0 12px 40px #00000040;overflow:hidden}.ln-chat-panel[hidden]{display:none}.ln-chat-header{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:var(--ln-p);color:#fff}.ln-dot{width:.6rem;height:.6rem;border-radius:9999px;background:#f87171}.ln-dot.online{background:#4ade80}.ln-title{font-weight:700}.ln-ctx-banner{font-size:.72rem;background:#fff3;padding:.1rem .4rem;border-radius:.25rem}.ln-spacer{flex:1}.ln-me{font-size:.72rem;cursor:default;opacity:.95}.ln-me[title]:hover{text-decoration:underline;cursor:pointer}.ln-close{background:transparent;border:none;color:#fff;cursor:pointer;font-size:1rem}.ln-flash{background:#fde68a;color:#78350f;font-size:.75rem;padding:.25rem .75rem;text-align:center}.ln-typing{font-size:.72rem;color:#6b7280;padding:.15rem .6rem;background:#f8fafc}.ln-rename-overlay{position:absolute;inset:0;z-index:70;display:flex;align-items:center;justify-content:center;background:#0f172a73;backdrop-filter:blur(2px);padding:1rem}.ln-rename-overlay[hidden]{display:none}.ln-rename-modal{width:100%;max-width:18rem;background:#fff;color:#1f2937;border-radius:.75rem;box-shadow:0 20px 50px #0006;padding:1rem;display:flex;flex-direction:column;gap:.6rem}.ln-rename-title{font-weight:700;font-size:.95rem}.ln-rename-input{border:1px solid #d1d5db;border-radius:.45rem;padding:.5rem .65rem;font-size:.9rem;background:#f9fafb;color:#1f2937;width:100%}.ln-rename-input:focus{outline:2px solid var(--ln-p);outline-offset:1px;border-color:var(--ln-p)}.ln-rename-hint{font-size:.68rem;color:#9ca3af}.ln-rename-actions{display:flex;gap:.5rem;justify-content:flex-end}.ln-rename-actions button{border-radius:.45rem;padding:.4rem .9rem;font-size:.82rem;cursor:pointer;border:1px solid #e5e7eb;background:#fff;color:#374151}.ln-rename-save{background:var(--ln-p);border-color:var(--ln-p);color:#fff;font-weight:600}.ln-rename-save:hover{filter:brightness(1.08)}.ln-rename-cancel:hover{background:#f3f4f6}.ln-chat-body{flex:1;display:flex;min-height:0}.ln-channels{width:8.5rem;flex-shrink:0;border-right:1px solid #e5e7eb;padding:.4rem;overflow-y:auto;background:#f8fafc}.ln-channels .ch{padding:.3rem .4rem;border-radius:.4rem;cursor:pointer;display:flex;align-items:center;gap:.3rem;white-space:nowrap}.ln-channels .ch .ch-label-text{flex:1;overflow:hidden;text-overflow:ellipsis}.ln-channels .ch-x{font-size:.7rem;opacity:.55;padding:0 .15rem;border-radius:.25rem}.ln-channels .ch-x:hover{opacity:1;background:#7f7f7f40}.ln-channels .ch:hover,.ln-channels .ch.active{background:var(--ln-p);color:#fff}.ln-channels .ch.unread{font-weight:700}.ln-channels .ch-label{font-size:.7rem;opacity:.6;margin:.5rem 0 .2rem}.ln-channels .ch-actions{margin-top:.5rem;display:flex;flex-direction:column;gap:.25rem}.ln-channels .ch-actions button{font-size:.72rem;border:1px solid #e5e7eb;border-radius:.4rem;padding:.2rem;cursor:pointer;background:#fff}.ln-main{flex:1;display:flex;flex-direction:column;min-width:0}.ln-messages{flex:1;overflow-y:auto;padding:.6rem;display:flex;flex-direction:column;gap:.5rem;background:#fff}.ln-composer{display:flex;gap:.4rem;padding:.5rem;border-top:1px solid #e5e7eb;background:#fff}.ln-input{flex:1;border:1px solid #e5e7eb;border-radius:.4rem;padding:.4rem .6rem;background:#fff;color:#1f2937}.ln-send{border:none;border-radius:.4rem;padding:.4rem .8rem;background:var(--ln-p);color:#fff;cursor:pointer}.chat{max-width:100%}.chat-bubble{max-width:85%;white-space:pre-wrap;word-break:break-word;background:#f1f5f9;color:#1f2937;padding:.4rem .7rem;border-radius:.75rem}.chat-bubble-primary{background:var(--ln-p);color:#fff}.chat-bubble-accent{background:#0ea5e9;color:#fff}.chat-header{font-size:.7rem;opacity:.7;margin-bottom:.1rem}@media (prefers-color-scheme: dark){.ln-chat-panel{background:#1f2937;color:#f3f4f6;border-color:#374151}.ln-channels{background:#111827;border-right-color:#374151}.ln-channels .ch-actions button{background:#1f2937;border-color:#374151;color:#f3f4f6}.ln-messages,.ln-composer{background:#1f2937}.ln-input{background:#111827;border-color:#374151;color:#f3f4f6}.chat-bubble{background:#374151;color:#f3f4f6}.chat-bubble-accent{background:#0284c7;color:#fff}.ln-typing{background:#111827;color:#9ca3af}.ln-rename-modal{background:#1f2937;color:#f3f4f6;box-shadow:0 20px 50px #0000008c}.ln-rename-input{background:#111827;border-color:#374151;color:#f3f4f6}.ln-rename-hint{color:#9ca3af}.ln-rename-actions button{background:#1f2937;border-color:#374151;color:#f3f4f6}.ln-rename-cancel:hover{background:#374151}}@keyframes astroFadeInOut{0%{opacity:1}to{opacity:0}}@keyframes astroFadeIn{0%{opacity:0;mix-blend-mode:plus-lighter}to{opacity:1;mix-blend-mode:plus-lighter}}@keyframes astroFadeOut{0%{opacity:1;mix-blend-mode:plus-lighter}to{opacity:0;mix-blend-mode:plus-lighter}}@keyframes astroSlideFromRight{0%{transform:translate(100%)}}@keyframes astroSlideFromLeft{0%{transform:translate(-100%)}}@keyframes astroSlideToRight{to{transform:translate(100%)}}@keyframes astroSlideToLeft{to{transform:translate(-100%)}}@media (prefers-reduced-motion){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}[data-astro-transition-scope]{animation:none!important}}.astro-route-announcer{position:absolute;left:0;top:0;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;white-space:nowrap;width:1px;height:1px}
