:host {
  display: block;
  position: relative;
  margin: 20px;
  
  .banner-wrapper {
    max-width: 100%;
    margin: 0 auto;
    border-radius: 24px;
    overflow: hidden;
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.15);
    width: 100%;
  }
  
  swiper-container {
    width: 100%;
    height: 450px;
  }

  .slide-content {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 2rem;
    box-sizing: border-box;
    border-radius: 24px;
    overflow: hidden;
    /* 添加渐变背景 */
    background: linear-gradient(135deg, #ff9a9e 0%, #fecfef 50%, #fecfef 100%);
  }

  .text-container {
    max-width: 800px;
    text-align: center;
    padding: 40px;
    /* 移除背景色 */
    background: transparent;
    border-radius: 0;
    /* 移除阴影 */
    box-shadow: none;
  }

  .title {
    font-size: 2.5rem;
    font-weight: 800;
    margin-bottom: 1rem;
    /* 使用浅色文字并添加阴影 */
    color: #ffffff;
    text-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
    line-height: 1.2;
  }

  .subtitle {
    font-size: 1.8rem;
    font-weight: 600;
    margin-bottom: 1.5rem;
    /* 使用更浅的白色 */
    color: rgba(255, 255, 255, 0.95);
    text-shadow: 0 1px 4px rgba(0, 0, 0, 0.25);
  }

  .description {
    font-size: 1.3rem;
    margin-bottom: 2.5rem;
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
    /* 使用浅米色提升可读性 */
    color: #fffbea;
    text-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
    line-height: 1.6;
  }

  .cta-button {
    /* 更新为粉色系按钮 */
    background: linear-gradient(to right, #ff9a9e, #fecfef);
    color: white;
    padding: 1rem 2.5rem;
    font-size: 1.2rem;
    font-weight: 600;
    border-radius: 50px;
    border: none;
    cursor: pointer;
    transition: all 0.3s ease;
    /* 更新阴影颜色 */
    box-shadow: 0 4px 15px rgba(255, 154, 158, 0.5);
    position: relative;
    overflow: hidden;
    
    /* 添加闪光效果 */
    &::after {
      content: '';
      position: absolute;
      top: -50%;
      left: -50%;
      width: 200%;
      height: 200%;
      background: rgba(255, 255, 255, 0.1);
      transform: rotate(30deg);
      transition: all 0.6s ease;
    }
    
    &:hover {
      /* 悬停时加深渐变 */
      background: linear-gradient(to right, #ff8a8e, #fec0e5);
      transform: translateY(-5px);
      box-shadow: 0 8px 25px rgba(255, 154, 158, 0.6);
      
      &::after {
        transform: rotate(30deg) translate(10%, 30%);
      }
    }
    
    &:active {
      transform: translateY(-2px);
    }
  }

  /* 响应式调整 */
  @media (max-width: 768px) {
    margin: 15px; /* 移动设备上减少边距 */
    
    swiper-container {
      height: 350px;
    }
    
    .text-container {
      padding: 20px;
    }
    
    .title {
      font-size: 1.8rem;
    }
    
    .subtitle {
      font-size: 1.4rem;
    }
    
    .description {
      font-size: 1.1rem;
    }
    
    .cta-button {
      padding: 0.8rem 2rem;
      font-size: 1rem;
    }
    
    .swiper-button-prev,
    .swiper-button-next {
      width: 45px;
      height: 45px;
      --swiper-navigation-size: 22px;
    }
  }
}