.login-page {
  position: relative;
  min-height: 100vh;
  width: 100%;
  background: url("https://static-cdn.tec-do.cn/digital-crew/1777541815687_269f38b115b708604e04f9a9d1fb1452f831a6dc1.png") no-repeat;
  background-size: 100% auto;
}
.login-page__logo {
  position: absolute;
  top: 1.80556vw;
  left: 3.40278vw;
}
.login-page__logo img {
  width: 11.38889vw;
  height: auto;
  display: block;
}
.login-page__agent {
  width: 22.84722vw;
  margin: 0 0 2.36111vw 1.80556vw;
}
.login-page__agent img {
  width: 100%;
}
.login-page__left {
  position: absolute;
  left: 14.30556vw;
  top: 50%;
  transform: translateY(-60%);
  width: 32.63889vw;
}
.login-page__title {
  margin: 0;
  font-size: 2.77778vw;
  font-weight: 600;
  line-height: 4.09722vw;
  color: #00063d;
}
.login-page__title-highlight {
  color: #0080ff;
}
.login-page__subtitle {
  margin: 1.66667vw 0 0;
  font-size: 0.97222vw;
  line-height: 1.52778vw;
  color: #7c8ba2;
}
.login-page__right {
  position: absolute;
  left: 55.90278vw;
  top: 50%;
  transform: translateY(-60%);
  height: 29.79167vw;
  width: 33.33333vw;
  padding: 3.47222vw 2.77778vw;
  background: #ffffff;
  border-radius: 1.66667vw;
  z-index: 2;
}
.login-page__form-title {
  margin: 0 0 3.47222vw;
  font-size: 1.66667vw;
  font-weight: 600;
  line-height: 2.22222vw;
  color: #0f1115;
}
.login-page__input-wrapper {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
  height: 3.05556vw;
  margin-bottom: 1.66667vw;
  border: 1px solid #eaedf6;
  border-radius: 0.55556vw;
  overflow: hidden;
}
.login-page__input {
  flex: 1;
  height: 100%;
  padding: 0 1.11111vw;
  border: none;
  outline: none;
  background: transparent;
  font-size: 0.97222vw;
  line-height: 1.52778vw;
  color: #0f1115;
}
.login-page__input::placeholder {
  color: #b8bed5;
}
.login-page__send-code {
  flex-shrink: 0;
  padding: 0 1.11111vw;
  border: none;
  background: transparent;
  font-size: 0.97222vw;
  line-height: 1.52778vw;
  color: #3760f6;
  cursor: pointer;
}
.login-page__send-code:disabled {
  color: #b8bed5;
  cursor: not-allowed;
}
.login-page__agreement {
  height: 1.25vw;
  display: flex;
  align-items: center;
  gap: 0.55556vw;
}
.login-page__checkbox {
  position: relative;
  width: 1.11111vw;
  height: 1.11111vw;
  flex-shrink: 0;
  cursor: pointer;
}
.login-page__checkbox input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}
.login-page__checkbox input:checked + .login-page__checkbox-box {
  background: #3861fb;
  border-color: #3861fb;
}
.login-page__checkbox input:checked + .login-page__checkbox-box::after {
  opacity: 1;
}
.login-page__checkbox-box {
  position: relative;
  display: block;
  width: 1.11111vw;
  height: 1.11111vw;
  border: 1px solid #eaedf6;
  border-radius: 0.27778vw;
  background: #ffffff;
}
.login-page__checkbox-box::after {
  content: "";
  position: absolute;
  left: 0.41667vw;
  top: 0.20833vw;
  width: 0.27778vw;
  height: 0.55556vw;
  border: solid #ffffff;
  border-width: 0 0.13889vw 0.13889vw 0;
  transform: rotate(45deg);
  opacity: 0;
  transition: opacity 0.2s ease;
}
.login-page__agreement-text {
  font-size: 0.83333vw;
  line-height: 1.25vw;
  color: #7c8ba2;
}
.login-page__agreement-link {
  color: #3861fb;
  text-decoration: none;
}
.login-page__login-btn {
  width: 100%;
  height: 3.05556vw;
  border: none;
  border-radius: 0.55556vw;
  background: #94bfff;
  color: #ffffff;
  font-size: 1.25vw;
  font-weight: 500;
  line-height: 1.94444vw;
  margin-top: 3.05556vw;
  cursor: not-allowed;
  transition: all 0.2s ease;
}
.login-page__login-btn--active {
  background: #3861fb;
  cursor: pointer;
}
.login-page__login-btn--active:hover {
  background: #2f56eb;
}
.login-page__login-btn:disabled {
  cursor: not-allowed;
}
@media (max-width: 1440px) {
  .login-page__left {
    left: 80px;
    width: 420px;
  }
  .login-page__right {
    right: 80px;
    left: auto;
  }
}
@media (max-width: 1100px) {
  .login-page {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 120px 24px 40px;
  }
  .login-page__left {
    display: none;
  }
  .login-page__right {
    position: relative;
    left: auto;
    top: auto;
    right: auto;
    transform: none;
    width: min(480px, 100%);
  }
  .login-page__form-container {
    min-height: 540px;
  }
}
@media (max-width: 640px) {
  .login-page {
    padding: 96px 16px 24px;
  }
  .login-page__logo {
    left: 16px;
    top: 16px;
  }
  .login-page__logo img {
    width: 132px;
  }
  .login-page__logo-text {
    left: 45px;
    top: 26px;
    font-size: 12px;
    letter-spacing: 5px;
  }
  .login-page__form-container {
    min-height: 500px;
  }
  .login-page__form-title {
    left: 24px;
    top: 32px;
    font-size: 22px;
  }
  .login-page__form {
    padding: 112px 24px 32px;
    height: 392px;
  }
  .login-page__login-btn {
    left: 24px;
    width: calc(100% - 48px);
    top: 302px;
  }
}.website-page {
  width: 100%;
  min-height: 100vh;
  background: #ffffff;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Helvetica Neue", Arial, sans-serif;
  color: #0D162F;
  overflow-x: hidden;
}.website-header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  background: transparent;
  z-index: 50;
  transition: background 0.2s ease;
}
.website-header--scrolled {
  background: rgba(255, 255, 255, 0.2);
  backdrop-filter: blur(0.83333vw);
}
.website-header__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0.55556vw 3.47222vw;
}
.website-header__logo {
  width: 11.38889vw;
}
.website-header__user-info {
  display: flex;
  align-items: center;
  gap: 0.41667vw;
}
.website-header__avatar {
  width: 1.66667vw;
  height: 1.66667vw;
}
.website-header__phone {
  font-size: 0.97222vw;
  color: #0D162F;
  line-height: 1.38889vw;
}
.website-header__logout {
  width: 1.11111vw;
  height: 1.11111vw;
  cursor: pointer;
  opacity: 0.8;
  transition: opacity 0.2s ease;
}
.website-header__logout:hover {
  opacity: 1;
}
.website-header__login-btn {
  height: 2.63889vw;
  border-radius: 0.41667vw;
  color: #4285F4;
  border: 1px solid #4285F4;
  line-height: 2.63889vw;
  padding: 0 1.38889vw;
  font-size: 0.97222vw;
  cursor: pointer;
}.website-hero {
  padding-top: 14.51389vw;
  background: url("https://static-cdn.tec-do.cn/digital-crew/1777520504064_1112x.png") no-repeat;
  background-size: 100% auto;
}
.website-hero__content {
  margin: 0 21.94444vw;
  text-align: left;
}
.website-hero__title {
  font-weight: 600;
  font-size: 4.16667vw;
  line-height: 5.55556vw;
  letter-spacing: -0.16667vw;
  color: #00063D;
}
.website-hero__title-line {
  display: block;
}
.website-hero__title-highlight {
  color: #0080FF;
}
.website-hero__subtitle {
  font-size: 1.38889vw;
  line-height: 2.5vw;
  color: #171214;
  margin-top: 1.66667vw;
}
.website-hero__cta {
  margin-top: 2.22222vw;
  cursor: pointer;
  transition: all 0.2s ease;
  border: none;
  background: #091221;
  color: #ffffff;
  padding: 0.83333vw 1.94444vw;
  border-radius: 0.55556vw;
  font-size: 1.11111vw;
  line-height: 1.94444vw;
}
.website-hero__cta:hover {
  opacity: 0.85;
}
.website-hero__image {
  width: 56.38889vw;
  margin: 7.63889vw 21.94444vw 0;
}.website-team__header {
  text-align: center;
  padding: 10.41667vw 0 5.55556vw;
}
.website-team__title {
  font-size: 2.77778vw;
  font-weight: 600;
  line-height: 3.33333vw;
  color: #0D162F;
}
.website-team__title-highlight {
  color: #146EF5;
}
.website-team__subtitle {
  font-size: 1.38889vw;
  line-height: 2.5vw;
  color: #868A97;
  margin-top: 1.11111vw;
}.team-member-cards {
  position: relative;
  width: 100%;
}
.team-member-cards__viewport {
  overflow: hidden;
  max-width: 100vw;
  margin: 0 auto;
}
.team-member-cards__track {
  display: flex;
  transition: transform 0.5s cubic-bezier(0.4, 0, 0.2, 1);
  will-change: transform;
}
.team-member-cards__page {
  display: flex;
  justify-content: center;
  gap: 0.83333vw;
  flex: 0 0 100%;
  min-width: 100%;
}
.team-member-cards__card {
  width: 25.41667vw;
  border-radius: 1.80556vw;
  background: #FAFAFA;
  text-align: center;
}
.team-member-cards__card-header {
  margin-top: 1.94444vw;
}
.team-member-cards__card-avatar {
  width: 9.72222vw;
  height: 9.72222vw;
  margin: 0 auto;
}
.team-member-cards__card-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.team-member-cards__card-name {
  font-size: 1.45833vw;
  color: #091221;
  margin-bottom: 0.55556vw;
  line-height: 1.94444vw;
}
.team-member-cards__card-desc {
  font-size: 0.97222vw;
  color: #868A97;
  line-height: 1.52778vw;
}
.team-member-cards__card-description {
  height: 5.83333vw;
  font-size: 0.97222vw;
  color: #0D162F;
  line-height: 1.45833vw;
  padding: 0 3.19444vw;
  text-align: left;
}
.team-member-cards__card-tags {
  display: flex;
  height: 2.08333vw;
  justify-content: space-between;
  padding: 0.27778vw 3.19444vw 0;
}
.team-member-cards__card-tag {
  width: 5.55556vw;
  border-radius: 2.36111vw;
  background: #F3F3F3;
  height: 2.08333vw;
  line-height: 2.08333vw;
  font-weight: 500;
  font-size: 0.83333vw;
  color: #091221;
  text-align: center;
}
.team-member-cards__card-action {
  width: 7.22222vw;
  height: 2.36111vw;
  line-height: 2.36111vw;
  margin: 1.38889vw 0 2.5vw;
  background: #091221;
  border-radius: 0.55556vw;
  color: #ffffff;
  font-size: 0.97222vw;
  font-weight: 500;
  transition: all 0.2s ease;
}
.team-member-cards__card-action:hover:not(:disabled) {
  opacity: 0.8;
}
.team-member-cards__card-action--disabled {
  opacity: 0.3;
  cursor: not-allowed;
}
.team-member-cards__pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 2.77778vw;
  padding-top: 3.47222vw;
}
.team-member-cards__pagination-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.22222vw;
  height: 2.22222vw;
  border-radius: 50%;
  cursor: pointer;
  transition: all 0.2s ease;
  color: #676C78;
}
.team-member-cards__pagination-btn:disabled {
  opacity: 0.3;
  cursor: not-allowed;
}
.team-member-cards__pagination-btn img {
  width: 100%;
}.website-packages__title {
  font-size: 2.77778vw;
  font-weight: 600;
  line-height: 3.33333vw;
  color: #0D162F;
  text-align: center;
  padding-top: 13.61111vw;
}
.website-packages__subtitle {
  font-size: 1.38889vw;
  line-height: 2.5vw;
  color: #868A97;
  margin-top: 1.11111vw;
  text-align: center;
}
.website-packages__cards {
  display: flex;
  justify-content: center;
  gap: 2.77778vw;
  padding-top: 4.86111vw;
}
.website-packages__card {
  width: 25.27778vw;
  border-radius: 1.11111vw;
  border: 1px solid #EDEDEE;
  text-align: center;
}
.website-packages__card-image {
  width: 100%;
  border-radius: 1.11111vw 1.11111vw 0 0;
  overflow: hidden;
}
.website-packages__card-tags {
  display: flex;
  justify-content: space-between;
  gap: 0.69444vw;
  margin: 2.77778vw 1.38889vw 1.38889vw;
}
.website-packages__card-tag {
  flex: 1;
  height: 2.08333vw;
  line-height: 2.08333vw;
  text-align: center;
  border-radius: 2.36111vw;
  padding: 0 0.83333vw;
  font-weight: 500;
  font-size: 0.83333vw;
  color: #091221;
  background: #F3F3F3;
}
.website-packages__card-title {
  font-size: 1.38889vw;
  font-weight: 600;
  color: #091221;
  margin-bottom: 0.55556vw;
}
.website-packages__card-subhead {
  font-size: 0.90278vw;
  color: #091221;
  margin-bottom: 1.66667vw;
}
.website-packages__card-btn {
  width: 6.94444vw;
  height: 2.22222vw;
  line-height: 2.22222vw;
  border-radius: 0.55556vw;
  background: #091221;
  color: #ffffff;
  font-size: 0.90278vw;
  font-weight: 500;
  cursor: pointer;
  transition: opacity 0.2s ease;
  margin-bottom: 1.52778vw;
}
.website-packages__card-btn:hover:not(:disabled) {
  opacity: 0.85;
}
.website-packages__card-btn--disabled {
  opacity: 0.4;
  cursor: not-allowed;
}.website-welcome__content {
  padding-top: 15.97222vw;
  text-align: center;
}
.website-welcome__title {
  font-size: 2.77778vw;
  font-weight: 600;
  line-height: 3.33333vw;
  color: #0D162F;
}
.website-welcome__title .highlight {
  color: #0080FF;
}
.website-welcome__subtitle {
  font-size: 1.38889vw;
  line-height: 2.5vw;
  color: #868A97;
  margin-top: 1.11111vw;
}
.website-welcome__image {
  width: 64.30556vw;
  margin: 2.77778vw auto 0;
}.website-cta {
  text-align: center;
  padding: 13.88889vw 0 8.88889vw;
}
.website-cta__title {
  font-size: 2.77778vw;
  font-weight: 600;
  color: #091221;
  line-height: 3.33333vw;
  margin-bottom: 2.77778vw;
}
.website-cta__title .highlight {
  color: #165DFF;
}
.website-cta__btn {
  width: 7.91667vw;
  height: 3.125vw;
  line-height: 3.125vw;
  cursor: pointer;
  transition: all 0.2s ease;
  background: #091221;
  color: #ffffff;
  border-radius: 0.55556vw;
  font-size: 1.04167vw;
}
.website-cta__btn:hover {
  opacity: 0.85;
}.website-footer {
  position: relative;
  min-height: 30.76389vw;
  background: url("https://static-cdn.tec-do.cn/digital-crew/1777541305587_astro-island2x.png") no-repeat;
  background-size: 100% auto;
  padding: 6.66667vw 19.93056vw;
}
.website-footer__content {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10.90278vw;
  margin-bottom: 4.16667vw;
}
.website-footer__logo-section {
  flex-shrink: 0;
  width: 12.15278vw;
}
.website-footer__logo-image {
  width: 12.15278vw;
  object-fit: contain;
  margin-bottom: 0.34722vw;
}
.website-footer__nav {
  display: flex;
  flex-direction: column;
  gap: 0.83333vw;
  flex-shrink: 0;
}
.website-footer__nav-link {
  font-size: 0.97222vw;
  line-height: 1.38889vw;
  color: #000000;
  text-decoration: none;
  transition: color 0.2s ease;
}
.website-footer__nav-link:hover {
  color: #165DFF;
}
.website-footer__qr-section {
  display: flex;
  gap: 1.66667vw;
  flex-shrink: 0;
  margin-left: auto;
}
.website-footer__qr-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.41667vw;
}
.website-footer__qr-code {
  width: 6.66667vw;
  height: 6.66667vw;
  background: #000000;
}
.website-footer__qr-code img {
  width: 100%;
}
.website-footer__qr-label {
  font-size: 0.97222vw;
  line-height: 1.38889vw;
  color: #000000;
  text-align: center;
}
.website-footer__copyright {
  padding-top: 1.66667vw;
  border-top: 1px solid rgba(186, 186, 186, 0.41);
}
.website-footer__copyright p {
  font-size: 0.83333vw;
  line-height: 1.11111vw;
  color: #252628;
}.employee-selection-modal {
  position: fixed;
  inset: 0;
  z-index: 1000;
  display: flex;
  align-items: center;
  justify-content: center;
}
.employee-selection-modal__overlay {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.5);
  backdrop-filter: blur(0.27778vw);
}
.employee-selection-modal__container {
  position: relative;
  width: 81.94444vw;
  max-width: 90vw;
  max-height: 90vh;
  background: #ffffff;
  border-radius: 1.66667vw;
  box-shadow: 0px 1.38889vw 1.73611vw -0.34722vw rgba(0, 0, 0, 0.1), 0px 0.55556vw 0.69444vw -0.41667vw rgba(0, 0, 0, 0.1);
  display: flex;
  flex-direction: column;
  overflow: hidden;
}
.employee-selection-modal__header {
  position: relative;
  height: 4.16667vw;
  padding: 0 1.66667vw;
  border-bottom: 0.5px solid #e5e7eb;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.employee-selection-modal__title {
  font-size: 1.25vw;
  font-weight: 500;
  color: #101828;
  line-height: 4.16667vw;
}
.employee-selection-modal__close {
  width: 1.38889vw;
  height: 1.38889vw;
  cursor: pointer;
  transition: all 0.2s ease;
}
.employee-selection-modal__close img {
  width: 1.38889vw;
  height: 1.38889vw;
  display: block;
}
.employee-selection-modal__content {
  flex: 1;
  overflow-y: auto;
  padding: 2.5vw 1.80556vw 1.66667vw;
}
.employee-selection-modal__section:not(:last-child) {
  margin-bottom: 2.77778vw;
}
.employee-selection-modal__section-title {
  font-size: 0.97222vw;
  line-height: 1.38889vw;
  color: #6a7282;
  margin-bottom: 1.38889vw;
}
.employee-selection-modal__teams {
  display: flex;
  gap: 1.66667vw;
}
.employee-selection-modal__team {
  flex: 1;
  max-width: 18.33333vw;
  padding: 1.38889vw 1.94444vw;
  border: 1px solid #e5e7eb;
  border-radius: 0.69444vw;
  cursor: pointer;
  transition: all 0.2s ease;
}
.employee-selection-modal__team--disabled {
  opacity: 0.4;
  cursor: not-allowed;
}
.employee-selection-modal__team-header {
  display: flex;
  align-items: center;
  gap: 1.18056vw;
  margin-bottom: 0.55556vw;
}
.employee-selection-modal__checkbox {
  display: flex;
  align-items: center;
  justify-content: center;
}
.employee-selection-modal__checkbox-box {
  width: 1.38889vw;
  height: 1.38889vw;
  border: 1px solid #c7ccd5;
  border-radius: 0.69444vw;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.2s ease;
  position: relative;
}
.employee-selection-modal__checkbox-box--checked {
  border-color: #3961fa;
}
.employee-selection-modal__checkbox-box--checked::after {
  content: "";
  position: absolute;
  width: 0.55556vw;
  height: 0.55556vw;
  border-radius: 50%;
  background: #3961fa;
}
.employee-selection-modal__team-name {
  font-size: 1.11111vw;
  font-weight: 500;
  line-height: 1.38889vw;
  color: #101828;
}
.employee-selection-modal__team-desc {
  font-size: 0.83333vw;
  line-height: 1.38889vw;
  color: #6a7282;
  padding-left: 2.56944vw;
  margin: 0;
}
.employee-selection-modal__employees {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1.31944vw;
}
.employee-selection-modal__employee {
  padding: 1.59722vw 1.73611vw;
  border: 1px solid #e5e7eb;
  border-radius: 0.69444vw;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}
.employee-selection-modal__employee-avatar {
  width: 2.77778vw;
  height: 2.77778vw;
  margin-bottom: 0.76389vw;
}
.employee-selection-modal__employee-avatar img {
  width: 100%;
}
.employee-selection-modal__employee-name {
  font-size: 1.11111vw;
  font-weight: 500;
  line-height: 1.38889vw;
  color: #101828;
  margin-bottom: 0.76389vw;
}
.employee-selection-modal__employee-desc {
  font-size: 0.83333vw;
  line-height: 1.38889vw;
  color: #6a7282;
}
.employee-selection-modal__footer {
  padding: 5vw 1.66667vw 1.66667vw;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 1.11111vw;
}
.employee-selection-modal__btn {
  height: 3.05556vw;
  padding: 0.55556vw 1.11111vw;
  border-radius: 0.55556vw;
  font-size: 1.11111vw;
  line-height: 1.94444vw;
  cursor: pointer;
  transition: all 0.2s ease;
  border: none;
}
.employee-selection-modal__btn--cancel {
  min-width: 8.61111vw;
  background: #f0f1f9;
  color: #55597e;
}
.employee-selection-modal__btn--primary {
  min-width: 8.75vw;
  background: #3961fa;
  color: #ffffff;
  font-weight: 500;
}
.employee-selection-modal__btn--primary:hover {
  background: #2d4ed8;
}
.employee-selection-modal__btn--primary:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}.deploy-channel-modal {
  position: fixed;
  inset: 0;
  z-index: 100;
  display: flex;
  align-items: center;
  justify-content: center;
}
.deploy-channel-modal__overlay {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.5);
  backdrop-filter: blur(0.27778vw);
}
.deploy-channel-modal__container {
  position: relative;
  width: 45.69444vw;
  height: 27.36111vw;
  background: #ffffff;
  border-radius: 1.66667vw;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}
.deploy-channel-modal__header {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 4.16667vw;
  padding: 1.11111vw 1.66667vw;
  border-bottom: 0.5px solid #e5e7eb;
}
.deploy-channel-modal__back {
  position: absolute;
  left: 1.66667vw;
  top: 50%;
  transform: translateY(-50%);
  width: 1.66667vw;
  height: 1.66667vw;
  cursor: pointer;
}
.deploy-channel-modal__title {
  margin: 0 0 0 2.77778vw;
  font-size: 1.25vw;
  font-weight: 500;
  line-height: 1.94444vw;
  color: #101828;
  text-align: center;
}
.deploy-channel-modal__close {
  width: 1.38889vw;
  height: 1.38889vw;
  cursor: pointer;
}
.deploy-channel-modal__content {
  flex: 1;
  padding: 2.15278vw 1.875vw;
  overflow-y: auto;
}
.deploy-channel-modal__channels {
  display: flex;
  flex-direction: column;
  gap: 0.83333vw;
}
.deploy-channel-modal__channel {
  display: flex;
  align-items: center;
  gap: 0.76389vw;
  padding: 1.59722vw 1.73611vw;
  background: #ffffff;
  border: 0.667px solid #e5e7eb;
  border-radius: 0.69444vw;
  cursor: pointer;
  transition: all 0.2s ease;
}
.deploy-channel-modal__channel:hover:not(.deploy-channel-modal__channel--disabled) {
  border-color: #3861fb;
  background: #fafbff;
}
.deploy-channel-modal__channel--disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.deploy-channel-modal__checkbox {
  flex-shrink: 0;
}
.deploy-channel-modal__checkbox-box {
  width: 1.38889vw;
  height: 1.38889vw;
  border: 1px solid #d1d5db;
  border-radius: 0.69444vw;
  background: #ffffff;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.2s ease;
  position: relative;
}
.deploy-channel-modal__checkbox-box--checked {
  background: #ffffff;
  border-color: #3961fb;
}
.deploy-channel-modal__checkbox-box--checked::after {
  content: "";
  position: absolute;
  width: 0.55556vw;
  height: 0.55556vw;
  border-radius: 50%;
  background: #3961fb;
}
.deploy-channel-modal__channel-icon {
  flex-shrink: 0;
  width: 2.5vw;
  height: 2.5vw;
  display: flex;
  align-items: center;
  justify-content: center;
}
.deploy-channel-modal__channel-icon img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.deploy-channel-modal__channel-name {
  flex: 1;
  font-size: 1.11111vw;
  line-height: 1.66667vw;
  color: rgba(13, 13, 13, 0.9);
}
.deploy-channel-modal__footer {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 1.11111vw;
  padding: 1.66667vw 2.22222vw;
  border-top: 1px solid #f3f4f6;
}
.deploy-channel-modal__btn {
  height: 3.05556vw;
  padding: 0.55556vw 1.11111vw;
  border: none;
  border-radius: 0.55556vw;
  font-size: 1.11111vw;
  line-height: 1.94444vw;
  cursor: pointer;
  transition: all 0.2s ease;
}
.deploy-channel-modal__btn--secondary {
  width: 8.61111vw;
  background: #f0f1f9;
  color: #55597e;
}
.deploy-channel-modal__btn--secondary:hover {
  background: #e5e7f0;
}
.deploy-channel-modal__btn--primary {
  width: 8.75vw;
  background: #3961fa;
  color: #ffffff;
}
.deploy-channel-modal__btn--primary:hover:not(:disabled) {
  background: #2f56eb;
}
.deploy-channel-modal__btn--primary:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}.onboard-progress-notice {
  position: fixed;
  top: 1.66667vw;
  right: 1.66667vw;
  z-index: 1000;
  width: 24.16667vw;
  overflow: hidden;
  border: 1px solid #F3F2F8;
  background: #F3F2F8;
  border-radius: 0.83333vw;
}

.onboard-progress-notice__close {
  position: absolute;
  top: 0.97222vw;
  right: 0.83333vw;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.38889vw;
  height: 1.38889vw;
  border: none;
  border-radius: 0.55556vw;
  background: transparent;
  color: rgba(13, 13, 13, 0.58);
  font-size: 1.25vw;
  line-height: 1;
  cursor: pointer;
  transition: background-color 0.2s ease, color 0.2s ease, transform 0.2s ease;
}

.onboard-progress-notice__body {
  display: flex;
  align-items: center;
  padding: 0.83333vw;
}

.onboard-progress-notice__text {
  margin: 0;
  font-size: 1.11111vw;
  line-height: 1.66667vw;
  color: rgba(13, 13, 13, 0.9);
  text-align: left;
  letter-spacing: 0.01em;
}

@keyframes onboard-progress-notice-enter {
  from {
    opacity: 0;
    transform: translate3d(0, -10px, 0) scale(0.98);
  }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0) scale(1);
  }
}.auth-callback-page {
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  overflow: hidden;
}

.auth-callback-page::before {
  content: "";
  position: absolute;
  top: -50%;
  left: -50%;
  width: 200%;
  height: 200%;
  background: radial-gradient(circle, rgba(100, 116, 139, 0.1) 0%, transparent 50%);
  animation: auth-callback-bg-rotate 30s linear infinite;
}

.auth-callback-page__card {
  position: relative;
  z-index: 1;
  min-width: 25vw;
  padding: 3.33333vw 4.44444vw;
  text-align: center;
  background: #ffffff;
  border-radius: 1.11111vw;
  box-shadow: 0 0.41667vw 0.69444vw rgba(0, 0, 0, 0.2);
}

.auth-callback-page__spinner {
  width: 3.33333vw;
  height: 3.33333vw;
  margin: 0 auto;
  border: 0.27778vw solid rgba(30, 41, 59, 0.15);
  border-top-color: #1e293b;
  border-radius: 50%;
  animation: auth-callback-rotate 1s linear infinite;
}

.auth-callback-page__error-icon {
  width: 3.33333vw;
  height: 3.33333vw;
  margin: 0 auto;
  border-radius: 50%;
  background: #ef4444;
  color: #ffffff;
  font-size: 2.22222vw;
  line-height: 3.33333vw;
}

.auth-callback-page__text {
  margin-top: 1.11111vw;
  font-size: 1.11111vw;
  color: #64748b;
}

.auth-callback-page__text--error {
  margin-bottom: 1.66667vw;
}

.auth-callback-page__button {
  height: 2.77778vw;
  padding: 0 1.38889vw;
  border: none;
  border-radius: 0.55556vw;
  background: #3961fa;
  color: #ffffff;
  font-size: 0.97222vw;
  cursor: pointer;
}

@keyframes auth-callback-bg-rotate {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
@keyframes auth-callback-rotate {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}/*! tailwindcss v4.2.2 | MIT License | https://tailwindcss.com */
@layer properties {
  @supports (((-webkit-hyphens: none)) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color: rgb(from red r g b)))) {
    *, :before, :after, ::backdrop {
      --tw-rotate-x: initial;
      --tw-rotate-y: initial;
      --tw-rotate-z: initial;
      --tw-skew-x: initial;
      --tw-skew-y: initial;
      --tw-border-style: solid;
      --tw-leading: initial;
      --tw-font-weight: initial;
      --tw-blur: initial;
      --tw-brightness: initial;
      --tw-contrast: initial;
      --tw-grayscale: initial;
      --tw-hue-rotate: initial;
      --tw-invert: initial;
      --tw-opacity: initial;
      --tw-saturate: initial;
      --tw-sepia: initial;
      --tw-drop-shadow: initial;
      --tw-drop-shadow-color: initial;
      --tw-drop-shadow-alpha: 100%;
      --tw-drop-shadow-size: initial;
    }
  }
}

@layer theme {
  :root, :host {
    --font-sans: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji",
      "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono",
      "Courier New", monospace;
    --color-red-500: oklch(63.7% .237 25.331);
    --color-yellow-500: oklch(79.5% .184 86.047);
    --color-green-500: oklch(72.3% .219 149.579);
    --color-gray-200: oklch(92.8% .006 264.531);
    --color-gray-400: oklch(70.7% .022 261.325);
    --color-black: #000;
    --spacing: .25rem;
    --text-xs: .75rem;
    --text-xs--line-height: calc(1 / .75);
    --text-sm: .875rem;
    --text-sm--line-height: calc(1.25 / .875);
    --font-weight-semibold: 600;
    --radius-sm: .25rem;
    --radius-md: .375rem;
    --radius-lg: .5rem;
    --radius-xl: .75rem;
    --animate-spin: spin 1s linear infinite;
    --animate-pulse: pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;
    --default-transition-duration: .15s;
    --default-transition-timing-function: cubic-bezier(.4, 0, .2, 1);
    --default-font-family: var(--font-sans);
    --default-mono-font-family: var(--font-mono);
  }
}

@layer base {
  *, :after, :before, ::backdrop {
    box-sizing: border-box;
    border: 0 solid;
    margin: 0;
    padding: 0;
  }

  ::file-selector-button {
    box-sizing: border-box;
    border: 0 solid;
    margin: 0;
    padding: 0;
  }

  html, :host {
    -webkit-text-size-adjust: 100%;
    tab-size: 4;
    line-height: 1.5;
    font-family: var(--default-font-family, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");
    font-feature-settings: var(--default-font-feature-settings, normal);
    font-variation-settings: var(--default-font-variation-settings, normal);
    -webkit-tap-highlight-color: transparent;
  }

  hr {
    height: 0;
    color: inherit;
    border-top-width: 1px;
  }

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

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

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

  b, strong {
    font-weight: bolder;
  }

  code, kbd, samp, pre {
    font-family: var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);
    font-feature-settings: var(--default-mono-font-feature-settings, normal);
    font-variation-settings: var(--default-mono-font-variation-settings, normal);
    font-size: 1em;
  }

  small {
    font-size: 80%;
  }

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

  sub {
    bottom: -.25em;
  }

  sup {
    top: -.5em;
  }

  table {
    text-indent: 0;
    border-color: inherit;
    border-collapse: collapse;
  }

  :-moz-focusring {
    outline: auto;
  }

  progress {
    vertical-align: baseline;
  }

  summary {
    display: list-item;
  }

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

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

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

  button, input, select, optgroup, textarea {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    opacity: 1;
    background-color: #0000;
    border-radius: 0;
  }

  ::file-selector-button {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    opacity: 1;
    background-color: #0000;
    border-radius: 0;
  }

  :where(select:is([multiple], [size])) optgroup {
    font-weight: bolder;
  }

  :where(select:is([multiple], [size])) optgroup option {
    padding-inline-start: 20px;
  }

  ::file-selector-button {
    margin-inline-end: 4px;
  }

  ::placeholder {
    opacity: 1;
  }

  @supports (not ((-webkit-appearance: -apple-pay-button))) or (contain-intrinsic-size: 1px) {
    ::placeholder {
      color: currentColor;
    }

    @supports (color: color-mix(in lab, red, red)) {
      ::placeholder {
        color: color-mix(in oklab, currentcolor 50%, transparent);
      }
    }
  }

  textarea {
    resize: vertical;
  }

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

  ::-webkit-date-and-time-value {
    min-height: 1lh;
    text-align: inherit;
  }

  ::-webkit-datetime-edit {
    display: inline-flex;
  }

  ::-webkit-datetime-edit-fields-wrapper {
    padding: 0;
  }

  ::-webkit-datetime-edit {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-year-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-month-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-day-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-hour-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-minute-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-second-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-millisecond-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-meridiem-field {
    padding-block: 0;
  }

  ::-webkit-calendar-picker-indicator {
    line-height: 1;
  }

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

  button, input:where([type="button"], [type="reset"], [type="submit"]) {
    appearance: button;
  }

  ::file-selector-button {
    appearance: button;
  }

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

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

  [hidden]:where(:not([hidden="until-found"])) {
    display: none !important;
  }
}

@layer components;

@layer utilities {
  .visible {
    visibility: visible;
  }

  .fixed {
    position: fixed;
  }

  .static {
    position: static;
  }

  .start {
    inset-inline-start: var(--spacing);
  }

  .end {
    inset-inline-end: var(--spacing);
  }

  .container {
    width: 100%;
  }

  @media (min-width: 40rem) {
    .container {
      max-width: 40rem;
    }
  }

  @media (min-width: 48rem) {
    .container {
      max-width: 48rem;
    }
  }

  @media (min-width: 64rem) {
    .container {
      max-width: 64rem;
    }
  }

  @media (min-width: 80rem) {
    .container {
      max-width: 80rem;
    }
  }

  @media (min-width: 96rem) {
    .container {
      max-width: 96rem;
    }
  }

  .mb-4 {
    margin-bottom: calc(var(--spacing) * 4);
  }

  .block {
    display: block;
  }

  .flex {
    display: flex;
  }

  .hidden {
    display: none;
  }

  .inline {
    display: inline;
  }

  .table {
    display: table;
  }

  .h-20 {
    height: calc(var(--spacing) * 20);
  }

  .h-\[20px\] {
    height: 20px;
  }

  .h-screen {
    height: 100vh;
  }

  .w-full {
    width: 100%;
  }

  .min-w-0 {
    min-width: calc(var(--spacing) * 0);
  }

  .min-w-\[200px\] {
    min-width: 200px;
  }

  .flex-\[1_0_0\] {
    flex: 1 0 0;
  }

  .transform {
    transform: var(--tw-rotate-x, ) var(--tw-rotate-y, ) var(--tw-rotate-z, ) var(--tw-skew-x, ) var(--tw-skew-y, );
  }

  .animate-pulse {
    animation: var(--animate-pulse);
  }

  .animate-spin {
    animation: var(--animate-spin);
  }

  .flex-col {
    flex-direction: column;
  }

  .items-center {
    align-items: center;
  }

  .items-start {
    align-items: flex-start;
  }

  .gap-2 {
    gap: calc(var(--spacing) * 2);
  }

  .overflow-y-auto {
    overflow-y: auto;
  }

  .rounded-xl {
    border-radius: var(--radius-xl);
  }

  .border {
    border-style: var(--tw-border-style);
    border-width: 1px;
  }

  .bg-gray-200 {
    background-color: var(--color-gray-200);
  }

  .fill-gray-400 {
    fill: var(--color-gray-400);
  }

  .fill-green-500 {
    fill: var(--color-green-500);
  }

  .fill-red-500 {
    fill: var(--color-red-500);
  }

  .fill-yellow-500 {
    fill: var(--color-yellow-500);
  }

  .p-6 {
    padding: calc(var(--spacing) * 6);
  }

  .text-end {
    text-align: end;
  }

  .text-start {
    text-align: start;
  }

  .text-sm {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }

  .text-xs {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
  }

  .text-\[20px\] {
    font-size: 20px;
  }

  .leading-\[20px\] {
    --tw-leading: 20px;
    line-height: 20px;
  }

  .leading-\[25px\] {
    --tw-leading: 25px;
    line-height: 25px;
  }

  .font-semibold {
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
  }

  .text-black {
    color: var(--color-black);
  }

  .text-gray-400 {
    color: var(--color-gray-400);
  }

  .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, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
}

:root {
  --radius: 0.69444vw;
  --background: oklch(100% 0 0);
  --foreground: oklch(14.5% 0 0);
  --card: oklch(100% 0 0);
  --card-foreground: oklch(14.5% 0 0);
  --popover: oklch(100% 0 0);
  --popover-foreground: oklch(14.5% 0 0);
  --primary: oklch(20.5% 0 0);
  --primary-foreground: oklch(98.5% 0 0);
  --secondary: oklch(97% 0 0);
  --secondary-foreground: oklch(20.5% 0 0);
  --muted: oklch(97% 0 0);
  --muted-foreground: oklch(55.6% 0 0);
  --accent: oklch(97% 0 0);
  --accent-foreground: oklch(20.5% 0 0);
  --background-tertiary: #f5f7fa;
  --destructive: oklch(57.7% .245 27.325);
  --border: oklch(92.2% 0 0);
  --input: oklch(92.2% 0 0);
  --ring: oklch(70.8% 0 0);
  --sidebar: oklch(98.5% 0 0);
  --sidebar-foreground: oklch(14.5% 0 0);
  --sidebar-primary: oklch(20.5% 0 0);
  --sidebar-primary-foreground: oklch(98.5% 0 0);
  --sidebar-accent: oklch(97% 0 0);
  --sidebar-accent-foreground: oklch(20.5% 0 0);
  --sidebar-border: oklch(92.2% 0 0);
  --sidebar-ring: oklch(70.8% 0 0);
  --radius-sm: calc(var(--radius) * .6);
  --radius-md: calc(var(--radius) * .8);
  --radius-lg: var(--radius);
  --radius-xl: calc(var(--radius) * 1.4);
  --radius-2xl: calc(var(--radius) * 1.8);
  --radius-3xl: calc(var(--radius) * 2.2);
  --radius-4xl: calc(var(--radius) * 2.6);
}

.dark {
  --background: oklch(14.5% 0 0);
  --foreground: oklch(98.5% 0 0);
  --card: oklch(20.5% 0 0);
  --card-foreground: oklch(98.5% 0 0);
  --popover: oklch(20.5% 0 0);
  --popover-foreground: oklch(98.5% 0 0);
  --primary: oklch(92.2% 0 0);
  --primary-foreground: oklch(20.5% 0 0);
  --secondary: oklch(26.9% 0 0);
  --secondary-foreground: oklch(98.5% 0 0);
  --muted: oklch(26.9% 0 0);
  --muted-foreground: oklch(70.8% 0 0);
  --accent: oklch(26.9% 0 0);
  --accent-foreground: oklch(98.5% 0 0);
  --destructive: oklch(70.4% .191 22.216);
  --border: oklch(100% 0 0 / .1);
  --input: oklch(100% 0 0 / .15);
  --ring: oklch(55.6% 0 0);
  --sidebar: oklch(20.5% 0 0);
  --sidebar-foreground: oklch(98.5% 0 0);
  --sidebar-primary: oklch(48.8% .243 264.376);
  --sidebar-primary-foreground: oklch(98.5% 0 0);
  --sidebar-accent: oklch(26.9% 0 0);
  --sidebar-accent-foreground: oklch(98.5% 0 0);
  --sidebar-border: oklch(100% 0 0 / .1);
  --sidebar-ring: oklch(55.6% 0 0);
}

* {
  box-sizing: border-box;
  border-color: var(--border);
}

html {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 1.11111vw;
}

body {
  color: var(--foreground);
  background-color: var(--background);
  font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Cantarell, Fira Sans, Droid Sans, Helvetica Neue, sans-serif;
  font-size: 0.97222vw;
  font-weight: 400;
  line-height: 1.5;
}

h1, h2, h3, h4, h5, h6 {
  font-weight: 500;
  line-height: 1.2;
}

h1 {
  font-size: 1.66667vw;
}

h2 {
  font-size: 1.38889vw;
}

h3 {
  font-size: 1.25vw;
}

h4, h5, h6 {
  font-size: 1.11111vw;
}

p {
  margin-bottom: 0.55556vw;
}

a {
  color: var(--foreground);
  text-decoration: none;
}

button {
  cursor: pointer;
  background: none;
  border: none;
  font-family: inherit;
}

input, textarea, select {
  font-family: inherit;
  font-size: inherit;
}

ul, ol {
  list-style: none;
}

img {
  max-width: 100%;
  height: auto;
  display: block;
}

@property --tw-rotate-x {
  syntax: "*";
  inherits: false
}

@property --tw-rotate-y {
  syntax: "*";
  inherits: false
}

@property --tw-rotate-z {
  syntax: "*";
  inherits: false
}

@property --tw-skew-x {
  syntax: "*";
  inherits: false
}

@property --tw-skew-y {
  syntax: "*";
  inherits: false
}

@property --tw-border-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}

@property --tw-leading {
  syntax: "*";
  inherits: false
}

@property --tw-font-weight {
  syntax: "*";
  inherits: false
}

@property --tw-blur {
  syntax: "*";
  inherits: false
}

@property --tw-brightness {
  syntax: "*";
  inherits: false
}

@property --tw-contrast {
  syntax: "*";
  inherits: false
}

@property --tw-grayscale {
  syntax: "*";
  inherits: false
}

@property --tw-hue-rotate {
  syntax: "*";
  inherits: false
}

@property --tw-invert {
  syntax: "*";
  inherits: false
}

@property --tw-opacity {
  syntax: "*";
  inherits: false
}

@property --tw-saturate {
  syntax: "*";
  inherits: false
}

@property --tw-sepia {
  syntax: "*";
  inherits: false
}

@property --tw-drop-shadow {
  syntax: "*";
  inherits: false
}

@property --tw-drop-shadow-color {
  syntax: "*";
  inherits: false
}

@property --tw-drop-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}

@property --tw-drop-shadow-size {
  syntax: "*";
  inherits: false
}

@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}

@keyframes pulse {
  50% {
    opacity: .5;
  }
}
