.cw-copilot-chat {
  position: fixed;
  right: 24px;
  bottom: 24px;
  z-index: 100000;
  display: none;
  width: 458px;
  height: min(760px, calc(100vh - 48px));
  flex-direction: column;
  overflow: hidden;
  border-radius: 16px;
  background: #ffffff;
  box-shadow: 0 16px 40px rgba(9, 30, 66, 0.16);
  font-family: "Poppins", "poppins", sans-serif;
  font-size: 14px;
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

/*
 * Page stacks apply font-family/size on `*` (uplift = Poppins 15px,
 * legacy = proxima-nova 15px) and sometimes page wrappers (Pretendard, etc).
 * Those hit every descendant directly, so root-only rules never win.
 * Force the widget typeface on all nodes; code keeps monospace below.
 */
.cw-copilot-chat,
.cw-copilot-chat *:not(code):not(pre),
.cw-copilot-resume,
.cw-copilot-resume *:not(code):not(pre) {
  font-family: "Poppins", "poppins", sans-serif !important;
}

.cw-copilot-chat code,
.cw-copilot-chat pre,
.cw-copilot-chat pre code {
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace !important;
}

.cw-copilot-chat.is-open {
  display: flex;
}

.cw-copilot-chat__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex: 0 0 auto;
  padding: 12px 16px 0;
}

.cw-copilot-chat__brand {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 27px;
}

.cw-copilot-chat__brand-mark {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 26.964px;
  height: 26.964px;
  overflow: hidden;
}

.cw-copilot-chat__title {
  margin: 0;
  color: #091e42;
  font-size: 16px !important;
  font-weight: 600;
  line-height: 1;
  letter-spacing: -0.48px;
  white-space: nowrap;
}

.cw-copilot-chat__close {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  margin: 0;
  padding: 8px;
  border: 0;
  border-radius: 12px;
  background: transparent;
  cursor: pointer;
}

.cw-copilot-chat__rule {
  flex: 0 0 auto;
  height: 1px;
  margin: 14px 0 0;
  opacity: 0.5;
  background: linear-gradient(90deg, rgba(123, 102, 255, 0) 0%, #7b66ff 50%, rgba(123, 102, 255, 0) 100%);
}

.cw-copilot-chat__body {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: 0;
  padding: 24px 16px 8px;
  overflow: auto;
  overscroll-behavior: contain;
}

.cw-copilot-chat__empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
}

.cw-copilot-chat__glow {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 106px;
  height: 106px;
  margin-bottom: 24px;
}

.cw-copilot-chat__glow-ring,
.cw-copilot-chat__glow-ring--tight {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 82.68px;
  height: 82.68px;
  box-sizing: border-box;
  border-style: solid;
  border-color: rgba(10, 93, 255, 0.9);
  border-radius: 48.856px;
  transform: translate(-50%, -50%);
  pointer-events: none;
}

.cw-copilot-chat__glow-ring {
  border-width: 16.308px;
  opacity: 0.6;
  filter: blur(18.591px);
}

.cw-copilot-chat__glow-ring--tight {
  border-width: 8.154px;
  opacity: 0.7;
  filter: blur(6.36px);
}

.cw-copilot-chat__glow-core {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 82.68px;
  height: 82.68px;
  border-radius: 48.856px;
  background: #ffffff;
  box-shadow: 0 3.262px 3.262px rgba(0, 0, 0, 0.25);
}

.cw-copilot-chat__heading {
  margin: 0 0 18px;
  color: #091e42;
  font-size: 20px !important;
  font-weight: 600;
  line-height: 1;
  letter-spacing: -0.6px;
  text-align: center;
}

.cw-copilot-chat__lead {
  margin: 0;
  color: #5e6c84;
  font-size: 14px !important;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: -0.42px;
  text-align: center;
}

.cw-copilot-chat__lead + .cw-copilot-chat__lead {
  margin-top: 14px;
}

.cw-copilot-chat__prompts {
  display: flex;
  align-self: stretch;
  gap: 8px;
  width: 100%;
  margin-top: 32px;
}

.cw-copilot-chat__prompt {
  display: flex;
  flex: 1 1 0;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 12px;
  min-width: 0;
  margin: 0;
  padding: 16px 8px;
  border: 1px solid #dfe1e6;
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.55);
  cursor: pointer;
  backdrop-filter: blur(6px);
}

.cw-copilot-chat__prompt-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 999px;
  background: #f8effb;
}

.cw-copilot-chat__prompt-label {
  color: #5e6c84;
  font-size: 12px !important;
  font-weight: 400;
  line-height: 1;
  letter-spacing: -0.36px;
  text-align: center;
}

.cw-copilot-chat__thread {
  display: none;
  width: 100%;
}

.cw-copilot-chat__loader {
  display: none;
  flex-direction: column;
  gap: 16px;
  width: 100%;
}

.cw-copilot-chat__loader-label {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
}

.cw-copilot-chat__loader-bubble {
  display: block;
  height: 56px;
  border-radius: 12px;
  background: linear-gradient(90deg, #f4efff 25%, #fbf8ff 50%, #f4efff 75%);
  background-size: 200% 100%;
  animation: cw-copilot-loader 1.4s ease-in-out infinite;
}

.cw-copilot-chat__loader-bubble--user {
  align-self: flex-end;
  width: 58%;
  height: 40px;
  border-radius: 12px 12px 4px 12px;
  background: linear-gradient(90deg, #f1e0f7 25%, #f8eef9 50%, #f1e0f7 75%);
  background-size: 200% 100%;
}

.cw-copilot-chat__loader-bubble--assistant {
  width: 86%;
}

.cw-copilot-chat__loader-bubble--assistant.is-short {
  width: 48%;
}

.cw-copilot-chat.is-loading:not(.has-messages) .cw-copilot-chat__body {
  align-items: stretch;
  justify-content: flex-start;
}

.cw-copilot-chat.is-loading:not(.has-messages) .cw-copilot-chat__empty,
.cw-copilot-chat.is-loading:not(.has-messages) .cw-copilot-chat__prompts {
  display: none;
}

.cw-copilot-chat.is-loading:not(.has-messages) .cw-copilot-chat__loader {
  display: flex;
}

@keyframes cw-copilot-loader {
  0% {
    background-position: 100% 0;
  }
  100% {
    background-position: -100% 0;
  }
}

@media (prefers-reduced-motion: reduce) {
  .cw-copilot-chat__loader-bubble {
    animation: none;
  }
}

.cw-copilot-chat.has-messages .cw-copilot-chat__body {
  align-items: stretch;
  justify-content: flex-start;
  padding: 24px 20px 24px 12px;
}

.cw-copilot-chat.has-messages .cw-copilot-chat__empty {
  display: none;
}

.cw-copilot-chat.has-messages .cw-copilot-chat__thread {
  display: flex;
  flex-direction: column;
  gap: 16px;
  align-self: stretch;
  width: 100%;
}

/* Scoped + !important so late page `p` / `*` resets cannot change chat copy */
.cw-copilot-chat .cw-copilot-chat__message,
.cw-copilot-chat p.cw-copilot-chat__message {
  max-width: 100%;
  margin: 0;
  color: #091e42;
  font-size: 14px !important;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: -0.28px;
}

.cw-copilot-chat__message--user {
  align-self: flex-end;
  max-width: 80%;
  padding: 12px 16px;
  border-radius: 12px 12px 4px 12px;
  background: #f1e0f7;
}

.cw-copilot-chat__message--assistant {
  display: flex;
  align-items: flex-end;
  align-self: stretch;
  gap: 10px;
}

.cw-copilot-chat__message--assistant.is-plan,
.cw-copilot-chat__message--assistant.is-signup {
  align-items: flex-start;
}

.cw-copilot-chat__message--assistant.is-signup-only {
  display: none;
}

.cw-copilot-chat__message--assistant.is-plan .cw-copilot-chat__message-copy,
.cw-copilot-chat__message--assistant.is-signup .cw-copilot-chat__message-copy {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  gap: 8px;
}

.cw-copilot-chat__avatar {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: radial-gradient(circle at 40% 35%, #ffffff 0%, #f6ecff 58%, #efe4ff 100%);
}

.cw-copilot-chat__message-copy {
  min-width: 0;
  font-size: 14px !important;
}

/*
 * Direct-child markdown only — keeps plan/signup cards nested in the copy
 * from inheriting these locks (they have their own sizes).
 * Beats global `* { font-size: 15px }` and page `p` resets.
 */
.cw-copilot-chat .cw-copilot-chat__message-copy > p,
.cw-copilot-chat .cw-copilot-chat__message-copy > ul,
.cw-copilot-chat .cw-copilot-chat__message-copy > ol,
.cw-copilot-chat .cw-copilot-chat__message-copy > ul li,
.cw-copilot-chat .cw-copilot-chat__message-copy > ol li {
  margin: 0;
  color: #091e42;
  font-size: 14px !important;
  font-weight: 400;
  line-height: 24px;
  letter-spacing: -0.32px;
}

.cw-copilot-chat .cw-copilot-chat__message-copy > p a,
.cw-copilot-chat .cw-copilot-chat__message-copy > p strong,
.cw-copilot-chat .cw-copilot-chat__message-copy > p em,
.cw-copilot-chat .cw-copilot-chat__message-copy > ul a,
.cw-copilot-chat .cw-copilot-chat__message-copy > ul strong,
.cw-copilot-chat .cw-copilot-chat__message-copy > ul em,
.cw-copilot-chat .cw-copilot-chat__message-copy > ol a,
.cw-copilot-chat .cw-copilot-chat__message-copy > ol strong,
.cw-copilot-chat .cw-copilot-chat__message-copy > ol em {
  font-size: 14px !important;
}

.cw-copilot-chat .cw-copilot-chat__message-copy > p strong,
.cw-copilot-chat .cw-copilot-chat__message-copy > ul strong,
.cw-copilot-chat .cw-copilot-chat__message-copy > ol strong {
  font-weight: 600;
}

.cw-copilot-chat .cw-copilot-chat__message-copy > p + p,
.cw-copilot-chat .cw-copilot-chat__message-copy > p + ul,
.cw-copilot-chat .cw-copilot-chat__message-copy > p + ol,
.cw-copilot-chat .cw-copilot-chat__message-copy > p + pre,
.cw-copilot-chat .cw-copilot-chat__message-copy > p + .cw-copilot-chat__table-wrap,
.cw-copilot-chat .cw-copilot-chat__message-copy > ul + p,
.cw-copilot-chat .cw-copilot-chat__message-copy > ol + p,
.cw-copilot-chat .cw-copilot-chat__message-copy > pre + p,
.cw-copilot-chat .cw-copilot-chat__message-copy > .cw-copilot-chat__table-wrap + p,
.cw-copilot-chat .cw-copilot-chat__message-copy > .cw-copilot-chat__table-wrap + ul,
.cw-copilot-chat .cw-copilot-chat__message-copy > .cw-copilot-chat__table-wrap + ol {
  margin-top: 8px;
}

.cw-copilot-chat .cw-copilot-chat__message-copy > .cw-copilot-chat__table-wrap {
  width: 100%;
  max-width: 100%;
  margin: 0;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  border: 1px solid #e6e8ee;
  border-radius: 10px;
  background: #ffffff;
}

.cw-copilot-chat .cw-copilot-chat__table {
  width: 100%;
  min-width: 480px;
  margin: 0;
  border-collapse: collapse;
  border-spacing: 0;
  color: #091e42;
  font-size: 12px !important;
  font-weight: 400;
  line-height: 1.4;
  text-align: left;
}

.cw-copilot-chat .cw-copilot-chat__table th,
.cw-copilot-chat .cw-copilot-chat__table td {
  padding: 8px 10px;
  border-bottom: 1px solid #e6e8ee;
  border-right: 1px solid #eef0f4;
  font-size: 12px !important;
  font-family: "Poppins", "poppins", sans-serif !important;
  vertical-align: top;
  white-space: nowrap;
}

.cw-copilot-chat .cw-copilot-chat__table th:last-child,
.cw-copilot-chat .cw-copilot-chat__table td:last-child {
  border-right: 0;
}

.cw-copilot-chat .cw-copilot-chat__table thead th {
  background: #f4efff;
  color: #091e42;
  font-weight: 600;
  white-space: nowrap;
}

.cw-copilot-chat .cw-copilot-chat__table tbody tr:last-child td {
  border-bottom: 0;
}

.cw-copilot-chat .cw-copilot-chat__table tbody tr:nth-child(even) td {
  background: #fafbff;
}

.cw-copilot-chat .cw-copilot-chat__message-copy > ul,
.cw-copilot-chat .cw-copilot-chat__message-copy > ol {
  padding-left: 1.25em;
}

.cw-copilot-chat .cw-copilot-chat__message-copy > ul li + li,
.cw-copilot-chat .cw-copilot-chat__message-copy > ol li + li {
  margin-top: 4px;
}

.cw-copilot-chat .cw-copilot-chat__message-copy a {
  color: #2f39bf;
  text-decoration: underline;
}

.cw-copilot-chat .cw-copilot-chat__message-copy code {
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace !important;
  font-size: 14px !important;
  padding: 0 4px;
  border-radius: 4px;
  background: #f4efff;
}

.cw-copilot-chat .cw-copilot-chat__message-copy > pre {
  margin: 0;
  padding: 8px 10px;
  overflow-x: auto;
  border-radius: 8px;
  background: #f4efff;
  font-size: 14px !important;
}

.cw-copilot-chat .cw-copilot-chat__message-copy pre code {
  padding: 0;
  background: transparent;
}

.cw-copilot-plan {
  position: relative;
  width: calc(100% - 48px);
  margin-top: 8px;
  margin-left: 48px;
  padding: 22px 12px 14px;
  border: 1px solid #e4d7fb;
  border-radius: 16px;
  background: linear-gradient(180deg, #f4efff 0%, #ffffff 36%);
}

.cw-copilot-chat .cw-copilot-plan__badge {
  position: absolute;
  top: 0;
  right: 16px;
  transform: translateY(-50%);
  margin: 0;
  padding: 6px 12px;
  border-radius: 999px;
  background: #7b5cff;
  color: #ffffff;
  font-size: 10px;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.4px;
  text-transform: uppercase;
}

.cw-copilot-plan__product {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 14px;
  padding: 7px 14px 7px 10px;
  border: 1px solid #e7e1f4;
  border-radius: 999px;
  background: #ffffff;
}

.cw-copilot-plan__product img,
.cw-copilot-plan__specs img {
  display: block;
  flex: 0 0 auto;
}

.cw-copilot-chat .cw-copilot-plan__product-name,
.cw-copilot-chat .cw-copilot-plan__description,
.cw-copilot-chat .cw-copilot-plan__label,
.cw-copilot-chat .cw-copilot-plan__amount {
  margin: 0;
}

.cw-copilot-chat .cw-copilot-plan__product-name {
  color: #091e42;
  font-size: 14px;
  font-weight: 600;
  line-height: 20px;
}

.cw-copilot-chat .cw-copilot-plan__description {
  margin-bottom: 16px;
  color: #253858;
  font-size: 14px;
  font-weight: 400;
  line-height: 22px;
}

.cw-copilot-plan__row {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
}

.cw-copilot-chat .cw-copilot-plan__label {
  color: #091e42;
  font-size: 16px;
  font-weight: 600;
  line-height: 24px;
}

.cw-copilot-chat .cw-copilot-plan__amount {
  display: flex;
  align-items: flex-end;
  color: #2f39bf;
}

.cw-copilot-plan__amount strong {
  font-size: 32px;
  font-weight: 700;
  line-height: 1;
}

.cw-copilot-plan__amount span {
  margin: 0 0 3px 2px;
  font-size: 14px;
  font-weight: 500;
  line-height: 1;
}

.cw-copilot-plan__specs {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin: 0 0 14px;
  padding: 0;
  list-style: none;
}

.cw-copilot-plan__specs li {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  margin: 0;
  padding: 6px 8px;
  border: 1px solid #e6e8ee;
  border-radius: 8px;
  background: #ffffff;
  color: #091e42;
  font-size: 11px;
  line-height: 16px;
  white-space: nowrap;
}

.cw-copilot-plan__specs li.is-provider {
  color: #0080ff;
  font-weight: 600;
}

.cw-copilot-chat .cw-copilot-plan__cta {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 44px;
  margin: 0;
  padding: 0 16px;
  border: 0;
  border-radius: 10px;
  background: #2f39bf;
  color: #ffffff;
  text-decoration: none;
  font-family: inherit;
  font-size: 15px;
  font-weight: 500;
  line-height: 1;
  cursor: pointer;
}

.cw-copilot-chat .cw-copilot-plan__continue {
  display: block;
  width: 100%;
  margin: 12px 0 0;
  padding: 0;
  border: 0;
  background: transparent;
  color: #5b4dff;
  font-family: inherit;
  font-size: 13px;
  font-weight: 500;
  line-height: 20px;
  text-align: center;
  cursor: pointer;
}

.cw-copilot-signup {
  position: relative;
  width: calc(100% - 48px);
  margin-top: 8px;
  margin-left: 48px;
  padding: 22px 12px 14px;
  border: 1px solid #e4d7fb;
  border-radius: 16px;
  background: linear-gradient(180deg, #f4efff 0%, #ffffff 36%);
}

.cw-copilot-chat .cw-copilot-signup__title {
  margin: 0 0 10px;
  color: #091e42;
  font-size: 16px;
  font-weight: 600;
  line-height: 24px;
}

.cw-copilot-chat .cw-copilot-signup__lead {
  margin: 0 0 16px;
  color: #253858;
  font-size: 14px;
  font-weight: 400;
  line-height: 22px;
}

.cw-copilot-chat .cw-copilot-signup__cta {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 44px;
  margin: 0;
  padding: 0 16px;
  border: 0;
  border-radius: 10px;
  background: #2f39bf;
  color: #ffffff;
  text-decoration: none;
  font-family: inherit;
  font-size: 15px;
  font-weight: 500;
  line-height: 1;
  cursor: pointer;
}

.cw-copilot-chat__typing {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  height: 24px;
}

.cw-copilot-chat__typing i {
  display: block;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #7b66ff;
  animation: cw-copilot-typing 1.2s infinite ease-in-out;
}

.cw-copilot-chat__typing i:nth-child(2) {
  animation-delay: 0.15s;
}

.cw-copilot-chat__typing i:nth-child(3) {
  animation-delay: 0.3s;
}

@keyframes cw-copilot-typing {
  0%,
  80%,
  100% {
    opacity: 0.3;
    transform: translateY(0);
  }
  40% {
    opacity: 1;
    transform: translateY(-2px);
  }
}

.cw-copilot-chat__composer {
  flex: 0 0 auto;
  padding: 16px 16px 0;
}

.cw-copilot-chat__field {
  position: relative;
  height: 98px;
  border: 1px solid #dfe1e6;
  border-radius: 11px;
  background: #ffffff;
}

.cw-copilot-chat__input {
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 16px 48px 16px 16px;
  border: 0;
  border-radius: 11px;
  resize: none;
  background: transparent;
  color: #091e42;
  font-family: "Poppins", "poppins", sans-serif !important;
  font-size: 13px !important;
  font-weight: 400;
  line-height: 20px;
}

.cw-copilot-chat__input::placeholder {
  color: #8993a4;
}

.cw-copilot-chat__input:focus {
  outline: none;
}

.cw-copilot-chat__send {
  position: absolute;
  right: 12px;
  bottom: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 7px;
  background: #eaebf9;
  cursor: default;
}

.cw-copilot-chat__send img,
.cw-copilot-chat__send-icon {
  display: block;
  width: 16px;
  height: 16px;
  flex: 0 0 16px;
}

.cw-copilot-chat__send.is-ready {
  cursor: pointer;
}

.cw-copilot-chat__send:disabled,
.cw-copilot-chat__send:disabled.is-ready {
  cursor: default;
  opacity: 0.45;
}

.cw-copilot-chat > .cw-copilot-chat__footer {
  align-self: stretch;
  display: block;
  width: 100%;
  box-sizing: border-box;
  flex: 0 0 auto;
  padding: 16px 16px 18px;
  text-align: center;
}

.cw-copilot-chat > .cw-copilot-chat__footer > .cw-copilot-chat__disclaimer {
  display: block;
  width: 100%;
  margin: 0;
  color: #8993a4;
  font-size: 12px;
  font-weight: 400;
  line-height: 1;
  letter-spacing: -0.36px;
  text-align: center;
}

.cw-copilot-resume {
  position: fixed;
  z-index: 100001;
  display: none;
  width: max-content;
  max-width: 330px;
  padding: 10px;
  border: 1px solid #ffffff;
  border-radius: 12px;
  background-color: #ffffff;
  box-shadow: 0 4px 30px 0 #0000001a;
}

.cw-copilot-resume.is-visible {
  display: block;
}

.cw-copilot-resume::before {
  content: "";
  position: absolute;
  top: -8px;
  left: var(--cw-copilot-arrow, 50%);
  width: 16px;
  height: 16px;
  background-color: #ffffff;
  transform: translateX(-50%) rotate(45deg);
}

.cw-copilot-resume p {
  margin: 0;
  color: #253858;
  font-family: "Poppins", "poppins", sans-serif !important;
  font-size: 13px !important;
  font-weight: 400;
  line-height: 24px;
}

.cw-copilot-resume.is-on-light,
.cw-copilot-resume.is-on-light::before {
  border-color: #253858;
  background-color: #253858;
}

.cw-copilot-resume.is-on-light p {
  color: #ffffff;
}

/*
 * Copilot chat sits on the same corner as Intercom. Hide the messenger and
 * launcher while the panel is open so an automatic Intercom open cannot cover it.
 */
body.cw-copilot-chat-open .intercom-lightweight-app,
body.cw-copilot-chat-open .intercom-namespace,
body.cw-copilot-chat-open #intercom-container,
body.cw-copilot-chat-open iframe.intercom-borderless-frame,
body.cw-copilot-chat-open #intercom-frame {
  display: none !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

/*
 * Turnstile lives outside the panel (overflow:hidden) but must stay visible
 * near the fixed chat. Empty while Cloudflare needs no interaction; when a
 * challenge appears it is centered over the panel surface.
 */
.cw-copilot-chat__turnstile {
  position: fixed;
  right: 24px;
  bottom: 24px;
  z-index: 100002;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 458px;
  max-width: calc(100vw - 48px);
  height: min(760px, calc(100vh - 48px));
  pointer-events: none;
}

.cw-copilot-chat__turnstile > * {
  pointer-events: auto;
}

@media (max-width: 520px) {
  .cw-copilot-chat {
    right: 12px;
    bottom: 12px;
    width: calc(100vw - 24px);
  }

  .cw-copilot-chat__turnstile {
    right: 12px;
    bottom: 12px;
    width: calc(100vw - 24px);
    max-width: none;
  }

  .cw-copilot-plan,
  .cw-copilot-signup {
    width: 100%;
    margin-left: 0;
  }
}
