.wg-flash {
  --wg-flash-gold: #ddc184;
  --wg-flash-ink: #f7f0e3;
  --wg-flash-muted: #c8bdc8;
  position: fixed;
  z-index: 99980;
  right: 24px;
  bottom: max(24px, env(safe-area-inset-bottom));
  width: 362px;
  max-width: calc(100vw - 32px);
  max-height: calc(100vh - 48px);
  max-height: min(610px, calc(100dvh - 48px));
  box-sizing: border-box;
  overflow: auto;
  overscroll-behavior: contain;
  border: 1px solid #75603e;
  border-radius: 16px;
  padding: 27px 26px 20px;
  background: radial-gradient(ellipse at 90% 0%, #391b25 0, transparent 60%), #0d0e16;
  box-shadow: 0 18px 65px #0006, inset 0 1px 0 #f7deac17;
  color: var(--wg-flash-ink);
  font-family: Rubik, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  line-height: 1.5;
  text-align: left;
  isolation: isolate;
  animation: wg-flash-arrive 260ms ease-out both;
}

.wg-flash *, .wg-flash *::before, .wg-flash *::after { box-sizing: border-box; }
.wg-flash button { font-family: inherit; cursor: pointer; text-transform: none; letter-spacing: normal; }
.wg-flash button:focus-visible { outline: 3px solid #fff1cc; outline-offset: 3px; }
.wg-flash__close {
  position: absolute;
  top: 4px;
  right: 4px;
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  min-width: 44px;
  min-height: 44px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: transparent;
  color: #e4d8df;
  font-size: 27px;
  font-weight: 300;
  line-height: 1;
  box-shadow: none;
}
.wg-flash__close:hover { background: #ffffff0b; color: #fff; }
.wg-flash__eyebrow {
  display: flex;
  align-items: center;
  gap: 8px;
  padding-right: 20px;
  color: var(--wg-flash-gold);
  font-size: 10px;
  font-weight: 650;
  letter-spacing: 1.7px;
  text-transform: uppercase;
}
.wg-flash__ornament { font-size: 22px; font-weight: 400; line-height: 1; }
.wg-flash .wg-flash__heading {
  margin: 12px 0 9px;
  padding: 0;
  color: var(--wg-flash-ink);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 27px;
  font-style: normal;
  font-weight: 400;
  line-height: 1.2;
  letter-spacing: -.65px;
  text-transform: none;
}
.wg-flash .wg-flash__description {
  margin: 0 0 17px;
  padding: 0;
  color: #e0d6df;
  font-size: 14px;
  line-height: 1.6;
}
.wg-flash__coupon {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 6px 12px;
  margin-bottom: 11px;
  border: 1px dashed #8e7651;
  border-radius: 7px;
  padding: 10px 13px;
  background: #0c08182e;
}
.wg-flash__coupon-label {
  color: var(--wg-flash-muted);
  font-size: 9px;
  font-weight: 600;
  letter-spacing: 1.3px;
}
.wg-flash__code {
  max-width: 100%;
  color: #f4dfac;
  font-family: "SFMono-Regular", Consolas, monospace;
  font-size: 18px;
  font-weight: 600;
  line-height: 1.4;
  letter-spacing: 1.2px;
  overflow-wrap: anywhere;
  white-space: pre-wrap;
  user-select: all;
}
.wg-flash .wg-flash__apply {
  display: block;
  width: 100%;
  min-height: 46px;
  margin: 0;
  border: 1px solid #e8d0a1;
  border-radius: 7px;
  padding: 11px 15px;
  background: #ddc184;
  color: #221826;
  box-shadow: 0 2px 4px #0001;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.5;
  transition: background 150ms ease;
}
.wg-flash .wg-flash__apply:hover:not(:disabled) { background: #ecd5a5; color: #221826; }
.wg-flash .wg-flash__apply:disabled { background: #bdae8b; color: #221826; cursor: default; opacity: 1; }
.wg-flash__deadline {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-top: 17px;
  padding-top: 14px;
  border-top: 1px solid #ffffff16;
}
.wg-flash .wg-flash__ends {
  max-width: 118px;
  margin: 0;
  padding: 0;
  color: var(--wg-flash-muted);
  font-size: 11px;
  line-height: 1.5;
}
.wg-flash__clock { display: flex; align-items: flex-start; justify-content: center; gap: 7px; color: #f6e4bd; }
.wg-flash__time-unit { display: flex; flex-direction: column; align-items: center; min-width: 23px; }
.wg-flash__number { font-family: "SFMono-Regular", Consolas, monospace; font-size: 20px; font-weight: 400; font-variant-numeric: tabular-nums; line-height: 1.2; }
.wg-flash__unit-label { margin-top: 3px; color: var(--wg-flash-muted); font-size: 7px; letter-spacing: 1px; line-height: 1.5; }
.wg-flash__separator { color: #a998a9; font-size: 17px; line-height: 1.2; }
.wg-flash .wg-flash__status { margin: 11px 0 0; padding: 0; color: #e6d4aa; font-size: 12px; line-height: 1.5; }
.wg-flash .wg-flash__status:empty { display: none; }
.wg-flash .wg-flash__status--error { color: #ffc6bf; }

@keyframes wg-flash-arrive {
  from { opacity: 0; transform: translateY(14px); }
  to { opacity: 1; transform: translateY(0); }
}

@media (max-width: 600px) {
  .wg-flash {
    right: 16px;
    bottom: max(20px, calc(env(safe-area-inset-bottom) + 12px));
    width: 354px;
    max-height: 55vh;
    max-height: 55dvh;
    padding: 21px 22px 17px;
    border-radius: 14px;
  }
  .wg-flash .wg-flash__heading { margin-top: 10px; font-size: 25px; }
  .wg-flash .wg-flash__description { margin-bottom: 14px; font-size: 13px; }
  .wg-flash__deadline { margin-top: 14px; padding-top: 12px; }
}

@media (prefers-reduced-motion: reduce) {
  .wg-flash { animation: none; }
  .wg-flash .wg-flash__apply { transition: none; }
}
