/* VVS Support chat widget — uses its own tokens so it looks the same on every page */
.vs-root{--vs-ink:#06070a;--vs-panel:#0d0f15;--vs-edge:rgba(196,214,255,.14);--vs-ice:#e9eefb;--vs-mute:#8d95aa;--vs-facet:#cfe8ff;
  --vs-body:"Instrument Sans",system-ui,-apple-system,"Segoe UI",sans-serif;--vs-mono:"JetBrains Mono",ui-monospace,Consolas,monospace;
  position:fixed;z-index:80;right:max(18px,env(safe-area-inset-right,0px));bottom:max(18px,env(safe-area-inset-bottom,0px));font:15px/1.5 var(--vs-body);color:var(--vs-ice)}
.vs-fab{all:unset;cursor:pointer;display:flex;align-items:center;gap:10px;padding:13px 18px 13px 14px;border-radius:999px;background:var(--vs-facet);color:var(--vs-ink);font:600 14px/1 var(--vs-body);box-shadow:0 14px 40px -12px rgba(207,232,255,.7),0 0 0 1px rgba(255,255,255,.2);transition:transform .2s}
.vs-fab:hover{transform:translateY(-2px)}
.vs-fab:focus-visible{outline:2px solid var(--vs-ice);outline-offset:3px}
.vs-fab svg{width:20px;height:20px}
.vs-root.open .vs-fab{display:none}
.vs-panel{width:min(390px,calc(100vw - 36px));height:min(600px,calc(100vh - 120px));height:min(600px,calc(100dvh - 120px));display:flex;flex-direction:column;background:var(--vs-panel);border:1px solid var(--vs-edge);border-radius:20px;overflow:hidden;box-shadow:0 40px 90px -30px rgba(0,0,0,.9)}
.vs-head{display:flex;align-items:center;gap:12px;padding:14px 14px 14px 18px;border-bottom:1px solid var(--vs-edge);background:linear-gradient(180deg,rgba(207,232,255,.06),transparent)}
.vs-head b{display:block;font-size:15px}
.vs-head small{display:block;font:500 11px/1.3 var(--vs-mono);letter-spacing:.06em;color:var(--vs-mute)}
.vs-dot{width:9px;height:9px;border-radius:50%;background:#6ee7a8;box-shadow:0 0 10px #6ee7a8;flex:none}
.vs-x{all:unset;cursor:pointer;margin-left:auto;width:34px;height:34px;display:grid;place-items:center;border-radius:10px;color:var(--vs-mute)}
.vs-x:hover{color:var(--vs-ice);background:rgba(255,255,255,.06)}
.vs-x:focus-visible{outline:2px solid var(--vs-facet)}
.vs-log{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:10px;overscroll-behavior:contain}
.vs-msg{max-width:88%;padding:10px 13px;border-radius:14px;white-space:pre-wrap;overflow-wrap:anywhere}
.vs-msg a{color:var(--vs-facet)}
.vs-msg code{font:12.5px var(--vs-mono);background:rgba(0,0,0,.35);padding:1px 5px;border-radius:5px}
.vs-bot{align-self:flex-start;background:#151821;border:1px solid var(--vs-edge);border-bottom-left-radius:4px}
.vs-user{align-self:flex-end;background:var(--vs-facet);color:var(--vs-ink);border-bottom-right-radius:4px}
.vs-user a{color:var(--vs-ink)}
.vs-note{align-self:center;font:500 11px/1.4 var(--vs-mono);color:var(--vs-mute);text-align:center;padding:4px 8px}
.vs-typing{display:flex;gap:4px;padding:14px}
.vs-typing i{width:6px;height:6px;border-radius:50%;background:var(--vs-mute);animation:vs-b 1s infinite}
.vs-typing i:nth-child(2){animation-delay:.15s}.vs-typing i:nth-child(3){animation-delay:.3s}
@keyframes vs-b{50%{opacity:.25;transform:translateY(-3px)}}
.vs-chips{display:flex;flex-wrap:wrap;gap:6px;padding:0 16px 10px}
.vs-chips button{all:unset;cursor:pointer;font:500 12.5px/1.2 var(--vs-body);padding:8px 11px;border-radius:999px;border:1px solid var(--vs-edge);color:var(--vs-ice);background:rgba(0,0,0,.25)}
.vs-chips button:hover{border-color:var(--vs-facet)}
.vs-chips button:focus-visible{outline:2px solid var(--vs-facet)}
.vs-form{display:flex;gap:8px;padding:12px;border-top:1px solid var(--vs-edge)}
.vs-form textarea{flex:1;resize:none;font:15px/1.4 var(--vs-body);color:var(--vs-ice);background:#07080b;border:1px solid var(--vs-edge);border-radius:12px;padding:10px 12px;max-height:120px;min-height:44px}
.vs-form textarea:focus{outline:none;border-color:var(--vs-facet)}
.vs-send{all:unset;cursor:pointer;width:44px;height:44px;flex:none;display:grid;place-items:center;border-radius:12px;background:var(--vs-facet);color:var(--vs-ink)}
.vs-send[disabled]{opacity:.4;cursor:default}
.vs-send:focus-visible{outline:2px solid var(--vs-ice);outline-offset:2px}
.vs-send svg{width:18px;height:18px}
.vs-foot{padding:0 14px 12px;font:500 10.5px/1.4 var(--vs-mono);color:var(--vs-mute)}
.vs-foot a{color:var(--vs-mute)}
@media (max-width:520px){.vs-panel{width:calc(100vw - 24px);height:calc(100dvh - 90px)}.vs-root{right:max(12px,env(safe-area-inset-right,0px));bottom:max(12px,env(safe-area-inset-bottom,0px))}.vs-fab span{display:none}.vs-fab{padding:14px}}
@media (prefers-reduced-motion:reduce){.vs-typing i{animation:none}.vs-fab{transition:none}}
.vs-root.offline .vs-dot{background:#ffad47;box-shadow:0 0 10px #ffad47}
