.odw-welcome {
  position: fixed;
  right: 22px;
  bottom: 22px;
  z-index: 2147482000;

  width: min(390px, calc(100vw - 32px));
  padding: 20px;

  color: #f8f3e8;
  background:
    linear-gradient(145deg, rgba(52,15,12,.97), rgba(13,14,17,.98));

  border: 1px solid rgba(214,173,93,.45);
  border-radius: 18px;

  box-shadow:
    0 18px 55px rgba(0,0,0,.58),
    0 0 30px rgba(121,34,22,.18);

  font-family: inherit;

  opacity: 0;
  transform: translateY(16px);
  transition:
    opacity .35s ease,
    transform .35s ease;
}

.odw-welcome.odw-show {
  opacity: 1;
  transform: translateY(0);
}

.odw-label {
  margin: 0 0 5px;
  color: #d7ad61;

  font-size: .72rem;
  font-weight: 800;

  text-transform: uppercase;
  letter-spacing: .16em;
}

.odw-title {
  margin: 0 0 8px;

  color: #fffaf0;
  font-family: Georgia, "Times New Roman", serif;

  font-size: 1.45rem;
  line-height: 1.1;
}

.odw-copy {
  margin: 0 0 16px;

  color: rgba(248,243,232,.76);
  font-size: .95rem;
  line-height: 1.48;
}

.odw-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
}

.odw-play,
.odw-dismiss {
  appearance: none;
  cursor: pointer;
  font: inherit;
}

.odw-play {
  flex: 1 1 190px;

  border: 1px solid #e2bc6a;
  border-radius: 999px;

  padding: 11px 18px;

  color: #181109;

  background:
    linear-gradient(180deg, #f2d788, #c99b46);

  font-weight: 900;
  letter-spacing: .04em;
}

.odw-dismiss {
  border: 0;
  padding: 10px 5px;

  color: rgba(248,243,232,.66);
  background: transparent;
}

.odw-dismiss:hover {
  color: #fff;
}

.odw-play:focus-visible,
.odw-dismiss:focus-visible {
  outline: 3px solid #fff;
  outline-offset: 3px;
}

.odw-welcome.odw-leaving {
  opacity: 0;
  transform: translateY(16px);
}

@media (max-width: 620px) {
  .odw-welcome {
    right: 16px;
    bottom: 16px;
    padding: 17px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .odw-welcome {
    transition: none;
  }
}
