#maas-root{--ink:#0a1011;--teal:#00b8ad;--teal-b:#3ee6d9;--teal-d:#007f78;--soft:#dff4f3;--line:#e1eaea;--muted:#5a6a6b;font-family:inherit}
.maas-panel{position:fixed;right:20px;bottom:calc(94px + env(safe-area-inset-bottom,0px));z-index:99991;width:min(390px,calc(100vw - 32px));height:min(600px,calc(100vh - 130px));background:#fff;border-radius:22px;box-shadow:0 40px 90px -30px rgba(10,16,17,.55);display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--line);transform-origin:bottom right;transition:transform .3s cubic-bezier(.2,.7,.2,1),opacity .2s}
.maas-panel[hidden]{display:flex!important;transform:scale(.92) translateY(10px);opacity:0;pointer-events:none}
.maas-head{background:var(--ink);color:#fff;padding:16px 18px;display:flex;align-items:center;gap:12px}
.maas-head b{display:block;font-size:15px}
.maas-head small{display:block;font-size:12px;color:#9fb3b3}
.maas-dot{width:8px;height:8px;border-radius:50%;background:var(--teal);display:inline-block;margin-right:6px;box-shadow:0 0 0 3px rgba(18,168,163,.25)}
.maas-x{margin-left:auto;background:none;border:0;color:#fff;font-size:22px;cursor:pointer;line-height:1;padding:4px}
.maas-log{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:10px;background:#f7fbfb}
.maas-msg{max-width:85%;padding:10px 14px;border-radius:16px;font-size:14.5px;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere}
.maas-msg a{color:var(--teal-d);font-weight:600}
.maas-bot{background:#fff;border:1px solid var(--line);border-bottom-left-radius:4px;align-self:flex-start}
.maas-me{background:var(--teal);color:#fff;border-bottom-right-radius:4px;align-self:flex-end}
.maas-me a{color:#fff}
.maas-typing{display:inline-flex;gap:4px}
.maas-typing i{width:6px;height:6px;border-radius:50%;background:var(--muted);animation:maas-b 1s infinite}
.maas-typing i:nth-child(2){animation-delay:.15s}.maas-typing i:nth-child(3){animation-delay:.3s}
@keyframes maas-b{50%{transform:translateY(-4px);opacity:.4}}
.maas-sugg{display:flex;flex-wrap:wrap;gap:6px}
.maas-sugg button{border:1.5px solid var(--line);background:#fff;border-radius:999px;padding:7px 12px;font:600 13px inherit;cursor:pointer;color:var(--ink)}
.maas-sugg button:hover{border-color:var(--teal);color:var(--teal-d)}
.maas-form{display:flex;gap:8px;padding:12px;border-top:1px solid var(--line);background:#fff}
.maas-form input{flex:1;min-width:0;border:1.5px solid var(--line);border-radius:999px;padding:11px 16px;font:inherit;font-size:14.5px;outline:none}
.maas-form input:focus{border-color:var(--teal)}
.maas-form button{border:0;background:var(--teal);color:#fff;border-radius:999px;padding:0 16px;font-weight:700;cursor:pointer}
.maas-form button[disabled]{opacity:.5}
.maas-foot{font-size:11px;color:var(--muted);text-align:center;padding:0 12px 10px;background:#fff}
@media (prefers-reduced-motion:reduce){.maas-fab::after,.maas-typing i{animation:none}.maas-panel{transition:none}}

/* ---- launcher ---- */
.maas-fab{position:fixed;right:20px;bottom:calc(20px + env(safe-area-inset-bottom,0px));z-index:99990;display:flex;align-items:center;gap:12px;height:62px;padding:6px 20px 6px 6px;border-radius:999px;border:1px solid rgba(62,230,217,.28);background:linear-gradient(135deg,#0d1718,#0a1011 60%);color:#fff;cursor:pointer;box-shadow:0 20px 44px -14px rgba(10,16,17,.65),0 0 0 1px rgba(0,0,0,.2);transition:transform .25s cubic-bezier(.2,.7,.2,1),box-shadow .25s,padding .25s;font-family:inherit;text-align:left}
.maas-fab:hover{transform:translateY(-3px);box-shadow:0 26px 54px -14px rgba(0,184,173,.45),0 0 0 1px rgba(62,230,217,.35)}
.maas-orb{position:relative;flex:none;width:50px;height:50px;border-radius:50%;display:grid;place-items:center;color:#fff;isolation:isolate}
.maas-orb::before{content:"";position:absolute;inset:0;border-radius:50%;background:conic-gradient(from 0deg,#00b8ad,#3ee6d9,#0a7b77,#00b8ad);animation:maas-spin 5s linear infinite;z-index:-2}
.maas-orb::after{content:"";position:absolute;inset:2.5px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#1c3a3b,#0a1011 70%);z-index:-1}
.maas-orb svg{transition:transform .3s,opacity .2s}
.maas-ico-x{position:absolute;opacity:0;transform:rotate(-90deg) scale(.6)}
.maas-spark{position:absolute;top:5px;right:6px;width:9px;height:9px;background:#3ee6d9;clip-path:polygon(50% 0,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0 50%,38% 38%);animation:maas-twinkle 2.6s ease-in-out infinite}
.maas-live{position:absolute;right:1px;bottom:3px;width:12px;height:12px;border-radius:50%;background:#2fd36b;border:2.5px solid #0a1011}
.maas-live::after{content:"";position:absolute;inset:-5px;border-radius:50%;border:2px solid #2fd36b;animation:maas-ping 2.2s ease-out infinite}
.maas-label{display:grid;line-height:1.15}
.maas-label b{font-size:15px;font-weight:800;letter-spacing:.01em}
.maas-label small{font-size:11.5px;color:#9fdcd8;font-weight:600;margin-top:2px}
.maas-fab[aria-expanded="true"]{padding-right:6px}
.maas-fab[aria-expanded="true"] .maas-label,.maas-fab[aria-expanded="true"] .maas-spark{display:none}
.maas-fab[aria-expanded="true"] .maas-ico-chat{opacity:0;transform:rotate(90deg) scale(.6)}
.maas-fab[aria-expanded="true"] .maas-ico-x{opacity:1;transform:none}
@keyframes maas-spin{to{transform:rotate(360deg)}}
@keyframes maas-ping{0%{transform:scale(.6);opacity:.9}80%,100%{transform:scale(1.6);opacity:0}}
@keyframes maas-twinkle{0%,100%{transform:scale(.6) rotate(0);opacity:.5}50%{transform:scale(1.15) rotate(45deg);opacity:1}}
/* ---- nudge ---- */
.maas-nudge{position:fixed;right:20px;bottom:calc(94px + env(safe-area-inset-bottom,0px));z-index:99989;max-width:250px;background:#fff;color:#0a1011;border:1px solid var(--line);border-radius:16px 16px 4px 16px;padding:12px 30px 12px 14px;font-size:13.5px;line-height:1.4;box-shadow:0 20px 40px -18px rgba(10,16,17,.45);cursor:pointer;animation:maas-in .35s cubic-bezier(.2,.7,.2,1)}
.maas-nudge[hidden]{display:none}
.maas-nudge-x{position:absolute;top:4px;right:6px;border:0;background:none;font-size:18px;line-height:1;color:#8a9a9b;cursor:pointer;padding:4px}
@keyframes maas-in{from{opacity:0;transform:translateY(8px) scale(.96)}to{opacity:1;transform:none}}
@media (max-width:640px){.maas-fab{padding:5px;height:60px;gap:0}.maas-label{display:none}.maas-orb{width:50px;height:50px}.maas-nudge{right:16px;max-width:230px}}
@media (prefers-reduced-motion:reduce){.maas-orb::before,.maas-live::after,.maas-spark,.maas-nudge{animation:none}}
