/* 全局基础样式 */
body {
  font-family:
    -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue",
    Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji",
    "Segoe UI Symbol", "Noto Color Emoji";
  background-color: #f8fafc;
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}

/* 导航栏样式 */
.navbar {
  transition: all 0.3s ease;
}
.navbar .nav-link {
  transition: color 0.3s ease;
}
.navbar .nav-link:hover,
.navbar .nav-link.active {
  color: #0d6efd !important;
}
.dropdown-menu {
  border-radius: 0.5rem;
  animation: fadeIn 0.3s ease;
}
.dropdown-item {
  transition: all 0.2s ease;
}
.dropdown-item:hover {
  background-color: #f8f9fa;
  color: #0d6efd;
  padding-left: 1.5rem !important;
}

/* 轮播图样式 */
.carousel-img {
  aspect-ratio: 16 / 9;
  object-fit: cover;
}

/* 公告走马灯样式 */
.notice-bar {
  background-color: #fff !important;
}
.marquee-container {
  white-space: nowrap;
}
.marquee-content {
  animation: marquee 25s linear infinite;
  padding-left: 100%;
}
.marquee-container:hover .marquee-content {
  animation-play-state: paused;
}
@keyframes marquee {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-100%);
  }
}

/* 商品列表标题 */
.section-title::after {
  display: none;
}

/* 商品卡片样式 */
.product-card {
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  background-color: #ffffff;
  cursor: pointer;
  box-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
}
.product-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1) !important;
}
.product-img-wrapper {
  aspect-ratio: 4 / 3;
}
.product-img-wrapper img {
  object-fit: cover;
  height: 100%;
  transition: transform 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}
.product-card:hover .product-img-wrapper img {
  transform: scale(1.05);
}

/* 购物车按钮新样式 */
.btn-cart-corner {
  width: 36px;
  height: 36px;
  padding: 0;
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
  background-color: #0d6efd;
  border: none;
  z-index: 10;
}
.btn-cart-corner:hover {
  background-color: #0b5ed7;
  transform: scale(1.05);
}

/* 文本截断样式 */
.text-line-1 {
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.text-line-2 {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* 底部样式 */
.footer-link {
  transition: color 0.3s ease;
}
.footer-link:hover {
  color: #fff !important;
  text-decoration: underline !important;
}

/* 链接悬停颜色 */
.hover-primary {
  transition: color 0.2s ease;
}
.hover-primary:hover {
  color: #0d6efd !important;
}

/* 动画 */
@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
