:host([status=info]) {
  --r-toast--border-color: var(--r-status-info-regular, #3e5c73);
  --r-toast--background-color: var(--r-status-info-soft, #f8fafb);
  --r-toast--leading-icon--color: var(--r-status-info-regular, #3e5c73);
}

:host([status=warning]) {
  --r-toast--border-color: var(--r-status-warning-regular, #ff7429);
  --r-toast--background-color: var(--r-status-warning-soft, #fef9f5);
  --r-toast--leading-icon--color: var(--r-status-warning-regular, #89411A);
}

:host([status=error]) {
  --r-toast--border-color: var(--r-status-error-regular, #b00c15);
  --r-toast--background-color: var(--r-status-error-soft, #fef6f6);
  --r-toast--leading-icon--color: var(--r-status-error-regular, #b00c15);
}

:host([status=success]) {
  --r-toast--border-color: var(--r-status-success-regular, #298535);
  --r-toast--background-color: var(--r-status-success-soft, #f7fdf8);
  --r-toast--leading-icon--color: var(--r-status-success-regular, #298535);
}

:host([is-content=false]) {
  --r-toast--content--display: none;
}

:host([headline]) {
  --r-toast--content--margin-top: var(--r-spacing-050, 0.5rem);
}

:host([data-visually-hidden=true]) {
  --r-toast--host--animation-duration: 0.2s;
  --r-toast--host--animation-name: fade-out;
}

:host(:not(:last-child)) {
  margin-bottom: var(--r-toast-group--spacing, 0);
}

:host {
  animation-duration: var(--r-toast--host--animation-duration, 0.3s);
  animation-fill-mode: var(--r-toast--host--animation-fill-mode, forwards);
  animation-name: var(--r-toast--host--animation-name, fade-in);
  box-sizing: var(--r-toast--host--box-sizing, border-box);
  display: var(--r-toast--host--display, block);
  height: var(--r-toast--host--height, var(--r-toast--host--height-expanded, auto));
  opacity: var(--r-toast--host--opacity, 1);
  overflow: var(--r-toast--host--overflow, hidden);
  position: var(--r-toast--host--position, relative);
  transition: var(--r-toast--host--transition, none);
  transition-delay: var(--r-toast--host--transition-delay, 0s);
}
:host ::slotted(p) {
  margin: 0;
}
:host ::slotted(p + p),
:host ::slotted(p + ul),
:host ::slotted(p + ol) {
  margin-top: 1rem;
}
:host .r-toast--trailing-button {
  --r-button--width: 2.75rem;
  --r-button--height: 2.75rem;
  --r-button--color: var(--r-text-regular, #282828);
  --r-button--border-color: transparent;
  --r-button--background-color: transparent;
  position: relative;
  margin-top: -8px;
  margin-right: -8px;
}
:host .r-toast--trailing-button:hover {
  --r-button--color: var(--r-text-strong, #000000);
  --r-button--background-color: var(--r-background-interactive-hovered, #000000);
}
:host .r-toast--trailing-button:active {
  --r-button--transform: scale(0.94);
}
@media (prefers-reduced-motion) {
  :host {
    transition: none;
    animation-name: none;
  }
}

@keyframes fade-in {
  from {
    opacity: 0;
    max-height: 0;
  }
  to {
    opacity: 1;
    max-height: var(--r-toast--host--height-expanded);
  }
}
@keyframes fade-out {
  from {
    opacity: 1;
    max-height: var(--r-toast--host--height-expanded);
    margin-top: var(--r-spacing-100, 1rem);
  }
  to {
    opacity: 0;
    max-height: 0;
    margin-top: 0;
  }
}
.r-toast {
  font-family: var(--r-toast--font-family, var(--r-font-family-text, system-ui));
  font-size: var(--r-toast--font-size, var(--r-font-size-400, 1rem));
  display: var(--r-toast--display, flex);
  flex-direction: var(--r-toast--flex-direction, row);
  align-items: var(--r-toast--align-items, stretch);
  gap: var(--r-toast--gap, var(--r-spacing-050, 0.5rem));
  padding: var(--r-toast--padding, 12px);
  border-width: var(--r-toast--border-width, 1px);
  border-style: var(--r-toast--border-style, solid);
  border-color: var(--r-toast--border-color, var(--r-status-info-regular, #3e5c73));
  background-color: var(--r-toast--background-color, var(--r-status-info-soft, #f8fafb));
  box-sizing: var(--r-toast--box-sizing, border-box);
  transition: var(--r-toast--transition, none);
}
.r-toast--main {
  flex: var(--r-toast--content--flex, 1);
  word-break: var(--r-toast--content--word-break, break-word);
}
.r-toast--leading-icon {
  color: var(--r-toast--leading-icon--color, var(--r-status-info-regular, #3e5c73));
  margin-top: var(--r-toast--leading-icon--margin-top, 0);
  margin-right: var(--r-toast--leading-icon--margin-right, var(--r-spacing-025, 0.25rem));
}
.r-toast--headline {
  color: var(--r-toast--headline--color, var(--r-text-regular, #282828));
  font-size: var(--r-toast--headline--font-size, var(--r-font-size-400, 1rem));
  font-weight: var(--r-toast--headline--font-weight, var(--r-font-weight-semibold, 600));
  line-height: var(--r-toast--headline--line-height, var(--r-line-height-m, 1.5));
  margin: var(--r-toast--headline--margin, 0);
}
.r-toast--content {
  display: var(--r-toast--content--display, block);
  color: var(--r-toast--content--color, var(--r-text-regular, #282828));
  line-height: var(--r-toast--content--line-height, var(--r-line-height-m, 1.5));
  font-size: var(--r-toast--content--font-size, var(--r-font-size-300, 0.875rem));
  font-weight: var(--r-toast--content--font-weight, var(--r-font-weight-regular, 400));
  margin-top: var(--r-toast--content--margin-top, 0);
  word-break: var(--r-toast--content--word-break, break-word);
}
.r-toast--action {
  display: var(--r-toast--action--display, flex);
  margin-top: var(--r-toast--action--margin-top, var(--r-spacing-050, 0.5rem));
  color: var(--r-toast--action--color, var(--r-text-regular, #282828));
  font-size: var(--r-toast--action--font-size, var(--r-font-size-300, 0.875rem));
  font-weight: var(--r-toast--action--font-weight, var(--r-font-weight-light, 300));
}
.r-toast--action-link,
.r-toast--action ::slotted(r-button) {
  --r-button--background-color: transparent;
  --r-button--border-width: 0;
  --r-button--color: var(--r-text-regular);
  --r-button--padding: 10px 2px 18px 2px;
  --r-button--slot--text-decoration: underline;
  --r-button--slot--text-underline-offset: 9px;
}
.r-toast--action-link:hover,
.r-toast--action ::slotted(r-button:hover:not([disabled]):not([disabled=true])) {
  --r-button--background-color: var(--r-background-interactive-hovered);
}
.r-toast--action-link:active,
.r-toast--action ::slotted(r-button:active:not([disabled]):not([disabled=true])) {
  --r-button--background-color: var(--r-background-interactive-pressed);
}
.r-toast--action ::slotted(*) {
  font-size: inherit;
  color: inherit;
}
.r-toast--action ::slotted(a) {
  color: var(--r-toast--action--color, var(--r-text-regular, #282828));
}
