.l4d-wc-toast-region {
  position: fixed;
  z-index: 2147483000;
  top: var(--l4d-toast-top, 1rem);
  right: clamp(.75rem, 2vw, 1.5rem);
  display: grid;
  gap: .75rem;
  width: min(26rem, calc(100vw - 1.5rem));
  pointer-events: none;
}

.l4d-wc-toast {
  --l4d-toast-accent: #315f57;
  position: relative;
  display: grid;
  grid-template-columns: 2rem minmax(0, 1fr) 2rem;
  align-items: start;
  gap: .75rem;
  width: 100%;
  margin: 0;
  padding: 1rem;
  overflow: hidden;
  border: 1px solid rgba(23, 53, 47, .13);
  border-left: .25rem solid var(--l4d-toast-accent);
  border-radius: 1rem;
  background: #fffdf9;
  color: #17352f;
  box-shadow: 0 1rem 2.75rem rgba(23, 53, 47, .2);
  pointer-events: auto;
  animation: l4d-wc-toast-in .28s ease both;
}

.l4d-wc-toast.is-error { --l4d-toast-accent: #a84d45; }
.l4d-wc-toast.is-info { --l4d-toast-accent: #315f57; }
.l4d-wc-toast.is-leaving { animation: l4d-wc-toast-out .2s ease both; }

.l4d-wc-toast__icon {
  display: grid;
  place-items: center;
  width: 2rem;
  height: 2rem;
  border-radius: 50%;
  background: rgba(49, 95, 87, .1);
  background: color-mix(in srgb, var(--l4d-toast-accent) 12%, white);
  color: var(--l4d-toast-accent);
  font: 800 1rem/1 Arial, sans-serif;
}

.l4d-wc-toast__content { min-width: 0; padding-top: .3rem; }
.l4d-wc-toast__content > :where(.woocommerce-message,.woocommerce-info,.woocommerce-error,.woocommerce-notice,.wc-block-components-notice-banner) {
  display: block !important;
  position: static !important;
  width: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: inherit !important;
  box-shadow: none !important;
  font: inherit !important;
  line-height: 1.5 !important;
}
.l4d-wc-toast__content > :where(.woocommerce-message,.woocommerce-info,.woocommerce-error,.woocommerce-notice)::before,
.l4d-wc-toast__content .wc-block-components-notice-banner__content > svg { display: none !important; }
.l4d-wc-toast__content :where(p,li) { margin: 0 !important; color: inherit !important; font-size: .9rem !important; line-height: 1.5 !important; }
.l4d-wc-toast__content :where(ul,ol) { margin: 0 !important; padding-left: 1.1rem !important; }
.l4d-wc-toast__content a { color: #315f57 !important; font-weight: 800 !important; text-decoration: underline !important; text-underline-offset: .15em; }

.l4d-wc-toast__close {
  display: grid !important;
  place-items: center !important;
  width: 2rem !important;
  min-width: 2rem !important;
  height: 2rem !important;
  min-height: 2rem !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid rgba(23, 53, 47, .12) !important;
  border-radius: 50% !important;
  background: #f4f6f1 !important;
  color: #315f57 !important;
  box-shadow: none !important;
  cursor: pointer;
  font: 700 1.15rem/1 Arial, sans-serif !important;
}
.l4d-wc-toast__close:hover { border-color: #315f57 !important; background: #315f57 !important; color: #fff !important; }
.l4d-wc-toast__close:focus-visible { outline: 2px solid #b7d449 !important; outline-offset: 2px; }

.woocommerce-notices-wrapper:empty,
.woocommerce-NoticeGroup:empty { display: none !important; }

@keyframes l4d-wc-toast-in {
  from { opacity: 0; transform: translate3d(1.25rem, -.25rem, 0); }
  to { opacity: 1; transform: translate3d(0, 0, 0); }
}
@keyframes l4d-wc-toast-out {
  from { opacity: 1; transform: translate3d(0, 0, 0); }
  to { opacity: 0; transform: translate3d(1rem, 0, 0); }
}

@media (max-width: 600px) {
  .l4d-wc-toast-region { right: .75rem; left: .75rem; width: auto; }
  .l4d-wc-toast { grid-template-columns: 1.75rem minmax(0, 1fr) 1.75rem; gap: .625rem; padding: .875rem; border-radius: .875rem; }
  .l4d-wc-toast__icon,
  .l4d-wc-toast__close { width: 1.75rem !important; min-width: 1.75rem !important; height: 1.75rem !important; min-height: 1.75rem !important; }
}

@media (prefers-reduced-motion: reduce) {
  .l4d-wc-toast { animation-duration: .01ms !important; }
}
