.puc{--c-bg:#0a1512;--c-bg2:#0f1f1a;--c-tx:#ecf6f1;--c-mut:#8ea69c;--c-line:#ffffff1a;--c-in:#ffffff0a;--c-me:linear-gradient(135deg,#34d399,#10b981);--c-metx:#02130c;--c-them:#16271f;font-family:Inter,system-ui,sans-serif;position:fixed;right:20px;bottom:20px;z-index:2147483000;-webkit-font-smoothing:antialiased}
[data-theme=light] .puc{--c-bg:#ffffff;--c-bg2:#f4f8f6;--c-tx:#0b1f17;--c-mut:#4a6156;--c-line:#0b1f171f;--c-in:#f4f8f6;--c-them:#eaf3ef}
.puc *{box-sizing:border-box}
.puc-b{width:58px;height:58px;border-radius:50%;border:0;cursor:pointer;display:grid;place-items:center;background:linear-gradient(135deg,#34d399,#10b981);color:#02130c;box-shadow:0 14px 40px -8px #10b981cc,inset 0 1px #ffffff66;transition:transform .2s}
.puc-b:hover{transform:translateY(-2px)}.puc-b:focus-visible{outline:3px solid #34d39999;outline-offset:3px}.puc-b svg{width:26px;height:26px}
.puc-n{position:absolute;top:-3px;right:-3px;min-width:20px;height:20px;padding:0 6px;border-radius:99px;background:#ef4444;color:#fff;font-size:11px;font-weight:700;display:none;align-items:center;justify-content:center;border:2px solid var(--c-bg)}.puc-n.on{display:flex}
.puc-p{position:absolute;right:0;bottom:72px;width:370px;height:min(560px,calc(100vh - 110px));display:none;flex-direction:column;border-radius:20px;overflow:hidden;background:var(--c-bg);color:var(--c-tx);border:1px solid var(--c-line);box-shadow:0 30px 80px -10px #000a,0 0 0 1px #34d39914}
[data-theme=light] .puc-p{box-shadow:0 30px 80px -20px #0b1f1740}
.puc.open .puc-p{display:flex;animation:pucin .22s ease-out}@keyframes pucin{from{opacity:0;transform:translateY(10px)}}
.puc-h{display:flex;align-items:center;gap:12px;padding:16px 16px 14px;background:linear-gradient(160deg,#0f3326,#071a13);color:#ecf6f1;border-bottom:1px solid var(--c-line)}
[data-theme=light] .puc-h{background:linear-gradient(160deg,#d1fae5,#ecfdf5);color:#0b1f17}
.puc-av{width:38px;height:38px;border-radius:11px;flex:0 0 38px;background:#07110e;display:grid;place-items:center;border:1px solid #22c27a55}.puc-av svg{width:22px;height:22px}
.puc-t{flex:1;min-width:0}.puc-t b{display:block;font-size:15px}.puc-t small{display:flex;align-items:center;gap:6px;font-size:12px;opacity:.8}.puc-t small i{width:7px;height:7px;border-radius:50%;background:#94a3b8}.puc-t small i.on{background:#34d399;box-shadow:0 0 0 3px #34d39933}
.puc-x{width:34px;height:34px;border-radius:10px;border:1px solid #ffffff22;background:#ffffff0d;color:inherit;cursor:pointer;font-size:18px;line-height:1}[data-theme=light] .puc-x{border-color:#0b1f1722;background:#ffffffaa}
.puc-m{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:8px;background:var(--c-bg2);overscroll-behavior:contain}
.puc-g{max-width:82%;padding:10px 13px;border-radius:16px;font-size:14px;line-height:1.45;white-space:pre-wrap;word-wrap:break-word;overflow-wrap:anywhere}
.puc-g.v{align-self:flex-end;background:var(--c-me);color:var(--c-metx);border-bottom-right-radius:5px}
.puc-g.a,.puc-g.s{align-self:flex-start;background:var(--c-them);color:var(--c-tx);border-bottom-left-radius:5px}
.puc-g.s{background:transparent;border:1px dashed var(--c-line);color:var(--c-mut);font-size:13px}
.puc-g em{display:block;font-style:normal;font-size:10.5px;opacity:.6;margin-top:4px}
.puc-f{padding:12px;border-top:1px solid var(--c-line);background:var(--c-bg)}
.puc-id{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:8px}.puc-id.hide{display:none}
.puc input,.puc textarea{width:100%;font:inherit;font-size:16px;color:var(--c-tx);background:var(--c-in);border:1px solid var(--c-line);border-radius:12px;padding:9px 12px;outline:0}
.puc input:focus,.puc textarea:focus{border-color:#34d399;box-shadow:0 0 0 3px #34d39926}.puc input::placeholder,.puc textarea::placeholder{color:var(--c-mut);opacity:.85}
.puc-r{display:flex;gap:8px;align-items:flex-end}.puc textarea{resize:none;height:44px;max-height:120px;line-height:1.4}
.puc-s{flex:0 0 44px;height:44px;border-radius:12px;border:0;cursor:pointer;background:linear-gradient(135deg,#34d399,#10b981);color:#02130c;display:grid;place-items:center}.puc-s[disabled]{opacity:.5;cursor:default}.puc-s svg{width:19px;height:19px}
.puc-e{font-size:12px;color:#f87171;min-height:0;margin-top:6px}.puc-e:empty{display:none}[data-theme=light] .puc-e{color:#b91c1c}
.puc-hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important}
.puc-ft{font-size:11px;color:var(--c-mut);text-align:center;margin-top:8px}
.puc.inapp{bottom:24px}
@media(max-width:860px){.puc.inapp{bottom:92px}}
@media(max-width:560px){.puc{right:14px;bottom:14px}.puc.open .puc-b{display:none}.puc-p{position:fixed;left:0;right:0;bottom:0;top:auto;width:auto;height:min(88vh,100dvh - 40px);border-radius:20px 20px 0 0}.puc.open{z-index:2147483000}}
@media (prefers-reduced-motion:reduce){.puc.open .puc-p{animation:none}.puc-b{transition:none}}
.sup-link .supn{margin-left:auto;background:#ef4444;color:#fff;border-radius:99px;font-size:11px;font-weight:700;padding:1px 7px}
.puc-cl{background:none;border:0;padding:0;font:inherit;font-size:11px;color:var(--c-mut);text-decoration:underline;cursor:pointer}.puc-cl[hidden]{display:none}
.puc-av{background:none;border:0;overflow:hidden}.puc-av img{width:38px;height:38px;display:block;border-radius:11px}
.puc-g.puc-auto{border:1px solid #34d39940}

/* in-app: no bubble; right slide-in panel (bottom sheet on phone) opened from the sidebar row */
.puc.inapp{right:0;bottom:0}.puc.inapp .puc-b{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none;overflow:hidden}
.puc.inapp.open{position:fixed;inset:0;background:rgba(2,6,12,.5);animation:pucfd .15s ease-out}[data-theme=light] .puc.inapp.open{background:rgba(11,31,23,.22)}
@keyframes pucfd{from{opacity:0}}
.puc.inapp .puc-p{position:fixed;top:0;right:0;bottom:0;left:auto;width:min(420px,100vw);height:auto;border-radius:0;border-width:0 0 0 1px}
.puc.inapp.open .puc-p{animation:pucsl .22s ease-out}@keyframes pucsl{from{transform:translateX(100%)}}
@media(max-width:900px){.puc.inapp .puc-p{top:auto;left:0;width:auto;height:min(88vh,100dvh - 40px);border-radius:20px 20px 0 0;border-width:1px 0 0}.puc.inapp.open .puc-p{animation:pucup .22s ease-out}}
@keyframes pucup{from{transform:translateY(100%)}}
