#vg-visitor-assistant, #vg-visitor-assistant * { box-sizing: border-box; }
#vg-visitor-assistant:not([data-vg-ready="1"]) { display:none; }
#vg-visitor-assistant { --vg-ink:#102a47; --vg-teal:#007d76; --vg-paper:#fff; --vg-soft:#f4f7fa; --vg-line:#dfe6ec; --vg-muted:#667688; color:var(--vg-ink); font:inherit; }
#vg-visitor-assistant #vg-visitor-toggle { position:fixed; z-index:20; right:24px; bottom:24px; width:60px; height:60px; border:0; border-radius:50%; background:var(--vg-ink); color:#fff; display:grid; place-items:center; cursor:pointer; box-shadow:0 6px 24px #102a4730; transition:background-color .18s ease, transform .18s ease; }
#vg-visitor-assistant #vg-visitor-toggle:hover { background:var(--vg-teal); transform:translateY(-2px); }
#vg-visitor-assistant #vg-visitor-toggle:focus-visible, #vg-visitor-assistant button:focus-visible, #vg-visitor-assistant a:focus-visible, #vg-visitor-assistant textarea:focus-visible { outline:3px solid #38b8ad; outline-offset:3px; }
#vg-visitor-assistant #vg-visitor-toggle::after { content:"Visa Guide"; position:absolute; right:calc(100% + 10px); top:50%; transform:translateY(-50%); background:var(--vg-ink); color:#fff; padding:7px 10px; border-radius:5px; font-family:inherit; font-size:12px; font-weight:600; line-height:1.2; white-space:nowrap; opacity:0; pointer-events:none; transition:opacity .15s ease; }
#vg-visitor-assistant #vg-visitor-toggle:hover::after, #vg-visitor-assistant #vg-visitor-toggle:focus-visible::after { opacity:1; }
#vg-visitor-assistant #vg-visitor-toggle svg { width:27px; height:27px; }
#vg-visitor-assistant #vg-visitor-panel { position:fixed; z-index:21; right:24px; bottom:98px; width:min(390px,calc(100vw - 32px)); height:max(0px,min(570px,calc(100dvh - 120px))); min-height:0; background:var(--vg-paper); border:1px solid var(--vg-line); border-radius:15px; box-shadow:0 16px 50px #102a4726; display:flex; flex-direction:column; overflow:hidden; font-family:inherit; font-size:14px; font-weight:400; line-height:1.5; }
#vg-visitor-assistant #vg-visitor-panel[hidden] { display:none !important; }
#vg-visitor-assistant .vg-visitor-head { min-height:68px; flex:0 0 auto; display:flex; align-items:center; gap:11px; padding:12px 15px; border-bottom:1px solid var(--vg-line); background:#fff; }
#vg-visitor-assistant .vg-visitor-logo { width:34px; height:34px; object-fit:contain; }
#vg-visitor-assistant .vg-visitor-brand { display:flex; flex:1; min-width:0; flex-direction:column; line-height:1.3; }
#vg-visitor-assistant .vg-visitor-brand strong { color:var(--vg-ink); font-size:15px; font-weight:700; }
#vg-visitor-assistant .vg-visitor-brand span { color:var(--vg-muted); font-size:12px; }
#vg-visitor-assistant .vg-visitor-close { width:34px; height:34px; border:0; border-radius:50%; background:transparent; color:var(--vg-muted); display:grid; place-items:center; cursor:pointer; }
#vg-visitor-assistant .vg-visitor-close:hover { background:var(--vg-soft); color:var(--vg-ink); }
#vg-visitor-assistant .vg-visitor-close svg { width:19px; height:19px; }
#vg-visitor-assistant .vg-visitor-body { flex:1; min-height:0; overflow-y:auto; padding:17px 15px; display:flex; flex-direction:column; align-items:stretch; gap:11px; background:var(--vg-soft); }
#vg-visitor-assistant .vg-visitor-message { max-width:88%; padding:10px 12px; border-radius:12px; white-space:pre-wrap; overflow-wrap:anywhere; }
#vg-visitor-assistant .vg-visitor-privacy { align-self:stretch; padding:8px 10px; border-inline-start:3px solid var(--vg-teal); background:#eaf4f3; color:#315550; border-radius:4px; font-size:11px; line-height:1.4; }
#vg-visitor-assistant .vg-visitor-assistant, #vg-visitor-assistant .vg-visitor-notice { align-self:flex-start; border:1px solid var(--vg-line); background:#fff; color:var(--vg-ink); border-start-start-radius:4px; }
#vg-visitor-assistant .vg-visitor-user { align-self:flex-end; background:var(--vg-ink); color:#fff; border-start-end-radius:4px; }
#vg-visitor-assistant .vg-visitor-status { padding:8px 14px 0; color:var(--vg-muted); font-size:12px; }
#vg-visitor-assistant .vg-visitor-status.is-error { color:#a33333; }
#vg-visitor-assistant .vg-visitor-status[hidden] { display:none; }
#vg-visitor-assistant .vg-visitor-suggestions { display:flex; flex-wrap:wrap; gap:7px; }
#vg-visitor-assistant .vg-visitor-suggestions button { border:1px solid #b9d6d3; background:#fff; color:#075f5a; border-radius:16px; padding:6px 10px; font:inherit; font-size:12px; text-align:start; cursor:pointer; }
#vg-visitor-assistant .vg-visitor-suggestions button:disabled { opacity:.55; cursor:wait; }
#vg-visitor-assistant .vg-visitor-suggestions button:hover { background:#e9f5f4; }
#vg-visitor-assistant .vg-visitor-composer { flex:0 0 auto; display:flex; align-items:flex-end; gap:9px; padding:11px 13px; border-top:1px solid var(--vg-line); background:#fff; }
#vg-visitor-assistant .vg-visitor-composer textarea { flex:1; min-width:0; max-height:132px; resize:none; border:1px solid var(--vg-line); border-radius:9px; padding:9px 10px; color:var(--vg-ink); background:#fff; font:inherit; line-height:1.4; }
#vg-visitor-assistant .vg-visitor-composer textarea::placeholder { color:#8492a0; }
#vg-visitor-assistant .vg-visitor-composer textarea:disabled { background:#f5f7f9; }
#vg-visitor-assistant .vg-visitor-send, #vg-visitor-assistant .vg-visitor-primary { border:0; border-radius:8px; padding:9px 13px; background:var(--vg-teal); color:#fff; font-family:inherit; font-size:13px; font-weight:600; line-height:1.35; text-decoration:none; cursor:pointer; white-space:nowrap; }
#vg-visitor-assistant .vg-visitor-send:hover, #vg-visitor-assistant .vg-visitor-primary:hover { background:#006761; color:#fff; }
#vg-visitor-assistant .vg-visitor-send:disabled { opacity:.55; cursor:wait; }
#vg-visitor-assistant .vg-visitor-footer { flex:0 0 auto; display:flex; align-items:center; flex-wrap:wrap; gap:9px 13px; min-height:40px; padding:4px 15px 10px; background:#fff; }
#vg-visitor-assistant .vg-visitor-link { border:0; padding:0; background:none; color:#075f5a; font-family:inherit; font-size:12px; font-weight:600; line-height:1.4; text-decoration:underline; text-underline-offset:2px; cursor:pointer; }
#vg-visitor-assistant .vg-visitor-meter { margin-inline-start:auto; color:var(--vg-muted); font-size:11px; }
@media (max-width:600px) {
  #vg-visitor-assistant #vg-visitor-toggle { right:16px; bottom:calc(84px + env(safe-area-inset-bottom)); width:56px; height:56px; }
  #vg-visitor-assistant #vg-visitor-panel { right:12px; bottom:calc(150px + env(safe-area-inset-bottom)); width:calc(100vw - 24px); height:max(0px,min(570px,calc(100dvh - 185px - env(safe-area-inset-bottom)))); min-height:0; }
  #vg-visitor-assistant #vg-visitor-toggle::after { display:none; }
}
@media (max-height:480px) {
  #vg-visitor-assistant #vg-visitor-panel { bottom:calc(12px + env(safe-area-inset-bottom)); height:max(0px,calc(100dvh - 24px - env(safe-area-inset-bottom))); }
  #vg-visitor-assistant .vg-visitor-head { min-height:48px; padding:5px 10px; }
  #vg-visitor-assistant .vg-visitor-logo { width:28px; height:28px; }
  #vg-visitor-assistant .vg-visitor-body { padding:7px 10px; gap:6px; }
  #vg-visitor-assistant .vg-visitor-composer { padding:5px 8px; }
  #vg-visitor-assistant .vg-visitor-composer textarea { padding:6px 8px; }
  #vg-visitor-assistant .vg-visitor-send { padding:7px 9px; }
  #vg-visitor-assistant .vg-visitor-footer { min-height:28px; padding:3px 9px; gap:5px 9px; }
}
@media (prefers-reduced-motion:reduce) { #vg-visitor-assistant #vg-visitor-toggle, #vg-visitor-assistant #vg-visitor-toggle::after { transition:none; } }

