@use '../variables' as *;

// ==================== 导师页右侧广告面板样式 ====================

.mentor-aside-panel {
  font-size: 0.14rem;
  width: 100%;
  height: 100%;
  position: relative;
  background: $bg-white;
  display: flex;
  flex-direction: column;

  // 顶部渐变区域
  &__header {
    padding: 0.24rem;
    background: linear-gradient(180deg, #EDF9FA 0%, #FFFFFF 100%);
  }

  &__title {
    font-weight: 630;
    font-size: 0.20rem;
    line-height: 0.27rem;
    color: $text-dark;
  }

  &__subtitle {
    font-weight: 330;
    font-size: 0.14rem;
    line-height: 0.19rem;
    color: $text-middle;
    margin-top: 0.04rem;
  }

  // 统计数字区域
  &__stats {
    display: flex;
    align-items: center;
    margin: 0 0.24rem;
    height: 1rem;
    background: linear-gradient(270deg, rgba(82, 202, 209, 0.05) 0%, rgba(159, 208, 81, 0.05) 100%);
    border-radius: 0.12rem;
    position: relative;

    // 渐变边框：从上到下 #9FD051 → #52CAD1
    &::before {
      content: '';
      position: absolute;
      inset: 0;
      border-radius: 0.12rem;
      padding: 0.012rem;
      background: linear-gradient(180deg, #9FD051 0%, #52CAD1 100%);
      -webkit-mask:
        linear-gradient(#fff 0 0) content-box,
        linear-gradient(#fff 0 0);
      -webkit-mask-composite: xor;
      mask-composite: exclude;
      pointer-events: none;
    }
  }

  &__stat-item {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.08rem;
    padding: 0.20rem 0;
  }

  &__stat-num {
    font-weight: 620;
    font-size: 0.24rem;
    line-height: 0.32rem;
    background: linear-gradient(128.17deg, #52CAD1 0%, #82D79B 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
  }

  &__stat-label {
    font-weight: 450;
    font-size: 0.14rem;
    line-height: 0.19rem;
    color: $text-dark;
  }

  &__stat-divider {
    width: 0;
    height: 0.98rem;
    border-left: 1px solid $border-color;
  }

  // 小节标题（共用）
  &__section-title {
    display: flex;
    align-items: center;
    gap: 0.08rem;
  }

  &__section-icon {
    font-size: 0.16rem;
    background: linear-gradient(128.17deg, #52CAD1 0%, #82D79B 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
  }

  &__section-text {
    font-weight: 620;
    font-size: 0.16rem;
    line-height: 0.21rem;
    background: linear-gradient(128.17deg, #52CAD1 0%, #82D79B 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
  }

  // 为什么选择我们的导师
  &__reasons {
    margin: 0.24rem 0.24rem 0;
  }

  &__reason-list {
    margin-top: 0.24rem;
  }

  &__reason-item {
    display: flex;
    align-items: center;
    gap: 0.08rem;
    margin-bottom: 0.20rem;

    &:last-child {
      margin-bottom: 0;
    }
  }

  &__reason-icon {
    width: 0.42rem;
    height: 0.42rem;
    background: #EDF9FA;
    border-radius: 0.08rem;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;

    svg {
      width: 0.24rem;
      height: 0.24rem;
    }
  }

  &__reason-info {
    display: flex;
    flex-direction: column;
    gap: 0.04rem;
  }

  &__reason-title {
    font-weight: 620;
    font-size: 0.14rem;
    line-height: 0.19rem;
    color: $text-dark;
  }

  &__reason-desc {
    font-weight: 330;
    font-size: 0.14rem;
    line-height: 0.19rem;
    color: $text-middle;
  }

  // 热门导师方向
  &__directions {
    margin: 0.24rem 0.24rem 0;
  }

  &__direction-list {
    margin-top: 0.24rem;
  }

  &__direction-card {
    box-sizing: border-box;
    padding: 0.12rem 0.16rem;
    background: $bg-white;
    border: 1px solid $border-color;
    border-radius: 0.12rem;
    margin-bottom: 0.20rem;

    &:last-child {
      margin-bottom: 0;
    }
  }

  &__direction-name {
    font-weight: 620;
    font-size: 0.14rem;
    line-height: 0.19rem;
    color: $text-dark;
    margin-bottom: 0.08rem;
  }

  &__direction-tags {
    display: flex;
    align-items: center;
    gap: 0.08rem;
  }

  &__direction-tag {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    padding: 0.04rem 0.08rem;
    background: #EDF9FA;
    border-radius: 0.04rem;
    font-weight: 330;
    font-size: 0.12rem;
    line-height: 0.16rem;
    color: $accent;
  }

  // 底部按钮区域
  &__footer {
    margin-top: auto;
    padding: 0.24rem;
    text-align: center;
  }

  &__cta-btn {
    width: 100%;
    height: 0.40rem;
    background: linear-gradient(128.17deg, #52CAD1 0%, #82D79B 100%);
    border-radius: 0.12rem;
    border: none;
    font-weight: 620;
    font-size: 0.14rem;
    line-height: 0.19rem;
    color: $bg-white;
    cursor: pointer;
    transition: opacity 0.15s;

    &:hover {
      opacity: 0.9;
    }
  }

  &__footer-tip {
    font-weight: 330;
    font-size: 0.12rem;
    line-height: 0.16rem;
    color: $text-middle;
    margin-top: 0.08rem;
  }

  // ==================== 模式二：模拟对话样式 ====================

  &__chat {
    flex: 1;
    overflow-y: auto;
    padding: 0.16rem 0.24rem;

    &::-webkit-scrollbar {
      width: 4px;
    }
    &::-webkit-scrollbar-thumb {
      background: $border-color;
      border-radius: 2px;
    }
  }

  // 对话加载中
  &__chat-loading {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.12rem;
    padding: 0.4rem 0;
    color: $text-middle;
    font-size: 0.13rem;
  }

  &__chat-spinner {
    width: 0.24rem;
    height: 0.24rem;
    border: 2px solid $border-color;
    border-top-color: $accent;
    border-radius: 50%;
    animation: mentorChatSpin 0.7s linear infinite;
  }

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

  // 对话气泡
  &__chat-bubble {
    display: flex;
    margin-bottom: 0.16rem;

    &:last-child {
      margin-bottom: 0;
    }

    // 用户消息 — 右对齐，品牌色背景
    &--user {
      justify-content: flex-end;

      .mentor-aside-panel__chat-text {
        background: $accent;
        color: #FFFFFF;
        border-radius: 0.12rem 0.04rem 0.12rem 0.12rem;
        box-shadow: 0 1px 4px rgba(0, 0, 0, 0.04);
      }
    }

    // 导师消息 — 左对齐，白色背景
    &--mentor {
      justify-content: flex-start;

      .mentor-aside-panel__chat-text {
        background: #FFFFFF;
        color: $text-dark;
        border-radius: 0.04rem 0.12rem 0.12rem 0.12rem;
        box-shadow: 0 2px 4px rgba(82, 202, 209, 0.1);
      }
    }
  }

  &__chat-text {
    display: inline-block;
    max-width: 2.38rem;
    padding: 0.08rem 0.12rem;
    font-weight: 330;
    font-size: 0.14rem;
    line-height: 0.24rem;
    word-break: break-word;
  }
}

// ==================== 二维码弹窗样式 ====================

/* 遮罩层 */
.mentor-qr-overlay {
  position: fixed;
  inset: 0;
  z-index: 9999;
  background: rgba(0, 0, 0, 0.4);
  display: flex;
  align-items: center;
  justify-content: center;
}

/* 弹窗卡片 */
.mentor-qr-card {
  font-size: 0.14rem;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 0.24rem 0.32rem;
  gap: 0.24rem;
  width: 4.80rem;
  background: linear-gradient(180deg, #EDF9FA 0%, #FFFFFF 20.63%);
  border: 1px solid #F0F0F0;
  box-shadow: 0px 0px 16px rgba(0, 0, 0, 0.05);
  border-radius: 0.12rem;

  // 头部：标题 + 关闭按钮
  &__header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    width: 100%;
  }

  &__title-wrap {
    display: flex;
    flex-direction: column;
    gap: 0.04rem;
  }

  &__title {
    font-weight: 620;
    font-size: 0.18rem;
    line-height: 0.24rem;
    color: #1A1A1A;
  }

  &__desc {
    font-weight: 330;
    font-size: 0.12rem;
    line-height: 0.16rem;
    color: #6A7282;
  }

  &__close {
    width: 0.24rem;
    height: 0.24rem;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;

    &:hover {
      opacity: 0.7;
    }

    svg {
      width: 0.24rem;
      height: 0.24rem;
    }
  }

  // 二维码展示区域
  &__qr-area {
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 0.16rem 0;
    width: 100%;
    min-height: 2.72rem;
    background: #F4FBFB;
    border: 1px solid #AEE6EA;
    border-radius: 0.08rem;
  }

  &__qr-img {
    width: 2.40rem;
    height: 2.40rem;
    object-fit: contain;
  }

  &__placeholder {
    font-size: 0.14rem;
    color: #6A7282;
  }

  &__loading {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2.40rem;
    height: 2.40rem;
  }

  &__spinner {
    width: 0.32rem;
    height: 0.32rem;
    border: 3px solid #AEE6EA;
    border-top-color: #52CAD1;
    border-radius: 50%;
    animation: mentorQrSpin 0.7s linear infinite;
  }

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

  // 底部提示
  &__footer {
    width: 100%;
  }

  &__footer-text {
    box-sizing: border-box;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0.12rem 0.16rem;
    width: 100%;
    background: #FFFFFF;
    border: 1px solid #F0F0F0;
    border-radius: 0.08rem;
    font-weight: 330;
    font-size: 0.14rem;
    line-height: 0.19rem;
    color: #6A7282;
  }
}
