/*! © 2026 Marco Lorica · tutti i diritti riservati */.ml-chat-btn,.ml-chat{--c-ink:#0d1d13;--c-ink-2:#12261a;--c-glow:#9fe0a0;--c-mono:ui-monospace, "SF Mono", Menlo, Consolas, "Liberation Mono", monospace}.ml-chat-btn{z-index:1001;isolation:isolate;width:62px;height:62px;color:var(--c-glow);background:var(--c-ink);cursor:pointer;border:0;border-radius:50%;place-items:center;padding:0;font-size:24px;transition:transform .25s cubic-bezier(.2,.8,.3,1.4),box-shadow .3s;display:grid;position:fixed;bottom:24px;right:24px;box-shadow:0 14px 34px -10px #0d1d13b3,0 0 30px -8px #588158cc}.ml-chat-btn:before{content:"";z-index:-2;border-radius:inherit;background:conic-gradient(transparent 0 55%, var(--c-glow) 75%, #fff 80%, transparent 85%);animation:3.2s linear infinite ml-chat-spin;position:absolute;inset:-2px}.ml-chat-btn:after{content:"";z-index:-1;border-radius:inherit;background:linear-gradient(135deg, #1b3a26, var(--c-ink) 60%);position:absolute;inset:1px}.ml-chat-btn:hover{transform:translateY(-3px)scale(1.07);box-shadow:0 16px 40px -12px #9fe0a0b3}.ml-chat-btn:focus-visible{outline:2px solid var(--c-glow);outline-offset:4px}@keyframes ml-chat-spin{to{transform:rotate(360deg)}}.ml-chat-btn-ico{width:24px;height:24px;line-height:1;position:relative}.ml-chat-btn-ico i{place-items:center;transition:transform .4s cubic-bezier(.2,.8,.3,1.3),opacity .25s;display:grid;position:absolute;inset:0}.ml-chat-btn-ico .bi-x-lg{opacity:0;transform:rotate(-90deg)scale(.4)}.ml-chat-btn[aria-expanded=true] .bi-chat-dots-fill{opacity:0;transform:rotate(90deg)scale(.4)}.ml-chat-btn[aria-expanded=true] .bi-x-lg{opacity:1;transform:none}.ml-chat-btn-dot{width:12px;height:12px;position:absolute;top:6px;right:6px}.ml-chat-btn-dot:before,.ml-chat-btn-dot:after{content:"";border-radius:50%;position:absolute;inset:0}.ml-chat-btn-dot:before{background:#4ade8099;animation:2s infinite ml-chat-ping}.ml-chat-btn-dot:after{border:2px solid var(--c-ink);background:#4ade80}@keyframes ml-chat-ping{0%{opacity:1;transform:scale(1)}70%{opacity:0;transform:scale(2.5)}to{opacity:0;transform:scale(1)}}.ml-chat-btn[aria-expanded=true] .ml-chat-btn-dot{display:none}.ml-chat-btn.is-burst:before{animation:.6s linear infinite ml-chat-spin}.ml-chat-btn .ml-chat-wave{z-index:-3;border-radius:inherit;border:2px solid var(--c-glow);pointer-events:none;animation:.7s ease-out forwards ml-chat-wave;position:absolute;inset:0}@keyframes ml-chat-wave{0%{opacity:.9;transform:scale(1)}to{opacity:0;transform:scale(2.2)}}@media (width<=575px){.ml-chat-btn{width:56px;height:56px;bottom:16px;right:16px}}.ml-chat{--ox:100%;--oy:0px;z-index:1000;background:radial-gradient(ellipse 80% 50% at 100% 0%, #58815859, transparent 70%), var(--c-ink);color:#fffc;width:min(440px,100vw - 24px);max-height:min(560px,100dvh - 140px);clip-path:circle(0 at var(--ox) var(--oy));border:1px solid #9fe0a038;border-radius:22px;flex-direction:column;transition:clip-path .6s cubic-bezier(.7,0,.2,1);display:flex;position:fixed;bottom:100px;right:24px;overflow:hidden;box-shadow:0 40px 90px -30px #000000b3,0 0 70px -20px #58815899}.ml-chat[hidden]{display:none}.ml-chat.is-open{clip-path:circle(150% at var(--ox) var(--oy))}.ml-chat-head{background:#12261ae6;border-bottom:1px solid #9fe0a01f;align-items:center;gap:12px;padding:16px 18px;display:flex}.ml-chat-avatar{background:var(--c-ink);border-radius:50%;flex:none;width:44px;height:44px;position:relative;box-shadow:0 0 0 2px #9fe0a059}.ml-chat-avatar img{object-fit:cover;border-radius:50%;width:100%;height:100%;display:block}.ml-chat-avatar i{border:2px solid var(--c-ink-2);background:#4ade80;border-radius:50%;width:11px;height:11px;position:absolute;bottom:0;right:0}.ml-chat-title{color:#fff;margin:0;font-weight:700}.ml-chat-head>div{min-width:0}.ml-chat-title{white-space:nowrap}.ml-chat-ai{vertical-align:2px;font-family:var(--c-mono);color:var(--c-glow);background:#0d1d138c;border:1px solid #9fe0a040;border-radius:999px;align-items:center;gap:7px;margin-left:8px;padding:3px 10px;font-size:11px;font-weight:400;line-height:1.4;display:inline-flex}.ml-chat-ai .ab-dot{flex:none;width:6px;height:6px}.ml-chat-status{font-family:var(--c-mono);color:var(--c-glow);white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:12px;overflow:hidden}.ml-chat-close{color:#fff9;background:0 0;border:0;border-radius:50%;flex:none;place-items:center;width:34px;height:34px;margin-left:auto;padding:0;transition:background .2s,color .2s;display:grid}.ml-chat-close:hover{color:var(--c-ink);background:var(--c-glow)}.ml-chat-body{background:#c9d8ca;flex-direction:column;flex:1;align-items:flex-start;gap:10px;min-height:220px;padding:20px 18px;display:flex;overflow-y:auto;box-shadow:inset 0 14px 16px -12px #0d1d1373,inset 0 -14px 16px -12px #0d1d1373}.ml-msg{color:#1a2e21;opacity:0;transform-origin:0 100%;background:#eef4ee;border:1px solid #0d1d131f;border-radius:16px 16px 16px 4px;max-width:85%;padding:10px 14px;font-size:15px;line-height:1.5;transform:translateY(10px)scale(.96)}.ml-msg.is-in{animation:.45s cubic-bezier(.2,.8,.3,1.3) forwards ml-msg-in}.ml-msg--me{color:#fff;background:var(--c-ink);border-color:var(--c-ink);transform-origin:100% 100%;border-radius:16px 16px 4px;align-self:flex-end}.ml-msg--link{font-family:var(--c-mono);color:#24532d;background:0 0;border-style:dashed;border-color:#24532d8c;align-items:center;gap:8px;font-size:13px;text-decoration:none;display:inline-flex}.ml-msg--link:hover{color:var(--c-ink);background:var(--c-glow)}.ml-msg--blocked{color:#9b1c1c;background:#fdecec;border-color:#dc3c3c4d}.ml-chat.is-blocked .ml-chat-form{opacity:.45;pointer-events:none}@keyframes ml-msg-in{to{opacity:1;transform:none}}.ml-typing{background:#eef4ee;border:1px solid #0d1d131f;border-radius:16px 16px 16px 4px;gap:5px;padding:14px 16px;display:inline-flex}.ml-typing span{background:#588158;border-radius:50%;width:7px;height:7px;animation:1s ease-in-out infinite ml-typing}.ml-typing span:nth-child(2){animation-delay:.15s}.ml-typing span:nth-child(3){animation-delay:.3s}@keyframes ml-typing{0%,60%,to{opacity:.3;transform:none}30%{opacity:1;transform:translateY(-4px)}}.ml-chat-form{border-top:1px solid #9fe0a01f;gap:8px;padding:12px;display:flex}.ml-chat-input{color:#fff;background:#ffffff0a;border:1px solid #9fe0a033;border-radius:999px;outline:0;flex:1;min-width:0;padding:11px 16px;font-size:15px;transition:border-color .2s}.ml-chat-input::placeholder{color:#fff6}.ml-chat-input:focus{border-color:var(--c-glow)}.ml-chat-send{width:44px;height:44px;color:var(--c-ink);background:var(--c-glow);border:0;border-radius:50%;flex:none;transition:transform .2s}.ml-chat-send:hover{transform:scale(1.08)rotate(-12deg)}@media (width<=575px){.ml-chat{bottom:86px;right:16px}}@media (prefers-reduced-motion:reduce){.ml-chat-btn:before,.ml-chat-btn-dot{animation:none}.ml-chat{transition:none}.ml-msg{opacity:1;transform:none}.ml-msg.is-in{animation:none}}