/* STEP85 / V103: right-side action notifications, 3s auto-hide. */
#toast-container.toast-container,
.toast-container#toast-container {
  position: fixed !important;
  top: 72px !important;
  right: 22px !important;
  bottom: auto !important;
  left: auto !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-end !important;
  gap: 10px !important;
  width: min(360px, calc(100vw - 32px)) !important;
  max-width: min(360px, calc(100vw - 32px)) !important;
  z-index: 2147483000 !important;
  pointer-events: none !important;
}

.gp-right-action-toast,
#toast-container.toast-container .toast:not(.gp-right-action-toast),
.toast-container#toast-container .toast:not(.gp-right-action-toast),
.gp-prime-walls-coming-soon-toast,
.psl-coming-soon-toast,
.psl-toast {
  pointer-events: auto !important;
  width: 100% !important;
  min-height: 48px !important;
  position: relative !important;
  overflow: hidden !important;
  border-radius: 16px !important;
  border: 1px solid rgba(0, 224, 255, 0.26) !important;
  background: linear-gradient(180deg, rgba(8, 15, 32, 0.98), rgba(2, 5, 13, 0.96)) !important;
  box-shadow: 0 18px 42px rgba(0, 0, 0, 0.55), 0 0 22px rgba(0, 224, 255, 0.10) !important;
  color: #eaffff !important;
  transform-origin: right center !important;
  animation: gpRightActionToastIn 180ms ease-out both !important;
  transition: opacity 230ms ease, transform 230ms ease, filter 230ms ease !important;
}

.gp-right-action-toast {
  min-height: 54px !important;
  display: grid !important;
  grid-template-columns: 34px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 11px !important;
  padding: 12px 14px !important;
  background:
    radial-gradient(circle at 0% 0%, rgba(0, 224, 255, 0.18), transparent 42%),
    linear-gradient(180deg, rgba(8, 15, 32, 0.98), rgba(2, 5, 13, 0.96)) !important;
  border-color: rgba(0, 224, 255, 0.30) !important;
  box-shadow: 0 18px 42px rgba(0, 0, 0, 0.55), 0 0 26px rgba(0, 224, 255, 0.14) !important;
}

#toast-container.toast-container .toast:not(.gp-right-action-toast),
.toast-container#toast-container .toast:not(.gp-right-action-toast) {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  padding: 12px 14px !important;
}

#toast-container.toast-container .toast:not(.gp-right-action-toast) span,
.toast-container#toast-container .toast:not(.gp-right-action-toast) span {
  min-width: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  font-size: 12px !important;
  font-weight: 850 !important;
  color: #eaffff !important;
}

.gp-right-action-toast__icon {
  width: 34px !important;
  height: 34px !important;
  border-radius: 12px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-weight: 950 !important;
  color: #001316 !important;
  background: linear-gradient(135deg, #00e5ff, #25ffb8) !important;
  box-shadow: 0 0 18px rgba(0, 224, 255, 0.36) !important;
}

.gp-right-action-toast__content {
  min-width: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 2px !important;
}

.gp-right-action-toast__title {
  display: block !important;
  font-size: 12px !important;
  font-weight: 950 !important;
  line-height: 1.18 !important;
  letter-spacing: 0.03em !important;
  text-transform: uppercase !important;
  color: #f5ffff !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

.gp-right-action-toast__body {
  display: block !important;
  font-size: 11px !important;
  font-weight: 750 !important;
  line-height: 1.25 !important;
  color: rgba(220, 245, 255, 0.78) !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

.gp-right-action-toast::after {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  bottom: 0 !important;
  height: 2px !important;
  width: 100% !important;
  transform-origin: left center !important;
  background: linear-gradient(90deg, #00e5ff, #25ffb8, #ffd56a) !important;
  animation: gpRightActionToastBar 3000ms linear both !important;
}

.gp-right-action-toast--off {
  border-color: rgba(255, 255, 255, 0.14) !important;
  background:
    radial-gradient(circle at 0% 0%, rgba(148, 163, 184, 0.12), transparent 44%),
    linear-gradient(180deg, rgba(10, 14, 25, 0.98), rgba(2, 5, 13, 0.96)) !important;
  box-shadow: 0 18px 42px rgba(0, 0, 0, 0.50) !important;
}

.gp-right-action-toast--off .gp-right-action-toast__icon {
  color: #dfe7f2 !important;
  background: linear-gradient(135deg, rgba(148, 163, 184, 0.42), rgba(71, 85, 105, 0.72)) !important;
  box-shadow: none !important;
}

.gp-right-action-toast--off::after {
  background: linear-gradient(90deg, rgba(148, 163, 184, 0.8), rgba(71, 85, 105, 0.9)) !important;
}

.gp-right-action-toast--warn {
  border-color: rgba(255, 213, 106, 0.35) !important;
  box-shadow: 0 18px 42px rgba(0, 0, 0, 0.55), 0 0 24px rgba(255, 213, 106, 0.12) !important;
}

.gp-right-action-toast--warn .gp-right-action-toast__icon {
  background: linear-gradient(135deg, #ffd56a, #ff8a3d) !important;
}

.gp-right-action-toast.is-hiding,
.gp-right-action-toast.gp-toast-v103-hiding,
#toast-container.toast-container .toast.is-hiding,
.toast-container#toast-container .toast.is-hiding,
.gp-prime-walls-coming-soon-toast.is-hiding,
.psl-coming-soon-toast.is-hiding,
.psl-toast.is-hiding,
.gp-toast-v103-hiding {
  opacity: 0 !important;
  transform: translateX(110%) scale(0.985) !important;
  filter: blur(.2px) !important;
  pointer-events: none !important;
}

@keyframes gpRightActionToastIn {
  from { opacity: 0; transform: translateX(110%) scale(0.98); }
  to { opacity: 1; transform: translateX(0) scale(1); }
}

@keyframes gpRightActionToastBar {
  from { transform: scaleX(1); }
  to { transform: scaleX(0); }
}

@media (max-width: 920px) {
  #toast-container.toast-container,
  .toast-container#toast-container {
    top: auto !important;
    right: 10px !important;
    bottom: 86px !important;
    left: 10px !important;
    width: auto !important;
    max-width: none !important;
    align-items: stretch !important;
  }
}
