.zsp-fab{position:fixed;z-index:9980;left:14px;bottom:86px;width:54px;height:54px;border-radius:50%;border:0;background:#111;color:#ffcd00;display:grid;place-items:center;box-shadow:0 6px 20px rgba(0,0,0,.35);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:transform .15s}
.zsp-fab:active{transform:scale(.92)}
.zsp-fab svg{width:26px;height:26px}
.zsp-dot{position:absolute;top:-3px;right:-3px;min-width:20px;height:20px;padding:0 5px;box-sizing:border-box;border-radius:99px;background:#ef4444;color:#fff;border:2px solid #fff;display:none;place-items:center;font-size:11px;font-weight:800;line-height:1}
.zsp-new{display:inline-block;background:#ef4444;color:#fff;border-radius:99px;font-size:10.5px;padding:1px 8px;font-weight:800}
.zsp-th{display:flex;flex-direction:column;gap:8px}
@media(min-width:1024px){.zsp-fab{bottom:24px;left:22px}}
.zsp-ov{position:fixed;inset:0;z-index:100030;background:rgba(0,0,0,.4);display:none;direction:rtl;font-family:inherit}
.zsp-ov.on{display:block}
.zsp-pn{position:absolute;inset:0;background:#f3f4f6;display:flex;flex-direction:column;overflow:hidden}
@media(min-width:768px){.zsp-pn{inset:auto auto 20px 20px;width:400px;height:min(680px,calc(100vh - 40px));border-radius:20px;box-shadow:0 20px 60px rgba(0,0,0,.4)}}
.zsp-hd{background:#111;color:#fff;display:flex;align-items:center;gap:8px;padding:12px 14px}
.zsp-hd b{flex:1;font-size:15px}
.zsp-hd button{background:rgba(255,255,255,.14);border:0;color:#fff;border-radius:50%;width:34px;height:34px;font-size:18px;cursor:pointer;line-height:1}
.zsp-hd button[hidden]{display:none}
.zsp-bd{flex:1;overflow-y:auto;padding:14px 12px 22px;display:flex;flex-direction:column;gap:10px;-webkit-overflow-scrolling:touch}
.zsp-m{max-width:88%;padding:10px 13px;border-radius:16px;font-size:14px;line-height:1.9;white-space:pre-line;word-break:break-word}
.zsp-m.bot{align-self:flex-start;background:#fff;border-top-right-radius:4px;box-shadow:0 1px 3px rgba(0,0,0,.08)}
.zsp-m.me{align-self:flex-end;background:#ffcd00;color:#111;border-top-left-radius:4px;font-weight:700}
.zsp-ch{display:flex;flex-wrap:wrap;gap:7px;margin:2px 0}
.zsp-ch button,.zsp-ch a{border:1.5px solid #111;background:#fff;color:#111;border-radius:99px;padding:8px 14px;font:inherit;font-size:13.5px;font-weight:700;cursor:pointer;text-decoration:none;line-height:1.6}
.zsp-ch button:active{background:#111;color:#ffcd00}
.zsp-ord{display:flex;gap:10px;align-items:center;width:100%;text-align:right;border:1.5px solid #e5e7eb;background:#fff;border-radius:14px;padding:9px 11px;font:inherit;cursor:pointer}
.zsp-ord img{width:46px;height:46px;border-radius:10px;object-fit:cover;background:#eee;flex:none}
.zsp-ord div{flex:1;min-width:0}.zsp-ord b{display:block;font-size:13.5px}.zsp-ord small{display:block;color:#6b7280;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.zsp-st{font-size:11.5px;font-weight:800;padding:2px 9px;border-radius:99px;background:#e5e7eb;white-space:nowrap}
.zsp-st.ok{background:#dcfce7;color:#166534}.zsp-st.warn{background:#fef3c7;color:#92400e}.zsp-st.info,.zsp-st.ship{background:#dbeafe;color:#1e40af}.zsp-st.bad{background:#fee2e2;color:#991b1b}
.zsp-box{background:#fff;border-radius:14px;padding:12px;display:flex;flex-direction:column;gap:8px}
.zsp-box textarea,.zsp-box input{font:inherit;font-size:16px;padding:10px;border:1px solid #cfd2d8;border-radius:10px;width:100%;box-sizing:border-box}
.zsp-box label.c{display:flex;gap:8px;align-items:flex-start;font-size:13.5px}
.zsp-go{background:#ffcd00;border:0;border-radius:12px;padding:12px;font:inherit;font-weight:800;cursor:pointer}
.zsp-go:disabled{opacity:.5}
.zsp-err{color:#b91c1c;font-size:13px;min-height:1em}
.zsp-pop{position:absolute;inset:0;background:rgba(0,0,0,.55);display:flex;align-items:center;justify-content:center;padding:20px;z-index:3}
.zsp-pop div{background:#fff;border-radius:18px;padding:22px 20px;text-align:center;font-size:14.5px;line-height:2;max-width:340px}
.zsp-pop .ic{font-size:38px}
.zsp-pop button{margin-top:10px;background:#111;color:#ffcd00;border:0;border-radius:12px;padding:10px 28px;font:inherit;font-weight:800;cursor:pointer}
