body.admin-bar .site-header { top: 0; }
.site-header { position: relative; top: 0; }
.hero { margin-top: 0; }
.wc-page, .wp-content { padding-top: 90px; padding-bottom: 120px; min-height: 65vh; }
.wc-heading { margin-bottom: 50px; }
.wc-heading p { color: var(--muted); font-size: 12px; letter-spacing: .15em; }
.wc-heading h1, .wp-content h1 { font-family: var(--serif); font-size: clamp(44px,6vw,82px); font-weight: 400; margin: 15px 0; }
.woocommerce-result-count { font-size: 13px; }
.woocommerce-ordering { margin-bottom: 30px; }
.woocommerce-ordering select { padding: 10px 34px 10px 12px; border: 1px solid var(--line); background: #fff; }
.woocommerce-pagination { margin-top: 60px; }
.woocommerce-pagination ul { display: flex; gap: 8px; list-style: none; padding: 0; }
.woocommerce-pagination a, .woocommerce-pagination span { display: grid; place-items: center; width: 38px; height: 38px; border: 1px solid var(--line); }
.anbo-price { font-family: var(--serif); font-size: 26px; margin: 25px 0; }
.single_add_to_cart_button, .checkout-button, #place_order, .wc-forward, .button { border: 0; background: #171717; color: white; padding: 14px 22px; cursor: pointer; }
.quantity input { width: 70px; padding: 13px; margin-right: 8px; }
.cart { display: flex; align-items: center; margin-bottom: 28px; }
.woocommerce-message, .woocommerce-info, .woocommerce-error { padding: 16px 18px; margin-bottom: 25px; background: #f0ece6; border-left: 3px solid #111; }
.woocommerce-cart-form table, .woocommerce-checkout-review-order-table { width: 100%; border-collapse: collapse; }
.woocommerce-cart-form th, .woocommerce-cart-form td, .woocommerce-checkout-review-order-table th, .woocommerce-checkout-review-order-table td { padding: 14px; border-bottom: 1px solid var(--line); text-align: left; }
.woocommerce form .form-row { margin-bottom: 18px; }
.woocommerce input.input-text, .woocommerce textarea, .woocommerce select { width: 100%; padding: 13px; border: 1px solid var(--line); background: #fff; }
.woocommerce .col2-set { display: grid; grid-template-columns: 1fr 1fr; gap: 40px; }
.site-footer { grid-template-columns: 2fr repeat(3,1fr); }
@media(max-width:900px){ body.admin-bar .site-header{top:46px}.woocommerce .col2-set{grid-template-columns:1fr}.wc-page{padding-top:55px}.site-footer{grid-template-columns:1fr 1fr} }

/* Product archive: contained editorial gallery instead of raw full-width images. */
.product-shell { width:min(1320px,92vw); margin:0 auto; padding:55px 0 120px; }
.breadcrumbs { display:flex; flex-wrap:wrap; gap:10px; margin-bottom:32px; color:var(--muted); font-size:11px; letter-spacing:.13em; }
.product-top { display:grid; grid-template-columns:minmax(0,1.45fr) minmax(300px,.65fr); gap:clamp(36px,5vw,76px); align-items:start; }
.main-gallery { display:grid; grid-template-columns:1fr 1fr; gap:12px; min-width:0; }
.main-shot { margin:0; aspect-ratio:1; overflow:hidden; background:#eee9e1; }
.main-shot:first-child { grid-column:1/-1; aspect-ratio:4/5; max-height:min(76vh,920px); }
.main-shot img { display:block; width:100%; height:100%; object-fit:contain; background:#eee9e1; }
.product-summary { min-width:0; padding:24px 0; }
.product-code { display:flex; justify-content:space-between; gap:18px; color:var(--muted); font-size:11px; letter-spacing:.14em; }
.product-summary h1 { margin:28px 0 12px; font-family:var(--cn); font-size:clamp(34px,3.2vw,48px); font-weight:400; line-height:1.25; }
.product-alt-name { color:var(--muted); font-family:var(--serif); font-size:16px; letter-spacing:.06em; }
.product-description { margin:28px 0; padding:28px 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); color:var(--muted); font-family:var(--cn); font-size:15px; line-height:1.85; }
.purchase-note { margin:-14px 0 18px; color:var(--muted); font-family:var(--cn); font-size:12px; line-height:1.65; }
.product-summary form.cart { display:block; margin:0 0 30px; padding:22px 0 28px; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.product-summary .variations { width:100%; border-collapse:collapse; }
.product-summary .variations tr { display:grid; grid-template-columns:72px minmax(0,1fr); gap:14px; align-items:center; padding:0 0 13px; }
.product-summary .variations th,.product-summary .variations td { padding:0; text-align:left; }
.product-summary .variations label { color:var(--muted); font-size:11px; font-weight:500; letter-spacing:.1em; }
.product-summary .variations select { width:100%; min-height:46px; padding:0 38px 0 13px; border:1px solid var(--line); border-radius:0; background:#fff; color:var(--ink); font-family:var(--cn); font-size:13px; }
.product-summary .reset_variations { display:inline-block; margin-top:8px; color:var(--muted); font-size:10px; letter-spacing:.1em; text-decoration:underline; text-underline-offset:3px; }
.product-summary .woocommerce-variation { min-height:0; }
.product-summary .woocommerce-variation-price { margin:4px 0 16px; font-family:var(--serif); font-size:19px; }
.product-summary .woocommerce-variation-price .price { display:block; }
.product-summary .woocommerce-variation-availability { margin-bottom:12px; font-size:12px; }
.product-summary .woocommerce-variation-add-to-cart { display:grid; grid-template-columns:74px minmax(0,1fr); gap:10px; align-items:stretch; }
.product-summary .quantity input { width:100%; height:50px; margin:0; border:1px solid var(--line); background:#fff; text-align:center; }
.product-summary .single_add_to_cart_button { width:100%; min-height:50px; padding:14px 20px; background:var(--ink); font-size:11px; letter-spacing:.14em; transition:background .2s ease,opacity .2s ease; }
.product-summary .single_add_to_cart_button:hover { background:#4b292f; }
.product-summary .single_add_to_cart_button.disabled { cursor:not-allowed; opacity:.35; }
.anbo-price del { margin-right:8px; color:var(--muted); font-size:.7em; text-decoration-thickness:1px; }
.anbo-price ins,.woocommerce-variation-price ins { color:#4b292f; text-decoration:none; }
.product-facts { margin:0 0 28px; }
.product-facts div { display:grid; grid-template-columns:105px 1fr; gap:15px; padding:10px 0; border-bottom:1px solid var(--line); }
.product-facts dt { color:var(--muted); font-size:11px; letter-spacing:.13em; }
.product-facts dd { margin:0; font-family:var(--cn); font-size:13px; line-height:1.65; }
.detail-section { padding-top:120px; }
.detail-heading { display:grid; grid-template-columns:1fr 1fr; align-items:end; margin-bottom:55px; padding-bottom:26px; border-bottom:1px solid var(--line); }
.detail-heading p { margin:0; font-family:var(--serif); font-size:clamp(45px,6vw,82px); line-height:.9; letter-spacing:-.04em; }
.detail-heading h2 { justify-self:end; margin:0; font-family:var(--cn); font-size:28px; font-weight:400; }
.detail-gallery { width:min(900px,100%); margin:0 auto; display:flex; flex-direction:column; gap:10px; }
.detail-shot { margin:0; background:#eee9e1; }
.detail-shot img { display:block; width:100%; height:auto; object-fit:contain; }

@media(max-width:900px){
  body.admin-bar .site-header{top:0}
  .product-top{grid-template-columns:1fr}
  .product-summary{order:-1}
}
@media(max-width:620px){
  .product-shell{width:calc(100% - 28px);padding-top:30px}
  .product-top{gap:30px}
  .main-gallery{display:flex;overflow-x:auto;gap:8px;padding-bottom:8px;scroll-snap-type:x mandatory}
  .main-shot,.main-shot:first-child{min-width:84%;max-height:none;aspect-ratio:1;scroll-snap-align:start}
  .product-summary{padding:15px 5px}
  .product-summary h1{font-size:34px}
  .product-description{font-size:14px}
  .detail-section{padding-top:80px}
  .detail-heading{grid-template-columns:1fr}
  .detail-heading h2{justify-self:start;margin-top:18px}
  .detail-gallery{gap:6px}
}

/* Interactive product gallery — thumbnail rail, single stage, sticky purchase panel. */
.product-top { grid-template-columns:minmax(0,1.3fr) minmax(340px,.7fr); gap:clamp(44px,6vw,92px); }
.product-gallery-ui { display:grid; grid-template-columns:76px minmax(0,1fr); gap:16px; min-width:0; align-items:start; }
.gallery-thumbs { display:flex; flex-direction:column; gap:10px; max-height:720px; overflow-y:auto; padding-right:2px; scrollbar-width:thin; }
.gallery-thumb { display:block; width:100%; aspect-ratio:1; padding:0; border:1px solid transparent; background:#eee9e1; cursor:pointer; overflow:hidden; opacity:.6; transition:border-color .2s ease,opacity .2s ease; }
.gallery-thumb:hover,.gallery-thumb.is-active { opacity:1; border-color:#242321; }
.gallery-thumb:focus-visible { outline:2px solid #242321; outline-offset:2px; }
.gallery-thumb img { display:block; width:100%; height:100%; object-fit:cover; }
.gallery-stage { position:relative; min-width:0; }
.gallery-stage-frame { width:100%; max-height:720px; aspect-ratio:4/5; margin:0; overflow:hidden; background:#eee9e1; }
.gallery-stage-image { display:block; width:100%; height:100%; object-fit:contain; background:#eee9e1; transition:opacity .18s ease; }
.gallery-stage-image.is-changing { opacity:.25; }
.gallery-arrow { position:absolute; top:50%; display:grid; place-items:center; width:42px; height:42px; margin-top:-21px; border:1px solid rgba(34,33,31,.22); background:rgba(246,243,237,.9); color:var(--ink); cursor:pointer; font-size:17px; backdrop-filter:blur(8px); transition:background .2s,border-color .2s; }
.gallery-arrow:hover { border-color:var(--ink); background:var(--paper); }
.gallery-prev { left:16px; }
.gallery-next { right:16px; }
.gallery-counter { position:absolute; right:14px; bottom:12px; padding:7px 9px; background:rgba(246,243,237,.9); font-size:10px; letter-spacing:.1em; }
.gallery-counter b { font-weight:500; }
.product-summary { position:sticky; top:34px; align-self:start; padding:20px 0; }
body.admin-bar .product-summary { top:66px; }
.detail-gallery { width:min(1040px,100%); display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.detail-shot { aspect-ratio:1; overflow:hidden; }
.detail-shot img { width:100%; height:100%; object-fit:contain; }
.detail-gallery.is-collapsed .detail-shot:nth-child(n+7) { display:none; }
.detail-toggle { display:block; min-width:250px; margin:26px auto 0; padding:14px 24px; border:1px solid var(--ink); background:transparent; cursor:pointer; font-size:12px; letter-spacing:.13em; transition:background .2s,color .2s; }
.detail-toggle:hover { background:var(--ink); color:#fff; }

@media(max-width:900px){
  .product-top{grid-template-columns:1fr;gap:42px}
  .product-summary{position:static;order:initial;padding:10px 4px}
  .product-gallery-ui{grid-template-columns:64px minmax(0,1fr);gap:12px}
  .gallery-stage-frame{max-height:760px}
}
@media(max-width:620px){
  .product-gallery-ui{display:flex;flex-direction:column;gap:10px}
  .gallery-stage{order:1;width:100%}
  .gallery-stage-frame{aspect-ratio:1;max-height:none}
  .gallery-thumbs{order:2;width:100%;max-height:none;flex-direction:row;overflow-x:auto;overflow-y:hidden;padding:2px 0 7px;scroll-snap-type:x proximity}
  .gallery-thumb{flex:0 0 68px;width:68px;scroll-snap-align:start}
  .gallery-arrow{width:38px;height:38px;margin-top:-19px}
  .gallery-prev{left:10px}.gallery-next{right:10px}
  .detail-gallery{grid-template-columns:1fr;gap:8px}
  .detail-shot{aspect-ratio:auto}
  .detail-shot img{height:auto}
  .product-summary .variations tr{grid-template-columns:64px minmax(0,1fr)}
  .product-summary .woocommerce-variation-add-to-cart{grid-template-columns:68px minmax(0,1fr)}
}

/* ---- 详情页升级：款式色块 / 信任背书 / lightbox / 相关推荐 ---- */
/* 变体色块（替代 WooCommerce 下拉框） */
.variations td.has-swatches select{display:none;}
.anbo-swatches{display:flex;flex-wrap:wrap;gap:8px;margin-top:2px;}
.anbo-swatch{border:1px solid var(--line);background:#fff;color:var(--ink);font-family:var(--cn);font-size:12.5px;letter-spacing:.02em;line-height:1.3;padding:9px 13px;cursor:pointer;transition:border-color .15s,background .15s,color .15s;}
.anbo-swatch:hover{border-color:var(--muted);}
.anbo-swatch.is-on{border-color:var(--ink);background:var(--ink);color:#fff;}
.anbo-swatch.is-disabled{opacity:.35;text-decoration:line-through;cursor:not-allowed;}
.variations td.has-swatches label.anbo-swatch-hint{display:none;}

/* 信任背书 */
.pdp-assure{list-style:none;margin:24px 0 4px;padding:22px 0 4px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:14px 18px;}
.pdp-assure li{display:flex;gap:10px;align-items:flex-start;color:#4a4740;}
.pdp-assure svg{flex:0 0 auto;margin-top:1px;color:#4b292f;}
.pdp-assure b{display:block;font-size:12px;font-weight:600;letter-spacing:.04em;}
.pdp-assure em{font-style:normal;color:var(--muted);font-size:10.5px;line-height:1.4;}

/* 相关推荐 */
.related-section{padding-top:100px;}

/* 点击放大 lightbox */
.gallery-stage-image{cursor:zoom-in;}
.detail-shot img{cursor:zoom-in;}
.pdp-lightbox{position:fixed;inset:0;z-index:2000;display:none;align-items:center;justify-content:center;background:rgba(18,16,15,.93);cursor:zoom-out;}
.pdp-lightbox.is-open{display:flex;}
.pdp-lightbox img{max-width:92vw;max-height:92vh;object-fit:contain;box-shadow:0 20px 60px rgba(0,0,0,.5);}
.pdp-lightbox-close{position:absolute;top:20px;right:26px;background:none;border:0;color:#fff;font-size:30px;line-height:1;cursor:pointer;}

@media(max-width:620px){
  .pdp-assure{grid-template-columns:1fr;}
  .related-section{padding-top:64px;}
}
