// ------------------------------------------------------------------------------
// <auto-generated>
//     This code was generated by a tool.
//     Changes to this file may cause incorrect behavior and will be lost if the code is regenerated.
// </auto-generated>
// ------------------------------------------------------------------------------
// #region Imports
import { css } from '../../../../../Dom/Css';
// #endregion
/**
 * @public
 */
export function chatMessageElementJoyStyle() {
    return css `
:host {
  --chat-message-background-color: var(--joy-scheme-background);
  --chat-message-border-color: var(--joy-scheme-highlight);
  --chat-message-border-radius: var(--joy-layout-radius);
  --chat-message-border-style: solid;
  --chat-message-border-width: var(--joy-layout-thickness);
  --chat-message-font-family: var(--joy-font-family);
  --chat-message-font-letter-spacing: var(--joy-typography-body1-letter-spacing);
  --chat-message-font-line-height: var(--joy-typography-body1-line-height);
  --chat-message-font-size: var(--joy-typography-body1-font-size);
  --chat-message-font-text-decoration: var(--joy-typography-body1-text-decoration);
  --chat-message-font-text-transform: var(--joy-typography-body1-text-transform);
  --chat-message-font-weight: var(--joy-typography-body1-font-weight);
  --chat-message-foreground-color: var(--joy-scheme-foreground);
  --chat-message-gap: var(--joy-layout-space);
  --chat-message-padding-bottom: var(--joy-layout-space);
  --chat-message-padding-left: calc(var(--joy-layout-space) * 2);
  --chat-message-padding-right: calc(var(--joy-layout-space) * 2);
  --chat-message-padding-top: var(--joy-layout-space);
  --chat-message-shadow: var(--joy-elevation-light-offset-x-1) var(--joy-elevation-light-offset-y-1) var(--joy-elevation-light-blur-1) var(--joy-elevation-light-spread-1) var(--joy-elevation-light-color-1);
  --chat-message-shadow-blur: var(--joy-elevation-light-blur-1);
  --chat-message-shadow-color: var(--joy-elevation-light-color-1);
  --chat-message-shadow-offset-x: var(--joy-elevation-light-offset-x-1);
  --chat-message-shadow-offset-y: var(--joy-elevation-light-offset-y-1);
  --chat-message-shadow-spread: var(--joy-elevation-light-spread-1);
  --chat-message-transition-duration: var(--joy-duration-short);
  --chat-message-transition-mode: ease;
  --chat-message-transition-property: background-color, color, border-color, opacity, box-shadow, translate, transform;
  --chat-message-translate: none;
  --chat-message-white-space: 44px;
}

@media screen and (prefers-reduced-motion: reduce) {
  :host {
    transition-duration: .01ms;
  }
}

:host {
  box-sizing: border-box;
  display: block;
  position: relative;
}

:host *, :host :before, :host :after {
  box-sizing: border-box;
  background-repeat: no-repeat;
}

:host :before, :host :after {
  text-decoration: inherit;
  vertical-align: inherit;
}

:host([hidden]) {
  display: none !important;
}

:host {
  margin-left: var(--chat-message-white-space);
  margin-right: initial;
}

:host [part="root"] {
  gap: var(--chat-message-gap);
}

:host [part="root"] [part="content"] {
  justify-content: center;
  align-items: flex-end;
  gap: calc(var(--chat-message-gap) / 2);
  flex-direction: column;
  display: flex;
}

:host [part="root"] [part="content"] [part="message"] {
  border-width: var(--chat-message-border-width);
  border-radius: var(--chat-message-border-radius);
  border-style: var(--chat-message-border-style);
  background-color: var(--chat-message-background-color);
  border-color: var(--chat-message-border-color);
  color: var(--chat-message-foreground-color);
  padding-top: var(--chat-message-padding-top);
  padding-right: var(--chat-message-padding-right);
  padding-bottom: var(--chat-message-padding-bottom);
  padding-left: var(--chat-message-padding-left);
  gap: calc(var(--chat-message-gap) / 2);
  transition-duration: var(--chat-message-transition-duration);
  transition-timing-function: var(--chat-message-transition-mode);
  transition-property: var(--chat-message-transition-property);
  font-family: var(--chat-message-font-family);
  font-size: var(--chat-message-font-size);
  line-height: var(--chat-message-font-line-height);
  font-weight: var(--chat-message-font-weight);
  letter-spacing: var(--chat-message-font-letter-spacing);
  -webkit-text-decoration: var(--chat-message-font-text-decoration);
  text-decoration: var(--chat-message-font-text-decoration);
  text-transform: var(--chat-message-font-text-transform);
  box-shadow: var(--chat-message-shadow-offset-x) var(--chat-message-shadow-offset-y) var(--chat-message-shadow-blur) var(--chat-message-shadow-spread) var(--chat-message-shadow-color);
  border-top-right-radius: 0;
  flex-direction: column;
  display: flex;
}

:host [part="root"] [part="content"] [part="message"] [part="header"] {
  gap: var(--chat-message-gap);
  justify-content: space-between;
  align-items: center;
  display: flex;
}

:host [part="root"] [part="content"] [part="message"] [part="content"] [part="text"] {
  word-break: break-word;
}

:host [part="root"] [part="content"] [part="message"] [part="content"] [part="busy"] {
  gap: calc(var(--chat-message-gap) / 2);
  align-items: center;
  display: flex;
}

:host [part="root"] [part="content"] [part="message"] [part="content"] [part="busy"] [part="dot"] {
  animation: 1.2s ease-out infinite wave;
}

:host [part="root"] [part="content"] [part="message"] [part="content"] [part="busy"] [part="dot"]:nth-child(2) {
  animation-delay: -1s;
}

:host [part="root"] [part="content"] [part="message"] [part="content"] [part="busy"] [part="dot"]:nth-child(3) {
  animation-delay: -.8s;
}

:host [part="reactions"] {
  height: 0;
  display: flex;
  position: relative;
}

:host([reply]) {
  margin-left: initial;
  margin-right: var(--chat-message-white-space);
}

:host([reply]) [part="root"] [part="content"] {
  align-items: flex-start;
}

:host([reply]) [part="root"] [part="content"] [part="message"] {
  border-top-right-radius: var(--chat-message-border-radius);
  border-top-left-radius: 0;
}

@keyframes wave {
  0%, 60%, 100% {
    transform: initial;
  }

  30% {
    transform: translateY(-4px);
  }
}

:host ::slotted([slot="author"]), :host [part="author"] {
  font-family: var(--joy-typography-caption-font-family);
  font-size: var(--joy-typography-caption-font-size);
  line-height: var(--joy-typography-caption-line-height);
  font-weight: var(--joy-typography-caption-font-weight);
  -webkit-text-decoration: var(--joy-typography-caption-text-decoration);
  text-decoration: var(--joy-typography-caption-text-decoration);
  text-transform: var(--joy-typography-caption-text-transform);
  letter-spacing: var(--joy-typography-caption-letter-spacing);
}

:host ::slotted([slot="at"]), :host [part="at"] {
  --text-foreground-color: var(--joy-scheme-middlelight);
  font-family: var(--joy-typography-caption-font-family);
  font-size: var(--joy-typography-caption-font-size);
  line-height: var(--joy-typography-caption-line-height);
  font-weight: var(--joy-typography-caption-font-weight);
  -webkit-text-decoration: var(--joy-typography-caption-text-decoration);
  text-decoration: var(--joy-typography-caption-text-decoration);
  text-transform: var(--joy-typography-caption-text-transform);
  letter-spacing: var(--joy-typography-caption-letter-spacing);
}

@keyframes elastic-breathe {
  0%, 65%, 100% {
    transform: translateY(0) scaleX(1) scaleY(1);
  }

  10% {
    transform: translateY(-1px) scaleX(.92) scaleY(1.08);
  }

  20% {
    transform: translateY(-3px) scaleX(.85) scaleY(1.18);
  }

  30% {
    transform: translateY(-5px) scaleX(.82) scaleY(1.22);
  }

  40% {
    transform: translateY(-6px) scaleX(.8) scaleY(1.25);
  }

  48% {
    transform: translateY(-1px) scaleX(.98) scaleY(1.02);
  }

  54% {
    transform: translateY(0) scaleX(1.02) scaleY(.98);
  }

  60% {
    transform: translateY(0) scaleX(1) scaleY(1);
  }
}

:host [part="busy"] [part="dot"] {
  animation: elastic-breathe calc(var(--joy-duration-long) * 3) cubic-bezier(.4, 0, .2, 1) infinite;
}

:host [part="busy"] [part="dot"]:nth-child(2) {
  animation-delay: calc(var(--joy-duration-short) * -4);
}

:host [part="busy"] [part="dot"]:nth-child(3) {
  animation-delay: calc(var(--joy-duration-short) * -3);
}

@media (prefers-reduced-motion: reduce) {
  :host [part="busy"] [part="dot"] {
    animation: none;
  }
}

    `;
}
//# sourceMappingURL=ChatMessageElement.Joy.js.map