@charset "UTF-8";:root {
  --toastify-color-light: #fff;
  --toastify-color-dark: #121212;
  --toastify-color-info: #3498db;
  --toastify-color-success: #07bc0c;
  --toastify-color-warning: #f1c40f;
  --toastify-color-error: hsl(6, 78%, 57%);
  --toastify-color-transparent: rgba(255, 255, 255, 0.7);

  --toastify-icon-color-info: var(--toastify-color-info);
  --toastify-icon-color-success: var(--toastify-color-success);
  --toastify-icon-color-warning: var(--toastify-color-warning);
  --toastify-icon-color-error: var(--toastify-color-error);

  --toastify-container-width: fit-content;
  --toastify-toast-width: 320px;
  --toastify-toast-offset: 16px;
  --toastify-toast-top: max(var(--toastify-toast-offset), env(safe-area-inset-top));
  --toastify-toast-right: max(var(--toastify-toast-offset), env(safe-area-inset-right));
  --toastify-toast-left: max(var(--toastify-toast-offset), env(safe-area-inset-left));
  --toastify-toast-bottom: max(var(--toastify-toast-offset), env(safe-area-inset-bottom));
  --toastify-toast-background: #fff;
  --toastify-toast-padding: 14px;
  --toastify-toast-min-height: 64px;
  --toastify-toast-max-height: 800px;
  --toastify-toast-bd-radius: 6px;
  --toastify-toast-shadow: 0px 4px 12px rgba(0, 0, 0, 0.1);
  --toastify-font-family: sans-serif;
  --toastify-z-index: 9999;
  --toastify-text-color-light: #757575;
  --toastify-text-color-dark: #fff;

  /* Used only for colored theme */
  --toastify-text-color-info: #fff;
  --toastify-text-color-success: #fff;
  --toastify-text-color-warning: #fff;
  --toastify-text-color-error: #fff;

  --toastify-spinner-color: #616161;
  --toastify-spinner-color-empty-area: #e0e0e0;
  --toastify-color-progress-light: linear-gradient(to right, #4cd964, #5ac8fa, #007aff, #34aadc, #5856d6, #ff2d55);
  --toastify-color-progress-dark: #bb86fc;
  --toastify-color-progress-info: var(--toastify-color-info);
  --toastify-color-progress-success: var(--toastify-color-success);
  --toastify-color-progress-warning: var(--toastify-color-warning);
  --toastify-color-progress-error: var(--toastify-color-error);
  /* used to control the opacity of the progress trail */
  --toastify-color-progress-bgo: 0.2;
}

.Toastify__toast-container {
  z-index: var(--toastify-z-index);
  -webkit-transform: translate3d(0, 0, var(--toastify-z-index));
  position: fixed;
  width: var(--toastify-container-width);
  box-sizing: border-box;
  color: #fff;
  display: flex;
  flex-direction: column;
}

.Toastify__toast-container--top-left {
  top: var(--toastify-toast-top);
  left: var(--toastify-toast-left);
}
.Toastify__toast-container--top-center {
  top: var(--toastify-toast-top);
  left: 50%;
  transform: translateX(-50%);
  align-items: center;
}
.Toastify__toast-container--top-right {
  top: var(--toastify-toast-top);
  right: var(--toastify-toast-right);
  align-items: end;
}
.Toastify__toast-container--bottom-left {
  bottom: var(--toastify-toast-bottom);
  left: var(--toastify-toast-left);
}
.Toastify__toast-container--bottom-center {
  bottom: var(--toastify-toast-bottom);
  left: 50%;
  transform: translateX(-50%);
  align-items: center;
}
.Toastify__toast-container--bottom-right {
  bottom: var(--toastify-toast-bottom);
  right: var(--toastify-toast-right);
  align-items: end;
}

.Toastify__toast {
  --y: 0px;
  position: relative;
  touch-action: none;
  width: var(--toastify-toast-width);
  min-height: var(--toastify-toast-min-height);
  box-sizing: border-box;
  margin-bottom: 1rem;
  padding: var(--toastify-toast-padding);
  border-radius: var(--toastify-toast-bd-radius);
  box-shadow: var(--toastify-toast-shadow);
  max-height: var(--toastify-toast-max-height);
  font-family: var(--toastify-font-family);
  /* webkit only issue #791 */
  z-index: 0;
  /* inner swag */
  display: flex;
  flex: 1 auto;
  align-items: center;
  word-break: break-word;
}

@media only screen and (max-width: 480px) {
  .Toastify__toast-container {
    width: 100vw;
    left: env(safe-area-inset-left);
    margin: 0;
  }
  .Toastify__toast-container--top-left,
  .Toastify__toast-container--top-center,
  .Toastify__toast-container--top-right {
    top: env(safe-area-inset-top);
    transform: translateX(0);
  }
  .Toastify__toast-container--bottom-left,
  .Toastify__toast-container--bottom-center,
  .Toastify__toast-container--bottom-right {
    bottom: env(safe-area-inset-bottom);
    transform: translateX(0);
  }
  .Toastify__toast-container--rtl {
    right: env(safe-area-inset-right);
    left: initial;
  }
  .Toastify__toast {
    --toastify-toast-width: 100%;
    margin-bottom: 0;
    border-radius: 0;
  }
}

.Toastify__toast-container[data-stacked='true'] {
  width: var(--toastify-toast-width);
}

@media only screen and (max-width: 480px) {
  .Toastify__toast-container[data-stacked='true'] {
    width: 100vw;
  }
}

.Toastify__toast--stacked {
  position: absolute;
  width: 100%;
  transform: translate3d(0, var(--y), 0) scale(var(--s));
  transition: transform 0.3s;
}

.Toastify__toast--stacked[data-collapsed] .Toastify__toast-body,
.Toastify__toast--stacked[data-collapsed] .Toastify__close-button {
  transition: opacity 0.1s;
}

.Toastify__toast--stacked[data-collapsed='false'] {
  overflow: visible;
}

.Toastify__toast--stacked[data-collapsed='true']:not(:last-child) > * {
  opacity: 0;
}

.Toastify__toast--stacked:after {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  height: calc(var(--g) * 1px);
  bottom: 100%;
}

.Toastify__toast--stacked[data-pos='top'] {
  top: 0;
}

.Toastify__toast--stacked[data-pos='bot'] {
  bottom: 0;
}

.Toastify__toast--stacked[data-pos='bot'].Toastify__toast--stacked:before {
  transform-origin: top;
}

.Toastify__toast--stacked[data-pos='top'].Toastify__toast--stacked:before {
  transform-origin: bottom;
}

.Toastify__toast--stacked:before {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 100%;
  transform: scaleY(3);
  z-index: -1;
}

.Toastify__toast--rtl {
  direction: rtl;
}

.Toastify__toast--close-on-click {
  cursor: pointer;
}

.Toastify__toast-icon {
  margin-inline-end: 10px;
  width: 22px;
  flex-shrink: 0;
  display: flex;
}

.Toastify--animate {
  animation-fill-mode: both;
  animation-duration: 0.5s;
}

.Toastify--animate-icon {
  animation-fill-mode: both;
  animation-duration: 0.3s;
}

.Toastify__toast-theme--dark {
  background: var(--toastify-color-dark);
  color: var(--toastify-text-color-dark);
}

.Toastify__toast-theme--light {
  background: var(--toastify-color-light);
  color: var(--toastify-text-color-light);
}

.Toastify__toast-theme--colored.Toastify__toast--default {
  background: var(--toastify-color-light);
  color: var(--toastify-text-color-light);
}

.Toastify__toast-theme--colored.Toastify__toast--info {
  color: var(--toastify-text-color-info);
  background: var(--toastify-color-info);
}

.Toastify__toast-theme--colored.Toastify__toast--success {
  color: var(--toastify-text-color-success);
  background: var(--toastify-color-success);
}

.Toastify__toast-theme--colored.Toastify__toast--warning {
  color: var(--toastify-text-color-warning);
  background: var(--toastify-color-warning);
}

.Toastify__toast-theme--colored.Toastify__toast--error {
  color: var(--toastify-text-color-error);
  background: var(--toastify-color-error);
}

.Toastify__progress-bar-theme--light {
  background: var(--toastify-color-progress-light);
}

.Toastify__progress-bar-theme--dark {
  background: var(--toastify-color-progress-dark);
}

.Toastify__progress-bar--info {
  background: var(--toastify-color-progress-info);
}

.Toastify__progress-bar--success {
  background: var(--toastify-color-progress-success);
}

.Toastify__progress-bar--warning {
  background: var(--toastify-color-progress-warning);
}

.Toastify__progress-bar--error {
  background: var(--toastify-color-progress-error);
}

.Toastify__progress-bar-theme--colored.Toastify__progress-bar--info,
.Toastify__progress-bar-theme--colored.Toastify__progress-bar--success,
.Toastify__progress-bar-theme--colored.Toastify__progress-bar--warning,
.Toastify__progress-bar-theme--colored.Toastify__progress-bar--error {
  background: var(--toastify-color-transparent);
}

.Toastify__close-button {
  color: #fff;
  position: absolute;
  top: 6px;
  right: 6px;
  background: transparent;
  outline: none;
  border: none;
  padding: 0;
  cursor: pointer;
  opacity: 0.7;
  transition: 0.3s ease;
  z-index: 1;
}

.Toastify__toast--rtl .Toastify__close-button {
  left: 6px;
  right: unset;
}

.Toastify__close-button--light {
  color: #000;
  opacity: 0.3;
}

.Toastify__close-button > svg {
  fill: currentColor;
  height: 16px;
  width: 14px;
}

.Toastify__close-button:hover,
.Toastify__close-button:focus {
  opacity: 1;
}

@keyframes Toastify__trackProgress {
  0% {
    transform: scaleX(1);
  }
  100% {
    transform: scaleX(0);
  }
}

.Toastify__progress-bar {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  opacity: 0.7;
  transform-origin: left;
}

.Toastify__progress-bar--animated {
  animation: Toastify__trackProgress linear 1 forwards;
}

.Toastify__progress-bar--controlled {
  transition: transform 0.2s;
}

.Toastify__progress-bar--rtl {
  right: 0;
  left: initial;
  transform-origin: right;
  border-bottom-left-radius: initial;
}

.Toastify__progress-bar--wrp {
  position: absolute;
  overflow: hidden;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 5px;
  border-bottom-left-radius: var(--toastify-toast-bd-radius);
  border-bottom-right-radius: var(--toastify-toast-bd-radius);
}

.Toastify__progress-bar--wrp[data-hidden='true'] {
  opacity: 0;
}

.Toastify__progress-bar--bg {
  opacity: var(--toastify-color-progress-bgo);
  width: 100%;
  height: 100%;
}

.Toastify__spinner {
  width: 20px;
  height: 20px;
  box-sizing: border-box;
  border: 2px solid;
  border-radius: 100%;
  border-color: var(--toastify-spinner-color-empty-area);
  border-right-color: var(--toastify-spinner-color);
  animation: Toastify__spin 0.65s linear infinite;
}

@keyframes Toastify__bounceInRight {
  from,
  60%,
  75%,
  90%,
  to {
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  from {
    opacity: 0;
    transform: translate3d(3000px, 0, 0);
  }
  60% {
    opacity: 1;
    transform: translate3d(-25px, 0, 0);
  }
  75% {
    transform: translate3d(10px, 0, 0);
  }
  90% {
    transform: translate3d(-5px, 0, 0);
  }
  to {
    transform: none;
  }
}

@keyframes Toastify__bounceOutRight {
  20% {
    opacity: 1;
    transform: translate3d(-20px, var(--y), 0);
  }
  to {
    opacity: 0;
    transform: translate3d(2000px, var(--y), 0);
  }
}

@keyframes Toastify__bounceInLeft {
  from,
  60%,
  75%,
  90%,
  to {
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  0% {
    opacity: 0;
    transform: translate3d(-3000px, 0, 0);
  }
  60% {
    opacity: 1;
    transform: translate3d(25px, 0, 0);
  }
  75% {
    transform: translate3d(-10px, 0, 0);
  }
  90% {
    transform: translate3d(5px, 0, 0);
  }
  to {
    transform: none;
  }
}

@keyframes Toastify__bounceOutLeft {
  20% {
    opacity: 1;
    transform: translate3d(20px, var(--y), 0);
  }
  to {
    opacity: 0;
    transform: translate3d(-2000px, var(--y), 0);
  }
}

@keyframes Toastify__bounceInUp {
  from,
  60%,
  75%,
  90%,
  to {
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  from {
    opacity: 0;
    transform: translate3d(0, 3000px, 0);
  }
  60% {
    opacity: 1;
    transform: translate3d(0, -20px, 0);
  }
  75% {
    transform: translate3d(0, 10px, 0);
  }
  90% {
    transform: translate3d(0, -5px, 0);
  }
  to {
    transform: translate3d(0, 0, 0);
  }
}

@keyframes Toastify__bounceOutUp {
  20% {
    transform: translate3d(0, calc(var(--y) - 10px), 0);
  }
  40%,
  45% {
    opacity: 1;
    transform: translate3d(0, calc(var(--y) + 20px), 0);
  }
  to {
    opacity: 0;
    transform: translate3d(0, -2000px, 0);
  }
}

@keyframes Toastify__bounceInDown {
  from,
  60%,
  75%,
  90%,
  to {
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  0% {
    opacity: 0;
    transform: translate3d(0, -3000px, 0);
  }
  60% {
    opacity: 1;
    transform: translate3d(0, 25px, 0);
  }
  75% {
    transform: translate3d(0, -10px, 0);
  }
  90% {
    transform: translate3d(0, 5px, 0);
  }
  to {
    transform: none;
  }
}

@keyframes Toastify__bounceOutDown {
  20% {
    transform: translate3d(0, calc(var(--y) - 10px), 0);
  }
  40%,
  45% {
    opacity: 1;
    transform: translate3d(0, calc(var(--y) + 20px), 0);
  }
  to {
    opacity: 0;
    transform: translate3d(0, 2000px, 0);
  }
}

.Toastify__bounce-enter--top-left,
.Toastify__bounce-enter--bottom-left {
  animation-name: Toastify__bounceInLeft;
}

.Toastify__bounce-enter--top-right,
.Toastify__bounce-enter--bottom-right {
  animation-name: Toastify__bounceInRight;
}

.Toastify__bounce-enter--top-center {
  animation-name: Toastify__bounceInDown;
}

.Toastify__bounce-enter--bottom-center {
  animation-name: Toastify__bounceInUp;
}

.Toastify__bounce-exit--top-left,
.Toastify__bounce-exit--bottom-left {
  animation-name: Toastify__bounceOutLeft;
}

.Toastify__bounce-exit--top-right,
.Toastify__bounce-exit--bottom-right {
  animation-name: Toastify__bounceOutRight;
}

.Toastify__bounce-exit--top-center {
  animation-name: Toastify__bounceOutUp;
}

.Toastify__bounce-exit--bottom-center {
  animation-name: Toastify__bounceOutDown;
}

@keyframes Toastify__zoomIn {
  from {
    opacity: 0;
    transform: scale3d(0.3, 0.3, 0.3);
  }
  50% {
    opacity: 1;
  }
}

@keyframes Toastify__zoomOut {
  from {
    opacity: 1;
  }
  50% {
    opacity: 0;
    transform: translate3d(0, var(--y), 0) scale3d(0.3, 0.3, 0.3);
  }
  to {
    opacity: 0;
  }
}

.Toastify__zoom-enter {
  animation-name: Toastify__zoomIn;
}

.Toastify__zoom-exit {
  animation-name: Toastify__zoomOut;
}

@keyframes Toastify__flipIn {
  from {
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    animation-timing-function: ease-in;
    opacity: 0;
  }
  40% {
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    animation-timing-function: ease-in;
  }
  60% {
    transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    opacity: 1;
  }
  80% {
    transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
  }
  to {
    transform: perspective(400px);
  }
}

@keyframes Toastify__flipOut {
  from {
    transform: translate3d(0, var(--y), 0) perspective(400px);
  }
  30% {
    transform: translate3d(0, var(--y), 0) perspective(400px) rotate3d(1, 0, 0, -20deg);
    opacity: 1;
  }
  to {
    transform: translate3d(0, var(--y), 0) perspective(400px) rotate3d(1, 0, 0, 90deg);
    opacity: 0;
  }
}

.Toastify__flip-enter {
  animation-name: Toastify__flipIn;
}

.Toastify__flip-exit {
  animation-name: Toastify__flipOut;
}

@keyframes Toastify__slideInRight {
  from {
    transform: translate3d(110%, 0, 0);
    visibility: visible;
  }
  to {
    transform: translate3d(0, var(--y), 0);
  }
}

@keyframes Toastify__slideInLeft {
  from {
    transform: translate3d(-110%, 0, 0);
    visibility: visible;
  }
  to {
    transform: translate3d(0, var(--y), 0);
  }
}

@keyframes Toastify__slideInUp {
  from {
    transform: translate3d(0, 110%, 0);
    visibility: visible;
  }
  to {
    transform: translate3d(0, var(--y), 0);
  }
}

@keyframes Toastify__slideInDown {
  from {
    transform: translate3d(0, -110%, 0);
    visibility: visible;
  }
  to {
    transform: translate3d(0, var(--y), 0);
  }
}

@keyframes Toastify__slideOutRight {
  from {
    transform: translate3d(0, var(--y), 0);
  }
  to {
    visibility: hidden;
    transform: translate3d(110%, var(--y), 0);
  }
}

@keyframes Toastify__slideOutLeft {
  from {
    transform: translate3d(0, var(--y), 0);
  }
  to {
    visibility: hidden;
    transform: translate3d(-110%, var(--y), 0);
  }
}

@keyframes Toastify__slideOutDown {
  from {
    transform: translate3d(0, var(--y), 0);
  }
  to {
    visibility: hidden;
    transform: translate3d(0, 500px, 0);
  }
}

@keyframes Toastify__slideOutUp {
  from {
    transform: translate3d(0, var(--y), 0);
  }
  to {
    visibility: hidden;
    transform: translate3d(0, -500px, 0);
  }
}

.Toastify__slide-enter--top-left,
.Toastify__slide-enter--bottom-left {
  animation-name: Toastify__slideInLeft;
}

.Toastify__slide-enter--top-right,
.Toastify__slide-enter--bottom-right {
  animation-name: Toastify__slideInRight;
}

.Toastify__slide-enter--top-center {
  animation-name: Toastify__slideInDown;
}

.Toastify__slide-enter--bottom-center {
  animation-name: Toastify__slideInUp;
}

.Toastify__slide-exit--top-left,
.Toastify__slide-exit--bottom-left {
  animation-name: Toastify__slideOutLeft;
  animation-timing-function: ease-in;
  animation-duration: 0.3s;
}

.Toastify__slide-exit--top-right,
.Toastify__slide-exit--bottom-right {
  animation-name: Toastify__slideOutRight;
  animation-timing-function: ease-in;
  animation-duration: 0.3s;
}

.Toastify__slide-exit--top-center {
  animation-name: Toastify__slideOutUp;
  animation-timing-function: ease-in;
  animation-duration: 0.3s;
}

.Toastify__slide-exit--bottom-center {
  animation-name: Toastify__slideOutDown;
  animation-timing-function: ease-in;
  animation-duration: 0.3s;
}

@keyframes Toastify__spin {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
/* Basic editor styles */
.tiptap {
  outline: none;
}
.tiptap :focus-visible {
  outline: none;
}
.tiptap :first-child {
  margin-top: 0;
}
.tiptap {
  /* List styles */
}
.tiptap ul,
.tiptap ol {
  padding: 0 1rem;
  margin: 1.25rem 1rem 1.25rem 0.4rem;
}
.tiptap ul li p,
.tiptap ol li p {
  margin-top: 0.25em;
  margin-bottom: 0.25em;
}
.tiptap {
  /* Heading styles */
}
.tiptap h1,
.tiptap h2,
.tiptap h3,
.tiptap h4,
.tiptap h5,
.tiptap h6 {
  line-height: 1.1;
  margin-top: 2.5rem;
  text-wrap: pretty;
}
.tiptap h1,
.tiptap h2 {
  margin-top: 3.5rem;
  margin-bottom: 1.5rem;
}
.tiptap h1 {
  font-size: 1.4rem;
}
.tiptap h2 {
  font-size: 1.2rem;
}
.tiptap h3 {
  font-size: 1.1rem;
}
.tiptap h4,
.tiptap h5,
.tiptap h6 {
  font-size: 1rem;
}
.tiptap {
  /* Code and preformatted text styles */
}
.tiptap code {
  background-color: var(--purple-light);
  border-radius: 0.4rem;
  color: var(--black);
  font-size: 0.85rem;
  padding: 0.25em 0.3em;
}
.tiptap pre {
  background: var(--black);
  border-radius: 0.5rem;
  color: var(--white);
  font-family: "JetBrainsMono", monospace;
  margin: 1.5rem 0;
  padding: 0.75rem 1rem;
}
.tiptap pre code {
  background: none;
  color: inherit;
  font-size: 0.8rem;
  padding: 0;
}
.tiptap blockquote {
  border-left: 3px solid var(--gray-3);
  margin: 1.5rem 0;
  padding-left: 1rem;
}
.tiptap hr {
  border: none;
  border-top: 1px solid var(--gray-2);
  margin: 2rem 0;
}/*
 * Stream already ships a single-column layout for narrow screens: when a thread
 * is open the main panel collapses to zero width and the thread takes over the
 * container. In stream-chat-react/css/index.css that lives under
 *
 *   @media (max-width: 767px) { ... }
 *
 * which keys off the VIEWPORT. Our constraint is the 380px dock sitting inside
 * a desktop-width page, so the query never fires and the message list and the
 * thread end up side by side at ~190px each — every bubble wrapping mid-word.
 *
 * These are Stream's own declarations, copied verbatim and scoped to the dock,
 * where "narrow" is true by construction. The extra .yk-chat-dock class also
 * makes them win on specificity regardless of stylesheet order.
 *
 * If a future SDK upgrade renames these classes, this block is the thing to
 * re-check against the 767px section of the shipped CSS.
 */

.yk-chat-dock
  .str-chat__channel
  .str-chat__container:has(.str-chat__thread-container)
  > .str-chat__main-panel,
.yk-chat-dock
  .str-chat__channel
  .str-chat__container:has(.str-chat__thread-container)
  > .str-chat__dropzone-root:not(.str-chat__dropzone-root--thread) {
  flex: 0 0 0;
  width: 0;
  min-width: 0;
  max-width: 0;
  overflow: hidden;
}

.yk-chat-dock
  .str-chat__channel
  .str-chat__container:has(.str-chat__thread-container)
  > .str-chat__thread-container,
.yk-chat-dock
  .str-chat__channel
  .str-chat__container:has(.str-chat__thread-container)
  > .str-chat__dropzone-root--thread {
  flex: 1 1 auto;
  min-width: 0;
  width: 100%;
}
/* this gets exported as style.css and can be used for the default theming */
/* these are the necessary styles for React Flow, they get used by base.css and style.css */
.react-flow {
  direction: ltr;
}
.react-flow__container {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}
.react-flow__pane {
  z-index: 1;
  cursor: grab;
}
.react-flow__pane.selection {
    cursor: pointer;
  }
.react-flow__pane.dragging {
    cursor: grabbing;
  }
.react-flow__viewport {
  transform-origin: 0 0;
  z-index: 2;
  pointer-events: none;
}
.react-flow__renderer {
  z-index: 4;
}
.react-flow__selection {
  z-index: 6;
}
.react-flow__nodesselection-rect:focus,
.react-flow__nodesselection-rect:focus-visible {
  outline: none;
}
.react-flow .react-flow__edges {
  pointer-events: none;
  overflow: visible;
}
.react-flow__edge-path,
.react-flow__connection-path {
  stroke: #b1b1b7;
  stroke-width: 1;
  fill: none;
}
.react-flow__edge {
  pointer-events: visibleStroke;
  cursor: pointer;
}
.react-flow__edge.animated path {
    stroke-dasharray: 5;
    animation: dashdraw 0.5s linear infinite;
  }
.react-flow__edge.animated path.react-flow__edge-interaction {
    stroke-dasharray: none;
    animation: none;
  }
.react-flow__edge.inactive {
    pointer-events: none;
  }
.react-flow__edge.selected,
  .react-flow__edge:focus,
  .react-flow__edge:focus-visible {
    outline: none;
  }
.react-flow__edge.selected .react-flow__edge-path,
  .react-flow__edge:focus .react-flow__edge-path,
  .react-flow__edge:focus-visible .react-flow__edge-path {
    stroke: #555;
  }
.react-flow__edge-textwrapper {
    pointer-events: all;
  }
.react-flow__edge-textbg {
    fill: white;
  }
.react-flow__edge .react-flow__edge-text {
    pointer-events: none;
    -webkit-user-select: none;
       -moz-user-select: none;
            user-select: none;
  }
.react-flow__connection {
  pointer-events: none;
}
.react-flow__connection .animated {
    stroke-dasharray: 5;
    animation: dashdraw 0.5s linear infinite;
  }
.react-flow__connectionline {
  z-index: 1001;
}
.react-flow__nodes {
  pointer-events: none;
  transform-origin: 0 0;
}
.react-flow__node {
  position: absolute;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  pointer-events: all;
  transform-origin: 0 0;
  box-sizing: border-box;
  cursor: grab;
}
.react-flow__node.dragging {
    cursor: grabbing;
  }
.react-flow__nodesselection {
  z-index: 3;
  transform-origin: left top;
  pointer-events: none;
}
.react-flow__nodesselection-rect {
    position: absolute;
    pointer-events: all;
    cursor: grab;
  }
.react-flow__handle {
  position: absolute;
  pointer-events: none;
  min-width: 5px;
  min-height: 5px;
  width: 6px;
  height: 6px;
  background: #1a192b;
  border: 1px solid white;
  border-radius: 100%;
}
.react-flow__handle.connectionindicator {
    pointer-events: all;
    cursor: crosshair;
  }
.react-flow__handle-bottom {
    top: auto;
    left: 50%;
    bottom: -4px;
    transform: translate(-50%, 0);
  }
.react-flow__handle-top {
    left: 50%;
    top: -4px;
    transform: translate(-50%, 0);
  }
.react-flow__handle-left {
    top: 50%;
    left: -4px;
    transform: translate(0, -50%);
  }
.react-flow__handle-right {
    right: -4px;
    top: 50%;
    transform: translate(0, -50%);
  }
.react-flow__edgeupdater {
  cursor: move;
  pointer-events: all;
}
.react-flow__panel {
  position: absolute;
  z-index: 5;
  margin: 15px;
}
.react-flow__panel.top {
    top: 0;
  }
.react-flow__panel.bottom {
    bottom: 0;
  }
.react-flow__panel.left {
    left: 0;
  }
.react-flow__panel.right {
    right: 0;
  }
.react-flow__panel.center {
    left: 50%;
    transform: translateX(-50%);
  }
.react-flow__attribution {
  font-size: 10px;
  background: rgba(255, 255, 255, 0.5);
  padding: 2px 3px;
  margin: 0;
}
.react-flow__attribution a {
    text-decoration: none;
    color: #999;
  }
@keyframes dashdraw {
  from {
    stroke-dashoffset: 10;
  }
}
.react-flow__edgelabel-renderer {
  position: absolute;
  width: 100%;
  height: 100%;
  pointer-events: none;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
.react-flow__edge.updating .react-flow__edge-path {
      stroke: #777;
    }
.react-flow__edge-text {
    font-size: 10px;
  }
.react-flow__node.selectable:focus,
  .react-flow__node.selectable:focus-visible {
    outline: none;
  }
.react-flow__node-default,
.react-flow__node-input,
.react-flow__node-output,
.react-flow__node-group {
  padding: 10px;
  border-radius: 3px;
  width: 150px;
  font-size: 12px;
  color: #222;
  text-align: center;
  border-width: 1px;
  border-style: solid;
  border-color: #1a192b;
  background-color: white;
}
.react-flow__node-default.selectable:hover, .react-flow__node-input.selectable:hover, .react-flow__node-output.selectable:hover, .react-flow__node-group.selectable:hover {
      box-shadow: 0 1px 4px 1px rgba(0, 0, 0, 0.08);
    }
.react-flow__node-default.selectable.selected,
    .react-flow__node-default.selectable:focus,
    .react-flow__node-default.selectable:focus-visible,
    .react-flow__node-input.selectable.selected,
    .react-flow__node-input.selectable:focus,
    .react-flow__node-input.selectable:focus-visible,
    .react-flow__node-output.selectable.selected,
    .react-flow__node-output.selectable:focus,
    .react-flow__node-output.selectable:focus-visible,
    .react-flow__node-group.selectable.selected,
    .react-flow__node-group.selectable:focus,
    .react-flow__node-group.selectable:focus-visible {
      box-shadow: 0 0 0 0.5px #1a192b;
    }
.react-flow__node-group {
  background-color: rgba(240, 240, 240, 0.25);
}
.react-flow__nodesselection-rect,
.react-flow__selection {
  background: rgba(0, 89, 220, 0.08);
  border: 1px dotted rgba(0, 89, 220, 0.8);
}
.react-flow__nodesselection-rect:focus,
  .react-flow__nodesselection-rect:focus-visible,
  .react-flow__selection:focus,
  .react-flow__selection:focus-visible {
    outline: none;
  }
.react-flow__controls {
  box-shadow: 0 0 2px 1px rgba(0, 0, 0, 0.08);
}
.react-flow__controls-button {
    border: none;
    background: #fefefe;
    border-bottom: 1px solid #eee;
    box-sizing: content-box;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 16px;
    height: 16px;
    cursor: pointer;
    -webkit-user-select: none;
       -moz-user-select: none;
            user-select: none;
    padding: 5px;
  }
.react-flow__controls-button:hover {
      background: #f4f4f4;
    }
.react-flow__controls-button svg {
      width: 100%;
      max-width: 12px;
      max-height: 12px;
    }
.react-flow__controls-button:disabled {
      pointer-events: none;
    }
.react-flow__controls-button:disabled svg {
        fill-opacity: 0.4;
      }
.react-flow__minimap {
  background-color: #fff;
}
.react-flow__minimap svg {
  display: block;
}
.react-flow__resize-control {
  position: absolute;
}
.react-flow__resize-control.left,
.react-flow__resize-control.right {
  cursor: ew-resize;
}
.react-flow__resize-control.top,
.react-flow__resize-control.bottom {
  cursor: ns-resize;
}
.react-flow__resize-control.top.left,
.react-flow__resize-control.bottom.right {
  cursor: nwse-resize;
}
.react-flow__resize-control.bottom.left,
.react-flow__resize-control.top.right {
  cursor: nesw-resize;
}
/* handle styles */
.react-flow__resize-control.handle {
  width: 4px;
  height: 4px;
  border: 1px solid #fff;
  border-radius: 1px;
  background-color: #3367d9;
  transform: translate(-50%, -50%);
}
.react-flow__resize-control.handle.left {
  left: 0;
  top: 50%;
}
.react-flow__resize-control.handle.right {
  left: 100%;
  top: 50%;
}
.react-flow__resize-control.handle.top {
  left: 50%;
  top: 0;
}
.react-flow__resize-control.handle.bottom {
  left: 50%;
  top: 100%;
}
.react-flow__resize-control.handle.top.left {
  left: 0;
}
.react-flow__resize-control.handle.bottom.left {
  left: 0;
}
.react-flow__resize-control.handle.top.right {
  left: 100%;
}
.react-flow__resize-control.handle.bottom.right {
  left: 100%;
}
/* line styles */
.react-flow__resize-control.line {
  border-color: #3367d9;
  border-width: 0;
  border-style: solid;
}
.react-flow__resize-control.line.left,
.react-flow__resize-control.line.right {
  width: 1px;
  transform: translate(-50%, 0);
  top: 0;
  height: 100%;
}
.react-flow__resize-control.line.left {
  left: 0;
  border-left-width: 1px;
}
.react-flow__resize-control.line.right {
  left: 100%;
  border-right-width: 1px;
}
.react-flow__resize-control.line.top,
.react-flow__resize-control.line.bottom {
  height: 1px;
  transform: translate(0, -50%);
  left: 0;
  width: 100%;
}
.react-flow__resize-control.line.top {
  top: 0;
  border-top-width: 1px;
}
.react-flow__resize-control.line.bottom {
  border-bottom-width: 1px;
  top: 100%;
}
/* Variables declaration */
.rdp-root {
  --rdp-accent-color: blue; /* The accent color used for selected days and UI elements. */
  --rdp-accent-background-color: #f0f0ff; /* The accent background color used for selected days and UI elements. */

  --rdp-day-height: 44px; /* The height of the day cells. */
  --rdp-day-width: 44px; /* The width of the day cells. */

  --rdp-day_button-border-radius: 100%; /* The border radius of the day cells. */
  --rdp-day_button-border: 2px solid transparent; /* The border of the day cells. */
  --rdp-day_button-height: 42px; /* The height of the day cells. */
  --rdp-day_button-width: 42px; /* The width of the day cells. */

  --rdp-selected-border: 2px solid var(--rdp-accent-color); /* The border of the selected days. */
  --rdp-disabled-opacity: 0.5; /* The opacity of the disabled days. */
  --rdp-outside-opacity: 0.75; /* The opacity of the days outside the current month. */
  --rdp-today-color: var(--rdp-accent-color); /* The color of the today's date. */

  --rdp-dropdown-gap: 0.5rem; /* The gap between the dropdowns used in the month captons. */

  --rdp-months-gap: 2rem; /* The gap between the months in the multi-month view. */

  --rdp-nav_button-disabled-opacity: 0.5; /* The opacity of the disabled navigation buttons. */
  --rdp-nav_button-height: 2.25rem; /* The height of the navigation buttons. */
  --rdp-nav_button-width: 2.25rem; /* The width of the navigation buttons. */
  --rdp-nav-height: 2.75rem; /* The height of the navigation bar. */

  --rdp-range_middle-background-color: var(--rdp-accent-background-color); /* The color of the background for days in the middle of a range. */
  --rdp-range_middle-color: inherit; /* The color of the range text. */

  --rdp-range_start-color: white; /* The color of the range text. */
  --rdp-range_start-background: linear-gradient(
    var(--rdp-gradient-direction),
    transparent 50%,
    var(--rdp-range_middle-background-color) 50%
  ); /* Used for the background of the start of the selected range. */
  --rdp-range_start-date-background-color: var(--rdp-accent-color); /* The background color of the date when at the start of the selected range. */

  --rdp-range_end-background: linear-gradient(
    var(--rdp-gradient-direction),
    var(--rdp-range_middle-background-color) 50%,
    transparent 50%
  ); /* Used for the background of the end of the selected range. */
  --rdp-range_end-color: white; /* The color of the range text. */
  --rdp-range_end-date-background-color: var(--rdp-accent-color); /* The background color of the date when at the end of the selected range. */

  --rdp-week_number-border-radius: 100%; /* The border radius of the week number. */
  --rdp-week_number-border: 2px solid transparent; /* The border of the week number. */

  --rdp-week_number-height: var(--rdp-day-height); /* The height of the week number cells. */
  --rdp-week_number-opacity: 0.75; /* The opacity of the week number. */
  --rdp-week_number-width: var(--rdp-day-width); /* The width of the week number cells. */
  --rdp-weeknumber-text-align: center; /* The text alignment of the weekday cells. */

  --rdp-weekday-opacity: 0.75; /* The opacity of the weekday. */
  --rdp-weekday-padding: 0.5rem 0rem; /* The padding of the weekday. */
  --rdp-weekday-text-align: center; /* The text alignment of the weekday cells. */

  --rdp-gradient-direction: 90deg;

  --rdp-animation_duration: 0.3s;
  --rdp-animation_timing: cubic-bezier(0.4, 0, 0.2, 1);
}

.rdp-root[dir="rtl"] {
  --rdp-gradient-direction: -90deg;
}

.rdp-root[data-broadcast-calendar="true"] {
  --rdp-outside-opacity: unset;
}

/* Root of the component. */
.rdp-root {
  position: relative; /* Required to position the navigation toolbar. */
  box-sizing: border-box;
}

.rdp-root * {
  box-sizing: border-box;
}

.rdp-day {
  width: var(--rdp-day-width);
  height: var(--rdp-day-height);
  text-align: center;
}

.rdp-day_button {
  background: none;
  padding: 0;
  margin: 0;
  cursor: pointer;
  font: inherit;
  color: inherit;
  justify-content: center;
  align-items: center;
  display: flex;

  width: var(--rdp-day_button-width);
  height: var(--rdp-day_button-height);
  border: var(--rdp-day_button-border);
  border-radius: var(--rdp-day_button-border-radius);
}

.rdp-day_button:disabled {
  cursor: revert;
}

.rdp-caption_label {
  z-index: 1;

  position: relative;
  display: inline-flex;
  align-items: center;

  white-space: nowrap;
  border: 0;
}

.rdp-dropdown:focus-visible ~ .rdp-caption_label {
  outline: 5px auto Highlight;
  /* biome-ignore lint/suspicious/noDuplicateProperties: backward compatibility */
  outline: 5px auto -webkit-focus-ring-color;
}

.rdp-button_next,
.rdp-button_previous {
  border: none;
  background: none;
  padding: 0;
  margin: 0;
  cursor: pointer;
  font: inherit;
  color: inherit;
  -moz-appearance: none;
  -webkit-appearance: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  position: relative;
  appearance: none;

  width: var(--rdp-nav_button-width);
  height: var(--rdp-nav_button-height);
}

.rdp-button_next:disabled,
.rdp-button_next[aria-disabled="true"],
.rdp-button_previous:disabled,
.rdp-button_previous[aria-disabled="true"] {
  cursor: revert;

  opacity: var(--rdp-nav_button-disabled-opacity);
}

.rdp-chevron {
  display: inline-block;
  fill: var(--rdp-accent-color);
}

.rdp-root[dir="rtl"] .rdp-nav .rdp-chevron {
  transform: rotate(180deg);
  transform-origin: 50%;
}

.rdp-dropdowns {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: var(--rdp-dropdown-gap);
}
.rdp-dropdown {
  z-index: 2;

  /* Reset */
  opacity: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  position: absolute;
  inset-block-start: 0;
  inset-block-end: 0;
  inset-inline-start: 0;
  width: 100%;
  margin: 0;
  padding: 0;
  cursor: inherit;
  border: none;
  line-height: inherit;
}

.rdp-dropdown_root {
  position: relative;
  display: inline-flex;
  align-items: center;
}

.rdp-dropdown_root[data-disabled="true"] .rdp-chevron {
  opacity: var(--rdp-disabled-opacity);
}

.rdp-month_caption {
  display: flex;
  align-content: center;
  height: var(--rdp-nav-height);
  font-weight: bold;
  font-size: large;
}

.rdp-root[data-nav-layout="around"] .rdp-month,
.rdp-root[data-nav-layout="after"] .rdp-month {
  position: relative;
}

.rdp-root[data-nav-layout="around"] .rdp-month_caption {
  justify-content: center;
  margin-inline-start: var(--rdp-nav_button-width);
  margin-inline-end: var(--rdp-nav_button-width);
  position: relative;
}

.rdp-root[data-nav-layout="around"] .rdp-button_previous {
  position: absolute;
  inset-inline-start: 0;
  top: 0;
  height: var(--rdp-nav-height);
  display: inline-flex;
}

.rdp-root[data-nav-layout="around"] .rdp-button_next {
  position: absolute;
  inset-inline-end: 0;
  top: 0;
  height: var(--rdp-nav-height);
  display: inline-flex;
  justify-content: center;
}

.rdp-months {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  gap: var(--rdp-months-gap);
  max-width: -moz-fit-content;
  max-width: fit-content;
}

.rdp-month_grid {
  border-collapse: collapse;
}

.rdp-nav {
  position: absolute;
  inset-block-start: 0;
  inset-inline-end: 0;

  display: flex;
  align-items: center;

  height: var(--rdp-nav-height);
}

.rdp-weekday {
  opacity: var(--rdp-weekday-opacity);
  padding: var(--rdp-weekday-padding);
  font-weight: 500;
  font-size: smaller;
  text-align: var(--rdp-weekday-text-align);
  text-transform: var(--rdp-weekday-text-transform);
}

.rdp-week_number {
  opacity: var(--rdp-week_number-opacity);
  font-weight: 400;
  font-size: small;
  height: var(--rdp-week_number-height);
  width: var(--rdp-week_number-width);
  border: var(--rdp-week_number-border);
  border-radius: var(--rdp-week_number-border-radius);
  text-align: var(--rdp-weeknumber-text-align);
}

/* DAY MODIFIERS */
.rdp-today:not(.rdp-outside) {
  color: var(--rdp-today-color);
}

.rdp-selected {
  font-weight: bold;
  font-size: large;
}

.rdp-selected .rdp-day_button {
  border: var(--rdp-selected-border);
}

.rdp-outside {
  opacity: var(--rdp-outside-opacity);
}

.rdp-disabled:not(.rdp-selected) {
  opacity: var(--rdp-disabled-opacity);
}

.rdp-hidden {
  visibility: hidden;
  color: var(--rdp-range_start-color);
}

.rdp-range_start {
  background: var(--rdp-range_start-background);
}

.rdp-range_start .rdp-day_button {
  background-color: var(--rdp-range_start-date-background-color);
  color: var(--rdp-range_start-color);
}

.rdp-range_middle {
  background-color: var(--rdp-range_middle-background-color);
}

.rdp-range_middle .rdp-day_button {
  border: unset;
  border-radius: unset;
  color: var(--rdp-range_middle-color);
}

.rdp-range_end {
  background: var(--rdp-range_end-background);
  color: var(--rdp-range_end-color);
}

.rdp-range_end .rdp-day_button {
  color: var(--rdp-range_start-color);
  background-color: var(--rdp-range_end-date-background-color);
}

.rdp-range_start.rdp-range_end {
  background: revert;
}

.rdp-focusable {
  cursor: pointer;
}

@keyframes rdp-slide_in_left {
  0% {
    transform: translateX(-100%);
  }
  100% {
    transform: translateX(0);
  }
}

@keyframes rdp-slide_in_right {
  0% {
    transform: translateX(100%);
  }
  100% {
    transform: translateX(0);
  }
}

@keyframes rdp-slide_out_left {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-100%);
  }
}

@keyframes rdp-slide_out_right {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(100%);
  }
}

.rdp-weeks_before_enter {
  animation: rdp-slide_in_left var(--rdp-animation_duration)
    var(--rdp-animation_timing) forwards;
}

.rdp-weeks_before_exit {
  animation: rdp-slide_out_left var(--rdp-animation_duration)
    var(--rdp-animation_timing) forwards;
}

.rdp-weeks_after_enter {
  animation: rdp-slide_in_right var(--rdp-animation_duration)
    var(--rdp-animation_timing) forwards;
}

.rdp-weeks_after_exit {
  animation: rdp-slide_out_right var(--rdp-animation_duration)
    var(--rdp-animation_timing) forwards;
}

.rdp-root[dir="rtl"] .rdp-weeks_after_enter {
  animation: rdp-slide_in_left var(--rdp-animation_duration)
    var(--rdp-animation_timing) forwards;
}

.rdp-root[dir="rtl"] .rdp-weeks_before_exit {
  animation: rdp-slide_out_right var(--rdp-animation_duration)
    var(--rdp-animation_timing) forwards;
}

.rdp-root[dir="rtl"] .rdp-weeks_before_enter {
  animation: rdp-slide_in_right var(--rdp-animation_duration)
    var(--rdp-animation_timing) forwards;
}

.rdp-root[dir="rtl"] .rdp-weeks_after_exit {
  animation: rdp-slide_out_left var(--rdp-animation_duration)
    var(--rdp-animation_timing) forwards;
}

@keyframes rdp-fade_in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@keyframes rdp-fade_out {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}

.rdp-caption_after_enter {
  animation: rdp-fade_in var(--rdp-animation_duration)
    var(--rdp-animation_timing) forwards;
}

.rdp-caption_after_exit {
  animation: rdp-fade_out var(--rdp-animation_duration)
    var(--rdp-animation_timing) forwards;
}

.rdp-caption_before_enter {
  animation: rdp-fade_in var(--rdp-animation_duration)
    var(--rdp-animation_timing) forwards;
}

.rdp-caption_before_exit {
  animation: rdp-fade_out var(--rdp-animation_duration)
    var(--rdp-animation_timing) forwards;
}
@keyframes react-loading-skeleton {
  100% {
    transform: translateX(100%);
  }
}

.react-loading-skeleton {
  --base-color: #ebebeb;
  --highlight-color: #f5f5f5;
  --animation-duration: 1.5s;
  --animation-direction: normal;
  --pseudo-element-display: block; /* Enable animation */

  background-color: var(--base-color);

  width: 100%;
  border-radius: 0.25rem;
  display: inline-flex;
  line-height: 1;

  position: relative;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  overflow: hidden;
}

.react-loading-skeleton::after {
  content: ' ';
  display: var(--pseudo-element-display);
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 100%;
  background-repeat: no-repeat;
  background-image: var(
    --custom-highlight-background,
    linear-gradient(
      90deg,
      var(--base-color) 0%,
      var(--highlight-color) 50%,
      var(--base-color) 100%
    )
  );
  transform: translateX(-100%);

  animation-name: react-loading-skeleton;
  animation-direction: var(--animation-direction);
  animation-duration: var(--animation-duration);
  animation-timing-function: ease-in-out;
  animation-iteration-count: infinite;
}

@media (prefers-reduced-motion) {
  .react-loading-skeleton {
    --pseudo-element-display: none; /* Disable animation */
  }
}

@media (prefers-reduced-motion: reduce) {
  .str-chat,
  .str-chat *,
  .str-chat *::before,
  .str-chat *::after {
    animation-delay: 0ms !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-delay: 0ms !important;
    transition-duration: 0.01ms !important;
  }
  .str-chat__attachment-selector__menu-button__icon {
    transform: none;
  }
}
.str-chat__prepare-rotate45 {
  transition: transform 200ms ease;
  transform: rotate(0);
  transform-origin: center center;
}

.str-chat__rotate45 {
  transform: rotate(45deg);
}

/**
 * Do not edit directly, this file was auto-generated.
 */
/**
 * Do not edit directly, this file was auto-generated.
 */
.str-chat,
.str-chat__theme-dark .str-chat__theme-inverse {
  --str-chat__base-transparent-0: rgba(255, 255, 255, 0);
  --str-chat__base-transparent-white-10: rgba(255, 255, 255, 0.1);
  --str-chat__base-transparent-white-20: rgba(255, 255, 255, 0.2);
  --str-chat__base-transparent-white-30: rgba(255, 255, 255, 0.3);
  --str-chat__base-transparent-white-70: rgba(255, 255, 255, 0.7);
  --str-chat__base-transparent-black-5: rgba(
    0,
    0,
    0,
    0.05
  ); /** Used for bg in closeButton */
  --str-chat__base-transparent-black-10: rgba(
    0,
    0,
    0,
    0.1
  ); /** Used for bg in closeButton */
  --str-chat__base-transparent-black-70: rgba(
    0,
    0,
    0,
    0.7
  ); /** Used for bg in closeButton */
  --str-chat__base-black: #000000;
  --str-chat__base-white: #ffffff;
  --str-chat__slate-50: #f6f8fa;
  --str-chat__slate-100: #ebeef1;
  --str-chat__slate-150: #d5dbe1;
  --str-chat__slate-200: #c0c8d2;
  --str-chat__slate-300: #a3acba;
  --str-chat__slate-400: #87909f;
  --str-chat__slate-500: #687385;
  --str-chat__slate-600: #545969;
  --str-chat__slate-700: #414552;
  --str-chat__slate-800: #30313d;
  --str-chat__slate-900: #1a1b25;
  --str-chat__neutral-50: #f8f8f8;
  --str-chat__neutral-100: #efefef;
  --str-chat__neutral-150: #d8d8d8;
  --str-chat__neutral-200: #c4c4c4;
  --str-chat__neutral-300: #ababab;
  --str-chat__neutral-400: #8f8f8f;
  --str-chat__neutral-500: #6a6a6a;
  --str-chat__neutral-600: #565656;
  --str-chat__neutral-700: #464646;
  --str-chat__neutral-800: #323232;
  --str-chat__neutral-900: #1c1c1c;
  --str-chat__blue-50: #f3f7ff;
  --str-chat__blue-100: #e3edff;
  --str-chat__blue-150: #c3d9ff;
  --str-chat__blue-200: #a5c5ff;
  --str-chat__blue-300: #78a8ff;
  --str-chat__blue-400: #4586ff;
  --str-chat__blue-500: #005fff;
  --str-chat__blue-600: #1b53bd;
  --str-chat__blue-700: #19418d;
  --str-chat__blue-800: #142f63;
  --str-chat__blue-900: #091a3b;
  --str-chat__cyan-50: #f1fbfc;
  --str-chat__cyan-100: #d1f3f6;
  --str-chat__cyan-150: #a9e4ea;
  --str-chat__cyan-200: #72d7e0;
  --str-chat__cyan-300: #45bcc7;
  --str-chat__cyan-400: #1e9ea9;
  --str-chat__cyan-500: #248088;
  --str-chat__cyan-600: #006970;
  --str-chat__cyan-700: #065056;
  --str-chat__cyan-800: #003a3f;
  --str-chat__cyan-900: #002124;
  --str-chat__green-50: #e1ffee;
  --str-chat__green-100: #bdfcdb;
  --str-chat__green-150: #8febbd;
  --str-chat__green-200: #59dea3;
  --str-chat__green-300: #00c384;
  --str-chat__green-400: #00a46e;
  --str-chat__green-500: #277e59;
  --str-chat__green-600: #006643;
  --str-chat__green-700: #004f33;
  --str-chat__green-800: #003a25;
  --str-chat__green-900: #002213;
  --str-chat__purple-50: #f7f8ff;
  --str-chat__purple-100: #ecedff;
  --str-chat__purple-150: #d4d7ff;
  --str-chat__purple-200: #c1c5ff;
  --str-chat__purple-300: #a1a3ff;
  --str-chat__purple-400: #8482fc;
  --str-chat__purple-500: #644af9;
  --str-chat__purple-600: #553bd8;
  --str-chat__purple-700: #4032a1;
  --str-chat__purple-800: #2e2576;
  --str-chat__purple-900: #1a114d;
  --str-chat__yellow-50: #fef9da;
  --str-chat__yellow-100: #fcedb9;
  --str-chat__yellow-150: #fcd579;
  --str-chat__yellow-200: #f6bf57;
  --str-chat__yellow-300: #fa922b;
  --str-chat__yellow-400: #f26d10;
  --str-chat__yellow-500: #c84801;
  --str-chat__yellow-600: #a82c00;
  --str-chat__yellow-700: #842106;
  --str-chat__yellow-800: #5f1a05;
  --str-chat__yellow-900: #331302;
  --str-chat__red-50: #fff5fa;
  --str-chat__red-100: #ffe7f2;
  --str-chat__red-150: #ffccdf;
  --str-chat__red-200: #ffb1cd;
  --str-chat__red-300: #fe87a1;
  --str-chat__red-400: #fc526a;
  --str-chat__red-500: #d90d10;
  --str-chat__red-600: #b3093c;
  --str-chat__red-700: #890d37;
  --str-chat__red-800: #68052b;
  --str-chat__red-900: #3e021a;
  --str-chat__violet-50: #fef4ff;
  --str-chat__violet-100: #fbe8fe;
  --str-chat__violet-150: #f7cffc;
  --str-chat__violet-200: #eeb5f4;
  --str-chat__violet-300: #e68bec;
  --str-chat__violet-400: #d75fe7;
  --str-chat__violet-500: #b716ca;
  --str-chat__violet-600: #9d00ae;
  --str-chat__violet-700: #7c0089;
  --str-chat__violet-800: #5c0066;
  --str-chat__violet-900: #36003d;
  --str-chat__lime-50: #f1fde8;
  --str-chat__lime-100: #d4ffb0;
  --str-chat__lime-150: #b1ee79;
  --str-chat__lime-200: #9cda5d;
  --str-chat__lime-300: #78c100;
  --str-chat__lime-400: #639e11;
  --str-chat__lime-500: #4b7a0a;
  --str-chat__lime-600: #3e6213;
  --str-chat__lime-700: #355315;
  --str-chat__lime-800: #203a00;
  --str-chat__lime-900: #112100;
  --str-chat__size-2: 2px;
  --str-chat__size-4: 4px;
  --str-chat__size-6: 6px;
  --str-chat__size-8: 8px;
  --str-chat__size-12: 12px;
  --str-chat__size-16: 16px;
  --str-chat__size-20: 20px;
  --str-chat__size-24: 24px;
  --str-chat__size-32: 32px;
  --str-chat__size-40: 40px;
  --str-chat__size-48: 48px;
  --str-chat__size-64: 64px;
  --str-chat__size-28: 28px;
  --str-chat__size-80: 80px;
  --str-chat__size-128: 128px;
  --str-chat__size-240: 240px;
  --str-chat__size-320: 320px;
  --str-chat__size-480: 480px;
  --str-chat__size-560: 560px;
  --str-chat__size-640: 640px;
  --str-chat__size-760: 760px;
  --str-chat__size-144: 144px;
  --str-chat__size-208: 208px;
  --str-chat__size-56: 56px;
  --str-chat__radius-0: 0px;
  --str-chat__radius-2: 2px;
  --str-chat__radius-4: 4px;
  --str-chat__radius-6: 6px;
  --str-chat__radius-8: 8px;
  --str-chat__radius-12: 12px;
  --str-chat__radius-16: 16px;
  --str-chat__radius-20: 20px;
  --str-chat__radius-24: 24px;
  --str-chat__radius-32: 32px;
  --str-chat__radius-full: 9999px;
  --str-chat__space-0: 0px;
  --str-chat__space-2: 2px;
  --str-chat__space-4: 4px;
  --str-chat__space-8: 8px;
  --str-chat__space-12: 12px;
  --str-chat__space-16: 16px;
  --str-chat__space-20: 20px;
  --str-chat__space-24: 24px;
  --str-chat__space-32: 32px;
  --str-chat__space-40: 40px;
  --str-chat__space-48: 48px;
  --str-chat__space-64: 64px;
  --str-chat__space-80: 80px;
  --str-chat__w100: 1px;
  --str-chat__w150: 1.5px;
  --str-chat__w200: 2px;
  --str-chat__w300: 3px;
  --str-chat__w400: 4px;
  --str-chat__w120: 1.2px;
  --str-chat__font-family-geist: 'Geist'; /** Primary sans-serif font for web typography. Use Geist as the main typeface. Recommended fallbacks: system-ui, -apple-system, BlinkMacSystemFont, “Segoe UI”, Roboto, sans-serif. */
  --str-chat__font-family-geist-mono: 'Geist Mono'; /** Primary monospace font for web typography. Use Geist Mono for code, timestamps, and technical text. Recommended fallbacks: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace. */
  --str-chat__font-family-sf-pro: 'SF Pro'; /** Primary sans-serif font for iOS typography. Use SF Pro as the main typeface. Recommended fallbacks: -apple-system, BlinkMacSystemFont, “Segoe UI”, Roboto, sans-serif. */
  --str-chat__font-family-sf-mono: 'SF Mono'; /** Primary monospace font for iOS typography. Use SF Mono for code, timestamps, and technical text. Recommended fallbacks: SFMono-Regular, Menlo, Monaco, Consolas, monospace. */
  --str-chat__font-family-roboto: 'Roboto'; /** Primary sans-serif font for Android typography. Use Roboto as the main typeface, aligned with Material and system defaults. Recommended fallbacks: Roboto, “Noto Sans”, system-ui, sans-serif. */
  --str-chat__font-family-roboto-mono: 'Roboto Mono'; /** Primary monospace font for Android typography. Use Roboto Mono for code, timestamps, and technical text. Recommended fallbacks: Roboto Mono, “Noto Sans Mono”, monospace. */
  --str-chat__font-weight-w400: 400;
  --str-chat__font-weight-w500: 500;
  --str-chat__font-weight-w600: 600;
  --str-chat__font-weight-w700: 700;
  --str-chat__font-size-size-8: 8px;
  --str-chat__font-size-size-10: 10px;
  --str-chat__font-size-size-11: 11px;
  --str-chat__font-size-size-12: 12px;
  --str-chat__font-size-size-13: 13px;
  --str-chat__font-size-size-14: 14px;
  --str-chat__font-size-size-16: 16px;
  --str-chat__font-size-size-15: 15px;
  --str-chat__font-size-size-17: 17px;
  --str-chat__font-size-size-18: 18px;
  --str-chat__font-size-size-20: 20px;
  --str-chat__font-size-size-22: 22px;
  --str-chat__font-size-size-24: 24px;
  --str-chat__font-size-size-28: 28px;
  --str-chat__font-size-size-32: 32px;
  --str-chat__font-size-size-40: 40px;
  --str-chat__font-size-size-48: 48px;
  --str-chat__font-size-size-64: 64px;
  --str-chat__line-height-line-height-8: 8px;
  --str-chat__line-height-line-height-10: 10px;
  --str-chat__line-height-line-height-12: 12px;
  --str-chat__line-height-line-height-13: 13px;
  --str-chat__line-height-line-height-14: 14px;
  --str-chat__line-height-line-height-15: 15px;
  --str-chat__line-height-line-height-16: 16px;
  --str-chat__line-height-line-height-17: 17px;
  --str-chat__line-height-line-height-18: 18px;
  --str-chat__line-height-line-height-20: 20px;
  --str-chat__line-height-line-height-24: 24px;
  --str-chat__line-height-line-height-28: 28px;
  --str-chat__line-height-line-height-32: 32px;
  --str-chat__line-height-line-height-40: 40px;
  --str-chat__line-height-line-height-48: 48px;
  --str-chat__typography-font-weight-regular: 400;
  --str-chat__typography-font-weight-medium: 500;
  --str-chat__typography-font-weight-semi-bold: 600;
  --str-chat__typography-font-weight-bold: 700;
  --str-chat__light-elevation-1:
    0px 0px 0px 1px rgba(0, 0, 0, 0.05), 0px 1px 2px 0px rgba(0, 0, 0, 0.1),
    0px 4px 8px 0px rgba(0, 0, 0, 0.06); /** Low elevation level for subtle separation. */
  --str-chat__light-elevation-2:
    0px 0px 0px 1px rgba(0, 0, 0, 0.05), 0px 2px 4px 0px rgba(0, 0, 0, 0.12),
    0px 6px 16px 0px rgba(0, 0, 0, 0.06);
  --str-chat__light-elevation-3:
    0px 0px 0px 1px rgba(0, 0, 0, 0.05), 0px 4px 8px 0px rgba(0, 0, 0, 0.14),
    0px 12px 24px 0px rgba(0, 0, 0, 0.1);
  --str-chat__light-elevation-4:
    0px 0px 0px 1px rgba(0, 0, 0, 0.05), 0px 6px 12px 0px rgba(0, 0, 0, 0.16),
    0px 20px 32px 0px rgba(0, 0, 0, 0.12);
  --str-chat__dark-elevation-1:
    0px 0px 0px 1px rgba(255, 255, 255, 0.15), 0px 1px 2px 0px rgba(0, 0, 0, 0.2),
    0px 4px 8px 0px rgba(0, 0, 0, 0.1);
  --str-chat__dark-elevation-2:
    0px 0px 0px 1px rgba(255, 255, 255, 0.15), 0px 2px 4px 0px rgba(0, 0, 0, 0.22),
    0px 6px 16px 0px rgba(0, 0, 0, 0.12);
  --str-chat__dark-elevation-3:
    0px 0px 0px 1px rgba(255, 255, 255, 0.15), 0px 4px 8px 0px rgba(0, 0, 0, 0.24),
    0px 12px 24px 0px rgba(0, 0, 0, 0.14);
  --str-chat__dark-elevation-4:
    0px 0px 0px 1px rgba(255, 255, 255, 0.15), 0px 6px 12px 0px rgba(0, 0, 0, 0.28),
    0px 20px 32px 0px rgba(0, 0, 0, 0.16);
  --str-chat__button-padding-y-lg: 14px;
  --str-chat__button-padding-y-md: 10px;
  --str-chat__button-padding-y-sm: 6px;
  --str-chat__button-padding-y-xs: 4px;
  --str-chat__button-padding-x-icon-only-lg: 14px;
  --str-chat__button-padding-x-icon-only-md: 10px;
  --str-chat__button-padding-x-icon-only-sm: 6px;
  --str-chat__button-padding-x-icon-only-xs: 4px;
  --str-chat__button-padding-x-with-label-lg: 16px;
  --str-chat__button-padding-x-with-label-md: 16px;
  --str-chat__button-padding-x-with-label-sm: 16px;
  --str-chat__button-padding-x-with-label-xs: 12px;
  --str-chat__background-core-overlay-light: rgba(
    255,
    255,
    255,
    0.75
  ); /** A light semi-transparent layer. Used to lighten surfaces and for hover states on dark backgrounds. */
  --str-chat__background-core-overlay-dark: rgba(
    26,
    27,
    37,
    0.25
  ); /** A dark semi-transparent layer. Used for image overlays. */
  --str-chat__background-core-scrim: rgba(
    26,
    27,
    37,
    0.5
  ); /** A heavy semi-transparent layer. Used behind sheets, drawers, and modals to separate them from content. */
  --str-chat__background-utility-hover: rgba(
    26,
    27,
    37,
    0.1
  ); /** A semi-transparent overlay applied on pointer hover. Sits on top of any surface without replacing it. */
  --str-chat__background-utility-pressed: rgba(
    26,
    27,
    37,
    0.15
  ); /** A slightly stronger overlay applied during an active press or tap. Provides tactile feedback on interactive elements. */
  --str-chat__background-utility-selected: rgba(
    26,
    27,
    37,
    0.2
  ); /** Indicates an active or selected state. Used for selected messages, active list items, and toggled controls. */
  --str-chat__border-utility-hover: rgba(
    26,
    27,
    37,
    0.1
  ); /** Applied on pointer hover over bordered interactive elements. */
  --str-chat__border-utility-pressed: rgba(
    26,
    27,
    37,
    0.2
  ); /** Applied during an active press on bordered interactive elements. */
  --str-chat__border-utility-selected: rgba(
    26,
    27,
    37,
    0.15
  ); /** Border for selected or active items. Used for highlighted list items and active controls. */
  --str-chat__border-core-opacity-subtle: rgba(
    26,
    27,
    37,
    0.1
  ); /** A very light transparent border. Used as a frame treatment on images and media attachments. */
  --str-chat__border-core-opacity-strong: rgba(
    26,
    27,
    37,
    0.25
  ); /** A stronger transparent border for elements on colored or dark backgrounds. Used for waveform bars and similar treatments. */
  --str-chat__system-bg-blur: rgba(255, 255, 255, 0.01);
  --str-chat__system-scrollbar: rgba(0, 0, 0, 0.5);
  --str-chat__badge-bg-overlay: rgba(0, 0, 0, 0.75);
  --str-chat__control-play-button-bg: rgba(0, 0, 0, 0.75);
  --str-chat__typography-font-family-sans: var(--str-chat__font-family-geist);
  --str-chat__typography-font-family-mono: var(--str-chat__font-family-geist-mono);
  --str-chat__typography-font-size-xxs: var(
    --str-chat__font-size-size-10
  ); /** Micro text such as timestamps or subtle metadata. */
  --str-chat__typography-font-size-xs: var(
    --str-chat__font-size-size-12
  ); /** Compact secondary text, small UI labels. */
  --str-chat__typography-font-size-sm: var(
    --str-chat__font-size-size-14
  ); /** Default mobile body size, small controls. */
  --str-chat__typography-font-size-md: var(
    --str-chat__font-size-size-16
  ); /** Default desktop body size, main text. */
  --str-chat__typography-font-size-lg: var(
    --str-chat__font-size-size-18
  ); /** Medium emphasis, section labels. */
  --str-chat__typography-font-size-xl: var(
    --str-chat__font-size-size-20
  ); /** Small headings. */
  --str-chat__typography-font-size-2xl: var(
    --str-chat__font-size-size-24
  ); /** Section titles, important headings. */
  --str-chat__typography-font-size-micro: var(
    --str-chat__font-size-size-8
  ); /** Micro text such as timestamps or subtle metadata. */
  --str-chat__typography-line-height-tight: var(
    --str-chat__line-height-line-height-16
  ); /** Compact text, headers, UI labels. */
  --str-chat__typography-line-height-normal: var(
    --str-chat__line-height-line-height-20
  ); /** Default reading line-height for sizes 14–16px. */
  --str-chat__typography-line-height-relaxed: var(
    --str-chat__line-height-line-height-24
  ); /** For larger text sizes or multiline descriptions. */
  --str-chat__radius-none: var(--str-chat__radius-0);
  --str-chat__radius-xxs: var(--str-chat__radius-2);
  --str-chat__radius-xs: var(--str-chat__radius-4);
  --str-chat__radius-sm: var(--str-chat__radius-6);
  --str-chat__radius-md: var(--str-chat__radius-8);
  --str-chat__radius-lg: var(--str-chat__radius-12);
  --str-chat__radius-xl: var(--str-chat__radius-16);
  --str-chat__radius-2xl: var(--str-chat__radius-20);
  --str-chat__radius-max: var(--str-chat__radius-full);
  --str-chat__radius-3xl: var(--str-chat__radius-24);
  --str-chat__radius-4xl: var(--str-chat__radius-32);
  --str-chat__spacing-none: var(
    --str-chat__space-0
  ); /** No spacing. Used for tight component joins. */
  --str-chat__spacing-xxs: var(
    --str-chat__space-4
  ); /** Base unit. Minimal padding, tight gaps. */
  --str-chat__spacing-xs: var(
    --str-chat__space-8
  ); /** Small padding and default vertical gaps. */
  --str-chat__spacing-sm: var(
    --str-chat__space-12
  ); /** Common internal spacing in inputs and buttons. */
  --str-chat__spacing-md: var(
    --str-chat__space-16
  ); /** Default large padding for sections and cards. */
  --str-chat__spacing-xl: var(
    --str-chat__space-24
  ); /** Comfortable spacing for chat bubbles and list items. */
  --str-chat__spacing-2xl: var(
    --str-chat__space-32
  ); /** Larger spacing for panels, modals, and gutters. */
  --str-chat__spacing-3xl: var(
    --str-chat__space-40
  ); /** Used for wide layout spacing and breathing room. */
  --str-chat__spacing-lg: var(
    --str-chat__space-20
  ); /** Medium spacing for grouping elements and section breaks. */
  --str-chat__spacing-xxxs: var(--str-chat__space-2);
  --str-chat__device-safe-area-bottom: var(--str-chat__space-0);
  --str-chat__device-safe-area-top: var(--str-chat__space-0);
  --str-chat__button-radius-lg: var(--str-chat__radius-full);
  --str-chat__button-radius-md: var(--str-chat__radius-full);
  --str-chat__button-radius-sm: var(--str-chat__radius-full);
  --str-chat__button-radius-full: var(--str-chat__radius-full);
  --str-chat__button-visual-height-sm: var(--str-chat__size-32);
  --str-chat__button-visual-height-md: var(--str-chat__size-40);
  --str-chat__button-visual-height-lg: var(--str-chat__size-48);
  --str-chat__button-visual-height-xs: var(--str-chat__size-24);
  /**
   * Minimum interactive hit target size.
   * 
   * iOS / Android: enforce minimum touch target.
   * Web: do not apply a min-width or min-height; size to content.
   * 
   * Note: Web uses a placeholder value in Figma due to variable mode constraints.
   */
  --str-chat__button-hit-target-min-height: var(--str-chat__size-48);
  /**
   * Minimum interactive hit target size.
   * 
   * iOS / Android: enforce minimum touch target.
   * Web: do not apply a min-width or min-height; size to content.
   * 
   * Note: Web uses a placeholder value in Figma due to variable mode constraints.
   */
  --str-chat__button-hit-target-min-width: var(--str-chat__size-48);
  --str-chat__button-primary-bg-liquid-glass: var(--str-chat__base-transparent-0);
  --str-chat__icon-size-xs: var(--str-chat__size-12);
  --str-chat__icon-size-sm: var(--str-chat__size-16);
  --str-chat__icon-size-md: var(--str-chat__size-20);
  --str-chat__icon-size-lg: var(--str-chat__size-32);
  --str-chat__icon-stroke-subtle: var(--str-chat__w120);
  --str-chat__icon-stroke-default: var(--str-chat__w150);
  --str-chat__icon-stroke-emphasis: var(--str-chat__w200);
  --str-chat__emoji-md: var(--str-chat__font-size-size-24);
  --str-chat__emoji-lg: var(--str-chat__font-size-size-32);
  --str-chat__emoji-xl: var(--str-chat__font-size-size-48);
  --str-chat__emoji-2xl: var(--str-chat__font-size-size-64);
  --str-chat__background-core-highlight: var(
    --str-chat__yellow-50
  ); /** A tint for drawing attention to content. Used for highlights and pinned messages. */
  --str-chat__chat-waveform-bar: var(--str-chat__border-core-opacity-strong);
  --str-chat__control-checkbox-bg: var(--str-chat__base-transparent-0);
  --str-chat__control-playback-thumb-border-default: var(
    --str-chat__border-core-opacity-strong
  );
  --str-chat__control-radio-button-bg: var(--str-chat__base-transparent-0);
  --str-chat__control-radio-check-bg: var(--str-chat__base-transparent-0);
  --str-chat__avatar-palette-bg-1: var(--str-chat__blue-150);
  --str-chat__avatar-palette-bg-2: var(--str-chat__cyan-150);
  --str-chat__avatar-palette-bg-3: var(--str-chat__green-150);
  --str-chat__avatar-palette-bg-4: var(--str-chat__purple-150);
  --str-chat__avatar-palette-bg-5: var(--str-chat__yellow-150);
  --str-chat__avatar-palette-text-1: var(--str-chat__blue-900);
  --str-chat__avatar-palette-text-2: var(--str-chat__cyan-900);
  --str-chat__avatar-palette-text-3: var(--str-chat__green-900);
  --str-chat__avatar-palette-text-4: var(--str-chat__purple-900);
  --str-chat__avatar-palette-text-5: var(--str-chat__yellow-900);
  --str-chat__accent-success: var(
    --str-chat__green-400
  ); /** Indicates a positive or completed state. Used for confirmations, sent indicators, and success feedback. */
  --str-chat__accent-warning: var(
    --str-chat__yellow-400
  ); /** Indicates a cautionary state that requires attention. Used for moderation flags and non-critical alerts. */
  --str-chat__accent-error: var(
    --str-chat__red-500
  ); /** Indicates a failure or destructive state. Used for failed messages, validation errors, and deletions. */
  --str-chat__brand-50: var(--str-chat__blue-50);
  --str-chat__brand-100: var(--str-chat__blue-100);
  --str-chat__brand-150: var(--str-chat__blue-150);
  --str-chat__brand-200: var(--str-chat__blue-200);
  --str-chat__brand-300: var(--str-chat__blue-300);
  --str-chat__brand-400: var(--str-chat__blue-400);
  --str-chat__brand-500: var(--str-chat__blue-500);
  --str-chat__brand-600: var(--str-chat__blue-600);
  --str-chat__brand-700: var(--str-chat__blue-700);
  --str-chat__brand-800: var(--str-chat__blue-800);
  --str-chat__brand-900: var(--str-chat__blue-900);
  --str-chat__skeleton-loading-base: var(
    --str-chat__base-transparent-0
  ); /** Base color for the default skeleton loading gradient. Used as the background tone for placeholder surfaces. */
  --str-chat__skeleton-loading-highlight: var(
    --str-chat__background-core-overlay-light
  ); /** Highlight color for the default skeleton loading gradient. Used for the moving shimmer to indicate loading activity. */
  --str-chat__chrome-0: var(--str-chat__base-white);
  --str-chat__chrome-50: var(--str-chat__slate-50);
  --str-chat__chrome-100: var(--str-chat__slate-100);
  --str-chat__chrome-150: var(--str-chat__slate-150);
  --str-chat__chrome-200: var(--str-chat__slate-200);
  --str-chat__chrome-300: var(--str-chat__slate-300);
  --str-chat__chrome-400: var(--str-chat__slate-400);
  --str-chat__chrome-500: var(--str-chat__slate-500);
  --str-chat__chrome-600: var(--str-chat__slate-600);
  --str-chat__chrome-700: var(--str-chat__slate-700);
  --str-chat__chrome-800: var(--str-chat__slate-800);
  --str-chat__chrome-900: var(--str-chat__slate-900);
  --str-chat__chrome-1000: var(--str-chat__base-black);
  --str-chat__device-radius: var(--str-chat__radius-md);
  --str-chat__message-bubble-radius-group-top: var(--str-chat__radius-2xl);
  --str-chat__message-bubble-radius-group-middle: var(--str-chat__radius-2xl);
  --str-chat__message-bubble-radius-group-bottom: var(--str-chat__radius-2xl);
  --str-chat__message-bubble-radius-tail: var(--str-chat__radius-none);
  --str-chat__message-bubble-radius-attachment: var(--str-chat__radius-lg);
  --str-chat__message-bubble-radius-attachment-inline: var(--str-chat__radius-md);
  --str-chat__composer-radius-fixed: var(--str-chat__radius-3xl);
  --str-chat__composer-radius-floating: var(--str-chat__radius-3xl);
  --str-chat__button-primary-border: var(--str-chat__brand-200);
  --str-chat__button-destructive-bg: var(--str-chat__accent-error);
  --str-chat__button-destructive-text: var(--str-chat__accent-error);
  --str-chat__button-destructive-border: var(--str-chat__accent-error);
  --str-chat__emoji-sm: var(--str-chat__typography-font-size-md);
  --str-chat__background-core-app: var(
    --str-chat__chrome-0
  ); /** The outermost application background. Sits behind all surfaces and is generally not overridden directly. */
  --str-chat__background-core-elevation-0: var(
    --str-chat__chrome-0
  ); /** The base layer. Always white, used as the reference point for the elevation scale. Steps above this gain depth in dark mode through progressively lighter backgrounds. */
  --str-chat__background-core-elevation-1: var(
    --str-chat__chrome-0
  ); /** Slightly raised surfaces. Used for content containers that sit directly on the base layer, such as the message list and channel list. */
  --str-chat__background-core-elevation-2: var(
    --str-chat__chrome-0
  ); /** Floating and modal surfaces. Used for popovers, dropdowns, dialogs, and any element that interrupts the content flow. */
  --str-chat__background-core-elevation-3: var(
    --str-chat__chrome-0
  ); /** Used for badge counts that float above other UI elements. */
  --str-chat__background-core-surface-default: var(
    --str-chat__chrome-100
  ); /** Background for sectioned content areas. Used for grouped containers, and distinct content regions. */
  --str-chat__background-core-surface-subtle: var(
    --str-chat__chrome-50
  ); /** A slightly receded background. Used for secondary containers or to create soft visual separation. */
  --str-chat__background-core-surface-card: var(
    --str-chat__chrome-50
  ); /** Background for contained, card-style elements. Matches the surface in light mode but lifts slightly in dark mode to maintain visual separation. */
  --str-chat__background-core-surface-strong: var(
    --str-chat__chrome-150
  ); /** A more prominent background. Used for elements that need to stand out from the main surface. */
  --str-chat__background-core-inverse: var(
    --str-chat__chrome-1000
  ); /** The opposite of the primary surface. Used for tooltips, snackbars, and high-contrast floating elements. */
  --str-chat__background-core-on-accent: var(
    --str-chat__chrome-0
  ); /** Background for elements placed on an accent-colored surface. Ensures legibility against brand colors. */
  --str-chat__background-utility-disabled: var(
    --str-chat__chrome-100
  ); /** Background for non-interactive elements. Flattens the element visually to signal unavailability. */
  --str-chat__border-utility-focused: var(
    --str-chat__brand-150
  ); /** Focus ring for keyboard and accessibility navigation. Uses the brand color to signal input focus. */
  --str-chat__border-utility-success: var(
    --str-chat__accent-success
  ); /** Border for positive or confirmed states. Used on validated inputs and success indicators. */
  --str-chat__border-utility-warning: var(
    --str-chat__accent-warning
  ); /** Border for cautionary states. Used on inputs or elements requiring attention. */
  --str-chat__border-utility-error: var(
    --str-chat__accent-error
  ); /** Border for failure or invalid states. Used on failed inputs and destructive confirmations. */
  --str-chat__border-utility-disabled: var(
    --str-chat__chrome-100
  ); /** Border for non-interactive elements. Matches the disabled surface to visually flatten the element. */
  --str-chat__border-utility-disabled-on-surface: var(
    --str-chat__chrome-150
  ); /** Border for disabled elements on elevated surfaces. Stays visually distinct from the surface without drawing attention to a non-interactive element. */
  --str-chat__border-core-default: var(
    --str-chat__chrome-150
  ); /** Standard border for surfaces and containers. Used for input fields, cards, and dividers on neutral backgrounds. */
  --str-chat__border-core-subtle: var(
    --str-chat__chrome-100
  ); /** A lighter border for minimal separation. Used where a full-strength border would feel too heavy. */
  --str-chat__border-core-strong: var(
    --str-chat__chrome-300
  ); /** An emphatic border for elements that need clear definition. Used for focused containers and prominent dividers. */
  --str-chat__border-core-inverse: var(
    --str-chat__chrome-0
  ); /** Used on dark backgrounds. */
  --str-chat__border-core-on-accent: var(
    --str-chat__chrome-0
  ); /** Border on accent-colored surfaces. Stays white in both modes since the accent background doesn't invert. */
  --str-chat__border-core-on-surface: var(
    --str-chat__chrome-300
  ); /** Border for elements sitting on elevated surfaces. Uses a stronger value than default to maintain visible separation when the background is darker. */
  --str-chat__border-core-on-inverse: var(
    --str-chat__chrome-0
  ); /** Border on inverse-colored surfaces. Stays legible when the background flips between light and dark mode. */
  --str-chat__chat-bg-outgoing: var(
    --str-chat__brand-100
  ); /** Outgoing bubble background. */
  --str-chat__chat-bg-attachment-outgoing: var(
    --str-chat__brand-150
  ); /** Attachment card in outgoing bubble. */
  --str-chat__chat-text-outgoing: var(--str-chat__brand-900); /** Message body text. */
  --str-chat__chat-border-outgoing: var(--str-chat__brand-100);
  --str-chat__chat-border-on-chat-outgoing: var(--str-chat__brand-300);
  --str-chat__chat-reply-indicator-incoming: var(
    --str-chat__chrome-400
  ); /** Reply indicator shading for incoming. */
  --str-chat__chat-reply-indicator-outgoing: var(
    --str-chat__brand-400
  ); /** Reply indicator shading for outgoing. */
  --str-chat__chat-poll-progress-track-outgoing: var(--str-chat__brand-200);
  --str-chat__chat-thread-connector-outgoing: var(--str-chat__brand-150);
  --str-chat__presence-bg-online: var(
    --str-chat__accent-success
  ); /** The green online indicator. Uses success accent in normal themes. In high-contrast, color is dropped and replaced with strong black for maximum clarity. */
  --str-chat__system-text: var(--str-chat__chrome-1000);
  --str-chat__badge-bg-error: var(--str-chat__accent-error);
  --str-chat__badge-bg-inverse: var(--str-chat__chrome-1000);
  --str-chat__text-primary: var(
    --str-chat__chrome-900
  ); /** Main body text. Used for message content, titles, and any text that carries primary meaning. */
  --str-chat__text-secondary: var(
    --str-chat__chrome-700
  ); /** Supporting metadata text. Used for timestamps, subtitles, and secondary labels. */
  --str-chat__text-tertiary: var(
    --str-chat__chrome-500
  ); /** De-emphasized text. Used for hints, placeholders, and lowest-priority supporting information. */
  --str-chat__text-on-inverse: var(
    --str-chat__chrome-0
  ); /** Text on inverse-colored surfaces. Flips between light and dark to maintain legibility when the background inverts. */
  --str-chat__text-on-accent: var(
    --str-chat__chrome-0
  ); /** Text on accent-colored surfaces. Stays white in both light and dark mode since the accent background doesn't invert. */
  --str-chat__text-disabled: var(
    --str-chat__chrome-300
  ); /** Text for non-interactive or unavailable states. Communicates that an element can't be interacted with. */
  --str-chat__text-link: var(
    --str-chat__brand-500
  ); /** Hyperlinks and inline actions. Uses the brand color to signal interactivity within text content. */
  --str-chat__avatar-bg-default: var(--str-chat__avatar-palette-bg-1);
  --str-chat__avatar-bg-placeholder: var(--str-chat__chrome-150);
  --str-chat__avatar-text-default: var(--str-chat__avatar-palette-text-1);
  --str-chat__avatar-text-placeholder: var(--str-chat__chrome-500);
  --str-chat__avatar-presence-bg-online: var(
    --str-chat__accent-success
  ); /** The green online indicator. Uses success accent in normal themes. In high-contrast, color is dropped and replaced with strong black for maximum clarity. */
  --str-chat__accent-primary: var(
    --str-chat__brand-500
  ); /** The main brand color. Used for interactive elements, buttons, links, and primary actions. Override this to apply your brand color across the SDK. */
  --str-chat__accent-neutral: var(
    --str-chat__chrome-500
  ); /** A mid-tone gray for de-emphasized UI elements. */
  --str-chat__button-primary-bg: var(--str-chat__accent-primary);
  --str-chat__button-primary-text: var(--str-chat__accent-primary);
  --str-chat__button-primary-text-on-accent: var(--str-chat__text-on-accent);
  --str-chat__button-primary-text-on-dark: var(--str-chat__text-on-inverse);
  --str-chat__button-primary-border-on-dark: var(--str-chat__border-core-on-inverse);
  --str-chat__button-secondary-bg: var(--str-chat__background-core-surface-default);
  --str-chat__button-secondary-bg-liquid-glass: var(
    --str-chat__background-core-elevation-0
  );
  --str-chat__button-secondary-text: var(--str-chat__text-primary);
  --str-chat__button-secondary-text-on-accent: var(--str-chat__text-primary);
  --str-chat__button-secondary-text-on-dark: var(--str-chat__text-on-inverse);
  --str-chat__button-secondary-border: var(--str-chat__border-core-default);
  --str-chat__button-secondary-border-on-dark: var(--str-chat__border-core-on-inverse);
  --str-chat__button-destructive-bg-liquid-glass: var(
    --str-chat__background-core-elevation-0
  );
  --str-chat__button-destructive-text-on-accent: var(--str-chat__text-on-accent);
  --str-chat__button-destructive-text-on-dark: var(--str-chat__text-on-inverse);
  --str-chat__button-destructive-border-on-dark: var(--str-chat__text-on-inverse);
  --str-chat__border-utility-active: var(
    --str-chat__accent-primary
  ); /** Active input border. Used for focused text fields and selected form elements. */
  --str-chat__chat-bg-incoming: var(
    --str-chat__background-core-surface-default
  ); /** Incoming bubble background. */
  --str-chat__chat-bg-attachment-incoming: var(
    --str-chat__background-core-surface-strong
  ); /** Attachment card in incoming bubble. */
  --str-chat__chat-text-incoming: var(--str-chat__text-primary); /** Message body text. */
  --str-chat__chat-text-username: var(--str-chat__text-secondary); /** Username label. */
  --str-chat__chat-text-timestamp: var(--str-chat__text-tertiary); /** Time labels. */
  --str-chat__chat-text-read: var(--str-chat__accent-primary);
  --str-chat__chat-text-mention: var(--str-chat__text-link); /** Mention styling. */
  --str-chat__chat-text-link: var(
    --str-chat__text-link
  ); /** Links inside message bubbles. */
  --str-chat__chat-text-reaction: var(
    --str-chat__text-secondary
  ); /** Reaction count text. */
  --str-chat__chat-text-system: var(
    --str-chat__text-secondary
  ); /** System messages like date separators. */
  --str-chat__chat-border-incoming: var(--str-chat__border-core-subtle);
  --str-chat__chat-border-on-chat-incoming: var(--str-chat__border-core-strong);
  --str-chat__chat-waveform-bar-playing: var(--str-chat__accent-primary);
  --str-chat__chat-poll-progress-fill-outgoing: var(--str-chat__accent-primary);
  --str-chat__chat-thread-connector-incoming: var(--str-chat__border-core-default);
  --str-chat__input-text-default: var(
    --str-chat__text-primary
  ); /** Main text inside the chat input. */
  --str-chat__input-text-placeholder: var(
    --str-chat__text-tertiary
  ); /** Placeholder text for the input. Lower emphasis than main text. */
  --str-chat__input-text-disabled: var(
    --str-chat__text-disabled
  ); /** Placeholder text for the input. Lower emphasis than main text. */
  --str-chat__input-text-icon: var(
    --str-chat__text-tertiary
  ); /** Icons inside the input area (attach, emoji, camera, send when idle). Matches secondary text strength. */
  --str-chat__input-send-icon: var(
    --str-chat__accent-primary
  ); /** Default send icon color in the input. Uses the brand accent. */
  --str-chat__input-send-icon-disabled: var(
    --str-chat__text-disabled
  ); /** Send icon when disabled (e.g. empty input). */
  --str-chat__reaction-bg: var(--str-chat__background-core-elevation-3);
  --str-chat__reaction-border: var(--str-chat__border-core-default);
  --str-chat__reaction-text: var(--str-chat__text-primary);
  --str-chat__reaction-emoji: var(--str-chat__text-primary);
  --str-chat__presence-border: var(
    --str-chat__border-core-inverse
  ); /** The thin outline around the presence dot. Matches the local surface behind the avatar. In high-contrast it uses the base surface. */
  --str-chat__presence-bg-offline: var(
    --str-chat__accent-neutral
  ); /** The green online indicator. Uses success accent in normal themes. In high-contrast, color is dropped and replaced with strong black for maximum clarity. */
  --str-chat__system-caret: var(--str-chat__accent-primary);
  --str-chat__badge-bg-default: var(--str-chat__background-core-elevation-3);
  --str-chat__badge-bg-primary: var(--str-chat__accent-primary);
  --str-chat__badge-bg-neutral: var(--str-chat__accent-neutral);
  --str-chat__badge-text: var(--str-chat__text-primary);
  --str-chat__badge-text-on-inverse: var(--str-chat__text-on-inverse);
  --str-chat__badge-text-on-accent: var(--str-chat__text-on-accent);
  --str-chat__badge-border: var(--str-chat__border-core-on-inverse);
  --str-chat__control-remove-control-bg: var(--str-chat__background-core-inverse);
  --str-chat__control-remove-control-icon: var(--str-chat__text-on-inverse);
  --str-chat__control-remove-control-border: var(--str-chat__border-core-on-inverse);
  --str-chat__control-progress-bar-fill: var(--str-chat__accent-neutral);
  --str-chat__control-progress-bar-track: var(--str-chat__background-core-surface-strong);
  --str-chat__control-toggle-switch-bg: var(--str-chat__accent-neutral);
  --str-chat__control-toggle-switch-bg-selected: var(--str-chat__accent-primary);
  --str-chat__control-toggle-switch-bg-disabled: var(
    --str-chat__background-utility-disabled
  );
  --str-chat__control-toggle-switch-knob: var(--str-chat__background-core-on-accent);
  --str-chat__control-playback-toggle-text: var(--str-chat__text-primary);
  --str-chat__control-playback-toggle-border: var(--str-chat__border-core-default);
  --str-chat__control-checkbox-border: var(--str-chat__border-core-default);
  --str-chat__control-checkbox-bg-selected: var(--str-chat__accent-primary);
  --str-chat__control-checkbox-icon: var(--str-chat__text-on-accent);
  --str-chat__control-play-button-icon: var(--str-chat__text-on-accent);
  --str-chat__control-playback-thumb-bg-default: var(
    --str-chat__background-core-on-accent
  );
  --str-chat__control-playback-thumb-bg-active: var(--str-chat__accent-primary);
  --str-chat__control-playback-thumb-border-active: var(
    --str-chat__border-core-on-accent
  );
  --str-chat__control-radio-button-border: var(--str-chat__border-core-default);
  --str-chat__control-radio-button-bg-selected: var(--str-chat__accent-primary);
  --str-chat__control-radio-button-indicator: var(--str-chat__text-on-accent);
  --str-chat__control-radio-check-border: var(--str-chat__border-core-default);
  --str-chat__control-radio-check-bg-selected: var(--str-chat__accent-primary);
  --str-chat__control-radio-check-icon: var(--str-chat__text-on-accent);
  --str-chat__control-chip-border: var(--str-chat__border-core-default);
  --str-chat__control-chip-text: var(--str-chat__text-primary);
  --str-chat__avatar-presence-bg-offline: var(
    --str-chat__accent-neutral
  ); /** The green online indicator. Uses success accent in normal themes. In high-contrast, color is dropped and replaced with strong black for maximum clarity. */
  --str-chat__avatar-presence-border: var(
    --str-chat__border-core-on-inverse
  ); /** The thin outline around the presence dot. Matches the local surface behind the avatar. In high-contrast it uses the base surface. */
  --str-chat__chat-text-typing-indicator: var(
    --str-chat__chat-text-incoming
  ); /** Typing indicator chip. */
  --str-chat__chat-poll-progress-track-incoming: var(
    --str-chat__control-progress-bar-track
  );
  --str-chat__chat-poll-progress-fill-incoming: var(
    --str-chat__control-progress-bar-fill
  );
}

.str-chat__theme-dark,
.str-chat:not(.str-chat__theme-dark) *:not(.str-chat__theme-dark) .str-chat__theme-inverse {
  --str-chat__background-core-overlay-light: rgba(
    0,
    0,
    0,
    0.75
  ); /** A light semi-transparent layer. Used to lighten surfaces and for hover states on dark backgrounds. */
  --str-chat__background-core-overlay-dark: rgba(
    0,
    0,
    0,
    0.5
  ); /** A dark semi-transparent layer. Used for image overlays. */
  --str-chat__background-core-scrim: rgba(
    0,
    0,
    0,
    0.75
  ); /** A heavy semi-transparent layer. Used behind sheets, drawers, and modals to separate them from content. */
  --str-chat__background-utility-hover: rgba(
    255,
    255,
    255,
    0.15
  ); /** A semi-transparent overlay applied on pointer hover. Sits on top of any surface without replacing it. */
  --str-chat__background-utility-pressed: rgba(
    255,
    255,
    255,
    0.2
  ); /** A slightly stronger overlay applied during an active press or tap. Provides tactile feedback on interactive elements. */
  --str-chat__background-utility-selected: rgba(
    255,
    255,
    255,
    0.25
  ); /** Indicates an active or selected state. Used for selected messages, active list items, and toggled controls. */
  --str-chat__border-utility-selected: rgba(
    255,
    255,
    255,
    0.15
  ); /** Border for selected or active items. Used for highlighted list items and active controls. */
  --str-chat__border-utility-hover: rgba(
    255,
    255,
    255,
    0.1
  ); /** Applied on pointer hover over bordered interactive elements. */
  --str-chat__border-utility-pressed: rgba(
    255,
    255,
    255,
    0.2
  ); /** Applied during an active press on bordered interactive elements. */
  --str-chat__border-core-opacity-subtle: rgba(
    255,
    255,
    255,
    0.2
  ); /** A very light transparent border. Used as a frame treatment on images and media attachments. */
  --str-chat__border-core-opacity-strong: rgba(
    255,
    255,
    255,
    0.25
  ); /** A stronger transparent border for elements on colored or dark backgrounds. Used for waveform bars and similar treatments. */
  --str-chat__system-bg-blur: rgba(0, 0, 0, 0.01);
  --str-chat__system-scrollbar: rgba(255, 255, 255, 0.5);
  /**
   * Minimum interactive hit target size.
   * 
   * iOS / Android: enforce minimum touch target.
   * Web: do not apply a min-width or min-height; size to content.
   * 
   * Note: Web uses a placeholder value in Figma due to variable mode constraints.
   */
  /**
   * Minimum interactive hit target size.
   * 
   * iOS / Android: enforce minimum touch target.
   * Web: do not apply a min-width or min-height; size to content.
   * 
   * Note: Web uses a placeholder value in Figma due to variable mode constraints.
   */
  --str-chat__background-core-highlight: var(
    --str-chat__yellow-800
  ); /** A tint for drawing attention to content. Used for highlights and pinned messages. */
  --str-chat__avatar-palette-bg-1: var(--str-chat__blue-600);
  --str-chat__avatar-palette-bg-2: var(--str-chat__cyan-600);
  --str-chat__avatar-palette-bg-3: var(--str-chat__green-600);
  --str-chat__avatar-palette-bg-4: var(--str-chat__purple-600);
  --str-chat__avatar-palette-bg-5: var(--str-chat__yellow-600);
  --str-chat__avatar-palette-text-1: var(--str-chat__blue-100);
  --str-chat__avatar-palette-text-2: var(--str-chat__cyan-100);
  --str-chat__avatar-palette-text-3: var(--str-chat__green-100);
  --str-chat__avatar-palette-text-4: var(--str-chat__purple-100);
  --str-chat__avatar-palette-text-5: var(--str-chat__yellow-100);
  --str-chat__accent-success: var(
    --str-chat__green-300
  ); /** Indicates a positive or completed state. Used for confirmations, sent indicators, and success feedback. */
  --str-chat__accent-warning: var(
    --str-chat__yellow-300
  ); /** Indicates a cautionary state that requires attention. Used for moderation flags and non-critical alerts. */
  --str-chat__accent-error: var(
    --str-chat__red-400
  ); /** Indicates a failure or destructive state. Used for failed messages, validation errors, and deletions. */
  --str-chat__brand-50: var(--str-chat__blue-900);
  --str-chat__brand-100: var(--str-chat__blue-800);
  --str-chat__brand-150: var(--str-chat__blue-700);
  --str-chat__brand-200: var(--str-chat__blue-600);
  --str-chat__brand-300: var(--str-chat__blue-500);
  --str-chat__brand-500: var(--str-chat__blue-300);
  --str-chat__brand-600: var(--str-chat__blue-200);
  --str-chat__brand-700: var(--str-chat__blue-150);
  --str-chat__brand-800: var(--str-chat__blue-100);
  --str-chat__brand-900: var(--str-chat__blue-50);
  --str-chat__chrome-0: var(--str-chat__base-black);
  --str-chat__chrome-50: var(--str-chat__neutral-900);
  --str-chat__chrome-100: var(--str-chat__neutral-800);
  --str-chat__chrome-150: var(--str-chat__neutral-700);
  --str-chat__chrome-200: var(--str-chat__neutral-600);
  --str-chat__chrome-300: var(--str-chat__neutral-500);
  --str-chat__chrome-400: var(--str-chat__neutral-400);
  --str-chat__chrome-500: var(--str-chat__neutral-300);
  --str-chat__chrome-600: var(--str-chat__neutral-200);
  --str-chat__chrome-700: var(--str-chat__neutral-150);
  --str-chat__chrome-800: var(--str-chat__neutral-100);
  --str-chat__chrome-900: var(--str-chat__neutral-50);
  --str-chat__chrome-1000: var(--str-chat__base-white);
  --str-chat__background-core-elevation-1: var(
    --str-chat__chrome-50
  ); /** Slightly raised surfaces. Used for content containers that sit directly on the base layer, such as the message list and channel list. */
  --str-chat__background-core-elevation-2: var(
    --str-chat__chrome-100
  ); /** Floating and modal surfaces. Used for popovers, dropdowns, dialogs, and any element that interrupts the content flow. */
  --str-chat__background-core-elevation-3: var(
    --str-chat__chrome-200
  ); /** Used for badge counts that float above other UI elements. */
  --str-chat__background-core-surface-card: var(
    --str-chat__chrome-100
  ); /** Background for contained, card-style elements. Matches the surface in light mode but lifts slightly in dark mode to maintain visual separation. */
  --str-chat__background-core-on-accent: var(
    --str-chat__chrome-1000
  ); /** Background for elements placed on an accent-colored surface. Ensures legibility against brand colors. */
  --str-chat__border-core-default: var(
    --str-chat__chrome-200
  ); /** Standard border for surfaces and containers. Used for input fields, cards, and dividers on neutral backgrounds. */
  --str-chat__border-core-on-accent: var(
    --str-chat__chrome-1000
  ); /** Border on accent-colored surfaces. Stays white in both modes since the accent background doesn't invert. */
  --str-chat__text-on-accent: var(
    --str-chat__chrome-1000
  ); /** Text on accent-colored surfaces. Stays white in both light and dark mode since the accent background doesn't invert. */
  --str-chat__text-link: var(
    --str-chat__brand-600
  ); /** Hyperlinks and inline actions. Uses the brand color to signal interactivity within text content. */
  --str-chat__accent-primary: var(
    --str-chat__brand-400
  ); /** The main brand color. Used for interactive elements, buttons, links, and primary actions. Override this to apply your brand color across the SDK. */
}

/* Numeric styles are used for compact, layout-critical UI elements such as:
    - badge counts,
    - avatar initials,
    - keyboard key labels, and
    - numeric labels inside pills.
    Numeric tokens are classified as layout-stable UI indicators, not content text. */
.str-chat {
  /* The font used in the chat, by default, we use [preinstalled OS fonts](https://systemfontstack.com/) */
  --str-chat__font-family:
    var(--str-chat__typography-font-family-sans), -apple-system, BlinkMacSystemFont,
    avenir next, avenir, segoe ui, helvetica neue, Adwaita Sans, Cantarell, Ubuntu,
    roboto, noto, helvetica, arial, sans-serif;
  --str-chat__font-heading-xs: normal var(--str-chat__typography-font-weight-semi-bold)
    var(--str-chat__typography-font-size-sm) /
    var(--str-chat__typography-line-height-normal) var(--str-chat__font-family);
  --str-chat__font-heading-sm: normal var(--str-chat__typography-font-weight-semi-bold)
    var(--str-chat__typography-font-size-md) /
    var(--str-chat__typography-line-height-normal) var(--str-chat__font-family);
  --str-chat__font-heading-md: normal var(--str-chat__typography-font-weight-semi-bold)
    var(--str-chat__typography-font-size-lg) /
    var(--str-chat__typography-line-height-relaxed) var(--str-chat__font-family);
  --str-chat__font-heading-lg: normal var(--str-chat__typography-font-weight-semi-bold)
    var(--str-chat__typography-font-size-xl) /
    var(--str-chat__typography-line-height-relaxed) var(--str-chat__font-family);
  --str-chat__font-body-default: normal var(--str-chat__typography-font-weight-regular)
    var(--str-chat__typography-font-size-md) /
    var(--str-chat__typography-line-height-normal) var(--str-chat__font-family);
  --str-chat__font-body-emphasis: normal var(--str-chat__typography-font-weight-semi-bold)
    var(--str-chat__typography-font-size-md) /
    var(--str-chat__typography-line-height-normal) var(--str-chat__font-family);
  --str-chat__font-body-link: normal var(--str-chat__typography-font-weight-regular)
    var(--str-chat__typography-font-size-md) /
    var(--str-chat__typography-line-height-normal) var(--str-chat__font-family);
  --str-chat__font-body-link-emphasis: normal
    var(--str-chat__typography-font-weight-semi-bold)
    var(--str-chat__typography-font-size-md) /
    var(--str-chat__typography-line-height-normal) var(--str-chat__font-family);
  --str-chat__font-caption-default: normal var(--str-chat__typography-font-weight-regular)
    var(--str-chat__typography-font-size-sm) /
    var(--str-chat__typography-line-height-normal) var(--str-chat__font-family);
  --str-chat__font-caption-emphasis: normal
    var(--str-chat__typography-font-weight-semi-bold)
    var(--str-chat__typography-font-size-sm) /
    var(--str-chat__typography-line-height-normal) var(--str-chat__font-family);
  --str-chat__font-caption-link: normal var(--str-chat__typography-font-weight-regular)
    var(--str-chat__typography-font-size-sm) /
    var(--str-chat__typography-line-height-normal) var(--str-chat__font-family);
  --str-chat__font-caption-link-emphasis: normal
    var(--str-chat__typography-font-weight-semi-bold)
    var(--str-chat__typography-font-size-sm) /
    var(--str-chat__typography-line-height-normal) var(--str-chat__font-family);
  --str-chat__font-metadata-default: normal
    var(--str-chat__typography-font-weight-regular)
    var(--str-chat__typography-font-size-xs) /
    var(--str-chat__typography-line-height-tight) var(--str-chat__font-family);
  --str-chat__font-metadata-emphasis: normal
    var(--str-chat__typography-font-weight-semi-bold)
    var(--str-chat__typography-font-size-xs) /
    var(--str-chat__typography-line-height-tight) var(--str-chat__font-family);
  --str-chat__font-metadata-link: normal var(--str-chat__typography-font-weight-regular)
    var(--str-chat__typography-font-size-xs) /
    var(--str-chat__typography-line-height-tight) var(--str-chat__font-family);
  --str-chat__font-metadata-link-emphasis: normal
    var(--str-chat__typography-font-weight-semi-bold)
    var(--str-chat__typography-font-size-xs) /
    var(--str-chat__typography-line-height-tight) var(--str-chat__font-family);
  --str-chat__font-numeric-sm: normal var(--str-chat__typography-font-weight-bold)
    var(--str-chat__typography-font-size-micro) / 100% var(--str-chat__font-family);
  --str-chat__font-numeric-md: normal var(--str-chat__typography-font-weight-bold)
    var(--str-chat__typography-font-size-xxs) / 100% var(--str-chat__font-family);
  --str-chat__font-numeric-lg: normal var(--str-chat__typography-font-weight-bold)
    var(--str-chat__typography-font-size-xs) / 100% var(--str-chat__font-family);
  --str-chat__font-numeric-xl: normal var(--str-chat__typography-font-weight-bold)
    var(--str-chat__typography-font-size-sm) / 100% var(--str-chat__font-family);
}

/*
Shadows on Web communicate visual separation and hierarchy through composed box-shadow layers.

Unlike iOS (single shadow token) and Android (dp elevation), web elevation is constructed
from multiple shadow layers to simulate depth and ambient light.

Each shadow level consists of predefined layered shadows.
Components must use these tokens instead of defining custom box-shadow values.

Higher levels combine stronger blur, increased offset, and additional ambient layers
to create clearer separation from the base surface.
 */
.str-chat,
.str-chat__theme-light {
  --str-chat__box-shadow-1: var(--str-chat__light-elevation-1);
  --str-chat__box-shadow-2: var(--str-chat__light-elevation-2);
  --str-chat__box-shadow-3: var(--str-chat__light-elevation-3);
  --str-chat__box-shadow-4: var(--str-chat__light-elevation-4);
}

.str-chat__theme-dark,
.str-chat:not(.str-chat__theme-dark) *:not(.str-chat__theme-dark) .str-chat__theme-inverse {
  --str-chat__box-shadow-1: var(--str-chat__dark-elevation-1);
  --str-chat__box-shadow-2: var(--str-chat__dark-elevation-2);
  --str-chat__box-shadow-3: var(--str-chat__dark-elevation-3);
  --str-chat__box-shadow-4: var(--str-chat__dark-elevation-4);
}

@layer minimal-normalize {
  .str-chat *,
  .str-chat ::before,
  .str-chat ::after {
    box-sizing: border-box;
  }
  .str-chat button,
  .str-chat input,
  .str-chat optgroup,
  .str-chat select,
  .str-chat textarea {
    font-family: inherit;
    font-size: 100%;
    line-height: 1.15;
    margin: 0;
  }
}
.str-chat {
  --str-chat__focus-outline-color: var(--str-chat__border-utility-focused);
  --str-chat__focus-outline: 2px solid var(--str-chat__focus-outline-color);
  --str-chat__focus-outline-offset: 2px;
  font: var(--str-chat__font-body-default);
  letter-spacing: var(--typography-letter-spacing-default);
  color: var(--str-chat__text-primary);
}
.str-chat *:not(:disabled):focus-visible {
  outline: var(--str-chat__focus-outline);
  outline-offset: var(--str-chat__focus-outline-offset, 2px);
}
.str-chat {
  /* Chrome, Safari, Edge, Opera */
}
.str-chat input::-webkit-outer-spin-button,
.str-chat input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
.str-chat {
  /* Firefox */
}
.str-chat input[type=number] {
  -moz-appearance: textfield;
}
.str-chat input::placeholder,
.str-chat textarea::placeholder {
  color: var(--str-chat__input-text-placeholder);
}

.str-chat__icon {
  flex-shrink: 0;
  width: 1em;
  height: 1em;
  fill: currentColor;
}
[dir=rtl] .str-chat__icon[data-rtl-mirror] {
  transform: scaleX(-1);
}

.str-chat__icon--exclamation-mark {
  stroke: currentColor;
}

.str-chat .str-chat__file-icon {
  fill: none;
}
.str-chat .str-chat__file-icon .str-chat__file-icon__label {
  fill: white;
  font-size: 8px;
  font-weight: 800;
  letter-spacing: 0.1px;
  text-anchor: middle;
}
.str-chat .str-chat__file-icon {
  /* Hide label via CSS: .str-chat__file-icon__label { display: none; } then add .str-chat__file-icon--no-label for centering */
}
.str-chat .str-chat__file-icon.str-chat__file-icon--no-label .str-chat__file-icon__graphic {
  transform: translate(0, 6); /* viewBox units: center graphic in (0 0 32 40) when label hidden */
}
.str-chat .str-chat__file-icon.str-chat__file-icon--size-sm .str-chat__file-icon__label {
  font-size: 0;
  height: 0;
}
.str-chat .str-chat__file-icon {
  /* sm size hides label visually; center the graphic */
}
.str-chat .str-chat__file-icon.str-chat__file-icon--size-sm .str-chat__file-icon__graphic {
  transform: translate(0, 6);
}
.str-chat .str-chat__file-icon.str-chat__file-icon--size-md .str-chat__file-icon__label {
  font-size: 8px;
}
.str-chat .str-chat__file-icon.str-chat__file-icon--size-lg .str-chat__file-icon__label {
  font-size: 10px;
}
.str-chat .str-chat__file-icon.str-chat__file-icon--size-xl .str-chat__file-icon__label {
  font-size: 12px;
}

.str-chat__badge {
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: var(--str-chat__typography-font-weight-bold);
  border-radius: var(--str-chat__radius-max);
  line-height: 1;
  border-style: solid;
}

.str-chat__badge--variant-default {
  background: var(--str-chat__badge-bg-default);
  color: var(--str-chat__badge-text);
  border-color: var(--str-chat__badge-border);
}

.str-chat__badge--variant-primary {
  background: var(--str-chat__badge-bg-primary);
  color: var(--str-chat__badge-text-on-accent);
  border-color: var(--str-chat__badge-border);
}

.str-chat__badge--variant-error {
  background: var(--str-chat__badge-bg-error);
  color: var(--str-chat__badge-text-on-accent);
  border-color: var(--str-chat__badge-border);
}

.str-chat__badge--variant-neutral {
  background: var(--str-chat__badge-bg-neutral);
  color: var(--str-chat__badge-text-on-accent);
  border-color: var(--str-chat__badge-border);
}

.str-chat__badge--variant-inverse {
  background: var(--str-chat__badge-bg-inverse);
  color: var(--str-chat__badge-text-on-inverse);
  border-color: var(--str-chat__badge-border);
}

.str-chat__badge--size-sm {
  font-size: var(--str-chat__typography-font-size-xxs);
  min-width: 16px;
  min-height: 16px;
  padding-inline: var(--str-chat__spacing-xxxs);
  border-width: 1px;
}

.str-chat__badge--size-md {
  font-size: var(--str-chat__typography-font-size-xs);
  min-width: 20px;
  min-height: 20px;
  padding-inline: var(--str-chat__spacing-xxs);
  border-width: 2px;
}

.str-chat__badge--size-lg {
  font-size: var(--str-chat__typography-font-size-sm);
  min-width: 24px;
  min-height: 24px;
  padding-inline: var(--str-chat__spacing-xs);
  border-width: 2px;
}

.str-chat__badge--variant-counter {
  border-radius: var(--str-chat__radius-max);
  border: 1px solid var(--str-chat__border-core-subtle);
  background: var(--str-chat__badge-bg-default);
  font: var(--str-chat__font-numeric-xl);
  color: var(--str-chat__badge-text);
  box-shadow: var(--str-chat__box-shadow-2);
}
.str-chat__badge--variant-counter.str-chat__badge--size-xs {
  min-width: 20px;
  min-height: 20px;
  padding-inline: var(--str-chat__spacing-xxs);
  font: var(--str-chat__font-numeric-md);
}
.str-chat__badge--variant-counter.str-chat__badge--size-sm {
  min-width: 24px;
  min-height: 24px;
  padding-inline: var(--str-chat__spacing-xs);
}
.str-chat__badge--variant-counter.str-chat__badge--size-md {
  min-width: 32px;
  min-height: 32px;
  padding-inline: var(--str-chat__spacing-xs);
}
.str-chat__badge--variant-counter.str-chat__badge--size-lg {
  min-width: 40px;
  min-height: 40px;
  padding-inline: var(--str-chat__spacing-sm);
}

.str-chat__badge--variant-error.str-chat__badge--size-xs {
  min-width: 16px;
  min-height: 16px;
}
.str-chat__badge--variant-error.str-chat__badge--size-sm {
  min-width: 20px;
  min-height: 20px;
}
.str-chat__badge--variant-error.str-chat__badge--size-md {
  min-width: 24px;
  min-height: 24px;
}

.str-chat__media-badge {
  display: flex;
  align-items: center;
  gap: var(--str-chat__spacing-xxs);
  position: absolute;
  bottom: var(--str-chat__spacing-xs);
  inset-inline-start: var(--str-chat__spacing-xs);
  padding: var(--str-chat__spacing-xxs) var(--str-chat__spacing-xs);
  border-radius: var(--str-chat__radius-max);
  background: var(--str-chat__badge-bg-inverse);
  color: var(--str-chat__badge-text-on-inverse);
  font: var(--str-chat__font-numeric-md);
  overflow: hidden;
  text-overflow: ellipsis;
}
.str-chat__media-badge .str-chat__icon {
  width: var(--str-chat__icon-size-xs);
  height: var(--str-chat__icon-size-xs);
  fill: currentColor;
}

.str-chat .str-chat__image-placeholder {
  width: 100%;
  height: 100%;
  min-width: 0;
  min-height: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  background-color: var(--str-chat__background-core-overlay-light);
}
.str-chat .str-chat__image-placeholder svg {
  fill: var(--str-chat__accent-neutral);
  width: min(var(--str-chat__icon-size-lg, 32px), 50%);
  height: min(var(--str-chat__icon-size-lg, 32px), 50%);
  flex-shrink: 0;
}

.str-chat .str-chat__button {
  background: none;
  border: none;
  padding: 0;
  position: relative; /* creates positioning context for pseudo ::after overlay */
  white-space: nowrap;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  font: var(--str-chat__font-heading-xs);
  text-transform: capitalize;
}
.str-chat .str-chat__button.str-chat__theme-inverse {
  --str-chat__button-primary-text: var(
    --str-chat__button-primary-text-on-dark,
    var(--str-chat__button-primary-text)
  );
  --str-chat__button-primary-border: var(
    --str-chat__button-primary-border-on-dark,
    var(--str-chat__button-primary-border)
  );
  --str-chat__button-secondary-text: var(
    --str-chat__button-secondary-text-on-dark,
    var(--str-chat__button-secondary-text)
  );
  --str-chat__button-secondary-border: var(
    --str-chat__button-secondary-border-on-dark,
    var(--str-chat__button-secondary-border)
  );
  --str-chat__button-destructive-text: var(
    --str-chat__button-destructive-text-on-dark,
    var(--str-chat__button-destructive-text)
  );
  --str-chat__button-destructive-border: var(
    --str-chat__button-destructive-border-on-dark,
    var(--str-chat__button-destructive-border)
  );
}
.str-chat .str-chat__button.str-chat__button--solid.str-chat__button--primary {
  background-color: var(--str-chat__button-primary-bg);
  color: var(--str-chat__button-primary-text-on-accent);
}
.str-chat .str-chat__button.str-chat__button--solid.str-chat__button--secondary {
  background-color: var(--str-chat__button-secondary-bg);
  color: var(--str-chat__button-secondary-text-on-accent);
}
.str-chat .str-chat__button.str-chat__button--solid.str-chat__button--destructive {
  background-color: var(--str-chat__button-destructive-bg);
  color: var(--str-chat__button-destructive-text-on-accent);
}
.str-chat .str-chat__button.str-chat__button--solid:disabled, .str-chat .str-chat__button.str-chat__button--solid[aria-disabled=true] {
  background-color: var(--str-chat__background-utility-disabled);
}
.str-chat .str-chat__button.str-chat__button--ghost.str-chat__button--primary {
  color: var(--str-chat__button-primary-text);
}
.str-chat .str-chat__button.str-chat__button--ghost.str-chat__button--secondary {
  color: var(--str-chat__button-secondary-text);
}
.str-chat .str-chat__button.str-chat__button--ghost.str-chat__button--destructive {
  color: var(--str-chat__button-destructive-text);
}
.str-chat .str-chat__button.str-chat__button--outline.str-chat__button--primary {
  color: var(--str-chat__button-primary-text);
  border-color: var(--str-chat__button-primary-border);
}
.str-chat .str-chat__button.str-chat__button--outline.str-chat__button--secondary {
  color: var(--str-chat__button-secondary-text);
  border-color: var(--str-chat__button-secondary-border);
}
.str-chat .str-chat__button.str-chat__button--outline.str-chat__button--destructive {
  color: var(--str-chat__button-destructive-text);
  border-color: var(--str-chat__button-destructive-border);
}
.str-chat .str-chat__button.str-chat__button--outline {
  border-width: 1px;
  border-style: solid;
}
.str-chat .str-chat__button.str-chat__button--solid:not(:disabled):hover::after, .str-chat .str-chat__button.str-chat__button--outline:not(:disabled):hover::after, .str-chat .str-chat__button.str-chat__button--ghost:not(:disabled):hover::after {
  content: "";
  position: absolute;
  inset: 0;
  background: var(--str-chat__background-utility-hover);
  pointer-events: none;
}
.str-chat .str-chat__button.str-chat__button--solid[aria-expanded=true]::after, .str-chat .str-chat__button.str-chat__button--solid:not(:disabled):active::after, .str-chat .str-chat__button.str-chat__button--outline[aria-expanded=true]::after, .str-chat .str-chat__button.str-chat__button--outline:not(:disabled):active::after, .str-chat .str-chat__button.str-chat__button--ghost[aria-expanded=true]::after, .str-chat .str-chat__button.str-chat__button--ghost:not(:disabled):active::after {
  content: "";
  position: absolute;
  inset: 0;
  background: var(--str-chat__background-utility-pressed);
  pointer-events: none;
}
.str-chat .str-chat__button.str-chat__button--solid:not(:disabled):focus-visible, .str-chat .str-chat__button.str-chat__button--outline:not(:disabled):focus-visible, .str-chat .str-chat__button.str-chat__button--ghost:not(:disabled):focus-visible {
  outline: 2px solid var(--str-chat__border-utility-focused);
  outline-offset: 2px;
}
.str-chat .str-chat__button.str-chat__button--solid:not(:disabled)[aria-pressed=true]::after, .str-chat .str-chat__button.str-chat__button--outline:not(:disabled)[aria-pressed=true]::after, .str-chat .str-chat__button.str-chat__button--ghost:not(:disabled)[aria-pressed=true]::after {
  content: "";
  position: absolute;
  inset: 0;
  background: var(--str-chat__background-utility-selected);
  pointer-events: none;
}
.str-chat .str-chat__button.str-chat__button--solid:disabled, .str-chat .str-chat__button.str-chat__button--solid[aria-disabled=true], .str-chat .str-chat__button.str-chat__button--outline:disabled, .str-chat .str-chat__button.str-chat__button--outline[aria-disabled=true], .str-chat .str-chat__button.str-chat__button--ghost:disabled, .str-chat .str-chat__button.str-chat__button--ghost[aria-disabled=true] {
  color: var(--str-chat__text-disabled);
  cursor: default;
}
.str-chat .str-chat__button.str-chat__button--solid[aria-disabled=true], .str-chat .str-chat__button.str-chat__button--outline[aria-disabled=true], .str-chat .str-chat__button.str-chat__button--ghost[aria-disabled=true] {
  pointer-events: none;
}
.str-chat .str-chat__button.str-chat__button--outline:disabled, .str-chat .str-chat__button.str-chat__button--outline[aria-disabled=true] {
  border-color: var(--str-chat__border-utility-disabled);
}
.str-chat .str-chat__button.str-chat__button--floating {
  box-shadow: var(--str-chat__box-shadow-2);
}
.str-chat .str-chat__button::after {
  border-radius: inherit;
}
.str-chat .str-chat__button.str-chat__button--size-lg {
  padding-block: var(--str-chat__button-padding-y-lg);
  padding-inline: var(--str-chat__button-padding-x-with-label-lg);
  border-radius: var(--str-chat__button-radius-lg);
}
.str-chat .str-chat__button.str-chat__button--size-lg.str-chat__button--circular {
  padding-inline: var(--str-chat__button-padding-x-icon-only-lg);
}
.str-chat .str-chat__button.str-chat__button--size-md {
  padding-block: var(--str-chat__button-padding-y-md);
  padding-inline: var(--str-chat__button-padding-x-with-label-md);
  border-radius: var(--str-chat__button-radius-md);
}
.str-chat .str-chat__button.str-chat__button--size-md.str-chat__button--circular {
  padding-inline: var(--str-chat__button-padding-x-icon-only-md);
}
.str-chat .str-chat__button.str-chat__button--size-sm {
  padding-block: var(--str-chat__button-padding-y-sm);
  padding-inline: var(--str-chat__button-padding-x-with-label-sm);
  border-radius: var(--str-chat__button-radius-md);
}
.str-chat .str-chat__button.str-chat__button--size-sm.str-chat__button--circular {
  padding-inline: var(--str-chat__button-padding-x-icon-only-sm);
}
.str-chat .str-chat__button.str-chat__button--size-xs {
  padding-block: var(--str-chat__button-padding-y-xs);
  padding-inline: var(--str-chat__button-padding-x-with-label-xs);
  border-radius: var(--str-chat__button-radius-md);
}
.str-chat .str-chat__button.str-chat__button--size-xs.str-chat__button--circular {
  padding-inline: var(--str-chat__button-padding-x-icon-only-xs);
}
.str-chat .str-chat__button.str-chat__button--circular {
  aspect-ratio: 1/1;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: var(--str-chat__button-radius-full);
}
.str-chat .str-chat__button.str-chat__button--circular .str-chat__icon {
  height: var(--str-chat__icon-size-sm);
  width: var(--str-chat__icon-size-sm);
}
.str-chat .str-chat__button .str-chat__button__content {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--str-chat__spacing-xs);
}
.str-chat .str-chat__theme-dark .str-chat__button.str-chat__button--floating {
  box-shadow: var(--str-chat__box-shadow-2);
}

.str-chat__button-play svg {
  width: 20px;
  height: 20px;
}

.str-chat__checkbox,
.str-chat__checkmark {
  grid-column: 1;
  grid-row: span 2;
  height: var(--str-chat__size-24);
  width: var(--str-chat__size-24);
  border-radius: var(--str-chat__radius-max);
  border: 1px solid var(--chat-border-on-chat, var(--str-chat__chat-border-on-chat-incoming));
}

.str-chat__checkbox--checked,
.str-chat__checkmark--checked {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9Im5vbmUiPjxwYXRoIGZpbGw9IiNmZmYiIGQ9Im00IDkuNC00LTRMMS40IDQgNCA2LjYgMTAuNiAwIDEyIDEuNGwtOCA4WiIvPjwvc3ZnPg==");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 11px 10px;
  background-color: var(--str-chat__control-radio-check-bg-selected);
  border: none;
}

.str-chat__dropdown .str-chat__dropdown__open-button {
  background: none;
  border: none;
  padding: 0;
  width: 100%;
  text-align: start;
  cursor: pointer;
}
.str-chat__dropdown .str-chat__dropdown__items {
  background-color: transparent;
}

.str-chat__form-field-error {
  font-size: var(--str-chat__typography-font-size-xs);
  line-height: var(--str-chat__typography-line-height-tight);
  color: var(--str-chat__accent-error);
}

.str-chat__form-numeric-input {
  display: flex;
  flex-direction: column;
  gap: var(--str-chat__spacing-xs, 0.5rem);
}
.str-chat__form-numeric-input__label {
  font: var(--str-chat__caption-default-text);
}
.str-chat__form-numeric-input__wrapper {
  display: flex;
  align-items: center;
  gap: var(--str-chat__spacing-xs, 0.5rem);
  padding: 0;
  background: transparent;
  border-radius: var(--str-chat__radius-md, 0.5rem);
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
}
.str-chat__form-numeric-input__input {
  flex: 0 1 auto;
  min-width: 2ch;
  width: 2.5rem;
  padding: var(--str-chat__spacing-xs, 0.5rem) 0;
  font-size: var(--str-chat__typography-font-size-sm, 0.875rem);
  font-weight: var(--str-chat__typography-font-weight-medium, 500);
  line-height: var(--str-chat__typography-line-height-tight, 1.25);
  color: var(--str-chat__input-text-default);
  text-align: center;
  background: transparent;
  border: none;
  box-shadow: none;
}
.str-chat__form-numeric-input--disabled .str-chat__form-numeric-input__input {
  color: var(--str-chat__input-text-placeholder);
  cursor: not-allowed;
}

.str-chat {
  --str-chat__switch-field-background-color: var(
    --str-chat__background-core-surface-card
  );
  --str-chat__switch-field-border-radius: var(--str-chat__radius-md);
}
.str-chat .str-chat__form__switch-fieldset {
  width: 100%;
  background-color: var(--str-chat__switch-field-background-color);
  border-radius: var(--str-chat__switch-field-border-radius);
}
.str-chat .str-chat__form__switch-field {
  display: flex;
  align-items: center;
  gap: var(--str-chat__spacing-sm);
  width: 100%;
  padding: var(--str-chat__spacing-sm) var(--str-chat__spacing-md);
  background-color: var(--str-chat__switch-field-background-color);
  border-radius: var(--str-chat__switch-field-border-radius);
  box-sizing: border-box;
}
.str-chat .str-chat__form__switch-field .str-chat__form__switch-field__label {
  display: flex;
  align-items: center;
  flex: 1 1 auto;
  min-width: 0;
  cursor: pointer;
}
.str-chat .str-chat__form__switch-field .str-chat__form__switch-field__input {
  position: absolute;
  inset: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  margin: 0;
  opacity: 0;
  cursor: pointer;
}
.str-chat .str-chat__form__switch-field .str-chat__form__switch-field__switch {
  position: relative;
  display: flex;
  align-items: center;
  flex-shrink: 0;
  width: 44px;
  height: 24px;
  padding: var(--str-chat__spacing-xxs);
  cursor: pointer;
  background-color: var(--str-chat__control-toggle-switch-bg);
  border-radius: var(--str-chat__button-radius-full, 9999px);
  transition: background-color 0.2s ease;
}
.str-chat .str-chat__form__switch-field .str-chat__form__switch-field__switch-handle {
  width: 16px;
  height: 16px;
  border-radius: var(--str-chat__button-radius-full, 9999px);
  background-color: var(--str-chat__base-white, #ffffff);
  transition: transform 0.2s ease;
}
.str-chat .str-chat__form__switch-field .str-chat__form__switch-field__switch:focus-within {
  outline: var(--str-chat__focus-outline, 2px solid var(--border-utility-focused));
  outline-offset: var(--str-chat__focus-outline-offset, 2px);
}
.str-chat .str-chat__form__switch-field .str-chat__form__switch-field__switch--on {
  background-color: var(--str-chat__control-toggle-switch-bg-selected);
  justify-content: flex-end;
}
.str-chat .str-chat__form__switch-field .str-chat__form__switch-field__switch--on .str-chat__form__switch-field__switch-handle {
  background-color: var(--str-chat__base-white, #ffffff);
}
.str-chat .str-chat__form__switch-field--disabled .str-chat__form__switch-field__label,
.str-chat .str-chat__form__switch-field--disabled .str-chat__form__switch-field__switch,
.str-chat .str-chat__form__switch-field--disabled .str-chat__form__switch-field__input {
  cursor: not-allowed;
}
.str-chat .str-chat__form__switch-field--disabled .str-chat__form__switch-field__switch {
  opacity: 0.7;
}
.str-chat .str-chat__form__switch-field .str-chat__form__switch-field__label .str-chat__form__switch-field__label__text {
  color: var(--str-chat__text-primary);
  font: var(--str-chat__font-heading-xs);
}
.str-chat .str-chat__form__switch-field .str-chat__form__switch-field__label .str-chat__form__switch-field__label__description {
  color: var(--str-chat__text-tertiary);
  font: var(--str-chat__font-metadata-default);
}
.str-chat .str-chat__form__switch-field .str-chat__form__switch-field__label,
.str-chat .str-chat__form__switch-field .str-chat__form__switch-field__label__content {
  flex: 1;
}
.str-chat .str-chat__form__switch-field .str-chat__form__switch-field__label--as-error .str-chat__form__switch-field__label__description {
  color: var(--str-chat__accent-error);
}

.str-chat__form-text-input {
  display: flex;
  flex-direction: column;
  gap: var(--str-chat__spacing-xs);
}

.str-chat__form-text-input__label {
  font: var(--str-chat__font-heading-xs);
  color: var(--str-chat__text-primary);
}

/* Column shell: control row + optional in-border error */
.str-chat__form-text-input__wrapper {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 0;
  background-color: var(--str-chat__background-core-elevation-0);
  border-radius: var(--str-chat__radius-md);
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.str-chat__form-text-input__control-row {
  display: flex;
  align-items: center;
  gap: var(--str-chat__spacing-xs);
  padding: var(--str-chat__spacing-xs) var(--str-chat__spacing-sm);
  min-width: 0;
  width: 100%;
}

.str-chat__form-text-input__wrapper--outline {
  border: 1px solid var(--str-chat__border-core-default);
  box-shadow: none;
}

.str-chat__form-text-input:focus-within .str-chat__form-text-input__wrapper--outline {
  box-shadow: 0 0 0 2px var(--str-chat__focus-outline-color, var(--str-chat__border-utility-focused));
}

.str-chat__form-text-input--error .str-chat__form-text-input__wrapper--outline {
  border: 1px solid var(--str-chat__border-utility-error);
}

/* In-border error: shell keeps default outline (red only on message row) */
.str-chat__form-text-input--error.str-chat__form-text-input--field-message-inside .str-chat__form-text-input__wrapper--outline {
  border: 1px solid var(--str-chat__border-core-default);
}

.str-chat__form-text-input:focus-within.str-chat__form-text-input--error .str-chat__form-text-input__wrapper--outline {
  border: 1px solid var(--str-chat__border-utility-error);
  box-shadow: 0 0 0 2px var(--str-chat__focus-outline-color, var(--border-utility-focused));
}

.str-chat__form-text-input:focus-within.str-chat__form-text-input--error.str-chat__form-text-input--field-message-inside .str-chat__form-text-input__wrapper--outline {
  box-shadow: 0 0 0 2px var(--str-chat__focus-outline-color, var(--str-chat__border-utility-focused));
}

.str-chat__form-text-input--disabled .str-chat__form-text-input__wrapper--outline {
  border: 1px solid var(--str-chat__border-utility-disabled);
}

.str-chat__form-text-input__wrapper--ghost {
  border: none;
  box-shadow: none;
}

.str-chat__form-text-input:focus-within .str-chat__form-text-input__wrapper--ghost {
  border: none;
  box-shadow: 0 0 0 2px var(--str-chat__focus-outline-color, var(--str-chat__border-utility-focused));
}

.str-chat__form-text-input--error .str-chat__form-text-input__wrapper--ghost {
  border: 1px solid var(--str-chat__border-utility-error);
  box-shadow: none;
}

.str-chat__form-text-input--error.str-chat__form-text-input--field-message-inside .str-chat__form-text-input__wrapper--ghost {
  border: none;
  box-shadow: none;
}

.str-chat__form-text-input:focus-within.str-chat__form-text-input--error .str-chat__form-text-input__wrapper--ghost {
  border: 1px solid var(--str-chat__border-utility-error);
  box-shadow: 0 0 0 2px var(--str-chat__focus-outline-color, var(--border-utility-focused));
}

.str-chat__form-text-input:focus-within.str-chat__form-text-input--error.str-chat__form-text-input--field-message-inside .str-chat__form-text-input__wrapper--ghost {
  border: none;
  box-shadow: 0 0 0 2px var(--str-chat__focus-outline-color, var(--str-chat__border-utility-focused));
}

.str-chat__form-text-input__leading {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  color: var(--str-chat__input-text-icon);
}

.str-chat__form-text-input .str-chat__form-text-input__input {
  flex: 1;
  min-width: 0;
  padding: 0;
  font: var(--str-chat__caption-default-text);
  color: var(--str-chat__input-text-default);
  background: transparent;
  border: none;
  outline: none;
  box-shadow: none;
}

.str-chat__form-text-input.str-chat__form-text-input--disabled .str-chat__form-text-input__input {
  color: var(--str-chat__input-text-placeholder);
  cursor: not-allowed;
}

.str-chat__form-text-input.str-chat__form-text-input--disabled .str-chat__form-text-input__input::placeholder {
  color: var(--str-chat__input-text-placeholder);
}

.str-chat__form-text-input .str-chat__form-text-input__input:focus,
.str-chat__form-text-input .str-chat__form-text-input__input:focus-visible {
  outline: none;
  box-shadow: none;
}

.str-chat__form-text-input__suffix {
  flex-shrink: 0;
  font-size: var(--str-chat__typography-font-size-sm);
  line-height: var(--str-chat__typography-line-height-normal);
  color: var(--str-chat__text-tertiary);
}

.str-chat__form-text-input__trailing {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  margin-inline-end: calc(-1 * var(--str-chat__space-4));
  color: var(--str-chat__input-text-icon);
}

.str-chat__form-text-input--error .str-chat__form-text-input__trailing {
  color: var(--str-chat__accent-error);
}

.str-chat__form-text-input__message {
  display: flex;
  align-items: center;
  gap: var(--str-chat__spacing-xxs);
  font: var(--str-chat__metadata-default-text);
}

/* Base typography/color only when not error (error uses str-chat__form-field-error) */
.str-chat__form-text-input__message:not(.str-chat__form-field-error) {
  color: var(--str-chat__text-tertiary);
}

.str-chat__form-text-input__message--field-message-inside {
  padding: var(--str-chat__spacing-none) var(--str-chat__spacing-sm) var(--str-chat__spacing-sm);
}

.str-chat__form-text-input__message--success {
  color: var(--str-chat__accent-success);
}

.str-chat__form-text-input__message-text {
  min-width: 0;
  flex: 1 1 auto;
}

.str-chat__form-text-input__message-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  color: inherit;
}
.str-chat__form-text-input__message-icon svg {
  height: 13px;
  width: 13px;
}

.str-chat__form__input-fieldset {
  margin: 0;
  padding: 0;
  border: none;
}
.str-chat__form__input-fieldset .str-chat__form__input-fieldset__label {
  font: var(--str-chat__font-heading-xs);
  color: var(--str-chat__text-primary);
}
.str-chat__form__input-fieldset .str-chat__form__input-fieldset__values {
  display: flex;
  flex-direction: column;
}
.str-chat__form__input-fieldset .str-chat__form__input-fieldset__values .str-chat__form__input-field--draggable {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
}
.str-chat__form__input-fieldset .str-chat__form__input-fieldset__values .str-chat__form__input-field--draggable input {
  pointer-events: auto;
}
.str-chat__form__input-fieldset .str-chat__form__input-fieldset__values .str-chat__form__input-field--draggable .str-chat__drag-handle {
  height: 1rem;
  width: 1rem;
}
.str-chat__form__input-fieldset .str-chat__form__input-fieldset__values .str-chat__form__input-field {
  width: 100%;
}
.str-chat__form__input-fieldset .str-chat__form__input-fieldset__values .str-chat__form__input-field .str-chat__form__input-field__value {
  width: 100%;
}
.str-chat__form__input-fieldset .str-chat__form__input-fieldset__values .str-chat__form__input-field .str-chat__form__input-field__value .str-chat__form__input-field__error {
  width: 100%;
}

.str-chat__alert-root {
  border-radius: var(--str-chat__radius-xl);
  background: var(--str-chat__background-core-elevation-1);
  /* shadow/web/light/elevation-4 */
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.05), 0 6px 12px 0 rgba(0, 0, 0, 0.16), 0 20px 32px 0 rgba(0, 0, 0, 0.12);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--str-chat__spacing-2xl);
  padding: var(--str-chat__spacing-xl);
  text-align: center;
}
.str-chat__alert-root .str-chat__alert-header {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--str-chat__spacing-md);
  width: 100%;
}
.str-chat__alert-root .str-chat__alert-header svg {
  height: var(--str-chat__button-visual-height-sm);
  width: var(--str-chat__button-visual-height-sm);
}
.str-chat__alert-root .str-chat__alert-header .str-chat__alert-header__copy {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--str-chat__spacing-xs);
  width: 100%;
}
.str-chat__alert-root .str-chat__alert-header .str-chat__alert-header__copy .str-chat__alert-header__title {
  font: var(--str-chat__font-heading-sm);
}
.str-chat__alert-root .str-chat__alert-header .str-chat__alert-header__copy .str-chat__alert-header__description {
  font: var(--str-chat__font-caption-default);
  margin: 0;
}
.str-chat__alert-root .str-chat__alert-actions {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--str-chat__spacing-xs);
  width: 100%;
}
.str-chat__alert-root .str-chat__alert-actions button {
  width: 100%;
}

.str-chat__callout {
  position: relative;
  max-width: 320px;
  border-radius: var(--str-chat__radius-lg);
  background-color: var(--str-chat__background-core-elevation-2);
  box-shadow: var(--str-chat__box-shadow-3);
}
.str-chat__callout .str-chat__callout__close-button {
  position: absolute;
  inset-inline-end: var(--str-chat__spacing-xs);
  top: var(--str-chat__spacing-xs);
}

@keyframes str-chat-context-menu-roll-in-from-left {
  from {
    opacity: 0.12;
    transform: translateX(16px) scale(0.98);
  }
  to {
    opacity: 1;
    transform: translateX(0) scale(1);
  }
}
@keyframes str-chat-context-menu-roll-in-from-right {
  from {
    opacity: 0.12;
    transform: translateX(-16px) scale(0.98);
  }
  to {
    opacity: 1;
    transform: translateX(0) scale(1);
  }
}
@keyframes str-chat-context-menu-roll-in-from-top {
  from {
    opacity: 0.12;
    transform: translateY(14px) scale(0.98);
  }
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}
@keyframes str-chat-context-menu-roll-in-from-bottom {
  from {
    opacity: 0.12;
    transform: translateY(-14px) scale(0.98);
  }
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}
@keyframes str-chat-context-menu-submenu-forward {
  from {
    opacity: 0.18;
    transform: translateX(28px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes str-chat-context-menu-submenu-backward {
  from {
    opacity: 0.18;
    transform: translateX(-32px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
.str-chat {
  --str-chat__dialog-menu-button-hover-background-color: var(
    --str-chat__background-utility-hover
  );
  --str-chat__menu-roll-duration: 170ms;
  --str-chat__menu-roll-ease: cubic-bezier(0.22, 1, 0.36, 1);
}
.str-chat .str-chat__context-menu {
  background: var(--str-chat__background-core-elevation-2);
  color: var(--str-chat__text-primary);
  box-shadow: var(--str-chat__box-shadow-3);
  border-radius: var(--str-chat__radius-lg);
  display: flex;
  flex-direction: column;
  padding: var(--str-chat__spacing-xxs);
}
.str-chat .str-chat__context-menu .str-chat__context-menu__header {
  width: 100%;
  color: var(--str-chat__text-tertiary);
  font: var(--str-chat__font-caption-emphasis);
}
.str-chat .str-chat__context-menu .str-chat__context-menu__back-button {
  background: none;
  border: none;
  padding: 0;
  display: flex;
  align-items: center;
  gap: var(--str-chat__spacing-xs);
  height: 32px;
  width: 100%;
  padding: var(--str-chat__spacing-xs);
  text-align: center;
  cursor: pointer;
  border-radius: var(--str-chat__radius-md);
  color: var(--str-chat__text-tertiary);
  font: var(--str-chat__font-caption-emphasis);
}
.str-chat .str-chat__context-menu .str-chat__context-menu__back-button:hover:not(:disabled) {
  background-color: var(--str-chat__background-utility-hover);
}
.str-chat .str-chat__context-menu .str-chat__context-menu__back-button:active:not(:disabled) {
  background-color: var(--str-chat__background-utility-pressed);
}
.str-chat .str-chat__context-menu .str-chat__context-menu__back-button:focus:not(:disabled) {
  outline: 2px solid var(--str-chat__border-utility-focused);
  outline-offset: 2px;
}
.str-chat .str-chat__context-menu .str-chat__context-menu__back-button:focus-visible:not(:disabled) {
  background-color: transparent;
}
.str-chat .str-chat__context-menu .str-chat__context-menu__back-button:disabled {
  background-color: transparent;
}
.str-chat .str-chat__context-menu .str-chat__context-menu__back-button .str-chat__icon--chevron-right {
  transform: rotate(180deg);
}
.str-chat .str-chat__context-menu .str-chat__context-menu__back-button .str-chat__context-menu__back-button__content {
  display: inline-flex;
  align-items: center;
}
.str-chat .str-chat__context-menu .str-chat__context-menu__body {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: var(--str-chat__spacing-xxxs);
}
.str-chat .str-chat__context-menu .str-chat__context-menu__body.str-chat__context-menu__body--submenu-forward {
  overflow-x: hidden;
  animation-duration: 280ms;
  animation-name: var(--str-chat__context-menu-submenu-forward-animation, str-chat-context-menu-submenu-forward);
  animation-timing-function: cubic-bezier(0.2, 0.95, 0.25, 1);
  transform-origin: var(--str-chat__context-menu-submenu-forward-transform-origin, left center);
}
.str-chat .str-chat__context-menu .str-chat__context-menu__body.str-chat__context-menu__body--submenu-backward {
  overflow-x: hidden;
  animation-duration: 400ms;
  animation-name: var(--str-chat__context-menu-submenu-backward-animation, str-chat-context-menu-submenu-backward);
  animation-timing-function: cubic-bezier(0.16, 0.92, 0.2, 1);
  transform-origin: var(--str-chat__context-menu-submenu-backward-transform-origin, right center);
}
.str-chat .str-chat__context-menu .str-chat__context-menu__button {
  background: transparent;
  color: var(--str-chat__text-primary);
  border-radius: var(--str-chat__radius-md);
  background: none;
  border: none;
  padding: 0;
  display: flex;
  align-items: center;
  gap: var(--str-chat__spacing-xs);
  width: 100%;
  padding: var(--str-chat__spacing-xs);
  cursor: pointer;
  font: var(--str-chat__font-caption-emphasis);
}
.str-chat .str-chat__context-menu .str-chat__context-menu__button.str-chat__context-menu__button--destructive .str-chat__context-menu__button__label,
.str-chat .str-chat__context-menu .str-chat__context-menu__button.str-chat__context-menu__button--destructive .str-chat__icon {
  color: var(--str-chat__accent-error);
}
.str-chat .str-chat__context-menu .str-chat__context-menu__button:hover:not(:disabled) {
  background-color: var(--str-chat__dialog-menu-button-hover-background-color);
}
.str-chat .str-chat__context-menu .str-chat__context-menu__button:active:not(:disabled) {
  background-color: var(--str-chat__background-utility-pressed);
}
.str-chat .str-chat__context-menu .str-chat__context-menu__button:focus-visible:not(:disabled) {
  background-color: transparent;
}
.str-chat .str-chat__context-menu .str-chat__context-menu__button:disabled {
  background-color: transparent;
  color: var(--str-chat__text-disabled);
  cursor: default;
}
.str-chat .str-chat__context-menu .str-chat__context-menu__button:disabled .str-chat__context-menu__button__details,
.str-chat .str-chat__context-menu .str-chat__context-menu__button:disabled .str-chat__icon {
  color: inherit;
}
.str-chat .str-chat__context-menu .str-chat__context-menu__button .str-chat__icon {
  height: var(--str-chat__icon-size-sm);
  width: var(--str-chat__icon-size-sm);
  color: var(--str-chat__text-secondary);
}
.str-chat .str-chat__context-menu .str-chat__context-menu__button .str-chat__context-menu__button__label {
  overflow-y: visible;
  overflow-x: hidden;
  overflow-x: clip;
  text-overflow: ellipsis;
  flex: auto;
  text-align: start;
  white-space: nowrap;
  min-width: 0;
}
.str-chat .str-chat__context-menu .str-chat__context-menu__button .str-chat__context-menu__button__details {
  flex: 1;
  color: var(--str-chat__text-tertiary);
  font: var(--str-chat__font-caption-default);
  white-space: nowrap;
}
.str-chat .str-chat__context-menu .str-chat__emoji-context-menu__button,
.str-chat .str-chat__context-menu .str-chat__user-context-menu__button {
  font: var(--str-chat__font-caption-default);
}
.str-chat .str-chat__context-menu .str-chat__emoji-context-menu__button .str-chat__context-menu__button__emoji,
.str-chat .str-chat__context-menu .str-chat__user-context-menu__button .str-chat__context-menu__button__emoji {
  font-size: var(--str-chat__typography-font-size-md);
  width: var(--str-chat__typography-font-size-md);
  height: var(--str-chat__typography-font-size-md);
  line-height: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}
.str-chat [data-str-chat-placement^=right] > .str-chat__context-menu {
  animation: str-chat-context-menu-roll-in-from-left var(--str-chat__menu-roll-duration, 130ms) var(--str-chat__menu-roll-ease);
  transform-origin: left center;
}
.str-chat [data-str-chat-placement^=left] > .str-chat__context-menu {
  animation: str-chat-context-menu-roll-in-from-right var(--str-chat__menu-roll-duration, 130ms) var(--str-chat__menu-roll-ease);
  transform-origin: right center;
}
.str-chat [data-str-chat-placement^=bottom] > .str-chat__context-menu {
  animation: str-chat-context-menu-roll-in-from-bottom var(--str-chat__menu-roll-duration, 130ms) var(--str-chat__menu-roll-ease);
  transform-origin: center top;
}
.str-chat [data-str-chat-placement^=top] > .str-chat__context-menu {
  animation: str-chat-context-menu-roll-in-from-top var(--str-chat__menu-roll-duration, 130ms) var(--str-chat__menu-roll-ease);
  transform-origin: center bottom;
}
.str-chat [data-str-chat-dialog-state=closing][data-str-chat-placement^=right] > .str-chat__context-menu {
  animation: str-chat-context-menu-roll-in-from-left var(--str-chat__menu-roll-duration, 130ms) var(--str-chat__menu-roll-ease) reverse forwards;
  transform-origin: left center;
}
.str-chat [data-str-chat-dialog-state=closing][data-str-chat-placement^=left] > .str-chat__context-menu {
  animation: str-chat-context-menu-roll-in-from-right var(--str-chat__menu-roll-duration, 130ms) var(--str-chat__menu-roll-ease) reverse forwards;
  transform-origin: right center;
}
.str-chat [data-str-chat-dialog-state=closing][data-str-chat-placement^=bottom] > .str-chat__context-menu {
  animation: str-chat-context-menu-roll-in-from-bottom var(--str-chat__menu-roll-duration, 130ms) var(--str-chat__menu-roll-ease) reverse forwards;
  transform-origin: center top;
}
.str-chat [data-str-chat-dialog-state=closing][data-str-chat-placement^=top] > .str-chat__context-menu {
  animation: str-chat-context-menu-roll-in-from-top var(--str-chat__menu-roll-duration, 130ms) var(--str-chat__menu-roll-ease) reverse forwards;
  transform-origin: center bottom;
}
.str-chat .str-chat__context-menu__submenu-container:not([data-str-chat-roll-from])[data-str-chat-roll-axis=x][data-str-chat-placement^=left] > .str-chat__context-menu {
  animation: str-chat-context-menu-roll-in-from-right var(--str-chat__menu-roll-duration, 130ms) var(--str-chat__menu-roll-ease);
  transform-origin: right center;
}
.str-chat .str-chat__context-menu__submenu-container:not([data-str-chat-roll-from])[data-str-chat-roll-axis=x]:not([data-str-chat-placement^=left]) > .str-chat__context-menu {
  animation: str-chat-context-menu-roll-in-from-left var(--str-chat__menu-roll-duration, 130ms) var(--str-chat__menu-roll-ease);
  transform-origin: left center;
}
.str-chat .str-chat__context-menu__submenu-container[data-str-chat-roll-from=left] > .str-chat__context-menu {
  animation: str-chat-context-menu-roll-in-from-left var(--str-chat__menu-roll-duration, 130ms) var(--str-chat__menu-roll-ease);
  transform-origin: left center;
}
.str-chat .str-chat__context-menu__submenu-container[data-str-chat-roll-from=right] > .str-chat__context-menu {
  animation: str-chat-context-menu-roll-in-from-right var(--str-chat__menu-roll-duration, 130ms) var(--str-chat__menu-roll-ease);
  transform-origin: right center;
}
.str-chat .str-chat__context-menu__submenu-container[data-str-chat-roll-from=top] > .str-chat__context-menu {
  animation: str-chat-context-menu-roll-in-from-top var(--str-chat__menu-roll-duration, 130ms) var(--str-chat__menu-roll-ease);
  transform-origin: center top;
}
.str-chat .str-chat__context-menu__submenu-container[data-str-chat-roll-from=bottom] > .str-chat__context-menu {
  animation: str-chat-context-menu-roll-in-from-bottom var(--str-chat__menu-roll-duration, 130ms) var(--str-chat__menu-roll-ease);
  transform-origin: center bottom;
}
.str-chat .str-chat__context-menu[data-str-chat-enable-animations=false],
.str-chat .str-chat__context-menu[data-str-chat-enable-animations=false] .str-chat__context-menu__body {
  animation: none !important;
  transform: none !important;
}
@media (prefers-reduced-motion: reduce) {
  .str-chat [data-str-chat-placement] > .str-chat__context-menu {
    animation: none;
  }
}

.str-chat__dialog-overlay {
  inset: 0;
  position: absolute;
  height: var(--str-chat__dialog-overlay-height);
  width: 100%;
  pointer-events: none;
}
.str-chat__dialog-overlay .str-chat__dialog-contents {
  pointer-events: auto;
}

.str-chat__dialog-overlay--with-outside-click-capture {
  pointer-events: auto;
}

.str-chat__prompt {
  border-radius: var(--str-chat__radius-xl);
  background: var(--str-chat__background-core-elevation-1);
  /* shadow/web/light/elevation-4 */
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.05), 0 6px 12px 0 rgba(0, 0, 0, 0.16), 0 20px 32px 0 rgba(0, 0, 0, 0.12);
  display: flex;
  flex-direction: column;
  width: 100%;
  min-height: 0;
}

.str-chat__prompt__header {
  display: flex;
  flex-shrink: 0;
  align-items: center;
  gap: var(--str-chat__spacing-md);
  width: 100%;
  padding: var(--str-chat__spacing-xl);
  /* Default (no description): a single flex row. `align-items: center`
     vertically centers the leading slot, back button, title and trailing
     controls against one another regardless of their individual heights — so
     the first-row alignment never depends on the controls sharing a height. */
}
.str-chat__prompt__header .str-chat__prompt__header__title-group {
  display: flex;
  align-items: center;
  gap: var(--str-chat__spacing-xxs);
  flex: 1;
  min-width: 0;
}
.str-chat__prompt__header {
  /* With a description the header becomes a grid. Every first-row item
     (leading slot, back button, title, trailing controls) is placed on the
     first grid row and centered via `align-items: center`, while the
     description occupies a second row aligned under the title. Centering stays
     robust because the row height is driven by the tallest control and all
     items center within it — no pixel/padding matching required. The
     title-group is flattened with `display: contents` so its children become
     direct grid items. */
}
.str-chat__prompt__header.str-chat__prompt__header--withDescription {
  display: grid;
  align-items: center;
  gap: 0;
  grid-template-columns: auto auto minmax(0, 1fr) auto;
  grid-template-areas: "leading goBack title       trailing" ".       .      description .";
}
.str-chat__prompt__header.str-chat__prompt__header--withDescription .str-chat__prompt__header__title-group {
  display: contents;
}
.str-chat__prompt__header.str-chat__prompt__header--withDescription {
  /* Inter-item spacing is applied as margins (rather than grid gaps) so that
     absent leading/back-button columns collapse without leaving phantom
     gaps before the title. */
}
.str-chat__prompt__header.str-chat__prompt__header--withDescription .str-chat__prompt__header__leading-content {
  grid-area: leading;
  margin-inline-end: var(--str-chat__spacing-md);
}
.str-chat__prompt__header.str-chat__prompt__header--withDescription .str-chat__prompt__header__go-back-button {
  grid-area: goBack;
  margin-inline-end: var(--str-chat__spacing-xxs);
}
.str-chat__prompt__header.str-chat__prompt__header--withDescription .str-chat__prompt__header__title {
  grid-area: title;
}
.str-chat__prompt__header.str-chat__prompt__header--withDescription .str-chat__prompt__header__description {
  grid-area: description;
}
.str-chat__prompt__header.str-chat__prompt__header--withDescription .str-chat__prompt__header__trailing-content {
  grid-area: trailing;
  margin-inline-start: var(--str-chat__spacing-md);
}
.str-chat__prompt__header .str-chat__prompt__header__title {
  margin: 0;
  padding-block: var(--str-chat__spacing-xs);
  font: var(--str-chat__font-heading-sm);
  color: var(--str-chat__text-primary);
}
.str-chat__prompt__header .str-chat__prompt__header__description {
  padding-block: var(--str-chat__spacing-xxxs);
  font: var(--str-chat__font-caption-default);
  color: var(--str-chat__text-secondary);
}
.str-chat__prompt__header .str-chat__prompt__header__leading-content,
.str-chat__prompt__header .str-chat__prompt__header__trailing-content {
  display: flex;
  flex-shrink: 0;
  gap: var(--str-chat__spacing-xs);
  align-items: center;
}
.str-chat__prompt__header .str-chat__prompt__header__close-button {
  flex-shrink: 0;
  color: var(--str-chat__text-primary);
}
.str-chat__prompt__header .str-chat__prompt__header__close-button .str-chat__icon {
  width: var(--str-chat__icon-size-sm);
  height: var(--str-chat__icon-size-sm);
}

.str-chat__prompt__body {
  /* Expand into the space left by the header/footer, but never overflow the
     prompt — content scrolls within instead of pushing the prompt taller. */
  flex: 1 1 auto;
  min-height: 0;
  /* Vertical padding so focus rings (e.g. TextInput wrapper box-shadow) are not clipped by scrollable-y */
  padding: var(--str-chat__spacing-xxs) var(--str-chat__spacing-xl);
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
}

.str-chat__prompt__footer {
  display: flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: flex-end;
  width: 100%;
  padding: var(--str-chat__spacing-xl);
}
.str-chat__prompt__footer .str-chat__prompt__footer__controls {
  display: flex;
  align-items: center;
  gap: var(--str-chat__spacing-xs);
}

.str-chat__viewer {
  border-radius: var(--str-chat__radius-xl);
  background: var(--str-chat__background-core-elevation-1);
  /* shadow/web/light/elevation-4 */
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.05), 0 6px 12px 0 rgba(0, 0, 0, 0.16), 0 20px 32px 0 rgba(0, 0, 0, 0.12);
  width: 100%;
  max-width: 520px;
  height: 100%;
  max-height: 640px;
  display: flex;
  flex-direction: column;
}
.str-chat__viewer .str-chat__viewer__header {
  display: flex;
  align-items: center;
  gap: var(--str-chat__spacing-xs) var(--str-chat__spacing-md);
  width: 100%;
  padding: var(--str-chat__spacing-xl);
}
.str-chat__viewer .str-chat__viewer__header .str-chat__viewer__header__title-group {
  display: flex;
  flex-direction: column;
  gap: var(--str-chat__spacing-xxs);
  flex: 1;
  min-width: 0;
}
.str-chat__viewer .str-chat__viewer__header .str-chat__viewer__header__title {
  margin: 0;
  font: var(--str-chat__font-heading-sm);
  color: var(--str-chat__text-primary);
}
.str-chat__viewer .str-chat__viewer__header .str-chat__viewer__header__description {
  font: var(--str-chat__font-caption-default);
  color: var(--str-chat__text-secondary);
}
.str-chat__viewer .str-chat__viewer__header .str-chat__viewer__header__go-back-button path {
  fill: none;
  stroke: currentColor;
  stroke-width: 1.5px;
}
.str-chat__viewer .str-chat__viewer__header .str-chat__viewer__header__close-button {
  align-self: flex-start;
  flex-shrink: 0;
  color: var(--str-chat__text-primary);
}
.str-chat__viewer .str-chat__viewer__body {
  padding: 0 var(--str-chat__spacing-xl);
  flex: 1;
  min-height: 0;
}
.str-chat__viewer .str-chat__viewer__footer {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  width: 100%;
  padding: var(--str-chat__spacing-xl);
}
.str-chat__viewer .str-chat__viewer__footer .str-chat__viewer__footer__controls {
  display: flex;
  align-items: center;
  gap: var(--str-chat__spacing-xs);
}

.str-chat {
  /* The border radius used for the borders of the content area of the component of the content area of the component */
  --str-chat__modal-border-radius: var(--str-chat__radius-xl);
  /* The text/icon color of the content area of the component */
  --str-chat__modal-color: var(--str-chat__text-primary);
  /* The background color of the content area of the component */
  --str-chat__modal-background-color: var(--str-chat__background-core-elevation-1);
  /* The overlay color of the component */
  --str-chat__modal-overlay-color: var(--str-chat__background-core-scrim);
  /* The backdrop filter applied to the component */
  --str-chat__modal-overlay-backdrop-filter: blur(3px);
  /* Top border of the content area of the component */
  --str-chat__modal-border-block-start: none;
  /* Bottom border of the content area of the component */
  --str-chat__modal-border-block-end: none;
  /* Left (right in RTL layout) border of the content area of the component */
  --str-chat__modal-border-inline-start: none;
  /* Right (left in RTL layout) border of the content area of the component */
  --str-chat__modal-border-inline-end: none;
  /* Box shadow applied to the content area of the component */
  --str-chat__modal-box-shadow: var(--str-chat__box-shadow-4);
}

.str-chat__modal--open {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 100%;
  z-index: 100;
  pointer-events: auto;
  background-color: var(--str-chat__modal-overlay-color);
  -webkit-backdrop-filter: var(--str-chat__modal-overlay-backdrop-filter);
          backdrop-filter: var(--str-chat__modal-overlay-backdrop-filter);
}
.str-chat__modal--open .str-chat__modal__floating-dialog-overlay {
  z-index: 1;
}
.str-chat__modal--open .str-chat__modal__overlay__close-button {
  position: absolute;
  inset-inline-end: 10px;
  top: 10px;
  padding: var(--str-chat__spacing-xs);
  color: var(--str-chat__text-on-accent);
}
.str-chat__modal--open .str-chat__modal__overlay__close-button svg {
  height: 12px;
  width: 12px;
}

.str-chat__ai-state-indicator-container {
  padding: 0 8px;
  background-color: var(--str-chat__background-core-surface-default);
}

.str-chat__ai-state-indicator-text {
  color: var(--str-chat__text-primary);
}

.str-chat {
  /* The margin applied to every attachment in the attachment list */
  --str-chat__attachment-margin: var(--str-chat__spacing-xs);
}

.str-chat__attachment-list {
  /* The maximum allowed width and height of attachments, in case of gallery images this is the maximum size of the whole gallery (not just for a single image inside the gallery). There are some constraints for the acceptable values you can provide for this variable, [Angular documentation](https://getstream.io/chat/docs/sdk/angular/components/AttachmentListComponent/#maximum-size), [React documentation](https://getstream.io/chat/docs/sdk/react/message-components/attachment/#image-and-video-sizing). */
  --str-chat__attachment-max-width: calc(
    var(--str-chat__message-max-width) - calc(2 * var(--str-chat__attachment-margin))
  );
  /* The maximum height of videos, the default value is the mase as `--str-chat__attachment-max-width`. The rendered video can be smaller based on the aspect ratio */
  --str-chat__video-height: var(--str-chat__attachment-max-width);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--str-chat__spacing-xs);
  min-width: 0;
  background: transparent;
  color: var(--str-chat__text-primary);
}
.str-chat__attachment-list .str-chat__message-attachment--image,
.str-chat__attachment-list .str-chat__message-attachment--video {
  background: transparent;
  color: var(--str-chat__text-primary);
  border-radius: calc(var(--str-chat__message-bubble-radius-group-bottom) - var(--str-chat__attachment-margin));
}
.str-chat__attachment-list .str-chat__message-attachment {
  overflow: hidden;
  background-color: var(--chat-bg-attachment);
  border-radius: var(--str-chat__message-bubble-radius-attachment);
}
.str-chat__attachment-list .str-chat__message-attachment .str-chat__button-play.str-chat__button--secondary.str-chat__button--outline {
  border-color: var(--chat-border-on-chat);
  background-color: transparent;
}
.str-chat__attachment-list .str-chat__message-attachment--image,
.str-chat__attachment-list .str-chat__message-attachment--video {
  width: auto;
  display: flex;
  justify-content: center;
  align-items: center;
  overflow: hidden;
}
.str-chat__attachment-list .str-chat__message-attachment--audio,
.str-chat__attachment-list .str-chat__message-attachment--file,
.str-chat__attachment-list .str-chat__message-attachment--unsupported,
.str-chat__attachment-list .str-chat__message-attachment--geolocation,
.str-chat__attachment-list .str-chat__message-attachment--voiceRecording,
.str-chat__attachment-list .str-chat__message-attachment--card {
  width: var(--str-chat__attachment-max-width);
  max-width: 100%;
}
.str-chat__attachment-list .str-chat__message-attachment--image:not(.str-chat__message-attachment--card) img {
  height: min(var(--str-chat__attachment-max-width), min(var(--str-chat__attachment-max-width, 1000000) / var(--original-width, 1000000), 1px) * var(--original-height, 1000000));
  max-width: var(--str-chat__attachment-max-width);
  max-height: var(--str-chat__attachment-max-width);
  object-fit: cover;
  width: 100%;
  cursor: zoom-in;
}
.str-chat__attachment-list .str-chat__message-attachment-card--video .str-chat__message-attachment-card--header,
.str-chat__attachment-list .str-chat__message-attachment--video:not(.str-chat__message-attachment--card) {
  max-width: var(--str-chat__attachment-max-width);
  display: flex;
}
.str-chat__attachment-list .str-chat__message-attachment-card--video .str-chat__message-attachment-card--header .str-chat__player-wrapper,
.str-chat__attachment-list .str-chat__message-attachment--video:not(.str-chat__message-attachment--card) .str-chat__player-wrapper {
  height: 100%;
  width: 100%;
  min-width: 0;
  max-width: var(--str-chat__attachment-max-width);
  display: flex;
  flex-direction: column;
}
.str-chat__attachment-list .str-chat__message-attachment-card--video .str-chat__message-attachment-card--header .str-chat__player-wrapper .react-player,
.str-chat__attachment-list .str-chat__message-attachment--video:not(.str-chat__message-attachment--card) .str-chat__player-wrapper .react-player {
  height: 100%;
  width: 100%;
  max-width: var(--str-chat__attachment-max-width);
  max-height: 100%;
  min-height: 0;
}
.str-chat__attachment-list .str-chat__message-attachment--video:not(.str-chat__message-attachment--card):not(.str-chat__message-attachment-dynamic-size) {
  height: var(--str-chat__video-height);
}
.str-chat__attachment-list .str-chat__message-attachment--video.str-chat__message-attachment-dynamic-size:not(.str-chat__message-attachment--card) {
  max-height: var(--str-chat__video-height);
}
.str-chat__attachment-list .str-chat__message-attachment--video.str-chat__message-attachment-dynamic-size:not(.str-chat__message-attachment--card) .str-chat__player-wrapper {
  height: min(var(--str-chat__video-height), min(var(--str-chat__attachment-max-width, 1000000) / var(--original-width, 1000000), 1px) * var(--original-height, 1000000));
  max-height: var(--str-chat__video-height);
}
.str-chat__attachment-list .str-chat__message-attachment--svg-image {
  background-image: repeating-conic-gradient(#d4d5d7 0% 25%, #f4f4f4 0% 50%);
  background-size: 24px 24px;
}
.str-chat__attachment-list .str-chat__gallery .str-chat__message-attachment--svg-image,
.str-chat__attachment-list .str-chat__message-attachment--image.str-chat__message-attachment--svg-image {
  padding: var(--str-chat__space-24);
}
.str-chat__attachment-list .str-chat__gallery .str-chat__message-attachment--svg-image img,
.str-chat__attachment-list .str-chat__message-attachment--image.str-chat__message-attachment--svg-image img {
  object-fit: contain;
  max-width: calc(var(--str-chat__attachment-max-width) - var(--str-chat__space-24));
  max-height: calc(var(--str-chat__attachment-max-width) - var(--str-chat__space-24));
}
.str-chat__attachment-list .str-chat__message-attachment-file--item,
.str-chat__attachment-list .str-chat__message-attachment-audio-widget {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: var(--str-chat__spacing-sm);
  column-gap: var(--str-chat__spacing-sm);
}
.str-chat__attachment-list .str-chat__message-attachment-file--item .str-chat__message-attachment-file--item__info,
.str-chat__attachment-list .str-chat__message-attachment-file--item .str-chat__message-attachment-audio-widget--text,
.str-chat__attachment-list .str-chat__message-attachment-audio-widget .str-chat__message-attachment-file--item__info,
.str-chat__attachment-list .str-chat__message-attachment-audio-widget .str-chat__message-attachment-audio-widget--text {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  row-gap: var(--str-chat__space-2);
  min-width: 0;
  line-height: var(--str-chat__typography-line-height-tight);
}
.str-chat__attachment-list .str-chat__message-attachment-file--item .str-chat__message-attachment-file--item__info .str-chat__message-attachment-file--item__first-row,
.str-chat__attachment-list .str-chat__message-attachment-file--item .str-chat__message-attachment-file--item__info .str-chat__message-attachment-audio-widget--text-first-row,
.str-chat__attachment-list .str-chat__message-attachment-file--item .str-chat__message-attachment-audio-widget--text .str-chat__message-attachment-file--item__first-row,
.str-chat__attachment-list .str-chat__message-attachment-file--item .str-chat__message-attachment-audio-widget--text .str-chat__message-attachment-audio-widget--text-first-row,
.str-chat__attachment-list .str-chat__message-attachment-audio-widget .str-chat__message-attachment-file--item__info .str-chat__message-attachment-file--item__first-row,
.str-chat__attachment-list .str-chat__message-attachment-audio-widget .str-chat__message-attachment-file--item__info .str-chat__message-attachment-audio-widget--text-first-row,
.str-chat__attachment-list .str-chat__message-attachment-audio-widget .str-chat__message-attachment-audio-widget--text .str-chat__message-attachment-file--item__first-row,
.str-chat__attachment-list .str-chat__message-attachment-audio-widget .str-chat__message-attachment-audio-widget--text .str-chat__message-attachment-audio-widget--text-first-row {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  column-gap: var(--str-chat__space-8);
  font: var(--str-chat__font-caption-emphasis);
}
.str-chat__attachment-list .str-chat__message-attachment-file--item .str-chat__message-attachment-file--item__info .str-chat__message-attachment-file--item__first-row .str-chat__message-attachment-file--item__name,
.str-chat__attachment-list .str-chat__message-attachment-file--item .str-chat__message-attachment-file--item__info .str-chat__message-attachment-file--item__first-row .str-chat__message-attachment-audio-widget--title,
.str-chat__attachment-list .str-chat__message-attachment-file--item .str-chat__message-attachment-file--item__info .str-chat__message-attachment-audio-widget--text-first-row .str-chat__message-attachment-file--item__name,
.str-chat__attachment-list .str-chat__message-attachment-file--item .str-chat__message-attachment-file--item__info .str-chat__message-attachment-audio-widget--text-first-row .str-chat__message-attachment-audio-widget--title,
.str-chat__attachment-list .str-chat__message-attachment-file--item .str-chat__message-attachment-audio-widget--text .str-chat__message-attachment-file--item__first-row .str-chat__message-attachment-file--item__name,
.str-chat__attachment-list .str-chat__message-attachment-file--item .str-chat__message-attachment-audio-widget--text .str-chat__message-attachment-file--item__first-row .str-chat__message-attachment-audio-widget--title,
.str-chat__attachment-list .str-chat__message-attachment-file--item .str-chat__message-attachment-audio-widget--text .str-chat__message-attachment-audio-widget--text-first-row .str-chat__message-attachment-file--item__name,
.str-chat__attachment-list .str-chat__message-attachment-file--item .str-chat__message-attachment-audio-widget--text .str-chat__message-attachment-audio-widget--text-first-row .str-chat__message-attachment-audio-widget--title,
.str-chat__attachment-list .str-chat__message-attachment-audio-widget .str-chat__message-attachment-file--item__info .str-chat__message-attachment-file--item__first-row .str-chat__message-attachment-file--item__name,
.str-chat__attachment-list .str-chat__message-attachment-audio-widget .str-chat__message-attachment-file--item__info .str-chat__message-attachment-file--item__first-row .str-chat__message-attachment-audio-widget--title,
.str-chat__attachment-list .str-chat__message-attachment-audio-widget .str-chat__message-attachment-file--item__info .str-chat__message-attachment-audio-widget--text-first-row .str-chat__message-attachment-file--item__name,
.str-chat__attachment-list .str-chat__message-attachment-audio-widget .str-chat__message-attachment-file--item__info .str-chat__message-attachment-audio-widget--text-first-row .str-chat__message-attachment-audio-widget--title,
.str-chat__attachment-list .str-chat__message-attachment-audio-widget .str-chat__message-attachment-audio-widget--text .str-chat__message-attachment-file--item__first-row .str-chat__message-attachment-file--item__name,
.str-chat__attachment-list .str-chat__message-attachment-audio-widget .str-chat__message-attachment-audio-widget--text .str-chat__message-attachment-file--item__first-row .str-chat__message-attachment-audio-widget--title,
.str-chat__attachment-list .str-chat__message-attachment-audio-widget .str-chat__message-attachment-audio-widget--text .str-chat__message-attachment-audio-widget--text-first-row .str-chat__message-attachment-file--item__name,
.str-chat__attachment-list .str-chat__message-attachment-audio-widget .str-chat__message-attachment-audio-widget--text .str-chat__message-attachment-audio-widget--text-first-row .str-chat__message-attachment-audio-widget--title {
  white-space: nowrap;
  overflow-y: visible;
  overflow-x: hidden;
  overflow-x: clip;
  text-overflow: ellipsis;
  min-width: 0;
}
.str-chat__attachment-list .str-chat__message-attachment-file--item .str-chat__message-attachment-file--item__info .str-chat__message-attachment-file--item__data,
.str-chat__attachment-list .str-chat__message-attachment-file--item .str-chat__message-attachment-audio-widget--text .str-chat__message-attachment-file--item__data,
.str-chat__attachment-list .str-chat__message-attachment-audio-widget .str-chat__message-attachment-file--item__info .str-chat__message-attachment-file--item__data,
.str-chat__attachment-list .str-chat__message-attachment-audio-widget .str-chat__message-attachment-audio-widget--text .str-chat__message-attachment-file--item__data {
  font: var(--str-chat__font-metadata-default);
}
.str-chat__attachment-list .str-chat__message-attachment-file--item {
  background: transparent;
  color: var(--str-chat__text-primary);
  border-radius: calc(var(--str-chat__message-bubble-radius-group-bottom) - var(--str-chat__attachment-margin));
}
.str-chat__attachment-list .str-chat__message-attachment-download-icon {
  --str-chat-icon-height: var(--str-chat__size-16);
}

.str-chat__message.str-chat__message--has-single-attachment.str-chat__message--has-no-text:not(.str-chat__message--has-quoted-message) .str-chat__message-bubble {
  padding: 0;
}

.str-chat__message.str-chat__message--has-single-attachment.str-chat__message--has-no-text .str-chat__attachment-list {
  --str-chat__attachment-max-width: var(--str-chat__message-max-width);
}
.str-chat__message.str-chat__message--has-single-attachment.str-chat__message--has-no-text .str-chat__message-bubble {
  border: 1px solid var(--chat-border);
  box-shadow: var(--str-chat__background-core-elevation-0);
}
.str-chat__message.str-chat__message--has-single-attachment.str-chat__message--has-no-text .str-chat__message-attachment {
  background-color: var(--chat-bg);
}

.str-chat__message--me .str-chat__attachment-list {
  align-items: flex-end;
}

.str-chat__li--single .str-chat__message--other.str-chat__message--has-single-attachment.str-chat__message--has-no-text .str-chat__message-attachment,
.str-chat__li--bottom .str-chat__message--other.str-chat__message--has-single-attachment.str-chat__message--has-no-text .str-chat__message-attachment {
  border-end-start-radius: var(--str-chat__message-bubble-radius-tail);
}
.str-chat__li--single .str-chat__message--me.str-chat__message--has-single-attachment.str-chat__message--has-no-text .str-chat__message-attachment,
.str-chat__li--bottom .str-chat__message--me.str-chat__message--has-single-attachment.str-chat__message--has-no-text .str-chat__message-attachment {
  border-end-end-radius: var(--str-chat__message-bubble-radius-tail);
}

.str-chat__li--top.str-chat__message--has-single-attachment.str-chat__message--has-no-text .str-chat__message-attachment,
.str-chat__li--middle.str-chat__message--has-single-attachment.str-chat__message--has-no-text .str-chat__message-attachment {
  border-radius: var(--str-chat__message-bubble-radius-group-middle);
}

.str-chat__message--has-text .str-chat__attachment-list {
  padding-bottom: 0;
}

.str-chat__message-attachment-actions {
  background: transparent;
  color: var(--str-chat__button-secondary-text);
}
.str-chat__message-attachment-actions .str-chat__message-attachment-actions-form {
  display: flex;
  justify-content: stretch;
  height: 48px;
}
.str-chat__message-attachment-actions .str-chat__message-attachment-actions-form .str-chat__message-attachment-actions-button {
  background: transparent;
  color: var(--str-chat__button-secondary-text);
  width: 100%;
  padding: var(--str-chat__button-padding-y-sm) var(--str-chat__button-padding-x-with-label-sm);
  white-space: nowrap;
  border-collapse: collapse;
  font: var(--str-chat__font-body-emphasis);
}
.str-chat__message-attachment-actions .str-chat__message-attachment-actions-form .str-chat__message-attachment-actions-button.str-chat__button:active {
  color: var(--str-chat__accent-primary);
}
.str-chat__message-attachment-actions .str-chat__message-attachment-actions-form .str-chat__message-attachment-actions-button.str-chat__button:focus-visible {
  color: var(--str-chat__accent-primary);
  outline: 2px solid var(--str-chat__border-utility-focused);
  outline-offset: 2px;
}

.str-chat__message-attachment-audio-widget {
  background: transparent;
  color: var(--str-chat__text-primary);
  border-radius: calc(var(--str-chat__message-bubble-radius-group-bottom) - var(--str-chat__attachment-margin));
  flex: 1 1 auto;
  width: 100%;
  min-width: 0;
}
.str-chat__message-attachment-audio-widget .str-chat__message-attachment-audio-widget--play-controls {
  display: flex;
  align-items: center;
  justify-content: center;
}
.str-chat__message-attachment-audio-widget .str-chat__message-attachment-audio-widget--data {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: var(--str-chat__spacing-xxs);
}
.str-chat__message-attachment-audio-widget .str-chat__message-attachment-audio-widget--text-first-row {
  display: flex;
  justify-content: space-between;
  align-items: start;
  gap: var(--str-chat__spacing-xs);
}
.str-chat__message-attachment-audio-widget .str-chat__message-attachment-audio-widget--text-first-row svg {
  flex-shrink: 0;
}
.str-chat__message-attachment-audio-widget .str-chat__message-attachment-audio-widget--title {
  font: var(--str-chat__font-caption-emphasis);
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  word-break: break-word;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.str-chat__message-attachment-audio-widget .str-chat__duration-display {
  width: 40px;
  font: var(--str-chat__font-metadata-default);
  color: var(--str-chat__text-secondary);
}
.str-chat__message-attachment-audio-widget .str-chat__message-attachment-audio-widget--text-second-row {
  display: flex;
  align-items: center;
  width: 100%;
  gap: var(--str-chat__spacing-xs);
}
.str-chat__message-attachment-audio-widget .str-chat__message-attachment-audio-widget--text-second-row .str-chat__message-attachment-file--item-size {
  font: var(--str-chat__font-metadata-default);
}

.str-chat__message-attachment-card--audio .str-chat__message-attachment-card--content {
  padding: 0;
}
.str-chat__message-attachment-card--audio .str-chat__message-attachment-card--content .str-chat__message-attachment-card-audio-widget {
  display: flex;
  flex-direction: column;
  width: 100%;
  padding: var(--str-chat__spacing-md);
}

.str-chat__button.str-chat__button--secondary.str-chat__button--outline.str-chat__audio-attachment-download-button {
  border-color: var(--str-chat__chat-border-on-chat-incoming);
  flex-shrink: 0;
}
.str-chat__button.str-chat__button--secondary.str-chat__button--outline.str-chat__audio-attachment-download-button .str-chat__attachment-download-button__icon {
  height: 20px;
  width: 20px;
}

.str-chat__message--me .str-chat__button.str-chat__button--outline.str-chat__audio-attachment-download-button {
  border-color: var(--str-chat__chat-border-on-chat-outgoing);
}

.str-chat__message-attachment-geolocation {
  background: var(--chat-bg-attachment);
  color: var(--chat-text);
  border-radius: calc(var(--str-chat__message-bubble-radius-group-bottom) - var(--str-chat__attachment-margin));
  display: flex;
  flex-direction: column;
  height: 200px;
  width: 100%;
  max-width: var(--str-chat__attachment-max-width);
}
.str-chat__message-attachment-geolocation .str-chat__message-attachment-geolocation__location-preview {
  flex: 1;
}
.str-chat__message-attachment-geolocation .str-chat__message-attachment-geolocation__placeholder {
  position: relative;
  flex: 1;
  width: 100%;
  height: 100%;
  min-width: 0;
  min-height: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background-color: var(--str-chat__background-core-overlay-light);
}
.str-chat__message-attachment-geolocation .str-chat__message-attachment-geolocation__placeholder .str-chat__icon {
  fill: var(--str-chat__accent-neutral);
  height: 40px;
  width: 40px;
}
.str-chat__message-attachment-geolocation .str-chat__message-attachment-geolocation__placeholder .str-chat__message-attachment-geolocation__placeholder-link {
  position: absolute;
  inset-inline-end: 0.5rem;
  inset-block: 0.5rem;
  height: 12px;
  width: 12px;
  color: var(--str-chat__accent-neutral);
}
.str-chat__message-attachment-geolocation .str-chat__message-attachment-geolocation__status {
  display: flex;
  justify-content: center;
  padding: 0.5rem;
  background-color: var(--str-chat__background-core-surface-subtle);
  font: var(--str-chat__font-caption-default);
}
.str-chat__message-attachment-geolocation .str-chat__message-attachment-geolocation__status .str-chat__message-attachment-geolocation__status--active {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.375rem;
}
.str-chat__message-attachment-geolocation .str-chat__message-attachment-geolocation__status .str-chat__message-attachment-geolocation__status--active .str-chat__message-attachment-geolocation__status--active-status {
  color: var(--str-chat__accent-success);
}
.str-chat__message-attachment-geolocation .str-chat__message-attachment-geolocation__status .str-chat__message-attachment-geolocation__status--active .str-chat__message-attachment-geolocation__status--active-until {
  text-transform: lowercase;
  font: var(--str-chat__font-metadata-emphasis);
}

.str-chat__message-attachment-giphy {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}
.str-chat__message-attachment-giphy img.str-chat__base-image {
  height: min(var(--str-chat__attachment-max-width), min(var(--str-chat__attachment-max-width, 1000000) / var(--original-width, 1000000), 1px) * var(--original-height, 1000000));
  object-fit: contain;
  max-height: var(--str-chat__attachment-max-width);
  max-width: var(--str-chat__attachment-max-width);
  width: 100%;
  cursor: default;
}
.str-chat__message-attachment-giphy .str-chat__image-placeholder {
  height: 200px;
  width: var(--str-chat__attachment-max-width);
}

.str-chat__giphy-badge {
  display: inline-flex;
  height: 24px;
  padding: var(--str-chat__spacing-xxxs) var(--str-chat__spacing-xs);
  justify-content: center;
  align-items: center;
  gap: var(--str-chat__spacing-xxs);
  position: absolute;
  inset-inline-start: 8px;
  bottom: 8px;
  border-radius: var(--str-chat__radius-lg);
  background-color: var(--str-chat__badge-bg-overlay);
  color: var(--str-chat__badge-text-on-accent);
  font: var(--str-chat__font-metadata-emphasis);
  text-transform: uppercase;
}

.str-chat__message-attachment--giphy--actions .str-chat__message-attachment-giphy {
  height: 200px;
}
.str-chat__message-attachment--giphy--actions .str-chat__message-attachment-giphy img.str-chat__base-image {
  height: 200px;
}
.str-chat__message-attachment--giphy--actions .str-chat__visibility-disclaimer {
  display: flex;
  padding: var(--str-chat__spacing-sm, 12px);
  align-items: center;
  gap: var(--str-chat__spacing-xs, 8px);
  align-self: stretch;
  color: var(--chat-text);
  font: var(--str-chat__font-caption-emphasis);
}

.str-chat__message-attachment-card {
  /* The height of scraped images, the default value is optimized for 1.91:1 aspect ratio */
  --str-chat__scraped-image-height: calc(
    var(--str-chat__attachment-max-width) * calc(1 / 1.91)
  );
  width: 100%;
  display: flex;
  gap: var(--str-chat__spacing-xs);
  padding: var(--str-chat__spacing-xs) var(--str-chat__spacing-sm) var(--str-chat__spacing-xs) var(--str-chat__spacing-xs);
  overflow: hidden;
  border-radius: var(--str-chat__message-bubble-radius-attachment);
  line-height: var(--str-chat__typography-line-height-tight);
}
.str-chat__message-attachment-card * {
  color: var(--chat-text);
}
.str-chat__message-attachment-card .str-chat__message-attachment-card--header {
  position: relative;
  width: auto;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-shrink: 0;
  overflow: hidden;
}
.str-chat__message-attachment-card .str-chat__message-attachment-card--header img,
.str-chat__message-attachment-card .str-chat__message-attachment-card--header .str-chat__image-placeholder {
  border-radius: var(--str-chat__message-bubble-radius-attachment-inline, 8px);
}
.str-chat__message-attachment-card .str-chat__message-attachment-card--header img {
  object-fit: cover;
  width: 40px;
  height: 40px;
}
.str-chat__message-attachment-card.str-chat__message-attachment-card--video .str-chat__message-attachment-card--header {
  height: calc(var(--str-chat__attachment-max-width) * 0.5625);
}
.str-chat__message-attachment-card .str-chat__message-attachment-card--content {
  display: flex;
  flex-direction: column;
  gap: var(--str-chat__spacing-xxs);
  min-width: 0;
}
.str-chat__message-attachment-card .str-chat__message-attachment-card--title {
  font: var(--str-chat__font-caption-emphasis);
}
.str-chat__message-attachment-card .str-chat__message-attachment-card--source-link,
.str-chat__message-attachment-card .str-chat__message-attachment-card--text {
  font: var(--str-chat__font-metadata-default);
}
.str-chat__message-attachment-card .str-chat__message-attachment-card--title,
.str-chat__message-attachment-card .str-chat__message-attachment-card--url {
  white-space: nowrap;
  overflow-y: visible;
  overflow-x: hidden;
  overflow-x: clip;
  text-overflow: ellipsis;
}
.str-chat__message-attachment-card .str-chat__message-attachment-card--text {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  overflow: hidden;
  text-overflow: ellipsis;
  font: var(--str-chat__font-metadata-default);
}
.str-chat__message-attachment-card .str-chat__message-attachment-card--source-link {
  display: flex;
  align-items: center;
  min-width: 0;
  max-width: 100%;
  gap: var(--str-chat__spacing-xxs);
}
.str-chat__message-attachment-card .str-chat__message-attachment-card--source-link .str-chat__message-attachment-card--url {
  flex: 1;
  min-width: 0;
}

.str-chat__message--has-single-attachment .str-chat__message-attachment-card {
  display: block;
  padding: 0;
}
.str-chat__message--has-single-attachment .str-chat__message-attachment-card img {
  aspect-ratio: 1.91/1;
  width: 100%;
  height: auto;
  max-height: var(--str-chat__scraped-image-height);
  border-radius: 0;
}
.str-chat__message--has-single-attachment .str-chat__message-attachment-card .str-chat__message-attachment-card--header:has(.str-chat__image-placeholder) {
  aspect-ratio: 1.91/1;
  height: auto;
}
.str-chat__message--has-single-attachment .str-chat__message-attachment-card .str-chat__message-attachment-card--header:has(.str-chat__image-placeholder) .str-chat__image-placeholder {
  border-radius: 0;
}
.str-chat__message--has-single-attachment .str-chat__message-attachment-card .str-chat__message-attachment-card--content {
  padding: var(--str-chat__spacing-sm);
}
.str-chat__message--has-single-attachment .str-chat__message-attachment-card .str-chat__message-attachment-card--content .str-chat__message-attachment-card--text {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  text-overflow: ellipsis;
}

.str-chat__attachment-list .str-chat__message-attachment--gallery,
.str-chat__attachment-list .str-chat__message-attachment--image {
  min-width: 0;
  max-width: 100%;
}
.str-chat__attachment-list .str-chat__message-attachment--gallery .str-chat__modal-gallery,
.str-chat__attachment-list .str-chat__message-attachment--image .str-chat__modal-gallery {
  background-color: var(--chat-bg);
  color: var(--str-chat__text-primary);
  border-radius: calc(var(--str-chat__message-bubble-radius-group-bottom) - var(--str-chat__attachment-margin));
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: 1fr 1fr;
  overflow: hidden;
  border-radius: var(--str-chat__radius-lg);
  gap: var(--str-chat__spacing-xxs);
  width: var(--str-chat__attachment-max-width);
  max-width: 100%;
  aspect-ratio: 4/3;
}
.str-chat__attachment-list .str-chat__message-attachment--gallery .str-chat__modal-gallery .str-chat__modal-gallery__image,
.str-chat__attachment-list .str-chat__message-attachment--image .str-chat__modal-gallery .str-chat__modal-gallery__image {
  width: 100%;
  height: 100%;
  min-width: 0;
  min-height: 0;
  border-radius: var(--str-chat__radius-md);
}
.str-chat__attachment-list .str-chat__message-attachment--gallery .str-chat__modal-gallery .str-chat__modal-gallery__image.str-chat__modal-gallery__image--loading, .str-chat__attachment-list .str-chat__message-attachment--gallery .str-chat__modal-gallery .str-chat__modal-gallery__image.str-chat__modal-gallery__image--load-failed,
.str-chat__attachment-list .str-chat__message-attachment--image .str-chat__modal-gallery .str-chat__modal-gallery__image.str-chat__modal-gallery__image--loading,
.str-chat__attachment-list .str-chat__message-attachment--image .str-chat__modal-gallery .str-chat__modal-gallery__image.str-chat__modal-gallery__image--load-failed {
  min-height: 0;
}
.str-chat__attachment-list .str-chat__message-attachment--gallery .str-chat__modal-gallery .str-chat__modal-gallery__image:only-child,
.str-chat__attachment-list .str-chat__message-attachment--image .str-chat__modal-gallery .str-chat__modal-gallery__image:only-child {
  grid-column: 1/-1;
  grid-row: 1/-1;
  border-radius: var(--str-chat__radius-lg);
}
.str-chat__attachment-list .str-chat__message-attachment--gallery .str-chat__modal-gallery .str-chat__modal-gallery__image:nth-child(1),
.str-chat__attachment-list .str-chat__message-attachment--image .str-chat__modal-gallery .str-chat__modal-gallery__image:nth-child(1) {
  border-start-start-radius: var(--str-chat__radius-lg);
}
.str-chat__attachment-list .str-chat__message-attachment--gallery .str-chat__modal-gallery .str-chat__modal-gallery__image:nth-child(2),
.str-chat__attachment-list .str-chat__message-attachment--image .str-chat__modal-gallery .str-chat__modal-gallery__image:nth-child(2) {
  border-start-end-radius: var(--str-chat__radius-lg);
}
.str-chat__attachment-list .str-chat__message-attachment--gallery .str-chat__modal-gallery .str-chat__modal-gallery__image:nth-child(3),
.str-chat__attachment-list .str-chat__message-attachment--image .str-chat__modal-gallery .str-chat__modal-gallery__image:nth-child(3) {
  border-end-start-radius: var(--str-chat__radius-lg);
}
.str-chat__attachment-list .str-chat__message-attachment--gallery .str-chat__modal-gallery .str-chat__modal-gallery__image:nth-child(4),
.str-chat__attachment-list .str-chat__message-attachment--image .str-chat__modal-gallery .str-chat__modal-gallery__image:nth-child(4) {
  border-end-end-radius: var(--str-chat__radius-lg);
}
.str-chat__attachment-list .str-chat__message-attachment--gallery .str-chat__modal-gallery.str-chat__modal-gallery--two-images,
.str-chat__attachment-list .str-chat__message-attachment--image .str-chat__modal-gallery.str-chat__modal-gallery--two-images {
  grid-template-rows: 1fr;
}
.str-chat__attachment-list .str-chat__message-attachment--gallery .str-chat__modal-gallery.str-chat__modal-gallery--two-images .str-chat__modal-gallery__image:nth-child(1),
.str-chat__attachment-list .str-chat__message-attachment--image .str-chat__modal-gallery.str-chat__modal-gallery--two-images .str-chat__modal-gallery__image:nth-child(1) {
  border-end-start-radius: var(--str-chat__radius-lg);
}
.str-chat__attachment-list .str-chat__message-attachment--gallery .str-chat__modal-gallery.str-chat__modal-gallery--two-images .str-chat__modal-gallery__image:nth-child(2),
.str-chat__attachment-list .str-chat__message-attachment--image .str-chat__modal-gallery.str-chat__modal-gallery--two-images .str-chat__modal-gallery__image:nth-child(2) {
  border-end-end-radius: var(--str-chat__radius-lg);
}
.str-chat__attachment-list .str-chat__message-attachment--gallery .str-chat__modal-gallery.str-chat__modal-gallery--three-images .str-chat__modal-gallery__image:nth-child(1),
.str-chat__attachment-list .str-chat__message-attachment--image .str-chat__modal-gallery.str-chat__modal-gallery--three-images .str-chat__modal-gallery__image:nth-child(1) {
  grid-column: 1;
  grid-row: 1/span 2;
  border-end-start-radius: var(--str-chat__radius-lg);
}
.str-chat__attachment-list .str-chat__message-attachment--gallery .str-chat__modal-gallery.str-chat__modal-gallery--three-images .str-chat__modal-gallery__image:nth-child(2),
.str-chat__attachment-list .str-chat__message-attachment--image .str-chat__modal-gallery.str-chat__modal-gallery--three-images .str-chat__modal-gallery__image:nth-child(2) {
  grid-column: 2;
  grid-row: 1;
  border-start-end-radius: var(--str-chat__radius-lg);
}
.str-chat__attachment-list .str-chat__message-attachment--gallery .str-chat__modal-gallery.str-chat__modal-gallery--three-images .str-chat__modal-gallery__image:nth-child(3),
.str-chat__attachment-list .str-chat__message-attachment--image .str-chat__modal-gallery.str-chat__modal-gallery--three-images .str-chat__modal-gallery__image:nth-child(3) {
  grid-column: 2;
  grid-row: 2;
  border-end-end-radius: var(--str-chat__radius-lg);
}
.str-chat__attachment-list .str-chat__message-attachment--gallery .str-chat__modal-gallery .str-chat__modal-gallery__placeholder,
.str-chat__attachment-list .str-chat__message-attachment--image .str-chat__modal-gallery .str-chat__modal-gallery__placeholder {
  display: flex;
  align-items: center;
  justify-content: center;
  background-size: cover;
  background-position: top left;
  background-repeat: no-repeat;
  margin: 0;
  cursor: zoom-in;
  max-width: var(--str-chat__attachment-max-width);
  color: var(--str-chat__text-on-inverse);
  border: none;
  font-size: var(--str-chat__typography-font-size-2xl);
  font-weight: var(--str-chat__typography-font-weight-medium);
  line-height: var(--str-chat__typography-line-height-relaxed);
  inset: 0;
  position: absolute;
  background-color: var(--str-chat__background-core-scrim);
}
.str-chat__attachment-list .str-chat__message-attachment--giphy .str-chat__modal-gallery__image,
.str-chat__attachment-list .str-chat__message-attachment--gallery .str-chat__modal-gallery__image,
.str-chat__attachment-list .str-chat__message-attachment--image .str-chat__modal-gallery__image {
  background: none;
  border: none;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  overflow: hidden;
  position: relative;
  background-color: transparent;
  border: 0;
}
.str-chat__attachment-list .str-chat__message-attachment--giphy .str-chat__modal-gallery__image img,
.str-chat__attachment-list .str-chat__message-attachment--gallery .str-chat__modal-gallery__image img,
.str-chat__attachment-list .str-chat__message-attachment--image .str-chat__modal-gallery__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  cursor: zoom-in;
  max-width: var(--str-chat__attachment-max-width);
  max-height: var(--str-chat__attachment-max-width);
  transition: opacity 150ms ease-in-out;
}
.str-chat__attachment-list .str-chat__message-attachment--giphy .str-chat__modal-gallery__image.str-chat__modal-gallery__image--loading,
.str-chat__attachment-list .str-chat__message-attachment--gallery .str-chat__modal-gallery__image.str-chat__modal-gallery__image--loading,
.str-chat__attachment-list .str-chat__message-attachment--image .str-chat__modal-gallery__image.str-chat__modal-gallery__image--loading {
  min-height: 200px;
  align-items: stretch;
}
.str-chat__attachment-list .str-chat__message-attachment--giphy .str-chat__modal-gallery__image.str-chat__modal-gallery__image--loading img,
.str-chat__attachment-list .str-chat__message-attachment--gallery .str-chat__modal-gallery__image.str-chat__modal-gallery__image--loading img,
.str-chat__attachment-list .str-chat__message-attachment--image .str-chat__modal-gallery__image.str-chat__modal-gallery__image--loading img {
  position: absolute;
  opacity: 0;
}
.str-chat__attachment-list .str-chat__message-attachment--giphy .str-chat__modal-gallery__image.str-chat__modal-gallery__image--loading .str-chat__modal-gallery__image-loading-overlay,
.str-chat__attachment-list .str-chat__message-attachment--gallery .str-chat__modal-gallery__image.str-chat__modal-gallery__image--loading .str-chat__modal-gallery__image-loading-overlay,
.str-chat__attachment-list .str-chat__message-attachment--image .str-chat__modal-gallery__image.str-chat__modal-gallery__image--loading .str-chat__modal-gallery__image-loading-overlay {
  position: static;
  flex: 1;
  min-width: 0;
  height: auto;
}
.str-chat__attachment-list .str-chat__message-attachment--giphy .str-chat__modal-gallery__image.str-chat__modal-gallery__image--load-failed,
.str-chat__attachment-list .str-chat__message-attachment--gallery .str-chat__modal-gallery__image.str-chat__modal-gallery__image--load-failed,
.str-chat__attachment-list .str-chat__message-attachment--image .str-chat__modal-gallery__image.str-chat__modal-gallery__image--load-failed {
  cursor: pointer;
  min-height: 200px;
  align-items: stretch;
}
.str-chat__attachment-list .str-chat__message-attachment--giphy .str-chat__modal-gallery__image.str-chat__modal-gallery__image--load-failed .str-chat__image-placeholder.str-chat__base-image--load-failed,
.str-chat__attachment-list .str-chat__message-attachment--gallery .str-chat__modal-gallery__image.str-chat__modal-gallery__image--load-failed .str-chat__image-placeholder.str-chat__base-image--load-failed,
.str-chat__attachment-list .str-chat__message-attachment--image .str-chat__modal-gallery__image.str-chat__modal-gallery__image--load-failed .str-chat__image-placeholder.str-chat__base-image--load-failed {
  flex: 1;
  min-width: 0;
  height: auto;
}
.str-chat__attachment-list .str-chat__message-attachment--giphy .str-chat__modal-gallery__image.str-chat__modal-gallery__image--load-failed img,
.str-chat__attachment-list .str-chat__message-attachment--gallery .str-chat__modal-gallery__image.str-chat__modal-gallery__image--load-failed img,
.str-chat__attachment-list .str-chat__message-attachment--image .str-chat__modal-gallery__image.str-chat__modal-gallery__image--load-failed img {
  opacity: 0;
  cursor: pointer;
}
.str-chat__attachment-list .str-chat__message-attachment--giphy .str-chat__modal-gallery__image .str-chat__modal-gallery__image-load-failed-overlay,
.str-chat__attachment-list .str-chat__message-attachment--gallery .str-chat__modal-gallery__image .str-chat__modal-gallery__image-load-failed-overlay,
.str-chat__attachment-list .str-chat__message-attachment--image .str-chat__modal-gallery__image .str-chat__modal-gallery__image-load-failed-overlay {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  pointer-events: none;
}
.str-chat__attachment-list .str-chat__message-attachment--giphy .str-chat__modal-gallery__image .str-chat__modal-gallery__image-loading-overlay,
.str-chat__attachment-list .str-chat__message-attachment--gallery .str-chat__modal-gallery__image .str-chat__modal-gallery__image-loading-overlay,
.str-chat__attachment-list .str-chat__message-attachment--image .str-chat__modal-gallery__image .str-chat__modal-gallery__image-loading-overlay {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: var(--str-chat__background-core-overlay-light);
  background-image: linear-gradient(90deg, var(--str-chat__skeleton-loading-base) 0%, var(--str-chat__skeleton-loading-highlight) 50%, var(--str-chat__skeleton-loading-base) 100%);
  background-repeat: no-repeat;
  background-size: 200% 100%;
  animation: str-chat__modal-gallery-loading-shimmer 1.2s linear infinite;
  pointer-events: none;
}
.str-chat__attachment-list .str-chat__message-attachment--giphy .str-chat__modal-gallery__image .str-chat__modal-gallery__image-loading-overlay .str-chat__loading-indicator,
.str-chat__attachment-list .str-chat__message-attachment--gallery .str-chat__modal-gallery__image .str-chat__modal-gallery__image-loading-overlay .str-chat__loading-indicator,
.str-chat__attachment-list .str-chat__message-attachment--image .str-chat__modal-gallery__image .str-chat__modal-gallery__image-loading-overlay .str-chat__loading-indicator {
  position: relative;
  z-index: 1;
  width: var(--str-chat__icon-size-lg);
  height: var(--str-chat__icon-size-lg);
}
.str-chat__attachment-list .str-chat__message-attachment--giphy .str-chat__modal-gallery__image .str-chat__modal-gallery__image-retry-indicator,
.str-chat__attachment-list .str-chat__message-attachment--gallery .str-chat__modal-gallery__image .str-chat__modal-gallery__image-retry-indicator,
.str-chat__attachment-list .str-chat__message-attachment--image .str-chat__modal-gallery__image .str-chat__modal-gallery__image-retry-indicator {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  z-index: 1;
  width: 2.75rem;
  height: 2.75rem;
  border-radius: var(--str-chat__radius-max);
  background-color: var(--str-chat__accent-error);
  color: var(--str-chat__text-on-inverse);
}
.str-chat__attachment-list .str-chat__message-attachment--giphy .str-chat__modal-gallery__image .str-chat__modal-gallery__image-retry-indicator svg,
.str-chat__attachment-list .str-chat__message-attachment--gallery .str-chat__modal-gallery__image .str-chat__modal-gallery__image-retry-indicator svg,
.str-chat__attachment-list .str-chat__message-attachment--image .str-chat__modal-gallery__image .str-chat__modal-gallery__image-retry-indicator svg {
  width: 1.125rem;
  height: 1.125rem;
}
.str-chat__attachment-list .str-chat__message-attachment--giphy .str-chat__modal-gallery__image:hover::after,
.str-chat__attachment-list .str-chat__message-attachment--gallery .str-chat__modal-gallery__image:hover::after,
.str-chat__attachment-list .str-chat__message-attachment--image .str-chat__modal-gallery__image:hover::after {
  background-color: rgba(0, 0, 0, 0.1);
}
.str-chat__attachment-list .str-chat__message-attachment--giphy .str-chat__modal-gallery__image:focus-visible,
.str-chat__attachment-list .str-chat__message-attachment--gallery .str-chat__modal-gallery__image:focus-visible,
.str-chat__attachment-list .str-chat__message-attachment--image .str-chat__modal-gallery__image:focus-visible {
  outline: none;
}
.str-chat__attachment-list .str-chat__message-attachment--giphy .str-chat__modal-gallery__image:focus-visible::before,
.str-chat__attachment-list .str-chat__message-attachment--gallery .str-chat__modal-gallery__image:focus-visible::before,
.str-chat__attachment-list .str-chat__message-attachment--image .str-chat__modal-gallery__image:focus-visible::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border-radius: inherit;
  box-shadow: inset 0 0 0 2px var(--str-chat__brand-300);
  z-index: 1;
}

@keyframes str-chat__modal-gallery-loading-shimmer {
  from {
    background-position: 200% 0;
  }
  to {
    background-position: -200% 0;
  }
}
.str-chat__message-attachment-unsupported {
  background: transparent;
  color: var(--str-chat__text-primary);
  border-radius: calc(var(--str-chat__message-bubble-radius-group-bottom) - var(--str-chat__attachment-margin));
  display: flex;
  align-items: center;
  justify-content: center;
  padding: var(--str-chat__spacing-md);
  column-gap: var(--str-chat__spacing-xs);
}
.str-chat__message-attachment-unsupported .str-chat__icon {
  height: var(--str-chat__size-20);
  width: var(--str-chat__size-20);
}
.str-chat__message-attachment-unsupported .str-chat__message-attachment-unsupported__metadata {
  min-width: 0;
  flex: 1;
  height: -webkit-fill-available;
  height: -moz-available;
  height: stretch;
  display: flex;
  align-items: center;
}
.str-chat__message-attachment-unsupported .str-chat__message-attachment-unsupported__title {
  white-space: nowrap;
  overflow-y: visible;
  overflow-x: hidden;
  overflow-x: clip;
  text-overflow: ellipsis;
  font: var(--str-chat__font-caption-emphasis);
  color: var(--str-chat__text-primary);
  max-width: 100%;
}

.str-chat__message-attachment__voice-recording-widget {
  background: transparent;
  color: var(--str-chat__text-primary);
  border-radius: calc(var(--str-chat__message-bubble-radius-group-bottom) - var(--str-chat__attachment-margin));
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-width: 0;
  min-height: 60px;
  padding: var(--str-chat__spacing-xs);
}
.str-chat__message-attachment__voice-recording-widget .str-chat__message-attachment__voice-recording-widget__play-button-container {
  padding: var(--str-chat__spacing-xxs);
}
.str-chat__message-attachment__voice-recording-widget .str-chat__message-attachment__voice-recording-widget__metadata {
  flex: 1;
  min-width: 0;
}
.str-chat__message-attachment__voice-recording-widget .str-chat__message-attachment__voice-recording-widget__metadata a {
  cursor: pointer;
  text-decoration: none;
  color: var(--str-chat__text-primary);
}
.str-chat__message-attachment__voice-recording-widget .str-chat__message-attachment__voice-recording-widget__metadata .str-chat__message-attachment-download-icon svg {
  width: var(--str-chat__size-24);
  height: var(--str-chat__size-16);
}
.str-chat__message-attachment__voice-recording-widget .str-chat__message-attachment__voice-recording-widget__timer {
  min-width: var(--str-chat__size-40);
  width: var(--str-chat__size-40);
  font: var(--str-chat__font-metadata-emphasis);
}

.str-chat .str-chat__duration-display {
  letter-spacing: 0;
  min-width: 35px;
  width: 35px;
  color: var(--str-chat__text-primary);
  white-space: nowrap;
  text-align: center;
}

.str-chat .str-chat__button.str-chat__playback-rate-button {
  text-transform: none;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: var(--str-chat__spacing-xs);
  min-width: 48px;
  min-height: 24px;
  max-height: 24px;
  padding: var(--str-chat__button-padding-y-sm) var(--str-chat__spacing-xs);
  background-color: inherit;
  border-radius: var(--str-chat__button-radius-lg);
  border: 1px solid var(--chat-border-on-chat);
  color: var(--str-chat__control-playback-toggle-text, var(--str-chat__text-primary));
  font: var(--str-chat__font-metadata-emphasis);
}
.str-chat .str-chat__button.str-chat__playback-rate-button:not(:disabled):hover::after {
  content: "";
  position: absolute;
  inset: 0;
  background: var(--str-chat__background-utility-hover);
  pointer-events: none;
}
.str-chat .str-chat__button.str-chat__playback-rate-button:not(:disabled):focus-visible {
  outline: 2px solid var(--str-chat__border-utility-focused);
  outline-offset: 2px;
  outline-offset: 0;
}
.str-chat .str-chat__button.str-chat__playback-rate-button:not(:disabled):active::after {
  content: "";
  position: absolute;
  inset: 0;
  background: var(--str-chat__background-utility-pressed);
  pointer-events: none;
}
.str-chat .str-chat__button.str-chat__playback-rate-button:disabled {
  border-color: var(--str-chat__border-utility-disabled);
  color: var(--str-chat__text-disabled);
  cursor: default;
}

.str-chat .str-chat__message-attachment-audio-widget--progress-track {
  position: relative;
  height: var(--str-chat__size-4);
  flex: 1;
  min-width: 0;
  cursor: pointer;
  background: linear-gradient(to var(--str-chat__progress-direction, right), var(--str-chat__chat-waveform-bar-playing) var(--str-chat__message-attachment-audio-widget-progress), var(--str-chat__chat-waveform-bar) var(--str-chat__message-attachment-audio-widget-progress));
}
[dir=rtl] .str-chat .str-chat__message-attachment-audio-widget--progress-track {
  --str-chat__progress-direction: left;
}
.str-chat .str-chat__message-attachment-audio-widget--progress-track {
  border-radius: var(--str-chat__radius-max);
}
.str-chat .str-chat__message-attachment-audio-widget--progress-track .str-chat__message-attachment-audio-widget--progress-indicator {
  position: absolute;
  inset-inline-start: 0;
  top: 50%;
  transform: translateY(-50%);
  height: var(--str-chat__size-12);
  width: var(--str-chat__size-12);
  border-radius: var(--str-chat__radius-max);
  border: 1px solid var(--str-chat__control-playback-thumb-border-default);
  background: var(--str-chat__control-playback-thumb-bg-default);
  box-shadow: var(--str-chat__box-shadow-2);
  cursor: grab;
}

.str-chat {
  /* The width of the amplitude bar of the voice recording wave data */
  --str-chat__voice-recording-amplitude-bar-width: 2px;
  /* The gap between amplitudes of the wave data of a voice recording */
  --str-chat__voice-recording-amplitude-bar-gap-width: var(--str-chat__spacing-px);
}
.str-chat .str-chat__message-attachment__voice-recording-widget__audio-state {
  display: flex;
  align-items: center;
  gap: var(--str-chat__spacing-xs);
  padding-inline: var(--str-chat__spacing-xs);
  height: 100%;
}
.str-chat .str-chat__wave-progress-bar__track {
  position: relative;
  flex: 1;
  width: 100%;
  height: 30px;
  display: flex;
  align-items: center;
  gap: var(--str-chat__voice-recording-amplitude-bar-gap-width);
}
.str-chat .str-chat__wave-progress-bar__track .str-chat__wave-progress-bar__amplitude-bar {
  width: 2px;
  min-width: 2px;
  height: calc(var(--str-chat__wave-progress-bar__amplitude-bar-height) + 2px);
}
.str-chat .str-chat__wave-progress-bar__track .str-chat__wave-progress-bar__progress-indicator {
  position: absolute;
  inset-inline-start: 0;
  border: 2px solid var(--str-chat__base-white);
  box-shadow: var(--str-chat__box-shadow-3);
  background: var(--str-chat__accent-neutral);
  height: 14px;
  width: 14px;
  border-radius: var(--str-chat__radius-max);
  cursor: grab;
  transition: inset-inline-start 250ms linear;
}
.str-chat .str-chat__wave-progress-bar__amplitude-bar {
  background: var(--str-chat__chat-waveform-bar);
  border-radius: var(--str-chat__radius-max);
  transition: background 250ms linear;
}
.str-chat .str-chat__wave-progress-bar__amplitude-bar--active {
  background: var(--str-chat__chat-waveform-bar-playing);
}
.str-chat .str-chat__wave-progress-bar__track--dragging .str-chat__wave-progress-bar__progress-indicator {
  transition: none;
}
.str-chat .str-chat__wave-progress-bar__track--dragging .str-chat__wave-progress-bar__amplitude-bar {
  transition: none;
}
.str-chat .str-chat__wave-progress-bar__track--playback-initiated .str-chat__wave-progress-bar__progress-indicator {
  background: var(--str-chat__accent-primary);
}

.str-chat__avatar {
  -webkit-user-select: none;
          user-select: none;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: var(--str-chat__radius-max);
  background: var(--str-chat__avatar-bg-default);
  color: var(--str-chat__avatar-text-default);
  text-transform: uppercase;
  width: var(--avatar-size);
  height: var(--avatar-size);
  --avatar-status-badge-angle: -45deg;
  grid-area: avatar;
}
.str-chat__avatar .str-chat__avatar-image {
  object-fit: cover;
  border-radius: inherit;
  width: 100%;
  height: 100%;
}
.str-chat__avatar .str-chat__icon {
  width: var(--avatar-icon-size);
  height: var(--avatar-icon-size);
  stroke-width: var(--avatar-icon-stroke-width);
}
.str-chat__avatar.str-chat__avatar--with-border:has(.str-chat__avatar-image)::before {
  border: 1px solid var(--border-core-opacity-10);
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  background: transparent;
  border-radius: inherit;
}
.str-chat__avatar:after {
  content: "";
  position: absolute;
  width: calc(100% + 4px);
  height: calc(100% + 4px);
  border: 2px solid var(--str-chat__border-core-inverse);
  border-radius: inherit;
}
.str-chat__avatar .str-chat__avatar-status-badge {
  content: "";
  position: absolute;
  width: var(--avatar-status-badge-size);
  height: var(--avatar-status-badge-size);
  z-index: 1;
  inset-inline-start: calc(var(--avatar-size) / 2 + var(--avatar-size) / 2 * cos(var(--avatar-status-badge-angle)) - var(--avatar-status-badge-size) / 2);
  top: calc(var(--avatar-size) / 2 + var(--avatar-size) / 2 * sin(var(--avatar-status-badge-angle)) - var(--avatar-status-badge-size) / 2);
  border-radius: var(--str-chat__radius-max, 9999px);
  border-style: solid;
  border-color: var(--str-chat__presence-border);
  border-width: 2px;
}
.str-chat__avatar .str-chat__avatar-status-badge.str-chat__avatar-status-badge--online {
  background: var(--str-chat__presence-bg-online);
}
.str-chat__avatar .str-chat__avatar-status-badge.str-chat__avatar-status-badge--offline {
  background: var(--str-chat__presence-bg-offline);
}
.str-chat__avatar.str-chat__avatar--size-2xl {
  --avatar-size: 64px;
  --avatar-status-badge-size: 16px;
  --avatar-icon-size: var(--str-chat__icon-size-lg);
  --avatar-icon-stroke-width: 1.5px;
  font: var(--str-chat__font-heading-lg);
}
.str-chat__avatar.str-chat__avatar--size-xl {
  --avatar-size: 48px;
  --avatar-status-badge-size: 16px;
  --avatar-icon-size: var(--str-chat__size-24);
  --avatar-icon-stroke-width: 1.5px;
  font: var(--str-chat__font-heading-md);
}
.str-chat__avatar.str-chat__avatar--size-lg {
  --avatar-size: 40px;
  --avatar-status-badge-size: 14px;
  --avatar-icon-size: var(--str-chat__icon-size-md);
  --avatar-icon-stroke-width: 1.5px;
  font: var(--str-chat__font-body-emphasis);
}
.str-chat__avatar.str-chat__avatar--size-md {
  --avatar-size: 32px;
  --avatar-status-badge-size: 12px;
  --avatar-icon-size: var(--str-chat__icon-size-md);
  --avatar-icon-stroke-width: 1.5px;
  font: var(--str-chat__font-caption-emphasis);
}
.str-chat__avatar.str-chat__avatar--size-sm {
  --avatar-size: 24px;
  --avatar-status-badge-size: 8px;
  --avatar-icon-size: var(--str-chat__icon-size-sm);
  --avatar-icon-stroke-width: 1.2px;
  font: var(--str-chat__font-caption-emphasis);
}
.str-chat__avatar.str-chat__avatar--size-sm .str-chat__avatar-status-badge {
  border-width: 1px;
}
.str-chat__avatar.str-chat__avatar--size-xs {
  --avatar-size: 20px;
  --avatar-status-badge-size: 8px;
  --avatar-icon-size: 10px;
  --avatar-icon-stroke-width: 1.2px;
  font: var(--str-chat__font-metadata-emphasis);
}
.str-chat__avatar.str-chat__avatar--size-xs .str-chat__avatar-status-badge {
  border-width: 1px;
}

.str-chat__avatar-stack {
  display: flex;
  align-items: center;
}
.str-chat__avatar-stack .str-chat__avatar-stack__count-badge {
  position: relative;
}
.str-chat__avatar-stack.str-chat__avatar-stack--size-xs > .str-chat__avatar:not(:first-child),
.str-chat__avatar-stack.str-chat__avatar-stack--size-xs .str-chat__avatar-stack__count-badge {
  margin-inline-start: calc(var(--str-chat__spacing-xs) * -1);
}
.str-chat__avatar-stack.str-chat__avatar-stack--size-sm > .str-chat__avatar:not(:first-child),
.str-chat__avatar-stack.str-chat__avatar-stack--size-sm .str-chat__avatar-stack__count-badge {
  margin-inline-start: calc(var(--str-chat__spacing-sm) * -1);
}
.str-chat__avatar-stack.str-chat__avatar-stack--size-md > .str-chat__avatar:not(:first-child),
.str-chat__avatar-stack.str-chat__avatar-stack--size-md .str-chat__avatar-stack__count-badge {
  margin-inline-start: calc(var(--str-chat__spacing-sm) * -1);
}

.str-chat__avatar-group {
  width: var(--avatar-group-size);
  height: var(--avatar-group-size);
  min-height: var(--avatar-group-size);
  min-width: var(--avatar-group-size);
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.str-chat__avatar-group.str-chat__avatar-group--size-2xl {
  --avatar-group-size: 64px;
  --avatar-group-online-badge-size: 16px;
  --avatar-group-count-badge-size: 32px;
}
.str-chat__avatar-group.str-chat__avatar-group--size-2xl > .str-chat__avatar-group__count-badge {
  font: var(--str-chat__font-numeric-xl);
  padding-inline: var(--str-chat__spacing-xs);
}
.str-chat__avatar-group.str-chat__avatar-group--size-xl {
  --avatar-group-size: 48px;
  --avatar-group-online-badge-size: 16px;
  --avatar-group-count-badge-size: 24px;
}
.str-chat__avatar-group.str-chat__avatar-group--size-xl > .str-chat__avatar-group__count-badge {
  font: var(--str-chat__font-numeric-xl);
  padding-inline: var(--str-chat__spacing-xs);
}
.str-chat__avatar-group.str-chat__avatar-group--size-lg {
  --avatar-group-size: 40px;
  --avatar-group-online-badge-size: 14px;
  --avatar-group-count-badge-size: 20px;
}
.str-chat__avatar-group.str-chat__avatar-group--size-lg > .str-chat__avatar-group__count-badge {
  font: var(--str-chat__font-numeric-md);
  padding-inline: var(--str-chat__spacing-xxs);
}
.str-chat__avatar-group.str-chat__avatar-group--online::after, .str-chat__avatar-group.str-chat__avatar-group--offline::after {
  content: "";
  position: absolute;
  width: var(--avatar-group-online-badge-size);
  height: var(--avatar-group-online-badge-size);
  inset-inline-end: -2px;
  top: -2px;
  border-radius: var(--str-chat__radius-max, 9999px);
  border-style: solid;
  border-color: var(--str-chat__presence-border, #fff);
  border-width: 2px;
}
.str-chat__avatar-group.str-chat__avatar-group--online::after {
  background: var(--str-chat__presence-bg-online, #00c384);
}
.str-chat__avatar-group.str-chat__avatar-group--offline::after {
  background: var(--str-chat__presence-bg-offline, #687385);
}
.str-chat__avatar-group > .str-chat__avatar {
  position: absolute;
}
.str-chat__avatar-group > .str-chat__avatar-group__count-badge {
  position: absolute;
  display: flex;
  height: var(--avatar-group-count-badge-size);
  min-width: var(--avatar-group-count-badge-size);
  min-height: var(--avatar-group-count-badge-size);
  justify-content: center;
  align-items: center;
  border-radius: var(--str-chat__radius-max);
  background: var(--str-chat__badge-bg-default);
  box-shadow: var(--str-chat__box-shadow-2);
}
.str-chat__avatar-group:has(> :last-child:nth-child(4)) > :nth-child(1) {
  top: 0;
  inset-inline-start: 0;
}
.str-chat__avatar-group:has(> :last-child:nth-child(4)) > :nth-child(2) {
  top: 0;
  inset-inline-end: 0;
}
.str-chat__avatar-group:has(> :last-child:nth-child(4)) > :nth-child(3) {
  bottom: 0;
  inset-inline-start: 0;
}
.str-chat__avatar-group:has(> :last-child:nth-child(4)) > :last-child {
  bottom: 0;
  inset-inline-end: 0;
}
.str-chat__avatar-group:has(> :last-child:nth-child(3)):has(> .str-chat__avatar-group__count-badge) > :nth-child(1) {
  top: 0;
  inset-inline-start: 0;
}
.str-chat__avatar-group:has(> :last-child:nth-child(3)):has(> .str-chat__avatar-group__count-badge) > :nth-child(2) {
  top: 0;
  inset-inline-end: 0;
}
.str-chat__avatar-group:has(> :last-child:nth-child(3)):has(> .str-chat__avatar-group__count-badge) > :last-child {
  bottom: 0;
}
.str-chat__avatar-group:has(> :last-child:nth-child(3)):not(:has(> .str-chat__avatar-group__count-badge)) > :nth-child(1) {
  top: 0;
}
.str-chat__avatar-group:has(> :last-child:nth-child(3)):not(:has(> .str-chat__avatar-group__count-badge)) > :nth-child(2) {
  bottom: 0;
  inset-inline-start: 0;
}
.str-chat__avatar-group:has(> :last-child:nth-child(3)):not(:has(> .str-chat__avatar-group__count-badge)) > :last-child {
  bottom: 0;
  inset-inline-end: 0;
}
.str-chat__avatar-group:has(> :last-child:nth-child(2)) > :nth-child(1) {
  top: 0;
  inset-inline-start: 0;
}
.str-chat__avatar-group:has(> :last-child:nth-child(2)) > :last-child {
  bottom: 0;
  inset-inline-end: 0;
}

.str-chat__channel {
  height: 100%;
  display: flex;
  flex-direction: column;
  min-height: 0;
  position: relative;
}
.str-chat__channel .str-chat__container {
  height: 100%;
  display: flex;
}
.str-chat__channel .str-chat__container .str-chat__main-panel {
  position: relative;
  height: 100%;
  display: flex;
  flex-direction: column;
  width: 100%;
  min-width: 0;
}
.str-chat__channel .str-chat__container {
  /* Mobile (<768px): when thread is open, show only thread (channel panel collapsed). */
}
@media (max-width: 767px) {
  .str-chat__channel .str-chat__container:has(.str-chat__thread-container) > .str-chat__main-panel,
  .str-chat__channel .str-chat__container:has(.str-chat__thread-container) > .str-chat__dropzone-root:not(.str-chat__dropzone-root--thread) {
    flex: 0 0 0;
    width: 0;
    min-width: 0;
    max-width: 0;
    overflow: hidden;
  }
  .str-chat__channel .str-chat__container:has(.str-chat__thread-container) > .str-chat__thread-container,
  .str-chat__channel .str-chat__container:has(.str-chat__thread-container) > .str-chat__dropzone-root--thread {
    flex: 1 1 auto;
    min-width: 0;
    width: 100%;
  }
}

.str-chat__loading-channel {
  height: 100%;
  display: flex;
  flex-direction: column;
}
.str-chat__loading-channel .str-chat__channel-header--loading {
  pointer-events: none;
}
.str-chat__loading-channel .str-chat__channel-header--loading .str-chat__channel-header__data--loading {
  align-items: center;
}
.str-chat__loading-channel .str-chat__channel-header--loading .str-chat__loading-channel-header-name {
  height: var(--str-chat__size-16);
  width: 120px;
}
.str-chat__loading-channel .str-chat__channel-header--loading .str-chat__loading-channel-header-avatar {
  flex-shrink: 0;
  width: var(--str-chat__size-40);
  height: var(--str-chat__size-40);
  border-radius: 50%;
}
.str-chat__loading-channel .str-chat__message-list--loading {
  overflow: hidden;
}
.str-chat__loading-channel .str-chat__message-list--loading .str-chat__message-list-scroll {
  width: 100%;
  height: 100%;
  max-width: calc(var(--str-chat__message-composer-max-width) + var(--str-chat__message-composer-padding));
  margin-inline: auto;
}
.str-chat__loading-channel .str-chat__loading-channel-message-list {
  height: 100%;
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: var(--str-chat__size-28);
  padding-block: var(--str-chat__size-32) var(--str-chat__size-24);
}
.str-chat__loading-channel .str-chat__loading-channel-message-list .str-chat__loading-channel-message {
  display: flex;
  width: 100%;
  column-gap: var(--str-chat__spacing-sm);
}
.str-chat__loading-channel .str-chat__loading-channel-message-list .str-chat__loading-channel-message .str-chat__loading-channel-message-avatar {
  flex-shrink: 0;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  align-self: end;
}
.str-chat__loading-channel .str-chat__loading-channel-message-list .str-chat__loading-channel-message .str-chat__loading-channel-message-content {
  display: flex;
  flex-direction: column;
  width: min(100%, var(--str-chat__message-max-width));
  max-width: var(--str-chat__message-max-width);
  row-gap: var(--str-chat__size-12);
  min-width: 0;
}
.str-chat__loading-channel .str-chat__loading-channel-message-list .str-chat__loading-channel-message .str-chat__loading-channel-message-bubble {
  width: min(100%, var(--str-chat__message-max-width));
  border-radius: var(--str-chat__radius-3xl);
}
.str-chat__loading-channel .str-chat__loading-channel-message-list .str-chat__loading-channel-message .str-chat__loading-channel-message-bubble--md {
  height: var(--str-chat__size-64);
  width: min(58%, 272px);
}
.str-chat__loading-channel .str-chat__loading-channel-message-list .str-chat__loading-channel-message .str-chat__loading-channel-message-bubble--lg {
  height: 84px;
  width: min(72%, 352px);
}
.str-chat__loading-channel .str-chat__loading-channel-message-list .str-chat__loading-channel-message .str-chat__loading-channel-message-metadata {
  height: var(--str-chat__size-16);
  width: min(100%, var(--str-chat__message-max-width));
  border-radius: 999px;
}
.str-chat__loading-channel .str-chat__loading-channel-message-list .str-chat__loading-channel-message .str-chat__loading-channel-message-metadata--sm {
  width: 88px;
}
.str-chat__loading-channel .str-chat__loading-channel-message-list .str-chat__loading-channel-message .str-chat__loading-channel-message-metadata--md {
  width: 124px;
}
.str-chat__loading-channel .str-chat__loading-channel-message-list .str-chat__loading-channel-message.str-chat__loading-channel-message--outgoing {
  justify-content: flex-end;
}
.str-chat__loading-channel .str-chat__loading-channel-message-list .str-chat__loading-channel-message.str-chat__loading-channel-message--outgoing .str-chat__loading-channel-message-content {
  align-items: flex-end;
}
.str-chat__loading-channel .str-chat__message-composer-container--loading {
  pointer-events: none;
}
.str-chat__loading-channel .str-chat__message-composer-container--loading .str-chat__message-composer {
  align-items: center;
}
.str-chat__loading-channel .str-chat__message-composer-container--loading .str-chat__loading-channel-message-input-button {
  flex-shrink: 0;
  width: var(--str-chat__size-48);
  height: var(--str-chat__size-48);
  border-radius: var(--str-chat__button-radius-full);
}
.str-chat__loading-channel .str-chat__message-composer-container--loading .str-chat__loading-channel-message-input-pill {
  flex: 1;
  min-width: 0;
  height: var(--str-chat__size-48);
  border-radius: 999px;
}

.str-chat__channel {
  background: var(--str-chat__background-core-app);
  color: var(--str-chat__text-primary);
}

.str-chat__loading-channel .str-chat__channel-header--loading .str-chat__loading-channel-header-avatar {
  background-color: var(--str-chat__background-core-surface-default);
  background-image: linear-gradient(90deg, var(--str-chat__skeleton-loading-base) 0%, var(--str-chat__skeleton-loading-highlight) 50%, var(--str-chat__skeleton-loading-base) 100%);
  background-repeat: no-repeat;
  background-size: 200% 100%;
  animation: loading-channel-shimmer 1.2s linear infinite;
  border-radius: 50%;
}
.str-chat__loading-channel .str-chat__channel-header--loading .str-chat__loading-channel-header-name {
  background-color: var(--str-chat__background-core-surface-default);
  background-image: linear-gradient(90deg, var(--str-chat__skeleton-loading-base) 0%, var(--str-chat__skeleton-loading-highlight) 50%, var(--str-chat__skeleton-loading-base) 100%);
  background-repeat: no-repeat;
  background-size: 200% 100%;
  animation: loading-channel-shimmer 1.2s linear infinite;
  border-radius: 999px;
  -webkit-mask-image: linear-gradient(90deg, #000 0%, #000 94%, rgba(0, 0, 0, 0.7) 98%, transparent 100%);
  mask-image: linear-gradient(90deg, #000 0%, #000 94%, rgba(0, 0, 0, 0.7) 98%, transparent 100%);
}
.str-chat__loading-channel .str-chat__message-list--loading .str-chat__loading-channel-message-avatar {
  background-color: var(--str-chat__background-core-surface-default);
  background-image: linear-gradient(90deg, var(--str-chat__skeleton-loading-base) 0%, var(--str-chat__skeleton-loading-highlight) 50%, var(--str-chat__skeleton-loading-base) 100%);
  background-repeat: no-repeat;
  background-size: 200% 100%;
  animation: loading-channel-shimmer 1.2s linear infinite;
  border-radius: 50%;
}
.str-chat__loading-channel .str-chat__message-list--loading .str-chat__loading-channel-message-bubble {
  background-color: var(--str-chat__background-core-surface-default);
  background-image: linear-gradient(90deg, var(--str-chat__skeleton-loading-base) 0%, var(--str-chat__skeleton-loading-highlight) 50%, var(--str-chat__skeleton-loading-base) 100%);
  background-repeat: no-repeat;
  background-size: 200% 100%;
  animation: loading-channel-shimmer 1.2s linear infinite;
}
.str-chat__loading-channel .str-chat__message-list--loading .str-chat__loading-channel-message-metadata {
  background-color: var(--str-chat__background-core-surface-default);
  background-image: linear-gradient(90deg, var(--str-chat__skeleton-loading-base) 0%, var(--str-chat__skeleton-loading-highlight) 50%, var(--str-chat__skeleton-loading-base) 100%);
  background-repeat: no-repeat;
  background-size: 200% 100%;
  animation: loading-channel-shimmer 1.2s linear infinite;
  border-radius: 999px;
  -webkit-mask-image: linear-gradient(90deg, #000 0%, #000 94%, rgba(0, 0, 0, 0.7) 98%, transparent 100%);
  mask-image: linear-gradient(90deg, #000 0%, #000 94%, rgba(0, 0, 0, 0.7) 98%, transparent 100%);
}
.str-chat__loading-channel .str-chat__message-composer-container--loading .str-chat__loading-channel-message-input-button,
.str-chat__loading-channel .str-chat__message-composer-container--loading .str-chat__loading-channel-message-input-pill {
  background-color: var(--str-chat__background-core-surface-default);
  background-image: linear-gradient(90deg, var(--str-chat__skeleton-loading-base) 0%, var(--str-chat__skeleton-loading-highlight) 50%, var(--str-chat__skeleton-loading-base) 100%);
  background-repeat: no-repeat;
  background-size: 200% 100%;
  animation: loading-channel-shimmer 1.2s linear infinite;
}
.str-chat__loading-channel .str-chat__message-composer-container--loading .str-chat__loading-channel-message-input-button {
  border-radius: var(--str-chat__button-radius-full);
}
.str-chat__loading-channel .str-chat__message-composer-container--loading .str-chat__loading-channel-message-input-pill {
  border-radius: var(--str-chat__radius-3xl);
}

@keyframes loading-channel-shimmer {
  from {
    background-position: 200% 0;
  }
  to {
    background-position: -200% 0;
  }
}
.str-chat {
  --str-chat__channel-header-height: 72px;
}

.str-chat__channel-header {
  background: var(--str-chat__background-core-elevation-1);
  border-block-end: 1px solid var(--str-chat__border-core-default);
  width: 100%;
  padding: var(--str-chat__spacing-md);
  height: var(--str-chat__channel-header-height);
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  align-items: center;
}
.str-chat__channel-header .str-chat__channel-header__start {
  justify-self: start;
  min-width: 0;
}
.str-chat__channel-header .str-chat__channel-header__data {
  display: flex;
  flex-direction: column;
  align-items: center;
  overflow-y: hidden;
  overflow-x: hidden;
  justify-self: center;
  min-width: 0;
}
.str-chat__channel-header .str-chat__channel-header__end {
  justify-self: end;
  min-width: 0;
}
.str-chat__channel-header .str-chat__channel-header__data__title,
.str-chat__channel-header .str-chat__channel-header__data__subtitle {
  white-space: nowrap;
  overflow-y: visible;
  overflow-x: hidden;
  overflow-x: clip;
  text-overflow: ellipsis;
}
.str-chat__channel-header .str-chat__channel-header__data__title {
  font: var(--str-chat__font-heading-sm);
}
.str-chat__channel-header .str-chat__channel-header__data__subtitle {
  font: var(--str-chat__font-caption-default);
  color: var(--str-chat__text-secondary);
}

.str-chat {
  /* Animation duration used when the component enters or exits */
  --str-chat__channel-list-transition-duration: 180ms;
  /* Animation easing used when the component enters or exits */
  --str-chat__channel-list-transition-easing: ease;
  /* Horizontal offset used by the sidebar enter/exit transition */
  --str-chat__channel-list-transition-offset: 8px;
  /* Default desktop width of the channel list. Override to match custom layouts. */
  --str-chat__channel-list-width: 100%;
  /* Default mobile overlay width of the channel list. Override to match custom layouts. */
  --str-chat__channel-list-mobile-width: 100%;
}

.str-chat__channel-list {
  display: flex;
  flex: 0 0 var(--str-chat__channel-list-width);
  flex-direction: column;
  height: 100%;
  max-width: 100%;
  position: relative;
  min-width: 280px;
  opacity: 1;
  transform: translateX(0);
  transition: flex-basis var(--str-chat__channel-list-transition-duration) var(--str-chat__channel-list-transition-easing), min-width var(--str-chat__channel-list-transition-duration) var(--str-chat__channel-list-transition-easing), width var(--str-chat__channel-list-transition-duration) var(--str-chat__channel-list-transition-easing), max-width var(--str-chat__channel-list-transition-duration) var(--str-chat__channel-list-transition-easing), opacity var(--str-chat__channel-list-transition-duration) var(--str-chat__channel-list-transition-easing), transform var(--str-chat__channel-list-transition-duration) var(--str-chat__channel-list-transition-easing);
  width: var(--str-chat__channel-list-width);
  background: var(--str-chat__background-core-elevation-1);
  color: var(--str-chat__text-primary);
  border-inline-end: 1px solid var(--str-chat__border-core-default);
}
.str-chat__channel-list .str-chat__channel-list-inner {
  flex: 1;
  min-height: 0;
  overflow: hidden;
  padding-bottom: calc(var(--str-chat__space-8) + var(--str-chat__space-2));
}
.str-chat__channel-list .str-chat__channel-list-inner .str-chat__channel-list-inner__main {
  height: 100%;
  overflow-y: auto;
  scrollbar-gutter: stable both-edges;
  scrollbar-width: thin;
}
.str-chat__channel-list .str-chat__channel-list-inner .str-chat__channel-list-inner__main .str-chat__channel-list-empty {
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: calc(var(--str-chat__space-8) + var(--str-chat__space-4));
}
.str-chat__channel-list .str-chat__channel-list-inner .str-chat__channel-list-inner__main .str-chat__channel-list-empty p {
  color: var(--str-chat__text-secondary);
  font: var(--str-chat__font-caption-default);
}
.str-chat__channel-list .str-chat__load-more-button {
  display: flex;
  justify-content: center;
  margin: var(--str-chat__space-8) 0;
}
.str-chat__channel-list .str-chat__channel-list-empty {
  text-align: center;
}
.str-chat__channel-list .str-chat__channel-list-empty svg {
  width: 32px;
  height: 32px;
}
.str-chat__channel-list .str-chat__channel-list-empty {
  color: var(--str-chat__text-secondary);
}
.str-chat__channel-list {
  /* Mobile: hide when nav closed; when open show as overlay. */
}
@media (max-width: 767px) {
  .str-chat__channel-list {
    box-shadow: none;
    flex-basis: auto;
    inset-inline-start: 0;
    max-width: 100%;
    min-width: 0;
    pointer-events: none;
    position: absolute;
    top: 0;
    bottom: 0;
    transform: translateX(calc(0px - var(--str-chat__channel-list-transition-offset)));
    visibility: hidden;
    width: var(--str-chat__channel-list-mobile-width);
    z-index: 1;
    transition: transform var(--str-chat__channel-list-transition-duration) var(--str-chat__channel-list-transition-easing), visibility 0s linear var(--str-chat__channel-list-transition-duration);
  }
  .str-chat__chat-view .str-chat__channel-list {
    inset-inline-start: var(--str-chat__chat-view-selector-mobile-width, 0px);
    width: calc(100% - var(--str-chat__chat-view-selector-mobile-width, 0px));
  }
}
@media (prefers-reduced-motion: reduce) {
  .str-chat__channel-list {
    transition: none;
  }
}

.str-chat__channel-list__header {
  display: flex;
  align-items: center;
  padding: var(--str-chat__spacing-md);
  width: 100%;
}
.str-chat__channel-list__header .str-chat__channel-list__header__title {
  flex: 1;
  font: var(--str-chat__font-heading-lg);
  color: var(--str-chat__text-primary);
}

.str-chat__channel-list-item-container {
  padding: var(--str-chat__spacing-xxs);
  position: relative;
}
.str-chat__channel-list-item-container:has(.str-chat__channel-list-item__action-buttons--active) .str-chat__channel-list-item__action-buttons, .str-chat__channel-list-item-container:focus-within .str-chat__channel-list-item__action-buttons, .str-chat__channel-list-item-container:hover .str-chat__channel-list-item__action-buttons {
  display: flex;
}
.str-chat__channel-list-item-container .str-chat__channel-list-item__action-buttons {
  display: none;
  position: absolute;
  gap: var(--str-chat__spacing-xs);
  border-radius: var(--str-chat__radius-md);
  background: var(--str-chat__background-core-elevation-3);
  box-shadow: var(--str-chat__box-shadow-2);
  inset-inline-end: 10px;
  top: 10px;
  padding: var(--str-chat__spacing-xxs);
}
.str-chat__channel-list-item-container .str-chat__channel-list-item__action-buttons > .str-chat__button.str-chat__button--size-sm.str-chat__button--circular {
  padding-inline: var(--str-chat__button-padding-x-icon-only-xs);
  padding-block: var(--str-chat__button-padding-x-icon-only-xs);
}
.str-chat__channel-list-item-container {
  border-bottom: 1px solid var(--str-chat__border-core-subtle);
}

.str-chat__channel-list-item__action-buttons-context-menu {
  min-width: 150px;
}

.str-chat__channel-list-item {
  display: flex;
  gap: var(--str-chat__spacing-md);
  align-items: center;
  padding: var(--str-chat__spacing-sm);
  border: none;
  background: none;
  cursor: pointer;
  text-align: start;
  border-radius: var(--str-chat__radius-lg);
  width: 100%;
  background: var(--str-chat__background-core-elevation-1);
}
.str-chat__channel-list-item:not(:disabled):hover {
  background: var(--str-chat__background-utility-hover);
}
.str-chat__channel-list-item:not(:disabled):active {
  background: var(--str-chat__background-utility-pressed);
}
.str-chat__channel-list-item:not(:disabled)[aria-pressed=true] {
  background: var(--str-chat__background-utility-selected);
}
.str-chat__channel-list-item .str-chat__avatar {
  flex-shrink: 0;
}
.str-chat__channel-list-item .str-chat__channel-list-item-data {
  display: flex;
  flex-direction: column;
  gap: var(--str-chat__spacing-xxs);
  flex-shrink: 1;
  flex-grow: 1;
  min-width: 0;
}
.str-chat__channel-list-item .str-chat__channel-list-item-data .str-chat__channel-list-item-data__first-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: var(--str-chat__spacing-md);
}
.str-chat__channel-list-item .str-chat__channel-list-item-data .str-chat__channel-list-item-data__first-row .str-chat__channel-list-item-data__title {
  flex-shrink: 1;
  flex-grow: 1;
  min-width: 0;
  display: flex;
  align-items: inherit;
  gap: var(--str-chat__spacing-xxs);
  font: var(--str-chat__font-caption-emphasis);
  color: var(--str-chat__text-primary);
}
.str-chat__channel-list-item .str-chat__channel-list-item-data .str-chat__channel-list-item-data__first-row .str-chat__channel-list-item-data__title > span {
  overflow-x: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.str-chat__channel-list-item .str-chat__channel-list-item-data .str-chat__channel-list-item-data__first-row .str-chat__channel-list-item-data__title > .str-chat__icon--mute {
  color: var(--str-chat__text-tertiary);
  width: var(--str-chat__icon-size-sm);
  height: var(--str-chat__icon-size-sm);
}
.str-chat__channel-list-item .str-chat__channel-list-item-data .str-chat__channel-list-item-data__first-row .str-chat__channel-list-item-data__timestamp-and-badge {
  flex-shrink: 0;
  display: flex;
  align-items: inherit;
  gap: var(--str-chat__spacing-xs);
}
.str-chat__channel-list-item .str-chat__channel-list-item-data .str-chat__channel-list-item-data__first-row .str-chat__channel-list-item-data__timestamp-and-badge .str-chat__channel-list-item-timestamp {
  font: var(--str-chat__font-caption-default);
  color: var(--str-chat__text-tertiary);
}

.str-chat__channel-list-item[aria-selected=true] {
  background-color: var(--str-chat__background-utility-selected);
}

.str-chat {
  --str-chat__chat-view-selector-transition-duration: 180ms;
  --str-chat__chat-view-selector-transition-easing: ease;
  --str-chat__chat-view-selector-transition-offset: 8px;
  --str-chat__chat-view-selector-mobile-width: calc(
    var(--str-chat__spacing-md) + var(--str-chat__spacing-md) +
      var(--str-chat__spacing-xs) + var(--str-chat__spacing-xs) + 20px
  );
}

.str-chat__chat-view {
  display: flex;
  width: 100%;
  height: 100%;
  min-height: 0;
  position: relative;
  background-color: var(--str-chat__background-core-app);
}
.str-chat__chat-view .str-chat__chat-view__selector {
  display: flex;
  flex-direction: column;
  padding: var(--str-chat__spacing-md);
  gap: var(--str-chat__spacing-xs);
  border-inline-end: 1px solid var(--str-chat__border-core-subtle);
  background-color: var(--str-chat__background-core-elevation-1);
}
.str-chat__chat-view .str-chat__chat-view__selector .str-chat__chat-view__selector-button-container {
  display: flex;
  position: relative;
}
.str-chat__chat-view .str-chat__chat-view__selector .str-chat__chat-view__selector-button-container:focus-visible + .str-chat__chat-view__selector-button-tooltip, .str-chat__chat-view .str-chat__chat-view__selector .str-chat__chat-view__selector-button-container:hover .str-chat__chat-view__selector-button-tooltip {
  opacity: 1;
  transform: translate3d(0, -50%, 0);
  visibility: visible;
}
.str-chat__chat-view .str-chat__chat-view__selector .str-chat__button.str-chat__chat-view__selector-button {
  --str-chat-unread-count-badge-absolute-offset-vertical: 25%;
  gap: 4px;
  padding: var(--str-chat__spacing-xs);
  border-radius: var(--str-chat__radius-md);
  font: var(--str-chat__font-caption-emphasis);
  line-height: 1;
  position: relative;
  background: transparent;
  color: var(--str-chat__text-tertiary);
}
.str-chat__chat-view .str-chat__chat-view__selector .str-chat__button.str-chat__chat-view__selector-button[aria-current=true] {
  color: var(--str-chat__text-primary);
  background: var(--str-chat__background-core-surface-default);
}
.str-chat__chat-view .str-chat__chat-view__selector .str-chat__button.str-chat__chat-view__selector-button .str-chat__icon {
  height: var(--str-chat__icon-size-md);
  width: var(--str-chat__icon-size-md);
}
.str-chat__chat-view .str-chat__chat-view__selector .str-chat__button.str-chat__chat-view__selector-button .str-chat__button__content {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.str-chat__chat-view .str-chat__chat-view__selector .str-chat__chat-view__selector-button-tooltip {
  inset-inline-start: calc(100% + 8px);
  opacity: 0;
  pointer-events: none;
  position: absolute;
  top: 50%;
  transform: translate3d(4px, -50%, 0);
  transition: opacity 150ms ease, transform 150ms ease, visibility 150ms ease;
  visibility: hidden;
  white-space: nowrap;
  z-index: 1;
}
.str-chat__chat-view .str-chat__chat-view__channels {
  display: flex;
  flex-grow: 1;
  min-width: 0;
  min-height: 0;
  position: relative;
}
.str-chat__chat-view .str-chat__chat-view__threads {
  display: flex;
  flex-grow: 1;
  min-width: 0;
  position: relative;
}
.str-chat__chat-view .str-chat__chat-view__threads > .str-chat__dropzone-root--thread,
.str-chat__chat-view .str-chat__chat-view__threads > .str-chat__thread-container {
  flex: 1 1 auto;
  min-width: 0;
  max-width: none;
  width: 100%;
}

.str-chat__date-separator--floating {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 1;
  display: flex;
  justify-content: center;
  pointer-events: none;
}

.str-chat__date-separator {
  background: transparent;
  color: var(--str-chat__chat-text-system);
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  padding: var(--str-chat__spacing-xs) 0;
}
.str-chat__date-separator .str-chat__date-separator-date {
  display: flex;
  padding: var(--str-chat__spacing-xxs) var(--str-chat__spacing-sm);
  justify-content: center;
  align-items: center;
  color: var(--str-chat__chat-text-system);
  background-color: var(--str-chat__background-core-surface-subtle);
  border-radius: var(--str-chat__radius-max);
  font: var(--str-chat__font-metadata-emphasis);
}

.str-chat__drag-and-drop-container--dragging {
  cursor: grabbing;
}

.str-chat__drag-and-drop-container__item[draggable=true] {
  cursor: grab;
}
.str-chat__drag-and-drop-container__item[draggable=true]:active {
  background: transparent;
}

.str-chat__drag-and-drop-container__item {
  display: flex;
  width: 100%;
  padding-block: 0.25rem;
  border-block-start: 2px solid transparent;
  border-block-end: 2px solid transparent;
}
.str-chat__drag-and-drop-container__item.str-chat__drag-and-drop-container__item--dragged-over-from-top {
  border-block-end: 2px solid var(--str-chat__accent-primary);
}
.str-chat__drag-and-drop-container__item.str-chat__drag-and-drop-container__item--dragged-over-from-bottom {
  border-block-start: 2px solid var(--str-chat__accent-primary);
}

.str-chat__empty-channel {
  --str-chat-icon-color: var(--str-chat__text-tertiary);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 100%;
  padding: var(--str-chat__spacing-md);
  position: relative;
  gap: var(--str-chat__spacing-xs);
  text-align: center;
  background: var(--str-chat__background-core-app);
  color: var(--str-chat__text-secondary);
  font: var(--str-chat__font-caption-default);
}
.str-chat__empty-channel svg {
  width: 32px;
  height: 32px;
  color: var(--str-chat-icon-color);
}
.str-chat__empty-channel .str-chat__empty-channel-text {
  margin: 0;
  max-width: 230px;
}

.str-chat .str-chat__base-image {
  display: block;
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}

@keyframes str-chat__gallery-slide-in-from-right {
  from {
    transform: translateX(100%);
  }
  to {
    transform: translateX(0);
  }
}
@keyframes str-chat__gallery-slide-in-from-left {
  from {
    transform: translateX(-100%);
  }
  to {
    transform: translateX(0);
  }
}
.str-chat .str-chat__gallery {
  --str-chat__gallery-foreground: var(--str-chat__text-on-accent);
  --str-chat__gallery-nav-border: none;
  --str-chat__gallery-nav-background: rgba(255, 255, 255, 0.92);
  --str-chat__gallery-nav-color: #101828;
  --str-chat__gallery-nav-hover-background: #ffffff;
  --str-chat__gallery-nav-box-shadow: var(--str-chat__box-shadow-2);
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  justify-content: stretch;
  width: 100%;
  height: 100%;
  min-height: 0;
  padding: 0;
  box-sizing: border-box;
  -webkit-backdrop-filter: blur(24px);
          backdrop-filter: blur(24px);
}
.str-chat.str-chat__modal.str-chat__gallery-modal {
  --str-chat__modal-overlay-color: var(--str-chat__background-core-scrim);
  --str-chat__modal-overlay-backdrop-filter: none;
}
.str-chat.str-chat__modal.str-chat__gallery-modal .str-chat__modal__dialog {
  width: 100%;
  height: 100%;
}
.str-chat .str-chat__gallery__header {
  padding: var(--str-chat__spacing-md);
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  align-items: start;
  gap: var(--str-chat__spacing-sm);
  pointer-events: none;
  width: 100%;
}
.str-chat .str-chat__gallery__header-spacer {
  min-width: 0;
}
.str-chat .str-chat__gallery__header-meta {
  min-width: 0;
  text-align: center;
}
.str-chat .str-chat__gallery__title {
  color: var(--str-chat__gallery-foreground);
  font: var(--str-chat__font-heading-sm);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.str-chat .str-chat__gallery__timestamp {
  display: block;
  margin-top: 2px;
  color: rgba(255, 255, 255, 0.72);
  font: var(--str-chat__font-metadata-default);
}
.str-chat .str-chat__gallery__header-actions {
  display: inline-flex;
  align-items: center;
  justify-self: end;
  gap: var(--str-chat__spacing-xs);
  pointer-events: auto;
}
.str-chat .str-chat__button.str-chat__gallery__action-button,
.str-chat .str-chat__gallery__action-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  padding: 0;
  border-radius: var(--str-chat__radius-max);
  border: 0;
  background-color: transparent;
  color: rgba(255, 255, 255, 0.88);
  text-decoration: none;
  opacity: 0.92;
}
@media (prefers-reduced-motion: no-preference) {
  .str-chat .str-chat__button.str-chat__gallery__action-button,
  .str-chat .str-chat__gallery__action-button {
    transition: background-color 0.15s ease, color 0.15s ease, opacity 0.15s ease;
  }
}
.str-chat .str-chat__button.str-chat__gallery__action-button:hover,
.str-chat .str-chat__gallery__action-button:hover {
  background-color: rgba(255, 255, 255, 0.14);
  color: #ffffff;
  opacity: 1;
}
.str-chat .str-chat__button.str-chat__gallery__action-button:active,
.str-chat .str-chat__gallery__action-button:active {
  background-color: rgba(255, 255, 255, 0.2);
}
.str-chat .str-chat__button.str-chat__gallery__action-button:focus-visible,
.str-chat .str-chat__gallery__action-button:focus-visible {
  outline: 2px solid var(--str-chat__border-utility-focused);
  outline-offset: 2px;
}
.str-chat .str-chat__button.str-chat__gallery__action-button .str-chat__icon,
.str-chat .str-chat__gallery__action-button .str-chat__icon {
  width: var(--str-chat__icon-size-sm);
  height: var(--str-chat__icon-size-sm);
}
.str-chat .str-chat__gallery__main {
  flex-direction: column;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  flex: 1;
  height: 100%;
  min-height: 0;
  overflow: hidden;
  border-radius: 0;
  background: var(--str-chat__gallery-main-background);
}
.str-chat .str-chat__gallery__slide-container {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  min-height: 0;
  padding: var(--str-chat__size-64);
  box-sizing: border-box;
  overflow: hidden;
  touch-action: pan-y pinch-zoom;
}
.str-chat .str-chat__gallery__media-container {
  width: 100%;
  height: 100%;
}
.str-chat .str-chat__gallery__media {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  min-height: 0;
  overflow: hidden;
}
@media (prefers-reduced-motion: no-preference) {
  .str-chat .str-chat__gallery__media--slide-forward {
    animation: str-chat__gallery-slide-in-from-right 300ms ease-out both;
  }
  .str-chat .str-chat__gallery__media--slide-backward {
    animation: str-chat__gallery-slide-in-from-left 300ms ease-out both;
  }
}
.str-chat .str-chat__gallery__media--dragging {
  transition: none;
}
.str-chat .str-chat__gallery__media .str-chat__base-image {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}
.str-chat .str-chat__gallery__media--video video {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}
.str-chat .str-chat__button.str-chat__gallery__nav-button {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  padding: 0;
  border: var(--str-chat__gallery-nav-border);
  border-radius: var(--str-chat__radius-max);
  background-color: var(--str-chat__gallery-nav-background);
  color: var(--str-chat__gallery-nav-color);
  box-shadow: var(--str-chat__gallery-nav-box-shadow);
}
@media (prefers-reduced-motion: no-preference) {
  .str-chat .str-chat__button.str-chat__gallery__nav-button {
    transition: background-color 0.15s ease, transform 0.15s ease;
  }
}
.str-chat .str-chat__button.str-chat__gallery__nav-button:hover {
  background-color: var(--str-chat__gallery-nav-hover-background);
}
.str-chat .str-chat__button.str-chat__gallery__nav-button:focus-visible {
  outline: 2px solid var(--str-chat__border-utility-focused);
  outline-offset: 2px;
}
.str-chat .str-chat__button.str-chat__gallery__nav-button:active {
  transform: translateY(-50%) scale(0.97);
}
.str-chat .str-chat__button.str-chat__gallery__nav-button svg {
  width: 1rem;
  height: 1rem;
}
.str-chat .str-chat__gallery__nav-button--hidden {
  visibility: hidden;
  pointer-events: none;
}
.str-chat .str-chat__gallery__nav-button--prev {
  inset-inline-start: var(--str-chat__spacing-sm);
}
.str-chat .str-chat__gallery__nav-button--next {
  inset-inline-end: var(--str-chat__spacing-sm);
}
.str-chat .str-chat__gallery__position-indicator {
  color: var(--str-chat__gallery-foreground);
  font: var(--str-chat__font-caption-emphasis);
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.35);
  -webkit-user-select: none;
          user-select: none;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: var(--str-chat__spacing-md);
}
.str-chat .str-chat__gallery__loading {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}
.str-chat .str-chat__gallery__error {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: var(--str-chat__spacing-sm);
  width: 100%;
  height: 100%;
  color: var(--str-chat__text-tertiary);
  font-size: var(--str-chat__typography-font-size-sm);
}
.str-chat.str-chat__theme-dark .str-chat__gallery {
  --str-chat__gallery-nav-border: 1px solid rgba(255, 255, 255, 0.08);
  --str-chat__gallery-nav-background: rgba(17, 24, 39, 0.88);
  --str-chat__gallery-nav-color: rgba(255, 255, 255, 0.92);
  --str-chat__gallery-nav-hover-background: rgba(31, 41, 55, 0.96);
  --str-chat__gallery-nav-box-shadow: 0 10px 24px rgba(0, 0, 0, 0.4);
}
@media only screen and (max-device-width: 768px) {
  .str-chat .str-chat__gallery__header {
    inset: var(--str-chat__spacing-xs) var(--str-chat__spacing-xs) auto;
  }
  .str-chat .str-chat__gallery__nav-button {
    width: 2rem;
    height: 2rem;
  }
  .str-chat .str-chat__gallery__slide-container {
    padding: 2.25rem 2.5rem 1.5rem;
  }
  .str-chat .str-chat__gallery__header-actions {
    gap: 0.25rem;
  }
}

.str-chat__infinite-scroll-paginator {
  overflow-y: auto;
  overflow-x: hidden;
}

.str-chat__list-item-layout {
  display: flex;
  align-items: stretch;
  width: 100%;
  min-width: 0;
  padding-inline: var(--str-chat__spacing-xxs);
}
.str-chat__list-item-layout .str-chat__list-item-layout__container {
  --list-item-padding: var(--str-chat__spacing-xs) var(--str-chat__spacing-sm);
  display: flex;
  flex: 1;
  align-items: center;
  gap: var(--str-chat__spacing-sm);
  min-width: 0;
  text-align: start;
  padding: var(--list-item-padding);
  border-radius: var(--str-chat__radius-md);
}
.str-chat__list-item-layout .str-chat__list-item-layout__container:where(button) {
  background: none;
  border: none;
  padding: 0;
  padding: var(--list-item-padding);
  cursor: pointer;
}
.str-chat__list-item-layout .str-chat__list-item-layout__container:where(button):hover:not(:disabled) {
  background: var(--str-chat__background-utility-hover);
}
.str-chat__list-item-layout .str-chat__list-item-layout__container:where(button):active:not(:disabled) {
  background-color: var(--str-chat__background-utility-pressed);
}
.str-chat__list-item-layout .str-chat__list-item-layout__container:where(button):focus:not(:disabled) {
  outline: 2px solid var(--str-chat__border-utility-focused);
  outline-offset: 2px;
}
.str-chat__list-item-layout .str-chat__list-item-layout__container.str-chat__form__switch-field {
  padding: var(--list-item-padding);
}
.str-chat__list-item-layout .str-chat__list-item-layout__container--selected {
  background-color: var(--str-chat__background-utility-selected);
}
.str-chat__list-item-layout .str-chat__list-item-layout__container--destructive {
  color: var(--str-chat__accent-error);
}
.str-chat__list-item-layout .str-chat__list-item-layout__container--destructive .str-chat__icon,
.str-chat__list-item-layout .str-chat__list-item-layout__container--destructive .str-chat__list-item-layout__title,
.str-chat__list-item-layout .str-chat__list-item-layout__container--destructive .str-chat__list-item-layout__subtitle,
.str-chat__list-item-layout .str-chat__list-item-layout__container--destructive .str-chat__list-item-layout__description {
  color: var(--str-chat__accent-error);
}
.str-chat__list-item-layout .str-chat__list-item-layout__container:disabled {
  color: var(--str-chat__text-disabled);
}
.str-chat__list-item-layout .str-chat__list-item-layout__container:disabled .str-chat__list-item-layout__title,
.str-chat__list-item-layout .str-chat__list-item-layout__container:disabled .str-chat__list-item-layout__subtitle,
.str-chat__list-item-layout .str-chat__list-item-layout__container:disabled .str-chat__list-item-layout__description {
  color: var(--str-chat__text-disabled);
}
.str-chat__list-item-layout .str-chat__list-item-layout__content {
  flex: 1;
  display: grid;
  align-items: start;
  grid-template-areas: "title" "description";
  grid-template-columns: minmax(0, 1fr);
  justify-items: start;
  min-width: 0;
}
.str-chat__list-item-layout .str-chat__list-item-layout__content--withSubtitle {
  grid-template-areas: "title description" "subtitle description";
  grid-template-columns: minmax(0, 1fr) auto;
  column-gap: var(--str-chat__spacing-sm);
}
.str-chat__list-item-layout .str-chat__list-item-layout__leading-icon,
.str-chat__list-item-layout .str-chat__list-item-layout__trailing-icon {
  display: flex;
  flex-shrink: 0;
}
.str-chat__list-item-layout .str-chat__list-item-layout__description,
.str-chat__list-item-layout .str-chat__list-item-layout__title {
  font: var(--str-chat__font-caption-default);
}
.str-chat__list-item-layout .str-chat__list-item-layout__subtitle {
  font: var(--str-chat__font-metadata-default);
}
.str-chat__list-item-layout .str-chat__list-item-layout__title {
  color: var(--str-chat__text-primary);
  grid-area: title;
}
.str-chat__list-item-layout .str-chat__list-item-layout__subtitle,
.str-chat__list-item-layout .str-chat__list-item-layout__description {
  color: var(--str-chat__text-tertiary);
}
.str-chat__list-item-layout .str-chat__list-item-layout__subtitle {
  grid-area: subtitle;
}
.str-chat__list-item-layout .str-chat__list-item-layout__description {
  grid-area: description;
}
.str-chat__list-item-layout .str-chat__list-item-layout__subtitle,
.str-chat__list-item-layout .str-chat__list-item-layout__description,
.str-chat__list-item-layout .str-chat__list-item-layout__title {
  white-space: nowrap;
  overflow-y: visible;
  overflow-x: hidden;
  overflow-x: clip;
  text-overflow: ellipsis;
  max-width: 100%;
}

.str-chat__loading-channels {
  display: flex;
  flex-direction: column;
}

.str-chat__channel-list-item--loading {
  cursor: default;
  pointer-events: none;
}

.str-chat__channel-list-item--loading,
.str-chat__channel-list-item-data--loading {
  min-width: 0;
}

.str-chat__channel-list-item-data--loading {
  justify-content: center;
}

.str-chat__loading-channels-avatar,
.str-chat__loading-channels-username,
.str-chat__loading-channels-status {
  background-color: var(--str-chat__background-core-surface-default);
  background-image: linear-gradient(90deg, var(--str-chat__skeleton-loading-base) 0%, var(--str-chat__skeleton-loading-highlight) 50%, var(--str-chat__skeleton-loading-base) 100%);
  background-repeat: no-repeat;
  background-size: 200% 100%;
  animation: loading-channels-shimmer 1.2s linear infinite;
}

.str-chat__loading-channels-avatar {
  flex-shrink: 0;
  width: var(--str-chat__size-48);
  height: var(--str-chat__size-48);
  border-radius: 50%;
}

.str-chat__loading-channels-username,
.str-chat__loading-channels-status {
  height: var(--str-chat__size-20);
  border-radius: 999px;
  -webkit-mask-image: linear-gradient(90deg, #000 0%, #000 94%, rgba(0, 0, 0, 0.7) 98%, transparent 100%);
  mask-image: linear-gradient(90deg, #000 0%, #000 94%, rgba(0, 0, 0, 0.7) 98%, transparent 100%);
}

.str-chat__loading-channels-username {
  width: min(62%, 180px);
}

.str-chat__loading-channels-status {
  width: min(84%, 244px);
}

@keyframes loading-channels-shimmer {
  from {
    background-position: 200% 0;
  }
  to {
    background-position: -200% 0;
  }
}
.str-chat__loading-indicator {
  animation: rotate 1s linear infinite;
}
@keyframes rotate {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}

.str-chat__circular-progress-indicator {
  width: 100%;
  height: 100%;
}
.str-chat__circular-progress-indicator svg {
  display: block;
}

.str-chat__share-location-dialog {
  width: 100%;
  max-width: 520px;
}
.str-chat__share-location-dialog .str-chat__live-location-activation {
  display: flex;
  flex-direction: column;
  width: 100%;
  background-color: var(--str-chat__switch-field-background-color);
  border-radius: var(--str-chat__switch-field-border-radius);
  box-sizing: border-box;
}
.str-chat__share-location-dialog .str-chat__live-location-activation.str-chat__live-location-activation--expanded .str-chat__form__switch-field {
  padding-bottom: var(--str-chat__spacing-xxs);
}
.str-chat__share-location-dialog .str-chat__live-location-activation .str-chat__form__switch-field__label__text {
  font: var(--str-chat__font-caption-emphasis);
}
.str-chat__share-location-dialog .str-chat__live-location-sharing-duration-selector {
  padding-inline: calc(var(--str-chat__spacing-md) - var(--str-chat__spacing-xs));
  padding-bottom: var(--str-chat__spacing-xs);
}
.str-chat__share-location-dialog .str-chat__live-location-sharing-duration-selector .str-chat__live-location-sharing-duration-selector__button {
  background: none;
  border: none;
  padding: 0;
  align-items: center;
  background: transparent;
  padding-inline: var(--str-chat__spacing-xs);
  color: inherit;
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  min-width: 120px;
  font: var(--str-chat__font-caption-default);
}
.str-chat__share-location-dialog .str-chat__live-location-sharing-duration-selector .str-chat__context-menu {
  min-width: 120px;
}
.str-chat__share-location-dialog .str-chat__live-location-sharing-duration-selector .str-chat__live-location-sharing-duration-option {
  width: 100%;
}

.str-chat__audio_recorder {
  display: flex;
  align-items: center;
  justify-content: center;
  max-width: var(--str-chat__message-composer-max-width);
  width: 100%;
  border-radius: var(--str-chat__radius-3xl);
  border: 1px solid var(--str-chat__border-core-default);
  background: var(--composer-bg);
  position: relative;
}
.str-chat__audio_recorder .str-chat__audio-recorder__recording-playback,
.str-chat__audio_recorder .str-chat__audio-recorder__recording-preview {
  flex: 1;
  min-width: 0;
  display: flex;
  align-items: center;
  gap: var(--str-chat__spacing-md);
  padding: var(--str-chat__spacing-xs);
  padding-inline-start: var(--str-chat__spacing-sm);
}
.str-chat__audio_recorder .str-chat__audio-recorder__recording-playback .str-chat__recording-timer,
.str-chat__audio_recorder .str-chat__audio-recorder__recording-preview .str-chat__recording-timer {
  display: flex;
  align-items: center;
  width: 2.75rem;
  font: var(--str-chat__font-caption-emphasis);
}
.str-chat__audio_recorder .str-chat__audio-recorder__recording-playback .str-chat__recording-timer--hours,
.str-chat__audio_recorder .str-chat__audio-recorder__recording-preview .str-chat__recording-timer--hours {
  width: 3rem;
}
.str-chat__audio_recorder .str-chat__audio-recorder__recording-playback--isPlaying .str-chat__recording-timer {
  color: var(--str-chat__chat-waveform-bar-playing);
}
.str-chat__audio_recorder .str-chat__audio-recorder__recording-preview .str-chat__icon--voice {
  height: var(--str-chat__icon-size-sm);
  width: var(--str-chat__icon-size-sm);
  color: var(--str-chat__button-destructive-text);
}
.str-chat__audio_recorder .str-chat__audio_recorder__toggle-playback-button svg,
.str-chat__audio_recorder .str-chat__audio_recorder__cancel-button svg,
.str-chat__audio_recorder .str-chat__audio_recorder__toggle-recording-button svg {
  height: var(--str-chat__icon-size-sm);
  width: 18px;
}
.str-chat__audio_recorder .str-chat__audio_recorder__complete-button,
.str-chat__audio_recorder .str-chat__audio_recorder__stop-button {
  background: none;
  border: none;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 32px;
  width: 32px;
  padding: 0;
  cursor: pointer;
  --str-chat-icon-color: var(--str-chat__text-on-accent);
  border-radius: var(--str-chat__radius-max);
  color: var(--str-chat__text-on-accent);
  background-color: var(--str-chat__accent-primary);
}
.str-chat__audio_recorder .str-chat__audio_recorder__complete-button:disabled,
.str-chat__audio_recorder .str-chat__audio_recorder__stop-button:disabled {
  cursor: default;
}
.str-chat__audio_recorder .str-chat__audio_recorder__complete-button .str-chat__loading-indicator svg linearGradient stop:last-child,
.str-chat__audio_recorder .str-chat__audio_recorder__stop-button .str-chat__loading-indicator svg linearGradient stop:last-child {
  stop-color: var(--str-chat__background-core-app);
}
.str-chat__audio_recorder .str-chat__audio_recorder__stop-button {
  --str-chat-icon-height: 12px;
}
.str-chat__audio_recorder .str-chat__audio_recorder__stop-button svg {
  height: 12px;
}
.str-chat__audio_recorder .str-chat__audio_recorder__complete-button {
  --str-chat-icon-height: 16px;
}
.str-chat__audio_recorder .str-chat__audio_recorder__complete-button svg {
  height: 16px;
}
.str-chat__audio_recorder .str-chat__wave-progress-bar__track-container,
.str-chat__audio_recorder .str-chat__waveform-box-container {
  flex: 1 1 auto;
  display: flex;
  align-items: center;
  width: auto;
  min-width: 0;
}
.str-chat__audio_recorder .str-chat__wave-progress-bar__track {
  display: flex;
  min-width: 0;
  width: 100%;
  align-items: center;
  flex-wrap: nowrap;
  height: 2rem;
}
.str-chat__audio_recorder .str-chat__waveform-box-container {
  overflow: hidden;
}
.str-chat__audio_recorder .str-chat__waveform-box-container .str-chat__wave-progress-bar__track {
  justify-content: flex-end;
}
.str-chat__audio_recorder .str-chat__wave-progress-bar__track-container {
  padding-inline: var(--str-chat__spacing-xs);
}
.str-chat__audio_recorder .str-chat__wave-progress-bar__track-container .str-chat__wave-progress-bar__track {
  flex: 1 1 auto;
}
.str-chat__audio_recorder .str-chat__audio_recorder__recording-controls {
  display: flex;
  gap: var(--str-chat__spacing-xs);
  padding: 0 var(--str-chat__spacing-xs);
}

.str-chat {
  /* The width/height of the message options button(s) */
  --str-chat__message-options-button-size: var(--str-chat__size-32);
  /* The maximum allowed width of the message component */
  --str-chat__message-max-width: 400px;
  /* The maximum allowed width of the message component, if it has attachments */
  --str-chat__message-with-attachment-max-width: 400px;
}

.str-chat__ul .str-chat__li:hover:not(:has(.str-chat__modal--open)) .str-chat__message-options,
.str-chat__ul .str-chat__li:focus-within:not(:has(.str-chat__modal--open)) .str-chat__message-options,
.str-chat__ul .str-chat__li:has(.str-chat__message-options--active) .str-chat__message-options,
.str-chat__virtual-list .str-chat__li:hover:not(:has(.str-chat__modal--open)) .str-chat__message-options,
.str-chat__virtual-list .str-chat__li:focus-within:not(:has(.str-chat__modal--open)) .str-chat__message-options,
.str-chat__virtual-list .str-chat__li:has(.str-chat__message-options--active) .str-chat__message-options {
  display: flex;
}
.str-chat__ul .str-chat__li:hover:not(:has(.str-chat__modal--open)) .str-chat__message--other .str-chat__message-inner,
.str-chat__ul .str-chat__li:focus-within:not(:has(.str-chat__modal--open)) .str-chat__message--other .str-chat__message-inner,
.str-chat__ul .str-chat__li:has(.str-chat__message-options--active) .str-chat__message--other .str-chat__message-inner,
.str-chat__virtual-list .str-chat__li:hover:not(:has(.str-chat__modal--open)) .str-chat__message--other .str-chat__message-inner,
.str-chat__virtual-list .str-chat__li:focus-within:not(:has(.str-chat__modal--open)) .str-chat__message--other .str-chat__message-inner,
.str-chat__virtual-list .str-chat__li:has(.str-chat__message-options--active) .str-chat__message--other .str-chat__message-inner {
  margin-inline-end: 0;
}
.str-chat__ul .str-chat__li:hover:not(:has(.str-chat__modal--open)) .str-chat__message--me .str-chat__message-inner,
.str-chat__ul .str-chat__li:focus-within:not(:has(.str-chat__modal--open)) .str-chat__message--me .str-chat__message-inner,
.str-chat__ul .str-chat__li:has(.str-chat__message-options--active) .str-chat__message--me .str-chat__message-inner,
.str-chat__virtual-list .str-chat__li:hover:not(:has(.str-chat__modal--open)) .str-chat__message--me .str-chat__message-inner,
.str-chat__virtual-list .str-chat__li:focus-within:not(:has(.str-chat__modal--open)) .str-chat__message--me .str-chat__message-inner,
.str-chat__virtual-list .str-chat__li:has(.str-chat__message-options--active) .str-chat__message--me .str-chat__message-inner {
  margin-inline-start: 0;
}

.str-chat__li:has(.str-chat__message--pinned) {
  position: relative;
  isolation: isolate;
}
.str-chat__li:has(.str-chat__message--pinned)::before {
  content: "";
  position: absolute;
  inset-block: 0;
  inset-inline: -9999px;
  background-color: var(--str-chat__background-core-highlight);
  z-index: -1;
  pointer-events: none;
}
.str-chat__li:hover:not(:has(.str-chat__reaction-list:hover, .str-chat__modal--open)) {
  background-color: transparent;
}
.str-chat__li.str-chat__li--top {
  padding-block-start: var(--str-chat__spacing-xs);
  padding-block-end: var(--str-chat__spacing-xxxs);
}
.str-chat__li.str-chat__li--bottom {
  padding-block-start: var(--str-chat__spacing-xxxs);
  padding-block-end: var(--str-chat__spacing-xs);
}
.str-chat__li.str-chat__li--middle {
  padding-block: var(--str-chat__spacing-xxxs);
}
.str-chat__li.str-chat__li--single {
  padding-block: var(--str-chat__spacing-xs);
}
.str-chat__li.str-chat__li--middle .str-chat__message .str-chat__message-metadata, .str-chat__li.str-chat__li--top .str-chat__message .str-chat__message-metadata {
  display: none;
}
.str-chat__li.str-chat__li--middle .str-chat__message > .str-chat__avatar, .str-chat__li.str-chat__li--top .str-chat__message > .str-chat__avatar {
  visibility: hidden;
}
.str-chat__li.str-chat__li--middle .str-chat__message.str-chat__message--with-avatar > .str-chat__avatar, .str-chat__li.str-chat__li--top .str-chat__message.str-chat__message--with-avatar > .str-chat__avatar {
  pointer-events: none;
}
.str-chat__li.str-chat__li--middle .str-chat__message-bubble, .str-chat__li.str-chat__li--top .str-chat__message-bubble {
  border-radius: var(--str-chat__message-bubble-radius-group-middle);
}
.str-chat__li.str-chat__li--single .str-chat__message--other .str-chat__message-inner .str-chat__message-bubble, .str-chat__li.str-chat__li--bottom .str-chat__message--other .str-chat__message-inner .str-chat__message-bubble {
  border-end-start-radius: var(--str-chat__message-bubble-radius-tail);
}
.str-chat__li.str-chat__li--single .str-chat__message--other .str-chat__message-inner .str-chat__message-bubble .str-chat__message-text, .str-chat__li.str-chat__li--bottom .str-chat__message--other .str-chat__message-inner .str-chat__message-bubble .str-chat__message-text {
  border-end-start-radius: var(--str-chat__message-bubble-radius-tail);
}
.str-chat__li.str-chat__li--single .str-chat__message--me .str-chat__message-inner .str-chat__message-bubble, .str-chat__li.str-chat__li--bottom .str-chat__message--me .str-chat__message-inner .str-chat__message-bubble {
  border-end-end-radius: var(--str-chat__message-bubble-radius-tail);
}
.str-chat__li.str-chat__li--single .str-chat__message--me .str-chat__message-inner .str-chat__message-bubble .str-chat__message-text, .str-chat__li.str-chat__li--bottom .str-chat__message--me .str-chat__message-inner .str-chat__message-bubble .str-chat__message-text {
  border-end-end-radius: var(--str-chat__message-bubble-radius-tail);
}

.str-chat__message-mention {
  font: var(--str-chat__font-body-emphasis);
  color: var(--str-chat__accent-primary);
}

.str-chat__message {
  --str-chat-message-options-size: calc(3 * var(--str-chat__message-options-button-size));
  color: var(--chat-text);
  display: grid;
  word-break: break-word;
  -webkit-hyphens: auto;
          hyphens: auto;
  overflow-wrap: break-word;
  padding-inline: var(--str-chat__message-composer-padding);
}
@media (max-width: 767px) {
  .str-chat__message {
    --str-chat-message-options-size: var(--str-chat__message-options-button-size);
  }
  .str-chat__message.str-chat__message--other .str-chat__message-inner, .str-chat__message.str-chat__message--me .str-chat__message-inner {
    margin-inline: 0;
  }
  .str-chat__message.str-chat__message--other .str-chat__message-inner .str-chat__message-reactions-host, .str-chat__message.str-chat__message--me .str-chat__message-inner .str-chat__message-reactions-host {
    justify-self: flex-start;
    justify-content: flex-start;
    min-width: 0;
    overflow: visible;
    margin-inline: 0;
    padding-inline: 0;
  }
}
.str-chat__message a {
  text-decoration: none;
  color: var(--str-chat__chat-text-link);
}
.str-chat__message .str-chat__avatar:has(~ .str-chat__message-inner) {
  grid-area: avatar;
  align-self: end;
}
.str-chat__message:not(.str-chat__message--with-avatar) .str-chat__avatar:has(~ .str-chat__message-inner) {
  display: none;
}
.str-chat__message .str-chat__message-pin-indicator {
  grid-area: pin-indicator;
  padding-block: var(--str-chat__spacing-xxs);
}
.str-chat__message .str-chat__message-pin-indicator .str-chat__message-pin-indicator__content {
  display: flex;
  align-items: center;
  gap: var(--str-chat__spacing-xxs);
  font: var(--str-chat__font-metadata-emphasis);
  color: var(--str-chat__text-primary);
}
.str-chat__message .str-chat__message-pin-indicator .str-chat__message-pin-indicator__content .str-chat__message-pin-indicator__icon {
  display: flex;
  align-items: center;
}
.str-chat__message .str-chat__message-pin-indicator .str-chat__message-pin-indicator__content .str-chat__message-pin-indicator__icon .str-chat__icon {
  width: var(--str-chat__icon-size-xs);
  height: var(--str-chat__icon-size-xs);
}
.str-chat__message .str-chat__message-pin-indicator .str-chat__message-pin-indicator__content .str-chat__message-pin-indicator__icon .str-chat__icon path {
  stroke-width: 2px;
}
.str-chat__message .str-chat__message-inner {
  grid-area: message;
  display: grid;
  grid-template-areas: "reactions ." "message-bubble options" "replies replies";
  grid-template-columns: fit-content(var(--str-chat__message-max-width)) auto;
  column-gap: var(--str-chat__space-8);
  position: relative;
  width: fit-content;
}
.str-chat__message .str-chat__message-inner .str-chat__message-reactions-host {
  display: flex;
  grid-area: reactions;
}
.str-chat__message .str-chat__message-inner .str-chat__message-reactions-host:has(.str-chat__message-reactions--segmented.str-chat__message-reactions--bottom) {
  max-width: var(--str-chat__message-max-width);
}
.str-chat__message .str-chat__message-inner .str-chat__message-reactions-host:has(.str-chat__message-reactions--top) {
  margin-bottom: calc(var(--str-chat__spacing-xxs) * -1);
}
.str-chat__message .str-chat__message-inner .str-chat__message-reactions-host:has(.str-chat__message-reactions--bottom) {
  padding-block: var(--str-chat__spacing-xxs);
}
.str-chat__message .str-chat__message-inner:has(.str-chat__message-reactions--bottom) {
  grid-template-areas: "message-bubble options" "replies replies" "reactions .";
}
.str-chat__message .str-chat__message-inner .str-chat__message-bubble {
  width: fit-content(var(--str-chat__message-max-width));
  max-width: min(var(--str-chat__message-max-width), 100%);
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: var(--str-chat__spacing-xs);
  padding: var(--str-chat__spacing-xs);
  justify-self: flex-start;
  grid-area: message-bubble;
  position: relative;
  border-radius: var(--str-chat__message-bubble-radius-group-bottom);
  background-color: var(--chat-bg);
  overflow: hidden;
}
.str-chat__message .str-chat__message-inner .str-chat__message-bubble .str-chat__message-text {
  padding-inline: var(--str-chat__spacing-xxs);
}
.str-chat__message .str-chat__message-inner .str-chat__message-bubble .str-chat__message-text p {
  white-space: pre-line;
  margin: 0;
}
.str-chat__message .str-chat__message-inner .str-chat__message-bubble .str-chat__message-text {
  border-radius: calc(var(--str-chat__message-bubble-radius-group-bottom) - var(--str-chat__spacing-xs));
}
.str-chat__message .str-chat__message-inner .str-chat__message-bubble .str-chat__message-text .str-chat__message-text-inner {
  overflow-y: hidden;
}
.str-chat__message .str-chat__message-inner .str-chat__message-options {
  display: none;
}
.str-chat__message .str-chat__message-inner .str-chat__message-options.str-chat__message-options--active, .str-chat__message .str-chat__message-inner:focus-within .str-chat__message-options {
  display: flex;
}
.str-chat__message .str-chat__message-metadata {
  grid-area: metadata;
  display: flex;
  flex-wrap: wrap;
  gap: var(--str-chat__spacing-xxs);
  align-items: center;
  height: var(--str-chat__size-24);
  color: var(--str-chat__chat-text-timestamp);
  font: var(--str-chat__font-metadata-default);
}
.str-chat__message .str-chat__message-metadata .str-chat__message-metadata__name {
  overflow-y: hidden;
  margin-inline-end: var(--str-chat__spacing-xxs);
}
.str-chat__message .str-chat__message-metadata .str-chat__message-edited-indicator {
  margin-inline-start: var(--str-chat__spacing-xs);
}
.str-chat__message .str-chat__message--blocked-inner {
  padding-inline: var(--str-chat__spacing-xxs);
}
.str-chat__message .str-chat__message--blocked-inner p {
  white-space: pre-line;
  margin: 0;
}
.str-chat__message .str-chat__message--blocked-inner {
  border-radius: var(--str-chat__radius-md);
  background-color: var(--chat-bg);
  padding-block: var(--str-chat__spacing-xs);
}
.str-chat__message .str-chat__message-error-indicator {
  display: none;
}
.str-chat__message .str-chat__message-inner--error {
  cursor: pointer;
}
.str-chat__message:not(.str-chat__message--with-avatar) {
  grid-template-areas: "message-saved-for-later" "pin-indicator" "also-sent-in-channel" "message-reminder" "translation-indicator" "message" "translation-notice" "custom-metadata" "metadata";
  grid-template-columns: 1fr;
}
.str-chat__message.str-chat__message--other {
  column-gap: var(--str-chat__space-8);
  justify-items: flex-start;
  --chat-bg: var(--str-chat__chat-bg-incoming);
  --chat-bg-attachment: var(--str-chat__chat-bg-attachment-incoming);
  --chat-text: var(--str-chat__chat-text-incoming);
  --chat-border: var(--str-chat__chat-border-incoming);
  --chat-border-on-chat: var(--str-chat__chat-border-on-chat-incoming);
  --chat-reply-indicator: var(--str-chat__chat-reply-indicator-incoming);
  --chat-poll-progress-track: var(--str-chat__chat-poll-progress-track-incoming);
  --chat-poll-progress-fill: var(--str-chat__chat-poll-progress-fill-incoming);
  --chat-thread-connector: var(--str-chat__chat-thread-connector-incoming);
}
.str-chat__message.str-chat__message--other.str-chat__message--with-avatar, .str-chat__message.str-chat__message--other.str-chat__message--pinned {
  grid-template-areas: ". message-saved-for-later" ". pin-indicator" ". also-sent-in-channel" ". message-reminder" ". translation-indicator" "avatar message" "avatar translation-notice" "avatar custom-metadata" "avatar metadata";
  grid-template-columns: auto 1fr;
}
.str-chat__message.str-chat__message--other.str-chat__message-with-thread-link .str-chat__message-bubble {
  border-end-start-radius: var(--str-chat__message-bubble-radius-tail);
}
.str-chat__message.str-chat__message--other.str-chat__message-with-thread-link .str-chat__message-bubble .str-chat__message-text {
  border-end-start-radius: var(--str-chat__message-bubble-radius-tail);
}
.str-chat__message.str-chat__message--other .str-chat__message-inner:not(:has(.str-chat__message-options--active)) {
  margin-inline-end: var(--str-chat-message-options-size);
}
.str-chat__message.str-chat__message--other .str-chat__message-inner .str-chat__message-reactions-host {
  justify-self: flex-end;
}
.str-chat__message.str-chat__message--other .str-chat__message-inner .str-chat__message-reactions-host:has(.str-chat__message-reactions--flipped-horizontally) {
  justify-self: flex-start;
}
.str-chat__message.str-chat__message--other .str-chat__message-inner .str-chat__message-reactions-host:has(.str-chat__message-reactions--top) {
  padding-inline-start: calc(var(--str-chat__spacing-xs) * -1 * -1);
  margin-inline-end: calc(var(--str-chat__spacing-xs) * -1);
}
.str-chat__message.str-chat__message--other .str-chat__message-inner .str-chat__message-reactions-host .str-chat__message-reactions.str-chat__message-reactions--segmented.str-chat__message-reactions--bottom > .str-chat__message-reactions__list {
  justify-content: flex-start;
  flex-wrap: wrap;
}
.str-chat__message.str-chat__message--me {
  --chat-bg: var(--str-chat__chat-bg-outgoing);
  --chat-bg-attachment: var(--str-chat__chat-bg-attachment-outgoing);
  --chat-text: var(--str-chat__chat-text-outgoing);
  --chat-border: var(--str-chat__chat-border-outgoing);
  --chat-border-on-chat: var(--str-chat__chat-border-on-chat-outgoing);
  --chat-reply-indicator: var(--str-chat__chat-reply-indicator-outgoing);
  --chat-poll-progress-track: var(--str-chat__chat-poll-progress-track-outgoing);
  --chat-poll-progress-fill: var(--str-chat__chat-poll-progress-fill-outgoing);
  --chat-thread-connector: var(--str-chat__chat-thread-connector-outgoing);
  column-gap: var(--str-chat__spacing-xs);
  justify-items: flex-end;
}
.str-chat__message.str-chat__message--me.str-chat__message--with-avatar, .str-chat__message.str-chat__message--me.str-chat__message--pinned {
  grid-template-areas: "message-saved-for-later ." "pin-indicator ." "also-sent-in-channel ." "message-reminder ." "translation-indicator ." "message avatar" "translation-notice avatar" "custom-metadata avatar" "metadata avatar";
  grid-template-columns: 1fr auto;
}
.str-chat__message.str-chat__message--me.str-chat__message-with-thread-link .str-chat__message-bubble {
  border-end-end-radius: var(--str-chat__message-bubble-radius-tail);
}
.str-chat__message.str-chat__message--me.str-chat__message-with-thread-link .str-chat__message-bubble .str-chat__message-text {
  border-end-end-radius: var(--str-chat__message-bubble-radius-tail);
}
.str-chat__message.str-chat__message--me .str-chat__message-pin-indicator .str-chat__message-pin-indicator__content,
.str-chat__message.str-chat__message--me .str-chat__message-also-sent-in-channel {
  justify-content: flex-end;
}
.str-chat__message.str-chat__message--me .str-chat__message-bubble {
  justify-self: flex-end;
}
.str-chat__message.str-chat__message--me .str-chat__message-inner {
  grid-template-areas: "reminder reminder" ". reactions" "options message-bubble" "replies replies";
  grid-template-columns: auto fit-content(var(--str-chat__message-max-width));
  margin-inline-start: var(--str-chat-message-options-size);
}
.str-chat__message.str-chat__message--me .str-chat__message-inner .str-chat__message-options {
  flex-direction: row;
}
.str-chat__message.str-chat__message--me .str-chat__message-inner:has(.str-chat__message-reactions--bottom) {
  grid-template-areas: "reminder reminder" "options message-bubble" "replies replies" ". reactions";
}
.str-chat__message.str-chat__message--me .str-chat__message-inner .str-chat__message-reactions-host {
  justify-self: flex-start;
}
.str-chat__message.str-chat__message--me .str-chat__message-inner .str-chat__message-reactions-host:has(.str-chat__message-reactions--flipped-horizontally) {
  justify-self: flex-end;
}
.str-chat__message.str-chat__message--me .str-chat__message-inner .str-chat__message-reactions-host:has(.str-chat__message-reactions--top) {
  padding-inline-end: calc(var(--str-chat__spacing-xs) * -1 * -1);
  margin-inline-start: calc(var(--str-chat__spacing-xs) * -1);
}
.str-chat__message.str-chat__message--me .str-chat__message-inner .str-chat__message-reactions-host .str-chat__message-reactions.str-chat__message-reactions--segmented.str-chat__message-reactions--bottom > .str-chat__message-reactions__list {
  justify-content: flex-end;
  flex-wrap: wrap;
}
.str-chat__message.str-chat__message--me .str-chat__message-metadata {
  justify-content: flex-end;
  text-align: end;
}
.str-chat__message.str-chat__message--blocked, .str-chat__message.str-chat__message--system {
  grid-template-areas: "message";
}
.str-chat__message.str-chat__message--system {
  grid-template-columns: auto;
}
.str-chat__message.str-chat__message--deleted .str-chat__message-bubble {
  padding: var(--str-chat__spacing-sm);
}
.str-chat__message.str-chat__message--deleted .str-chat__message-bubble .str-chat__message-text {
  display: flex;
  align-items: center;
  padding: 0;
  gap: var(--str-chat__spacing-xxs);
}
.str-chat__message.str-chat__message--failed .str-chat__message-error-indicator {
  display: block;
  position: absolute;
  top: 8px;
  inset-inline-end: -9px;
}
.str-chat__message.str-chat__message--has-attachment {
  --str-chat__message-max-width: var(--str-chat__message-with-attachment-max-width);
}
.str-chat__message.str-chat__message--has-attachment .str-chat__message-bubble {
  width: 100%;
}
.str-chat__message.str-chat__message--has-single-attachment.str-chat__message--has-giphy-attachment .str-chat__message-bubble {
  padding: 0;
}
.str-chat__message.str-chat__message--has-single-attachment.str-chat__message--has-giphy-attachment .str-chat__message-text {
  display: none;
}
.str-chat__message.str-chat__message--is-emoji-only.str-chat__message--is-emoji-only-count-1 .str-chat__message-inner .str-chat__message-bubble, .str-chat__message.str-chat__message--is-emoji-only.str-chat__message--is-emoji-only-count-2 .str-chat__message-inner .str-chat__message-bubble, .str-chat__message.str-chat__message--is-emoji-only.str-chat__message--is-emoji-only-count-3 .str-chat__message-inner .str-chat__message-bubble {
  background-color: transparent;
  overflow: visible;
}
.str-chat__message.str-chat__message--is-emoji-only.str-chat__message--is-emoji-only-count-1 .str-chat__message-bubble,
.str-chat__message.str-chat__message--is-emoji-only.str-chat__message--is-emoji-only-count-1 .str-chat__message-inner .str-chat__message-bubble .str-chat__message-text,
.str-chat__message.str-chat__message--is-emoji-only.str-chat__message--is-emoji-only-count-1 .str-chat__message-inner .str-chat__message-replies-count-button-wrapper, .str-chat__message.str-chat__message--is-emoji-only.str-chat__message--is-emoji-only-count-2 .str-chat__message-bubble,
.str-chat__message.str-chat__message--is-emoji-only.str-chat__message--is-emoji-only-count-2 .str-chat__message-inner .str-chat__message-bubble .str-chat__message-text,
.str-chat__message.str-chat__message--is-emoji-only.str-chat__message--is-emoji-only-count-2 .str-chat__message-inner .str-chat__message-replies-count-button-wrapper, .str-chat__message.str-chat__message--is-emoji-only.str-chat__message--is-emoji-only-count-3 .str-chat__message-bubble,
.str-chat__message.str-chat__message--is-emoji-only.str-chat__message--is-emoji-only-count-3 .str-chat__message-inner .str-chat__message-bubble .str-chat__message-text,
.str-chat__message.str-chat__message--is-emoji-only.str-chat__message--is-emoji-only-count-3 .str-chat__message-inner .str-chat__message-replies-count-button-wrapper {
  padding-inline: 0;
}
.str-chat__message.str-chat__message--is-emoji-only.str-chat__message--is-emoji-only-count-1 .str-chat__message-inner .str-chat__message-bubble {
  font-size: 64px;
  line-height: 64px;
}
.str-chat__message.str-chat__message--is-emoji-only.str-chat__message--is-emoji-only-count-2 .str-chat__message-inner .str-chat__message-bubble {
  font-size: 48px;
  line-height: 48px;
}
.str-chat__message.str-chat__message--is-emoji-only.str-chat__message--is-emoji-only-count-3 .str-chat__message-inner .str-chat__message-bubble {
  font-size: 32px;
  line-height: 32px;
}
.str-chat__message.str-chat__message--is-emoji-only .str-chat__message-replies-count-button-wrapper::after {
  display: none;
}
.str-chat__message.str-chat__message--highlighted {
  transition: background-color 0.1s ease-out;
  background-color: var(--str-chat__background-core-highlight);
}

.str-chat__message-also-sent-in-channel {
  display: flex;
  align-items: center;
  gap: var(--str-chat__spacing-xxs);
  grid-area: also-sent-in-channel;
  padding-block: var(--str-chat__spacing-xxs);
  background: transparent;
  color: var(--str-chat__text-primary);
  font: var(--str-chat__font-metadata-emphasis);
}
.str-chat__message-also-sent-in-channel .str-chat__icon {
  height: var(--str-chat__spacing-sm);
  width: var(--str-chat__spacing-sm);
}
.str-chat__message-also-sent-in-channel .str-chat__icon path {
  stroke-width: 2px;
}
.str-chat__message-also-sent-in-channel .str-chat__message-also-sent-in-channel__link-button {
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
  font: var(--str-chat__font-metadata-default);
  color: var(--str-chat__text-link);
}

.str-chat .str-chat__message-status {
  display: flex;
  align-items: center;
  justify-content: center;
  column-gap: var(--str-chat__space-2);
  position: relative;
  color: var(--str-chat__chat-text-timestamp);
}
.str-chat .str-chat__message-status svg {
  height: 16px;
  width: 16px;
}
.str-chat .str-chat__message-status svg.str-chat__message-status-read {
  color: var(--str-chat__accent-primary);
}

.str-chat__message--system {
  display: flex;
  padding-block: var(--str-chat__spacing-xs);
  width: 100%;
  justify-content: center;
}
.str-chat__message--system .str-chat__message--system__text {
  display: flex;
  max-width: 338px;
  padding: var(--str-chat__spacing-xs) var(--str-chat__spacing-sm);
  justify-content: center;
  align-items: center;
  gap: var(--str-chat__spacing-xs);
  border-radius: var(--str-chat__radius-xl);
  border: 1px solid var(--str-chat__border-core-subtle);
  background: var(--str-chat__background-core-surface-subtle);
  font: var(--str-chat__font-metadata-default);
}

/* Translation indicator: below reminder in message grid. */
.str-chat__message-translation-indicator {
  display: flex;
  align-items: center;
  grid-area: translation-indicator;
  padding-block: var(--str-chat__spacing-xxs);
  gap: var(--str-chat__spacing-xxs);
  margin: 0;
  background: transparent;
  color: var(--str-chat__text-primary);
}
.str-chat__message-translation-indicator,
.str-chat__message-translation-indicator .str-chat__message-translation-indicator__translation-toggle {
  font: var(--str-chat__font-metadata-default);
}
.str-chat__message-translation-indicator .str-chat__message-translation-indicator__sign {
  font: var(--str-chat__font-metadata-emphasis);
}
.str-chat__message-translation-indicator svg path {
  stroke-width: 1.5px;
}

.str-chat {
  --str-chat__quoted-message-bubble-background-color: var(
    --str-chat__secondary-background-color
  );
}
.str-chat .str-chat__message .str-chat__quoted-message-preview {
  background-color: var(--chat-bg-attachment);
  width: calc(var(--str-chat__message-with-attachment-max-width) - 2 * var(--str-chat__spacing-xs));
  max-width: 100%;
  min-width: 0;
}

/* Saved for Later: above pin indicator. Font and spacing aligned with pin indicator. */
.str-chat__message-saved-for-later {
  display: flex;
  align-items: center;
  gap: var(--str-chat__spacing-xxs);
  grid-area: message-saved-for-later;
  padding-block: var(--str-chat__spacing-xxs);
  margin: 0;
  background: transparent;
  color: var(--str-chat__accent-primary);
  font: var(--str-chat__font-metadata-emphasis);
}
.str-chat__message-saved-for-later .str-chat__icon {
  width: var(--str-chat__icon-size-xs);
  height: var(--str-chat__icon-size-xs);
}
.str-chat__message-saved-for-later .str-chat__icon path {
  stroke-width: var(--str-chat__icon-stroke-emphasis);
}

/* Remind Me: below pin indicator. Font and spacing aligned with pin indicator. */
.str-chat__message-reminder {
  display: flex;
  align-items: center;
  gap: var(--str-chat__spacing-xxs);
  grid-area: message-reminder;
  padding-block: var(--str-chat__spacing-xxs);
  margin: 0;
  background: transparent;
  color: var(--str-chat__text-primary);
  font: var(--str-chat__font-metadata-emphasis);
}
.str-chat__message-reminder .str-chat__icon path {
  stroke-width: var(--str-chat__icon-stroke-default);
}
.str-chat__message-reminder .str-chat__message-reminder__time-left {
  font: var(--str-chat__font-metadata-default);
}

.str-chat__message-replies-count-button-wrapper {
  grid-area: replies;
  --replies-button-connector-width: 16px;
  --replies-button-connector-height: 36px;
  --replies-button-connector-stroke-width: 1px;
  display: flex;
  padding-block-start: var(--str-chat__spacing-xxs);
  padding-block-end: var(--str-chat__spacing-xxs);
  margin-block-start: var(--str-chat__spacing-xxs);
  position: relative;
}
.str-chat__message-replies-count-button-wrapper::after {
  content: "";
  position: absolute;
  height: var(--replies-button-connector-height);
  width: var(--replies-button-connector-width);
  background: transparent;
  align-self: end;
  bottom: calc(50% - var(--replies-button-connector-stroke-width) / 2);
}
.str-chat__message-replies-count-button-wrapper .str-chat__message-replies-count-button {
  padding: unset;
  background: unset;
  border: unset;
  cursor: pointer;
  border-radius: var(--str-chat__radius-max);
  gap: var(--str-chat__spacing-xs);
  display: flex;
  flex-direction: row;
  align-items: center;
  color: var(--str-chat__text-link);
  font: var(--str-chat__font-heading-xs);
}

.str-chat__message.str-chat__message--me .str-chat__message-replies-count-button-wrapper {
  justify-self: flex-end;
}
.str-chat__message.str-chat__message--me .str-chat__message-replies-count-button-wrapper .str-chat__message-replies-count-button {
  flex-direction: row;
}
.str-chat__message.str-chat__message--me .str-chat__message-replies-count-button-wrapper {
  padding-inline-end: var(--str-chat__spacing-xl);
}
.str-chat__message.str-chat__message--me .str-chat__message-replies-count-button-wrapper::after {
  border-end-end-radius: var(--str-chat__radius-max);
  border-inline-end: var(--replies-button-connector-stroke-width) solid var(--chat-thread-connector);
  border-block-end: var(--replies-button-connector-stroke-width) solid var(--chat-thread-connector);
  inset-inline-end: 0;
}

.str-chat__message.str-chat__message--other .str-chat__message-replies-count-button-wrapper {
  justify-self: flex-start;
}
.str-chat__message.str-chat__message--other .str-chat__message-replies-count-button-wrapper .str-chat__message-replies-count-button {
  flex-direction: row-reverse;
}
.str-chat__message.str-chat__message--other .str-chat__message-replies-count-button-wrapper {
  padding-inline-start: var(--str-chat__spacing-xl);
}
.str-chat__message.str-chat__message--other .str-chat__message-replies-count-button-wrapper::after {
  border-end-start-radius: var(--str-chat__radius-max);
  border-inline-start: var(--replies-button-connector-stroke-width) solid var(--chat-thread-connector);
  border-block-end: var(--replies-button-connector-stroke-width) solid var(--chat-thread-connector);
  inset-inline-start: 0;
}

.str-chat__message-actions-box {
  min-width: 180px;
}
.str-chat__message-actions-box .str-chat__message-actions-box__submenu--download-attachments {
  max-width: 256px;
}
.str-chat__message-actions-box.str-chat__message-actions-box--hidden {
  visibility: hidden;
  pointer-events: none;
}

.str-chat__message-options {
  grid-area: options;
  align-items: flex-start;
  justify-content: flex-end;
  flex-direction: row-reverse;
  width: var(--str-chat-message-options-size);
  --str-chat-icon-color: var(--str-chat__message-options-color);
}
.str-chat__message-options .str-chat__message-actions-box-button,
.str-chat__message-options .str-chat__message-reply-in-thread-button,
.str-chat__message-options .str-chat__message-reactions-button {
  background: none;
  border: none;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  width: var(--str-chat__message-options-button-size);
  height: var(--str-chat__message-options-button-size);
  border-radius: var(--str-chat__message-options-border-radius);
  color: var(--str-chat__message-options-color);
}
.str-chat__message-options .str-chat__message-actions-box-button:active,
.str-chat__message-options .str-chat__message-reply-in-thread-button:active,
.str-chat__message-options .str-chat__message-reactions-button:active {
  color: var(--str-chat__message-options-active-color);
}
.str-chat__message-options .str-chat__message-actions-box-button {
  position: relative;
}

.str-chat .str-chat__message-actions-list-item-button.str-chat__message-actions-list-item-button--react {
  display: none;
}

@media (max-width: 767px) {
  .str-chat .str-chat__message-options .str-chat__button.str-chat__message-reactions-button,
  .str-chat .str-chat__message-options .str-chat__button.str-chat__message-reply-in-thread-button {
    display: none;
  }
  .str-chat .str-chat__message-actions-list-item-button.str-chat__message-actions-list-item-button--react {
    display: flex;
  }
}
.str-chat__message-bounce-alert {
  max-width: 300px;
}
.str-chat__message-bounce-alert .str-chat__alert-header svg.str-chat__icon--exclamation-mark {
  color: var(--str-chat__text-tertiary);
}

.str-chat {
  --str-chat__attachment-preview-close-icon-background: var(
    --str-chat__control-remove-control-bg
  );
  --str-chat__attachment-preview-close-icon-color: var(
    --str-chat__control-remove-control-icon
  );
  --str-chat__attachment-preview-close-icon-border-color: var(
    --str-chat__control-remove-control-border
  );
  --str-chat__attachment-preview-retry-icon-color: var(--str-chat__accent-primary);
  --str-chat__attachment-preview-download-icon-color: var(--str-chat__text-secondary);
  --str-chat__attachment-preview-overlay-color: var(--background-core-overlay);
  /* React-specific preview variants (classes diverged from v2 theme) */
  --str-chat__attachment-preview-media-video-indicator-background-color: var(
    --chat-bg-typing-indicator
  );
  --str-chat__attachment-preview-media-video-indicator-color: var(--str-chat__badge-text);
  --str-chat__attachment-preview-media-video-indicator-border-radius: var(
    --str-chat__radius-max
  );
  --str-chat__attachment-preview-media-overlay-hover-background-color: var(
    --str-chat__background-utility-hover
  );
  --str-chat__attachment-preview-media-overlay-pressed-background-color: var(
    --str-chat__background-utility-pressed
  );
  --str-chat__attachment-preview-media-upload-error-overlay-background-color: var(
    --background-core-overlay
  );
}
.str-chat .str-chat__message-composer-voice-preview-slot {
  display: flex;
  align-items: center;
  width: 100%;
  padding: var(--str-chat__spacing-xxs);
  min-width: 0;
}
.str-chat .str-chat__message-composer-voice-preview-slot .str-chat__attachment-preview-audio {
  width: 100%;
  min-width: 0;
  max-width: none;
}
.str-chat .str-chat__message-composer-voice-preview-slot .str-chat__attachment-preview-audio .str-chat__attachment-preview-file__data {
  width: 100%;
}
.str-chat .str-chat__attachment-preview-list {
  background: transparent;
  color: var(--str-chat__text-primary);
  padding: var(--str-chat__spacing-xxs);
  display: flex;
  align-items: flex-start;
  align-content: flex-start;
  flex-wrap: wrap;
  justify-content: flex-start;
  width: 100%;
  min-width: 0;
  max-width: 100%;
  min-height: 86.4px;
  max-height: 122.4px;
  overflow-x: hidden;
  overflow-y: auto;
  flex: 0 1 auto;
  gap: var(--str-chat__spacing-md);
}
.str-chat .str-chat__attachment-preview-audio,
.str-chat .str-chat__attachment-preview-voice-recording {
  --chat-border-on-chat: var(--str-chat__chat-border-on-chat-incoming);
}
.str-chat .str-chat__attachment-preview-audio,
.str-chat .str-chat__attachment-preview-file,
.str-chat .str-chat__attachment-preview-voice-recording,
.str-chat .str-chat__attachment-preview-unsupported {
  background: transparent;
  color: var(--str-chat__text-primary);
  border-radius: var(--str-chat__radius-lg);
  border: 1px solid var(--str-chat__border-core-default);
  display: flex;
  align-items: center;
  flex: 0 1 auto;
  gap: var(--str-chat__spacing-sm);
  padding: var(--str-chat__spacing-md);
  padding-inline-end: var(--str-chat__spacing-sm);
  width: 290px;
  height: 72px;
}
.str-chat .str-chat__attachment-preview-audio .str-chat__attachment-preview-file__data {
  padding-inline-end: var(--str-chat__spacing-xs);
}
.str-chat .str-chat__attachment-preview-audio,
.str-chat .str-chat__attachment-preview-file,
.str-chat .str-chat__attachment-preview-voice-recording,
.str-chat .str-chat__attachment-preview-unsupported,
.str-chat .str-chat__attachment-preview-media {
  position: relative;
}
.str-chat .str-chat__attachment-preview-audio:focus-visible,
.str-chat .str-chat__attachment-preview-file:focus-visible,
.str-chat .str-chat__attachment-preview-voice-recording:focus-visible,
.str-chat .str-chat__attachment-preview-unsupported:focus-visible,
.str-chat .str-chat__attachment-preview-media:focus-visible {
  outline: 2px solid var(--str-chat__border-utility-focused);
  outline-offset: 2px;
}
.str-chat .str-chat__attachment-preview-media {
  background: transparent;
  color: var(--str-chat__text-primary);
  border-radius: var(--str-chat__message-bubble-radius-attachment);
  border: 1px solid var(--str-chat__border-core-default);
  flex: 0 0 auto;
  width: 72px;
  height: 72px;
  cursor: pointer;
}
.str-chat .str-chat__attachment-preview-media .str-chat__attachment-preview-media__thumbnail-wrapper {
  border-radius: max(0px, var(--str-chat__message-bubble-radius-attachment) - 1px);
  overflow: hidden;
  height: 100%;
  width: 100%;
}
.str-chat .str-chat__attachment-preview-media .str-chat__attachment-preview-media__thumbnail-wrapper img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.str-chat .str-chat__attachment-preview-media__overlay {
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  inset: 0;
  overflow: hidden;
  border-radius: var(--str-chat__message-bubble-radius-attachment);
}
.str-chat .str-chat__attachment-preview-media__overlay:hover::after {
  content: "";
  position: absolute;
  inset: 0;
  background: var(--str-chat__attachment-preview-media-overlay-hover-background-color);
  pointer-events: none;
}
.str-chat .str-chat__attachment-preview-media__overlay:hover {
  background-color: var(--str-chat__attachment-preview-media-overlay-hover-background-color);
}
.str-chat .str-chat__attachment-preview-media__overlay:active::after {
  content: "";
  position: absolute;
  inset: 0;
  background: var(--str-chat__attachment-preview-media-overlay-pressed-background-color);
  pointer-events: none;
}
.str-chat .str-chat__attachment-preview-media__overlay:active {
  background-color: var(--str-chat__attachment-preview-media-overlay-pressed-background-color);
}
.str-chat .str-chat__attachment-preview-media__overlay .str-chat__loading-indicator,
.str-chat .str-chat__attachment-preview-media__overlay .str-chat__progress-indicator {
  width: var(--str-chat__icon-size-sm);
  height: var(--str-chat__icon-size-sm);
  position: absolute;
  inset-inline-start: var(--str-chat__spacing-xxs);
  bottom: var(--str-chat__spacing-xxs);
  border-radius: var(--str-chat__radius-max);
  background: var(--str-chat__background-core-elevation-0);
  color: var(--str-chat__accent-primary);
}
.str-chat .str-chat__attachment-preview-media__overlay .str-chat__icon--exclamation {
  padding: var(--str-chat__spacing-xxxs);
  width: var(--str-chat__icon-size-sm);
  height: var(--str-chat__icon-size-sm);
  position: absolute;
  inset-inline-start: var(--str-chat__spacing-xxs);
  bottom: var(--str-chat__spacing-xxs);
  border: 2px solid var(--str-chat__badge-border);
  border-radius: var(--str-chat__radius-max);
  background: var(--str-chat__badge-bg-error);
  color: var(--str-chat__badge-text-on-accent);
}
.str-chat .str-chat__attachment-preview-media--upload-error .str-chat__attachment-preview-media__overlay {
  background-color: var(--str-chat__attachment-preview-media-upload-error-overlay-background-color);
}
.str-chat .str-chat__attachment-preview-media--uploading .str-chat__attachment-preview-media__overlay {
  background: linear-gradient(180deg, var(--str-chat__base-white) 0%, var(--str-chat__slate-100) 100%);
}
.str-chat .str-chat__attachment-preview-file__icon {
  display: flex;
  align-items: center;
}
.str-chat .str-chat__attachment-preview-file__info {
  min-width: 0;
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: var(--str-chat__spacing-xxs);
}
.str-chat .str-chat__attachment-preview-file__info .str-chat__attachment-preview-file-name {
  white-space: nowrap;
  overflow-y: visible;
  overflow-x: hidden;
  overflow-x: clip;
  text-overflow: ellipsis;
  max-width: 100%;
  font: var(--str-chat__font-caption-emphasis);
}
.str-chat .str-chat__attachment-preview-file__info .str-chat__attachment-preview-file__data {
  display: flex;
  align-items: center;
  width: min(160px, 100%);
  max-width: 100%;
  gap: var(--str-chat__spacing-xxs);
  color: var(--str-chat__text-secondary);
  font: var(--str-chat__font-metadata-default);
}
.str-chat .str-chat__attachment-preview-file__info .str-chat__attachment-preview-file__data .str-chat__loading-indicator,
.str-chat .str-chat__attachment-preview-file__info .str-chat__attachment-preview-file__data .str-chat__progress-indicator {
  width: var(--str-chat__icon-size-sm);
  height: var(--str-chat__icon-size-sm);
  color: var(--str-chat__accent-primary);
}
.str-chat .str-chat__attachment-preview-file__info .str-chat__attachment-preview-file__data .str-chat__attachment-preview-file__fatal-error {
  display: flex;
  align-items: center;
  gap: var(--str-chat__spacing-xxs);
  color: var(--color-accent-error);
}
.str-chat .str-chat__attachment-preview-file__info .str-chat__attachment-preview-file__data .str-chat__attachment-preview-file__retriable-error {
  display: flex;
  align-items: center;
  gap: var(--str-chat__spacing-xxs);
  white-space: nowrap;
}
.str-chat .str-chat__attachment-preview-file__info .str-chat__attachment-preview-file__data .str-chat__attachment-preview-file__retriable-error .str-chat__icon--exclamation-triangle path {
  fill: var(--str-chat__accent-error);
}
.str-chat .str-chat__attachment-preview-file__info .str-chat__attachment-preview-file__data .str-chat__attachment-preview-file__retriable-error .str-chat__attachment-preview-file__retry-upload-button {
  background: none;
  border: none;
  padding: 0;
  color: var(--str-chat__text-link);
  cursor: pointer;
  line-height: var(--str-chat__typography-line-height-tight, 16px);
}
.str-chat .str-chat__button-play {
  height: var(--str-chat__button-visual-height-md);
  width: var(--str-chat__button-visual-height-md);
  border: 1px solid var(--control-play-control-border);
}

.str-chat__location-preview-image,
.str-chat__link-preview-card .str-chat__image-placeholder,
.str-chat__attachment-preview__thumbnail {
  border-radius: var(--str-chat__radius-md);
  overflow: hidden;
  width: 40px;
  height: 40px;
  object-fit: cover;
}

.str-chat {
  --str-chat__attachment-selector-button-icon-color: var(--button-style-outline-text);
  --str-chat__attachment-selector-button-icon-color-hover: var(
    --str-chat__text-secondary
  );
  --str-chat__attachment-selector-actions-menu-button-icon-color: var(
    --str-chat__text-secondary
  );
  --str-chat__attachment-selector-actions-menu-button-icon-color-active: var(
    --str-chat__text-secondary
  );
}
.str-chat .str-chat__attachment-selector .str-chat__attachment-selector__menu-button .str-chat__attachment-selector__menu-button__icon {
  height: var(--str-chat__icon-size-md);
  width: var(--str-chat__icon-size-md);
  color: var(--str-chat__attachment-selector-button-icon-color);
}
.str-chat .str-chat__attachment-selector .str-chat__attachment-selector__menu-button:hover .str-chat__attachment-selector__menu-button__icon {
  color: var(--str-chat__attachment-selector-button-icon-color-hover);
}
.str-chat .str-chat__file-input {
  display: none;
}
.str-chat .str-chat__attachment-selector-actions-menu {
  min-width: 200px;
}
.str-chat .str-chat__attachment-selector-actions-menu .str-chat__attachment-selector-actions-menu__button .str-chat__context-menu__button__icon {
  color: var(--str-chat__attachment-selector-actions-menu-button-icon-color);
}
.str-chat .str-chat__attachment-selector-actions-menu .str-chat__attachment-selector-actions-menu__button:hover .str-chat__context-menu__button__icon, .str-chat .str-chat__attachment-selector-actions-menu .str-chat__attachment-selector-actions-menu__button:focus .str-chat__context-menu__button__icon {
  color: var(--str-chat__attachment-selector-actions-menu-button-icon-color-active);
}
.str-chat .str-chat__message-composer--floating .str-chat__attachment-selector__menu-button {
  background-color: var(--str-chat__background-core-elevation-1);
  box-shadow: var(--shadow-web-light-elevation-2);
}

.str-chat__command-chip {
  display: flex;
  padding: var(--str-chat__spacing-xxs) var(--str-chat__spacing-xs);
  justify-content: center;
  align-items: center;
  gap: var(--str-chat__spacing-xxs);
  border-radius: var(--str-chat__radius-max);
  color: var(--str-chat__text-on-inverse);
  background-color: var(--str-chat__background-core-inverse);
  text-transform: uppercase;
  font: var(--str-chat__font-metadata-emphasis);
}
.str-chat__command-chip .str-chat__command-chip__close-button {
  background: none;
  border: none;
  padding: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  color: inherit;
}

.str-chat__context-menu.str-chat__context-menu--commands .str-chat__context-menu__button--command {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) minmax(0, 2fr);
}
.str-chat__context-menu.str-chat__context-menu--commands .str-chat__context-menu__button--command .str-chat__context-menu__button__icon {
  grid-column: 1;
}
.str-chat__context-menu.str-chat__context-menu--commands .str-chat__context-menu__button--command .str-chat__context-menu__button__label {
  grid-column: 2;
}
.str-chat__context-menu.str-chat__context-menu--commands .str-chat__context-menu__button--command .str-chat__context-menu__button__details {
  grid-column: 3;
  text-align: left;
}
.str-chat__context-menu.str-chat__context-menu--commands .str-chat__context-menu__header--commands:not(.str-chat__context-menu__header--submenu-commands) {
  padding: var(--str-chat__spacing-xs);
}

.str-chat__dropzone-root {
  position: relative;
  min-height: 0;
  min-width: 0;
  max-width: 100%;
  max-height: 100%;
  flex: 1;
}

.str-chat__dropzone-root:empty {
  display: none;
}

.str-chat__dropzone-container {
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  inset: 0;
  z-index: 5;
  background-color: var(--str-chat__background-core-overlay-light);
  color: var(--str-chat__text-primary);
  -webkit-backdrop-filter: blur(3.5px);
          backdrop-filter: blur(3.5px);
  font: var(--str-chat__font-heading-sm);
}
.str-chat__dropzone-container .str-chat__dropzone-container__content {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--str-chat__spacing-xs, 8px);
}
.str-chat__dropzone-container svg {
  height: 32px;
  width: 32px;
}
.str-chat__dropzone-container p {
  margin: unset;
}

@supports not ((-webkit-backdrop-filter: blur(1px)) or (backdrop-filter: blur(1px))) {
  .str-chat__dropzone-container {
    -webkit-backdrop-filter: none;
            backdrop-filter: none;
  }
}
.str-chat__location-preview {
  position: relative;
  width: 100%;
  min-width: 0;
  display: flex;
  align-items: start;
  justify-content: space-around;
  gap: var(--str-chat__spacing-xs);
  padding-inline: var(--str-chat__spacing-xs) var(--str-chat__spacing-sm);
  padding-block: var(--str-chat__spacing-xs);
  background-color: var(--str-chat__chat-bg-outgoing);
  border-radius: var(--str-chat__message-bubble-radius-attachment);
}
.str-chat__location-preview .str-chat__location-preview-image {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: var(--str-chat__background-core-overlay-light);
  width: 40px;
  height: 40px;
}
.str-chat__location-preview .str-chat__location-preview-image .str-chat__icon {
  width: 20px;
  height: 20px;
}
.str-chat__location-preview .str-chat__location-preview__data {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-width: 0;
  flex: 1;
  height: 100%;
}
.str-chat__location-preview .str-chat__location-preview__data .str-chat__location-preview__data__title,
.str-chat__location-preview .str-chat__location-preview__data .str-chat__location-preview__data__subtitle {
  white-space: nowrap;
  overflow-y: visible;
  overflow-x: hidden;
  overflow-x: clip;
  text-overflow: ellipsis;
}
.str-chat__location-preview .str-chat__location-preview__data .str-chat__location-preview__data__title {
  font: var(--str-chat__font-metadata-emphasis);
}
.str-chat__location-preview .str-chat__location-preview__data .str-chat__location-preview__data__subtitle,
.str-chat__location-preview .str-chat__location-preview__data .str-chat__location-preview__data__sharing-duration {
  font: var(--str-chat__font-metadata-default);
}

.str-chat__link-preview-list {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.75rem;
  width: 100%;
  padding: var(--str-chat__spacing-xxs);
}

.str-chat__link-preview-card {
  position: relative;
  width: 100%;
  min-width: 0;
  display: flex;
  align-items: center;
  justify-content: space-around;
  gap: var(--str-chat__spacing-xs);
  padding-inline: var(--str-chat__spacing-xs) var(--str-chat__spacing-sm);
  padding-block: var(--str-chat__spacing-xs);
  background-color: var(--str-chat__chat-bg-outgoing);
  border-radius: var(--str-chat__message-bubble-radius-attachment);
}
.str-chat__link-preview-card .str-chat__tooltip {
  white-space: nowrap;
  overflow-y: visible;
  overflow-x: hidden;
  overflow-x: clip;
  text-overflow: ellipsis;
  display: block;
  max-width: 250px;
  padding-inline: 0.5rem;
}
.str-chat__link-preview-card .str-chat__link-preview-card__content {
  min-width: 0;
  flex: 1;
}
.str-chat__link-preview-card .str-chat__link-preview-card__content .str-chat__link-preview-card__content-title,
.str-chat__link-preview-card .str-chat__link-preview-card__content .str-chat__link-preview-card__content-description,
.str-chat__link-preview-card .str-chat__link-preview-card__content .str-chat__link-preview-card__content__url {
  white-space: nowrap;
  overflow-y: visible;
  overflow-x: hidden;
  overflow-x: clip;
  text-overflow: ellipsis;
}
.str-chat__link-preview-card .str-chat__link-preview-card__content .str-chat__link-preview-card__content-title {
  font: var(--str-chat__font-metadata-emphasis);
}
.str-chat__link-preview-card .str-chat__link-preview-card__content .str-chat__link-preview-card__content-description,
.str-chat__link-preview-card .str-chat__link-preview-card__content .str-chat__link-preview-card__content__url {
  font: var(--str-chat__font-metadata-default);
}
.str-chat__link-preview-card .str-chat__link-preview-card__content .str-chat__link-preview-card__content__url {
  display: flex;
  align-items: center;
  gap: var(--str-chat__spacing-xxs);
}

.str-chat {
  --str-chat__message-composer-max-width: 1120px;
  --str-chat__message-composer-padding: var(--str-chat__spacing-md);
  --str-chat__message-composer-command-transition-duration: 280ms;
  --str-chat__message-composer-command-ease: cubic-bezier(0.22, 1, 0.32, 1);
}
@keyframes str-chat-command-chip-enter-ltr {
  from {
    opacity: 0;
    transform: translate3d(-0.75rem, 0, 0);
  }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}
@keyframes str-chat-command-chip-enter-rtl {
  from {
    opacity: 0;
    transform: translate3d(0.75rem, 0, 0);
  }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}
.str-chat .str-chat__message-composer-container {
  width: 100%;
  min-height: fit-content;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--str-chat__spacing-md);
  justify-content: center;
  padding: var(--str-chat__message-composer-padding);
  min-width: 0;
  border-top: 1px solid var(--str-chat__border-core-default);
  background: var(--str-chat__background-core-elevation-1);
}
.str-chat .str-chat__message-composer {
  display: flex;
  align-items: end;
  width: 100%;
  max-width: var(--str-chat__message-composer-max-width);
  gap: var(--str-chat__spacing-xs);
  min-width: 0;
  flex-shrink: 1;
  transition: gap var(--str-chat__message-composer-command-transition-duration) var(--str-chat__message-composer-command-ease);
}
.str-chat {
  /* Slot must be at least as wide as the + control (incl. border/outline) so the composer never overlaps it */
}
.str-chat .str-chat__message-composer > .str-chat__attachment-selector {
  flex-shrink: 0;
  flex-grow: 0;
  width: var(--str-chat__message-composer-attachment-slot-width, calc(var(--str-chat__button-visual-height-lg) + 2 * var(--str-chat__spacing-xxs)));
  max-width: var(--str-chat__message-composer-attachment-slot-width, calc(var(--str-chat__button-visual-height-lg) + 2 * var(--str-chat__spacing-xxs)));
  box-sizing: border-box;
  opacity: 1;
  transform: scale(1);
  transform-origin: center bottom;
  transition: width var(--str-chat__message-composer-command-transition-duration) var(--str-chat__message-composer-command-ease), max-width var(--str-chat__message-composer-command-transition-duration) var(--str-chat__message-composer-command-ease), opacity calc(var(--str-chat__message-composer-command-transition-duration) * 0.85) ease-out, transform var(--str-chat__message-composer-command-transition-duration) var(--str-chat__message-composer-command-ease), margin var(--str-chat__message-composer-command-transition-duration) var(--str-chat__message-composer-command-ease);
  overflow: hidden;
  pointer-events: auto;
  display: flex;
  align-items: flex-end;
  justify-content: center;
}
.str-chat .str-chat__message-composer--command-active {
  gap: 0;
}
.str-chat .str-chat__message-composer--command-active > .str-chat__attachment-selector {
  width: 0;
  max-width: 0;
  min-width: 0;
  margin-inline-end: 0;
  opacity: 0;
  transform: scale(0.55);
  pointer-events: none;
}
.str-chat .str-chat__message-composer--command-active .str-chat__command-chip {
  animation: str-chat-command-chip-enter-ltr var(--str-chat__message-composer-command-transition-duration) var(--str-chat__message-composer-command-ease) both;
}
.str-chat [dir=rtl] .str-chat__message-composer--command-active .str-chat__command-chip {
  animation-name: str-chat-command-chip-enter-rtl;
}
.str-chat .str-chat__message-composer-compose-area {
  display: flex;
  flex-direction: column;
  flex: 1 1 0;
  min-width: 0;
  background: var(--composer-bg);
  color: var(--str-chat__input-text-default);
  border-radius: var(--str-chat__radius-3xl);
  border: 1px solid var(--str-chat__border-core-default);
}
.str-chat .str-chat__message-composer-previews {
  display: flex;
  flex-direction: column;
  max-height: 400px;
  overflow: hidden;
  width: 100%;
  padding: var(--str-chat__spacing-xs) var(--str-chat__spacing-xs) 0;
  gap: var(--str-chat__spacing-xxs);
  min-width: 0;
  min-height: 0;
}
.str-chat .str-chat__message-composer-controls {
  display: flex;
  align-items: end;
  width: 100%;
  gap: var(--str-chat__spacing-xs);
  padding: calc(var(--str-chat__spacing-sm) - 1px);
}
.str-chat .str-chat__message-composer-controls .str-chat__message-composer-controls__text-composition-controls {
  flex: 1;
  display: flex;
  flex-direction: column;
  min-height: 26px;
  justify-content: center;
  gap: var(--str-chat__spacing-sm);
}
.str-chat .str-chat__message-composer-controls .str-chat__message-composer-controls__text-composition-controls .str-chat__message-composer-controls__text-composition-controls__command-chip-container {
  height: 100%;
  display: flex;
  align-items: flex-end;
  flex: 0 0 auto;
  align-self: flex-end;
}
.str-chat .str-chat__message-composer-controls .str-chat__message-composer-controls__text-composition-controls__text {
  display: flex;
  align-items: center;
  width: 100%;
  min-width: 0;
  gap: var(--str-chat__spacing-xxs);
}
.str-chat .str-chat__message-composer-controls .str-chat__message-composer__actions,
.str-chat .str-chat__message-composer-controls .str-chat__message-composer__additional-actions {
  height: 26px;
  display: flex;
  align-items: center;
}
.str-chat .str-chat__message-composer-controls .str-chat__message-composer__additional-actions {
  flex-shrink: 0;
  min-width: 0;
  max-width: 6rem;
  opacity: 1;
  transition: max-width var(--str-chat__message-composer-command-transition-duration) var(--str-chat__message-composer-command-ease), opacity calc(var(--str-chat__message-composer-command-transition-duration) * 0.85) ease-out;
}
.str-chat .str-chat__message-composer-controls .str-chat__emoji-picker-button {
  display: flex;
  cursor: pointer;
}
.str-chat .str-chat__message-composer-controls .str-chat__emoji-picker-button svg {
  height: var(--str-chat__icon-size-md);
  width: var(--str-chat__icon-size-md);
}
.str-chat .str-chat__message-composer-controls .str-chat__start-recording-audio-button .str-chat__icon--voice {
  height: var(--str-chat__icon-size-md);
  width: var(--str-chat__icon-size-md);
}
.str-chat .str-chat__message-composer-controls .str-chat__send-button .str-chat__icon--send {
  height: var(--str-chat__icon-size-md);
  width: var(--str-chat__icon-size-md);
}
.str-chat .str-chat__message-composer-controls .str-chat__stop-ai-generation-button {
  width: 30px;
  height: 28px;
  cursor: pointer;
  background-image: var(--str-chat__circle-stop-icon);
  background-color: transparent;
  border-width: 0;
}
.str-chat .str-chat__message-composer-controls .str-chat__message-composer-cooldown {
  background: var(--str-chat__background-utility-disabled);
  color: var(--str-chat__text-disabled);
  border-radius: var(--str-chat__button-radius-full);
  display: flex;
  align-items: center;
  justify-content: center;
  height: var(--str-chat__button-visual-height-md);
  width: var(--str-chat__button-visual-height-md);
}
.str-chat .str-chat__message-composer-controls [dir=rtl] .str-chat__send-button svg,
.str-chat .str-chat__message-composer-controls [dir=rtl] .str-chat__start-recording-audio-button svg {
  transform: scale(-1, 1);
}
.str-chat .str-chat__textarea {
  flex: 1;
  min-width: 0;
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
}
.str-chat .str-chat__textarea textarea {
  background: transparent;
  color: var(--str-chat__input-text-default);
  font: var(--str-chat__font-body-default);
  resize: none;
  border: none;
  box-shadow: none;
  outline: none;
  width: 100%;
  scrollbar-width: none;
}
.str-chat .str-chat__textarea textarea:focus-visible {
  outline: none;
}
.str-chat .str-chat__message-composer--command-active .str-chat__message-composer__additional-actions {
  max-width: 0;
  opacity: 0;
  pointer-events: none;
}
@media (prefers-reduced-motion: reduce) {
  .str-chat .str-chat__message-composer {
    transition-duration: 0.01ms;
  }
  .str-chat .str-chat__message-composer > .str-chat__attachment-selector,
  .str-chat .str-chat__message-composer-controls .str-chat__message-composer__additional-actions {
    transition-duration: 0.01ms;
  }
  .str-chat .str-chat__message-composer--command-active .str-chat__command-chip {
    animation: none;
  }
}
.str-chat .str-chat__recording-permission-denied-notification {
  max-width: 100%;
  padding: var(--str-chat__spacing-md);
  font-size: var(--str-chat__typography-font-size-sm);
  line-height: var(--str-chat__typography-line-height-tight);
}
.str-chat .str-chat__recording-permission-denied-notification .str-chat__recording-permission-denied-notification__heading {
  font-weight: var(--str-chat__typography-font-weight-semi-bold);
}
.str-chat .str-chat__recording-permission-denied-notification .str-chat__recording-permission-denied-notification__message {
  margin: var(--str-chat__spacing-xs) 0 0;
  font-weight: var(--str-chat__typography-font-weight-regular, 400);
}

.str-chat__quoted-message-indicator {
  background-color: var(--chat-reply-indicator, var(--str-chat__chat-reply-indicator-incoming));
  border-radius: var(--str-chat__radius-max);
  height: 100%;
  width: 2px;
}

.str-chat__quoted-message-indicator--own-message {
  background-color: var(--str-chat__chat-reply-indicator-outgoing);
}

.str-chat .str-chat__message-composer__quoted-message-preview-slot {
  padding: var(--str-chat__spacing-xxs);
}
.str-chat .str-chat__quoted-message-preview {
  display: flex;
  align-items: center;
  gap: var(--str-chat__spacing-xs);
  position: relative;
  background-color: var(--str-chat__chat-bg-incoming);
  padding: var(--str-chat__spacing-xs);
  border-radius: var(--str-chat__message-bubble-radius-attachment);
}
.str-chat .str-chat__quoted-message-preview .str-chat__quoted-message-indicator {
  height: 36px;
}
.str-chat .str-chat__quoted-message-preview .str-chat__quoted-message-preview__content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  flex: 1;
  min-width: 0;
  height: 40px;
  font: var(--str-chat__font-caption-default);
}
.str-chat .str-chat__quoted-message-preview .str-chat__quoted-message-preview__content .str-chat__quoted-message-preview__author {
  white-space: nowrap;
  overflow-y: visible;
  overflow-x: hidden;
  overflow-x: clip;
  text-overflow: ellipsis;
  overflow-x: hidden;
  font: var(--str-chat__font-caption-emphasis);
}
.str-chat .str-chat__quoted-message-preview .str-chat__quoted-message-preview__content .str-chat__quoted-message-preview__message {
  display: flex;
  align-items: center;
  gap: var(--str-chat__spacing-xxs);
}
.str-chat .str-chat__quoted-message-preview .str-chat__quoted-message-preview__content .str-chat__quoted-message-preview__message svg {
  height: var(--str-chat__typography-font-size-xs);
  width: var(--str-chat__typography-font-size-xs);
}
.str-chat .str-chat__quoted-message-preview .str-chat__quoted-message-preview__content .str-chat__quoted-message-preview__message .str-chat__icon--voice path {
  stroke-width: 2;
}
.str-chat .str-chat__quoted-message-preview .str-chat__quoted-message-preview__content .str-chat__quoted-message-preview__message .str-chat__quoted-message-preview__message-text {
  white-space: nowrap;
  overflow-y: visible;
  overflow-x: hidden;
  overflow-x: clip;
  text-overflow: ellipsis;
  min-width: 0;
  flex: 1 1;
}
.str-chat .str-chat__quoted-message-preview .str-chat__quoted-message-preview__content .str-chat__quoted-message-preview__message .str-chat__quoted-message-preview__message-text * {
  white-space: nowrap;
  color: var(--str-chat__chat-text-incoming);
}
.str-chat .str-chat__quoted-message-preview .str-chat__quoted-message-preview__image {
  display: flex;
  position: relative;
  flex-shrink: 0;
  width: 40px;
  height: 40px;
  min-width: 40px;
  overflow: hidden;
}
.str-chat .str-chat__quoted-message-preview .str-chat__quoted-message-preview__image img {
  object-fit: cover;
}
.str-chat .str-chat__quoted-message-preview .str-chat__quoted-message-preview__image .str-chat__attachment-preview__thumbnail__play-indicator {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 20px;
  width: 20px;
  position: absolute;
  inset-inline-start: 10px;
  top: 10px;
  border-radius: var(--str-chat__radius-max);
  background-color: var(--control-play-control-bg);
}
.str-chat .str-chat__quoted-message-preview .str-chat__quoted-message-preview__image .str-chat__attachment-preview__thumbnail__play-indicator .str-chat__icon--play-fill {
  height: 12px;
  width: 12px;
}
.str-chat .str-chat__quoted-message-preview .str-chat__quoted-message-preview__image .str-chat__attachment-preview__thumbnail__play-indicator .str-chat__icon--play-fill path {
  fill: var(--control-play-control-icon);
}
.str-chat .str-chat__quoted-message-preview--own {
  background-color: var(--str-chat__chat-bg-outgoing);
}

.str-chat__button.str-chat__attachment-preview__remove-button {
  position: absolute;
  z-index: 1;
  top: -6px;
  inset-inline-end: -6px;
  background-color: var(--str-chat__attachment-preview-close-icon-background);
  border: 3px solid var(--str-chat__attachment-preview-close-icon-border-color);
  color: var(--str-chat__attachment-preview-close-icon-color);
  border-radius: var(--str-chat__radius-max);
}

.str-chat__send-to-channel-checkbox__container {
  width: 100%;
  display: flex;
  align-items: flex-start;
  max-width: var(--str-chat__message-composer-max-width);
  color: var(--str-chat__text-tertiary);
}
.str-chat__send-to-channel-checkbox__container.str-chat__send-to-channel-checkbox__container--checked {
  color: var(--str-chat__text-primary);
}
.str-chat__send-to-channel-checkbox__container .str-chat__send-to-channel-checkbox__field {
  position: relative;
  display: flex;
  align-items: center;
  gap: var(--str-chat__spacing-xs);
  cursor: pointer;
  /* Visually hide the native checkbox; it stays focusable and clickable for a11y */
}
.str-chat__send-to-channel-checkbox__container .str-chat__send-to-channel-checkbox__field .str-chat__send-to-channel-checkbox__input {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  opacity: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
  appearance: none;
}
.str-chat__send-to-channel-checkbox__container .str-chat__send-to-channel-checkbox__field .str-chat__send-to-channel-checkbox__visual {
  width: 20px;
  height: 20px;
  border: 1px solid var(--str-chat__control-checkbox-border, #d5dbe1);
  border-radius: var(--str-chat__radius-sm);
  display: flex;
  align-items: center;
  justify-content: center;
  background: transparent;
  transition: background-color 0.15s ease, border-color 0.15s ease;
}
.str-chat__send-to-channel-checkbox__container .str-chat__send-to-channel-checkbox__field .str-chat__send-to-channel-checkbox__input:checked + .str-chat__send-to-channel-checkbox__visual {
  background-color: var(--control-radiocheck-bg-selected, var(--str-chat__accent-primary));
  border-color: var(--control-radiocheck-bg-selected, var(--str-chat__accent-primary));
}
.str-chat__send-to-channel-checkbox__container .str-chat__send-to-channel-checkbox__field .str-chat__send-to-channel-checkbox__checkmark {
  color: var(--str-chat__control-checkbox-icon);
  opacity: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: opacity 0.15s ease;
}
.str-chat__send-to-channel-checkbox__container .str-chat__send-to-channel-checkbox__field .str-chat__send-to-channel-checkbox__checkmark svg {
  width: 12px;
  height: 12px;
}
.str-chat__send-to-channel-checkbox__container .str-chat__send-to-channel-checkbox__field .str-chat__send-to-channel-checkbox__input:checked + .str-chat__send-to-channel-checkbox__visual .str-chat__send-to-channel-checkbox__checkmark {
  opacity: 1;
}
.str-chat__send-to-channel-checkbox__container .str-chat__send-to-channel-checkbox__field .str-chat__send-to-channel-checkbox__label {
  font: var(--str-chat__font-metadata-default);
  transition: color 0.15s ease, border-color 0.15s ease;
}

.str-chat__attachment-preview-unsupported {
  background: transparent;
  color: var(--str-chat__text-primary);
  border-radius: calc(var(--str-chat__message-bubble-radius-group-bottom) - var(--str-chat__attachment-margin));
  display: flex;
  align-items: center;
  justify-content: center;
  padding: var(--str-chat__spacing-md);
  column-gap: var(--str-chat__spacing-xs);
}
.str-chat__attachment-preview-unsupported .str-chat__icon {
  height: var(--str-chat__size-20);
  width: var(--str-chat__size-20);
}
.str-chat__attachment-preview-unsupported .str-chat__attachment-preview-unsupported__metadata {
  min-width: 0;
  flex: 1;
  height: -webkit-fill-available;
  height: -moz-available;
  height: stretch;
  display: flex;
  align-items: center;
}
.str-chat__attachment-preview-unsupported .str-chat__attachment-preview-unsupported__title {
  white-space: nowrap;
  overflow-y: visible;
  overflow-x: hidden;
  overflow-x: clip;
  text-overflow: ellipsis;
  font: var(--str-chat__font-caption-emphasis);
  color: var(--str-chat__text-primary);
  max-width: 100%;
  height: fit-content;
}

.str-chat__main-panel-inner {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  min-height: 0;
  position: relative;
  align-items: center;
}

.str-chat__message-list-main-panel {
  --str-chat__message-list-scroll-max-width: calc(
    var(--str-chat__message-composer-max-width) +
      (2 * var(--str-chat__message-composer-padding))
  );
}

.str-chat__message-list {
  overflow-y: auto;
  overflow-x: hidden;
  scrollbar-gutter: stable both-edges;
  overscroll-behavior: contain;
  display: flex;
  justify-content: center;
  position: relative;
  overscroll-behavior: none;
  width: 100%;
  height: 100%;
  max-height: 100%;
  background: var(--str-chat__background-core-app);
  color: var(--str-chat__text-primary);
}
.str-chat__message-list .str-chat__message-list-scroll {
  padding: 0;
}
.str-chat__message-list .str-chat__message-list-scroll .str-chat__li {
  max-width: 100%;
}
.str-chat__message-list .str-chat__message-list-scroll {
  width: 100%;
  max-width: var(--str-chat__message-list-scroll-max-width);
}
.str-chat__message-list .str-chat__message-list-scroll .str-chat__ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.str-chat__thread .str-chat__message-list .str-chat__message-list-scroll {
  padding-inline: 0;
  /* Max container 800px, 16px padding → 768px readable content; matches composer width + padding */
  max-width: var(--str-chat__message-list-scroll-max-width);
}
.str-chat__thread .str-chat__message-list .str-chat__message-list-scroll .str-chat__ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.str-chat__main-panel .str-chat__ul .str-chat__li:first-of-type {
  padding-top: 4.5rem;
}
.str-chat__main-panel .str-chat__ul .str-chat__date-separator + .str-chat__li:first-of-type {
  padding-top: inherit;
}

.str-chat__new-message-notification {
  position: absolute;
  inset-block-end: 16px;
  inset-inline-start: 0;
  inset-inline-end: 0;
  z-index: 2;
  display: flex;
  justify-content: center;
}
.str-chat__new-message-notification .str-chat__message-notification__label {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: var(--str-chat__spacing-xxs) var(--str-chat__spacing-sm);
  background-color: var(--str-chat__background-core-surface-subtle);
  border-radius: var(--str-chat__radius-max);
  font: var(--str-chat__font-metadata-emphasis);
  color: var(--str-chat__chat-text-system);
}

.str-chat__jump-to-latest-message {
  height: 40px;
  width: 40px;
  position: absolute;
  inset-block-end: var(--str-chat__spacing-md);
  inset-inline-end: max(var(--str-chat__spacing-md), (100% - var(--str-chat__message-list-scroll-max-width)) / 2 + var(--str-chat__spacing-md));
  z-index: 2;
  border-radius: var(--str-chat__radius-max);
  background-color: var(--str-chat__background-core-elevation-1);
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.05), 0 2px 4px 0 rgba(0, 0, 0, 0.12), 0 6px 16px 0 rgba(0, 0, 0, 0.06);
}
.str-chat__jump-to-latest-message .str-chat__jump-to-latest-message__button {
  height: 40px;
  width: 40px;
  position: static;
}
.str-chat__jump-to-latest-message .str-chat__jump-to-latest__unread-count {
  position: absolute;
  inset-block-end: 100%;
  margin-block-end: var(--str-chat__space-4);
  inset-inline-end: -15%;
  top: -15%;
}

.str-chat .str-chat__unread-messages-notification {
  display: flex;
  align-items: center;
  background: var(--str-chat__background-core-elevation-1);
  border-radius: var(--str-chat__button-radius-lg);
  border: 1px solid var(--str-chat__button-secondary-border);
  /* shadow/web/light/elevation-2 */
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.05), 0 2px 4px 0 rgba(0, 0, 0, 0.12), 0 6px 16px 0 rgba(0, 0, 0, 0.06);
  position: absolute;
  top: 40px;
  z-index: 2;
  overflow: clip;
}
.str-chat .str-chat__unread-messages-notification.str-chat__unread-messages-notification--with-count button {
  text-transform: lowercase;
}
.str-chat .str-chat__unread-messages-notification button.str-chat__button--secondary,
.str-chat .str-chat__unread-messages-notification button.button.str-chat__button--outline {
  border: none;
}
.str-chat .str-chat__unread-messages-notification button:first-of-type {
  display: flex;
  align-items: center;
  gap: var(--str-chat__spacing-xs);
  border-radius: var(--str-chat__button-radius-lg) 0 0 var(--str-chat__button-radius-lg);
  padding: var(--str-chat__button-padding-y-md) var(--str-chat__spacing-xxs) var(--str-chat__button-padding-y-md) var(--str-chat__button-padding-x-with-label-md);
  font: var(--str-chat__font-caption-emphasis);
}
.str-chat .str-chat__unread-messages-notification button:last-of-type {
  border-radius: 0 var(--str-chat__button-radius-lg) var(--str-chat__button-radius-lg) 0;
  padding: var(--str-chat__button-padding-y-md) var(--str-chat__button-padding-x-with-label-md) var(--str-chat__button-padding-y-md) var(--str-chat__spacing-xxs);
}
.str-chat .str-chat__unread-messages-notification button:last-of-type svg {
  height: 16px;
  width: 16px;
}

.str-chat__unread-messages-separator-wrapper {
  padding-block: var(--str-chat__spacing-xs);
  display: flex;
  justify-content: center;
}
.str-chat__unread-messages-separator-wrapper .str-chat__unread-messages-separator {
  display: flex;
  align-items: center;
  width: fit-content;
  padding: var(--str-chat__spacing-xxs) var(--str-chat__spacing-xs);
  background: var(--str-chat__background-core-elevation-1);
  border-radius: var(--str-chat__button-radius-lg);
  border: 1px solid var(--str-chat__button-secondary-border);
  overflow: clip;
}
.str-chat__unread-messages-separator-wrapper .str-chat__unread-messages-separator .str-chat__unread-messages-separator__text {
  padding-inline: var(--str-chat__spacing-xs) var(--str-chat__spacing-xxs);
  border-radius: var(--str-chat__button-radius-lg) 0 0 var(--str-chat__button-radius-lg);
  font: var(--str-chat__font-caption-emphasis);
  text-transform: lowercase;
}
.str-chat__unread-messages-separator-wrapper .str-chat__unread-messages-separator button.str-chat__button--secondary,
.str-chat__unread-messages-separator-wrapper .str-chat__unread-messages-separator button.button.str-chat__button--outline {
  border: none;
}
.str-chat__unread-messages-separator-wrapper .str-chat__unread-messages-separator button svg {
  height: 16px;
  width: 16px;
}

.str-chat__virtual-list {
  background: var(--str-chat__background-core-app);
  color: var(--str-chat__text-primary);
  --str-chat__message-list-scroll-max-width: calc(
    var(--str-chat__message-composer-max-width) +
      var(--str-chat__message-composer-padding)
  );
  position: relative;
  flex: 1;
  -webkit-overflow-scrolling: touch; /* enable smooth scrolling on ios */
  margin: 0;
  width: 100%;
  height: 100%;
}
.str-chat__virtual-list .str-chat__message-list-scroll {
  overscroll-behavior: none;
}
.str-chat__virtual-list .str-chat__virtual-list-message-wrapper {
  /* Max container = composer width + padding; matches message list */
  max-width: calc(var(--str-chat__message-composer-max-width) + var(--str-chat__message-composer-padding));
  margin-left: auto;
  margin-right: auto;
}
.str-chat__virtual-list__loading {
  display: flex;
  padding-top: var(--str-chat__space-8);
  justify-content: center;
  width: 100%;
  position: absolute;
}
.str-chat__virtual-list p {
  margin: 0 !important;
}
.str-chat__virtual-list p a {
  white-space: pre-line;
  overflow: hidden;
  word-wrap: break-word;
}
.str-chat__virtual-list .str-chat__message {
  margin-block-end: 0 !important;
}

.str-chat__notification {
  display: flex;
  align-items: center;
  gap: var(--str-chat__spacing-xs);
  min-height: 48px;
  max-width: 100%;
  padding: var(--str-chat__spacing-xs);
  position: relative;
  pointer-events: visible;
  background: var(--str-chat__notification-background, var(--str-chat__background-core-inverse));
  border-radius: var(--str-chat__notification-border-radius, var(--str-chat__radius-3xl));
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.05), 0 4px 8px 0 rgba(0, 0, 0, 0.14), 0 12px 24px 0 rgba(0, 0, 0, 0.1);
  color: var(--str-chat__notification-color, var(--str-chat__text-on-inverse));
}
.str-chat__notification .str-chat__notification-content {
  align-items: flex-start;
  display: flex;
  flex: 1 1 auto;
  gap: var(--str-chat__spacing-xs);
  padding-inline: var(--str-chat__spacing-xxs) var(--str-chat__spacing-xs);
}
.str-chat__notification .str-chat__notification-content .str-chat__notification-icon {
  display: flex;
  align-self: center;
  height: 100%;
}
.str-chat__notification .str-chat__notification-content .str-chat__notification-icon svg {
  block-size: var(--str-chat__icon-size-sm);
  inline-size: var(--str-chat__icon-size-sm);
}
.str-chat__notification .str-chat__notification-content .str-chat__notification-message {
  flex: 1 1 auto;
  padding-block: var(--str-chat__spacing-xxxs);
  font: var(--str-chat__font-caption-default);
  text-align: center;
  white-space: nowrap;
}
.str-chat__notification .str-chat__notification-actions {
  display: flex;
  flex-basis: 100%;
  align-items: center;
  justify-content: flex-end;
  gap: var(--str-chat__spacing-xxs);
}
.str-chat__notification .str-chat__notification-close-button {
  align-self: center;
  padding: var(--str-chat__spacing-xxs);
}
.str-chat__notification .str-chat__notification-close-button svg {
  height: var(--str-chat__icon-size-sm);
  width: var(--str-chat__icon-size-sm);
}

.str-chat__notification--is-entering {
  animation: str-chat__notification-list-enter 760ms cubic-bezier(0.16, 1, 0.3, 1);
  will-change: opacity, transform;
}

.str-chat__notification--is-exiting {
  animation-duration: 340ms;
  animation-fill-mode: forwards;
  animation-timing-function: cubic-bezier(0.3, 0, 0.2, 1);
  will-change: opacity, transform;
}

.str-chat__notification--is-exiting.str-chat__notification--enter-from-bottom {
  animation-name: str-chat__notification-list-exit-to-bottom;
}

.str-chat__notification--is-exiting.str-chat__notification--enter-from-left {
  animation-name: str-chat__notification-list-exit-to-left;
}

.str-chat__notification--is-exiting.str-chat__notification--enter-from-right {
  animation-name: str-chat__notification-list-exit-to-right;
}

.str-chat__notification--is-exiting.str-chat__notification--enter-from-top {
  animation-name: str-chat__notification-list-exit-to-top;
}

.str-chat__notification--loading .str-chat__notification-icon {
  animation: str-chat__notification-spin 0.8s linear infinite;
}

@keyframes str-chat__notification-spin {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
@keyframes str-chat__notification-list-exit-to-bottom {
  from {
    opacity: 1;
    transform: translate(0, 0);
  }
  to {
    opacity: 0;
    transform: translate(0, 35%) scale(0.98);
  }
}
@keyframes str-chat__notification-list-exit-to-left {
  from {
    opacity: 1;
    transform: translate(0, 0);
  }
  to {
    opacity: 0;
    transform: translate(-35%, 0) scale(0.98);
  }
}
@keyframes str-chat__notification-list-exit-to-right {
  from {
    opacity: 1;
    transform: translate(0, 0);
  }
  to {
    opacity: 0;
    transform: translate(35%, 0) scale(0.98);
  }
}
@keyframes str-chat__notification-list-exit-to-top {
  from {
    opacity: 1;
    transform: translate(0, 0);
  }
  to {
    opacity: 0;
    transform: translate(0, -35%) scale(0.98);
  }
}
.str-chat__notification-list {
  background: transparent;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  inline-size: min(100%, 100% - 32px);
  max-width: 100%;
  min-width: 0;
  max-height: calc(100% - 32px);
  padding-inline: var(--str-chat__spacing-xs);
  pointer-events: none;
  position: absolute;
  inset-inline-end: 16px;
  z-index: 2;
}

.str-chat__notification-list--position-top {
  inset-block-start: 16px;
}

.str-chat__notification-list--position-bottom {
  inset-block-end: 16px;
}

.str-chat__notification-list__edge {
  flex-shrink: 0;
  left: 0;
  pointer-events: none;
  position: absolute;
  right: 0;
  z-index: 1;
}

.str-chat__notification-list__edge--top {
  top: 0;
}

.str-chat__notification-list__edge--bottom {
  bottom: 0;
}

@keyframes str-chat__notification-list-enter {
  from {
    opacity: 0.2;
    transform: translate(var(--str-chat__notification-list-enter-x, 0), var(--str-chat__notification-list-enter-y, 100%));
  }
  to {
    opacity: 1;
    transform: translate(0, 0);
  }
}
.str-chat__modal__poll-add-comment {
  width: 300px;
}

.str-chat__end-poll-alert {
  max-width: 300px;
}

.str-chat__form__input-fieldset .str-chat__form__input-field .str-chat__form__input-field__value .str-chat__drag-handle-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  color: inherit;
  background: none;
  border: 0;
  cursor: grab;
}
.str-chat__form__input-fieldset .str-chat__form__input-field .str-chat__form__input-field__value .str-chat__form__remove-option-button {
  color: var(--str-chat__input-text-icon);
}

.str-chat .str-chat__poll {
  display: flex;
  flex-direction: column;
  gap: var(--str-chat__spacing-xl);
  padding: var(--str-chat__spacing-xs);
  width: calc(var(--str-chat__message-with-attachment-max-width) - 2 * var(--str-chat__spacing-xs));
  max-width: 100%;
  min-width: min(260px, 100%);
  font: var(--str-chat__font-caption-default);
}
.str-chat .str-chat__poll button {
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
}
.str-chat .str-chat__poll .str-chat__poll-header .str-chat__poll-title {
  font: var(--str-chat__font-body-emphasis);
}
.str-chat .str-chat__poll .str-chat__poll-actions {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--str-chat__spacing-xs);
}
.str-chat .str-chat__poll .str-chat__button.str-chat__poll-action {
  width: 100%;
  border: 1px solid var(--chat-border-on-chat);
  padding: var(--str-chat__button-padding-y-sm) var(--str-chat__button-padding-x-with-label-sm);
  font: var(--str-chat__font-caption-emphasis);
}
.str-chat .str-chat__poll .str-chat__button.str-chat__poll-action.str-chat__poll-action--additional {
  border: none;
}

.str-chat__modal__poll-answer-list .str-chat__poll-answer-list {
  height: 100%;
}
.str-chat__modal__poll-answer-list .str-chat__poll-answer-list .str-chat__infinite-scroll-paginator {
  scrollbar-width: none;
  height: 100%;
}
.str-chat__modal__poll-answer-list .str-chat__poll-answer-list .str-chat__infinite-scroll-paginator .str-chat__infinite-scroll-paginator__content {
  display: flex;
  flex-direction: column;
  gap: var(--str-chat__spacing-md);
  padding-bottom: var(--str-chat__spacing-xl);
}
.str-chat__modal__poll-answer-list .str-chat__poll-answer-list .str-chat__loading-indicator-placeholder {
  width: 100%;
  height: calc(var(--str-chat__loading-indicator-size) + 2 * var(--str-chat__spacing-xxs));
  display: flex;
  justify-content: center;
}
.str-chat__modal__poll-answer-list .str-chat__poll-answer-list .str-chat__poll-answer {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--str-chat__spacing-xxs);
  align-self: stretch;
  border-radius: var(--str-chat__radius-lg);
  background: var(--str-chat__background-core-surface-card);
}
.str-chat__modal__poll-answer-list .str-chat__poll-answer-list .str-chat__poll-answer .str-chat__poll-answer__data {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--str-chat__spacing-xs);
  align-self: stretch;
  padding: var(--str-chat__spacing-md);
}
.str-chat__modal__poll-answer-list .str-chat__poll-answer-list .str-chat__poll-answer .str-chat__poll-answer__data .str-chat__avatar {
  height: var(--str-chat__spacing-xl);
  width: var(--str-chat__spacing-xl);
}
.str-chat__modal__poll-answer-list .str-chat__poll-answer-list .str-chat__poll-answer .str-chat__poll-answer__data p {
  margin: 0;
}
.str-chat__modal__poll-answer-list .str-chat__poll-answer-list .str-chat__poll-answer .str-chat__poll-answer__data .str-chat__poll-answer__text {
  font: var(--str-chat__font-body-default);
}
.str-chat__modal__poll-answer-list .str-chat__poll-answer-list .str-chat__poll-answer .str-chat__poll-answer__data .str-chat__poll-vote {
  padding-inline: var(--str-chat__spacing-none);
  padding-block: 0;
}
.str-chat__modal__poll-answer-list .str-chat__poll-answer-list .str-chat__poll-answer .str-chat__poll-vote__update-vote-button-container {
  display: flex;
  justify-content: center;
  width: 100%;
  padding: var(--str-chat__spacing-xs) var(--str-chat__spacing-md);
  border-top: 1px solid var(--str-chat__border-core-default);
}

.str-chat__poll-creation-dialog {
  display: flex;
  flex-direction: column;
  width: min(480px, 100vw);
  height: min(640px, 100vh);
}
.str-chat__poll-creation-dialog .str-chat__prompt__body {
  flex: 1 1;
}
.str-chat__poll-creation-dialog .str-chat__prompt__body form {
  display: flex;
  flex-direction: column;
  gap: var(--str-chat__spacing-xl);
}
.str-chat__poll-creation-dialog .str-chat__poll-creation-dialog__features-selectors {
  display: flex;
  flex-direction: column;
  gap: var(--str-chat__spacing-sm);
  align-items: center;
}
.str-chat__poll-creation-dialog .str-chat__form__switch-field {
  padding: var(--str-chat__spacing-sm) var(--str-chat__spacing-md);
}
.str-chat__poll-creation-dialog .str-chat__form__input-field__value input,
.str-chat__poll-creation-dialog .str-chat__form__input-field__value.str-chat__form-text-input .str-chat__form-text-input__wrapper {
  width: 100%;
}
.str-chat__poll-creation-dialog .str-chat__form__input-field__value.str-chat__form-text-input .str-chat__form-text-input__wrapper {
  background-color: transparent;
}
.str-chat__poll-creation-dialog .str-chat__form__switch-field__label {
  width: 100%;
}
.str-chat__poll-creation-dialog .str-chat__prompt__header__description {
  display: none;
}
.str-chat__poll-creation-dialog .str-chat__multiple-answers-field__votes-limit-field {
  padding-top: 0;
}
.str-chat__poll-creation-dialog .str-chat__multiple-answers-field__votes-limit-field .str-chat__multiple-answers-field__votes-limit-field__numeric-field {
  display: flex;
  align-items: center;
  gap: var(--str-chat__spacing-md);
  width: 100%;
}
.str-chat__poll-creation-dialog .str-chat__multiple-answers-field__votes-limit-field .str-chat__multiple-answers-field__votes-limit-field__numeric-field .str-chat__form__switch-field__label {
  flex: 1;
}

.str-chat__modal__poll-option-list .str-chat__modal__poll-option-list__body {
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
  scrollbar-width: none;
  display: flex;
  flex-direction: column;
  gap: var(--str-chat__spacing-2xl);
  padding-bottom: var(--str-chat__spacing-xl);
}
.str-chat__modal__poll-option-list .str-chat__modal__poll-option-list__body .str-chat__poll-option-list--full {
  gap: var(--str-chat__spacing-xs);
  scrollbar-width: none;
  padding: var(--str-chat__spacing-xs);
  border-radius: var(--str-chat__radius-lg);
  background-color: var(--str-chat__background-core-surface-card);
}
.str-chat__modal__poll-option-list .str-chat__modal__poll-option-list__body .str-chat__poll-option-list--full .str-chat__poll-option {
  padding: var(--str-chat__spacing-xs);
  border-radius: var(--str-chat__radius-md);
}
.str-chat__modal__poll-option-list .str-chat__modal__poll-option-list__body .str-chat__poll-option-list--full .str-chat__poll-option--votable:hover {
  background-color: var(--str-chat__background-utility-hover);
}

.str-chat__poll-option-list {
  display: flex;
  flex-direction: column;
  gap: var(--str-chat__spacing-md);
}
.str-chat__poll-option-list .str-chat__poll-option {
  display: grid;
  grid-template-columns: minmax(0, auto) 1fr;
  grid-template-rows: 1fr auto;
  row-gap: var(--str-chat__spacing-xs);
  align-items: start;
}
.str-chat__poll-option-list .str-chat__poll-option.str-chat__poll-option--votable {
  column-gap: var(--str-chat__spacing-sm);
}
.str-chat__poll-option-list .str-chat__poll-option.str-chat__poll-option--votable:hover {
  cursor: pointer;
}
.str-chat__poll-option-list .str-chat__poll-option .str-chat__poll-option-data {
  flex: 1;
  display: flex;
  align-items: baseline;
  gap: var(--str-chat__spacing-xs);
  grid-column: 2/3;
  grid-row: 1/2;
  min-height: 24px;
  padding-block: var(--str-chat__spacing-xxxs);
}
.str-chat__poll-option-list .str-chat__poll-option .str-chat__poll-option-data p {
  margin: 0;
  flex: 1;
  word-break: break-word;
  -webkit-hyphens: auto;
          hyphens: auto;
}
.str-chat__poll-option-list .str-chat__poll-option .str-chat__poll-option-data .str-chat__poll-option-votes {
  display: flex;
  align-items: center;
  gap: var(--str-chat__spacing-xxs);
}
.str-chat__poll-option-list .str-chat__poll-option .str-chat__poll-option-data .str-chat__poll-option-votes .str-chat__poll-option-voters {
  --str-chat__avatar-size: 1.175rem;
  display: flex;
}
.str-chat__poll-option-list .str-chat__poll-option .str-chat__poll-option-data .str-chat__poll-option-votes .str-chat__poll-option-vote-count {
  text-align: right;
  font: var(--str-chat__font-metadata-default);
}
.str-chat__poll-option-list .str-chat__poll-option .str-chat__poll-option__votes-bar {
  grid-column: 2/3;
  grid-row: 2/3;
  height: 8px;
  width: 100%;
  background: linear-gradient(to right, var(--chat-poll-progress-fill, var(--str-chat__chat-poll-progress-fill-incoming)) var(--str-chat__amount-bar-fulfillment), var(--chat-poll-progress-track, var(--str-chat__chat-poll-progress-track-incoming)) var(--str-chat__amount-bar-fulfillment));
  border-radius: var(--str-chat__size-4);
}

.str-chat__modal__poll-question {
  display: flex;
  padding: var(--str-chat__spacing-md);
  flex-direction: column;
  align-items: flex-start;
  gap: var(--str-chat__spacing-xxs);
  align-self: stretch;
  border-radius: var(--str-chat__radius-lg);
  background: var(--str-chat__background-core-surface-card);
}
.str-chat__modal__poll-question .str-chat__modal__poll-question__label {
  font: var(--str-chat__font-heading-xs);
  color: var(--str-chat__text-tertiary);
}
.str-chat__modal__poll-question .str-chat__modal__poll-question__text {
  font: var(--str-chat__font-heading-sm);
  color: var(--str-chat__text-primary);
}

.str-chat__modal__poll-results .str-chat__amount-bar {
  display: none;
}
.str-chat__modal__poll-results .str-chat__modal__poll-results__body {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--str-chat__spacing-2xl);
}
.str-chat__modal__poll-results .str-chat__modal__poll-results__options {
  scrollbar-width: none;
  width: 100%;
}
.str-chat__modal__poll-results .str-chat_poll-option-with-votes-list,
.str-chat__modal__poll-results .str-chat__modal__poll-results__option-list {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--str-chat__spacing-md);
  align-self: stretch;
}
.str-chat__modal__poll-results .str-chat_poll-option-with-votes-list .str-chat__poll-option,
.str-chat__modal__poll-results .str-chat__modal__poll-results__option-list .str-chat__poll-option {
  display: flex;
  flex-direction: column;
  width: 100%;
  padding-block: var(--str-chat__spacing-md);
  border-radius: var(--str-chat__radius-lg);
  background: var(--str-chat__background-core-surface-card);
}
.str-chat__modal__poll-results .str-chat_poll-option-with-votes-list .str-chat__poll-option .str-chat__poll-option__header,
.str-chat__modal__poll-results .str-chat__modal__poll-results__option-list .str-chat__poll-option .str-chat__poll-option__header {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--str-chat__spacing-xxs);
  align-self: stretch;
  padding-inline: var(--str-chat__spacing-md);
}
.str-chat__modal__poll-results .str-chat_poll-option-with-votes-list .str-chat__poll-option .str-chat__poll-option__header .str-chat__poll-option__header__label,
.str-chat__modal__poll-results .str-chat__modal__poll-results__option-list .str-chat__poll-option .str-chat__poll-option__header .str-chat__poll-option__header__label {
  font: var(--str-chat__font-heading-xs);
  color: var(--str-chat__text-tertiary);
}
.str-chat__modal__poll-results .str-chat_poll-option-with-votes-list .str-chat__poll-option .str-chat__poll-option__header .str-chat__poll-option__header__title,
.str-chat__modal__poll-results .str-chat__modal__poll-results__option-list .str-chat__poll-option .str-chat__poll-option__header .str-chat__poll-option__header__title {
  display: flex;
  align-items: start;
  gap: var(--str-chat__spacing-md);
  width: 100%;
  font: var(--str-chat__font-heading-sm);
  color: var(--str-chat__text-primary);
}
.str-chat__modal__poll-results .str-chat_poll-option-with-votes-list .str-chat__poll-option .str-chat__poll-option__header .str-chat__poll-option__header__title .str-chat__poll-option__option-text,
.str-chat__modal__poll-results .str-chat__modal__poll-results__option-list .str-chat__poll-option .str-chat__poll-option__header .str-chat__poll-option__header__title .str-chat__poll-option__option-text {
  flex: 1;
  word-break: break-word;
  -webkit-hyphens: auto;
          hyphens: auto;
}
.str-chat__modal__poll-results .str-chat_poll-option-with-votes-list .str-chat__poll-option .str-chat__poll-vote-listing,
.str-chat__modal__poll-results .str-chat__modal__poll-results__option-list .str-chat__poll-option .str-chat__poll-vote-listing {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  align-self: stretch;
  padding: var(--str-chat__spacing-xs) var(--str-chat__spacing-none);
}
.str-chat__modal__poll-results .str-chat_poll-option-with-votes-list .str-chat__poll-option .str-chat__poll-vote-listing .str-chat__avatar,
.str-chat__modal__poll-results .str-chat__modal__poll-results__option-list .str-chat__poll-option .str-chat__poll-vote-listing .str-chat__avatar {
  height: var(--str-chat__spacing-2xl);
  width: var(--str-chat__spacing-2xl);
}
.str-chat__modal__poll-results .str-chat_poll-option-with-votes-list .str-chat__poll-option .str-chat__poll-option__show-all-votes-button-container,
.str-chat__modal__poll-results .str-chat__modal__poll-results__option-list .str-chat__poll-option .str-chat__poll-option__show-all-votes-button-container {
  display: flex;
  justify-content: center;
  width: 100%;
  padding: var(--str-chat__spacing-xs) var(--str-chat__spacing-md);
  border-top: 1px solid var(--str-chat__border-core-default);
}
.str-chat__modal__poll-results .str-chat_poll-option-with-votes-list .str-chat__poll-option--has-more-votes,
.str-chat__modal__poll-results .str-chat_poll-option-with-votes-list .str-chat__poll-option--has-votes,
.str-chat__modal__poll-results .str-chat__modal__poll-results__option-list .str-chat__poll-option--has-more-votes,
.str-chat__modal__poll-results .str-chat__modal__poll-results__option-list .str-chat__poll-option--has-votes {
  padding-bottom: 0;
}
.str-chat__modal__poll-results .str-chat_poll-option-with-votes-list .str-chat__poll-option {
  padding-bottom: 0;
}
.str-chat__modal__poll-results .str-chat_poll-option-with-votes-list .str-chat__poll-option__votes-paginated-list .str-chat__loading-indicator-placeholder {
  width: 100%;
  height: calc(var(--str-chat__loading-indicator-size) + 2 * var(--str-chat__spacing-xxs));
  display: flex;
  justify-content: center;
}
.str-chat__modal__poll-results .str-chat__modal__poll-results__options__footer {
  padding-top: var(--str-chat__spacing-2xl);
}
.str-chat__modal__poll-results .str-chat__modal__poll-results__options__footer .str-chat__modal__poll-results__options-total-count {
  width: 100%;
  text-align: center;
  font: var(--str-chat__font-caption-default);
}
.str-chat__modal__poll-results .str-chat__poll-result-option-vote-counter {
  display: flex;
  gap: var(--str-chat__spacing-xs);
  align-items: center;
  font: var(--str-chat__font-caption-emphasis);
}
.str-chat__modal__poll-results .str-chat__poll-result-option-vote-counter .str-chat__icon {
  height: var(--str-chat__icon-size-md);
  width: var(--str-chat__icon-size-md);
}

.str-chat__modal__poll-results.str-chat__modal__poll-results--option-detail .str-chat__infinite-scroll-paginator {
  flex: 1;
  scrollbar-width: none;
  width: 100%;
  height: 100%;
  padding-bottom: var(--str-chat__spacing-xl);
}

.str-chat__modal__poll-results:not(.str-chat__modal__poll-results--option-detail) .str-chat__modal__poll-results__body {
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
  scrollbar-width: none;
  max-height: 564px;
  padding-bottom: var(--str-chat__spacing-2xl);
}

.str-chat__poll-vote {
  display: flex;
  padding: var(--str-chat__spacing-xxs) var(--str-chat__spacing-sm);
  align-items: center;
  gap: var(--str-chat__spacing-none, 0);
  align-self: stretch;
  width: 100%;
  font: var(--str-chat__font-caption-default);
}
.str-chat__poll-vote .str-chat__poll-vote__author {
  flex: 1;
  display: flex;
  align-items: center;
  gap: var(--str-chat__spacing-sm);
}
.str-chat__poll-vote .str-chat__poll-vote__author__name {
  text-transform: capitalize;
}

.str-chat__modal__suggest-poll-option-prompt {
  width: 300px;
}

.str-chat__reaction-selector {
  display: flex;
  padding-inline: var(--str-chat__spacing-xxs);
  padding-block: var(--str-chat__spacing-xxs);
  align-items: center;
  gap: var(--str-chat__spacing-xs);
  border-radius: var(--str-chat__radius-4xl);
  background: var(--str-chat__background-core-elevation-2);
  box-shadow: var(--str-chat__box-shadow-3);
}
.str-chat__reaction-selector:has(.str-chat__reaction-selector-extended-list) {
  padding: 0;
  display: block;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
  scrollbar-width: none;
  border-radius: var(--str-chat__radius-lg);
  max-height: 320px;
}
.str-chat__reaction-selector:has(.str-chat__reaction-selector-extended-list)::before, .str-chat__reaction-selector:has(.str-chat__reaction-selector-extended-list)::after {
  content: "";
  position: absolute;
  width: 100%;
  inset-inline-start: 0;
  height: var(--str-chat__size-16);
}
.str-chat__reaction-selector:has(.str-chat__reaction-selector-extended-list)::after {
  bottom: 0;
  border-end-end-radius: inherit;
  border-end-start-radius: inherit;
  background: linear-gradient(to bottom, transparent 5%, var(--str-chat__background-core-elevation-2) 95%);
}
.str-chat__reaction-selector:has(.str-chat__reaction-selector-extended-list)::before {
  z-index: 1;
  top: 0;
  border-start-end-radius: inherit;
  border-start-start-radius: inherit;
  background: linear-gradient(to top, transparent 5%, var(--str-chat__background-core-elevation-2) 95%);
}
.str-chat__reaction-selector .str-chat__reaction-selector__add-button {
  width: 32px;
  aspect-ratio: 1/1;
}
.str-chat__reaction-selector .str-chat__reaction-selector__add-button .str-chat__icon {
  width: var(--str-chat__icon-size-sm);
  height: var(--str-chat__icon-size-sm);
}
.str-chat__reaction-selector:has(.str-chat__reaction-selector__add-button) {
  padding-inline-end: var(--str-chat__spacing-xs);
}
.str-chat__reaction-selector .str-chat__reaction-selector-list {
  list-style: none;
  margin: var(--str-chat__spacing-none);
  padding: var(--str-chat__spacing-none);
  display: flex;
  gap: var(--str-chat__space-2);
}
.str-chat__reaction-selector .str-chat__reaction-selector-list .str-chat__reaction-selector-list__item {
  display: flex;
}
.str-chat__reaction-selector .str-chat__reaction-selector-list .str-chat__reaction-selector-list__item-button {
  background-color: transparent;
  border: none;
  border-radius: var(--str-chat__radius-max);
  cursor: pointer;
  display: flex;
  min-width: 40px;
  min-height: 40px;
  padding: var(--str-chat__spacing-none, 0);
  justify-content: center;
  align-items: center;
  gap: var(--str-chat__spacing-none, 0);
}
.str-chat__reaction-selector .str-chat__reaction-selector-list .str-chat__reaction-selector-list__item-button:not(:disabled):hover {
  background-color: var(--str-chat__background-utility-hover);
}
.str-chat__reaction-selector .str-chat__reaction-selector-list .str-chat__reaction-selector-list__item-button:not(:disabled):active {
  background-color: var(--str-chat__background-utility-pressed);
}
.str-chat__reaction-selector .str-chat__reaction-selector-list .str-chat__reaction-selector-list__item-button:not(:disabled):focus-visible {
  outline: var(--str-chat__focus-outline, 2px solid var(--str-chat__border-utility-focused));
  outline-offset: -2px;
}
.str-chat__reaction-selector .str-chat__reaction-selector-list .str-chat__reaction-selector-list__item-button:not(:disabled)[aria-pressed=true] {
  background-color: var(--str-chat__background-utility-selected);
}
.str-chat__reaction-selector .str-chat__reaction-selector-list .str-chat__reaction-selector-list__item-button .str-chat__reaction-icon {
  font-size: var(--str-chat__typography-font-size-2xl);
  height: var(--str-chat__typography-font-size-2xl);
  width: var(--str-chat__typography-font-size-2xl);
  font-family: system-ui;
  line-height: 0;
  display: flex;
  justify-content: center;
  align-items: center;
}

.str-chat__reaction-selector-extended-list {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  height: 100%;
  padding-block: var(--str-chat__spacing-md);
  padding-inline: var(--str-chat__spacing-sm);
}
.str-chat__reaction-selector-extended-list .str-chat__reaction-selector-extended-list__button .str-chat__reaction-icon {
  height: var(--str-chat__emoji-md);
  width: var(--str-chat__emoji-md);
  font-size: var(--str-chat__emoji-md);
  line-height: 0;
  font-family: system-ui;
  display: flex;
  justify-content: center;
  align-items: center;
}

.str-chat__message-reactions {
  display: flex;
}
.str-chat__message-reactions .str-chat__message-reactions__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  align-items: center;
  gap: var(--str-chat__spacing-xxs);
}
.str-chat__message-reactions .str-chat__message-reactions__list .str-chat__message-reactions__list-item {
  display: flex;
}
.str-chat__message-reactions .str-chat__message-reactions__list .str-chat__message-reactions__list-item--more {
  height: 100%;
}
.str-chat__message-reactions .str-chat__message-reactions__list-button,
.str-chat__message-reactions .str-chat__message-reactions__list-item-button {
  padding: unset;
  background: unset;
  border: unset;
  cursor: pointer;
  position: relative;
  display: flex;
  gap: var(--str-chat__spacing-xxs);
  padding-inline: var(--str-chat__spacing-xs);
  padding-block: var(--str-chat__spacing-xxxs);
  align-items: center;
  justify-content: center;
  border-radius: var(--str-chat__radius-max);
  border: 1px solid var(--str-chat__reaction-border);
  background: var(--str-chat__reaction-bg);
  color: var(--str-chat__reaction-text);
  box-shadow: var(--str-chat__box-shadow-3);
  font-weight: inherit;
  font-size: inherit;
  line-height: 1;
  -webkit-user-select: none;
          user-select: none;
}
.str-chat__message-reactions .str-chat__message-reactions__list-button:not(:disabled):hover::before, .str-chat__message-reactions .str-chat__message-reactions__list-button:not(:disabled):active::before, .str-chat__message-reactions .str-chat__message-reactions__list-button:not(:disabled)[aria-pressed=true]::before,
.str-chat__message-reactions .str-chat__message-reactions__list-item-button:not(:disabled):hover::before,
.str-chat__message-reactions .str-chat__message-reactions__list-item-button:not(:disabled):active::before,
.str-chat__message-reactions .str-chat__message-reactions__list-item-button:not(:disabled)[aria-pressed=true]::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  width: 100%;
  height: 100%;
}
.str-chat__message-reactions .str-chat__message-reactions__list-button:not(:disabled):hover::before,
.str-chat__message-reactions .str-chat__message-reactions__list-item-button:not(:disabled):hover::before {
  background: var(--str-chat__background-utility-hover);
}
.str-chat__message-reactions .str-chat__message-reactions__list-button:not(:disabled):active::before,
.str-chat__message-reactions .str-chat__message-reactions__list-item-button:not(:disabled):active::before {
  background: var(--str-chat__background-utility-pressed);
}
.str-chat__message-reactions .str-chat__message-reactions__list-button:not(:disabled)[aria-pressed=true]::before,
.str-chat__message-reactions .str-chat__message-reactions__list-item-button:not(:disabled)[aria-pressed=true]::before {
  background: var(--str-chat__background-utility-selected);
}
.str-chat__message-reactions .str-chat__message-reactions__list-button .str-chat__message-reactions__list-item-icon,
.str-chat__message-reactions .str-chat__message-reactions__list-item-button .str-chat__message-reactions__list-item-icon {
  font-family: system-ui;
  font-size: var(--str-chat__font-size-size-17);
  line-height: var(--str-chat__typography-line-height-normal);
}
.str-chat__message-reactions .str-chat__message-reactions__list-button .str-chat__message-reactions__total-count,
.str-chat__message-reactions .str-chat__message-reactions__list-button .str-chat__message-reactions__overflow-count,
.str-chat__message-reactions .str-chat__message-reactions__list-button .str-chat__message-reactions__list-item-count,
.str-chat__message-reactions .str-chat__message-reactions__list-item-button .str-chat__message-reactions__total-count,
.str-chat__message-reactions .str-chat__message-reactions__list-item-button .str-chat__message-reactions__overflow-count,
.str-chat__message-reactions .str-chat__message-reactions__list-item-button .str-chat__message-reactions__list-item-count {
  display: flex;
  align-items: center;
  font: var(--str-chat__font-numeric-md);
}
.str-chat__message-reactions--bottom .str-chat__message-reactions__list-button,
.str-chat__message-reactions--bottom .str-chat__message-reactions__list-item-button {
  box-shadow: none;
}

.str-chat .str-chat__dialog-contents:has(.str-chat__message-reactions-detail):focus-visible {
  border-radius: var(--str-chat__radius-lg);
}

.str-chat__message-reactions-detail {
  border-radius: var(--str-chat__radius-lg);
  background: var(--str-chat__background-core-elevation-2);
  max-width: 256px;
  min-width: min(90vw, 256px);
}
.str-chat__message-reactions-detail:has(.str-chat__reaction-selector-extended-list)::before, .str-chat__message-reactions-detail:has(.str-chat__reaction-selector-extended-list)::after {
  content: "";
  position: absolute;
  width: 100%;
  inset-inline-start: 0;
  height: var(--str-chat__size-16);
}
.str-chat__message-reactions-detail:has(.str-chat__reaction-selector-extended-list)::after {
  bottom: 0;
  border-end-end-radius: inherit;
  border-end-start-radius: inherit;
  background: linear-gradient(to bottom, transparent 5%, var(--str-chat__background-core-elevation-2) 95%);
}
.str-chat__message-reactions-detail:has(.str-chat__reaction-selector-extended-list)::before {
  z-index: 1;
  top: 0;
  border-start-end-radius: inherit;
  border-start-start-radius: inherit;
  background: linear-gradient(to top, transparent 5%, var(--str-chat__background-core-elevation-2) 95%);
}
.str-chat__message-reactions-detail:has(.str-chat__reaction-selector-extended-list) {
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
  padding: 0;
  display: block;
  scrollbar-width: none;
  max-height: 320px;
  max-width: unset;
  min-width: unset;
}
.str-chat__message-reactions-detail {
  box-shadow: var(--str-chat__box-shadow-3);
  padding-block-start: var(--str-chat__spacing-xxs);
  display: flex;
  flex-direction: column;
  gap: var(--str-chat__spacing-xxxs);
}
.str-chat__message-reactions-detail .str-chat__message-reactions-detail__total-count {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  padding-inline: var(--str-chat__spacing-md);
  min-height: var(--str-chat__size-32);
  max-height: var(--str-chat__size-32);
  color: var(--str-chat__text-tertiary);
  font: var(--str-chat__font-heading-xs);
}
.str-chat__message-reactions-detail .str-chat__message-reactions-detail__reaction-type-list {
  list-style: none;
  margin: 0;
  padding-inline: var(--str-chat__spacing-md);
  padding-block: var(--str-chat__spacing-xs);
  display: flex;
  flex-wrap: wrap;
  gap: var(--str-chat__spacing-xs) var(--str-chat__spacing-xxs);
}
.str-chat__message-reactions-detail .str-chat__message-reactions-detail__reaction-type-list .str-chat__message-reactions-detail__reaction-type-list-item {
  display: flex;
}
.str-chat__message-reactions-detail .str-chat__message-reactions-detail__reaction-type-list .str-chat__message-reactions-detail__reaction-type-list-item .str-chat__message-reactions-detail__reaction-type-list-item-button {
  padding: unset;
  background: unset;
  border: unset;
  cursor: pointer;
  position: relative;
  display: flex;
  gap: var(--str-chat__spacing-xxs);
  padding-inline: var(--str-chat__spacing-xs);
  padding-block: var(--str-chat__spacing-xxxs);
  align-items: center;
  justify-content: center;
  border-radius: var(--str-chat__radius-max);
  border: 1px solid var(--str-chat__reaction-border);
  background: var(--str-chat__reaction-bg);
  color: var(--str-chat__reaction-text);
  box-shadow: var(--str-chat__box-shadow-3);
  font-weight: inherit;
  font-size: inherit;
  line-height: 1;
  -webkit-user-select: none;
          user-select: none;
}
.str-chat__message-reactions-detail .str-chat__message-reactions-detail__reaction-type-list .str-chat__message-reactions-detail__reaction-type-list-item .str-chat__message-reactions-detail__reaction-type-list-item-button:not(:disabled):hover::before, .str-chat__message-reactions-detail .str-chat__message-reactions-detail__reaction-type-list .str-chat__message-reactions-detail__reaction-type-list-item .str-chat__message-reactions-detail__reaction-type-list-item-button:not(:disabled):active::before, .str-chat__message-reactions-detail .str-chat__message-reactions-detail__reaction-type-list .str-chat__message-reactions-detail__reaction-type-list-item .str-chat__message-reactions-detail__reaction-type-list-item-button:not(:disabled)[aria-pressed=true]::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  width: 100%;
  height: 100%;
}
.str-chat__message-reactions-detail .str-chat__message-reactions-detail__reaction-type-list .str-chat__message-reactions-detail__reaction-type-list-item .str-chat__message-reactions-detail__reaction-type-list-item-button:not(:disabled):hover::before {
  background: var(--str-chat__background-utility-hover);
}
.str-chat__message-reactions-detail .str-chat__message-reactions-detail__reaction-type-list .str-chat__message-reactions-detail__reaction-type-list-item .str-chat__message-reactions-detail__reaction-type-list-item-button:not(:disabled):active::before {
  background: var(--str-chat__background-utility-pressed);
}
.str-chat__message-reactions-detail .str-chat__message-reactions-detail__reaction-type-list .str-chat__message-reactions-detail__reaction-type-list-item .str-chat__message-reactions-detail__reaction-type-list-item-button:not(:disabled)[aria-pressed=true]::before {
  background: var(--str-chat__background-utility-selected);
}
.str-chat__message-reactions-detail .str-chat__message-reactions-detail__reaction-type-list .str-chat__message-reactions-detail__reaction-type-list-item .str-chat__message-reactions-detail__reaction-type-list-item-button {
  box-shadow: unset;
  min-width: var(--str-chat__size-48);
  background: none;
  border: 1px solid var(--str-chat__control-chip-border);
}
.str-chat__message-reactions-detail .str-chat__message-reactions-detail__reaction-type-list .str-chat__message-reactions-detail__reaction-type-list-item .str-chat__message-reactions-detail__reaction-type-list-item-button .str-chat__message-reactions-detail__reaction-type-list-item-icon {
  font-family: system-ui;
  font-size: var(--str-chat__font-size-size-17);
  line-height: var(--str-chat__typography-line-height-normal);
}
.str-chat__message-reactions-detail .str-chat__message-reactions-detail__reaction-type-list .str-chat__message-reactions-detail__reaction-type-list-item .str-chat__message-reactions-detail__reaction-type-list-item-button .str-chat__message-reactions-detail__reaction-type-list-item-icon .str-chat__icon {
  width: var(--str-chat__icon-size-sm);
  height: var(--str-chat__icon-size-sm);
}
.str-chat__message-reactions-detail .str-chat__message-reactions-detail__reaction-type-list .str-chat__message-reactions-detail__reaction-type-list-item .str-chat__message-reactions-detail__reaction-type-list-item-button .str-chat__message-reactions-detail__reaction-type-list-item-icon:has(.str-chat__icon) {
  display: flex;
  align-items: center;
  justify-content: center;
}
.str-chat__message-reactions-detail .str-chat__message-reactions-detail__reaction-type-list .str-chat__message-reactions-detail__reaction-type-list-item .str-chat__message-reactions-detail__reaction-type-list-item-button .str-chat__message-reactions-detail__reaction-type-list-item-count {
  color: var(--str-chat__reaction-text);
  font: var(--str-chat__font-metadata-emphasis);
}
.str-chat__message-reactions-detail .str-chat__message-reactions-detail__user-list-container {
  position: relative;
  border-radius: inherit;
}
.str-chat__message-reactions-detail .str-chat__message-reactions-detail__user-list-container::before, .str-chat__message-reactions-detail .str-chat__message-reactions-detail__user-list-container::after {
  content: "";
  position: absolute;
  width: 100%;
  inset-inline-start: 0;
  height: var(--str-chat__size-16);
}
.str-chat__message-reactions-detail .str-chat__message-reactions-detail__user-list-container::after {
  bottom: 0;
  border-end-end-radius: inherit;
  border-end-start-radius: inherit;
  background: linear-gradient(to bottom, transparent 5%, var(--str-chat__background-core-elevation-2) 95%);
}
.str-chat__message-reactions-detail .str-chat__message-reactions-detail__user-list-container::before {
  z-index: 1;
  top: 0;
  border-start-end-radius: inherit;
  border-start-start-radius: inherit;
  background: linear-gradient(to top, transparent 5%, var(--str-chat__background-core-elevation-2) 95%);
  display: none;
}
.str-chat__message-reactions-detail .str-chat__message-reactions-detail__user-list {
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
  scrollbar-width: none;
  position: relative;
  padding-block-end: var(--str-chat__spacing-xxs);
  max-height: 180px;
}
.str-chat__message-reactions-detail .str-chat__message-reactions-detail__user-list .str-chat__message-reactions-detail__skeleton-item {
  padding-block: var(--str-chat__spacing-xxs);
  display: flex;
  align-items: center;
  gap: var(--str-chat__spacing-xs);
  padding-inline: calc(var(--str-chat__spacing-sm) + var(--str-chat__spacing-xxs));
}
.str-chat__message-reactions-detail .str-chat__message-reactions-detail__user-list .str-chat__message-reactions-detail__skeleton-item .str-chat__message-reactions-detail__skeleton-avatar {
  width: var(--str-chat__size-32);
  height: var(--str-chat__size-32);
  border-radius: var(--str-chat__radius-max);
  background-color: var(--str-chat__background-core-surface-default);
  background-image: linear-gradient(90deg, var(--str-chat__skeleton-loading-base) 0%, var(--str-chat__skeleton-loading-highlight) 50%, var(--str-chat__skeleton-loading-base) 100%);
  background-repeat: no-repeat;
  background-size: 200% 100%;
  animation: loading-channel-shimmer 1.2s linear infinite;
  flex-shrink: 0;
}
.str-chat__message-reactions-detail .str-chat__message-reactions-detail__user-list .str-chat__message-reactions-detail__skeleton-item .str-chat__message-reactions-detail__skeleton-line {
  flex-grow: 1;
  height: var(--str-chat__size-20);
  border-radius: var(--str-chat__radius-sm);
  background-color: var(--str-chat__background-core-surface-default);
  background-image: linear-gradient(90deg, var(--str-chat__skeleton-loading-base) 0%, var(--str-chat__skeleton-loading-highlight) 50%, var(--str-chat__skeleton-loading-base) 100%);
  background-repeat: no-repeat;
  background-size: 200% 100%;
  animation: loading-channel-shimmer 1.2s linear infinite;
  border-radius: 999px;
  -webkit-mask-image: linear-gradient(90deg, #000 0%, #000 94%, rgba(0, 0, 0, 0.7) 98%, transparent 100%);
  mask-image: linear-gradient(90deg, #000 0%, #000 94%, rgba(0, 0, 0, 0.7) 98%, transparent 100%);
}
.str-chat__message-reactions-detail .str-chat__message-reactions-detail__user-list .str-chat__message-reactions-detail__user-list-item {
  padding-block: var(--str-chat__spacing-xxs);
  display: flex;
  align-items: center;
  gap: var(--str-chat__spacing-xs);
  padding-inline: calc(var(--str-chat__spacing-sm) + var(--str-chat__spacing-xxs));
  max-height: var(--str-chat__size-40);
}
.str-chat__message-reactions-detail .str-chat__message-reactions-detail__user-list .str-chat__message-reactions-detail__user-list-item .str-chat__message-reactions-detail__user-list-item-icon {
  font-family: system-ui;
  font-size: var(--str-chat__font-size-size-17);
  line-height: var(--str-chat__typography-line-height-normal);
}
.str-chat__message-reactions-detail .str-chat__message-reactions-detail__user-list .str-chat__message-reactions-detail__user-list-item .str-chat__message-reactions-detail__user-list-item-info {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  min-width: 0;
}
.str-chat__message-reactions-detail .str-chat__message-reactions-detail__user-list .str-chat__message-reactions-detail__user-list-item .str-chat__message-reactions-detail__user-list-item-info .str-chat__message-reactions-detail__user-list-item-username {
  color: var(--str-chat__text-primary);
  font: var(--str-chat__font-caption-default);
}
.str-chat__message-reactions-detail .str-chat__message-reactions-detail__user-list .str-chat__message-reactions-detail__user-list-item .str-chat__message-reactions-detail__user-list-item-info .str-chat__message-reactions-detail__user-list-item-button {
  padding: unset;
  background: unset;
  border: unset;
  border-radius: var(--str-chat__radius-max);
  color: var(--str-chat__text-tertiary);
  font: var(--str-chat__font-metadata-default);
  cursor: pointer;
  align-self: flex-start;
}

.str-chat__search {
  display: flex;
  flex-direction: column;
  gap: var(--str-chat__spacing-sm);
  padding-block: var(--str-chat__spacing-xs);
  justify-content: center;
}
.str-chat__search.str-chat__search--active {
  flex: 1;
  min-height: 0;
}

.str-chat__search-bar {
  padding-inline: var(--str-chat__spacing-md);
  display: flex;
  gap: var(--str-chat__spacing-xxxs);
}
.str-chat__search-bar .str-chat__search-bar__input-wrapper {
  display: flex;
  min-height: 40px;
  align-items: center;
  gap: var(--str-chat__spacing-xs);
  border-radius: var(--str-chat__radius-max);
  border: 1px solid var(--str-chat__border-core-default);
  color: var(--str-chat__input-text-placeholder);
  font: var(--str-chat__font-caption-default);
  flex-shrink: 1;
  flex-grow: 1;
}
.str-chat__search-bar .str-chat__search-bar__input-wrapper:focus-within {
  outline: var(--str-chat__focus-outline, 2px solid var(--border-utility-focused));
  outline-offset: var(--str-chat__focus-outline-offset, 2px);
}
.str-chat__search-bar .str-chat__search-bar__input-wrapper .str-chat__search-bar__input {
  min-height: 24px;
  border: none;
  background: none;
  width: 100%;
  font: inherit;
}
.str-chat__search-bar .str-chat__search-bar__input-wrapper .str-chat__search-bar__input:focus {
  outline: none;
}
.str-chat__search-bar .str-chat__search-bar__input-wrapper .str-chat__search-bar__clear-button {
  flex-shrink: 0;
}
.str-chat__search-bar .str-chat__search-bar__input-wrapper {
  padding-block: var(--str-chat__spacing-xs);
  padding-inline: var(--str-chat__spacing-sm);
}
.str-chat__search-bar .str-chat__search-bar__exit-search-button {
  flex-shrink: 0;
}

.str-chat__search-results {
  display: flex;
  flex-direction: column;
  gap: var(--str-chat__spacing-sm);
  flex: 1;
  min-height: 0;
}
.str-chat__search-results .str-chat__search-results-header {
  scrollbar-width: none;
}
.str-chat__search-results .str-chat__search-results-header .str-chat__search-results-header__filter-source-buttons {
  display: flex;
  gap: var(--str-chat__spacing-xxs);
  padding-inline: var(--str-chat__spacing-md);
}
.str-chat__search-results .str-chat__search-results-header .str-chat__search-results-header__filter-source-buttons > .str-chat__button {
  flex-shrink: 0;
}

.str-chat__search-source-results {
  flex: 1;
  display: flex;
  flex-direction: column;
  min-height: 0;
}

.str-chat__search-source-result-list {
  flex: 1;
  display: flex;
  flex-direction: column;
  min-height: 0;
}
.str-chat__search-source-result-list .str-chat__infinite-scroll-paginator {
  flex: 1;
  min-height: 0;
  scrollbar-gutter: stable both-edges;
  scrollbar-width: thin;
}
.str-chat__search-source-result-list .str-chat__search-result-container {
  padding: var(--str-chat__spacing-xxs);
  border-bottom: 1px solid var(--str-chat__border-core-subtle);
}
.str-chat__search-source-result-list .str-chat__search-result-container .str-chat__search-result--user {
  display: flex;
  align-items: center;
  gap: var(--str-chat__spacing-md);
  padding: var(--str-chat__spacing-sm);
  border-radius: var(--str-chat__radius-lg);
  width: 100%;
  border: none;
  background: none;
  cursor: pointer;
}
.str-chat__search-source-result-list .str-chat__search-result-container .str-chat__search-result--user .str-chat__avatar {
  flex-shrink: 0;
}
.str-chat__search-source-result-list .str-chat__search-result-container .str-chat__search-result--user .str-chat__search-result-data {
  display: flex;
  flex-direction: column;
  gap: var(--str-chat__spacing-xxs);
  flex: 1 0 0;
  min-width: 0;
  text-align: start;
}
.str-chat__search-source-result-list .str-chat__search-result-container .str-chat__search-result--user .str-chat__search-result-data .str-chat__search-result__display-name {
  font: var(--str-chat__font-caption-emphasis);
  color: var(--str-chat__text-primary);
  flex: 1;
  min-width: 0;
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}
.str-chat__search-source-result-list .str-chat__search-result-container .str-chat__search-result--user .str-chat__search-result-data .str-chat__search-result__last-active-timestamp {
  flex: 1;
  min-width: 0;
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
  color: var(--str-chat__text-tertiary);
  font: var(--str-chat__font-caption-default);
}
.str-chat__search-source-result-list .str-chat__search-result-container .str-chat__search-result--user {
  background: var(--str-chat__background-core-elevation-1);
}
.str-chat__search-source-result-list .str-chat__search-result-container .str-chat__search-result--user:not(:disabled):hover {
  background: var(--str-chat__background-utility-hover);
}
.str-chat__search-source-result-list .str-chat__search-result-container .str-chat__search-result--user:not(:disabled):active {
  background: var(--str-chat__background-utility-pressed);
}
.str-chat__search-source-result-list .str-chat__search-result-container .str-chat__search-result--user:not(:disabled)[aria-pressed=true] {
  background: var(--str-chat__background-utility-selected);
}

.str-chat__search-source-result-list__footer,
.str-chat__search-results-presearch,
.str-chat__search-source-results-empty {
  font: var(--str-chat__font-caption-default);
  color: var(--str-chat__text-tertiary);
  padding-block: var(--str-chat__spacing-xs);
  display: flex;
  justify-content: center;
  align-items: center;
}

.str-chat__skip-navigation-link {
  background-color: var(--str-chat__background-color, #fff);
  border: 1px solid transparent;
  border-radius: 4px;
  color: var(--str-chat__text-color, currentColor);
  left: 0;
  margin: 8px;
  padding: 8px 12px;
  position: absolute;
  text-decoration: none;
  top: 0;
  transform: translateY(-200%);
  z-index: 2;
}

.str-chat__skip-navigation-link:focus,
.str-chat__skip-navigation-link:focus-visible {
  border: 1px solid var(--accent-primary);
  transform: translateY(0);
}

.str-chat__summarized-message-preview {
  display: flex;
  align-items: center;
  gap: var(--str-chat__spacing-xxs);
  flex-grow: 1;
  flex-shrink: 1;
  min-width: 0;
  color: var(--str-chat__text-secondary);
  font: var(--str-chat__font-caption-default);
}
.str-chat__summarized-message-preview .str-chat__icon {
  flex-shrink: 0;
  width: var(--str-chat__icon-size-sm);
  height: var(--str-chat__icon-size-sm);
}
.str-chat__summarized-message-preview--error {
  color: var(--text-error);
}
.str-chat__summarized-message-preview--deleted {
  color: var(--str-chat__text-tertiary);
}
.str-chat__summarized-message-preview .str-chat__summarized-message-preview__text {
  flex: 1;
  min-width: 0;
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}
.str-chat__summarized-message-preview .str-chat__summarized-message-preview__delivery-status {
  display: flex;
  flex-shrink: 0;
  color: var(--str-chat__text-tertiary);
}
.str-chat__summarized-message-preview .str-chat__summarized-message-preview__delivery-status--read {
  color: var(--str-chat__accent-primary);
}
.str-chat__summarized-message-preview .str-chat__summarized-message-preview__sender {
  color: var(--str-chat__text-tertiary);
  font: var(--str-chat__font-caption-emphasis);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.str-chat .str-chat__suggestion-list {
  max-height: 320px;
  min-width: 200px;
  overflow-y: auto;
  scrollbar-width: none;
}
.str-chat .str-chat__suggestion-list.str-chat__context-menu .str-chat__list-item-layout:has(.str-chat__suggestion-list__mention) {
  padding: var(--str-chat__spacing-none);
}
.str-chat .str-chat__suggestion-list .str-chat__suggestion-list-item--selected {
  background-color: var(--str-chat__dialog-menu-button-hover-background-color);
}
.str-chat .str-chat__suggestion-list__mention {
  align-items: center;
  gap: var(--str-chat__spacing-sm);
}
.str-chat .str-chat__suggestion-list__mention .str-chat__list-item-layout__leading-icon {
  align-items: center;
  background: var(--str-chat__background-core-surface-subtle);
  border: 1px solid var(--str-chat__border-core-subtle);
  border-radius: var(--str-chat__radius-max);
  color: var(--str-chat__text-secondary);
  justify-content: center;
  padding: var(--str-chat__spacing-xs);
}
.str-chat .str-chat__suggestion-list__mention .str-chat__list-item-layout__leading-icon .str-chat__icon {
  stroke-width: 1.2px;
}
.str-chat .str-chat__suggestion-list__item-content {
  display: flex;
  flex: 1;
  flex-direction: column;
  min-width: 0;
}
.str-chat .str-chat__suggestion-list__item-title {
  font: var(--str-chat__font-caption-default);
  color: var(--str-chat__text-primary);
  white-space: nowrap;
  overflow-y: visible;
  overflow-x: hidden;
  overflow-x: clip;
  text-overflow: ellipsis;
  text-align: start;
  min-width: 0;
}
.str-chat .str-chat__list-item-layout__title.str-chat__suggestion-list__mention-item-title {
  font: var(--str-chat__font-body-default);
}
.str-chat .str-chat__suggestion-list__item-details {
  font: var(--str-chat__font-metadata-default);
  color: var(--str-chat__text-primary);
  white-space: nowrap;
  overflow-y: visible;
  overflow-x: hidden;
  overflow-x: clip;
  text-overflow: ellipsis;
  color: var(--str-chat__text-tertiary);
  text-align: start;
  min-width: 0;
}

.str-chat__thread-container {
  color: var(--str-chat__text-primary);
  border-inline-start: 1px solid var(--str-chat__border-core-default);
  position: relative;
  height: 100%;
  display: flex;
  flex-direction: column;
  width: 100%;
}

.str-chat__parent-message-li {
  padding-block-start: var(--str-chat__spacing-sm);
}
.str-chat__parent-message-li .str-chat__message {
  max-width: calc(var(--str-chat__message-composer-max-width) + var(--str-chat__message-composer-padding));
  padding-block: var(--str-chat__spacing-xs);
  margin-inline: auto;
}
.str-chat__parent-message-li .str-chat__thread-start {
  display: flex;
  padding: var(--str-chat__spacing-xs) var(--str-chat__spacing-none);
  margin-block: var(--str-chat__spacing-xs);
  justify-content: center;
  align-items: center;
  gap: var(--str-chat__spacing-none);
  width: 100%;
  border-top: 1px solid var(--str-chat__border-core-subtle);
  border-bottom: 1px solid var(--str-chat__border-core-subtle);
  background: var(--str-chat__background-core-surface-subtle);
  color: var(--str-chat__chat-text-system);
  font: var(--str-chat__font-metadata-emphasis);
}

.str-chat__thread-header {
  width: 100%;
  padding: var(--str-chat__spacing-md);
  height: var(--str-chat__channel-header-height);
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  align-items: center;
  background: var(--str-chat__background-core-elevation-1);
  color: var(--str-chat__text-primary);
  border-block-end: 1px solid var(--str-chat__border-core-default);
}
.str-chat__thread-header .str-chat__thread-header-title {
  font: var(--str-chat__font-heading-sm);
}
.str-chat__thread-header .str-chat__thread-header-subtitle {
  font: var(--str-chat__font-caption-default);
  color: var(--str-chat__text-secondary);
}
.str-chat__thread-header .str-chat__thread-header-details {
  display: flex;
  flex-direction: column;
  align-items: center;
  overflow-y: hidden;
  overflow-x: hidden;
  min-width: 0;
  justify-self: center;
}
.str-chat__thread-header .str-chat__thread-header-details .str-chat__thread-header-subtitle,
.str-chat__thread-header .str-chat__thread-header-details .str-chat__thread-header-title {
  white-space: nowrap;
  overflow-y: visible;
  overflow-x: hidden;
  overflow-x: clip;
  text-overflow: ellipsis;
}
.str-chat__thread-header .str-chat__thread-header-details .str-chat__thread-header-subtitle {
  overflow-y: hidden;
}
.str-chat__thread-header .str-chat__thread-header__start {
  min-width: 0;
  justify-self: start;
}
.str-chat__thread-header .str-chat__thread-header__end {
  min-width: 0;
  justify-self: end;
}
.str-chat__thread-header .str-chat__close-thread-button {
  display: flex;
  align-items: flex-start;
  justify-content: flex-end;
  width: var(--str-chat__size-40);
  height: var(--str-chat__size-40);
  cursor: pointer;
  background-color: transparent;
  border: none;
}
.str-chat__thread-header .str-chat__close-thread-button .str-chat__icon {
  fill: var(--str-chat__text-primary);
}

.str-chat__chat-view__threads .str-chat__thread-header .str-chat__thread-header-details {
  align-items: center;
}
.str-chat__chat-view__threads .str-chat__thread {
  border: none;
}

/* Only available in React SDK. */
.str-chat__unread-count-badge {
  background-color: var(--str-chat__accent-error);
  color: var(--str-chat__badge-text-on-accent);
  border-radius: 9999px;
}

.str-chat {
  --str-chat-unread-count-badge-absolute-offset-vertical: 50%;
  --str-chat-unread-count-badge-absolute-offset-horizontal: 50%;
}

.str-chat__unread-count-badge-container {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}

.str-chat__unread-count-badge {
  font-size: 12px;
  min-width: 18px;
  min-height: 18px;
  line-height: 8px;
  font-weight: 700;
  padding: 5px;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}
.str-chat__unread-count-badge--top-right {
  position: absolute;
  translate: var(--str-chat-unread-count-badge-absolute-offset-horizontal) calc(var(--str-chat-unread-count-badge-absolute-offset-vertical) * -1);
}
.str-chat__unread-count-badge--bottom-left {
  position: absolute;
  translate: calc(var(--str-chat-unread-count-badge-absolute-offset-horizontal) * -1) var(--str-chat-unread-count-badge-absolute-offset-vertical);
}
.str-chat__unread-count-badge--bottom-right {
  position: absolute;
  translate: var(--str-chat-unread-count-badge-absolute-offset-horizontal) var(--str-chat-unread-count-badge-absolute-offset-vertical);
}
.str-chat__unread-count-badge--top-left {
  position: absolute;
  translate: calc(var(--str-chat-unread-count-badge-absolute-offset-horizontal) * -1) calc(var(--str-chat-unread-count-badge-absolute-offset-vertical) * -1);
}

.str-chat {
  --str-chat__thread-list-transition-duration: var(
    --str-chat__channel-list-transition-duration
  );
  --str-chat__thread-list-transition-easing: var(
    --str-chat__channel-list-transition-easing
  );
  --str-chat__thread-list-transition-offset: var(
    --str-chat__channel-list-transition-offset
  );
  /* Default desktop width of the thread list. Override to match custom layouts. */
  --str-chat__thread-list-width: 100%;
  /* Default mobile overlay width of the thread list. Override to match custom layouts. */
  --str-chat__thread-list-mobile-width: 100%;
}

.str-chat__thread-list-container {
  background: var(--str-chat__background-core-elevation-1);
  color: var(--str-chat__text-primary);
  border-inline-end: 1px solid var(--str-chat__border-core-default);
  display: flex;
  flex: 0 0 var(--str-chat__thread-list-width);
  flex-direction: column;
  height: 100%;
  max-width: 100%;
  min-width: 280px;
  opacity: 1;
  position: relative;
  transform: translateX(0);
  transition: flex-basis var(--str-chat__thread-list-transition-duration) var(--str-chat__thread-list-transition-easing), min-width var(--str-chat__thread-list-transition-duration) var(--str-chat__thread-list-transition-easing), width var(--str-chat__thread-list-transition-duration) var(--str-chat__thread-list-transition-easing), max-width var(--str-chat__thread-list-transition-duration) var(--str-chat__thread-list-transition-easing), opacity var(--str-chat__thread-list-transition-duration) var(--str-chat__thread-list-transition-easing), transform var(--str-chat__thread-list-transition-duration) var(--str-chat__thread-list-transition-easing);
  width: var(--str-chat__thread-list-width);
  /* Mobile: hide when nav closed; when open show as overlay. */
}
@media (max-width: 767px) {
  .str-chat__thread-list-container {
    flex-basis: auto;
    inset-inline-start: 0;
    max-width: 100%;
    min-width: 0;
    pointer-events: none;
    position: absolute;
    top: 0;
    bottom: 0;
    transform: translateX(calc(var(--str-chat__thread-list-transition-offset) * -1px));
    transition: transform var(--str-chat__thread-list-transition-duration) var(--str-chat__thread-list-transition-easing), visibility 0s linear var(--str-chat__thread-list-transition-duration);
    visibility: hidden;
    width: var(--str-chat__thread-list-mobile-width);
    z-index: 1;
  }
}
@media (prefers-reduced-motion: reduce) {
  .str-chat__thread-list-container {
    transition: none;
  }
}
.str-chat__thread-list-container .str-chat__unseen-threads-banner {
  padding: unset;
  background: unset;
  border: unset;
  border-radius: var(--str-chat__radius-max);
  font: var(--str-chat__font-metadata-emphasis);
  cursor: pointer;
  display: flex;
  color: var(--str-chat__text-secondary);
  height: 36px;
  justify-content: center;
  align-items: center;
  gap: var(--str-chat__spacing-xs);
  border-radius: var(--str-chat__radius-none);
  background: var(--background-core-surface);
  position: relative;
}
.str-chat__thread-list-container .str-chat__unseen-threads-banner > .str-chat__icon {
  height: var(--str-chat__icon-size-md);
  width: var(--str-chat__icon-size-md);
}
.str-chat__thread-list-container .str-chat__unseen-threads-banner:not(:disabled):hover::after {
  content: "";
  position: absolute;
  inset: 0;
  background: var(--str-chat__background-utility-hover);
  pointer-events: none;
}

.str-chat__thread-list {
  flex: 1;
}
.str-chat__thread-list [data-virtuoso-scroller=true] {
  height: 100% !important;
}
.str-chat__thread-list [data-viewport-type=element] {
  height: 100% !important;
}

.str-chat__thread-list-empty-placeholder {
  --str-chat-icon-color: var(--str-chat__text-secondary);
  text-align: center;
}
.str-chat__thread-list-empty-placeholder svg {
  width: 32px;
  height: 32px;
}
.str-chat__thread-list-empty-placeholder {
  height: 100%;
  min-height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: var(--str-chat__spacing-xl);
  color: var(--str-chat__text-secondary);
}
.str-chat__thread-list-empty-placeholder p {
  margin: 0;
  color: var(--str-chat__text-secondary);
  font: var(--str-chat__font-caption-default);
}

.str-chat__thread-list__header {
  display: flex;
  align-items: center;
  padding: var(--str-chat__spacing-md);
  height: var(--str-chat__channel-header-height);
  width: 100%;
}
.str-chat__thread-list__header .str-chat__thread-list__header__title {
  flex: 1;
  font: var(--str-chat__font-heading-lg);
  color: var(--str-chat__text-primary);
}

.str-chat__thread-list-item-container {
  border-bottom: 1px solid var(--str-chat__border-core-subtle);
  padding: var(--str-chat__spacing-xxs);
  max-width: 100%;
}
.str-chat__thread-list-item-container:has(.str-chat__thread-list-item--highlighted) {
  background: var(--str-chat__background-core-highlight);
}

.str-chat__thread-list-item {
  display: flex;
  gap: var(--str-chat__spacing-sm);
  align-items: flex-start;
  padding-inline: var(--str-chat__spacing-sm);
  padding-block: var(--str-chat__spacing-sm);
  padding-block-start: calc(var(--str-chat__spacing-sm) - 1px);
  border: none;
  cursor: pointer;
  text-align: start;
  background: var(--str-chat__background-core-elevation-1);
  border-radius: var(--str-chat__radius-lg);
  width: 100%;
  max-width: 100%;
}
.str-chat__thread-list-item:not(:disabled):hover {
  background: var(--str-chat__background-utility-hover);
}
.str-chat__thread-list-item:not(:disabled):active {
  background: var(--str-chat__background-utility-pressed);
}
.str-chat__thread-list-item:not(:disabled)[aria-pressed=true] {
  background: var(--str-chat__background-utility-selected);
}
.str-chat__thread-list-item .str-chat__avatar {
  flex-shrink: 0;
}
.str-chat__thread-list-item .str-chat__summarized-message-preview .str-chat__summarized-message-preview__sender {
  color: var(--str-chat__text-secondary);
}
.str-chat__thread-list-item .str-chat__summarized-message-preview .str-chat__summarized-message-preview__text {
  color: var(--str-chat__text-primary);
}

.str-chat__thread-list-item[aria-selected=true] {
  background-color: var(--str-chat__background-utility-selected);
}

.str-chat__thread-list-item__content {
  display: flex;
  flex-direction: column;
  gap: var(--str-chat__spacing-xs);
  flex: 1 0 0;
  min-width: 0;
}

.str-chat__thread-list-item__content-leading {
  display: flex;
  flex-direction: column;
  gap: var(--str-chat__spacing-xxs);
  padding-block: var(--str-chat__spacing-xxxs);
}
.str-chat__thread-list-item__content-leading .str-chat__summarized-message-preview {
  font: var(--str-chat__font-body-default);
}
.str-chat__thread-list-item__content-leading .str-chat__summarized-message-preview .str-chat__summarized-message-preview__sender {
  font: var(--str-chat__font-body-emphasis);
}

.str-chat__thread-list-item__title {
  font: var(--str-chat__font-caption-emphasis);
  color: var(--str-chat__text-tertiary);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.str-chat__thread-list-item__content-trailing {
  display: flex;
  gap: var(--str-chat__spacing-xs);
  align-items: center;
}

.str-chat__thread-list-item__reply-information {
  display: flex;
  gap: var(--str-chat__spacing-xs);
  align-items: center;
}

.str-chat__thread-list-item__reply-count {
  font: var(--str-chat__font-caption-emphasis);
  color: var(--str-chat__text-link);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.str-chat__thread-list-item__timestamp {
  font: var(--str-chat__font-caption-default);
  color: var(--str-chat__text-tertiary);
  min-width: 0;
  white-space: nowrap;
  overflow-y: visible;
  overflow-x: hidden;
  overflow-x: clip;
  text-overflow: ellipsis;
}

.str-chat {
  --str-chat__tooltip-background-color: var(--str-chat__background-core-inverse);
}
.str-chat.str-chat__theme-dark {
  --str-chat__tooltip-background-color: var(--str-chat__background-core-elevation-2);
}

.str-chat__tooltip {
  background: var(--str-chat__tooltip-background-color);
  color: var(--str-chat__text-on-accent);
  box-shadow: var(--str-chat__box-shadow-3);
  border-radius: var(--str-chat__radius-md);
  overflow-y: hidden;
  display: flex;
  gap: var(--str-chat__spacing-xs);
  padding: var(--str-chat__spacing-xs);
  z-index: 1;
  max-width: 150px;
  width: max-content;
  font: var(--str-chat__font-metadata-emphasis);
}
.str-chat__tooltip::after {
  background-color: var(--str-chat__tooltip-background-color);
}

/* Shared transition: fade-in when subtitle or typing indicator content appears */
@keyframes str-chat__typing-indicator-fade-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.str-chat__subtitle-content-transition {
  animation: str-chat__typing-indicator-fade-in 0.2s ease-out;
  display: inline-block;
}

/* Inline typing indicator: avatar stack + bubble with animated dots (message-row layout) */
.str-chat__typing-indicator {
  display: flex;
  align-items: flex-end;
  width: 100%;
  max-width: calc(var(--str-chat__message-composer-max-width) + var(--str-chat__message-composer-padding));
  margin: auto;
  gap: var(--str-chat__spacing-xs);
  padding-block: var(--str-chat__spacing-xs);
  padding-inline: var(--str-chat__message-composer-padding);
}
.str-chat__typing-indicator.str-chat__typing-indicator--with-transition {
  animation: str-chat__typing-indicator-fade-in 0.25s ease-out;
}

.str-chat__typing-indicator__bubble {
  display: inline-flex;
  align-items: center;
  min-height: 36px;
  max-height: 36px;
  padding-block: var(--str-chat__spacing-xs);
  padding-inline: var(--str-chat__spacing-sm);
  border-radius: var(--str-chat__message-bubble-radius-group-bottom) var(--str-chat__message-bubble-radius-group-bottom) var(--str-chat__message-bubble-radius-group-bottom) var(--str-chat__message-bubble-radius-tail);
  border: 1px solid var(--str-chat__chat-bg-incoming);
  background: var(--str-chat__chat-bg-incoming);
}

.str-chat__typing-indicator__dots {
  display: flex;
  align-items: center;
  column-gap: var(--str-chat__spacing-xxs);
}

/* SVG dots (TypingIndicatorDots component) */
.str-chat__typing-indicator__dots svg {
  display: block;
}
.str-chat__typing-indicator__dots svg circle:nth-child(1) {
  fill: var(--str-chat__chat-text-typing-indicator);
  animation: str-chat__typing-indicator-dot 1.2s ease-in-out infinite both;
  animation-delay: 0s;
}
.str-chat__typing-indicator__dots svg circle:nth-child(2) {
  fill: var(--str-chat__chat-text-typing-indicator);
  animation: str-chat__typing-indicator-dot 1.2s ease-in-out infinite both;
  animation-delay: 0.15s;
}
.str-chat__typing-indicator__dots svg circle:nth-child(3) {
  fill: var(--str-chat__chat-text-typing-indicator);
  animation: str-chat__typing-indicator-dot 1.2s ease-in-out infinite both;
  animation-delay: 0.3s;
}

@keyframes str-chat__typing-indicator-dot {
  0%, 100% {
    opacity: 1;
  }
  33% {
    opacity: 0.75;
  }
  66% {
    opacity: 0.5;
  }
}
/* Header variant: text + inline dots (ChannelHeader / ThreadHeader) */
.str-chat__typing-indicator-header {
  display: inline-flex;
  align-items: baseline;
  gap: var(--str-chat__spacing-xs);
  white-space: nowrap;
  color: var(--str-chat__text-secondary);
  font: var(--str-chat__font-caption-default);
}

.str-chat__typing-indicator-header__dots {
  display: inline-flex;
  align-items: center;
  vertical-align: middle;
}

.str-chat__video-player-loading {
  display: flex;
  align-items: center;
  justify-content: center;
  inline-size: 100%;
  block-size: 100%;
}

.str-chat .str-chat__message-attachment__video-thumbnail {
  position: relative;
  width: 100%;
  height: 100%;
}
.str-chat .str-chat__message-attachment__video-thumbnail .str-chat__message-attachment__video-thumbnail-image {
  object-fit: cover;
  width: 100%;
  height: 100%;
}
.str-chat .str-chat__message-attachment__video-thumbnail .str-chat__message-attachment__video-thumbnail__play-indicator,
.str-chat .str-chat__message-attachment__video-thumbnail .str-chat__button.str-chat__button--solid.str-chat__message-attachment__video-thumbnail__play-indicator {
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  height: 48px;
  width: 48px;
  border-radius: var(--str-chat__radius-max);
  background-color: var(--str-chat__control-play-button-bg);
  left: calc(50% - 24px);
  top: calc(50% - 24px);
}
.str-chat .str-chat__message-attachment__video-thumbnail .str-chat__message-attachment__video-thumbnail__play-indicator svg,
.str-chat .str-chat__message-attachment__video-thumbnail .str-chat__button.str-chat__button--solid.str-chat__message-attachment__video-thumbnail__play-indicator svg {
  height: 24px;
  width: 24px;
}
.str-chat .str-chat__message-attachment__video-thumbnail .str-chat__message-attachment__video-thumbnail__play-indicator svg path,
.str-chat .str-chat__message-attachment__video-thumbnail .str-chat__button.str-chat__button--solid.str-chat__message-attachment__video-thumbnail__play-indicator svg path {
  fill: var(--str-chat__control-play-button-icon);
}

/*# sourceMappingURL=index.css.map */*, ::before, ::after {
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x:  ;
  --tw-pan-y:  ;
  --tw-pinch-zoom:  ;
  --tw-scroll-snap-strictness: proximity;
  --tw-gradient-from-position:  ;
  --tw-gradient-via-position:  ;
  --tw-gradient-to-position:  ;
  --tw-ordinal:  ;
  --tw-slashed-zero:  ;
  --tw-numeric-figure:  ;
  --tw-numeric-spacing:  ;
  --tw-numeric-fraction:  ;
  --tw-ring-inset:  ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgb(59 130 246 / 0.5);
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur:  ;
  --tw-brightness:  ;
  --tw-contrast:  ;
  --tw-grayscale:  ;
  --tw-hue-rotate:  ;
  --tw-invert:  ;
  --tw-saturate:  ;
  --tw-sepia:  ;
  --tw-drop-shadow:  ;
  --tw-backdrop-blur:  ;
  --tw-backdrop-brightness:  ;
  --tw-backdrop-contrast:  ;
  --tw-backdrop-grayscale:  ;
  --tw-backdrop-hue-rotate:  ;
  --tw-backdrop-invert:  ;
  --tw-backdrop-opacity:  ;
  --tw-backdrop-saturate:  ;
  --tw-backdrop-sepia:  ;
  --tw-contain-size:  ;
  --tw-contain-layout:  ;
  --tw-contain-paint:  ;
  --tw-contain-style:  ;
}

::backdrop {
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x:  ;
  --tw-pan-y:  ;
  --tw-pinch-zoom:  ;
  --tw-scroll-snap-strictness: proximity;
  --tw-gradient-from-position:  ;
  --tw-gradient-via-position:  ;
  --tw-gradient-to-position:  ;
  --tw-ordinal:  ;
  --tw-slashed-zero:  ;
  --tw-numeric-figure:  ;
  --tw-numeric-spacing:  ;
  --tw-numeric-fraction:  ;
  --tw-ring-inset:  ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgb(59 130 246 / 0.5);
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur:  ;
  --tw-brightness:  ;
  --tw-contrast:  ;
  --tw-grayscale:  ;
  --tw-hue-rotate:  ;
  --tw-invert:  ;
  --tw-saturate:  ;
  --tw-sepia:  ;
  --tw-drop-shadow:  ;
  --tw-backdrop-blur:  ;
  --tw-backdrop-brightness:  ;
  --tw-backdrop-contrast:  ;
  --tw-backdrop-grayscale:  ;
  --tw-backdrop-hue-rotate:  ;
  --tw-backdrop-invert:  ;
  --tw-backdrop-opacity:  ;
  --tw-backdrop-saturate:  ;
  --tw-backdrop-sepia:  ;
  --tw-contain-size:  ;
  --tw-contain-layout:  ;
  --tw-contain-paint:  ;
  --tw-contain-style:  ;
}/*
! tailwindcss v3.4.19 | MIT License | https://tailwindcss.com
*//*
1. Prevent padding and border from affecting element width. (https://github.com/mozdevs/cssremedy/issues/4)
2. Allow adding a border to an element by just adding a border-width. (https://github.com/tailwindcss/tailwindcss/pull/116)
*/

*,
::before,
::after {
  box-sizing: border-box; /* 1 */
  border-width: 0; /* 2 */
  border-style: solid; /* 2 */
  border-color: #e5e7eb; /* 2 */
}

::before,
::after {
  --tw-content: '';
}

/*
1. Use a consistent sensible line-height in all browsers.
2. Prevent adjustments of font size after orientation changes in iOS.
3. Use a more readable tab size.
4. Use the user's configured `sans` font-family by default.
5. Use the user's configured `sans` font-feature-settings by default.
6. Use the user's configured `sans` font-variation-settings by default.
7. Disable tap highlights on iOS
*/

html,
:host {
  line-height: 1.5; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
  -moz-tab-size: 4; /* 3 */
  -o-tab-size: 4;
     tab-size: 4; /* 3 */
  font-family: SFProDisplay, ui-sans-serif, system-ui; /* 4 */
  font-feature-settings: normal; /* 5 */
  font-variation-settings: normal; /* 6 */
  -webkit-tap-highlight-color: transparent; /* 7 */
}

/*
1. Remove the margin in all browsers.
2. Inherit line-height from `html` so users can set them as a class directly on the `html` element.
*/

body {
  margin: 0; /* 1 */
  line-height: inherit; /* 2 */
}

/*
1. Add the correct height in Firefox.
2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)
3. Ensure horizontal rules are visible by default.
*/

hr {
  height: 0; /* 1 */
  color: inherit; /* 2 */
  border-top-width: 1px; /* 3 */
}

/*
Add the correct text decoration in Chrome, Edge, and Safari.
*/

abbr:where([title]) {
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
}

/*
Remove the default font size and weight for headings.
*/

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: inherit;
}

/*
Reset links to optimize for opt-in styling instead of opt-out.
*/

a {
  color: inherit;
  text-decoration: inherit;
}

/*
Add the correct font weight in Edge and Safari.
*/

b,
strong {
  font-weight: bolder;
}

/*
1. Use the user's configured `mono` font-family by default.
2. Use the user's configured `mono` font-feature-settings by default.
3. Use the user's configured `mono` font-variation-settings by default.
4. Correct the odd `em` font sizing in all browsers.
*/

code,
kbd,
samp,
pre {
  font-family: var(--font-mono), monospace; /* 1 */
  font-feature-settings: normal; /* 2 */
  font-variation-settings: normal; /* 3 */
  font-size: 1em; /* 4 */
}

/*
Add the correct font size in all browsers.
*/

small {
  font-size: 80%;
}

/*
Prevent `sub` and `sup` elements from affecting the line height in all browsers.
*/

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/*
1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297)
2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016)
3. Remove gaps between table borders by default.
*/

table {
  text-indent: 0; /* 1 */
  border-color: inherit; /* 2 */
  border-collapse: collapse; /* 3 */
}

/*
1. Change the font styles in all browsers.
2. Remove the margin in Firefox and Safari.
3. Remove default padding in all browsers.
*/

button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-feature-settings: inherit; /* 1 */
  font-variation-settings: inherit; /* 1 */
  font-size: 100%; /* 1 */
  font-weight: inherit; /* 1 */
  line-height: inherit; /* 1 */
  letter-spacing: inherit; /* 1 */
  color: inherit; /* 1 */
  margin: 0; /* 2 */
  padding: 0; /* 3 */
}

/*
Remove the inheritance of text transform in Edge and Firefox.
*/

button,
select {
  text-transform: none;
}

/*
1. Correct the inability to style clickable types in iOS and Safari.
2. Remove default button styles.
*/

button,
input:where([type='button']),
input:where([type='reset']),
input:where([type='submit']) {
  -webkit-appearance: button; /* 1 */
  background-color: transparent; /* 2 */
  background-image: none; /* 2 */
}

/*
Use the modern Firefox focus style for all focusable elements.
*/

:-moz-focusring {
  outline: auto;
}

/*
Remove the additional `:invalid` styles in Firefox. (https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737)
*/

:-moz-ui-invalid {
  box-shadow: none;
}

/*
Add the correct vertical alignment in Chrome and Firefox.
*/

progress {
  vertical-align: baseline;
}

/*
Correct the cursor style of increment and decrement buttons in Safari.
*/

::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
  height: auto;
}

/*
1. Correct the odd appearance in Chrome and Safari.
2. Correct the outline style in Safari.
*/

[type='search'] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/*
Remove the inner padding in Chrome and Safari on macOS.
*/

::-webkit-search-decoration {
  -webkit-appearance: none;
}

/*
1. Correct the inability to style clickable types in iOS and Safari.
2. Change font properties to `inherit` in Safari.
*/

::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/*
Add the correct display in Chrome and Safari.
*/

summary {
  display: list-item;
}

/*
Removes the default spacing and border for appropriate elements.
*/

blockquote,
dl,
dd,
h1,
h2,
h3,
h4,
h5,
h6,
hr,
figure,
p,
pre {
  margin: 0;
}

fieldset {
  margin: 0;
  padding: 0;
}

legend {
  padding: 0;
}

ol,
ul,
menu {
  list-style: none;
  margin: 0;
  padding: 0;
}

/*
Reset default styling for dialogs.
*/
dialog {
  padding: 0;
}

/*
Prevent resizing textareas horizontally by default.
*/

textarea {
  resize: vertical;
}

/*
1. Reset the default placeholder opacity in Firefox. (https://github.com/tailwindlabs/tailwindcss/issues/3300)
2. Set the default placeholder color to the user's configured gray 400 color.
*/

input::-moz-placeholder, textarea::-moz-placeholder {
  opacity: 1; /* 1 */
  color: #9ca3af; /* 2 */
}

input::placeholder,
textarea::placeholder {
  opacity: 1; /* 1 */
  color: #9ca3af; /* 2 */
}

/*
Set the default cursor for buttons.
*/

button,
[role="button"] {
  cursor: pointer;
}

/*
Make sure disabled buttons don't get the pointer cursor.
*/
:disabled {
  cursor: default;
}

/*
1. Make replaced elements `display: block` by default. (https://github.com/mozdevs/cssremedy/issues/14)
2. Add `vertical-align: middle` to align replaced elements more sensibly by default. (https://github.com/jensimmons/cssremedy/issues/14#issuecomment-634934210)
   This can trigger a poorly considered lint error in some tools but is included by design.
*/

img,
svg,
video,
canvas,
audio,
iframe,
embed,
object {
  display: block; /* 1 */
  vertical-align: middle; /* 2 */
}

/*
Constrain images and videos to the parent width and preserve their intrinsic aspect ratio. (https://github.com/mozdevs/cssremedy/issues/14)
*/

img,
video {
  max-width: 100%;
  height: auto;
}

/* Make elements with the HTML hidden attribute stay hidden by default */
[hidden]:where(:not([hidden="until-found"])) {
  display: none;
}

:root {
  --radius: 1.5rem;
  --font-sans: Inter;
  --font-serif: ;
  --font-mono: Fira Code;
  --color-background: 255 255 255;
  --color-foreground: 71 85 105;
  --color-black: 2 6 23;
  --color-white: 255 255 255;
  --color-surface: 226 232 240;
  --color-surface-dark: 203 213 225;
  --color-surface-light: 241 245 249;
  --color-surface-foreground: 2 6 23;
  --color-primary: 9 9 11;
  --color-primary-dark: 9 9 11;
  --color-primary-light: 228 228 231;
  --color-primary-foreground: 255 255 255;
  --color-secondary: 226 232 240;
  --color-secondary-dark: 203 213 225;
  --color-secondary-light: 241 245 249;
  --color-secondary-foreground: 2 6 23;
  --color-info: 0 98 255;
  --color-info-dark: 0 85 221;
  --color-info-light: 0 122 255;
  --color-info-foreground: 248 250 252;
  --color-success: 0 191 107;
  --color-success-dark: 0 163 95;
  --color-success-light: 2 229 133;
  --color-success-foreground: 248 250 252;
  --color-warning: 252 163 39;
  --color-warning-dark: 246 125 10;
  --color-warning-light: 253 186 76;
  --color-warning-foreground: 248 250 252;
  --color-error: 239 68 68;
  --color-error-dark: 220 38 38;
  --color-error-light: 248 113 113;
  --color-error-foreground: 248 250 252;
}

.dark {
  --color-background: 2 6 23;
  --color-foreground: 148 163 184;
  --color-black: 2 6 23;
  --color-white: 255 255 255;
  --color-surface: 30 41 59;
  --color-surface-dark: 15 23 42;
  --color-surface-light: 51 65 85;
  --color-surface-foreground: 248 250 252;
  --color-primary: 226 232 240;
  --color-primary-dark: 203 213 225;
  --color-primary-light: 241 245 249;
  --color-primary-foreground: 2 6 23;
  --color-secondary: 30 41 59;
  --color-secondary-dark: 15 23 42;
  --color-secondary-light: 51 65 85;
  --color-secondary-foreground: 248 250 252;
  --color-info: 0 98 255;
  --color-info-dark: 0 85 221;
  --color-info-light: 0 122 255;
  --color-info-foreground: 248 250 252;
  --color-success: 0 191 107;
  --color-success-dark: 0 163 95;
  --color-success-light: 2 229 133;
  --color-success-foreground: 248 250 252;
  --color-warning: 252 163 39;
  --color-warning-dark: 246 125 10;
  --color-warning-light: 253 186 76;
  --color-warning-foreground: 248 250 252;
  --color-error: 239 68 68;
  --color-error-dark: 220 38 38;
  --color-error-light: 248 113 113;
  --color-error-foreground: 248 250 252;
}
.container {
  width: 100%;
}
@media (min-width: 640px) {

  .container {
    max-width: 640px;
  }
}
@media (min-width: 768px) {

  .container {
    max-width: 768px;
  }
}
@media (min-width: 1024px) {

  .container {
    max-width: 1024px;
  }
}
@media (min-width: 1280px) {

  .container {
    max-width: 1280px;
  }
}
@media (min-width: 1536px) {

  .container {
    max-width: 1536px;
  }
}
@media (min-width: 1600px) {

  .container {
    max-width: 1600px;
  }
}
@media (min-width: 1920px) {

  .container {
    max-width: 1920px;
  }
}
@media (min-width: 2560px) {

  .container {
    max-width: 2560px;
  }
}
.pointer-events-none {
  pointer-events: none;
}
.\!visible {
  visibility: visible !important;
}
.visible {
  visibility: visible;
}
.invisible {
  visibility: hidden;
}
.collapse {
  visibility: collapse;
}
.fixed {
  position: fixed;
}
.absolute {
  position: absolute;
}
.relative {
  position: relative;
}
.sticky {
  position: sticky;
}
.inset-0 {
  inset: 0px;
}
.inset-y-0 {
  top: 0px;
  bottom: 0px;
}
.-left-6 {
  left: -1.5rem;
}
.-right-0\.5 {
  right: -0.125rem;
}
.-right-1 {
  right: -0.25rem;
}
.-right-2 {
  right: -0.5rem;
}
.-top-0\.5 {
  top: -0.125rem;
}
.-top-1 {
  top: -0.25rem;
}
.-top-2 {
  top: -0.5rem;
}
.bottom-0 {
  bottom: 0px;
}
.bottom-1 {
  bottom: 0.25rem;
}
.bottom-4 {
  bottom: 1rem;
}
.bottom-6 {
  bottom: 1.5rem;
}
.bottom-\[--line-offset\] {
  bottom: var(--line-offset);
}
.bottom-\[14\%\] {
  bottom: 14%;
}
.bottom-\[6\%\] {
  bottom: 6%;
}
.left-0 {
  left: 0px;
}
.left-1\/2 {
  left: 50%;
}
.left-2 {
  left: 0.5rem;
}
.left-2\/4 {
  left: 50%;
}
.left-4 {
  left: 1rem;
}
.left-\[--line-offset\] {
  left: var(--line-offset);
}
.left-\[--terminal-radius\] {
  left: var(--terminal-radius);
}
.left-\[14\%\] {
  left: 14%;
}
.left-\[6\%\] {
  left: 6%;
}
.right-0 {
  right: 0px;
}
.right-2 {
  right: 0.5rem;
}
.right-6 {
  right: 1.5rem;
}
.right-\[--line-offset\] {
  right: var(--line-offset);
}
.right-\[14\%\] {
  right: 14%;
}
.right-\[6\%\] {
  right: 6%;
}
.top-0 {
  top: 0px;
}
.top-1\/2 {
  top: 50%;
}
.top-2 {
  top: 0.5rem;
}
.top-2\.5 {
  top: 0.625rem;
}
.top-2\/4 {
  top: 50%;
}
.top-3 {
  top: 0.75rem;
}
.top-3\.5 {
  top: 0.875rem;
}
.top-4 {
  top: 1rem;
}
.top-\[--line-offset\] {
  top: var(--line-offset);
}
.top-\[--terminal-radius\] {
  top: var(--terminal-radius);
}
.top-\[-20px\] {
  top: -20px;
}
.top-\[14\%\] {
  top: 14%;
}
.top-\[6\%\] {
  top: 6%;
}
.z-10 {
  z-index: 10;
}
.z-40 {
  z-index: 40;
}
.z-50 {
  z-index: 50;
}
.z-\[2\] {
  z-index: 2;
}
.z-\[9997\] {
  z-index: 9997;
}
.z-\[9998\] {
  z-index: 9998;
}
.z-\[9999\] {
  z-index: 9999;
}
.order-\[0\.5px\] {
  order: 0.5px;
}
.col-span-2 {
  grid-column: span 2 / span 2;
}
.col-span-3 {
  grid-column: span 3 / span 3;
}
.\!m-0 {
  margin: 0px !important;
}
.m-0 {
  margin: 0px;
}
.m-1 {
  margin: 0.25rem;
}
.m-1\.5 {
  margin: 0.375rem;
}
.m-2 {
  margin: 0.5rem;
}
.m-auto {
  margin: auto;
}
.mx-0\.5 {
  margin-left: 0.125rem;
  margin-right: 0.125rem;
}
.mx-1 {
  margin-left: 0.25rem;
  margin-right: 0.25rem;
}
.mx-1\.5 {
  margin-left: 0.375rem;
  margin-right: 0.375rem;
}
.mx-2 {
  margin-left: 0.5rem;
  margin-right: 0.5rem;
}
.mx-2\.5 {
  margin-left: 0.625rem;
  margin-right: 0.625rem;
}
.mx-3 {
  margin-left: 0.75rem;
  margin-right: 0.75rem;
}
.mx-auto {
  margin-left: auto;
  margin-right: auto;
}
.my-0\.5 {
  margin-top: 0.125rem;
  margin-bottom: 0.125rem;
}
.my-1 {
  margin-top: 0.25rem;
  margin-bottom: 0.25rem;
}
.my-1\.5 {
  margin-top: 0.375rem;
  margin-bottom: 0.375rem;
}
.my-2 {
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
}
.my-3 {
  margin-top: 0.75rem;
  margin-bottom: 0.75rem;
}
.my-4 {
  margin-top: 1rem;
  margin-bottom: 1rem;
}
.my-6 {
  margin-top: 1.5rem;
  margin-bottom: 1.5rem;
}
.my-8 {
  margin-top: 2rem;
  margin-bottom: 2rem;
}
.\!mt-4 {
  margin-top: 1rem !important;
}
.-mb-px {
  margin-bottom: -1px;
}
.-ml-1 {
  margin-left: -0.25rem;
}
.-ml-1\.5 {
  margin-left: -0.375rem;
}
.mb-1 {
  margin-bottom: 0.25rem;
}
.mb-10 {
  margin-bottom: 2.5rem;
}
.mb-16 {
  margin-bottom: 4rem;
}
.mb-2 {
  margin-bottom: 0.5rem;
}
.mb-3 {
  margin-bottom: 0.75rem;
}
.mb-4 {
  margin-bottom: 1rem;
}
.mb-6 {
  margin-bottom: 1.5rem;
}
.mb-8 {
  margin-bottom: 2rem;
}
.me-2\.5 {
  margin-inline-end: 0.625rem;
}
.ml-1 {
  margin-left: 0.25rem;
}
.ml-2 {
  margin-left: 0.5rem;
}
.ml-4 {
  margin-left: 1rem;
}
.ml-6 {
  margin-left: 1.5rem;
}
.ml-auto {
  margin-left: auto;
}
.mr-0\.5 {
  margin-right: 0.125rem;
}
.mr-1 {
  margin-right: 0.25rem;
}
.mr-2 {
  margin-right: 0.5rem;
}
.mr-4 {
  margin-right: 1rem;
}
.mr-5 {
  margin-right: 1.25rem;
}
.mr-8 {
  margin-right: 2rem;
}
.mr-auto {
  margin-right: auto;
}
.ms-0\.5 {
  margin-inline-start: 0.125rem;
}
.ms-1 {
  margin-inline-start: 0.25rem;
}
.ms-1\.5 {
  margin-inline-start: 0.375rem;
}
.ms-auto {
  margin-inline-start: auto;
}
.mt-0\.5 {
  margin-top: 0.125rem;
}
.mt-1 {
  margin-top: 0.25rem;
}
.mt-2 {
  margin-top: 0.5rem;
}
.mt-3 {
  margin-top: 0.75rem;
}
.mt-4 {
  margin-top: 1rem;
}
.mt-5 {
  margin-top: 1.25rem;
}
.mt-6 {
  margin-top: 1.5rem;
}
.mt-8 {
  margin-top: 2rem;
}
.mt-\[3px\] {
  margin-top: 3px;
}
.mt-\[7px\] {
  margin-top: 7px;
}
.mt-auto {
  margin-top: auto;
}
.box-border {
  box-sizing: border-box;
}
.line-clamp-1 {
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
}
.line-clamp-2 {
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
.line-clamp-3 {
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}
.block {
  display: block;
}
.inline-block {
  display: inline-block;
}
.inline {
  display: inline;
}
.flex {
  display: flex;
}
.inline-flex {
  display: inline-flex;
}
.table {
  display: table;
}
.grid {
  display: grid;
}
.inline-grid {
  display: inline-grid;
}
.list-item {
  display: list-item;
}
.hidden {
  display: none;
}
.\!h-12 {
  height: 3rem !important;
}
.\!h-5 {
  height: 1.25rem !important;
}
.\!h-6 {
  height: 1.5rem !important;
}
.h-0 {
  height: 0px;
}
.h-0\.5 {
  height: 0.125rem;
}
.h-1 {
  height: 0.25rem;
}
.h-1\.5 {
  height: 0.375rem;
}
.h-10 {
  height: 2.5rem;
}
.h-11 {
  height: 2.75rem;
}
.h-12 {
  height: 3rem;
}
.h-14 {
  height: 3.5rem;
}
.h-16 {
  height: 4rem;
}
.h-2 {
  height: 0.5rem;
}
.h-2\.5 {
  height: 0.625rem;
}
.h-20 {
  height: 5rem;
}
.h-24 {
  height: 6rem;
}
.h-28 {
  height: 7rem;
}
.h-3 {
  height: 0.75rem;
}
.h-3\.5 {
  height: 0.875rem;
}
.h-32 {
  height: 8rem;
}
.h-4 {
  height: 1rem;
}
.h-40 {
  height: 10rem;
}
.h-5 {
  height: 1.25rem;
}
.h-56 {
  height: 14rem;
}
.h-6 {
  height: 1.5rem;
}
.h-64 {
  height: 16rem;
}
.h-7 {
  height: 1.75rem;
}
.h-8 {
  height: 2rem;
}
.h-80 {
  height: 20rem;
}
.h-9 {
  height: 2.25rem;
}
.h-96 {
  height: 24rem;
}
.h-\[--line-thickness\] {
  height: var(--line-thickness);
}
.h-\[10\.3rem\] {
  height: 10.3rem;
}
.h-\[1em\] {
  height: 1em;
}
.h-\[2\.333rem\] {
  height: 2.333rem;
}
.h-\[22rem\] {
  height: 22rem;
}
.h-\[26rem\] {
  height: 26rem;
}
.h-\[3\.333rem\] {
  height: 3.333rem;
}
.h-\[30rem\] {
  height: 30rem;
}
.h-\[3px\] {
  height: 3px;
}
.h-\[42px\] {
  height: 42px;
}
.h-\[520px\] {
  height: 520px;
}
.h-\[600px\] {
  height: 600px;
}
.h-\[7\.5rem\] {
  height: 7.5rem;
}
.h-\[80vh\] {
  height: 80vh;
}
.h-\[calc\(100vh-200px\)\] {
  height: calc(100vh - 200px);
}
.h-fit {
  height: -moz-fit-content;
  height: fit-content;
}
.h-full {
  height: 100%;
}
.h-max {
  height: -moz-max-content;
  height: max-content;
}
.h-px {
  height: 1px;
}
.h-screen {
  height: 100vh;
}
.max-h-10 {
  max-height: 2.5rem;
}
.max-h-12 {
  max-height: 3rem;
}
.max-h-32 {
  max-height: 8rem;
}
.max-h-4 {
  max-height: 1rem;
}
.max-h-48 {
  max-height: 12rem;
}
.max-h-5 {
  max-height: 1.25rem;
}
.max-h-64 {
  max-height: 16rem;
}
.max-h-72 {
  max-height: 18rem;
}
.max-h-\[200px\] {
  max-height: 200px;
}
.max-h-\[280px\] {
  max-height: 280px;
}
.max-h-\[320px\] {
  max-height: 320px;
}
.max-h-\[350px\] {
  max-height: 350px;
}
.max-h-\[520px\] {
  max-height: 520px;
}
.max-h-\[580px\] {
  max-height: 580px;
}
.max-h-\[80vh\] {
  max-height: 80vh;
}
.max-h-\[calc\(100vh-32px\)\] {
  max-height: calc(100vh - 32px);
}
.max-h-screen {
  max-height: 100vh;
}
.\!min-h-\[42px\] {
  min-height: 42px !important;
}
.min-h-0 {
  min-height: 0px;
}
.min-h-10 {
  min-height: 2.5rem;
}
.min-h-2 {
  min-height: 0.5rem;
}
.min-h-24 {
  min-height: 6rem;
}
.min-h-3 {
  min-height: 0.75rem;
}
.min-h-4 {
  min-height: 1rem;
}
.min-h-5 {
  min-height: 1.25rem;
}
.min-h-8 {
  min-height: 2rem;
}
.min-h-80 {
  min-height: 20rem;
}
.min-h-9 {
  min-height: 2.25rem;
}
.min-h-\[100vh\] {
  min-height: 100vh;
}
.min-h-\[120px\] {
  min-height: 120px;
}
.min-h-\[300px\] {
  min-height: 300px;
}
.min-h-\[30px\] {
  min-height: 30px;
}
.min-h-\[34px\] {
  min-height: 34px;
}
.min-h-\[38px\] {
  min-height: 38px;
}
.min-h-\[46px\] {
  min-height: 46px;
}
.min-h-\[50px\] {
  min-height: 50px;
}
.min-h-\[520px\] {
  min-height: 520px;
}
.min-h-\[max-content\] {
  min-height: -moz-max-content;
  min-height: max-content;
}
.min-h-screen {
  min-height: 100vh;
}
.\!w-12 {
  width: 3rem !important;
}
.\!w-5 {
  width: 1.25rem !important;
}
.\!w-6 {
  width: 1.5rem !important;
}
.\!w-\[65\%\] {
  width: 65% !important;
}
.w-0 {
  width: 0px;
}
.w-1 {
  width: 0.25rem;
}
.w-1\.5 {
  width: 0.375rem;
}
.w-10 {
  width: 2.5rem;
}
.w-10\/12 {
  width: 83.333333%;
}
.w-11 {
  width: 2.75rem;
}
.w-11\/12 {
  width: 91.666667%;
}
.w-12 {
  width: 3rem;
}
.w-14 {
  width: 3.5rem;
}
.w-16 {
  width: 4rem;
}
.w-2 {
  width: 0.5rem;
}
.w-2\.5 {
  width: 0.625rem;
}
.w-2\/3 {
  width: 66.666667%;
}
.w-20 {
  width: 5rem;
}
.w-24 {
  width: 6rem;
}
.w-28 {
  width: 7rem;
}
.w-3 {
  width: 0.75rem;
}
.w-3\.5 {
  width: 0.875rem;
}
.w-32 {
  width: 8rem;
}
.w-36 {
  width: 9rem;
}
.w-4 {
  width: 1rem;
}
.w-4\/12 {
  width: 33.333333%;
}
.w-40 {
  width: 10rem;
}
.w-44 {
  width: 11rem;
}
.w-48 {
  width: 12rem;
}
.w-5 {
  width: 1.25rem;
}
.w-52 {
  width: 13rem;
}
.w-56 {
  width: 14rem;
}
.w-6 {
  width: 1.5rem;
}
.w-6\/12 {
  width: 50%;
}
.w-60 {
  width: 15rem;
}
.w-64 {
  width: 16rem;
}
.w-7 {
  width: 1.75rem;
}
.w-7\/12 {
  width: 58.333333%;
}
.w-72 {
  width: 18rem;
}
.w-8 {
  width: 2rem;
}
.w-8\/12 {
  width: 66.666667%;
}
.w-80 {
  width: 20rem;
}
.w-9\/12 {
  width: 75%;
}
.w-\[--line-thickness\] {
  width: var(--line-thickness);
}
.w-\[10\%\] {
  width: 10%;
}
.w-\[11\%\] {
  width: 11%;
}
.w-\[11\.875rem\] {
  width: 11.875rem;
}
.w-\[12\%\] {
  width: 12%;
}
.w-\[1200px\] {
  width: 1200px;
}
.w-\[14\%\] {
  width: 14%;
}
.w-\[16\%\] {
  width: 16%;
}
.w-\[1em\] {
  width: 1em;
}
.w-\[20\%\] {
  width: 20%;
}
.w-\[250px\] {
  width: 250px;
}
.w-\[26\%\] {
  width: 26%;
}
.w-\[28\%\] {
  width: 28%;
}
.w-\[320px\] {
  width: 320px;
}
.w-\[340px\] {
  width: 340px;
}
.w-\[360px\] {
  width: 360px;
}
.w-\[380px\] {
  width: 380px;
}
.w-\[3px\] {
  width: 3px;
}
.w-\[4\%\] {
  width: 4%;
}
.w-\[4\.667rem\] {
  width: 4.667rem;
}
.w-\[40\%\] {
  width: 40%;
}
.w-\[400px\] {
  width: 400px;
}
.w-\[420px\] {
  width: 420px;
}
.w-\[450px\] {
  width: 450px;
}
.w-\[52\%\] {
  width: 52%;
}
.w-\[560px\] {
  width: 560px;
}
.w-\[6\%\] {
  width: 6%;
}
.w-\[6rem\] {
  width: 6rem;
}
.w-\[720px\] {
  width: 720px;
}
.w-\[85\%\] {
  width: 85%;
}
.w-\[calc\(100\%-16px\)\] {
  width: calc(100% - 16px);
}
.w-\[calc\(100\%-4px\)\] {
  width: calc(100% - 4px);
}
.w-fit {
  width: -moz-fit-content;
  width: fit-content;
}
.w-full {
  width: 100%;
}
.w-max {
  width: -moz-max-content;
  width: max-content;
}
.w-px {
  width: 1px;
}
.w-screen {
  width: 100vw;
}
.min-w-0 {
  min-width: 0px;
}
.min-w-2 {
  min-width: 0.5rem;
}
.min-w-3 {
  min-width: 0.75rem;
}
.min-w-4 {
  min-width: 1rem;
}
.min-w-40 {
  min-width: 10rem;
}
.min-w-5 {
  min-width: 1.25rem;
}
.min-w-56 {
  min-width: 14rem;
}
.min-w-60 {
  min-width: 15rem;
}
.min-w-8 {
  min-width: 2rem;
}
.min-w-80 {
  min-width: 20rem;
}
.min-w-\[1\.25rem\] {
  min-width: 1.25rem;
}
.min-w-\[180px\] {
  min-width: 180px;
}
.min-w-\[250px\] {
  min-width: 250px;
}
.min-w-\[30px\] {
  min-width: 30px;
}
.min-w-\[34px\] {
  min-width: 34px;
}
.min-w-\[38px\] {
  min-width: 38px;
}
.min-w-\[46px\] {
  min-width: 46px;
}
.min-w-\[50px\] {
  min-width: 50px;
}
.min-w-\[55\%\] {
  min-width: 55%;
}
.min-w-\[90\%\] {
  min-width: 90%;
}
.min-w-fit {
  min-width: -moz-fit-content;
  min-width: fit-content;
}
.min-w-max {
  min-width: -moz-max-content;
  min-width: max-content;
}
.max-w-2xl {
  max-width: 42rem;
}
.max-w-3\.5 {
  max-width: 0.875rem;
}
.max-w-4 {
  max-width: 1rem;
}
.max-w-5 {
  max-width: 1.25rem;
}
.max-w-\[10em\] {
  max-width: 10em;
}
.max-w-\[10rem\] {
  max-width: 10rem;
}
.max-w-\[1400px\] {
  max-width: 1400px;
}
.max-w-\[150px\] {
  max-width: 150px;
}
.max-w-\[200px\] {
  max-width: 200px;
}
.max-w-\[20rem\] {
  max-width: 20rem;
}
.max-w-\[24rem\] {
  max-width: 24rem;
}
.max-w-\[250px\] {
  max-width: 250px;
}
.max-w-\[49\.7\%\] {
  max-width: 49.7%;
}
.max-w-\[600px\] {
  max-width: 600px;
}
.max-w-\[900px\] {
  max-width: 900px;
}
.max-w-\[90vw\] {
  max-width: 90vw;
}
.max-w-\[92vw\] {
  max-width: 92vw;
}
.max-w-full {
  max-width: 100%;
}
.max-w-lg {
  max-width: 32rem;
}
.max-w-md {
  max-width: 28rem;
}
.max-w-none {
  max-width: none;
}
.max-w-xl {
  max-width: 36rem;
}
.flex-1 {
  flex: 1 1 0%;
}
.flex-\[0\.25\] {
  flex: 0.25;
}
.flex-\[0\.35\] {
  flex: 0.35;
}
.flex-\[0\.5\] {
  flex: 0.5;
}
.flex-initial {
  flex: 0 1 auto;
}
.flex-shrink-0 {
  flex-shrink: 0;
}
.shrink {
  flex-shrink: 1;
}
.shrink-0 {
  flex-shrink: 0;
}
.flex-grow {
  flex-grow: 1;
}
.flex-grow-0 {
  flex-grow: 0;
}
.flex-grow-\[0\.3\] {
  flex-grow: 0.3;
}
.flex-grow-\[0\.7\] {
  flex-grow: 0.7;
}
.flex-grow-\[1\] {
  flex-grow: 1;
}
.grow {
  flex-grow: 1;
}
.grow-0 {
  flex-grow: 0;
}
.grow-\[0\.4\] {
  flex-grow: 0.4;
}
.table-auto {
  table-layout: auto;
}
.table-fixed {
  table-layout: fixed;
}
.-translate-x-0\.5 {
  --tw-translate-x: -0.125rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.-translate-x-1 {
  --tw-translate-x: -0.25rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.-translate-x-1\.5 {
  --tw-translate-x: -0.375rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.-translate-x-1\/2 {
  --tw-translate-x: -50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.-translate-x-2\/4 {
  --tw-translate-x: -50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.-translate-y-1\/2 {
  --tw-translate-y: -50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.-translate-y-2\/4 {
  --tw-translate-y: -50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.translate-x-0\.5 {
  --tw-translate-x: 0.125rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.translate-x-1 {
  --tw-translate-x: 0.25rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.translate-x-1\.5 {
  --tw-translate-x: 0.375rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.translate-x-1\/2 {
  --tw-translate-x: 50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.translate-y-1\/2 {
  --tw-translate-y: 50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.rotate-180 {
  --tw-rotate: 180deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.scale-110 {
  --tw-scale-x: 1.1;
  --tw-scale-y: 1.1;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.scale-150 {
  --tw-scale-x: 1.5;
  --tw-scale-y: 1.5;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.scale-75 {
  --tw-scale-x: .75;
  --tw-scale-y: .75;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.transform {
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
@keyframes pulse {

  50% {
    opacity: .5;
  }
}
.animate-pulse {
  animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
}
@keyframes spin {

  to {
    transform: rotate(360deg);
  }
}
.animate-spin {
  animation: spin 1s linear infinite;
}
.\!cursor-default {
  cursor: default !important;
}
.cursor-default {
  cursor: default;
}
.cursor-grab {
  cursor: grab;
}
.cursor-not-allowed {
  cursor: not-allowed;
}
.cursor-pointer {
  cursor: pointer;
}
.cursor-text {
  cursor: text;
}
.select-none {
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
.resize-none {
  resize: none;
}
.resize {
  resize: both;
}
.list-inside {
  list-style-position: inside;
}
.list-decimal {
  list-style-type: decimal;
}
.appearance-none {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
.grid-cols-1 {
  grid-template-columns: repeat(1, minmax(0, 1fr));
}
.grid-cols-2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.grid-cols-3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.grid-cols-7 {
  grid-template-columns: repeat(7, minmax(0, 1fr));
}
.grid-rows-2 {
  grid-template-rows: repeat(2, minmax(0, 1fr));
}
.flex-row {
  flex-direction: row;
}
.flex-col {
  flex-direction: column;
}
.flex-wrap {
  flex-wrap: wrap;
}
.place-items-center {
  place-items: center;
}
.items-start {
  align-items: flex-start;
}
.items-end {
  align-items: flex-end;
}
.items-center {
  align-items: center;
}
.items-baseline {
  align-items: baseline;
}
.items-stretch {
  align-items: stretch;
}
.justify-start {
  justify-content: flex-start;
}
.justify-end {
  justify-content: flex-end;
}
.justify-center {
  justify-content: center;
}
.justify-between {
  justify-content: space-between;
}
.justify-around {
  justify-content: space-around;
}
.gap-0\.5 {
  gap: 0.125rem;
}
.gap-1 {
  gap: 0.25rem;
}
.gap-1\.5 {
  gap: 0.375rem;
}
.gap-2 {
  gap: 0.5rem;
}
.gap-3 {
  gap: 0.75rem;
}
.gap-4 {
  gap: 1rem;
}
.gap-5 {
  gap: 1.25rem;
}
.gap-6 {
  gap: 1.5rem;
}
.gap-8 {
  gap: 2rem;
}
.gap-\[1\.5px\] {
  gap: 1.5px;
}
.gap-\[2px\] {
  gap: 2px;
}
.gap-x-1 {
  -moz-column-gap: 0.25rem;
       column-gap: 0.25rem;
}
.gap-x-1\.5 {
  -moz-column-gap: 0.375rem;
       column-gap: 0.375rem;
}
.gap-x-2 {
  -moz-column-gap: 0.5rem;
       column-gap: 0.5rem;
}
.gap-x-4 {
  -moz-column-gap: 1rem;
       column-gap: 1rem;
}
.gap-x-6 {
  -moz-column-gap: 1.5rem;
       column-gap: 1.5rem;
}
.gap-y-1\.5 {
  row-gap: 0.375rem;
}
.gap-y-3 {
  row-gap: 0.75rem;
}
.space-x-3 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-x-reverse: 0;
  margin-right: calc(0.75rem * var(--tw-space-x-reverse));
  margin-left: calc(0.75rem * calc(1 - var(--tw-space-x-reverse)));
}
.space-x-8 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-x-reverse: 0;
  margin-right: calc(2rem * var(--tw-space-x-reverse));
  margin-left: calc(2rem * calc(1 - var(--tw-space-x-reverse)));
}
.space-y-0\.5 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse: 0;
  margin-top: calc(0.125rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(0.125rem * var(--tw-space-y-reverse));
}
.space-y-1 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse: 0;
  margin-top: calc(0.25rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(0.25rem * var(--tw-space-y-reverse));
}
.space-y-2 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse: 0;
  margin-top: calc(0.5rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(0.5rem * var(--tw-space-y-reverse));
}
.space-y-3 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse: 0;
  margin-top: calc(0.75rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(0.75rem * var(--tw-space-y-reverse));
}
.space-y-4 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse: 0;
  margin-top: calc(1rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(1rem * var(--tw-space-y-reverse));
}
.space-y-6 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse: 0;
  margin-top: calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(1.5rem * var(--tw-space-y-reverse));
}
.divide-y > :not([hidden]) ~ :not([hidden]) {
  --tw-divide-y-reverse: 0;
  border-top-width: calc(1px * calc(1 - var(--tw-divide-y-reverse)));
  border-bottom-width: calc(1px * var(--tw-divide-y-reverse));
}
.divide-gray-100 > :not([hidden]) ~ :not([hidden]) {
  --tw-divide-opacity: 1;
  border-color: rgb(243 244 246 / var(--tw-divide-opacity, 1));
}
.self-start {
  align-self: flex-start;
}
.self-end {
  align-self: flex-end;
}
.self-center {
  align-self: center;
}
.self-stretch {
  align-self: stretch;
}
.overflow-auto {
  overflow: auto;
}
.overflow-hidden {
  overflow: hidden;
}
.overflow-visible {
  overflow: visible;
}
.overflow-scroll {
  overflow: scroll;
}
.overflow-x-auto {
  overflow-x: auto;
}
.overflow-y-auto {
  overflow-y: auto;
}
.\!overflow-y-visible {
  overflow-y: visible !important;
}
.overflow-y-scroll {
  overflow-y: scroll;
}
.truncate {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.text-ellipsis {
  text-overflow: ellipsis;
}
.whitespace-nowrap {
  white-space: nowrap;
}
.whitespace-pre-line {
  white-space: pre-line;
}
.whitespace-pre-wrap {
  white-space: pre-wrap;
}
.text-nowrap {
  text-wrap: nowrap;
}
.text-balance {
  text-wrap: balance;
}
.text-pretty {
  text-wrap: pretty;
}
.break-words {
  overflow-wrap: break-word;
}
.\!rounded-lg {
  border-radius: calc(var(--radius) - 16px) !important;
}
.rounded {
  border-radius: calc(var(--radius) - 20px);
}
.rounded-2xl {
  border-radius: calc(var(--radius) - 8px);
}
.rounded-3xl {
  border-radius: var(--radius);
}
.rounded-full {
  border-radius: calc(var(--radius) * 1000);
}
.rounded-lg {
  border-radius: calc(var(--radius) - 16px);
}
.rounded-md {
  border-radius: calc(var(--radius) - 18px);
}
.rounded-none {
  border-radius: 0px;
}
.rounded-sm {
  border-radius: calc(var(--radius) - 22px);
}
.rounded-xl {
  border-radius: calc(var(--radius) - 12px);
}
.rounded-l-lg {
  border-top-left-radius: calc(var(--radius) - 16px);
  border-bottom-left-radius: calc(var(--radius) - 16px);
}
.rounded-l-md {
  border-top-left-radius: calc(var(--radius) - 18px);
  border-bottom-left-radius: calc(var(--radius) - 18px);
}
.rounded-l-sm {
  border-top-left-radius: calc(var(--radius) - 22px);
  border-bottom-left-radius: calc(var(--radius) - 22px);
}
.rounded-t {
  border-top-left-radius: calc(var(--radius) - 20px);
  border-top-right-radius: calc(var(--radius) - 20px);
}
.rounded-t-lg {
  border-top-left-radius: calc(var(--radius) - 16px);
  border-top-right-radius: calc(var(--radius) - 16px);
}
.rounded-bl {
  border-bottom-left-radius: calc(var(--radius) - 20px);
}
.rounded-bl-lg {
  border-bottom-left-radius: calc(var(--radius) - 16px);
}
.rounded-bl-sm {
  border-bottom-left-radius: calc(var(--radius) - 22px);
}
.rounded-br-lg {
  border-bottom-right-radius: calc(var(--radius) - 16px);
}
.rounded-tl-none {
  border-top-left-radius: 0px;
}
.rounded-tr-none {
  border-top-right-radius: 0px;
}
.\!border {
  border-width: 1px !important;
}
.\!border-0 {
  border-width: 0px !important;
}
.border {
  border-width: 1px;
}
.border-0 {
  border-width: 0px;
}
.border-2 {
  border-width: 2px;
}
.border-\[0\.5px\] {
  border-width: 0.5px;
}
.border-\[1px\] {
  border-width: 1px;
}
.border-b {
  border-bottom-width: 1px;
}
.border-b-2 {
  border-bottom-width: 2px;
}
.border-l {
  border-left-width: 1px;
}
.border-l-2 {
  border-left-width: 2px;
}
.border-l-4 {
  border-left-width: 4px;
}
.border-r {
  border-right-width: 1px;
}
.border-r-0 {
  border-right-width: 0px;
}
.border-t {
  border-top-width: 1px;
}
.border-dashed {
  border-style: dashed;
}
.\!border-none {
  border-style: none !important;
}
.border-none {
  border-style: none;
}
.\!border-gray-100 {
  --tw-border-opacity: 1 !important;
  border-color: rgb(243 244 246 / var(--tw-border-opacity, 1)) !important;
}
.\!border-gray-200 {
  --tw-border-opacity: 1 !important;
  border-color: rgb(229 231 235 / var(--tw-border-opacity, 1)) !important;
}
.\!border-gray-300 {
  --tw-border-opacity: 1 !important;
  border-color: rgb(209 213 219 / var(--tw-border-opacity, 1)) !important;
}
.border-\[inherit\] {
  border-color: inherit;
}
.border-amber-200 {
  --tw-border-opacity: 1;
  border-color: rgb(253 230 138 / var(--tw-border-opacity, 1));
}
.border-amber-300 {
  --tw-border-opacity: 1;
  border-color: rgb(252 211 77 / var(--tw-border-opacity, 1));
}
.border-black {
  --tw-border-opacity: 1;
  border-color: rgb(var(--color-black) / var(--tw-border-opacity, 1));
}
.border-blue-100 {
  --tw-border-opacity: 1;
  border-color: rgb(219 234 254 / var(--tw-border-opacity, 1));
}
.border-blue-200 {
  --tw-border-opacity: 1;
  border-color: rgb(191 219 254 / var(--tw-border-opacity, 1));
}
.border-blue-400 {
  --tw-border-opacity: 1;
  border-color: rgb(96 165 250 / var(--tw-border-opacity, 1));
}
.border-error {
  --tw-border-opacity: 1;
  border-color: rgb(var(--color-error) / var(--tw-border-opacity, 1));
}
.border-error-dark {
  --tw-border-opacity: 1;
  border-color: rgb(var(--color-error-dark) / var(--tw-border-opacity, 1));
}
.border-gray-100 {
  --tw-border-opacity: 1;
  border-color: rgb(243 244 246 / var(--tw-border-opacity, 1));
}
.border-gray-200 {
  --tw-border-opacity: 1;
  border-color: rgb(229 231 235 / var(--tw-border-opacity, 1));
}
.border-gray-300 {
  --tw-border-opacity: 1;
  border-color: rgb(209 213 219 / var(--tw-border-opacity, 1));
}
.border-gray-400 {
  --tw-border-opacity: 1;
  border-color: rgb(156 163 175 / var(--tw-border-opacity, 1));
}
.border-gray-600 {
  --tw-border-opacity: 1;
  border-color: rgb(75 85 99 / var(--tw-border-opacity, 1));
}
.border-gray-900 {
  --tw-border-opacity: 1;
  border-color: rgb(17 24 39 / var(--tw-border-opacity, 1));
}
.border-green-200 {
  --tw-border-opacity: 1;
  border-color: rgb(187 247 208 / var(--tw-border-opacity, 1));
}
.border-green-400 {
  --tw-border-opacity: 1;
  border-color: rgb(74 222 128 / var(--tw-border-opacity, 1));
}
.border-green-600 {
  --tw-border-opacity: 1;
  border-color: rgb(22 163 74 / var(--tw-border-opacity, 1));
}
.border-info {
  --tw-border-opacity: 1;
  border-color: rgb(var(--color-info) / var(--tw-border-opacity, 1));
}
.border-info-dark {
  --tw-border-opacity: 1;
  border-color: rgb(var(--color-info-dark) / var(--tw-border-opacity, 1));
}
.border-orange-200 {
  --tw-border-opacity: 1;
  border-color: rgb(254 215 170 / var(--tw-border-opacity, 1));
}
.border-primary {
  --tw-border-opacity: 1;
  border-color: rgb(var(--color-primary) / var(--tw-border-opacity, 1));
}
.border-primary-dark {
  --tw-border-opacity: 1;
  border-color: rgb(var(--color-primary-dark) / var(--tw-border-opacity, 1));
}
.border-primary-light {
  --tw-border-opacity: 1;
  border-color: rgb(var(--color-primary-light) / var(--tw-border-opacity, 1));
}
.border-primary\/40 {
  border-color: rgb(var(--color-primary) / 0.4);
}
.border-red-100 {
  --tw-border-opacity: 1;
  border-color: rgb(254 226 226 / var(--tw-border-opacity, 1));
}
.border-red-200 {
  --tw-border-opacity: 1;
  border-color: rgb(254 202 202 / var(--tw-border-opacity, 1));
}
.border-red-500 {
  --tw-border-opacity: 1;
  border-color: rgb(239 68 68 / var(--tw-border-opacity, 1));
}
.border-secondary {
  --tw-border-opacity: 1;
  border-color: rgb(var(--color-secondary) / var(--tw-border-opacity, 1));
}
.border-secondary-dark {
  --tw-border-opacity: 1;
  border-color: rgb(var(--color-secondary-dark) / var(--tw-border-opacity, 1));
}
.border-slate-200 {
  --tw-border-opacity: 1;
  border-color: rgb(226 232 240 / var(--tw-border-opacity, 1));
}
.border-success {
  --tw-border-opacity: 1;
  border-color: rgb(var(--color-success) / var(--tw-border-opacity, 1));
}
.border-success-dark {
  --tw-border-opacity: 1;
  border-color: rgb(var(--color-success-dark) / var(--tw-border-opacity, 1));
}
.border-surface {
  --tw-border-opacity: 1;
  border-color: rgb(var(--color-surface) / var(--tw-border-opacity, 1));
}
.border-transparent {
  border-color: transparent;
}
.border-warning {
  --tw-border-opacity: 1;
  border-color: rgb(var(--color-warning) / var(--tw-border-opacity, 1));
}
.border-warning-dark {
  --tw-border-opacity: 1;
  border-color: rgb(var(--color-warning-dark) / var(--tw-border-opacity, 1));
}
.border-white {
  --tw-border-opacity: 1;
  border-color: rgb(var(--color-white) / var(--tw-border-opacity, 1));
}
.border-yellow-200 {
  --tw-border-opacity: 1;
  border-color: rgb(254 240 138 / var(--tw-border-opacity, 1));
}
.border-l-blue-500 {
  --tw-border-opacity: 1;
  border-left-color: rgb(59 130 246 / var(--tw-border-opacity, 1));
}
.border-l-transparent {
  border-left-color: transparent;
}
.border-t-transparent {
  border-top-color: transparent;
}
.\!bg-white {
  --tw-bg-opacity: 1 !important;
  background-color: rgb(var(--color-white) / var(--tw-bg-opacity, 1)) !important;
}
.bg-\[\#4A154B\] {
  --tw-bg-opacity: 1;
  background-color: rgb(74 21 75 / var(--tw-bg-opacity, 1));
}
.bg-\[\#FBE115\] {
  --tw-bg-opacity: 1;
  background-color: rgb(251 225 21 / var(--tw-bg-opacity, 1));
}
.bg-amber-100 {
  --tw-bg-opacity: 1;
  background-color: rgb(254 243 199 / var(--tw-bg-opacity, 1));
}
.bg-amber-200 {
  --tw-bg-opacity: 1;
  background-color: rgb(253 230 138 / var(--tw-bg-opacity, 1));
}
.bg-amber-400 {
  --tw-bg-opacity: 1;
  background-color: rgb(251 191 36 / var(--tw-bg-opacity, 1));
}
.bg-amber-50 {
  --tw-bg-opacity: 1;
  background-color: rgb(255 251 235 / var(--tw-bg-opacity, 1));
}
.bg-amber-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(245 158 11 / var(--tw-bg-opacity, 1));
}
.bg-background {
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-background) / var(--tw-bg-opacity, 1));
}
.bg-background\/10 {
  background-color: rgb(var(--color-background) / 0.1);
}
.bg-black {
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-black) / var(--tw-bg-opacity, 1));
}
.bg-black\/20 {
  background-color: rgb(var(--color-black) / 0.2);
}
.bg-black\/50 {
  background-color: rgb(var(--color-black) / 0.5);
}
.bg-blue-100 {
  --tw-bg-opacity: 1;
  background-color: rgb(219 234 254 / var(--tw-bg-opacity, 1));
}
.bg-blue-50 {
  --tw-bg-opacity: 1;
  background-color: rgb(239 246 255 / var(--tw-bg-opacity, 1));
}
.bg-blue-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(59 130 246 / var(--tw-bg-opacity, 1));
}
.bg-blue-600 {
  --tw-bg-opacity: 1;
  background-color: rgb(37 99 235 / var(--tw-bg-opacity, 1));
}
.bg-blue-700 {
  --tw-bg-opacity: 1;
  background-color: rgb(29 78 216 / var(--tw-bg-opacity, 1));
}
.bg-emerald-50 {
  --tw-bg-opacity: 1;
  background-color: rgb(236 253 245 / var(--tw-bg-opacity, 1));
}
.bg-emerald-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(16 185 129 / var(--tw-bg-opacity, 1));
}
.bg-error {
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-error) / var(--tw-bg-opacity, 1));
}
.bg-error\/10 {
  background-color: rgb(var(--color-error) / 0.1);
}
.bg-gray-100 {
  --tw-bg-opacity: 1;
  background-color: rgb(243 244 246 / var(--tw-bg-opacity, 1));
}
.bg-gray-200 {
  --tw-bg-opacity: 1;
  background-color: rgb(229 231 235 / var(--tw-bg-opacity, 1));
}
.bg-gray-300 {
  --tw-bg-opacity: 1;
  background-color: rgb(209 213 219 / var(--tw-bg-opacity, 1));
}
.bg-gray-400 {
  --tw-bg-opacity: 1;
  background-color: rgb(156 163 175 / var(--tw-bg-opacity, 1));
}
.bg-gray-50 {
  --tw-bg-opacity: 1;
  background-color: rgb(249 250 251 / var(--tw-bg-opacity, 1));
}
.bg-gray-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(107 114 128 / var(--tw-bg-opacity, 1));
}
.bg-gray-800 {
  --tw-bg-opacity: 1;
  background-color: rgb(31 41 55 / var(--tw-bg-opacity, 1));
}
.bg-gray-900 {
  --tw-bg-opacity: 1;
  background-color: rgb(17 24 39 / var(--tw-bg-opacity, 1));
}
.bg-green-100 {
  --tw-bg-opacity: 1;
  background-color: rgb(220 252 231 / var(--tw-bg-opacity, 1));
}
.bg-green-50 {
  --tw-bg-opacity: 1;
  background-color: rgb(240 253 244 / var(--tw-bg-opacity, 1));
}
.bg-green-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(34 197 94 / var(--tw-bg-opacity, 1));
}
.bg-green-600 {
  --tw-bg-opacity: 1;
  background-color: rgb(22 163 74 / var(--tw-bg-opacity, 1));
}
.bg-indigo-600 {
  --tw-bg-opacity: 1;
  background-color: rgb(79 70 229 / var(--tw-bg-opacity, 1));
}
.bg-info {
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-info) / var(--tw-bg-opacity, 1));
}
.bg-info\/10 {
  background-color: rgb(var(--color-info) / 0.1);
}
.bg-inherit {
  background-color: inherit;
}
.bg-orange-50 {
  --tw-bg-opacity: 1;
  background-color: rgb(255 247 237 / var(--tw-bg-opacity, 1));
}
.bg-primary {
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-primary) / var(--tw-bg-opacity, 1));
}
.bg-primary-light {
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-primary-light) / var(--tw-bg-opacity, 1));
}
.bg-primary-light\/50 {
  background-color: rgb(var(--color-primary-light) / 0.5);
}
.bg-primary\/10 {
  background-color: rgb(var(--color-primary) / 0.1);
}
.bg-primary\/5 {
  background-color: rgb(var(--color-primary) / 0.05);
}
.bg-primary\/80 {
  background-color: rgb(var(--color-primary) / 0.8);
}
.bg-purple-100 {
  --tw-bg-opacity: 1;
  background-color: rgb(243 232 255 / var(--tw-bg-opacity, 1));
}
.bg-red-100 {
  --tw-bg-opacity: 1;
  background-color: rgb(254 226 226 / var(--tw-bg-opacity, 1));
}
.bg-red-50 {
  --tw-bg-opacity: 1;
  background-color: rgb(254 242 242 / var(--tw-bg-opacity, 1));
}
.bg-red-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(239 68 68 / var(--tw-bg-opacity, 1));
}
.bg-secondary {
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-secondary) / var(--tw-bg-opacity, 1));
}
.bg-secondary\/10 {
  background-color: rgb(var(--color-secondary) / 0.1);
}
.bg-sky-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(14 165 233 / var(--tw-bg-opacity, 1));
}
.bg-slate-300 {
  --tw-bg-opacity: 1;
  background-color: rgb(203 213 225 / var(--tw-bg-opacity, 1));
}
.bg-slate-400 {
  --tw-bg-opacity: 1;
  background-color: rgb(148 163 184 / var(--tw-bg-opacity, 1));
}
.bg-slate-50 {
  --tw-bg-opacity: 1;
  background-color: rgb(248 250 252 / var(--tw-bg-opacity, 1));
}
.bg-success {
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-success) / var(--tw-bg-opacity, 1));
}
.bg-success\/10 {
  background-color: rgb(var(--color-success) / 0.1);
}
.bg-surface {
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-surface) / var(--tw-bg-opacity, 1));
}
.bg-surface-light {
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-surface-light) / var(--tw-bg-opacity, 1));
}
.bg-surface\/40 {
  background-color: rgb(var(--color-surface) / 0.4);
}
.bg-transparent {
  background-color: transparent;
}
.bg-warning {
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-warning) / var(--tw-bg-opacity, 1));
}
.bg-warning\/10 {
  background-color: rgb(var(--color-warning) / 0.1);
}
.bg-white {
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-white) / var(--tw-bg-opacity, 1));
}
.bg-yellow-100 {
  --tw-bg-opacity: 1;
  background-color: rgb(254 249 195 / var(--tw-bg-opacity, 1));
}
.bg-yellow-50 {
  --tw-bg-opacity: 1;
  background-color: rgb(254 252 232 / var(--tw-bg-opacity, 1));
}
.bg-gradient-to-br {
  background-image: linear-gradient(to bottom right, var(--tw-gradient-stops));
}
.bg-gradient-to-t {
  background-image: linear-gradient(to top, var(--tw-gradient-stops));
}
.bg-gradient-to-tr {
  background-image: linear-gradient(to top right, var(--tw-gradient-stops));
}
.from-error-dark {
  --tw-gradient-from: rgb(var(--color-error-dark) / 1) var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(var(--color-error-dark) / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-info-dark {
  --tw-gradient-from: rgb(var(--color-info-dark) / 1) var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(var(--color-info-dark) / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-orange-50 {
  --tw-gradient-from: #fff7ed var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(255 247 237 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-primary-dark {
  --tw-gradient-from: rgb(var(--color-primary-dark) / 1) var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(var(--color-primary-dark) / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-secondary-dark {
  --tw-gradient-from: rgb(var(--color-secondary-dark) / 1) var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(var(--color-secondary-dark) / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-success-dark {
  --tw-gradient-from: rgb(var(--color-success-dark) / 1) var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(var(--color-success-dark) / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-warning-dark {
  --tw-gradient-from: rgb(var(--color-warning-dark) / 1) var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(var(--color-warning-dark) / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.to-error-light {
  --tw-gradient-to: rgb(var(--color-error-light) / 1) var(--tw-gradient-to-position);
}
.to-info-light {
  --tw-gradient-to: rgb(var(--color-info-light) / 1) var(--tw-gradient-to-position);
}
.to-primary-light {
  --tw-gradient-to: rgb(var(--color-primary-light) / 1) var(--tw-gradient-to-position);
}
.to-red-50 {
  --tw-gradient-to: #fef2f2 var(--tw-gradient-to-position);
}
.to-secondary-light {
  --tw-gradient-to: rgb(var(--color-secondary-light) / 1) var(--tw-gradient-to-position);
}
.to-success-light {
  --tw-gradient-to: rgb(var(--color-success-light) / 1) var(--tw-gradient-to-position);
}
.to-warning-light {
  --tw-gradient-to: rgb(var(--color-warning-light) / 1) var(--tw-gradient-to-position);
}
.stroke-2 {
  stroke-width: 2;
}
.stroke-\[1\.5\] {
  stroke-width: 1.5;
}
.object-cover {
  -o-object-fit: cover;
     object-fit: cover;
}
.object-center {
  -o-object-position: center;
     object-position: center;
}
.\!p-4 {
  padding: 1rem !important;
}
.p-0 {
  padding: 0px;
}
.p-0\.5 {
  padding: 0.125rem;
}
.p-1 {
  padding: 0.25rem;
}
.p-12 {
  padding: 3rem;
}
.p-2 {
  padding: 0.5rem;
}
.p-2\.5 {
  padding: 0.625rem;
}
.p-3 {
  padding: 0.75rem;
}
.p-4 {
  padding: 1rem;
}
.p-6 {
  padding: 1.5rem;
}
.p-8 {
  padding: 2rem;
}
.p-px {
  padding: 1px;
}
.px-0 {
  padding-left: 0px;
  padding-right: 0px;
}
.px-1 {
  padding-left: 0.25rem;
  padding-right: 0.25rem;
}
.px-1\.5 {
  padding-left: 0.375rem;
  padding-right: 0.375rem;
}
.px-16 {
  padding-left: 4rem;
  padding-right: 4rem;
}
.px-2 {
  padding-left: 0.5rem;
  padding-right: 0.5rem;
}
.px-2\.5 {
  padding-left: 0.625rem;
  padding-right: 0.625rem;
}
.px-3 {
  padding-left: 0.75rem;
  padding-right: 0.75rem;
}
.px-3\.5 {
  padding-left: 0.875rem;
  padding-right: 0.875rem;
}
.px-4 {
  padding-left: 1rem;
  padding-right: 1rem;
}
.px-5 {
  padding-left: 1.25rem;
  padding-right: 1.25rem;
}
.px-6 {
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}
.py-0 {
  padding-top: 0px;
  padding-bottom: 0px;
}
.py-0\.5 {
  padding-top: 0.125rem;
  padding-bottom: 0.125rem;
}
.py-1 {
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
}
.py-1\.5 {
  padding-top: 0.375rem;
  padding-bottom: 0.375rem;
}
.py-12 {
  padding-top: 3rem;
  padding-bottom: 3rem;
}
.py-2 {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}
.py-2\.5 {
  padding-top: 0.625rem;
  padding-bottom: 0.625rem;
}
.py-3 {
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
}
.py-4 {
  padding-top: 1rem;
  padding-bottom: 1rem;
}
.py-5 {
  padding-top: 1.25rem;
  padding-bottom: 1.25rem;
}
.py-6 {
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
}
.py-8 {
  padding-top: 2rem;
  padding-bottom: 2rem;
}
.py-\[9px\] {
  padding-top: 9px;
  padding-bottom: 9px;
}
.\!pr-2 {
  padding-right: 0.5rem !important;
}
.pb-0 {
  padding-bottom: 0px;
}
.pb-1 {
  padding-bottom: 0.25rem;
}
.pb-1\.5 {
  padding-bottom: 0.375rem;
}
.pb-10 {
  padding-bottom: 2.5rem;
}
.pb-2 {
  padding-bottom: 0.5rem;
}
.pb-3 {
  padding-bottom: 0.75rem;
}
.pb-3\.5 {
  padding-bottom: 0.875rem;
}
.pb-4 {
  padding-bottom: 1rem;
}
.pb-5 {
  padding-bottom: 1.25rem;
}
.pb-6 {
  padding-bottom: 1.5rem;
}
.pl-0 {
  padding-left: 0px;
}
.pl-0\.5 {
  padding-left: 0.125rem;
}
.pl-1 {
  padding-left: 0.25rem;
}
.pl-2 {
  padding-left: 0.5rem;
}
.pl-3 {
  padding-left: 0.75rem;
}
.pl-4 {
  padding-left: 1rem;
}
.pl-8 {
  padding-left: 2rem;
}
.pl-\[10px\] {
  padding-left: 10px;
}
.pr-1 {
  padding-right: 0.25rem;
}
.pr-2 {
  padding-right: 0.5rem;
}
.ps-2\.5 {
  padding-inline-start: 0.625rem;
}
.pt-1 {
  padding-top: 0.25rem;
}
.pt-2 {
  padding-top: 0.5rem;
}
.pt-2\.5 {
  padding-top: 0.625rem;
}
.pt-4 {
  padding-top: 1rem;
}
.pt-6 {
  padding-top: 1.5rem;
}
.pt-8 {
  padding-top: 2rem;
}
.text-left {
  text-align: left;
}
.text-center {
  text-align: center;
}
.text-right {
  text-align: right;
}
.text-start {
  text-align: start;
}
.text-end {
  text-align: end;
}
.align-middle {
  vertical-align: middle;
}
.font-mono {
  font-family: var(--font-mono), monospace;
}
.font-sans {
  font-family: SFProDisplay, ui-sans-serif, system-ui;
}
.\!text-\[0\.525rem\] {
  font-size: 0.525rem !important;
}
.\!text-\[0\.625rem\] {
  font-size: 0.625rem !important;
}
.\!text-\[10px\] {
  font-size: 10px !important;
}
.text-2xl {
  font-size: 1.5rem;
  line-height: 2rem;
}
.text-3xl {
  font-size: 1.875rem;
  line-height: 2.25rem;
}
.text-4xl {
  font-size: 2.25rem;
  line-height: 2.5rem;
}
.text-6xl {
  font-size: 3.75rem;
  line-height: 1;
}
.text-\[0\.55rem\] {
  font-size: 0.55rem;
}
.text-\[0\.625rem\] {
  font-size: 0.625rem;
}
.text-\[0\.65rem\] {
  font-size: 0.65rem;
}
.text-\[0\.6rem\] {
  font-size: 0.6rem;
}
.text-\[11px\] {
  font-size: 11px;
}
.text-\[17px\] {
  font-size: 17px;
}
.text-\[18px\] {
  font-size: 18px;
}
.text-base {
  font-size: 1rem;
  line-height: 1.5rem;
}
.text-lg {
  font-size: 1.125rem;
  line-height: 1.75rem;
}
.text-sm {
  font-size: 0.875rem;
  line-height: 1.25rem;
}
.text-xl {
  font-size: 1.25rem;
  line-height: 1.75rem;
}
.text-xs {
  font-size: 0.75rem;
  line-height: 1rem;
}
.\!font-bold {
  font-weight: 700 !important;
}
.font-bold {
  font-weight: 700;
}
.font-medium {
  font-weight: 500;
}
.font-normal {
  font-weight: 400;
}
.font-semibold {
  font-weight: 600;
}
.uppercase {
  text-transform: uppercase;
}
.capitalize {
  text-transform: capitalize;
}
.normal-case {
  text-transform: none;
}
.italic {
  font-style: italic;
}
.tabular-nums {
  --tw-numeric-spacing: tabular-nums;
  font-variant-numeric: var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction);
}
.leading-10 {
  line-height: 2.5rem;
}
.leading-5 {
  line-height: 1.25rem;
}
.leading-none {
  line-height: 1;
}
.leading-relaxed {
  line-height: 1.625;
}
.leading-snug {
  line-height: 1.375;
}
.leading-tight {
  line-height: 1.25;
}
.tracking-wide {
  letter-spacing: 0.025em;
}
.\!text-gray-400 {
  --tw-text-opacity: 1 !important;
  color: rgb(156 163 175 / var(--tw-text-opacity, 1)) !important;
}
.\!text-gray-900 {
  --tw-text-opacity: 1 !important;
  color: rgb(17 24 39 / var(--tw-text-opacity, 1)) !important;
}
.\!text-red-500 {
  --tw-text-opacity: 1 !important;
  color: rgb(239 68 68 / var(--tw-text-opacity, 1)) !important;
}
.\!text-white {
  --tw-text-opacity: 1 !important;
  color: rgb(var(--color-white) / var(--tw-text-opacity, 1)) !important;
}
.text-amber-600 {
  --tw-text-opacity: 1;
  color: rgb(217 119 6 / var(--tw-text-opacity, 1));
}
.text-amber-700 {
  --tw-text-opacity: 1;
  color: rgb(180 83 9 / var(--tw-text-opacity, 1));
}
.text-amber-800 {
  --tw-text-opacity: 1;
  color: rgb(146 64 14 / var(--tw-text-opacity, 1));
}
.text-amber-900 {
  --tw-text-opacity: 1;
  color: rgb(120 53 15 / var(--tw-text-opacity, 1));
}
.text-amber-950 {
  --tw-text-opacity: 1;
  color: rgb(69 26 3 / var(--tw-text-opacity, 1));
}
.text-black {
  --tw-text-opacity: 1;
  color: rgb(var(--color-black) / var(--tw-text-opacity, 1));
}
.text-blue-500 {
  --tw-text-opacity: 1;
  color: rgb(59 130 246 / var(--tw-text-opacity, 1));
}
.text-blue-600 {
  --tw-text-opacity: 1;
  color: rgb(37 99 235 / var(--tw-text-opacity, 1));
}
.text-blue-700 {
  --tw-text-opacity: 1;
  color: rgb(29 78 216 / var(--tw-text-opacity, 1));
}
.text-blue-800 {
  --tw-text-opacity: 1;
  color: rgb(30 64 175 / var(--tw-text-opacity, 1));
}
.text-blue-900 {
  --tw-text-opacity: 1;
  color: rgb(30 58 138 / var(--tw-text-opacity, 1));
}
.text-current {
  color: currentColor;
}
.text-emerald-600 {
  --tw-text-opacity: 1;
  color: rgb(5 150 105 / var(--tw-text-opacity, 1));
}
.text-error {
  --tw-text-opacity: 1;
  color: rgb(var(--color-error) / var(--tw-text-opacity, 1));
}
.text-error-foreground {
  --tw-text-opacity: 1;
  color: rgb(var(--color-error-foreground) / var(--tw-text-opacity, 1));
}
.text-foreground {
  --tw-text-opacity: 1;
  color: rgb(var(--color-foreground) / var(--tw-text-opacity, 1));
}
.text-foreground\/40 {
  color: rgb(var(--color-foreground) / 0.4);
}
.text-foreground\/50 {
  color: rgb(var(--color-foreground) / 0.5);
}
.text-foreground\/60 {
  color: rgb(var(--color-foreground) / 0.6);
}
.text-foreground\/70 {
  color: rgb(var(--color-foreground) / 0.7);
}
.text-gray-300 {
  --tw-text-opacity: 1;
  color: rgb(209 213 219 / var(--tw-text-opacity, 1));
}
.text-gray-400 {
  --tw-text-opacity: 1;
  color: rgb(156 163 175 / var(--tw-text-opacity, 1));
}
.text-gray-500 {
  --tw-text-opacity: 1;
  color: rgb(107 114 128 / var(--tw-text-opacity, 1));
}
.text-gray-600 {
  --tw-text-opacity: 1;
  color: rgb(75 85 99 / var(--tw-text-opacity, 1));
}
.text-gray-700 {
  --tw-text-opacity: 1;
  color: rgb(55 65 81 / var(--tw-text-opacity, 1));
}
.text-gray-800 {
  --tw-text-opacity: 1;
  color: rgb(31 41 55 / var(--tw-text-opacity, 1));
}
.text-gray-900 {
  --tw-text-opacity: 1;
  color: rgb(17 24 39 / var(--tw-text-opacity, 1));
}
.text-green-500 {
  --tw-text-opacity: 1;
  color: rgb(34 197 94 / var(--tw-text-opacity, 1));
}
.text-green-600 {
  --tw-text-opacity: 1;
  color: rgb(22 163 74 / var(--tw-text-opacity, 1));
}
.text-green-700 {
  --tw-text-opacity: 1;
  color: rgb(21 128 61 / var(--tw-text-opacity, 1));
}
.text-green-800 {
  --tw-text-opacity: 1;
  color: rgb(22 101 52 / var(--tw-text-opacity, 1));
}
.text-indigo-600 {
  --tw-text-opacity: 1;
  color: rgb(79 70 229 / var(--tw-text-opacity, 1));
}
.text-info {
  --tw-text-opacity: 1;
  color: rgb(var(--color-info) / var(--tw-text-opacity, 1));
}
.text-info-foreground {
  --tw-text-opacity: 1;
  color: rgb(var(--color-info-foreground) / var(--tw-text-opacity, 1));
}
.text-inherit {
  color: inherit;
}
.text-orange-400 {
  --tw-text-opacity: 1;
  color: rgb(251 146 60 / var(--tw-text-opacity, 1));
}
.text-orange-800 {
  --tw-text-opacity: 1;
  color: rgb(154 52 18 / var(--tw-text-opacity, 1));
}
.text-primary {
  --tw-text-opacity: 1;
  color: rgb(var(--color-primary) / var(--tw-text-opacity, 1));
}
.text-primary-foreground {
  --tw-text-opacity: 1;
  color: rgb(var(--color-primary-foreground) / var(--tw-text-opacity, 1));
}
.text-purple-500 {
  --tw-text-opacity: 1;
  color: rgb(168 85 247 / var(--tw-text-opacity, 1));
}
.text-red-400 {
  --tw-text-opacity: 1;
  color: rgb(248 113 113 / var(--tw-text-opacity, 1));
}
.text-red-500 {
  --tw-text-opacity: 1;
  color: rgb(239 68 68 / var(--tw-text-opacity, 1));
}
.text-red-600 {
  --tw-text-opacity: 1;
  color: rgb(220 38 38 / var(--tw-text-opacity, 1));
}
.text-red-700 {
  --tw-text-opacity: 1;
  color: rgb(185 28 28 / var(--tw-text-opacity, 1));
}
.text-red-800 {
  --tw-text-opacity: 1;
  color: rgb(153 27 27 / var(--tw-text-opacity, 1));
}
.text-rose-500 {
  --tw-text-opacity: 1;
  color: rgb(244 63 94 / var(--tw-text-opacity, 1));
}
.text-secondary {
  --tw-text-opacity: 1;
  color: rgb(var(--color-secondary) / var(--tw-text-opacity, 1));
}
.text-secondary-foreground {
  --tw-text-opacity: 1;
  color: rgb(var(--color-secondary-foreground) / var(--tw-text-opacity, 1));
}
.text-slate-500 {
  --tw-text-opacity: 1;
  color: rgb(100 116 139 / var(--tw-text-opacity, 1));
}
.text-slate-600 {
  --tw-text-opacity: 1;
  color: rgb(71 85 105 / var(--tw-text-opacity, 1));
}
.text-slate-700 {
  --tw-text-opacity: 1;
  color: rgb(51 65 85 / var(--tw-text-opacity, 1));
}
.text-success {
  --tw-text-opacity: 1;
  color: rgb(var(--color-success) / var(--tw-text-opacity, 1));
}
.text-success-foreground {
  --tw-text-opacity: 1;
  color: rgb(var(--color-success-foreground) / var(--tw-text-opacity, 1));
}
.text-surface {
  --tw-text-opacity: 1;
  color: rgb(var(--color-surface) / var(--tw-text-opacity, 1));
}
.text-surface-foreground {
  --tw-text-opacity: 1;
  color: rgb(var(--color-surface-foreground) / var(--tw-text-opacity, 1));
}
.text-transparent {
  color: transparent;
}
.text-warning {
  --tw-text-opacity: 1;
  color: rgb(var(--color-warning) / var(--tw-text-opacity, 1));
}
.text-warning-foreground {
  --tw-text-opacity: 1;
  color: rgb(var(--color-warning-foreground) / var(--tw-text-opacity, 1));
}
.text-white {
  --tw-text-opacity: 1;
  color: rgb(var(--color-white) / var(--tw-text-opacity, 1));
}
.text-yellow-500 {
  --tw-text-opacity: 1;
  color: rgb(234 179 8 / var(--tw-text-opacity, 1));
}
.text-yellow-600 {
  --tw-text-opacity: 1;
  color: rgb(202 138 4 / var(--tw-text-opacity, 1));
}
.text-yellow-700 {
  --tw-text-opacity: 1;
  color: rgb(161 98 7 / var(--tw-text-opacity, 1));
}
.underline {
  text-decoration-line: underline;
}
.line-through {
  text-decoration-line: line-through;
}
.decoration-gray-500 {
  text-decoration-color: #6b7280;
}
.antialiased {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.accent-primary {
  accent-color: rgb(var(--color-primary) / 1);
}
.opacity-0 {
  opacity: 0;
}
.opacity-100 {
  opacity: 1;
}
.opacity-40 {
  opacity: 0.4;
}
.opacity-50 {
  opacity: 0.5;
}
.opacity-60 {
  opacity: 0.6;
}
.opacity-70 {
  opacity: 0.7;
}
.\!shadow-none {
  --tw-shadow: 0 0 #0000 !important;
  --tw-shadow-colored: 0 0 #0000 !important;
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow) !important;
}
.shadow {
  --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-2xl {
  --tw-shadow: 0 25px 50px -12px rgb(0 0 0 / 0.25);
  --tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-lg {
  --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-md {
  --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-none {
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-sm {
  --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
  --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-xl {
  --tw-shadow: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-black\/10 {
  --tw-shadow-color: rgb(var(--color-black) / 0.1);
  --tw-shadow: var(--tw-shadow-colored);
}
.shadow-black\/5 {
  --tw-shadow-color: rgb(var(--color-black) / 0.05);
  --tw-shadow: var(--tw-shadow-colored);
}
.shadow-black\/\[0\.025\] {
  --tw-shadow-color: rgb(var(--color-black) / 0.025);
  --tw-shadow: var(--tw-shadow-colored);
}
.shadow-error-dark\/25 {
  --tw-shadow-color: rgb(var(--color-error-dark) / 0.25);
  --tw-shadow: var(--tw-shadow-colored);
}
.shadow-error\/25 {
  --tw-shadow-color: rgb(var(--color-error) / 0.25);
  --tw-shadow: var(--tw-shadow-colored);
}
.shadow-info-dark\/25 {
  --tw-shadow-color: rgb(var(--color-info-dark) / 0.25);
  --tw-shadow: var(--tw-shadow-colored);
}
.shadow-info\/25 {
  --tw-shadow-color: rgb(var(--color-info) / 0.25);
  --tw-shadow: var(--tw-shadow-colored);
}
.shadow-primary-dark\/25 {
  --tw-shadow-color: rgb(var(--color-primary-dark) / 0.25);
  --tw-shadow: var(--tw-shadow-colored);
}
.shadow-primary\/25 {
  --tw-shadow-color: rgb(var(--color-primary) / 0.25);
  --tw-shadow: var(--tw-shadow-colored);
}
.shadow-secondary-dark\/25 {
  --tw-shadow-color: rgb(var(--color-secondary-dark) / 0.25);
  --tw-shadow: var(--tw-shadow-colored);
}
.shadow-secondary\/25 {
  --tw-shadow-color: rgb(var(--color-secondary) / 0.25);
  --tw-shadow: var(--tw-shadow-colored);
}
.shadow-success-dark\/25 {
  --tw-shadow-color: rgb(var(--color-success-dark) / 0.25);
  --tw-shadow: var(--tw-shadow-colored);
}
.shadow-success\/25 {
  --tw-shadow-color: rgb(var(--color-success) / 0.25);
  --tw-shadow: var(--tw-shadow-colored);
}
.shadow-transparent {
  --tw-shadow-color: transparent;
  --tw-shadow: var(--tw-shadow-colored);
}
.shadow-warning-dark\/25 {
  --tw-shadow-color: rgb(var(--color-warning-dark) / 0.25);
  --tw-shadow: var(--tw-shadow-colored);
}
.shadow-warning\/25 {
  --tw-shadow-color: rgb(var(--color-warning) / 0.25);
  --tw-shadow: var(--tw-shadow-colored);
}
.outline-none {
  outline: 2px solid transparent;
  outline-offset: 2px;
}
.outline {
  outline-style: solid;
}
.ring {
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}
.ring-0 {
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}
.ring-2 {
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}
.ring-4 {
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}
.ring-inset {
  --tw-ring-inset: inset;
}
.ring-blue-500 {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1));
}
.ring-primary\/10 {
  --tw-ring-color: rgb(var(--color-primary) / 0.1);
}
.ring-transparent {
  --tw-ring-color: transparent;
}
.brightness-90 {
  --tw-brightness: brightness(.9);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}
.drop-shadow {
  --tw-drop-shadow: drop-shadow(0 1px 2px rgb(0 0 0 / 0.1)) drop-shadow(0 1px 1px rgb(0 0 0 / 0.06));
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}
.drop-shadow-md {
  --tw-drop-shadow: drop-shadow(0 4px 3px rgb(0 0 0 / 0.07)) drop-shadow(0 2px 2px rgb(0 0 0 / 0.06));
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}
.drop-shadow-sm {
  --tw-drop-shadow: drop-shadow(0 1px 1px rgb(0 0 0 / 0.05));
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}
.filter {
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}
.transition {
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}
.transition-\[width\] {
  transition-property: width;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}
.transition-all {
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}
.transition-colors {
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}
.transition-opacity {
  transition-property: opacity;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}
.transition-shadow {
  transition-property: box-shadow;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}
.transition-transform {
  transition-property: transform;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}
.duration-100 {
  transition-duration: 100ms;
}
.duration-150 {
  transition-duration: 150ms;
}
.duration-200 {
  transition-duration: 200ms;
}
.duration-300 {
  transition-duration: 300ms;
}
.ease-in {
  transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
}
.ease-in-out {
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}
.\[clip-path\:polygon\(0_0\2c _100\%_100\%\2c _0_100\%\)\] {
  clip-path: polygon(0 0, 100% 100%, 0 100%);
}

:root {
  font-family: "SFProDisplay", sans-serif;
  line-height: 1.5;
  font-weight: 400;
  color-scheme: light dark;

  font-synthesis: none;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

@font-face {
  font-family: "SFProDisplay";
  src:
    url("./assets/fonts/SFProDisplayRegular.OTF") format("opentype"),
    url("./assets/fonts/SFProDisplayBold.OTF") format("opentype"),
    url("./assets/fonts/SFProDisplayItalic.OTF") format("opentype");
  font-weight: normal;
  font-style: normal;
}

/* Add more weights if necessary */
@font-face {
  font-family: "SFProDisplay";
  src: url("./assets/fonts/SFProDisplayBold.OTF") format("opentype");
  font-weight: bold;
  font-style: normal;
}

@font-face {
  font-family: "SFProDisplay";
  src: url("./assets/fonts/SFProDisplayItalic.OTF") format("opentype");
  font-weight: normal;
  font-style: italic;
}

html {
  background-color: rgb(250 250 250 / 1);
  /*
   * Always reserve the scrollbar gutter. The app is centred with mx-auto
   * (Layout.tsx), so a page that scrolls and a page that doesn't would
   * otherwise be centred against different viewport widths — content jumps
   * sideways when navigating between them (e.g. the project v2 Overview and
   * Activity tabs).
   */
  scrollbar-gutter: stable;
}

.placeholder\:text-lg::-moz-placeholder {
  font-size: 1.125rem;
  line-height: 1.75rem;
}

.placeholder\:text-lg::placeholder {
  font-size: 1.125rem;
  line-height: 1.75rem;
}

.placeholder\:text-foreground\/40::-moz-placeholder {
  color: rgb(var(--color-foreground) / 0.4);
}

.placeholder\:text-foreground\/40::placeholder {
  color: rgb(var(--color-foreground) / 0.4);
}

.placeholder\:text-foreground\/60::-moz-placeholder {
  color: rgb(var(--color-foreground) / 0.6);
}

.placeholder\:text-foreground\/60::placeholder {
  color: rgb(var(--color-foreground) / 0.6);
}

.placeholder\:text-gray-400::-moz-placeholder {
  --tw-text-opacity: 1;
  color: rgb(156 163 175 / var(--tw-text-opacity, 1));
}

.placeholder\:text-gray-400::placeholder {
  --tw-text-opacity: 1;
  color: rgb(156 163 175 / var(--tw-text-opacity, 1));
}

.placeholder\:opacity-100::-moz-placeholder {
  opacity: 1;
}

.placeholder\:opacity-100::placeholder {
  opacity: 1;
}

.before\:absolute::before {
  content: var(--tw-content);
  position: absolute;
}

.before\:-top-2\.5::before {
  content: var(--tw-content);
  top: -0.625rem;
}

.before\:-top-3::before {
  content: var(--tw-content);
  top: -0.75rem;
}

.before\:-top-3\.5::before {
  content: var(--tw-content);
  top: -0.875rem;
}

.before\:bottom-\[--offset-terminal\]::before {
  content: var(--tw-content);
  bottom: var(--offset-terminal);
}

.before\:left-0::before {
  content: var(--tw-content);
  left: 0px;
}

.before\:left-1\/2::before {
  content: var(--tw-content);
  left: 50%;
}

.before\:left-\[--negative-terminal-size\]::before {
  content: var(--tw-content);
  left: var(--negative-terminal-size);
}

.before\:left-\[--offset-terminal\]::before {
  content: var(--tw-content);
  left: var(--offset-terminal);
}

.before\:right-\[--offset-terminal\]::before {
  content: var(--tw-content);
  right: var(--offset-terminal);
}

.before\:top-0::before {
  content: var(--tw-content);
  top: 0px;
}

.before\:top-\[--negative-terminal-size\]::before {
  content: var(--tw-content);
  top: var(--negative-terminal-size);
}

.before\:top-\[--offset-terminal\]::before {
  content: var(--tw-content);
  top: var(--offset-terminal);
}

.before\:inline-block::before {
  content: var(--tw-content);
  display: inline-block;
}

.before\:h-1::before {
  content: var(--tw-content);
  height: 0.25rem;
}

.before\:h-2::before {
  content: var(--tw-content);
  height: 0.5rem;
}

.before\:h-2\.5::before {
  content: var(--tw-content);
  height: 0.625rem;
}

.before\:h-\[--terminal-size\]::before {
  content: var(--tw-content);
  height: var(--terminal-size);
}

.before\:h-full::before {
  content: var(--tw-content);
  height: 100%;
}

.before\:w-0\.5::before {
  content: var(--tw-content);
  width: 0.125rem;
}

.before\:w-\[--terminal-size\]::before {
  content: var(--tw-content);
  width: var(--terminal-size);
}

.before\:w-full::before {
  content: var(--tw-content);
  width: 100%;
}

.before\:w-px::before {
  content: var(--tw-content);
  width: 1px;
}

.before\:rounded-full::before {
  content: var(--tw-content);
  border-radius: calc(var(--radius) * 1000);
}

.before\:border-\[length\:--line-thickness\]::before {
  content: var(--tw-content);
  border-width: var(--line-thickness);
}

.before\:border-solid::before {
  content: var(--tw-content);
  border-style: solid;
}

.before\:border-blue-700::before {
  content: var(--tw-content);
  --tw-border-opacity: 1;
  border-color: rgb(29 78 216 / var(--tw-border-opacity, 1));
}

.before\:bg-error::before {
  content: var(--tw-content);
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-error) / var(--tw-bg-opacity, 1));
}

.before\:bg-info::before {
  content: var(--tw-content);
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-info) / var(--tw-bg-opacity, 1));
}

.before\:bg-primary::before {
  content: var(--tw-content);
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-primary) / var(--tw-bg-opacity, 1));
}

.before\:bg-secondary::before {
  content: var(--tw-content);
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-secondary) / var(--tw-bg-opacity, 1));
}

.before\:bg-success::before {
  content: var(--tw-content);
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-success) / var(--tw-bg-opacity, 1));
}

.before\:bg-surface::before {
  content: var(--tw-content);
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-surface) / var(--tw-bg-opacity, 1));
}

.before\:bg-warning::before {
  content: var(--tw-content);
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-warning) / var(--tw-bg-opacity, 1));
}

.before\:transition-colors::before {
  content: var(--tw-content);
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

.before\:duration-200::before {
  content: var(--tw-content);
  transition-duration: 200ms;
}

.before\:ease-in::before {
  content: var(--tw-content);
  transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
}

.before\:content-\[\'\'\]::before {
  --tw-content: '';
  content: var(--tw-content);
}

.after\:absolute::after {
  content: var(--tw-content);
  position: absolute;
}

.after\:left-0::after {
  content: var(--tw-content);
  left: 0px;
}

.after\:left-full::after {
  content: var(--tw-content);
  left: 100%;
}

.after\:top-0::after {
  content: var(--tw-content);
  top: 0px;
}

.after\:top-2\/4::after {
  content: var(--tw-content);
  top: 50%;
}

.after\:h-0::after {
  content: var(--tw-content);
  height: 0px;
}

.after\:h-6::after {
  content: var(--tw-content);
  height: 1.5rem;
}

.after\:w-0::after {
  content: var(--tw-content);
  width: 0px;
}

.after\:w-6::after {
  content: var(--tw-content);
  width: 1.5rem;
}

.after\:-translate-y-2\/4::after {
  content: var(--tw-content);
  --tw-translate-y: -50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.after\:rounded-full::after {
  content: var(--tw-content);
  border-radius: calc(var(--radius) * 1000);
}

.after\:border::after {
  content: var(--tw-content);
  border-width: 1px;
}

.after\:border-\[10px\]::after {
  content: var(--tw-content);
  border-width: 10px;
}

.after\:border-\[20px\]::after {
  content: var(--tw-content);
  border-width: 20px;
}

.after\:border-surface::after {
  content: var(--tw-content);
  --tw-border-opacity: 1;
  border-color: rgb(var(--color-surface) / var(--tw-border-opacity, 1));
}

.after\:border-transparent::after {
  content: var(--tw-content);
  border-color: transparent;
}

.after\:border-l-slate-300::after {
  content: var(--tw-content);
  --tw-border-opacity: 1;
  border-left-color: rgb(203 213 225 / var(--tw-border-opacity, 1));
}

.after\:bg-background::after {
  content: var(--tw-content);
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-background) / var(--tw-bg-opacity, 1));
}

.after\:transition-all::after {
  content: var(--tw-content);
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

.after\:duration-200::after {
  content: var(--tw-content);
  transition-duration: 200ms;
}

.after\:ease-in::after {
  content: var(--tw-content);
  transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
}

.after\:content-\[\'\'\]::after {
  --tw-content: '';
  content: var(--tw-content);
}

.last\:mb-0:last-child {
  margin-bottom: 0px;
}

.checked\:before\:bg-error:checked::before {
  content: var(--tw-content);
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-error) / var(--tw-bg-opacity, 1));
}

.checked\:before\:bg-info:checked::before {
  content: var(--tw-content);
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-info) / var(--tw-bg-opacity, 1));
}

.checked\:before\:bg-primary:checked::before {
  content: var(--tw-content);
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-primary) / var(--tw-bg-opacity, 1));
}

.checked\:before\:bg-secondary:checked::before {
  content: var(--tw-content);
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-secondary) / var(--tw-bg-opacity, 1));
}

.checked\:before\:bg-success:checked::before {
  content: var(--tw-content);
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-success) / var(--tw-bg-opacity, 1));
}

.checked\:before\:bg-warning:checked::before {
  content: var(--tw-content);
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-warning) / var(--tw-bg-opacity, 1));
}

.checked\:after\:translate-x-full:checked::after {
  content: var(--tw-content);
  --tw-translate-x: 100%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.checked\:after\:border-error:checked::after {
  content: var(--tw-content);
  --tw-border-opacity: 1;
  border-color: rgb(var(--color-error) / var(--tw-border-opacity, 1));
}

.checked\:after\:border-info:checked::after {
  content: var(--tw-content);
  --tw-border-opacity: 1;
  border-color: rgb(var(--color-info) / var(--tw-border-opacity, 1));
}

.checked\:after\:border-primary:checked::after {
  content: var(--tw-content);
  --tw-border-opacity: 1;
  border-color: rgb(var(--color-primary) / var(--tw-border-opacity, 1));
}

.checked\:after\:border-secondary:checked::after {
  content: var(--tw-content);
  --tw-border-opacity: 1;
  border-color: rgb(var(--color-secondary) / var(--tw-border-opacity, 1));
}

.checked\:after\:border-success:checked::after {
  content: var(--tw-content);
  --tw-border-opacity: 1;
  border-color: rgb(var(--color-success) / var(--tw-border-opacity, 1));
}

.checked\:after\:border-warning:checked::after {
  content: var(--tw-content);
  --tw-border-opacity: 1;
  border-color: rgb(var(--color-warning) / var(--tw-border-opacity, 1));
}

.hover\:cursor-pointer:hover {
  cursor: pointer;
}

.hover\:\!border-gray-300:hover {
  --tw-border-opacity: 1 !important;
  border-color: rgb(209 213 219 / var(--tw-border-opacity, 1)) !important;
}

.hover\:border-blue-500:hover {
  --tw-border-opacity: 1;
  border-color: rgb(59 130 246 / var(--tw-border-opacity, 1));
}

.hover\:border-error:hover {
  --tw-border-opacity: 1;
  border-color: rgb(var(--color-error) / var(--tw-border-opacity, 1));
}

.hover\:border-error-light:hover {
  --tw-border-opacity: 1;
  border-color: rgb(var(--color-error-light) / var(--tw-border-opacity, 1));
}

.hover\:border-error\/10:hover {
  border-color: rgb(var(--color-error) / 0.1);
}

.hover\:border-gray-300:hover {
  --tw-border-opacity: 1;
  border-color: rgb(209 213 219 / var(--tw-border-opacity, 1));
}

.hover\:border-gray-400:hover {
  --tw-border-opacity: 1;
  border-color: rgb(156 163 175 / var(--tw-border-opacity, 1));
}

.hover\:border-gray-500:hover {
  --tw-border-opacity: 1;
  border-color: rgb(107 114 128 / var(--tw-border-opacity, 1));
}

.hover\:border-info:hover {
  --tw-border-opacity: 1;
  border-color: rgb(var(--color-info) / var(--tw-border-opacity, 1));
}

.hover\:border-info-light:hover {
  --tw-border-opacity: 1;
  border-color: rgb(var(--color-info-light) / var(--tw-border-opacity, 1));
}

.hover\:border-info\/10:hover {
  border-color: rgb(var(--color-info) / 0.1);
}

.hover\:border-primary:hover {
  --tw-border-opacity: 1;
  border-color: rgb(var(--color-primary) / var(--tw-border-opacity, 1));
}

.hover\:border-primary-light:hover {
  --tw-border-opacity: 1;
  border-color: rgb(var(--color-primary-light) / var(--tw-border-opacity, 1));
}

.hover\:border-primary\/30:hover {
  border-color: rgb(var(--color-primary) / 0.3);
}

.hover\:border-primary\/5:hover {
  border-color: rgb(var(--color-primary) / 0.05);
}

.hover\:border-secondary:hover {
  --tw-border-opacity: 1;
  border-color: rgb(var(--color-secondary) / var(--tw-border-opacity, 1));
}

.hover\:border-secondary-light:hover {
  --tw-border-opacity: 1;
  border-color: rgb(var(--color-secondary-light) / var(--tw-border-opacity, 1));
}

.hover\:border-secondary\/10:hover {
  border-color: rgb(var(--color-secondary) / 0.1);
}

.hover\:border-success:hover {
  --tw-border-opacity: 1;
  border-color: rgb(var(--color-success) / var(--tw-border-opacity, 1));
}

.hover\:border-success-light:hover {
  --tw-border-opacity: 1;
  border-color: rgb(var(--color-success-light) / var(--tw-border-opacity, 1));
}

.hover\:border-success\/10:hover {
  border-color: rgb(var(--color-success) / 0.1);
}

.hover\:border-warning:hover {
  --tw-border-opacity: 1;
  border-color: rgb(var(--color-warning) / var(--tw-border-opacity, 1));
}

.hover\:border-warning-light:hover {
  --tw-border-opacity: 1;
  border-color: rgb(var(--color-warning-light) / var(--tw-border-opacity, 1));
}

.hover\:border-warning\/10:hover {
  border-color: rgb(var(--color-warning) / 0.1);
}

.hover\:\!bg-gray-50:hover {
  --tw-bg-opacity: 1 !important;
  background-color: rgb(249 250 251 / var(--tw-bg-opacity, 1)) !important;
}

.hover\:\!bg-primary:hover {
  --tw-bg-opacity: 1 !important;
  background-color: rgb(var(--color-primary) / var(--tw-bg-opacity, 1)) !important;
}

.hover\:\!bg-red-100:hover {
  --tw-bg-opacity: 1 !important;
  background-color: rgb(254 226 226 / var(--tw-bg-opacity, 1)) !important;
}

.hover\:\!bg-slate-50:hover {
  --tw-bg-opacity: 1 !important;
  background-color: rgb(248 250 252 / var(--tw-bg-opacity, 1)) !important;
}

.hover\:bg-\[\#38104D\]:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(56 16 77 / var(--tw-bg-opacity, 1));
}

.hover\:bg-black:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-black) / var(--tw-bg-opacity, 1));
}

.hover\:bg-blue-100:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(219 234 254 / var(--tw-bg-opacity, 1));
}

.hover\:bg-blue-50:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(239 246 255 / var(--tw-bg-opacity, 1));
}

.hover\:bg-blue-600:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(37 99 235 / var(--tw-bg-opacity, 1));
}

.hover\:bg-blue-700:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(29 78 216 / var(--tw-bg-opacity, 1));
}

.hover\:bg-error:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-error) / var(--tw-bg-opacity, 1));
}

.hover\:bg-error-light:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-error-light) / var(--tw-bg-opacity, 1));
}

.hover\:bg-error\/10:hover {
  background-color: rgb(var(--color-error) / 0.1);
}

.hover\:bg-gray-100:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(243 244 246 / var(--tw-bg-opacity, 1));
}

.hover\:bg-gray-200:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(229 231 235 / var(--tw-bg-opacity, 1));
}

.hover\:bg-gray-300:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(209 213 219 / var(--tw-bg-opacity, 1));
}

.hover\:bg-gray-50:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(249 250 251 / var(--tw-bg-opacity, 1));
}

.hover\:bg-indigo-700:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(67 56 202 / var(--tw-bg-opacity, 1));
}

.hover\:bg-info:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-info) / var(--tw-bg-opacity, 1));
}

.hover\:bg-info-light:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-info-light) / var(--tw-bg-opacity, 1));
}

.hover\:bg-info\/10:hover {
  background-color: rgb(var(--color-info) / 0.1);
}

.hover\:bg-primary:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-primary) / var(--tw-bg-opacity, 1));
}

.hover\:bg-primary-light:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-primary-light) / var(--tw-bg-opacity, 1));
}

.hover\:bg-primary\/5:hover {
  background-color: rgb(var(--color-primary) / 0.05);
}

.hover\:bg-purple-200:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(233 213 255 / var(--tw-bg-opacity, 1));
}

.hover\:bg-red-50:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(254 242 242 / var(--tw-bg-opacity, 1));
}

.hover\:bg-red-600:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(220 38 38 / var(--tw-bg-opacity, 1));
}

.hover\:bg-secondary:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-secondary) / var(--tw-bg-opacity, 1));
}

.hover\:bg-secondary-light:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-secondary-light) / var(--tw-bg-opacity, 1));
}

.hover\:bg-secondary\/10:hover {
  background-color: rgb(var(--color-secondary) / 0.1);
}

.hover\:bg-slate-100:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(241 245 249 / var(--tw-bg-opacity, 1));
}

.hover\:bg-slate-400:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(148 163 184 / var(--tw-bg-opacity, 1));
}

.hover\:bg-success:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-success) / var(--tw-bg-opacity, 1));
}

.hover\:bg-success-light:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-success-light) / var(--tw-bg-opacity, 1));
}

.hover\:bg-success\/10:hover {
  background-color: rgb(var(--color-success) / 0.1);
}

.hover\:bg-surface:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-surface) / var(--tw-bg-opacity, 1));
}

.hover\:bg-surface\/60:hover {
  background-color: rgb(var(--color-surface) / 0.6);
}

.hover\:bg-transparent:hover {
  background-color: transparent;
}

.hover\:bg-warning:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-warning) / var(--tw-bg-opacity, 1));
}

.hover\:bg-warning-light:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-warning-light) / var(--tw-bg-opacity, 1));
}

.hover\:bg-warning\/10:hover {
  background-color: rgb(var(--color-warning) / 0.1);
}

.hover\:\!text-black:hover {
  --tw-text-opacity: 1 !important;
  color: rgb(var(--color-black) / var(--tw-text-opacity, 1)) !important;
}

.hover\:\!text-red-500:hover {
  --tw-text-opacity: 1 !important;
  color: rgb(239 68 68 / var(--tw-text-opacity, 1)) !important;
}

.hover\:text-amber-950:hover {
  --tw-text-opacity: 1;
  color: rgb(69 26 3 / var(--tw-text-opacity, 1));
}

.hover\:text-black:hover {
  --tw-text-opacity: 1;
  color: rgb(var(--color-black) / var(--tw-text-opacity, 1));
}

.hover\:text-blue-600:hover {
  --tw-text-opacity: 1;
  color: rgb(37 99 235 / var(--tw-text-opacity, 1));
}

.hover\:text-blue-800:hover {
  --tw-text-opacity: 1;
  color: rgb(30 64 175 / var(--tw-text-opacity, 1));
}

.hover\:text-error-foreground:hover {
  --tw-text-opacity: 1;
  color: rgb(var(--color-error-foreground) / var(--tw-text-opacity, 1));
}

.hover\:text-foreground:hover {
  --tw-text-opacity: 1;
  color: rgb(var(--color-foreground) / var(--tw-text-opacity, 1));
}

.hover\:text-foreground\/80:hover {
  color: rgb(var(--color-foreground) / 0.8);
}

.hover\:text-gray-400:hover {
  --tw-text-opacity: 1;
  color: rgb(156 163 175 / var(--tw-text-opacity, 1));
}

.hover\:text-gray-500:hover {
  --tw-text-opacity: 1;
  color: rgb(107 114 128 / var(--tw-text-opacity, 1));
}

.hover\:text-gray-600:hover {
  --tw-text-opacity: 1;
  color: rgb(75 85 99 / var(--tw-text-opacity, 1));
}

.hover\:text-gray-700:hover {
  --tw-text-opacity: 1;
  color: rgb(55 65 81 / var(--tw-text-opacity, 1));
}

.hover\:text-gray-800:hover {
  --tw-text-opacity: 1;
  color: rgb(31 41 55 / var(--tw-text-opacity, 1));
}

.hover\:text-gray-900:hover {
  --tw-text-opacity: 1;
  color: rgb(17 24 39 / var(--tw-text-opacity, 1));
}

.hover\:text-green-600:hover {
  --tw-text-opacity: 1;
  color: rgb(22 163 74 / var(--tw-text-opacity, 1));
}

.hover\:text-info-foreground:hover {
  --tw-text-opacity: 1;
  color: rgb(var(--color-info-foreground) / var(--tw-text-opacity, 1));
}

.hover\:text-primary:hover {
  --tw-text-opacity: 1;
  color: rgb(var(--color-primary) / var(--tw-text-opacity, 1));
}

.hover\:text-primary-foreground:hover {
  --tw-text-opacity: 1;
  color: rgb(var(--color-primary-foreground) / var(--tw-text-opacity, 1));
}

.hover\:text-red-500:hover {
  --tw-text-opacity: 1;
  color: rgb(239 68 68 / var(--tw-text-opacity, 1));
}

.hover\:text-red-600:hover {
  --tw-text-opacity: 1;
  color: rgb(220 38 38 / var(--tw-text-opacity, 1));
}

.hover\:text-red-700:hover {
  --tw-text-opacity: 1;
  color: rgb(185 28 28 / var(--tw-text-opacity, 1));
}

.hover\:text-slate-700:hover {
  --tw-text-opacity: 1;
  color: rgb(51 65 85 / var(--tw-text-opacity, 1));
}

.hover\:text-success-foreground:hover {
  --tw-text-opacity: 1;
  color: rgb(var(--color-success-foreground) / var(--tw-text-opacity, 1));
}

.hover\:text-warning-foreground:hover {
  --tw-text-opacity: 1;
  color: rgb(var(--color-warning-foreground) / var(--tw-text-opacity, 1));
}

.hover\:underline:hover {
  text-decoration-line: underline;
}

.hover\:shadow:hover {
  --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.hover\:shadow-lg:hover {
  --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.hover\:shadow-md:hover {
  --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.hover\:shadow-none:hover {
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.hover\:outline-none:hover {
  outline: 2px solid transparent;
  outline-offset: 2px;
}

.hover\:ring-error\/10:hover {
  --tw-ring-color: rgb(var(--color-error) / 0.1);
}

.hover\:ring-gray-400\/10:hover {
  --tw-ring-color: rgb(156 163 175 / 0.1);
}

.hover\:ring-info\/10:hover {
  --tw-ring-color: rgb(var(--color-info) / 0.1);
}

.hover\:ring-primary\/10:hover {
  --tw-ring-color: rgb(var(--color-primary) / 0.1);
}

.hover\:ring-secondary\/10:hover {
  --tw-ring-color: rgb(var(--color-secondary) / 0.1);
}

.hover\:ring-success\/10:hover {
  --tw-ring-color: rgb(var(--color-success) / 0.1);
}

.hover\:ring-warning\/10:hover {
  --tw-ring-color: rgb(var(--color-warning) / 0.1);
}

.hover\:brightness-105:hover {
  --tw-brightness: brightness(1.05);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.focus\:\!border-gray-300:focus {
  --tw-border-opacity: 1 !important;
  border-color: rgb(209 213 219 / var(--tw-border-opacity, 1)) !important;
}

.focus\:\!border-gray-900:focus {
  --tw-border-opacity: 1 !important;
  border-color: rgb(17 24 39 / var(--tw-border-opacity, 1)) !important;
}

.focus\:border-error:focus {
  --tw-border-opacity: 1;
  border-color: rgb(var(--color-error) / var(--tw-border-opacity, 1));
}

.focus\:border-gray-400:focus {
  --tw-border-opacity: 1;
  border-color: rgb(156 163 175 / var(--tw-border-opacity, 1));
}

.focus\:border-gray-500:focus {
  --tw-border-opacity: 1;
  border-color: rgb(107 114 128 / var(--tw-border-opacity, 1));
}

.focus\:border-gray-900:focus {
  --tw-border-opacity: 1;
  border-color: rgb(17 24 39 / var(--tw-border-opacity, 1));
}

.focus\:border-info:focus {
  --tw-border-opacity: 1;
  border-color: rgb(var(--color-info) / var(--tw-border-opacity, 1));
}

.focus\:border-primary:focus {
  --tw-border-opacity: 1;
  border-color: rgb(var(--color-primary) / var(--tw-border-opacity, 1));
}

.focus\:border-secondary:focus {
  --tw-border-opacity: 1;
  border-color: rgb(var(--color-secondary) / var(--tw-border-opacity, 1));
}

.focus\:border-success:focus {
  --tw-border-opacity: 1;
  border-color: rgb(var(--color-success) / var(--tw-border-opacity, 1));
}

.focus\:border-warning:focus {
  --tw-border-opacity: 1;
  border-color: rgb(var(--color-warning) / var(--tw-border-opacity, 1));
}

.focus\:bg-gray-100:focus {
  --tw-bg-opacity: 1;
  background-color: rgb(243 244 246 / var(--tw-bg-opacity, 1));
}

.focus\:bg-slate-400:focus {
  --tw-bg-opacity: 1;
  background-color: rgb(148 163 184 / var(--tw-bg-opacity, 1));
}

.focus\:bg-surface:focus {
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-surface) / var(--tw-bg-opacity, 1));
}

.focus\:text-black:focus {
  --tw-text-opacity: 1;
  color: rgb(var(--color-black) / var(--tw-text-opacity, 1));
}

.focus\:text-gray-900:focus {
  --tw-text-opacity: 1;
  color: rgb(17 24 39 / var(--tw-text-opacity, 1));
}

.focus\:shadow-lg:focus {
  --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.focus\:shadow-none:focus {
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.focus\:shadow-blue-600\/10:focus {
  --tw-shadow-color: rgb(37 99 235 / 0.1);
  --tw-shadow: var(--tw-shadow-colored);
}

.focus\:shadow-gray-900\/5:focus {
  --tw-shadow-color: rgb(17 24 39 / 0.05);
  --tw-shadow: var(--tw-shadow-colored);
}

.focus\:outline-none:focus {
  outline: 2px solid transparent;
  outline-offset: 2px;
}

.focus\:ring-1:focus {
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}

.focus\:ring-2:focus {
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}

.focus\:ring-\[\#4A154B\]\/30:focus {
  --tw-ring-color: rgb(74 21 75 / 0.3);
}

.focus\:ring-blue-500:focus {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1));
}

.focus\:ring-blue-600\/20:focus {
  --tw-ring-color: rgb(37 99 235 / 0.2);
}

.focus\:ring-error\/10:focus {
  --tw-ring-color: rgb(var(--color-error) / 0.1);
}

.focus\:ring-gray-400:focus {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(156 163 175 / var(--tw-ring-opacity, 1));
}

.focus\:ring-gray-400\/10:focus {
  --tw-ring-color: rgb(156 163 175 / 0.1);
}

.focus\:ring-gray-900\/20:focus {
  --tw-ring-color: rgb(17 24 39 / 0.2);
}

.focus\:ring-gray-900\/5:focus {
  --tw-ring-color: rgb(17 24 39 / 0.05);
}

.focus\:ring-indigo-500:focus {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(99 102 241 / var(--tw-ring-opacity, 1));
}

.focus\:ring-info\/10:focus {
  --tw-ring-color: rgb(var(--color-info) / 0.1);
}

.focus\:ring-primary\/10:focus {
  --tw-ring-color: rgb(var(--color-primary) / 0.1);
}

.focus\:ring-red-200:focus {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(254 202 202 / var(--tw-ring-opacity, 1));
}

.focus\:ring-secondary\/10:focus {
  --tw-ring-color: rgb(var(--color-secondary) / 0.1);
}

.focus\:ring-success\/10:focus {
  --tw-ring-color: rgb(var(--color-success) / 0.1);
}

.focus\:ring-warning\/10:focus {
  --tw-ring-color: rgb(var(--color-warning) / 0.1);
}

.focus\:ring-offset-2:focus {
  --tw-ring-offset-width: 2px;
}

.focus-visible\:outline-none:focus-visible {
  outline: 2px solid transparent;
  outline-offset: 2px;
}

.active\:cursor-grabbing:active {
  cursor: grabbing;
}

.active\:bg-gray-100:active {
  --tw-bg-opacity: 1;
  background-color: rgb(243 244 246 / var(--tw-bg-opacity, 1));
}

.active\:bg-slate-400:active {
  --tw-bg-opacity: 1;
  background-color: rgb(148 163 184 / var(--tw-bg-opacity, 1));
}

.active\:text-gray-900:active {
  --tw-text-opacity: 1;
  color: rgb(17 24 39 / var(--tw-text-opacity, 1));
}

.active\:ring-error\/10:active {
  --tw-ring-color: rgb(var(--color-error) / 0.1);
}

.active\:ring-info\/10:active {
  --tw-ring-color: rgb(var(--color-info) / 0.1);
}

.active\:ring-primary\/10:active {
  --tw-ring-color: rgb(var(--color-primary) / 0.1);
}

.active\:ring-secondary\/10:active {
  --tw-ring-color: rgb(var(--color-secondary) / 0.1);
}

.active\:ring-success\/10:active {
  --tw-ring-color: rgb(var(--color-success) / 0.1);
}

.active\:ring-warning\/10:active {
  --tw-ring-color: rgb(var(--color-warning) / 0.1);
}

.disabled\:pointer-events-none:disabled {
  pointer-events: none;
}

.disabled\:\!cursor-not-allowed:disabled {
  cursor: not-allowed !important;
}

.disabled\:cursor-not-allowed:disabled {
  cursor: not-allowed;
}

.disabled\:\!bg-gray-100:disabled {
  --tw-bg-opacity: 1 !important;
  background-color: rgb(243 244 246 / var(--tw-bg-opacity, 1)) !important;
}

.disabled\:bg-gray-100:disabled {
  --tw-bg-opacity: 1;
  background-color: rgb(243 244 246 / var(--tw-bg-opacity, 1));
}

.disabled\:bg-gray-200:disabled {
  --tw-bg-opacity: 1;
  background-color: rgb(229 231 235 / var(--tw-bg-opacity, 1));
}

.disabled\:opacity-40:disabled {
  opacity: 0.4;
}

.disabled\:opacity-50:disabled {
  opacity: 0.5;
}

.disabled\:shadow-none:disabled {
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.group:hover .group-hover\:text-gray-400 {
  --tw-text-opacity: 1;
  color: rgb(156 163 175 / var(--tw-text-opacity, 1));
}

.group:hover .group-hover\:underline {
  text-decoration-line: underline;
}

.group:hover .group-hover\:opacity-100 {
  opacity: 1;
}

.group:hover .group-hover\:opacity-60 {
  opacity: 0.6;
}

.peer:hover ~ .peer-hover\:text-black {
  --tw-text-opacity: 1;
  color: rgb(var(--color-black) / var(--tw-text-opacity, 1));
}

.peer:focus ~ .peer-focus\:text-black {
  --tw-text-opacity: 1;
  color: rgb(var(--color-black) / var(--tw-text-opacity, 1));
}

.aria-disabled\:pointer-events-none[aria-disabled="true"] {
  pointer-events: none;
}

.aria-disabled\:cursor-not-allowed[aria-disabled="true"] {
  cursor: not-allowed;
}

.aria-disabled\:select-none[aria-disabled="true"] {
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}

.aria-disabled\:opacity-50[aria-disabled="true"] {
  opacity: 0.5;
}

.data-\[orientation\=horizontal\]\:left-0[data-orientation="horizontal"] {
  left: 0px;
}

.data-\[orientation\=horizontal\]\:top-1\/2[data-orientation="horizontal"] {
  top: 50%;
}

.data-\[orientation\=vertical\]\:left-1\/2[data-orientation="vertical"] {
  left: 50%;
}

.data-\[orientation\=vertical\]\:top-0[data-orientation="vertical"] {
  top: 0px;
}

.data-\[placement\=\'bottom-end\'\]\:data-\[overlap\=\'circular\'\]\:bottom-\[14\%\][data-overlap='circular'][data-placement='bottom-end'] {
  bottom: 14%;
}

.data-\[placement\=\'bottom-end\'\]\:data-\[overlap\=\'circular\'\]\:right-\[14\%\][data-overlap='circular'][data-placement='bottom-end'] {
  right: 14%;
}

.data-\[placement\=\'bottom-end\'\]\:data-\[overlap\=\'square\'\]\:bottom-\[6\%\][data-overlap='square'][data-placement='bottom-end'] {
  bottom: 6%;
}

.data-\[placement\=\'bottom-end\'\]\:data-\[overlap\=\'square\'\]\:right-\[6\%\][data-overlap='square'][data-placement='bottom-end'] {
  right: 6%;
}

.data-\[placement\=\'bottom-start\'\]\:data-\[overlap\=\'circular\'\]\:bottom-\[14\%\][data-overlap='circular'][data-placement='bottom-start'] {
  bottom: 14%;
}

.data-\[placement\=\'bottom-start\'\]\:data-\[overlap\=\'circular\'\]\:left-\[14\%\][data-overlap='circular'][data-placement='bottom-start'] {
  left: 14%;
}

.data-\[placement\=\'bottom-start\'\]\:data-\[overlap\=\'square\'\]\:bottom-\[6\%\][data-overlap='square'][data-placement='bottom-start'] {
  bottom: 6%;
}

.data-\[placement\=\'bottom-start\'\]\:data-\[overlap\=\'square\'\]\:left-\[6\%\][data-overlap='square'][data-placement='bottom-start'] {
  left: 6%;
}

.data-\[placement\=\'top-end\'\]\:data-\[overlap\=\'circular\'\]\:right-\[14\%\][data-overlap='circular'][data-placement='top-end'] {
  right: 14%;
}

.data-\[placement\=\'top-end\'\]\:data-\[overlap\=\'circular\'\]\:top-\[14\%\][data-overlap='circular'][data-placement='top-end'] {
  top: 14%;
}

.data-\[placement\=\'top-end\'\]\:data-\[overlap\=\'square\'\]\:right-\[6\%\][data-overlap='square'][data-placement='top-end'] {
  right: 6%;
}

.data-\[placement\=\'top-end\'\]\:data-\[overlap\=\'square\'\]\:top-\[6\%\][data-overlap='square'][data-placement='top-end'] {
  top: 6%;
}

.data-\[placement\=\'top-start\'\]\:data-\[overlap\=\'circular\'\]\:left-\[14\%\][data-overlap='circular'][data-placement='top-start'] {
  left: 14%;
}

.data-\[placement\=\'top-start\'\]\:data-\[overlap\=\'circular\'\]\:top-\[14\%\][data-overlap='circular'][data-placement='top-start'] {
  top: 14%;
}

.data-\[placement\=\'top-start\'\]\:data-\[overlap\=\'square\'\]\:left-\[6\%\][data-overlap='square'][data-placement='top-start'] {
  left: 6%;
}

.data-\[placement\=\'top-start\'\]\:data-\[overlap\=\'square\'\]\:top-\[6\%\][data-overlap='square'][data-placement='top-start'] {
  top: 6%;
}

.data-\[placement\=bottom\]\:bottom-0[data-placement="bottom"] {
  bottom: 0px;
}

.data-\[placement\=bottom\]\:left-0[data-placement="bottom"] {
  left: 0px;
}

.data-\[placement\=end\]\:right-2[data-placement="end"] {
  right: 0.5rem;
}

.data-\[placement\=end\]\:right-2\.5[data-placement="end"] {
  right: 0.625rem;
}

.data-\[placement\=end\]\:right-3[data-placement="end"] {
  right: 0.75rem;
}

.data-\[placement\=left\]\:left-0[data-placement="left"] {
  left: 0px;
}

.data-\[placement\=left\]\:top-0[data-placement="left"] {
  top: 0px;
}

.data-\[placement\=right\]\:right-0[data-placement="right"] {
  right: 0px;
}

.data-\[placement\=right\]\:top-0[data-placement="right"] {
  top: 0px;
}

.data-\[placement\=start\]\:left-2[data-placement="start"] {
  left: 0.5rem;
}

.data-\[placement\=start\]\:left-2\.5[data-placement="start"] {
  left: 0.625rem;
}

.data-\[placement\=start\]\:left-3[data-placement="start"] {
  left: 0.75rem;
}

.data-\[placement\=top\]\:left-0[data-placement="top"] {
  left: 0px;
}

.data-\[placement\=top\]\:top-0[data-placement="top"] {
  top: 0px;
}

.data-\[orientation\=horizontal\]\:block[data-orientation="horizontal"] {
  display: block;
}

.data-\[orientation\=vertical\]\:flex[data-orientation="vertical"] {
  display: flex;
}

.data-\[open\=true\]\:h-auto[data-open="true"] {
  height: auto;
}

.data-\[orientation\=horizontal\]\:h-0\.5[data-orientation="horizontal"] {
  height: 0.125rem;
}

.data-\[orientation\=vertical\]\:h-full[data-orientation="vertical"] {
  height: 100%;
}

.data-\[placement\=left\]\:h-screen[data-placement="left"] {
  height: 100vh;
}

.data-\[placement\=right\]\:h-screen[data-placement="right"] {
  height: 100vh;
}

.data-\[orientation\=horizontal\]\:w-full[data-orientation="horizontal"] {
  width: 100%;
}

.data-\[orientation\=vertical\]\:w-0\.5[data-orientation="vertical"] {
  width: 0.125rem;
}

.data-\[placement\=bottom\]\:w-screen[data-placement="bottom"] {
  width: 100vw;
}

.data-\[placement\=top\]\:w-screen[data-placement="top"] {
  width: 100vw;
}

.data-\[width\=full\]\:w-full[data-width="full"] {
  width: 100%;
}

.data-\[orientation\=horizontal\]\:-translate-y-1\/2[data-orientation="horizontal"] {
  --tw-translate-y: -50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.data-\[orientation\=vertical\]\:-translate-x-1\/2[data-orientation="vertical"] {
  --tw-translate-x: -50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.data-\[placement\=\'bottom-end\'\]\:data-\[overlap\=\'circular\'\]\:translate-x-1\/2[data-overlap='circular'][data-placement='bottom-end'] {
  --tw-translate-x: 50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.data-\[placement\=\'bottom-end\'\]\:data-\[overlap\=\'circular\'\]\:translate-y-1\/2[data-overlap='circular'][data-placement='bottom-end'] {
  --tw-translate-y: 50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.data-\[placement\=\'bottom-end\'\]\:data-\[overlap\=\'square\'\]\:translate-x-1\/2[data-overlap='square'][data-placement='bottom-end'] {
  --tw-translate-x: 50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.data-\[placement\=\'bottom-end\'\]\:data-\[overlap\=\'square\'\]\:translate-y-1\/2[data-overlap='square'][data-placement='bottom-end'] {
  --tw-translate-y: 50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.data-\[placement\=\'bottom-start\'\]\:data-\[overlap\=\'circular\'\]\:-translate-x-1\/2[data-overlap='circular'][data-placement='bottom-start'] {
  --tw-translate-x: -50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.data-\[placement\=\'bottom-start\'\]\:data-\[overlap\=\'circular\'\]\:translate-y-1\/2[data-overlap='circular'][data-placement='bottom-start'] {
  --tw-translate-y: 50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.data-\[placement\=\'bottom-start\'\]\:data-\[overlap\=\'square\'\]\:-translate-x-1\/2[data-overlap='square'][data-placement='bottom-start'] {
  --tw-translate-x: -50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.data-\[placement\=\'bottom-start\'\]\:data-\[overlap\=\'square\'\]\:translate-y-1\/2[data-overlap='square'][data-placement='bottom-start'] {
  --tw-translate-y: 50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.data-\[placement\=\'top-end\'\]\:data-\[overlap\=\'circular\'\]\:-translate-y-1\/2[data-overlap='circular'][data-placement='top-end'] {
  --tw-translate-y: -50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.data-\[placement\=\'top-end\'\]\:data-\[overlap\=\'circular\'\]\:translate-x-1\/2[data-overlap='circular'][data-placement='top-end'] {
  --tw-translate-x: 50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.data-\[placement\=\'top-end\'\]\:data-\[overlap\=\'square\'\]\:-translate-y-1\/2[data-overlap='square'][data-placement='top-end'] {
  --tw-translate-y: -50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.data-\[placement\=\'top-end\'\]\:data-\[overlap\=\'square\'\]\:translate-x-1\/2[data-overlap='square'][data-placement='top-end'] {
  --tw-translate-x: 50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.data-\[placement\=\'top-start\'\]\:data-\[overlap\=\'circular\'\]\:-translate-x-1\/2[data-overlap='circular'][data-placement='top-start'] {
  --tw-translate-x: -50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.data-\[placement\=\'top-start\'\]\:data-\[overlap\=\'circular\'\]\:-translate-y-1\/2[data-overlap='circular'][data-placement='top-start'] {
  --tw-translate-y: -50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.data-\[placement\=\'top-start\'\]\:data-\[overlap\=\'square\'\]\:-translate-x-1\/2[data-overlap='square'][data-placement='top-start'] {
  --tw-translate-x: -50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.data-\[placement\=\'top-start\'\]\:data-\[overlap\=\'square\'\]\:-translate-y-1\/2[data-overlap='square'][data-placement='top-start'] {
  --tw-translate-y: -50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.data-\[placement\^\=bottom\]\:rotate-\[135deg\][data-placement^="bottom"] {
  --tw-rotate: 135deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.data-\[placement\^\=left\]\:rotate-\[225deg\][data-placement^="left"] {
  --tw-rotate: 225deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.data-\[placement\^\=right\]\:rotate-45[data-placement^="right"] {
  --tw-rotate: 45deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.data-\[placement\^\=top\]\:-rotate-45[data-placement^="top"] {
  --tw-rotate: -45deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.data-\[checked\=true\]\:scale-100[data-checked="true"] {
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.data-\[resize\=true\]\:resize-y[data-resize="true"] {
  resize: vertical;
}

.data-\[orientation\=horizontal\]\:flex-row[data-orientation="horizontal"] {
  flex-direction: row;
}

.data-\[orientation\=vertical\]\:flex-row[data-orientation="vertical"] {
  flex-direction: row;
}

.data-\[orientation\=horizontal\]\:flex-col[data-orientation="horizontal"] {
  flex-direction: column;
}

.data-\[orientation\=vertical\]\:flex-col[data-orientation="vertical"] {
  flex-direction: column;
}

.data-\[orientation\=vertical\]\:items-start[data-orientation="vertical"] {
  align-items: flex-start;
}

.data-\[orientation\=horizontal\]\:items-center[data-orientation="horizontal"] {
  align-items: center;
}

.data-\[orientation\=vertical\]\:gap-x-6[data-orientation="vertical"] {
  -moz-column-gap: 1.5rem;
       column-gap: 1.5rem;
}

.data-\[open\=true\]\:overflow-visible[data-open="true"] {
  overflow: visible;
}

.data-\[pill\=true\]\:rounded-full[data-pill="true"] {
  border-radius: calc(var(--radius) * 1000);
}

.data-\[shape\=circular\]\:rounded-full[data-shape="circular"] {
  border-radius: calc(var(--radius) * 1000);
}

.data-\[shape\=pill\]\:rounded-full[data-shape="pill"] {
  border-radius: calc(var(--radius) * 1000);
}

.data-\[shape\=rounded\]\:rounded-\[current\][data-shape="rounded"] {
  border-radius: current;
}

.data-\[shape\=square\]\:rounded-none[data-shape="square"] {
  border-radius: 0px;
}

.data-\[checked\=true\]\:border-error[data-checked="true"] {
  --tw-border-opacity: 1;
  border-color: rgb(var(--color-error) / var(--tw-border-opacity, 1));
}

.data-\[checked\=true\]\:border-info[data-checked="true"] {
  --tw-border-opacity: 1;
  border-color: rgb(var(--color-info) / var(--tw-border-opacity, 1));
}

.data-\[checked\=true\]\:border-primary[data-checked="true"] {
  --tw-border-opacity: 1;
  border-color: rgb(var(--color-primary) / var(--tw-border-opacity, 1));
}

.data-\[checked\=true\]\:border-secondary[data-checked="true"] {
  --tw-border-opacity: 1;
  border-color: rgb(var(--color-secondary) / var(--tw-border-opacity, 1));
}

.data-\[checked\=true\]\:border-success[data-checked="true"] {
  --tw-border-opacity: 1;
  border-color: rgb(var(--color-success) / var(--tw-border-opacity, 1));
}

.data-\[checked\=true\]\:border-warning[data-checked="true"] {
  --tw-border-opacity: 1;
  border-color: rgb(var(--color-warning) / var(--tw-border-opacity, 1));
}

.data-\[error\=true\]\:border-error[data-error="true"] {
  --tw-border-opacity: 1;
  border-color: rgb(var(--color-error) / var(--tw-border-opacity, 1));
}

.data-\[open\=true\]\:border-error[data-open="true"] {
  --tw-border-opacity: 1;
  border-color: rgb(var(--color-error) / var(--tw-border-opacity, 1));
}

.data-\[open\=true\]\:border-info[data-open="true"] {
  --tw-border-opacity: 1;
  border-color: rgb(var(--color-info) / var(--tw-border-opacity, 1));
}

.data-\[open\=true\]\:border-primary[data-open="true"] {
  --tw-border-opacity: 1;
  border-color: rgb(var(--color-primary) / var(--tw-border-opacity, 1));
}

.data-\[open\=true\]\:border-secondary[data-open="true"] {
  --tw-border-opacity: 1;
  border-color: rgb(var(--color-secondary) / var(--tw-border-opacity, 1));
}

.data-\[open\=true\]\:border-success[data-open="true"] {
  --tw-border-opacity: 1;
  border-color: rgb(var(--color-success) / var(--tw-border-opacity, 1));
}

.data-\[open\=true\]\:border-warning[data-open="true"] {
  --tw-border-opacity: 1;
  border-color: rgb(var(--color-warning) / var(--tw-border-opacity, 1));
}

.data-\[success\=true\]\:border-success[data-success="true"] {
  --tw-border-opacity: 1;
  border-color: rgb(var(--color-success) / var(--tw-border-opacity, 1));
}

.data-\[checked\=true\]\:bg-error[data-checked="true"] {
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-error) / var(--tw-bg-opacity, 1));
}

.data-\[checked\=true\]\:bg-info[data-checked="true"] {
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-info) / var(--tw-bg-opacity, 1));
}

.data-\[checked\=true\]\:bg-primary[data-checked="true"] {
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-primary) / var(--tw-bg-opacity, 1));
}

.data-\[checked\=true\]\:bg-secondary[data-checked="true"] {
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-secondary) / var(--tw-bg-opacity, 1));
}

.data-\[checked\=true\]\:bg-success[data-checked="true"] {
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-success) / var(--tw-bg-opacity, 1));
}

.data-\[checked\=true\]\:bg-warning[data-checked="true"] {
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-warning) / var(--tw-bg-opacity, 1));
}

.data-\[selected\=true\]\:bg-surface[data-selected="true"] {
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-surface) / var(--tw-bg-opacity, 1));
}

.data-\[orientation\=horizontal\]\:py-4[data-orientation="horizontal"] {
  padding-top: 1rem;
  padding-bottom: 1rem;
}

.data-\[icon-placement\=end\]\:pe-11[data-icon-placement="end"] {
  padding-inline-end: 2.75rem;
}

.data-\[icon-placement\=end\]\:pe-7[data-icon-placement="end"] {
  padding-inline-end: 1.75rem;
}

.data-\[icon-placement\=end\]\:pe-9[data-icon-placement="end"] {
  padding-inline-end: 2.25rem;
}

.data-\[icon-placement\=start\]\:ps-11[data-icon-placement="start"] {
  padding-inline-start: 2.75rem;
}

.data-\[icon-placement\=start\]\:ps-7[data-icon-placement="start"] {
  padding-inline-start: 1.75rem;
}

.data-\[icon-placement\=start\]\:ps-9[data-icon-placement="start"] {
  padding-inline-start: 2.25rem;
}

.data-\[orientation\=vertical\]\:pb-8[data-orientation="vertical"] {
  padding-bottom: 2rem;
}

.data-\[selected\=true\]\:text-black[data-selected="true"] {
  --tw-text-opacity: 1;
  color: rgb(var(--color-black) / var(--tw-text-opacity, 1));
}

.data-\[selected\=true\]\:text-gray-900[data-selected="true"] {
  --tw-text-opacity: 1;
  color: rgb(17 24 39 / var(--tw-text-opacity, 1));
}

.data-\[checked\=true\]\:opacity-100[data-checked="true"] {
  opacity: 1;
}

.data-\[open\=true\]\:ring-error\/10[data-open="true"] {
  --tw-ring-color: rgb(var(--color-error) / 0.1);
}

.data-\[open\=true\]\:ring-info\/10[data-open="true"] {
  --tw-ring-color: rgb(var(--color-info) / 0.1);
}

.data-\[open\=true\]\:ring-primary\/10[data-open="true"] {
  --tw-ring-color: rgb(var(--color-primary) / 0.1);
}

.data-\[open\=true\]\:ring-secondary\/10[data-open="true"] {
  --tw-ring-color: rgb(var(--color-secondary) / 0.1);
}

.data-\[open\=true\]\:ring-success\/10[data-open="true"] {
  --tw-ring-color: rgb(var(--color-success) / 0.1);
}

.data-\[open\=true\]\:ring-warning\/10[data-open="true"] {
  --tw-ring-color: rgb(var(--color-warning) / 0.1);
}

.group[data-checked="true"] .group-data-\[checked\=true\]\:scale-100 {
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.group[data-active="true"] .group-data-\[active\=true\]\:bg-error {
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-error) / var(--tw-bg-opacity, 1));
}

.group[data-active="true"] .group-data-\[active\=true\]\:bg-info {
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-info) / var(--tw-bg-opacity, 1));
}

.group[data-active="true"] .group-data-\[active\=true\]\:bg-primary {
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-primary) / var(--tw-bg-opacity, 1));
}

.group[data-active="true"] .group-data-\[active\=true\]\:bg-secondary {
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-secondary) / var(--tw-bg-opacity, 1));
}

.group[data-active="true"] .group-data-\[active\=true\]\:bg-success {
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-success) / var(--tw-bg-opacity, 1));
}

.group[data-active="true"] .group-data-\[active\=true\]\:bg-warning {
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-warning) / var(--tw-bg-opacity, 1));
}

.group[data-completed="true"] .group-data-\[completed\=true\]\:bg-error {
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-error) / var(--tw-bg-opacity, 1));
}

.group[data-completed="true"] .group-data-\[completed\=true\]\:bg-info {
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-info) / var(--tw-bg-opacity, 1));
}

.group[data-completed="true"] .group-data-\[completed\=true\]\:bg-primary {
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-primary) / var(--tw-bg-opacity, 1));
}

.group[data-completed="true"] .group-data-\[completed\=true\]\:bg-secondary {
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-secondary) / var(--tw-bg-opacity, 1));
}

.group[data-completed="true"] .group-data-\[completed\=true\]\:bg-success {
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-success) / var(--tw-bg-opacity, 1));
}

.group[data-completed="true"] .group-data-\[completed\=true\]\:bg-warning {
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-warning) / var(--tw-bg-opacity, 1));
}

.group[data-active="true"] .group-data-\[active\=true\]\:text-error-foreground {
  --tw-text-opacity: 1;
  color: rgb(var(--color-error-foreground) / var(--tw-text-opacity, 1));
}

.group[data-active="true"] .group-data-\[active\=true\]\:text-info-foreground {
  --tw-text-opacity: 1;
  color: rgb(var(--color-info-foreground) / var(--tw-text-opacity, 1));
}

.group[data-active="true"] .group-data-\[active\=true\]\:text-primary-foreground {
  --tw-text-opacity: 1;
  color: rgb(var(--color-primary-foreground) / var(--tw-text-opacity, 1));
}

.group[data-active="true"] .group-data-\[active\=true\]\:text-secondary-foreground {
  --tw-text-opacity: 1;
  color: rgb(var(--color-secondary-foreground) / var(--tw-text-opacity, 1));
}

.group[data-active="true"] .group-data-\[active\=true\]\:text-success-foreground {
  --tw-text-opacity: 1;
  color: rgb(var(--color-success-foreground) / var(--tw-text-opacity, 1));
}

.group[data-active="true"] .group-data-\[active\=true\]\:text-warning-foreground {
  --tw-text-opacity: 1;
  color: rgb(var(--color-warning-foreground) / var(--tw-text-opacity, 1));
}

.group[data-completed="true"] .group-data-\[completed\=true\]\:text-error-foreground {
  --tw-text-opacity: 1;
  color: rgb(var(--color-error-foreground) / var(--tw-text-opacity, 1));
}

.group[data-completed="true"] .group-data-\[completed\=true\]\:text-info-foreground {
  --tw-text-opacity: 1;
  color: rgb(var(--color-info-foreground) / var(--tw-text-opacity, 1));
}

.group[data-completed="true"] .group-data-\[completed\=true\]\:text-primary-foreground {
  --tw-text-opacity: 1;
  color: rgb(var(--color-primary-foreground) / var(--tw-text-opacity, 1));
}

.group[data-completed="true"] .group-data-\[completed\=true\]\:text-secondary-foreground {
  --tw-text-opacity: 1;
  color: rgb(var(--color-secondary-foreground) / var(--tw-text-opacity, 1));
}

.group[data-completed="true"] .group-data-\[completed\=true\]\:text-success-foreground {
  --tw-text-opacity: 1;
  color: rgb(var(--color-success-foreground) / var(--tw-text-opacity, 1));
}

.group[data-completed="true"] .group-data-\[completed\=true\]\:text-warning-foreground {
  --tw-text-opacity: 1;
  color: rgb(var(--color-warning-foreground) / var(--tw-text-opacity, 1));
}

.group[data-checked="true"] .group-data-\[checked\=true\]\:opacity-100 {
  opacity: 1;
}

.dark\:border-white:is(.dark *) {
  --tw-border-opacity: 1;
  border-color: rgb(var(--color-white) / var(--tw-border-opacity, 1));
}

.dark\:bg-surface:is(.dark *) {
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-surface) / var(--tw-bg-opacity, 1));
}

.dark\:bg-white:is(.dark *) {
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-white) / var(--tw-bg-opacity, 1));
}

.dark\:bg-opacity-70:is(.dark *) {
  --tw-bg-opacity: 0.7;
}

.dark\:text-black:is(.dark *) {
  --tw-text-opacity: 1;
  color: rgb(var(--color-black) / var(--tw-text-opacity, 1));
}

.dark\:text-white:is(.dark *) {
  --tw-text-opacity: 1;
  color: rgb(var(--color-white) / var(--tw-text-opacity, 1));
}

.dark\:after\:bg-white:is(.dark *)::after {
  content: var(--tw-content);
  --tw-bg-opacity: 1;
  background-color: rgb(var(--color-white) / var(--tw-bg-opacity, 1));
}

.dark\:hover\:text-primary:hover:is(.dark *) {
  --tw-text-opacity: 1;
  color: rgb(var(--color-primary) / var(--tw-text-opacity, 1));
}

.dark\:hover\:text-white:hover:is(.dark *) {
  --tw-text-opacity: 1;
  color: rgb(var(--color-white) / var(--tw-text-opacity, 1));
}

.dark\:focus\:text-white:focus:is(.dark *) {
  --tw-text-opacity: 1;
  color: rgb(var(--color-white) / var(--tw-text-opacity, 1));
}

.peer:hover ~ .dark\:peer-hover\:text-white:is(.dark *) {
  --tw-text-opacity: 1;
  color: rgb(var(--color-white) / var(--tw-text-opacity, 1));
}

.peer:focus ~ .dark\:peer-focus\:text-white:is(.dark *) {
  --tw-text-opacity: 1;
  color: rgb(var(--color-white) / var(--tw-text-opacity, 1));
}

.dark\:data-\[selected\=true\]\:text-white[data-selected="true"]:is(.dark *) {
  --tw-text-opacity: 1;
  color: rgb(var(--color-white) / var(--tw-text-opacity, 1));
}

@media (min-width: 640px) {

  .sm\:mx-auto {
    margin-left: auto;
    margin-right: auto;
  }

  .sm\:inline {
    display: inline;
  }

  .sm\:flex {
    display: flex;
  }

  .sm\:hidden {
    display: none;
  }

  .sm\:w-6\/12 {
    width: 50%;
  }

  .sm\:w-7\/12 {
    width: 58.333333%;
  }

  .sm\:w-72 {
    width: 18rem;
  }

  .sm\:w-\[28\%\] {
    width: 28%;
  }

  .sm\:w-auto {
    width: auto;
  }

  .sm\:w-full {
    width: 100%;
  }

  .sm\:max-w-md {
    max-width: 28rem;
  }

  .sm\:shrink-0 {
    flex-shrink: 0;
  }

  .sm\:grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .sm\:grid-cols-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .sm\:flex-row {
    flex-direction: row;
  }

  .sm\:items-center {
    align-items: center;
  }

  .sm\:gap-3 {
    gap: 0.75rem;
  }

  .sm\:rounded-lg {
    border-radius: calc(var(--radius) - 16px);
  }

  .sm\:p-6 {
    padding: 1.5rem;
  }

  .sm\:px-10 {
    padding-left: 2.5rem;
    padding-right: 2.5rem;
  }

  .sm\:px-4 {
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .sm\:px-6 {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }

  @media (min-width: 768px) {

    .sm\:md\:w-max {
      width: -moz-max-content;
      width: max-content;
    }
  }
}

@media (min-width: 768px) {

  .md\:block {
    display: block;
  }

  .md\:w-4\/12 {
    width: 33.333333%;
  }

  .md\:w-5\/12 {
    width: 41.666667%;
  }

  .md\:w-8\/12 {
    width: 66.666667%;
  }

  .md\:w-max {
    width: -moz-max-content;
    width: max-content;
  }

  .md\:grid-cols-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .md\:flex-row {
    flex-direction: row;
  }

  .md\:gap-12 {
    gap: 3rem;
  }

  .md\:text-2xl {
    font-size: 1.5rem;
    line-height: 2rem;
  }

  .md\:text-3xl {
    font-size: 1.875rem;
    line-height: 2.25rem;
  }

  .md\:text-4xl {
    font-size: 2.25rem;
    line-height: 2.5rem;
  }

  .md\:text-5xl {
    font-size: 3rem;
    line-height: 1;
  }

  .md\:text-lg {
    font-size: 1.125rem;
    line-height: 1.75rem;
  }

  .md\:text-xl {
    font-size: 1.25rem;
    line-height: 1.75rem;
  }
}

@media (min-width: 1024px) {

  .lg\:col-span-1 {
    grid-column: span 1 / span 1;
  }

  .lg\:col-span-2 {
    grid-column: span 2 / span 2;
  }

  .lg\:mt-0 {
    margin-top: 0px;
  }

  .lg\:hidden {
    display: none;
  }

  .lg\:w-10\/12 {
    width: 83.333333%;
  }

  .lg\:w-3\/12 {
    width: 25%;
  }

  .lg\:w-6\/12 {
    width: 50%;
  }

  .lg\:w-8\/12 {
    width: 66.666667%;
  }

  .lg\:w-\[812px\] {
    width: 812px;
  }

  .lg\:grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .lg\:grid-cols-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .lg\:grid-cols-5 {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }

  .lg\:grid-cols-6 {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }

  .lg\:flex-row {
    flex-direction: row;
  }

  .lg\:items-center {
    align-items: center;
  }

  .lg\:justify-start {
    justify-content: flex-start;
  }

  .lg\:px-8 {
    padding-left: 2rem;
    padding-right: 2rem;
  }

  .lg\:text-2xl {
    font-size: 1.5rem;
    line-height: 2rem;
  }

  .lg\:text-3xl {
    font-size: 1.875rem;
    line-height: 2.25rem;
  }

  .lg\:text-4xl {
    font-size: 2.25rem;
    line-height: 2.5rem;
  }

  .lg\:text-5xl {
    font-size: 3rem;
    line-height: 1;
  }

  .lg\:text-6xl {
    font-size: 3.75rem;
    line-height: 1;
  }

  .lg\:text-xl {
    font-size: 1.25rem;
    line-height: 1.75rem;
  }
}

@media (min-width: 1280px) {

  .xl\:flex {
    display: flex;
  }

  .xl\:w-2\/12 {
    width: 16.666667%;
  }

  .xl\:w-\[1418px\] {
    width: 1418px;
  }

  .xl\:w-\[812px\] {
    width: 812px;
  }
}

@media (min-width: 1600px) {

  .\33xl\:p-1 {
    padding: 0.25rem;
  }
}

.data-\[orientation\=horizontal\]\:\[\&\:first-child\:not\(\[data-variant\=ghost\]\)\]\:\[\&_\*\]\:rounded-r-none *:first-child:not([data-variant=ghost])[data-orientation="horizontal"] {
  border-top-right-radius: 0px;
  border-bottom-right-radius: 0px;
}

.data-\[orientation\=vertical\]\:\[\&\:first-child\:not\(\[data-variant\=ghost\]\)\]\:\[\&_\*\]\:rounded-b-none *:first-child:not([data-variant=ghost])[data-orientation="vertical"] {
  border-bottom-right-radius: 0px;
  border-bottom-left-radius: 0px;
}

.data-\[orientation\=horizontal\]\:\[\&\:last-child\:not\(\[data-variant\=ghost\]\)\]\:\[\&_\*\]\:rounded-l-none *:last-child:not([data-variant=ghost])[data-orientation="horizontal"] {
  border-top-left-radius: 0px;
  border-bottom-left-radius: 0px;
}

.data-\[orientation\=vertical\]\:\[\&\:last-child\:not\(\[data-variant\=ghost\]\)\]\:\[\&_\*\]\:rounded-t-none *:last-child:not([data-variant=ghost])[data-orientation="vertical"] {
  border-top-left-radius: 0px;
  border-top-right-radius: 0px;
}

.data-\[orientation\=horizontal\]\:\[\&\:last-child\:not\(\[data-variant\=ghost\]\)\]\:\[\&_\*\]\:border-l-0 *:last-child:not([data-variant=ghost])[data-orientation="horizontal"] {
  border-left-width: 0px;
}

.data-\[orientation\=vertical\]\:\[\&\:last-child\:not\(\[data-variant\=ghost\]\)\]\:\[\&_\*\]\:border-t-0 *:last-child:not([data-variant=ghost])[data-orientation="vertical"] {
  border-top-width: 0px;
}

.data-\[orientation\=horizontal\]\:\[\&\:not\(\:first-child\)\:not\(\:last-child\)\:not\(\[data-variant\=ghost\]\)\]\:\[\&_\*\]\:rounded-none *:not(:first-child):not(:last-child):not([data-variant=ghost])[data-orientation="horizontal"] {
  border-radius: 0px;
}

.data-\[orientation\=vertical\]\:\[\&\:not\(\:first-child\)\:not\(\:last-child\)\:not\(\[data-variant\=ghost\]\)\]\:\[\&_\*\]\:rounded-none *:not(:first-child):not(:last-child):not([data-variant=ghost])[data-orientation="vertical"] {
  border-radius: 0px;
}

.data-\[orientation\=horizontal\]\:\[\&\:not\(\:first-child\)\:not\(\:last-child\)\:not\(\[data-variant\=ghost\]\)\]\:\[\&_\*\]\:border-l-0 *:not(:first-child):not(:last-child):not([data-variant=ghost])[data-orientation="horizontal"] {
  border-left-width: 0px;
}

.data-\[orientation\=vertical\]\:\[\&\:not\(\:first-child\)\:not\(\:last-child\)\:not\(\[data-variant\=ghost\]\)\]\:\[\&_\*\]\:border-t-0 *:not(:first-child):not(:last-child):not([data-variant=ghost])[data-orientation="vertical"] {
  border-top-width: 0px;
}

.\[\&_data-slot\=icon\]\:h-5 data-slot=icon {
  height: 1.25rem;
}

.\[\&_data-slot\=icon\]\:w-5 data-slot=icon {
  width: 1.25rem;
}

.\[\&_data-slot\=icon\]\:cursor-pointer data-slot=icon {
  cursor: pointer;
}

.\[\&_data-slot\=icon\]\:text-inherit data-slot=icon {
  color: inherit;
}

.\[\&_data-slot\=placeholder\]\:text-foreground\/60 data-slot=placeholder {
  color: rgb(var(--color-foreground) / 0.6);
}
