:root{
  --ns-yellow:#feee00;
  --ns-yellow-dark:#e5d600;
  --ns-ink:#1f2937;
  --ns-muted:#6b7280;
  --ns-bg:#f7f7f8;
  --ns-card:#f3f4f6;
  --ns-white:#fff;
  --ns-line:#e5e7eb;
  --ns-green:#16a34a;
  --ns-red:#dc2626;
  --ns-radius:18px;
  --ns-shadow:0 12px 32px rgba(15,23,42,.10);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0!important;
  background:#fff!important;
  color:var(--ns-ink)!important;
  font-family:Inter,Arial,"PingFang SC","Microsoft YaHei",sans-serif!important;
}

/* ===== HEADER ===== */
.ns-revamp-nav,
.aiz-header,
.aiz-navbar,
header{
  background:var(--ns-yellow)!important;
  border-bottom:1px solid var(--ns-yellow-dark)!important;
  box-shadow:none!important;
}

.ns-revamp-nav a,
.aiz-header a,
.aiz-navbar a{
  font-weight:800!important;
  color:#202020!important;
}

.aiz-search-box,
.search-box{
  border-radius:10px!important;
  overflow:hidden!important;
}

.aiz-search-box input,
.search-box input,
header input[type="search"],
header input[type="text"]{
  height:46px!important;
  border:0!important;
  border-radius:10px!important;
  background:#fff!important;
  box-shadow:0 3px 14px rgba(0,0,0,.12)!important;
}

.aiz-search-box button,
.search-box button{
  background:#111827!important;
  color:#fff!important;
  border:0!important;
}

.category-menu,
.aiz-category-menu,
.megamenu,
.nav-category{
  background:#fff!important;
  border-bottom:1px solid var(--ns-line)!important;
}

.category-menu a,
.aiz-category-menu a,
.megamenu a{
  padding:14px 15px!important;
  font-size:14px!important;
  font-weight:800!important;
  color:#202020!important;
}

.category-menu a:hover,
.aiz-category-menu a:hover,
.megamenu a:hover{
  background:#fff7a8!important;
}

/* ===== HOME ===== */
.ns-revamp-home{
  background:#fff!important;
}

.ns-revamp-home section,
.ns-revamp-home .aiz-section,
.ns-revamp-home .home-section{
  padding-top:26px!important;
  padding-bottom:26px!important;
}

.ns-revamp-home h2,
.ns-revamp-home h3,
.section-title{
  color:#111827!important;
  font-weight:900!important;
  letter-spacing:-.3px!important;
}

/* Hero / banners */
.aiz-carousel,
.slick-slider,
.swiper,
.carousel,
.home-slider{
  border-radius:18px!important;
  overflow:hidden!important;
}

.aiz-carousel img,
.slick-slider img,
.swiper img,
.carousel img{
  object-fit:cover!important;
}

/* ===== CATEGORY CARDS ===== */
.noon-hero__cat-row,
.ns-category-section,
.home-categories,
.featured-categories{
  position:relative!important;
  overflow:hidden!important;
  padding:10px 0 18px!important;
}

.noon-hero__cat-carousel,
.ns-category-track{
  padding:6px 34px!important;
}

.noon-hero__cat-carousel .slick-track{
  display:flex!important;
  align-items:stretch!important;
}

.noon-hero__cat-carousel .slick-slide{
  height:auto!important;
  padding:0 6px!important;
}

.noon-hero__cat-item,
.ns-category-card,
.category-card,
.category-box{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:142px!important;
  padding:14px 10px!important;
  background:var(--ns-card)!important;
  border:1px solid var(--ns-line)!important;
  border-radius:18px!important;
  text-align:center!important;
  transition:transform .22s ease,box-shadow .22s ease,background .22s ease!important;
}

.noon-hero__cat-item:hover,
.ns-category-card:hover,
.category-card:hover,
.category-box:hover{
  background:#fff!important;
  transform:translateY(-4px)!important;
  box-shadow:var(--ns-shadow)!important;
}

.noon-hero__cat-thumb,
.ns-category-thumb{
  width:82px!important;
  height:82px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  margin:0 auto 10px!important;
  padding:8px!important;
  background:#fff!important;
  border-radius:16px!important;
  overflow:hidden!important;
}

.noon-hero__cat-thumb img,
.ns-category-thumb img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  border-radius:12px!important;
}

.noon-hero__cat-name,
.ns-category-name{
  min-height:36px!important;
  display:-webkit-box!important;
  -webkit-line-clamp:2!important;
  -webkit-box-orient:vertical!important;
  overflow:hidden!important;
  color:#202020!important;
  font-size:14px!important;
  font-weight:900!important;
  line-height:1.3!important;
}

/* ===== PRODUCT CARDS ===== */
.ns-product-card,
.aiz-card-box,
.product-card,
.product-box,
.card-product,
.product-item{
  height:380px!important;
  background:var(--ns-card)!important;
  border:1px solid var(--ns-line)!important;
  border-radius:18px!important;
  overflow:hidden!important;
  box-shadow:none!important;
  transition:transform .22s ease,box-shadow .22s ease!important;
}

.ns-product-card:hover,
.aiz-card-box:hover,
.product-card:hover,
.product-box:hover,
.card-product:hover,
.product-item:hover{
  transform:translateY(-5px)!important;
  box-shadow:var(--ns-shadow)!important;
}

.ns-product-card img,
.aiz-card-box img,
.aiz-card-box .img-fit,
.product-card img,
.product-box img,
.card-product img,
.product-item img{
  width:100%!important;
  height:200px!important;
  max-height:200px!important;
  object-fit:contain!important;
  background:#f8fafc!important;
  border-radius:16px 16px 0 0!important;
}

.product-title,
.product-name,
.card-title,
.aiz-card-box .fs-13,
.aiz-card-box .fs-14{
  min-height:38px!important;
  display:-webkit-box!important;
  -webkit-line-clamp:2!important;
  -webkit-box-orient:vertical!important;
  overflow:hidden!important;
  color:#202020!important;
  font-size:14px!important;
  font-weight:650!important;
  line-height:1.35!important;
}

.product-price,
.current-price,
.price,
.aiz-card-box .fw-700,
.aiz-card-box .fw-600{
  color:#111827!important;
  font-size:20px!important;
  font-weight:950!important;
}

.old-price,
.text-truncate.text-muted{
  color:#9ca3af!important;
}

.badge,
.product-label,
.discount-badge{
  border-radius:7px!important;
}

.badge-warning,
.bg-warning,
.badge-primary{
  background:var(--ns-yellow)!important;
  color:#111!important;
}

/* product carousels */
.ns-product-carousel{
  position:relative!important;
  overflow:hidden!important;
}

.ns-product-carousel-track{
  display:flex!important;
  gap:14px!important;
  overflow-x:auto!important;
  scroll-behavior:smooth!important;
  scrollbar-width:none!important;
  padding:8px 44px 14px!important;
}

.ns-product-carousel-track::-webkit-scrollbar{display:none!important}
.ns-product-carousel-track > *{
  flex:0 0 calc((100% - 70px)/6)!important;
  min-width:0!important;
}

/* listing */
.ns-revamp-listing .row,
.product-listing .row{
  row-gap:16px!important;
}

.ns-revamp-listing .sidebar,
.product-listing .sidebar{
  background:#fff!important;
  border:1px solid var(--ns-line)!important;
  border-radius:16px!important;
  padding:18px!important;
}

/* details */
.ns-revamp-details .product-gallery,
.ns-revamp-details .product-info,
.product-details .product-gallery,
.product-details .product-info{
  background:#fff!important;
  border:1px solid var(--ns-line)!important;
  border-radius:18px!important;
  padding:20px!important;
}

.ns-revamp-details .btn,
.product-details .btn{
  min-height:46px!important;
  border-radius:10px!important;
  font-weight:900!important;
}

/* buttons */
.btn-primary,
.btn-warning,
.btn-soft-primary,
.add-to-cart,
.buy-now{
  background:var(--ns-yellow)!important;
  border-color:var(--ns-yellow-dark)!important;
  color:#111!important;
  border-radius:10px!important;
  font-weight:900!important;
}

.btn-primary:hover,
.btn-warning:hover,
.btn-soft-primary:hover{
  background:var(--ns-yellow-dark)!important;
  color:#111!important;
}

/* footer */
.ns-revamp-footer,
footer,
.aiz-footer{
  background:#f7f7f7!important;
  border-top:1px solid var(--ns-line)!important;
  color:#4b5563!important;
}

.ns-revamp-footer h4,
.ns-revamp-footer h5,
footer h4,
footer h5{
  color:#111827!important;
  font-weight:900!important;
}

.ns-revamp-footer a,
footer a{
  color:#4b5563!important;
}

.ns-revamp-footer a:hover,
footer a:hover{
  color:#111!important;
}

/* carousel arrows */
.slick-prev,
.slick-next,
.ns-carousel-btn{
  width:38px!important;
  height:38px!important;
  border-radius:50%!important;
  background:#fff!important;
  color:#111827!important;
  box-shadow:0 5px 18px rgba(0,0,0,.16)!important;
  z-index:20!important;
}

/* Mobile */
@media (max-width:1199px){
  .ns-product-carousel-track > *{
    flex-basis:calc((100% - 42px)/4)!important;
  }
}

@media (max-width:768px){
  .ns-product-card,
  .aiz-card-box,
  .product-card,
  .product-box,
  .card-product,
  .product-item{
    height:274px!important;
    border-radius:14px!important;
  }

  .ns-product-card img,
  .aiz-card-box img,
  .aiz-card-box .img-fit,
  .product-card img,
  .product-box img,
  .card-product img,
  .product-item img{
    height:155px!important;
    max-height:155px!important;
  }

  .ns-product-carousel-track{
    gap:10px!important;
    padding:8px 10px 12px!important;
  }

  .ns-product-carousel-track > *{
    flex:0 0 calc((100% - 10px)/2)!important;
  }

  .noon-hero__cat-carousel,
  .ns-category-track{
    padding:4px!important;
  }

  .noon-hero__cat-item,
  .ns-category-card,
  .category-card,
  .category-box{
    min-height:114px!important;
    padding:10px 6px!important;
    border-radius:14px!important;
  }

  .noon-hero__cat-thumb,
  .ns-category-thumb{
    width:62px!important;
    height:62px!important;
  }

  .noon-hero__cat-name,
  .ns-category-name{
    min-height:30px!important;
    font-size:12px!important;
  }

  .slick-prev,
  .slick-next,
  .ns-carousel-btn{
    display:none!important;
  }
}

/* 性能优化：减少大规模卡片动画 */
.ns-product-card,
.aiz-card-box,
.product-card,
.product-box,
.card-product,
.product-item {
    animation: none !important;
    will-change: auto !important;
}

@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: .01ms !important;
        scroll-behavior: auto !important;
    }
}

/* =========================================
   NOONSHEN TYPOGRAPHY SYSTEM V1
========================================= */

html,
body{
    font-family:
        Inter,
        "PingFang SC",
        "Microsoft YaHei",
        "Noto Sans CJK SC",
        Arial,
        sans-serif !important;

    color:#202124 !important;

    -webkit-font-smoothing:antialiased !important;
    -moz-osx-font-smoothing:grayscale !important;
    text-rendering:optimizeLegibility !important;
}

/* 顶部导航 */
header,
.aiz-header,
.aiz-navbar,
.navbar,
.navbar a,
.aiz-header a,
.aiz-navbar a,
.category-menu a,
.aiz-category-menu a{
    font-size:15px !important;
    font-weight:750 !important;
    letter-spacing:.1px !important;
}

/* 搜索框 */
.aiz-search-box input,
.search-box input,
input[type="search"],
input[type="text"]{
    font-size:15px !important;
    font-weight:500 !important;
    letter-spacing:.05px !important;
}

/* 分类名称 */
.noon-hero__cat-name,
.ns-category-name,
.category-name,
.home-category-name,
.category-card,
.category-box{
    font-size:14px !important;
    font-weight:800 !important;
    line-height:1.35 !important;
    letter-spacing:.05px !important;
}

/* 商品标题 */
.product-title,
.product-name,
.card-title,
.aiz-card-box .fs-13,
.aiz-card-box .fs-14,
.ns-product-card .fs-13,
.ns-product-card .fs-14{
    font-size:14px !important;
    font-weight:600 !important;
    line-height:1.45 !important;
    letter-spacing:.02px !important;
}

/* 商品价格 */
.price,
.current-price,
.product-price,
.aiz-card-box .fw-700,
.aiz-card-box .fw-600,
.ns-product-card .fw-700,
.ns-product-card .fw-600{
    font-size:21px !important;
    font-weight:900 !important;
    color:#111827 !important;
    letter-spacing:-.35px !important;
    font-variant-numeric:tabular-nums !important;
}

/* 原价 */
.old-price,
.text-muted,
.text-truncate.text-muted{
    font-size:13px !important;
    font-weight:500 !important;
    color:#8b9098 !important;
}

/* 大标题 */
h1,
h2,
h3,
.section-title,
.home-section-title{
    color:#111827 !important;
    font-weight:850 !important;
    letter-spacing:-.35px !important;
    line-height:1.25 !important;
}

/* 小标题 */
h4,
h5,
h6{
    font-weight:750 !important;
    letter-spacing:-.1px !important;
}

/* 按钮 */
button,
.btn,
.btn-primary,
.btn-warning,
.btn-soft-primary,
.add-to-cart,
.buy-now{
    font-weight:800 !important;
    letter-spacing:.08px !important;
}

/* 标签与徽章 */
.badge,
.product-label,
.discount-badge{
    font-size:11px !important;
    font-weight:800 !important;
    letter-spacing:.1px !important;
}

/* 商品详情 */
.product-details,
.ns-revamp-details{
    font-size:15px !important;
    line-height:1.65 !important;
}

.product-details .product-title,
.ns-revamp-details .product-title{
    font-size:26px !important;
    font-weight:800 !important;
    line-height:1.3 !important;
}

/* 表单 */
label,
.form-label{
    font-weight:700 !important;
}

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

/* 页脚 */
footer,
.aiz-footer,
.ns-revamp-footer{
    font-size:14px !important;
    line-height:1.65 !important;
}

footer h4,
footer h5,
.aiz-footer h4,
.aiz-footer h5{
    font-weight:800 !important;
}

/* 移动端字体 */
@media (max-width:768px){
    header,
    .aiz-header,
    .aiz-navbar,
    .navbar,
    .navbar a{
        font-size:13px !important;
    }

    .noon-hero__cat-name,
    .ns-category-name,
    .category-name{
        font-size:12px !important;
        font-weight:800 !important;
    }

    .product-title,
    .product-name,
    .card-title,
    .aiz-card-box .fs-13,
    .aiz-card-box .fs-14{
        font-size:12px !important;
        line-height:1.4 !important;
    }

    .price,
    .current-price,
    .product-price{
        font-size:17px !important;
    }

    h1{font-size:28px !important}
    h2{font-size:22px !important}
    h3{font-size:18px !important}
}
