/* =========================================================
   ANM LIVE CHAT 1.5.1 — WITAJ ANM UNIVERSAL
   Obsidian, ivory, champagne gold
========================================================= */

.anm-chat {
  --anm-accent: #b8945f;
  --anm-obsidian: #0b0e11;
  --anm-obsidian-soft: #151a1e;
  --anm-ivory: #f8f5ee;
  --anm-paper: #fffdf9;
  --anm-gold: var(--anm-accent, #b8945f);
  --anm-gold-light: #dec99f;
  --anm-text: #171a1c;
  --anm-muted: #77736b;
  --anm-line: rgba(23, 26, 28, .13);
  --anm-shadow: 0 34px 95px rgba(8, 11, 14, .24);
  --anm-heading: "Petra", Georgia, serif;
  --anm-body: "Encode Sans Expanded", "Encode Sans Extended", "Encode Sans", Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;

  position: fixed !important;
  right: max(24px, env(safe-area-inset-right)) !important;
  bottom: max(24px, env(safe-area-inset-bottom)) !important;
  z-index: 2147483000 !important;

  color: var(--anm-text) !important;
  font-family: var(--anm-body) !important;
  font-size: 14px !important;
  line-height: 1.45 !important;
  -webkit-font-smoothing: antialiased !important;
  text-rendering: optimizeLegibility !important;
}

.anm-chat *,
.anm-chat *::before,
.anm-chat *::after {
  box-sizing: border-box !important;
}

.anm-chat [hidden] {
  display: none !important;
}

.anm-chat button,
.anm-chat input,
.anm-chat textarea {
  font: inherit !important;
}

/* =========================================================
   LAUNCHER
========================================================= */

.anm-chat__launcher {
  position: absolute !important;
  right: 0 !important;
  bottom: 0 !important;

  display: grid !important;
  width: 72px !important;
  height: 72px !important;
  padding: 0 !important;
  place-items: center !important;

  color: var(--anm-gold-light) !important;
  background:
    radial-gradient(circle at 28% 20%, rgba(222, 201, 159, .15), transparent 35%),
    linear-gradient(145deg, var(--anm-obsidian-soft), var(--anm-obsidian)) !important;

  border: 1px solid rgba(222, 201, 159, .48) !important;
  border-radius: 50% !important;

  box-shadow:
    0 18px 48px rgba(8, 11, 14, .30),
    0 0 0 6px rgba(184, 148, 95, .09) !important;

  cursor: pointer !important;
  overflow: hidden !important;

  transition:
    transform .28s cubic-bezier(.2, .75, .2, 1),
    box-shadow .28s ease,
    border-color .28s ease !important;
}

.anm-chat__launcher::after {
  content: "" !important;
  position: absolute !important;
  inset: 7px !important;
  border: 1px solid rgba(222, 201, 159, .14) !important;
  border-radius: 50% !important;
  pointer-events: none !important;
}

.anm-chat__launcher:hover,
.anm-chat__launcher:focus-visible {
  transform: translateY(-5px) scale(1.025) !important;
  border-color: rgba(222, 201, 159, .85) !important;
  box-shadow:
    0 24px 62px rgba(8, 11, 14, .36),
    0 0 0 8px rgba(184, 148, 95, .12) !important;
  outline: none !important;
}

.anm-chat__launcher svg {
  position: relative !important;
  z-index: 2 !important;

  display: block !important;
  width: 30px !important;
  height: 30px !important;

  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 1.55 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;

  transition:
    opacity .2s ease,
    transform .25s ease !important;
}

.anm-chat--open .anm-chat__launcher svg {
  opacity: 0 !important;
  transform: rotate(28deg) scale(.7) !important;
}

.anm-chat--open .anm-chat__launcher::before {
  content: "×" !important;
  position: absolute !important;
  z-index: 3 !important;
  top: 50% !important;
  left: 50% !important;
  color: var(--anm-gold-light) !important;
  font-family: var(--anm-heading) !important;
  font-size: 34px !important;
  font-weight: 400 !important;
  line-height: 1 !important;
  transform: translate(-50%, -54%) !important;
}

.anm-chat__badge {
  position: absolute !important;
  right: -3px !important;
  top: -4px !important;
  z-index: 5 !important;

  display: grid !important;
  min-width: 24px !important;
  height: 24px !important;
  padding: 0 6px !important;
  place-items: center !important;

  color: var(--anm-obsidian) !important;
  background: var(--anm-gold-light) !important;

  border: 3px solid var(--anm-paper) !important;
  border-radius: 999px !important;

  font-size: 10px !important;
  font-weight: 700 !important;
}

/* =========================================================
   INVITATION
========================================================= */

.anm-chat__invitation {
  position: absolute !important;
  right: 89px !important;
  bottom: 7px !important;

  width: 288px !important;
  min-height: 64px !important;
  padding: 15px 44px 15px 18px !important;

  color: var(--anm-text) !important;
  background: rgba(255, 253, 249, .97) !important;
  backdrop-filter: blur(18px) !important;

  border: 1px solid rgba(184, 148, 95, .34) !important;
  border-radius: 18px 18px 5px 18px !important;

  box-shadow: 0 18px 52px rgba(8, 11, 14, .16) !important;

  text-align: left !important;
  cursor: pointer !important;

  opacity: 0 !important;
  transform: translateX(14px) scale(.975) !important;
  pointer-events: none !important;

  transition:
    opacity .36s ease,
    transform .42s cubic-bezier(.2, .75, .2, 1),
    box-shadow .25s ease !important;
}

.anm-chat__invitation::before {
  content: "" !important;
  position: absolute !important;
  top: 15px !important;
  bottom: 15px !important;
  left: 0 !important;
  width: 2px !important;
  background: var(--anm-gold) !important;
}

.anm-chat__invitation.is-visible {
  opacity: 1 !important;
  transform: none !important;
  pointer-events: auto !important;
}

.anm-chat__invitation:hover {
  box-shadow: 0 22px 60px rgba(8, 11, 14, .21) !important;
}

.anm-chat__invitation strong {
  display: block !important;
  color: var(--anm-obsidian) !important;
  font-family: var(--anm-heading) !important;
  font-size: 17px !important;
  font-weight: 500 !important;
  line-height: 1.05 !important;
  letter-spacing: -.02em !important;
}

.anm-chat__invitation span {
  display: block !important;
  margin-top: 7px !important;
  color: var(--anm-muted) !important;
  font-size: 10px !important;
  line-height: 1.45 !important;
}

.anm-chat__invitation i {
  position: absolute !important;
  right: 12px !important;
  top: 9px !important;

  color: #8f8a81 !important;

  font-family: Georgia, serif !important;
  font-size: 18px !important;
  font-style: normal !important;
  font-weight: 400 !important;
}

/* =========================================================
   WINDOW
========================================================= */

.anm-chat__window {
  position: absolute !important;
  right: 0 !important;
  bottom: 88px !important;

  display: flex !important;
  width: min(438px, calc(100vw - 38px)) !important;
  height: min(720px, calc(100vh - 126px)) !important;
  overflow: hidden !important;
  flex-direction: column !important;

  color: var(--anm-text) !important;
  background: var(--anm-ivory) !important;

  border: 1px solid rgba(184, 148, 95, .38) !important;
  border-radius: 24px !important;

  box-shadow: var(--anm-shadow) !important;

  transform-origin: bottom right !important;
  animation: anm-chat-open .36s cubic-bezier(.2, .8, .2, 1) both !important;
}

@keyframes anm-chat-open {
  from {
    opacity: 0;
    transform: translateY(18px) scale(.95);
  }
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

/* =========================================================
   HEADER
========================================================= */

.anm-chat__header {
  position: relative !important;

  display: flex !important;
  align-items: center !important;
  gap: 13px !important;

  min-height: 94px !important;
  padding: 16px 17px !important;

  color: var(--anm-ivory) !important;
  background:
    radial-gradient(circle at 86% 12%, rgba(222, 201, 159, .14), transparent 31%),
    linear-gradient(135deg, var(--anm-obsidian-soft), var(--anm-obsidian)) !important;

  border-bottom: 1px solid rgba(222, 201, 159, .17) !important;
}

.anm-chat__header::after {
  content: "PRYWATNA ROZMOWA" !important;
  position: absolute !important;
  right: 52px !important;
  top: 14px !important;

  color: rgba(222, 201, 159, .58) !important;

  font-size: 6px !important;
  font-weight: 600 !important;
  letter-spacing: .18em !important;
}

.anm-chat__avatar {
  display: grid !important;
  width: 58px !important;
  height: 58px !important;
  flex: 0 0 58px !important;
  overflow: hidden !important;
  place-items: center !important;

  background: rgba(255, 255, 255, .96) !important;

  border: 1px solid rgba(222, 201, 159, .42) !important;
  border-radius: 17px !important;

  box-shadow: 0 10px 26px rgba(0, 0, 0, .17) !important;
}

.anm-chat__avatar img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  padding: 7px !important;
  object-fit: contain !important;
}

.anm-chat__header > div:nth-child(2) {
  min-width: 0 !important;
  padding-top: 10px !important;
}

.anm-chat__header strong {
  display: block !important;
  color: var(--anm-ivory) !important;
  font-family: var(--anm-heading) !important;
  font-size: 20px !important;
  font-weight: 500 !important;
  line-height: 1 !important;
  letter-spacing: -.022em !important;
}

.anm-chat__header span {
  display: flex !important;
  align-items: center !important;
  gap: 7px !important;
  margin-top: 8px !important;

  color: rgba(248, 245, 238, .62) !important;

  font-size: 9px !important;
  line-height: 1.35 !important;
}

.anm-chat__header span i {
  width: 7px !important;
  height: 7px !important;
  flex: 0 0 7px !important;

  background: #8bd4aa !important;
  border-radius: 50% !important;

  box-shadow: 0 0 0 4px rgba(139, 212, 170, .10) !important;
}

.anm-chat__close {
  position: relative !important;
  z-index: 3 !important;

  display: grid !important;
  width: 36px !important;
  height: 36px !important;
  margin-left: auto !important;
  padding: 0 !important;
  place-items: center !important;

  color: var(--anm-gold-light) !important;
  background: transparent !important;

  border: 1px solid rgba(222, 201, 159, .22) !important;
  border-radius: 50% !important;

  font-family: Georgia, serif !important;
  font-size: 24px !important;
  font-weight: 400 !important;
  line-height: 1 !important;

  cursor: pointer !important;

  transition:
    color .2s ease,
    background .2s ease,
    border-color .2s ease,
    transform .2s ease !important;
}

.anm-chat__close:hover,
.anm-chat__close:focus-visible {
  color: var(--anm-obsidian) !important;
  background: var(--anm-gold-light) !important;
  border-color: var(--anm-gold-light) !important;
  outline: none !important;
  transform: rotate(5deg) !important;
}

/* =========================================================
   BODY / START
========================================================= */

.anm-chat__body {
  min-height: 0 !important;
  flex: 1 !important;
  overflow: auto !important;
  scrollbar-width: thin !important;
  scrollbar-color: rgba(184, 148, 95, .32) transparent !important;
}

.anm-chat__start {
  position: relative !important;
  padding: 24px 24px 22px !important;
}

.anm-chat__start::before {
  content: "ROZPOCZNIJ ROZMOWĘ" !important;
  display: block !important;
  margin-bottom: 12px !important;
  color: var(--anm-gold) !important;
  font-size: 7px !important;
  font-weight: 600 !important;
  letter-spacing: .20em !important;
}

.anm-chat__welcome {
  position: relative !important;
  margin-bottom: 24px !important;
  padding: 18px 19px 18px 22px !important;

  color: var(--anm-text) !important;
  background: var(--anm-paper) !important;

  border: 1px solid rgba(23, 26, 28, .09) !important;
  border-radius: 2px 17px 17px 17px !important;

  box-shadow: 0 12px 35px rgba(8, 11, 14, .055) !important;

  font-family: var(--anm-heading) !important;
  font-size: 18px !important;
  font-weight: 500 !important;
  line-height: 1.38 !important;
  letter-spacing: -.018em !important;
}

.anm-chat__welcome::before {
  content: "“" !important;
  position: absolute !important;
  top: -11px !important;
  left: 9px !important;
  color: var(--anm-gold) !important;
  font-family: var(--anm-heading) !important;
  font-size: 38px !important;
  line-height: 1 !important;
}

.anm-chat__start label:not(.anm-chat__consent) {
  display: block !important;
  margin: 14px 0 0 !important;

  color: var(--anm-text) !important;

  font-size: 8px !important;
  font-weight: 600 !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
}

.anm-chat__start label:not(.anm-chat__consent) > span {
  color: #9a958c !important;
  font-weight: 400 !important;
  letter-spacing: .04em !important;
  text-transform: none !important;
}

.anm-chat__start input[type="text"],
.anm-chat__start input[type="email"],
.anm-chat__name,
.anm-chat__email {
  display: block !important;
  width: 100% !important;
  height: 50px !important;
  margin-top: 8px !important;
  padding: 0 14px !important;

  color: var(--anm-text) !important;
  background: rgba(255, 253, 249, .82) !important;

  border: 1px solid rgba(23, 26, 28, .14) !important;
  border-radius: 3px !important;

  box-shadow: none !important;
  outline: none !important;

  font-size: 14px !important;

  transition:
    border-color .2s ease,
    background .2s ease,
    box-shadow .2s ease !important;
}

.anm-chat__start input:focus {
  background: var(--anm-paper) !important;
  border-color: var(--anm-gold) !important;
  box-shadow: 0 0 0 3px rgba(184, 148, 95, .11) !important;
}

.anm-chat__consent {
  display: grid !important;
  grid-template-columns: 17px minmax(0, 1fr) !important;
  gap: 10px !important;
  align-items: start !important;

  margin: 17px 0 !important;

  color: #706c65 !important;

  font-size: 9px !important;
  line-height: 1.55 !important;
}

.anm-chat__consent--marketing {
  margin-top: -2px !important;
  padding-top: 14px !important;
  border-top: 1px solid rgba(23, 26, 28, .08) !important;
}

.anm-chat__consent input {
  appearance: none !important;
  position: relative !important;

  width: 17px !important;
  height: 17px !important;
  margin: 1px 0 0 !important;

  background: var(--anm-paper) !important;
  border: 1px solid rgba(23, 26, 28, .26) !important;
  border-radius: 3px !important;

  cursor: pointer !important;
}

.anm-chat__consent input:checked {
  background: var(--anm-obsidian) !important;
  border-color: var(--anm-obsidian) !important;
}

.anm-chat__consent input:checked::after {
  content: "" !important;
  position: absolute !important;
  left: 5px !important;
  top: 2px !important;
  width: 4px !important;
  height: 8px !important;
  border: solid var(--anm-gold-light) !important;
  border-width: 0 2px 2px 0 !important;
  transform: rotate(45deg) !important;
}

.anm-chat__consent a {
  color: var(--anm-text) !important;
  font-weight: 600 !important;
  text-decoration-color: rgba(184, 148, 95, .68) !important;
  text-underline-offset: 2px !important;
}

.anm-chat__turnstile {
  min-height: 66px !important;
  margin-top: 4px !important;
  transform-origin: left top !important;
}

.anm-chat__start-button {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  min-height: 54px !important;
  margin-top: 12px !important;
  padding: 0 50px 0 18px !important;

  color: var(--anm-ivory) !important;
  background:
    linear-gradient(135deg, var(--anm-obsidian-soft), var(--anm-obsidian)) !important;

  border: 1px solid var(--anm-obsidian) !important;
  border-radius: 3px !important;

  box-shadow: 0 14px 28px rgba(8, 11, 14, .15) !important;

  font-size: 8px !important;
  font-weight: 600 !important;
  letter-spacing: .14em !important;
  text-align: left !important;
  text-transform: uppercase !important;

  cursor: pointer !important;

  transition:
    color .22s ease,
    background .22s ease,
    border-color .22s ease,
    transform .22s ease,
    box-shadow .22s ease !important;
}

.anm-chat__start-button::after {
  content: "→" !important;
  position: absolute !important;
  right: 18px !important;
  top: 50% !important;
  color: var(--anm-gold-light) !important;
  font-family: Georgia, serif !important;
  font-size: 19px !important;
  transform: translateY(-53%) !important;
  transition: transform .22s ease !important;
}

.anm-chat__start-button:hover,
.anm-chat__start-button:focus-visible {
  color: var(--anm-obsidian) !important;
  background: var(--anm-gold-light) !important;
  border-color: var(--anm-gold-light) !important;
  box-shadow: 0 17px 34px rgba(8, 11, 14, .15) !important;
  outline: none !important;
  transform: translateY(-3px) !important;
}

.anm-chat__start-button:hover::after,
.anm-chat__start-button:focus-visible::after {
  color: var(--anm-obsidian) !important;
  transform: translate(4px, -53%) !important;
}

.anm-chat__start-button:disabled {
  opacity: .52 !important;
  cursor: wait !important;
  transform: none !important;
}

.anm-chat__error {
  margin: 10px 0 !important;
  padding: 10px 12px !important;

  color: #8a3340 !important;
  background: #fff1f2 !important;

  border: 1px solid rgba(138, 51, 64, .12) !important;
  border-radius: 3px !important;

  font-size: 10px !important;
  line-height: 1.5 !important;
}

/* =========================================================
   CONVERSATION
========================================================= */

.anm-chat__conversation {
  height: 100% !important;
  padding: 20px 16px 14px !important;

  background:
    linear-gradient(rgba(248, 245, 238, .86), rgba(248, 245, 238, .86)),
    repeating-linear-gradient(90deg, transparent 0, transparent 31px, rgba(184, 148, 95, .04) 32px) !important;
}

.anm-chat__messages {
  height: 100% !important;
  overflow: auto !important;
  padding: 2px 4px 10px !important;
  scrollbar-width: thin !important;
  scrollbar-color: rgba(184, 148, 95, .32) transparent !important;
}

.anm-chat__message {
  display: flex !important;
  margin: 0 0 13px !important;
}

.anm-chat__message > div {
  position: relative !important;
  max-width: 84% !important;
  padding: 13px 15px 10px !important;

  color: #272a2c !important;
  background: var(--anm-paper) !important;

  border: 1px solid rgba(23, 26, 28, .10) !important;
  border-radius: 2px 16px 16px 16px !important;

  box-shadow: 0 8px 22px rgba(8, 11, 14, .055) !important;

  font-family: var(--anm-body) !important;
  font-size: 14px !important;
  line-height: 1.58 !important;
  word-break: break-word !important;
}

.anm-chat__message small {
  display: block !important;
  margin-top: 7px !important;
  color: #918c84 !important;
  text-align: right !important;
  font-size: 8px !important;
  letter-spacing: .04em !important;
  opacity: 1 !important;
}

.anm-chat__message--admin {
  justify-content: flex-start !important;
}

.anm-chat__message--visitor {
  justify-content: flex-end !important;
}

.anm-chat__message--visitor > div {
  color: var(--anm-ivory) !important;
  background:
    radial-gradient(circle at 86% 10%, rgba(222, 201, 159, .12), transparent 36%),
    linear-gradient(145deg, var(--anm-obsidian-soft), var(--anm-obsidian)) !important;

  border-color: rgba(222, 201, 159, .20) !important;
  border-radius: 16px 2px 16px 16px !important;

  box-shadow: 0 11px 26px rgba(8, 11, 14, .16) !important;
}

.anm-chat__message--visitor small {
  color: rgba(248, 245, 238, .52) !important;
}

.anm-chat__message--system {
  justify-content: center !important;
}

.anm-chat__message--system > div {
  max-width: 92% !important;
  padding: 8px 12px !important;

  color: #746f67 !important;
  background: transparent !important;

  border-color: rgba(184, 148, 95, .26) !important;
  border-radius: 999px !important;

  box-shadow: none !important;

  font-size: 9px !important;
  text-align: center !important;
}

/* =========================================================
   TYPING
========================================================= */

.anm-chat__typing > div {
  display: flex !important;
  align-items: center !important;
  gap: 5px !important;
  min-width: 132px !important;
}

.anm-chat__typing i {
  display: block !important;
  width: 7px !important;
  height: 7px !important;
  background: var(--anm-gold) !important;
  border-radius: 50% !important;
  animation: anm-typing 1.05s infinite ease-in-out !important;
}

.anm-chat__typing i:nth-child(2) {
  animation-delay: .14s !important;
}

.anm-chat__typing i:nth-child(3) {
  animation-delay: .28s !important;
}

.anm-chat__typing span {
  margin-left: 6px !important;
  color: #777269 !important;
  font-size: 9px !important;
  font-style: normal !important;
}

@keyframes anm-typing {
  0%, 60%, 100% {
    transform: translateY(0);
    opacity: .35;
  }
  30% {
    transform: translateY(-5px);
    opacity: 1;
  }
}

/* =========================================================
   COMPOSER
========================================================= */

.anm-chat__composer {
  display: flex !important;
  align-items: flex-end !important;
  gap: 9px !important;

  padding: 12px !important;

  background: var(--anm-paper) !important;
  border-top: 1px solid rgba(23, 26, 28, .10) !important;
}

.anm-chat__composer textarea {
  display: block !important;
  min-height: 96px !important;
  max-height: 220px !important;
  margin: 0 !important;
  padding: 14px 15px !important;
  flex: 1 !important;
  resize: vertical !important;

  color: var(--anm-text) !important;
  background: var(--anm-ivory) !important;

  border: 1px solid rgba(23, 26, 28, .12) !important;
  border-radius: 3px !important;

  box-shadow: none !important;
  outline: none !important;

  font-family: var(--anm-body) !important;
  font-size: 14px !important;
  line-height: 1.55 !important;

  transition:
    border-color .2s ease,
    box-shadow .2s ease,
    background .2s ease !important;
}

.anm-chat__composer textarea:focus {
  background: #ffffff !important;
  border-color: var(--anm-gold) !important;
  box-shadow: 0 0 0 3px rgba(184, 148, 95, .10) !important;
}

.anm-chat__composer textarea::placeholder {
  color: #918d85 !important;
}

.anm-chat__composer button {
  display: grid !important;
  width: 50px !important;
  height: 50px !important;
  flex: 0 0 50px !important;
  padding: 0 !important;
  place-items: center !important;

  color: var(--anm-gold-light) !important;
  background: var(--anm-obsidian) !important;

  border: 1px solid var(--anm-obsidian) !important;
  border-radius: 3px !important;

  cursor: pointer !important;

  transition:
    color .2s ease,
    background .2s ease,
    border-color .2s ease,
    transform .2s ease !important;
}

.anm-chat__composer button:hover,
.anm-chat__composer button:focus-visible {
  color: var(--anm-obsidian) !important;
  background: var(--anm-gold-light) !important;
  border-color: var(--anm-gold-light) !important;
  outline: none !important;
  transform: translateY(-2px) !important;
}

.anm-chat__composer button svg {
  width: 19px !important;
  height: 19px !important;
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 1.6 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}

.anm-chat__composer button:disabled {
  opacity: .45 !important;
  cursor: wait !important;
  transform: none !important;
}

/* =========================================================
   FOOTER
========================================================= */

.anm-chat footer {
  position: relative !important;
  padding: 9px 12px 10px !important;

  color: #8c877f !important;
  background: var(--anm-paper) !important;

  border-top: 1px solid rgba(23, 26, 28, .06) !important;

  text-align: center !important;
  font-size: 7px !important;
  font-weight: 500 !important;
  letter-spacing: .10em !important;
  text-transform: uppercase !important;
}

/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 520px) {
  .anm-chat {
    right: max(12px, env(safe-area-inset-right)) !important;
    bottom: max(12px, env(safe-area-inset-bottom)) !important;
    font-size: 12px !important;
  }

  .anm-chat__launcher {
    width: 64px !important;
    height: 64px !important;
  }

  .anm-chat__launcher svg {
    width: 28px !important;
    height: 28px !important;
  }

  .anm-chat__invitation {
    right: 76px !important;
    bottom: 4px !important;
    width: min(248px, calc(100vw - 102px)) !important;
    min-height: 58px !important;
    padding: 13px 38px 13px 15px !important;
  }

  .anm-chat__invitation strong {
    font-size: 15px !important;
  }

  .anm-chat__invitation span {
    font-size: 9px !important;
  }

  .anm-chat__window {
    position: fixed !important;
    inset: 0 !important;

    width: 100% !important;
    height: 100% !important;
    max-height: none !important;

    border: 0 !important;
    border-radius: 0 !important;

    animation-name: anm-chat-open-mobile !important;
  }

  @keyframes anm-chat-open-mobile {
    from {
      opacity: 0;
      transform: translateY(20px);
    }
    to {
      opacity: 1;
      transform: translateY(0);
    }
  }

  .anm-chat__header {
    min-height: 91px !important;
    padding:
      max(14px, env(safe-area-inset-top))
      14px
      14px !important;
  }

  .anm-chat__header::after {
    top: max(12px, env(safe-area-inset-top)) !important;
  }

  .anm-chat__avatar {
    width: 55px !important;
    height: 55px !important;
    flex-basis: 55px !important;
  }

  .anm-chat__header strong {
    font-size: 18px !important;
  }

  .anm-chat__start {
    padding: 22px 17px 24px !important;
  }

  .anm-chat__welcome {
    font-size: 17px !important;
  }

  .anm-chat__turnstile {
    width: 114% !important;
    transform: scale(.88) !important;
  }

  .anm-chat__conversation {
    padding: 16px 11px 10px !important;
  }

  .anm-chat__message > div {
    max-width: 87% !important;
    font-size: 12px !important;
  }

  .anm-chat__composer {
    padding:
      10px
      10px
      max(10px, env(safe-area-inset-bottom)) !important;
  }

  .anm-chat__composer textarea {
    min-height: 84px !important;
    max-height: 180px !important;
    padding: 13px 14px !important;
    font-size: 12px !important;
    line-height: 1.55 !important;
  }
}

/* =========================================================
   LARGE DESKTOP
========================================================= */

@media (min-width: 521px) {
  .anm-chat__window {
    width: min(448px, calc(100vw - 42px)) !important;
    height: min(735px, calc(100vh - 112px)) !important;
  }
}

/* =========================================================
   REDUCED MOTION
========================================================= */

@media (prefers-reduced-motion: reduce) {
  .anm-chat *,
  .anm-chat *::before,
  .anm-chat *::after {
    animation: none !important;
    transition-duration: .01ms !important;
  }
}
