.bcv-ge-pa {
  position: fixed;
  right: 22px;
  bottom: 22px;
  z-index: 99998;
  font-family: inherit;
}

.bcv-ge-pa * {
  box-sizing: border-box;
}

.bcv-ge-pa-launcher {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  border: 0;
  border-radius: 999px;
  padding: 12px 16px;
  background: linear-gradient(135deg, #0f74e5, #17a7e8);
  color: #ffffff;
  box-shadow: 0 18px 45px rgba(15, 116, 229, .28);
  font-size: 13px;
  font-weight: 900;
  line-height: 1.1;
  cursor: pointer;
}

.bcv-ge-pa-launcher:hover,
.bcv-ge-pa-launcher:focus {
  transform: translateY(-1px);
  outline: none;
  box-shadow: 0 20px 50px rgba(15, 116, 229, .36);
}

.bcv-ge-pa-launcher-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
  border-radius: 999px;
  background: rgba(255,255,255,.18);
}

.bcv-ge-pa-launcher.is-attention {
  animation: bcv-ge-pa-pulse 1.25s ease-in-out 2;
}

@keyframes bcv-ge-pa-pulse {
  0%, 100% { transform: translateY(0) scale(1); }
  50% { transform: translateY(-2px) scale(1.035); }
}

.bcv-ge-pa-panel {
  position: absolute;
  right: 0;
  bottom: 64px;
  width: min(420px, calc(100vw - 28px));
  max-height: min(720px, calc(100vh - 110px));
  display: none;
  flex-direction: column;
  background: #ffffff;
  border: 1px solid #dce8f6;
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0 28px 80px rgba(15, 23, 42, .24);
}

.bcv-ge-pa.is-open .bcv-ge-pa-panel {
  display: flex;
}

.bcv-ge-pa-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  padding: 16px 18px;
  background: linear-gradient(135deg, #0f2f57, #0f74e5);
  color: #ffffff;
}

.bcv-ge-pa-head strong {
  display: block;
  font-size: 15px;
  line-height: 1.25;
}

.bcv-ge-pa-head small {
  display: block;
  margin-top: 3px;
  color: rgba(255,255,255,.78);
  font-size: 12px;
}

.bcv-ge-pa-close {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  min-width: 34px;
  padding: 0;
  border: 0;
  border-radius: 999px;
  background: rgba(255,255,255,.16);
  color: #ffffff;
  font-size: 22px;
  font-weight: 700;
  line-height: 1;
  cursor: pointer;
  text-align: center;
}

.bcv-ge-pa-body {
  display: flex;
  flex-direction: column;
  min-height: 0;
}

.bcv-ge-pa-chat {
  flex: 1;
  min-height: 220px;
  max-height: 390px;
  overflow-y: auto;
  padding: 16px;
  background: #f7fbff;
}

.bcv-ge-pa-msg {
  margin: 0 0 12px;
  padding: 12px 13px;
  border-radius: 14px;
  font-size: 13px;
  line-height: 1.45;
}

.bcv-ge-pa-msg-assistant {
  background: #ffffff;
  color: #172033;
  border: 1px solid #dbeafe;
  border-top-left-radius: 5px;
}

.bcv-ge-pa-msg-user {
  margin-left: 52px;
  background: #0f74e5;
  color: #ffffff;
  border-top-right-radius: 5px;
}

.bcv-ge-pa-msg p {
  margin: 8px 0;
}

.bcv-ge-pa-rec-intro {
  margin: 10px 0 7px !important;
  font-weight: 800;
}

.bcv-ge-pa-rec-list {
  list-style: none;
  padding: 0;
  margin: 8px 0 10px;
}

.bcv-ge-pa-rec-list li {
  display: flex;
  flex-direction: column;
  gap: 2px;
  padding: 8px 9px;
  margin-bottom: 6px;
  border: 1px solid #e3edf8;
  border-radius: 11px;
  background: #f8fbff;
}

.bcv-ge-pa-rec-list strong {
  color: #0f172a;
  font-size: 13px;
}

.bcv-ge-pa-rec-list small {
  color: #64748b;
  font-size: 11px;
}

.bcv-ge-pa-small {
  font-size: 12px;
  color: #46566d;
}

.bcv-ge-pa-actions {
  display: grid;
  grid-template-columns: 1fr;
  gap: 8px;
  padding: 12px 14px;
  border-top: 1px solid #e7eef8;
  background: #ffffff;
}

.bcv-ge-pa-actions button {
  border: 1px solid #cfe0f5;
  border-radius: 12px;
  padding: 10px 12px;
  background: #ffffff;
  color: #0f2f57;
  font-size: 13px;
  font-weight: 850;
  text-align: left;
  cursor: pointer;
}

.bcv-ge-pa-actions button:hover,
.bcv-ge-pa-actions button:focus {
  border-color: #0f74e5;
  background: #f5faff;
  outline: none;
}

.bcv-ge-pa-ask {
  padding: 13px 14px 15px;
  background: #f8fbff;
  border-top: 1px solid #e7eef8;
}

.bcv-ge-pa-ask label {
  display: block;
  margin-bottom: 7px;
  color: #0f172a;
  font-size: 12px;
  font-weight: 900;
}

.bcv-ge-pa-ask > div {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 8px;
}

.bcv-ge-pa-ask input {
  width: 100%;
  border: 1px solid #cfe0f5;
  border-radius: 12px;
  padding: 10px 11px;
  background: #ffffff;
  color: #172033;
  font-size: 13px;
}

.bcv-ge-pa-ask button {
  border: 0;
  border-radius: 12px;
  padding: 10px 13px;
  background: #0f74e5;
  color: #ffffff;
  font-size: 13px;
  font-weight: 900;
  cursor: pointer;
}

.bcv-ge-pa-note {
  display: block;
  margin-top: 8px;
  color: #64748b;
  font-size: 11px;
  line-height: 1.35;
}

@media (max-width: 680px) {
  .bcv-ge-pa {
    left: 12px;
    right: 12px;
    bottom: 14px;
  }

  .bcv-ge-pa-launcher {
    width: 100%;
    justify-content: center;
  }

  .bcv-ge-pa-panel {
    left: 0;
    right: 0;
    bottom: 62px;
    width: 100%;
    max-height: calc(100vh - 92px);
    border-radius: 18px;
  }

  .bcv-ge-pa-chat {
    max-height: 42vh;
  }
}

.bcv-ge-pa-close:hover,
.bcv-ge-pa-close:focus {
  background: rgba(255,255,255,.24);
  outline: none;
}



/* v1.0.3443210987654321096 Blue AI compact launcher */
.bcv-ge-pa {
  left: 22px;
  right: auto;
  bottom: 22px;
  z-index: 99998;
}

.bcv-ge-pa-launcher {
  width: 58px;
  height: 58px;
  min-width: 58px;
  padding: 0;
  justify-content: center;
  gap: 0;
  border-radius: 999px;
  background: linear-gradient(135deg, #1455d9, #13a8f5);
  box-shadow: 0 18px 42px rgba(15, 116, 229, .30);
  position: relative;
}

.bcv-ge-pa-launcher-icon {
  width: 34px;
  height: 34px;
  font-size: 13px;
  font-weight: 950;
  letter-spacing: .03em;
  background: rgba(255,255,255,.18);
}

.bcv-ge-pa-launcher-text {
  position: absolute;
  left: 68px;
  top: 50%;
  transform: translateY(-50%) translateX(-6px);
  opacity: 0;
  pointer-events: none;
  white-space: nowrap;
  background: #0f2f57;
  color: #ffffff;
  border-radius: 999px;
  padding: 8px 12px;
  font-size: 12px;
  font-weight: 900;
  box-shadow: 0 12px 30px rgba(15, 23, 42, .20);
  transition: opacity .16s ease, transform .16s ease;
}

.bcv-ge-pa-launcher:hover .bcv-ge-pa-launcher-text,
.bcv-ge-pa-launcher:focus .bcv-ge-pa-launcher-text {
  opacity: 1;
  transform: translateY(-50%) translateX(0);
}

.bcv-ge-pa-panel {
  left: 0;
  right: auto;
  bottom: 74px;
  width: min(400px, calc(100vw - 32px));
}

.bcv-ge-pa-head {
  background: linear-gradient(135deg, #0f2f57, #1455d9);
}

.bcv-ge-pa-close {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  min-width: 34px;
  padding: 0;
  line-height: 1;
  border-radius: 999px;
}

@media (max-width: 680px) {
  .bcv-ge-pa {
    left: auto;
    right: 16px;
    bottom: 86px;
  }

  .bcv-ge-pa-launcher {
    width: 54px;
    height: 54px;
    min-width: 54px;
  }

  .bcv-ge-pa-launcher-icon {
    width: 32px;
    height: 32px;
    font-size: 12px;
  }

  .bcv-ge-pa-launcher-text {
    display: none;
  }

  .bcv-ge-pa-panel {
    left: auto;
    right: 0;
    bottom: 64px;
    width: min(390px, calc(100vw - 24px));
    max-height: calc(100vh - 124px);
    border-radius: 18px;
  }
}

@media (max-width: 430px) {
  .bcv-ge-pa {
    right: 12px;
    bottom: 82px;
  }

  .bcv-ge-pa-panel {
    right: -2px;
    width: calc(100vw - 20px);
  }
}



/* v1.0.344321098765432109 placement refinement: right-side desktop + viewport-safe mobile panel */
.bcv-ge-pa {
  left: auto !important;
  right: 22px !important;
  bottom: 22px !important;
}

.bcv-ge-pa-panel {
  left: auto !important;
  right: 0 !important;
  bottom: 74px !important;
  width: min(400px, calc(100vw - 32px));
}

.bcv-ge-pa-launcher-text {
  left: auto !important;
  right: 68px !important;
  transform: translateY(-50%) translateX(6px);
}

.bcv-ge-pa-launcher:hover .bcv-ge-pa-launcher-text,
.bcv-ge-pa-launcher:focus .bcv-ge-pa-launcher-text {
  transform: translateY(-50%) translateX(0);
}

@media (max-width: 680px) {
  .bcv-ge-pa {
    left: auto !important;
    right: 14px !important;
    bottom: calc(78px + env(safe-area-inset-bottom, 0px)) !important;
  }

  .bcv-ge-pa-panel {
    position: fixed !important;
    top: calc(14px + env(safe-area-inset-top, 0px)) !important;
    right: 10px !important;
    left: 10px !important;
    bottom: calc(86px + env(safe-area-inset-bottom, 0px)) !important;
    width: auto !important;
    max-width: none !important;
    max-height: none !important;
    border-radius: 18px;
    display: none;
  }

  .bcv-ge-pa.is-open .bcv-ge-pa-panel {
    display: flex !important;
  }

  .bcv-ge-pa-chat {
    flex: 1 1 auto;
    max-height: none !important;
    min-height: 0;
  }

  .bcv-ge-pa-body {
    min-height: 0;
    flex: 1 1 auto;
    overflow: hidden;
  }

  .bcv-ge-pa-actions {
    flex: 0 0 auto;
  }

  .bcv-ge-pa-ask {
    flex: 0 0 auto;
  }

  .bcv-ge-pa-launcher-text {
    display: none !important;
  }
}

@media (max-width: 430px) {
  .bcv-ge-pa {
    right: 12px !important;
    bottom: calc(76px + env(safe-area-inset-bottom, 0px)) !important;
  }

  .bcv-ge-pa-panel {
    top: calc(12px + env(safe-area-inset-top, 0px)) !important;
    right: 8px !important;
    left: 8px !important;
    bottom: calc(84px + env(safe-area-inset-bottom, 0px)) !important;
    width: auto !important;
  }
}


/* v1.0.344321098765432109 launcher icon + softer hover label */
.bcv-ge-pa-launcher-icon {
  font-size: 24px;
  font-weight: 800;
  letter-spacing: 0;
}

.bcv-ge-pa-launcher-text {
  font-weight: 600 !important;
}



/* v1.0.344321 Blue AI desktop drawer + mobile full-screen chat */
:root {
  --bcv-blue-ai-drawer-width: 420px;
  --bcv-blue-ai-drawer-gap: 20px;
}

.bcv-ge-pa {
  position: fixed !important;
  right: 22px !important;
  left: auto !important;
  bottom: 22px !important;
  z-index: 99998 !important;
}

.bcv-ge-pa-launcher {
  width: 58px !important;
  height: 58px !important;
  min-width: 58px !important;
  border-radius: 999px !important;
  box-shadow: 0 18px 44px rgba(15, 116, 229, .30) !important;
}

.bcv-ge-pa.is-open .bcv-ge-pa-launcher {
  opacity: 0;
  pointer-events: none;
  transform: scale(.92);
}

.bcv-ge-pa-panel {
  position: fixed !important;
  top: 22px !important;
  right: 22px !important;
  left: auto !important;
  bottom: 22px !important;
  width: min(var(--bcv-blue-ai-drawer-width), calc(100vw - 44px)) !important;
  height: auto !important;
  max-height: none !important;
  border-radius: 20px !important;
  box-shadow: 0 24px 70px rgba(15, 23, 42, .22) !important;
  overflow: hidden !important;
  display: none;
  flex-direction: column !important;
  transform: translateX(18px);
  opacity: 0;
}

.bcv-ge-pa.is-open .bcv-ge-pa-panel {
  display: flex !important;
  transform: translateX(0);
  opacity: 1;
}

.bcv-ge-pa-head {
  flex: 0 0 auto;
  border-radius: 0 !important;
  padding: 16px 18px !important;
  min-height: 72px;
}

.bcv-ge-pa-body {
  flex: 1 1 auto !important;
  min-height: 0 !important;
  overflow: hidden !important;
  display: flex !important;
  flex-direction: column !important;
}

.bcv-ge-pa-chat {
  flex: 1 1 auto !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow-y: auto !important;
  padding: 16px !important;
}

.bcv-ge-pa-actions {
  flex: 0 0 auto !important;
  padding: 12px 16px !important;
  border-top: 1px solid #e5edf7;
  background: #ffffff;
}

.bcv-ge-pa-ask {
  flex: 0 0 auto !important;
  padding: 14px 16px 16px !important;
  border-top: 1px solid #e5edf7;
  background: #f8fbff;
}

/* Give the builder workspace breathing room while Blue AI is open on wide screens. */
@media (min-width: 1280px) {
  body.bcv-ge-pa-drawer-open .bcv-growthengine-builder,
  body.bcv-ge-pa-drawer-open .bcv-ge-builder,
  body.bcv-ge-pa-drawer-open .bcv-ge-builder-wrap,
  body.bcv-ge-pa-drawer-open .bcv-ge-wrap,
  body.bcv-ge-pa-drawer-open .growthengine-builder,
  body.bcv-ge-pa-drawer-open main,
  body.bcv-ge-pa-drawer-open .site-main,
  body.bcv-ge-pa-drawer-open #primary {
    transition: margin-right .22s ease, max-width .22s ease;
  }

  body.bcv-ge-pa-drawer-open .bcv-growthengine-builder,
  body.bcv-ge-pa-drawer-open .bcv-ge-builder,
  body.bcv-ge-pa-drawer-open .bcv-ge-builder-wrap,
  body.bcv-ge-pa-drawer-open .bcv-ge-wrap,
  body.bcv-ge-pa-drawer-open .growthengine-builder {
    margin-right: calc(var(--bcv-blue-ai-drawer-width) + var(--bcv-blue-ai-drawer-gap)) !important;
  }
}

/* If the page layout cannot shift safely, the drawer still sits as a clear right-side workspace. */
@media (max-width: 1279px) and (min-width: 681px) {
  .bcv-ge-pa-panel {
    width: min(400px, calc(100vw - 34px)) !important;
    top: 18px !important;
    right: 18px !important;
    bottom: 18px !important;
  }
}

/* Mobile: app-style full screen panel instead of side drawer. */
@media (max-width: 680px) {
  body.bcv-ge-pa-drawer-open {
    overflow: hidden !important;
  }

  .bcv-ge-pa {
    right: 14px !important;
    bottom: calc(78px + env(safe-area-inset-bottom, 0px)) !important;
    left: auto !important;
  }

  .bcv-ge-pa-launcher {
    width: 54px !important;
    height: 54px !important;
    min-width: 54px !important;
  }

  .bcv-ge-pa-panel {
    position: fixed !important;
    top: calc(10px + env(safe-area-inset-top, 0px)) !important;
    right: 8px !important;
    left: 8px !important;
    bottom: calc(10px + env(safe-area-inset-bottom, 0px)) !important;
    width: auto !important;
    max-width: none !important;
    max-height: none !important;
    border-radius: 18px !important;
    transform: translateY(16px);
  }

  .bcv-ge-pa.is-open .bcv-ge-pa-panel {
    display: flex !important;
    transform: translateY(0);
    opacity: 1;
  }

  .bcv-ge-pa-head {
    min-height: 68px;
    padding: 14px 16px !important;
  }

  .bcv-ge-pa-chat {
    padding: 14px !important;
  }

  .bcv-ge-pa-actions {
    padding: 10px 14px !important;
  }

  .bcv-ge-pa-ask {
    padding: 12px 14px calc(14px + env(safe-area-inset-bottom, 0px)) !important;
  }
}

@media (max-width: 420px) {
  .bcv-ge-pa-panel {
    top: calc(8px + env(safe-area-inset-top, 0px)) !important;
    right: 6px !important;
    left: 6px !important;
    bottom: calc(8px + env(safe-area-inset-bottom, 0px)) !important;
  }
}



/* v1.0.34432 Canva-style overlay drawer: no page splitting or builder squeezing */
:root {
  --bcv-blue-ai-canva-width: 370px;
}

/* Never push or shrink the builder when Blue AI opens */
body.bcv-ge-pa-drawer-open .bcv-growthengine-builder,
body.bcv-ge-pa-drawer-open .bcv-ge-builder,
body.bcv-ge-pa-drawer-open .bcv-ge-builder-wrap,
body.bcv-ge-pa-drawer-open .bcv-ge-wrap,
body.bcv-ge-pa-drawer-open .growthengine-builder,
body.bcv-ge-pa-drawer-open main,
body.bcv-ge-pa-drawer-open .site-main,
body.bcv-ge-pa-drawer-open #primary {
  margin-right: initial !important;
  max-width: initial !important;
}

/* Desktop launcher remains compact */
.bcv-ge-pa {
  position: fixed !important;
  right: 22px !important;
  left: auto !important;
  bottom: 22px !important;
  z-index: 99998 !important;
}

.bcv-ge-pa-launcher {
  width: 58px !important;
  height: 58px !important;
  min-width: 58px !important;
  border-radius: 999px !important;
  box-shadow: 0 18px 44px rgba(15, 116, 229, .30) !important;
}

.bcv-ge-pa.is-open .bcv-ge-pa-launcher {
  opacity: 0;
  pointer-events: none;
  transform: scale(.92);
}

/* Desktop: Canva-like right assistant rail */
@media (min-width: 681px) {
  .bcv-ge-pa-panel {
    position: fixed !important;
    top: 0 !important;
    right: 0 !important;
    left: auto !important;
    bottom: 0 !important;
    width: min(var(--bcv-blue-ai-canva-width), 92vw) !important;
    height: 100vh !important;
    max-height: none !important;
    border-radius: 0 !important;
    border-left: 1px solid rgba(203, 213, 225, .75) !important;
    border-top: 0 !important;
    border-right: 0 !important;
    border-bottom: 0 !important;
    box-shadow: -22px 0 70px rgba(15, 23, 42, .13) !important;
    background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%) !important;
    overflow: hidden !important;
    display: none;
    flex-direction: column !important;
    transform: translateX(100%);
    opacity: 1;
  }

  .bcv-ge-pa.is-open .bcv-ge-pa-panel {
    display: flex !important;
    transform: translateX(0);
  }

  .bcv-ge-pa-head {
    flex: 0 0 auto;
    min-height: 78px;
    padding: 18px 20px !important;
    border-radius: 0 !important;
    background: linear-gradient(135deg, #e9f6ff 0%, #edf4ff 52%, #f8fbff 100%) !important;
    color: #0f172a !important;
    border-bottom: 1px solid #dbe7f5 !important;
  }

  .bcv-ge-pa-head strong {
    color: #0f172a !important;
    font-size: 16px !important;
    font-weight: 850 !important;
  }

  .bcv-ge-pa-head small {
    color: #64748b !important;
    font-weight: 500 !important;
  }

  .bcv-ge-pa-close {
    background: rgba(15, 23, 42, .06) !important;
    color: #0f172a !important;
  }

  .bcv-ge-pa-close:hover,
  .bcv-ge-pa-close:focus {
    background: rgba(15, 23, 42, .10) !important;
    color: #0f172a !important;
  }

  .bcv-ge-pa-body {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    overflow: hidden !important;
    display: flex !important;
    flex-direction: column !important;
    background: transparent !important;
  }

  .bcv-ge-pa-chat {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow-y: auto !important;
    padding: 18px 18px 16px !important;
    background: transparent !important;
  }

  .bcv-ge-pa-actions {
    flex: 0 0 auto !important;
    padding: 12px 18px !important;
    border-top: 1px solid #dbe7f5 !important;
    background: rgba(255, 255, 255, .88) !important;
    backdrop-filter: blur(8px);
  }

  .bcv-ge-pa-ask {
    flex: 0 0 auto !important;
    padding: 14px 18px 18px !important;
    border-top: 1px solid #dbe7f5 !important;
    background: rgba(255, 255, 255, .94) !important;
    backdrop-filter: blur(8px);
  }

  .bcv-ge-pa-msg {
    box-shadow: none !important;
  }

  .bcv-ge-pa-msg.assistant {
    background: #ffffff !important;
    border: 1px solid #dbe7f5 !important;
  }

  .bcv-ge-pa-msg.user {
    background: #1473e6 !important;
  }
}

/* Mobile: app-style full screen panel */
@media (max-width: 680px) {
  body.bcv-ge-pa-drawer-open {
    overflow: hidden !important;
  }

  .bcv-ge-pa {
    right: 14px !important;
    bottom: calc(78px + env(safe-area-inset-bottom, 0px)) !important;
    left: auto !important;
  }

  .bcv-ge-pa-launcher {
    width: 54px !important;
    height: 54px !important;
    min-width: 54px !important;
  }

  .bcv-ge-pa.is-open .bcv-ge-pa-launcher {
    opacity: 0;
    pointer-events: none;
  }

  .bcv-ge-pa-panel {
    position: fixed !important;
    top: calc(8px + env(safe-area-inset-top, 0px)) !important;
    right: 6px !important;
    left: 6px !important;
    bottom: calc(8px + env(safe-area-inset-bottom, 0px)) !important;
    width: auto !important;
    height: auto !important;
    max-width: none !important;
    max-height: none !important;
    border-radius: 18px !important;
    transform: translateY(14px);
    box-shadow: 0 22px 70px rgba(15, 23, 42, .25) !important;
  }

  .bcv-ge-pa.is-open .bcv-ge-pa-panel {
    display: flex !important;
    transform: translateY(0);
    opacity: 1;
  }

  .bcv-ge-pa-head {
    min-height: 68px;
    padding: 14px 16px !important;
  }

  .bcv-ge-pa-chat {
    padding: 14px !important;
  }

  .bcv-ge-pa-actions {
    padding: 10px 14px !important;
  }

  .bcv-ge-pa-ask {
    padding: 12px 14px calc(14px + env(safe-area-inset-bottom, 0px)) !important;
  }
}



/* v1.0.3443 TRUE desktop split view: the page reflows beside Blue AI instead of being covered */
:root {
  --bcv-blue-ai-split-width: 390px;
}

/* Desktop/laptop split view */
@media (min-width: 981px) {
  html,
  body {
    transition: padding-right .22s ease;
  }

  body.bcv-ge-pa-drawer-open {
    padding-right: var(--bcv-blue-ai-split-width) !important;
    overflow-x: hidden !important;
  }

  /* Keep Blue AI split-view layout from leaking into unrelated site elements.
     Earlier versions used a broad `body.bcv-ge-pa-drawer-open * { max-width: 100%; }`
     rule and forced header max-width while the drawer was open. On Astra headers this could
     make menu links repaint/reflow and appear bolder. Keep the drawer behavior scoped instead. */

  body.bcv-ge-pa-drawer-open .site-header .main-header-menu a,
  body.bcv-ge-pa-drawer-open .site-header .menu-link,
  body.bcv-ge-pa-drawer-open .ast-builder-menu a,
  body.bcv-ge-pa-drawer-open .ast-builder-menu .menu-link,
  body.bcv-ge-pa-drawer-open .main-navigation a,
  body.bcv-ge-pa-drawer-open .main-navigation .menu-link {
    font-weight: 400 !important;
  }

  /* Undo previous margin-based experiments so the page is reduced once by body padding only */
  body.bcv-ge-pa-drawer-open .bcv-growthengine-builder,
  body.bcv-ge-pa-drawer-open .bcv-ge-builder,
  body.bcv-ge-pa-drawer-open .bcv-ge-builder-wrap,
  body.bcv-ge-pa-drawer-open .bcv-ge-wrap,
  body.bcv-ge-pa-drawer-open .growthengine-builder,
  body.bcv-ge-pa-drawer-open main,
  body.bcv-ge-pa-drawer-open .site-main,
  body.bcv-ge-pa-drawer-open #primary {
    margin-right: auto !important;
    max-width: 100% !important;
  }

  .bcv-ge-pa {
    position: fixed !important;
    right: 22px !important;
    left: auto !important;
    bottom: 22px !important;
    z-index: 99998 !important;
  }

  .bcv-ge-pa-launcher {
    width: 58px !important;
    height: 58px !important;
    min-width: 58px !important;
    border-radius: 999px !important;
    box-shadow: 0 18px 44px rgba(15, 116, 229, .30) !important;
  }

  .bcv-ge-pa.is-open .bcv-ge-pa-launcher {
    opacity: 0 !important;
    pointer-events: none !important;
    transform: scale(.92) !important;
  }

  .bcv-ge-pa-panel {
    position: fixed !important;
    top: 0 !important;
    right: 0 !important;
    left: auto !important;
    bottom: 0 !important;
    width: var(--bcv-blue-ai-split-width) !important;
    height: 100vh !important;
    max-height: none !important;
    border-radius: 0 !important;
    border-left: 1px solid rgba(203, 213, 225, .82) !important;
    border-top: 0 !important;
    border-right: 0 !important;
    border-bottom: 0 !important;
    box-shadow: -10px 0 34px rgba(15, 23, 42, .08) !important;
    background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%) !important;
    overflow: hidden !important;
    display: none;
    flex-direction: column !important;
    transform: translateX(100%);
    opacity: 1;
  }

  .bcv-ge-pa.is-open .bcv-ge-pa-panel {
    display: flex !important;
    transform: translateX(0) !important;
  }

  .bcv-ge-pa-head {
    flex: 0 0 auto !important;
    min-height: 76px !important;
    padding: 18px 20px !important;
    border-radius: 0 !important;
    background: linear-gradient(135deg, #e9f6ff 0%, #edf4ff 52%, #f8fbff 100%) !important;
    color: #0f172a !important;
    border-bottom: 1px solid #dbe7f5 !important;
  }

  .bcv-ge-pa-head strong {
    color: #0f172a !important;
    font-size: 16px !important;
    font-weight: 850 !important;
  }

  .bcv-ge-pa-head small {
    color: #64748b !important;
    font-weight: 500 !important;
  }

  .bcv-ge-pa-close {
    background: rgba(15, 23, 42, .06) !important;
    color: #0f172a !important;
  }

  .bcv-ge-pa-close:hover,
  .bcv-ge-pa-close:focus {
    background: rgba(15, 23, 42, .10) !important;
    color: #0f172a !important;
  }

  .bcv-ge-pa-body {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    overflow: hidden !important;
    display: flex !important;
    flex-direction: column !important;
    background: transparent !important;
  }

  .bcv-ge-pa-chat {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow-y: auto !important;
    padding: 18px 18px 16px !important;
    background: transparent !important;
  }

  .bcv-ge-pa-actions {
    flex: 0 0 auto !important;
    padding: 12px 18px !important;
    border-top: 1px solid #dbe7f5 !important;
    background: rgba(255, 255, 255, .90) !important;
    backdrop-filter: blur(8px);
  }

  .bcv-ge-pa-ask {
    flex: 0 0 auto !important;
    padding: 14px 18px 18px !important;
    border-top: 1px solid #dbe7f5 !important;
    background: rgba(255, 255, 255, .96) !important;
    backdrop-filter: blur(8px);
  }
}

/* Narrow laptops: use a slimmer assistant column to keep the builder usable */
@media (min-width: 981px) and (max-width: 1280px) {
  :root {
    --bcv-blue-ai-split-width: 350px;
  }

  .bcv-ge-pa-panel {
    width: var(--bcv-blue-ai-split-width) !important;
  }
}

/* Mobile/tablet: use app-style full screen instead of split view */
@media (max-width: 980px) {
  body.bcv-ge-pa-drawer-open {
    overflow: hidden !important;
    padding-right: 0 !important;
  }

  .bcv-ge-pa {
    right: 14px !important;
    bottom: calc(78px + env(safe-area-inset-bottom, 0px)) !important;
    left: auto !important;
  }

  .bcv-ge-pa-launcher {
    width: 54px !important;
    height: 54px !important;
    min-width: 54px !important;
  }

  .bcv-ge-pa.is-open .bcv-ge-pa-launcher {
    opacity: 0 !important;
    pointer-events: none !important;
  }

  .bcv-ge-pa-panel {
    position: fixed !important;
    top: calc(8px + env(safe-area-inset-top, 0px)) !important;
    right: 6px !important;
    left: 6px !important;
    bottom: calc(8px + env(safe-area-inset-bottom, 0px)) !important;
    width: auto !important;
    height: auto !important;
    max-width: none !important;
    max-height: none !important;
    border-radius: 18px !important;
    transform: translateY(14px);
    box-shadow: 0 22px 70px rgba(15, 23, 42, .25) !important;
  }

  .bcv-ge-pa.is-open .bcv-ge-pa-panel {
    display: flex !important;
    transform: translateY(0);
    opacity: 1;
  }

  .bcv-ge-pa-head {
    min-height: 68px;
    padding: 14px 16px !important;
  }

  .bcv-ge-pa-chat {
    padding: 14px !important;
  }

  .bcv-ge-pa-actions {
    padding: 10px 14px !important;
  }

  .bcv-ge-pa-ask {
    padding: 12px 14px calc(14px + env(safe-area-inset-bottom, 0px)) !important;
  }
}



/* v1.0.344 Mobile Blue AI cleanup: full-screen chat and hide checkout bars while open */
@media (max-width: 980px) {
  body.bcv-ge-pa-drawer-open {
    overflow: hidden !important;
    padding-right: 0 !important;
    padding-bottom: 0 !important;
  }

  body.bcv-ge-pa-drawer-open.bcv-ge-floating-plan-visible {
    padding-bottom: 0 !important;
  }

  body.bcv-ge-pa-drawer-open #bcv-ge-mobile-plan-bar,
  body.bcv-ge-pa-drawer-open .bcv-ge-mobile-plan-bar,
  body.bcv-ge-pa-drawer-open .bcv-ge-floating-plan-bar,
  body.bcv-ge-pa-drawer-open .bcv-ge-floating-plan-bar.is-active,
  body.bcv-ge-pa-drawer-open .bcv-ge-mobile-sticky,
  body.bcv-ge-pa-drawer-open .mobile-sticky-checkout,
  body.bcv-ge-pa-drawer-open .sticky-checkout-bar {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }

  .bcv-ge-pa {
    right: 0 !important;
    left: 0 !important;
    bottom: 0 !important;
    top: 0 !important;
    z-index: 2147483000 !important;
  }

  .bcv-ge-pa:not(.is-open) {
    pointer-events: none !important;
  }

  .bcv-ge-pa:not(.is-open) .bcv-ge-pa-launcher {
    pointer-events: auto !important;
    position: fixed !important;
    right: 14px !important;
    bottom: calc(18px + env(safe-area-inset-bottom, 0px)) !important;
    left: auto !important;
    top: auto !important;
  }

  .bcv-ge-pa-launcher {
    width: 54px !important;
    height: 54px !important;
    min-width: 54px !important;
  }

  .bcv-ge-pa.is-open .bcv-ge-pa-launcher {
    opacity: 0 !important;
    pointer-events: none !important;
  }

  .bcv-ge-pa-panel {
    position: fixed !important;
    inset: 0 !important;
    top: 0 !important;
    right: 0 !important;
    left: 0 !important;
    bottom: 0 !important;
    width: 100vw !important;
    height: 100vh !important;
    height: 100dvh !important;
    max-width: none !important;
    max-height: none !important;
    border-radius: 0 !important;
    border: 0 !important;
    box-shadow: none !important;
    transform: translateY(100%) !important;
    overflow: hidden !important;
    display: none;
    flex-direction: column !important;
    background: #f8fbff !important;
  }

  .bcv-ge-pa.is-open .bcv-ge-pa-panel {
    display: flex !important;
    transform: translateY(0) !important;
    opacity: 1 !important;
  }

  .bcv-ge-pa-head {
    flex: 0 0 auto !important;
    min-height: 70px !important;
    padding: calc(12px + env(safe-area-inset-top, 0px)) 16px 12px !important;
    border-radius: 0 !important;
  }

  .bcv-ge-pa-head strong {
    font-size: 22px !important;
    line-height: 1.15 !important;
  }

  .bcv-ge-pa-head small {
    font-size: 14px !important;
  }

  .bcv-ge-pa-close {
    width: 42px !important;
    height: 42px !important;
    min-width: 42px !important;
    font-size: 24px !important;
  }

  .bcv-ge-pa-body {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    overflow: hidden !important;
  }

  .bcv-ge-pa-chat {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
    padding: 14px 14px 12px !important;
  }

  .bcv-ge-pa-msg {
    max-width: 92% !important;
  }

  .bcv-ge-pa-actions {
    flex: 0 0 auto !important;
    padding: 10px 14px !important;
    border-top: 1px solid #dbe7f5 !important;
    background: rgba(255,255,255,.96) !important;
  }

  .bcv-ge-pa.has-user-chat .bcv-ge-pa-actions {
    display: flex !important;
    gap: 8px !important;
    overflow-x: auto !important;
    overscroll-behavior-x: contain !important;
    padding: 8px 12px !important;
  }

  .bcv-ge-pa.has-user-chat .bcv-ge-pa-actions button {
    flex: 0 0 auto !important;
    width: auto !important;
    min-height: 36px !important;
    padding: 8px 12px !important;
    border-radius: 999px !important;
    font-size: 13px !important;
    line-height: 1.15 !important;
    white-space: nowrap !important;
  }

  .bcv-ge-pa-ask {
    flex: 0 0 auto !important;
    padding: 12px 14px calc(14px + env(safe-area-inset-bottom, 0px)) !important;
    border-top: 1px solid #dbe7f5 !important;
    background: #ffffff !important;
  }

  .bcv-ge-pa-ask label {
    margin-bottom: 8px !important;
  }

  .bcv-ge-pa-ask-row {
    gap: 8px !important;
  }

  .bcv-ge-pa-ask-row input,
  #bcv-ge-pa-question {
    min-height: 46px !important;
    font-size: 16px !important;
  }

  .bcv-ge-pa-ask-row button,
  #bcv-ge-pa-ask-btn {
    min-height: 46px !important;
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
}



/* v1.0.34 Mobile polish: keep launcher clear of checkout bar and tighten controls */
@media (max-width: 980px) {
  /* When closed, keep the ? launcher above the sticky checkout/plan bar */
  .bcv-ge-pa:not(.is-open) .bcv-ge-pa-launcher {
    bottom: calc(112px + env(safe-area-inset-bottom, 0px)) !important;
    right: 16px !important;
    width: 52px !important;
    height: 52px !important;
    min-width: 52px !important;
    box-shadow: 0 14px 34px rgba(15,116,229,.28) !important;
  }

  /* If the sticky bar is not present, the button still remains comfortably reachable */
  body:not(.bcv-ge-floating-plan-visible) .bcv-ge-pa:not(.is-open) .bcv-ge-pa-launcher {
    bottom: calc(82px + env(safe-area-inset-bottom, 0px)) !important;
  }

  .bcv-ge-pa-close {
    width: 38px !important;
    height: 38px !important;
    min-width: 38px !important;
    font-size: 22px !important;
    line-height: 1 !important;
  }

  .bcv-ge-pa.has-user-chat .bcv-ge-pa-actions button {
    min-height: 34px !important;
    padding: 7px 12px !important;
    font-size: 12.5px !important;
  }

  .bcv-ge-pa-ask-row button,
  #bcv-ge-pa-ask-btn {
    min-width: 64px !important;
  }
}

@media (max-width: 420px) {
  .bcv-ge-pa:not(.is-open) .bcv-ge-pa-launcher {
    bottom: calc(106px + env(safe-area-inset-bottom, 0px)) !important;
    right: 14px !important;
    width: 50px !important;
    height: 50px !important;
    min-width: 50px !important;
  }

  body:not(.bcv-ge-floating-plan-visible) .bcv-ge-pa:not(.is-open) .bcv-ge-pa-launcher {
    bottom: calc(76px + env(safe-area-inset-bottom, 0px)) !important;
  }
}
