.o-message {
  --message-color: var(--o-color-info2);
  --message-text-size: var(--o-font_size-tip1);
  --message-text-height: var(--o-line_height-tip1);
  --message-title-size: var(--o-font_size-tip1);
  --message-title-height: var(--o-line_height-tip1);
  --message-bg-color: var(--o-color-fill2);
  --message-shadow: var(--o-shadow-2);
  --message-align: start;
  --message-radius: var(--o-radius_control-s);
  --message-padding: 8px 16px;
  --message-icon-size: var(--o-icon_size_control-m);
  --message-icon-gap: 8px;
  --message-icon-close-color: var(--o-color-info2);
  --message-icon-close-color-hover: var(--o-color-info1);
  --message-icon-close-color-active: var(--o-color-info1);
  --message-word-break: break-word;
  --message-text-align: center;
  --message-content-max-row: 0;
  --message-gap: 16px;
  --message-title-gap: 4px;
}

.o-message-colorful {
  --message-shadow: none;
  --message-padding: 4px 12px 8px;
  --message-align: start;
  --message-text-align: left;
}

.o-message-info {
  --message-icon-color: var(--o-color-auxiliary5, rgb(var(--o-blue-6)));
}
.o-message-info.o-message-colorful {
  --message-bg-color: var(--o-blue-6);
}

.o-message-success {
  --message-icon-color: var(--o-color-success1, rgb(var(--o-green-6)));
}
.o-message-success.o-message-colorful {
  --message-bg-color: var(--o-green-6);
}

.o-message-warning {
  --message-icon-color: var(--o-color-warning1, rgb(var(--o-orange-6)));
}
.o-message-warning.o-message-colorful {
  --message-bg-color: var(--o-orange-6);
}

.o-message-danger {
  --message-icon-color: var(--o-color-danger1, rgb(var(--o-red-6)));
}
.o-message-danger.o-message-colorful {
  --message-bg-color: var(--o-red-6);
}

.o-message-loading {
  --message-icon-color: var(--o-color-info1);
}
.o-message-loading.o-message-colorful {
  --message-bg-color: var(--o-color-primary4-light);
}

.o-message-list {
  --message-list-offset: 32px;
}

.o-message {
  display: flex;
  align-items: var(--message-align);
  padding: var(--message-padding);
  background-color: var(--message-bg-color);
  border-radius: var(--message-radius);
  box-shadow: var(--message-shadow);
  width: fit-content;
  transition: all var(--o-duration-m1) var(--o-easing-standard-out);
  text-align: center;
}

.o-message-colorful:not(.o-message-loading) {
  overflow: hidden;
  position: relative;
  background-color: rgba(var(--message-bg-color), 0.05);
}
.o-message-colorful:not(.o-message-loading):after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 4px;
  height: 100%;
  background-color: rgb(var(--message-bg-color));
}

.o-message-main {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  font-size: var(--message-text-size);
  line-height: var(--message-text-height);
  color: var(--message-color);
}

.o-message-content {
  overflow: hidden;
  text-overflow: ellipsis;
  text-align: var(--message-text-align);
  word-break: var(--message-word-break);
  display: -webkit-box;
  -webkit-line-clamp: var(--message-content-max-row);
  -webkit-box-orient: vertical;
}

.o-message-title {
  margin-bottom: var(--message-title-gap);
  font-size: var(--message-title-size);
  line-height: var(--message-title-height);
  font-weight: 600;
}

.o-message-icon {
  font-size: var(--message-icon-size);
  color: var(--message-icon-color);
  margin-right: var(--message-icon-gap);
  display: inline-flex;
  align-items: center;
}

.o-message-close {
  display: inline-flex;
  align-items: center;
  cursor: pointer;
  margin-left: var(--message-icon-gap);
  font-size: var(--message-icon-size);
  color: var(--message-icon-close-color);
  transition: color var(--o-duration-s) var(--o-easing-standard);
}
@media (hover: hover) {
  .o-message-close:hover {
    color: var(--message-icon-close-color-hover);
  }
}
.o-message-close:active {
  color: var(--message-icon-close-color-active);
}

.o-message-list {
  position: fixed;
  z-index: 1001;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  flex-direction: column;
  align-items: center;
}

.o-message-list-top {
  top: var(--message-list-offset);
}
.o-message-list-top .o-message + .o-message {
  margin-top: var(--message-gap);
}

.o-message-list-bottom {
  bottom: var(--message-list-offset);
}
.o-message-list-bottom .o-message + .o-message {
  margin-top: var(--message-gap);
}

.o-message-fade-enter-from {
  opacity: 0;
}

.o-message-fade-enter-active,
.o-message-fade-leave-active {
  transition: all var(--o-duration-m1) var(--o-easing-standard-out);
}

.o-message-fade-leave-to {
  opacity: 0;
}

@media (min-width: 841px) and (max-width: 1680px) {
  .o-message.o-message-colorful {
    --message-padding: 4px 8px 8px;
  }
}
@media (min-width: 1201px) and (max-width: 1440px) {
  .o-message {
    --message-padding: 7px 12px;
    --message-gap: 12px;
  }
}
@media (max-width: 1200px) {
  .o-message {
    --message-text-size: var(--o-font_size-tip2);
    --message-text-height: var(--o-line_height-tip2);
    --message-title-size: var(--o-font_size-tip2);
    --message-title-height: var(--o-line_height-tip2);
    --message-padding: 7px 12px;
    --message-gap: 8px;
  }
}
@media (max-width: 840px) {
  .o-message-colorful {
    --message-padding: 4px 12px 8px;
  }
}