:root{
  --gv-topbar-bg:#ffffff;
  --gv-topbar-text:#000000;
  --gv-topbar-link:#0ea5e9;
  --gv-bm-bg:#0ea5e9;
  --gv-bm-text:#ffffff;
  --gv-bm-hover:#0284c7;
  --gv-bm-font:14px;
  --gv-bm-radius:999px;
  --gv-bm-border:#0ea5e9;
  --gv-bm-shadow:none;
}
.gv-topbar{
  position:sticky;top:0;left:0;right:0;z-index:9999;
  background:var(--gv-topbar-bg);color:var(--gv-topbar-text);
  border-bottom:1px solid rgba(0,0,0,.08);
  font: 14px/1.4 system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,"Apple Color Emoji","Segoe UI Emoji";
}
.gv-topbar__inner{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.35rem .75rem;}
.gv-topbar a{color:var(--gv-topbar-link);text-decoration:none;}
.gv-topbar__left{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;}
.gv-topbar__right{display:flex;align-items:center;gap:.35rem;flex-wrap:wrap;}
.gv-topbar__msg{font-weight:600;}
.gv-topbar__phone-label{opacity:.8;margin-right:.25rem;}
.gv-topbar__sep{opacity:.5;margin:0 .25rem;}

/* Bookmark button base */
.gv-topbar__bookmark{
  display:inline-flex;align-items:center;gap:.35rem;
  padding:.25rem .7rem;border-radius:var(--gv-bm-radius);
  cursor:pointer;transition:transform .08s ease, background .15s ease, border-color .15s ease, color .15s ease;
  font-size:var(--gv-bm-font);
  box-shadow: var(--gv-bm-shadow);
}
.gv-topbar__bookmark:hover{ transform:translateY(-1px); }
.gv-topbar__bookmark-icon{ font-size:calc(var(--gv-bm-font) + 0px); }

/* Pill & Filled use the BG/TEXT colors */
.gv-style-pill,.gv-style-filled{
  border:1px solid var(--gv-bm-border);
  background:var(--gv-bm-bg);
  color:var(--gv-bm-text);
}
.gv-style-pill:hover,.gv-style-filled:hover{ background:var(--gv-bm-hover); }
/* Outline variant uses border color as text color */
.gv-style-outline{
  border:1px solid var(--gv-bm-border);
  background:transparent;
  color:var(--gv-bm-border);
}
.gv-style-outline:hover{ background:rgba(0,0,0,.04); }
/* Link variant */
.gv-style-link{
  border:0;background:transparent;padding:.25rem 0;border-radius:0;color:var(--gv-bm-border);
}
.gv-style-link:hover{ text-decoration:underline; }

/* Close button */
.gv-topbar__close{ margin-left:.5rem;border:none;background:transparent;font-size:18px;cursor:pointer; }

@media (max-width:640px){
  .gv-topbar__inner{ padding:.35rem .5rem; }
  .gv-topbar{ font-size:13px; }
}
