.agent-launcher {
  position:fixed;
  z-index:90;
  right:clamp(16px,3vw,36px);
  bottom:clamp(16px,3vw,30px);
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:12px;
  filter:drop-shadow(0 18px 30px rgba(8,39,63,.2))
}

.agent-nudge {
  width:255px;
  padding:17px 38px 17px 18px;
  color:#526b7d;
  background:rgba(255,255,255,.94);
  border:1px solid rgba(255,255,255,.95);
  border-radius:18px 18px 5px 18px;
  box-shadow:0 14px 38px rgba(13,49,74,.13);
  backdrop-filter:blur(16px);
  opacity:0;
  visibility:hidden;
  transform:translateY(8px) scale(.97);
  transform-origin:bottom right;
  transition:opacity .3s ease,transform .3s ease,visibility .3s
}

.agent-nudge.visible {
  opacity:1;
  visibility:visible;
  transform:none
}

.agent-nudge span {
  display:block;
  margin-bottom:4px;
  color:var(--navy);
  font:700 .82rem 'Manrope',sans-serif
}

.agent-nudge p {
  margin:0;
  font-size:.74rem;
  line-height:1.5
}

.agent-nudge-close {
  position:absolute;
  top:8px;
  right:9px;
  width:25px;
  height:25px;
  display:grid;
  place-items:center;
  color:#718796;
  background:transparent;
  border:0;
  border-radius:50%;
  font-size:1rem
}

.agent-nudge-close:hover {
  color:var(--navy);
  background:#edf5f8
}

.agent-launcher-button {
  position:relative;
  min-width:205px;
  min-height:68px;
  padding:9px 13px 9px 10px;
  display:grid;
  grid-template-columns:50px 1fr auto;
  align-items:center;
  gap:11px;
  color:white;
  background:linear-gradient(125deg,#0b2742,#174b70 70%,#287a8a);
  border:1px solid rgba(255,255,255,.18);
  border-radius:21px;
  box-shadow:0 18px 45px rgba(7,35,57,.3),inset 0 1px 0 rgba(255,255,255,.16);
  overflow:hidden;
  isolation:isolate;
  transition:transform .25s ease,box-shadow .25s ease
}

.agent-launcher-button::before {
  content:'';
  position:absolute;
  z-index:-1;
  width:120px;
  height:120px;
  top:-75px;
  right:22px;
  border-radius:50%;
  background:rgba(116,207,197,.24);
  transition:transform .35s ease
}

.agent-launcher-button:hover {
  color:white;
  transform:translateY(-4px);
  box-shadow:0 24px 54px rgba(7,35,57,.35),inset 0 1px 0 rgba(255,255,255,.2)
}

.agent-launcher-button:hover::before {
  transform:scale(1.25)
}

.agent-launcher-icon {
  width:50px;
  height:50px;
  display:grid;
  place-items:center;
  color:var(--navy);
  background:linear-gradient(145deg,#a3e5dc,#65c7bd);
  border-radius:15px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.55)
}

.agent-launcher-icon svg {
  width:25px
}

.agent-launcher-copy small,
.agent-launcher-copy strong {
  display:block
}

.agent-launcher-copy small {
  margin-bottom:2px;
  color:#bdd4df;
  font-size:.61rem;
  font-weight:600;
  letter-spacing:.03em
}

.agent-launcher-copy small i {
  display:inline-block;
  width:6px;
  height:6px;
  margin-right:5px;
  background:#7bddcd;
  border-radius:50%;
  box-shadow:0 0 0 4px rgba(123,221,205,.12)
}

.agent-launcher-copy strong {
  color:white;
  font:700 .91rem 'Manrope',sans-serif;
  letter-spacing:-.02em
}

.agent-launcher-arrow {
  color:#9edfd6;
  font-size:1.2rem;
  transition:transform .2s ease
}

.agent-launcher-button:hover .agent-launcher-arrow {
  transform:translateX(3px)
}

@media(max-width:540px) {
  .agent-launcher {
    right:12px;
    bottom:12px
  }

  .agent-nudge {
    width:min(255px,calc(100vw - 24px))
  }

  .agent-launcher-button {
    min-width:0;
    min-height:60px;
    grid-template-columns:44px 1fr auto;
    border-radius:18px
  }

  .agent-launcher-icon {
    width:44px;
    height:44px;
    border-radius:13px
  }
}

@media(prefers-reduced-motion:reduce) {
  .agent-nudge,
  .agent-launcher-button,
  .agent-launcher-button::before,
  .agent-launcher-arrow {
    transition:none
  }
}
