.gqiow-geo-ai{position:fixed;right:20px;bottom:88px;z-index:99990;font-family:inherit}.gqiow-geo-ai.is-embedded{position:static}.gqiow-geo-ai-open{border:0;border-radius:999px;background:#176b68;color:#fff;padding:14px 18px;font-weight:700;box-shadow:0 6px 24px rgba(0,0,0,.2);cursor:pointer}.gqiow-geo-ai-panel{width:min(390px,calc(100vw - 24px));max-height:min(680px,calc(100vh - 120px));background:#fff;color:#18344a;border:1px solid #d7e2e5;border-radius:18px;box-shadow:0 18px 55px rgba(0,0,0,.22);overflow:hidden;display:flex;flex-direction:column}.gqiow-geo-ai.is-embedded .gqiow-geo-ai-panel{width:100%;max-height:none}.gqiow-geo-ai-panel[hidden]{display:none}.gqiow-geo-ai-panel header{display:flex;justify-content:space-between;align-items:center;padding:16px;background:#176b68;color:#fff}.gqiow-geo-ai-panel header div{display:flex;flex-direction:column}.gqiow-geo-ai-panel header button{background:transparent;color:#fff;border:0;font-size:26px;cursor:pointer}.gqiow-geo-ai-messages{padding:14px;overflow:auto;min-height:150px;max-height:330px;background:#f5f8f8}.gqiow-geo-ai-message{margin:0 0 10px;padding:11px 13px;border-radius:14px;white-space:pre-line;line-height:1.45}.gqiow-geo-ai-message.is-geo{background:#fff;border:1px solid #dce7e8;margin-right:22px}.gqiow-geo-ai-message.is-user{background:#18344a;color:#fff;margin-left:22px}.gqiow-geo-ai-form{display:grid;grid-template-columns:1fr auto;gap:8px;padding:12px;border-top:1px solid #e3eaec}.gqiow-geo-ai-form textarea{resize:none;border:1px solid #bccdd1;border-radius:10px;padding:10px;font:inherit}.gqiow-geo-ai-form button{border:0;border-radius:10px;background:#176b68;color:#fff;padding:10px 14px;font-weight:700;cursor:pointer}.gqiow-geo-ai-suggestions{padding:0 12px 12px;display:grid;gap:7px}.gqiow-geo-ai-suggestion{display:grid;grid-template-columns:1fr auto;color:#18344a;text-decoration:none;border:1px solid #dce7e8;border-radius:10px;padding:9px}.gqiow-geo-ai-suggestion strong,.gqiow-geo-ai-suggestion small{grid-column:1}.gqiow-geo-ai-suggestion span{grid-column:2;grid-row:1/3;align-self:center;color:#176b68;font-weight:700}.gqiow-geo-ai button:focus-visible,.gqiow-geo-ai textarea:focus-visible,.gqiow-geo-ai a:focus-visible{outline:3px solid #f2b84b;outline-offset:2px}@media(max-width:600px){.gqiow-geo-ai{right:12px;bottom:76px}.gqiow-geo-ai-panel{max-height:calc(100vh - 96px)}.gqiow-geo-ai-form{grid-template-columns:1fr}.gqiow-geo-ai-form button{min-height:46px}}@media(prefers-reduced-motion:reduce){.gqiow-geo-ai *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* v11.2.1 floating panel fix */
.gqiow-geo-ai{right:18px;bottom:146px}.gqiow-geo-ai-panel{position:absolute;right:0;bottom:62px;margin:0}.gqiow-geo-ai.is-embedded .gqiow-geo-ai-panel{position:static}.gqiow-geo-ai-open{white-space:nowrap}@media(max-width:600px){.gqiow-geo-ai{right:10px;bottom:138px}.gqiow-geo-ai-panel{position:fixed;right:10px;left:10px;bottom:72px;width:auto;max-height:calc(100vh - 92px)}}
/* v11.3.0a Geo Intelligence Engine */
.gqiow-geo-ai-prompts{display:flex;gap:7px;flex-wrap:wrap;padding:10px 12px 0;background:#fff}.gqiow-geo-ai-prompts button{border:1px solid #b9cdcf;border-radius:999px;background:#f5f9f9;color:#18344a;padding:7px 10px;font-size:12px;cursor:pointer}.gqiow-geo-ai-prompts button:hover{background:#e8f3f2}.gqiow-geo-ai-status{padding:0 12px 8px;color:#5c6f78;font-size:12px}.gqiow-geo-ai-suggestion{display:block}.gqiow-geo-ai-suggestion p{margin:7px 0;color:#52656e;font-size:13px;line-height:1.4}.gqiow-geo-ai-actions{display:flex;gap:8px;margin-top:8px}.gqiow-geo-ai-actions a{display:inline-flex;align-items:center;justify-content:center;border-radius:8px;background:#176b68;color:#fff;text-decoration:none;padding:7px 10px;font-size:12px;font-weight:700}.gqiow-geo-ai-actions a+ a{background:#18344a}.gqiow-geo-ai-suggestions{overflow:auto;max-height:260px}.gqiow-geo-ai-panel{bottom:62px}.gqiow-geo-ai{bottom:88px}@media(max-width:600px){.gqiow-geo-ai{bottom:76px}.gqiow-geo-ai-prompts{overflow-x:auto;flex-wrap:nowrap}.gqiow-geo-ai-prompts button{white-space:nowrap}}
/* v11.3.0b1 natural-language route cards */
.gqiow-geo-ai-route{padding:0 12px 12px;overflow:auto;max-height:340px}.gqiow-ai-route-card{border:1px solid #b9cdcf;border-radius:14px;background:#f8fbfb;padding:12px}.gqiow-ai-route-card h3{margin:0 0 4px;font-size:18px;color:#18344a}.gqiow-ai-route-summary{margin:0 0 10px;color:#52656e;font-size:13px}.gqiow-ai-route-card ol{margin:0;padding-left:22px}.gqiow-ai-route-card li{margin:0 0 10px;padding:10px;border-radius:10px;background:#fff;border:1px solid #dce7e8}.gqiow-ai-route-stop-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.gqiow-ai-route-stop-head span{border-radius:999px;background:#e5f2ef;color:#176b68;padding:3px 7px;font-size:11px;font-weight:700}.gqiow-ai-route-card small{display:block;margin-top:3px;color:#657780}.gqiow-ai-route-share{display:inline-flex;margin-top:4px;color:#176b68;font-weight:700;text-decoration:none}.gqiow-geo-ai-messages{max-height:240px}.gqiow-geo-ai-panel{max-height:min(760px,calc(100vh - 110px))}
.gqiow-geo-ai-clear{margin-left:auto;background:transparent;border:1px solid currentColor;border-radius:999px;padding:.35rem .65rem;font-size:.78rem;cursor:pointer}.gqiow-geo-ai-panel header{gap:.5rem}.gqiow-geo-ai-panel header>[data-gqiow-geo-ai-close]{order:3}

/* v11.5.1 Geo AI Chat v2: one-scroll conversation and mobile-safe header */
.gqiow-geo-ai-panel{
  width:min(430px,calc(100vw - 20px));
  height:min(720px,calc(100dvh - 100px));
  max-height:calc(100dvh - 100px);
  overflow:hidden;
  display:flex;
  flex-direction:column;
  box-sizing:border-box;
}
.gqiow-geo-ai.is-embedded .gqiow-geo-ai-panel{height:min(720px,80dvh);max-height:80dvh}
.gqiow-geo-ai-header{
  flex:0 0 auto;
  display:flex;
  align-items:center;
  gap:8px;
  min-width:0;
  padding:12px 14px!important;
}
.gqiow-geo-ai-heading{display:flex!important;flex:1 1 auto;min-width:0;flex-direction:column}
.gqiow-geo-ai-heading strong{font-size:17px;line-height:1.15}
.gqiow-geo-ai-heading small{font-size:11px;line-height:1.25;opacity:.92;white-space:normal}
.gqiow-geo-ai-close{
  flex:0 0 38px;
  width:38px;
  height:38px;
  padding:0!important;
  display:grid;
  place-items:center;
  border-radius:50%!important;
  line-height:1!important;
  font-size:28px!important;
}
.gqiow-geo-ai-clear{
  order:2;
  flex:0 0 auto;
  margin-left:0!important;
  max-width:82px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  padding:6px 9px!important;
  font-size:11px!important;
}
.gqiow-geo-ai-header>[data-gqiow-geo-ai-close]{order:3!important}
.gqiow-geo-ai-conversation{
  flex:1 1 auto;
  min-height:0;
  overflow-y:auto;
  overflow-x:hidden;
  overscroll-behavior:contain;
  -webkit-overflow-scrolling:touch;
  scroll-behavior:smooth;
  background:#f5f8f8;
}
.gqiow-geo-ai-messages{
  min-height:0!important;
  max-height:none!important;
  overflow:visible!important;
  padding:14px 14px 4px;
  background:transparent!important;
}
.gqiow-geo-ai-prompts{
  overflow:visible!important;
  padding:8px 14px 12px!important;
  background:transparent!important;
}
.gqiow-geo-ai-prompts.is-hidden{display:none!important}
.gqiow-geo-ai-status{padding:4px 14px 10px!important;background:transparent}
.gqiow-geo-ai-route,
.gqiow-geo-ai-suggestions{
  max-height:none!important;
  overflow:visible!important;
  padding-left:14px!important;
  padding-right:14px!important;
}
.gqiow-geo-ai-route{padding-bottom:10px!important}
.gqiow-geo-ai-suggestions{padding-bottom:16px!important}
.gqiow-geo-ai-form{
  flex:0 0 auto;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:end;
  background:#fff;
  padding:10px!important;
  border-top:1px solid #dce7e8;
  box-shadow:0 -4px 16px rgba(24,52,74,.06);
}
.gqiow-geo-ai-form textarea{
  width:100%;
  min-width:0;
  min-height:46px;
  max-height:110px;
  box-sizing:border-box;
}
.gqiow-geo-ai-form button{min-height:46px;white-space:nowrap}
.gqiow-geo-ai-suggestion{background:#fff;border-radius:12px!important;padding:11px!important;margin:0}
.gqiow-geo-ai-message.is-user{margin-left:36px;background:#176b68}
.gqiow-geo-ai-message.is-geo{margin-right:36px}
@media(max-width:600px){
  .gqiow-geo-ai{right:6px!important;left:6px!important;bottom:70px!important}
  .gqiow-geo-ai-open{margin-left:auto;display:block}
  .gqiow-geo-ai-panel{
    position:fixed!important;
    left:6px!important;
    right:6px!important;
    top:8px!important;
    bottom:8px!important;
    width:auto!important;
    height:auto!important;
    max-height:none!important;
    border-radius:14px;
  }
  .gqiow-geo-ai-header{padding:10px 11px!important}
  .gqiow-geo-ai-heading strong{font-size:16px}
  .gqiow-geo-ai-heading small{font-size:10px}
  .gqiow-geo-ai-clear{max-width:58px;padding:6px 7px!important}
  .gqiow-geo-ai-close{flex-basis:36px;width:36px;height:36px}
  .gqiow-geo-ai-prompts{flex-wrap:wrap!important;overflow:visible!important}
  .gqiow-geo-ai-prompts button{white-space:normal!important;text-align:left}
  .gqiow-geo-ai-form{grid-template-columns:minmax(0,1fr) auto!important;gap:7px!important;padding:8px!important}
  .gqiow-geo-ai-form button{padding:9px 11px!important;font-size:13px}
  .gqiow-geo-ai-message.is-user{margin-left:24px}
  .gqiow-geo-ai-message.is-geo{margin-right:24px}
}
@media(max-width:360px){
  .gqiow-geo-ai-heading small{display:none}
  .gqiow-geo-ai-clear{max-width:50px;font-size:10px!important}
  .gqiow-geo-ai-form button{padding:8px 9px!important;font-size:12px}
}
