html,
body {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  overflow-x: hidden;
}

p {
  padding: 0;
}

div {
  padding: 0;
  margin: 0;
  box-sizing: border-box;
}

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

.headerBg {
  position: relative;
  width: 100vw;
  /* background: red; */
  /* margin: 0 -0.77rem; */

  img {
    width: 100%;
    height: 3.16rem;
  }

  .bgTitle {
    position: absolute;
    top: 0.67rem;
    left: 5.33rem;
    font-weight: bold;
    font-size: 0.35rem;
    font-style: italic;
    background: linear-gradient(0deg, #6717cd 0%, #2871fa 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
  }
}

.commonStyle {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
}

.trainPlatform {
  width: 100%;
  padding: 1rem;

  img {
    width: 177px;
    height: 32px;
  }

  .contentBox {
    .navBox {
      display: flex;
      align-items: center;
      justify-content: center;
      margin-top: 0.5rem;

      .navItem {
        margin-right: 0.27rem;
        height: 2.5rem;
        width: 2.08rem;
        border-radius: 0.1rem;
        cursor: pointer;
        transition: background-color 0.3s ease;

        &.active {
          background: #f2f6fa;
        }

        img {
          width: 51px;
          height: 50px;
        }

        .navTitle {
          width: 1.48rem;
          height: 0.48rem;
          font-family: Source Han Sans CN;
          font-weight: 500;
          font-size: 16px;
          color: #030303;
          text-align: center;
          margin-top: 0.1rem;
        }
      }
    }

    .detailBox {
      .detailItem {
        display: flex;
        align-items: center;
        margin-top: 0.53rem;

        img {
          width: 530px;
          height: 257px;
        }

        .detailIntroduce {
          width: 8.79rem;
          height: 257px;
          background: #fafafa;
          padding: 0.24rem;

          .introduceTop {
            display: flex;
            justify-content: space-between;

            .btns {
              display: flex;

              a {
                display: flex;
                align-items: center;
                justify-content: center;
                width: 1.15rem;
                height: 0.47rem;
                line-height: 0.47rem;
                text-align: center;
                border-radius: 0.03rem;
                color: #0081ff;
                font-weight: 400;
                font-size: 16px;
                color: #0081ff;
                background: #e0ecfe;

                &:nth-child(1) {
                  background: #0081ff;
                  color: #fff;
                  margin-right: 0.17rem;
                }

                img {
                  width: 17px;
                  height: 15px;
                  margin-right: 0.11rem;
                }
              }
            }
          }

          .introTitle {
            font-weight: 600;
            font-size: 20px;
            color: #030303;
            padding: 0 0.24rem;

            .introSubTitle {
              text-indent: 2em;
              margin-top: 0.25rem;
              font-weight: 400;
              font-size: 16px;
              color: #46464d;
              line-height: 28px;
              display: -webkit-box;
              -webkit-box-orient: vertical;
              -webkit-line-clamp: 4;
              overflow: hidden;
            }
          }
        }
      }
    }
  }
}

.trial-modal-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background: rgba(0, 0, 0, 0.5);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 9999;
  box-sizing: border-box;
}

.trial-modal {
  background: white;
  border-radius: 0.11rem;
  overflow: hidden;
  box-shadow: 0 0.05rem 0.27rem rgba(0, 0, 0, 0.15);
  /* height: 8rem; */
  width: 13rem;
  /* 添加明确的宽度 */
}

.trial-modal-header {
  padding: 0.27rem;
  padding-right: -1rem;

  display: flex;
  justify-content: space-between;
  align-items: center;
}

.close-btn {
  font-size: 0.3rem;
  color: #999;
  cursor: pointer;
  line-height: 1;
  transition: color 0.3s ease;
}

.close-btn:hover {
  color: #333;
}

.tableBox {
  display: flex;
  height: 100%;
  width: 100%;

  padding: 0.67rem;
  padding-top: 0;

  .tableLeft {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;

    .tableImg {
      width: 6rem;
      height: 3rem;
    }

    .applyLeftTop {
      padding: 0.67rem;

      .applyText {
        font-family: Source Han Sans CN;
        font-weight: 500;
        font-size: 0.32rem;
        color: #030303;
      }

      .blueBox {
        width: 0.37rem;
        height: 0.05rem;
        background: #3171ee;
        margin: 0.1rem 0;
      }

      .titleText {
        font-family: Source Han Sans CN;
        font-weight: 400;
        font-size: 0.21rem;
        color: #030303;
        /* margin: 0.27rem; */
      }
    }
  }

  .tableRight {
    flex: 1;

    .rightTitle {
      font-family: Source Han Sans CN;
      font-weight: 500;
      font-size: 0.32rem;
      color: #030303;
      line-height: 0.37rem;
    }
  }
}

.apply-form {
  /* padding: 0.4rem; */
  border-radius: 0.1rem;

  .form-group {
    margin-bottom: 0.27rem;
    position: relative;
    display: flex;
    align-items: flex-end;
    /* gap: .2rem; */
  }

  .form-group label {
    flex-shrink: 0;
    min-width: 0.67rem;
    color: #333;
    font-size: 0.19rem;
    font-weight: 500;
    margin: 0;
    padding-bottom: 0.16rem;
    border-bottom: 0.01rem solid #ddd;
    transition: border-color 0.3s ease;
    color: #8e8e8e;
  }

  /* label聚焦状态 */
  .form-group label.focused {
    border-bottom-color: #007bff !important;
    /* 添加!important确保优先级 */
  }

  .form-group input {
    flex: 1;
    padding: 0.16rem 0;
    border: none;
    border-bottom: 0.01rem solid #ddd;
    background: transparent;
    font-size: 0.19rem;
    color: #333;
    outline: none;
    transition: border-color 0.3s ease;
  }

  .form-group input:focus {
    border-bottom-color: #007bff;
  }

  /* 当input聚焦时，label的下划线也变色 */

  .form-group input::placeholder {
    color: transparent;
  }

  .submit-btn {
    width: 2.47rem;
    height: 0.6rem;
    background: linear-gradient(90deg, #2b6cec 0%, #568dfa 100%);
    color: white;
    border: none;
    border-radius: 0.08rem;
    font-size: 0.24rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.3s ease;

    &:hover {
      background: linear-gradient(90deg, #568dfa 0%, #2b6cec 100%);
      transform: translateY(-0.01rem);
    }

    &:active {
      transform: translateY(0);
    }

    &:disabled {
      background: #ccc;
      cursor: not-allowed;
      transform: none;
    }
  }
}

/* 表单验证样式 */
.form-group.error input {
  border-bottom-color: #ff4757 !important;
}

.form-group.error label {
  /* color: #ff4757 !important; */
  border-bottom-color: #ff4757 !important;
}

.error-message {
  color: #ff4757;
  font-size: 0.14rem;
  margin-top: 0.05rem;
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  z-index: 1;
}

.form-group.error .error-message {
  display: block;
}

/* 覆盖浏览器自动填充的背景色 */
.form-group input:-webkit-autofill,
.form-group input:-webkit-autofill:hover,
.form-group input:-webkit-autofill:focus,
.form-group input:-webkit-autofill:active {
  -webkit-box-shadow: 0 0 0 30px white inset !important;
  -webkit-text-fill-color: #333 !important;
  background-color: transparent !important;
  transition: background-color 5000s ease-in-out 0s;
}

/* 针对 Firefox 浏览器 */
.form-group input:-moz-autofill {
  background-color: transparent !important;
}

/* 移除重复的样式定义 - 删除文件末尾第250-280行的重复样式 */
select {
  weight: 1.33rem;
  height: 0.67rem;
  /* border: none; */
}