/* ==========================================================================
   SUNMIWO — WooCommerce overrides (Times New Roman, blue accents, clean grid)
   ========================================================================== */
.woocommerce{font-family:var(--font)}
.woocommerce ul.products{display:grid;grid-template-columns:repeat(3,1fr);gap:34px 30px}
.woocommerce ul.products li.product{text-align:left}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:16px;font-weight:700;color:var(--text);margin:.4em 0}
.woocommerce ul.products li.product a{text-decoration:none}
.woocommerce ul.products li.product .price{color:var(--blue-dark);font-weight:700;font-size:15px}
.woocommerce ul.products li.product .button{display:inline-block;margin-top:8px;padding:10px 18px;background:var(--blue);color:#fff;border-radius:2px;font-size:12px;font-weight:700;letter-spacing:.6px;text-transform:uppercase}
.woocommerce ul.products li.product .button:hover{background:var(--blue-dark)}
.woocommerce nav.woocommerce-pagination ul{border:none;display:flex;gap:6px;justify-content:center;margin-top:30px}
.woocommerce nav.woocommerce-pagination ul li{border:none}
.woocommerce nav.woocommerce-pagination ul li a,.woocommerce nav.woocommerce-pagination ul li span{padding:8px 14px;border:1px solid var(--gray);border-radius:2px}
.woocommerce nav.woocommerce-pagination ul li span.current{background:var(--blue);color:#fff;border-color:var(--blue)}

/* single product */
.woocommerce div.product .product_title{font-size:30px;font-weight:700;color:var(--text)}
.woocommerce div.product p.price,.woocommerce div.product span.price{color:var(--blue-dark);font-size:22px;font-weight:700}
.woocommerce button.button.alt{background:var(--blue);color:#fff;border-radius:2px}
.woocommerce button.button.alt:hover{background:var(--blue-dark)}
.woocommerce .quantity .qty{border:1px solid var(--gray);border-radius:2px;padding:8px}
.woocommerce-message,.woocommerce-info{border-top-color:var(--blue)}
.woocommerce-message::before,.woocommerce-info::before{color:var(--blue)}

/* cart & checkout */
.woocommerce table.shop_table{border-radius:2px}
.woocommerce-cart table.cart td.actions .coupon .input-text{border:1px solid var(--gray);border-radius:2px;padding:9px 12px}

/* widgets */
.woocommerce .widget_layered_nav ul,.woocommerce .widget_product_categories ul{list-style:none;padding:0}
.woocommerce .widget_layered_nav ul li,.woocommerce .widget_product_categories ul li{padding:6px 0}
.woocommerce .widget_price_filter .ui-slider .ui-slider-range{background:var(--blue)}
.woocommerce .widget_price_filter .ui-slider .ui-slider-handle{background:var(--blue)}

/* responsive */
@media (max-width:1024px){.woocommerce ul.products{grid-template-columns:repeat(2,1fr)}}
@media (max-width:767px){.woocommerce ul.products{grid-template-columns:1fr}}

/* ==========================================================================
   SUNMIWO — shop archive + single product (custom, container-aware)
   ========================================================================== */
.page-head{background:var(--white);border-bottom:1px solid var(--gray);padding:30px 0}
.page-head--tight{padding:22px 0}
.page-head .container{padding-top:0;padding-bottom:0}
.woo-breadcrumb,.woocommerce-breadcrumb{font-size:12.5px;letter-spacing:.3px;color:var(--muted);margin-bottom:12px}
.woo-breadcrumb a,.woocommerce-breadcrumb a{color:var(--muted)}
.woo-breadcrumb a:hover,.woocommerce-breadcrumb a:hover{color:var(--blue)}
.woo-breadcrumb .delimiter,.woocommerce-breadcrumb .delimiter{margin:0 7px;color:#c9c9c9}
.page-title{font-size:clamp(26px,3vw,38px);font-weight:700;color:var(--text);letter-spacing:0}
.page-head__desc{margin-top:12px;max-width:760px;color:var(--muted);font-size:15px;line-height:1.7}

/* NB: .shop also carries .container — use padding-top/bottom only so we keep
   the container's horizontal padding (otherwise content is flush to the edge). */
.shop{padding-top:48px;padding-bottom:90px}
.shop__toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:30px;flex-wrap:wrap}
.shop__count{font-size:13.5px;color:var(--muted);letter-spacing:.3px}
.shop__sort select{font-family:var(--font);font-size:13.5px;padding:9px 12px;border:1px solid var(--gray);border-radius:var(--radius);background:#fff;color:var(--text)}
.shop__empty{text-align:center;color:var(--muted);padding:60px 0}

/* product card (shared by archive + related) */
.product__badge{
  position:absolute;top:14px;left:14px;z-index:2;
  background:var(--blue);color:#fff;font-size:11px;font-weight:700;letter-spacing:.6px;
  padding:5px 11px;border-radius:999px;text-transform:uppercase;
}
.product__price{margin-top:8px;color:var(--blue-dark);font-weight:700;font-size:16px}
.product__price del{color:var(--muted);font-weight:400;margin-right:8px}
.product__price ins{text-decoration:none;color:var(--blue-dark)}
.product__actions{margin-top:12px}
.product__actions .button,
.product__actions a.button{
  display:inline-block;padding:11px 20px;background:var(--blue);color:#fff;
  border-radius:var(--radius);font-size:12px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;
  transition:background .2s ease;
}
.product__actions .button:hover,
.product__actions a.button:hover{background:var(--blue-dark)}
.product__actions .added_to_cart{display:inline-block;margin-left:10px;font-size:12px;font-weight:700;color:var(--blue);text-transform:uppercase;letter-spacing:.6px}

/* single product */
.pdp{padding-top:40px;padding-bottom:90px}
.pdp__main{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start}
/* 网格子项最小宽度归零：图片/长内容的固有宽度（min-content）会把
   1fr 轨道撑大，导致手机端整页横向溢出 */
.pdp__main > *{min-width:0}
.pdp__gallery{position:sticky;top:20px}
.pdp__mainimg{max-width:520px;margin:0 auto;background:var(--light);border:1px solid var(--gray);border-radius:var(--radius);overflow:hidden}
.pdp__mainimg img{width:100%;max-width:100%;height:auto;display:block;aspect-ratio:1/1;object-fit:cover}
.pdp__thumbs-nav{display:flex;align-items:center;gap:8px;max-width:520px;margin:12px auto 0}
.pdp__thumbs{flex:1 1 auto;min-width:0;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-ms-overflow-style:none;scroll-behavior:smooth;overscroll-behavior-x:contain}
.pdp__thumbs::-webkit-scrollbar{display:none}
/* 内容未溢出时居中；溢出时从左侧起排、可横向滚动 */
.pdp__thumbs-track{display:flex;gap:10px;width:max-content;margin:0 auto;padding:2px}
.pdp__thumb{flex:0 0 auto;width:76px;height:76px;padding:0;border:1px solid var(--gray);border-radius:var(--radius);overflow:hidden;background:var(--light);cursor:pointer;transition:border-color .2s ease}
.pdp__thumb img{width:100%;height:100%;object-fit:cover}
.pdp__thumb.is-active,.pdp__thumb:hover{border-color:var(--blue)}
/* 滚动按钮：仅在缩略图放不下一行时由脚本点亮 */
.pdp__thumbs-btn{display:none;flex:0 0 auto;align-items:center;justify-content:center;width:26px;height:56px;padding:0;border:1px solid var(--gray);border-radius:var(--radius);background:#fff;color:var(--blue-dark);cursor:pointer;transition:border-color .2s ease,color .2s ease,opacity .2s ease}
.pdp__thumbs-btn.is-on{display:flex}
.pdp__thumbs-btn:hover{border-color:var(--blue);color:var(--blue)}
.pdp__thumbs-btn:disabled{opacity:.3;border-color:var(--gray);color:var(--muted);cursor:default}
.pdp__thumbs-btn svg{display:block;width:16px;height:16px}

.pdp__summary .product_title{font-size:clamp(26px,2.6vw,34px);font-weight:700;color:var(--text);line-height:1.2}
.pdp__summary .woocommerce-product-rating{margin:12px 0 6px;font-size:13px;color:var(--muted)}
.pdp__summary .price{color:var(--blue-dark);font-size:26px;font-weight:700;margin:14px 0 18px}
.pdp__summary .price del{color:var(--muted);font-weight:400;font-size:18px;margin-right:10px}
.pdp__summary .price ins{text-decoration:none}
.pdp__summary .woocommerce-product-details__short-description{font-size:15px;line-height:1.8;color:#444;margin-bottom:22px}
/* 主图右侧规格表（原站 short description 图的结构化版本） */
.pdp-specs{
  display:grid;grid-template-columns:1fr 1fr;
  border:1px solid var(--gray);border-radius:var(--radius);overflow:hidden;background:#fff;
  margin:0 0 24px;
}
.pdp-specs__item{
  display:flex;align-items:flex-start;gap:11px;
  padding:13px 15px;border-bottom:1px solid var(--gray);min-width:0;
}
.pdp-specs__item:nth-child(odd){border-right:1px solid var(--gray)}
.pdp-specs__item:nth-last-child(-n+2){border-bottom:0}
.pdp-specs__icon{flex:0 0 20px;width:20px;height:20px;margin-top:1px;color:var(--blue);line-height:0}
.pdp-specs__icon svg{display:block;width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.35;stroke-linecap:round;stroke-linejoin:round}
.pdp-specs__text{min-width:0}
.pdp-specs__label{display:block;font-size:10.5px;line-height:1.35;letter-spacing:.7px;text-transform:uppercase;color:var(--muted)}
.pdp-specs__value{display:block;margin-top:2px;font-size:13px;line-height:1.45;font-weight:700;color:var(--text);overflow-wrap:anywhere}
.pdp__summary form.cart{margin-bottom:22px;display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.pdp__summary form.cart .quantity .qty{width:70px;padding:11px;border:1px solid var(--gray);border-radius:var(--radius);font-family:var(--font);font-size:15px}
.pdp__summary button.button.alt{background:var(--blue);color:#fff;border:1px solid var(--blue);padding:14px 30px;border-radius:var(--radius);font-size:13px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;transition:background .2s ease}
.pdp__summary button.button.alt:hover{background:var(--blue-dark);border-color:var(--blue-dark)}
.pdp__summary .product_meta{font-size:13px;color:var(--muted);border-top:1px solid var(--gray);padding-top:16px;margin-top:6px}
.pdp__summary .product_meta .sku,.pdp__summary .product_meta a{color:var(--blue-dark)}
.pdp__summary .posted_in{display:block;margin-top:4px}

.pdp__desc{max-width:860px;margin:56px 0 0}
.pdp__desc-title{font-size:24px;font-weight:700;color:var(--text);margin-bottom:18px}
.pdp__desc-body{font-size:15px;line-height:1.9;color:#444}
.pdp__desc-body img{max-width:100%;height:auto}
.pdp__desc-body h2,.pdp__desc-body h3{margin:22px 0 10px}
.pdp__desc-body ul,.pdp__desc-body ol{margin:0 0 16px 22px}
.pdp__desc-body li{margin-bottom:6px}

.pdp__related{margin-top:70px}
.pdp__related .section__head{text-align:center;margin-bottom:40px}

/* responsive */
@media (max-width:1024px){
  .pdp__main{grid-template-columns:1fr;gap:30px}
  .pdp__gallery{position:static}
}
@media (max-width:560px){
  /* 手机端：规格表单列，且排到「加入购物车」之后，避免 CTA 被推到很深的位置 */
  .pdp__summary{display:flex;flex-direction:column}
  .pdp__summary > form.cart{order:2}
  .pdp__summary > .pdp-specs{order:3;margin:4px 0 18px}
  .pdp__summary > .product_meta{order:4}
  .pdp-specs{grid-template-columns:1fr}
  .pdp-specs__item:nth-child(odd){border-right:0}
  .pdp-specs__item:nth-last-child(-n+2){border-bottom:1px solid var(--gray)}
  .pdp-specs__item:last-child{border-bottom:0}
}
@media (max-width:767px){
  .shop{padding-top:30px;padding-bottom:60px}
  .page-head{padding:22px 0}
  .pdp__related{margin-top:50px}
  .pdp__summary form.cart .button{width:100%;text-align:center}
}
