/* ============================================================
   DAISCH 戴世 中文官网 — WooCommerce Styles
   daisch-woocommerce.css
   ============================================================ */

/* ── 1. Shop/Archive Layout ── */

/* Hide breadcrumb on WooCommerce pages */
.woocommerce .woocommerce-breadcrumb {
  display: none;
}

/* Hide empty sidebar */
.woocommerce-page .widget-area.sidebar {
  display: none !important;
}

/* ── Full-width layout chain ── */
.woocommerce-page .daisch-main {
  display: block;
  max-width: var(--daisch-max-width);
  margin: 0 auto;
  padding: calc(var(--daisch-header-total-height) + 30px) var(--daisch-page-gutter) 60px;
}

.woocommerce-page .daisch-main .content-area,
.woocommerce-page .site-main,
.woocommerce-page .woocommerce-archive-wrapper,
.woocommerce-page .inside-article,
.woocommerce-page .entry-content {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* ── Page header: title + sort bar ── */
.woocommerce-products-header {
  text-align: left;
  padding: 0;
  background: transparent;
  margin-bottom: 8px;
}

.woocommerce-products-header__title {
  font-family: var(--daisch-font-en);
  font-size: 24px;
  font-weight: 700;
  color: var(--daisch-text-primary);
  margin: 0;
  position: relative;
  display: inline-block;
}

/* Decorative underline below title */
.woocommerce-products-header__title::after {
  content: '';
  display: block;
  width: 40px;
  height: 2px;
  background: var(--daisch-accent);
  margin-top: 6px;
}

/* ── Sort bar (result count + ordering) ── */
.woocommerce .woocommerce-result-count {
  float: left;
  margin: 12px 0 0;
  font-size: 13px;
  color: var(--daisch-text-secondary);
}

.woocommerce .woocommerce-ordering {
  float: right;
  margin: 8px 0 30px;
}

.woocommerce .woocommerce-ordering select {
  font-size: 13px;
  padding: 8px 32px 8px 12px;
  border: 1px solid #eaeaea;
  border-radius: 0;
  background: #fff;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  cursor: pointer;
}

/* ── Product grid ── */
.woocommerce-page ul.products {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 24px !important;
  clear: both;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

.woocommerce-page ul.products::before {
  display: none !important;
}

ul.products li.product {
  float: none !important;
  width: auto !important;
  margin: 0 !important;
  background: var(--daisch-white);
  border: 1px solid #eaeaea;
  border-radius: 0;
  overflow: hidden;
  transition: box-shadow 0.3s var(--daisch-ease-out);
  position: relative;
}
ul.products li.product:hover {
  box-shadow: 0 4px 12px rgba(0,0,0,0.08);
}

/* Product image — square 1:1 */
.woocommerce ul.products li.product a img {
  display: block;
  width: 100%;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  margin: 0;
  border-radius: 0;
}

/* Product title */
.woocommerce ul.products li.product .woocommerce-loop-product__title {
  font-family: var(--daisch-font-cn);
  font-size: 14px;
  font-weight: 500;
  line-height: 1.3;
  color: var(--daisch-text-primary);
  padding: 12px 12px 4px;
  margin: 0;
}

/* Price */
.woocommerce ul.products li.product .price {
  font-family: var(--daisch-font-en);
  font-size: 14px;
  font-weight: 500;
  color: var(--daisch-text-primary) !important;
  padding: 0 12px 14px;
  margin: 0;
}

.woocommerce ul.products li.product .price del {
  color: #707070;
  font-weight: 500;
}

.woocommerce ul.products li.product .price ins {
  color: #ed1b23;
  text-decoration: none;
  font-weight: 500;
}

/* Hide add to cart buttons & star ratings */
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product .star-rating {
  display: none !important;
}

/* Sale badge */
.woocommerce ul.products li.product .onsale {
  background: #ed1017;
  color: #fff;
  font-size: 11px;
  font-weight: 600;
  padding: 4px 10px;
  border-radius: 0;
  top: 0;
  right: 0;
  left: auto;
  line-height: 1.4;
  min-height: auto;
  min-width: auto;
  position: absolute;
  z-index: 2;
}

/* ── Pagination ── */
.woocommerce nav.woocommerce-pagination {
  text-align: center;
  margin-top: 30px;
}

.woocommerce nav.woocommerce-pagination ul {
  border: none;
}

.woocommerce nav.woocommerce-pagination ul li {
  border: none;
  margin: 0 3px;
}

.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
  font-size: 13px;
  padding: 8px 14px;
  border: 1px solid #eaeaea;
  border-radius: 0;
  color: var(--daisch-text-primary);
  background: #fff;
  min-width: auto;
  line-height: 1.4;
}

.woocommerce nav.woocommerce-pagination ul li span.current {
  background: var(--daisch-accent);
  color: #fff;
  border-color: var(--daisch-accent);
}

.woocommerce nav.woocommerce-pagination ul li a:hover {
  background: var(--daisch-gray-100);
  color: var(--daisch-text-primary);
}

/* ── 2. Single Product ── */
.single-product .daisch-main {
  max-width: var(--daisch-max-width);
  margin: 0 auto;
  padding: calc(var(--daisch-header-total-height) + 20px) var(--daisch-page-gutter) 60px;
}

/* Product images */
.woocommerce div.product div.images {
  width: 60% !important;
  margin-bottom: 0;
}
.woocommerce div.product div.images img {
  border-radius: var(--daisch-radius-md);
}

.woocommerce div.product .woocommerce-product-gallery__trigger {
  top: 1rem !important;
  right: 1rem !important;
}

.woocommerce div.product .woocommerce-product-gallery {
  overflow: hidden;
  border-radius: var(--daisch-radius-md);
}

/* Product summary */
.woocommerce div.product div.summary {
  width: 40% !important;
  padding-left: 40px;
  box-sizing: border-box;
}

.woocommerce div.product .product_title {
  font-family: var(--daisch-font-cn);
  font-size: clamp(1.5rem, 3vw, 2rem);
  font-weight: 700;
  color: var(--daisch-text-primary);
}

.woocommerce div.product .price {
  font-family: var(--daisch-font-en);
  font-size: 1.5rem;
  font-weight: 700;
  color: var(--daisch-accent) !important;
}

.woocommerce div.product .woocommerce-product-details__short-description,
.woocommerce div.product .woocommerce-tabs .panel {
  font-size: 15px;
}

.woocommerce div.product .single_add_to_cart_button {
  padding: 14px 40px !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  background: var(--daisch-accent) !important;
  color: #fff !important;
  border: none !important;
  border-radius: var(--daisch-radius-sm) !important;
  transition: background 0.2s;
}
.woocommerce div.product .single_add_to_cart_button:hover {
  background: var(--daisch-accent-hover) !important;
}

/* Tabs */
.woocommerce div.product .woocommerce-tabs ul.tabs {
  padding: 0;
  border-bottom: 1px solid var(--daisch-border);
}
.woocommerce div.product .woocommerce-tabs ul.tabs li {
  border: none;
  background: transparent;
  border-radius: 0;
  margin: 0;
  padding: 0 20px;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li a {
  font-family: var(--daisch-font-cn);
  font-weight: 600;
  color: var(--daisch-text-secondary);
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active {
  border-bottom: 2px solid var(--daisch-accent);
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a {
  color: var(--daisch-accent);
}

/* Hide reviews tab and review system */
.woocommerce div.product .woocommerce-tabs ul.tabs li.reviews_tab {
  display: none !important;
}
.woocommerce div.product .woocommerce-tabs .panel#tab-reviews {
  display: none !important;
}

/* ── 3. Cart Page ── */
.woocommerce-cart .daisch-main {
  max-width: var(--daisch-max-width);
  margin: 0 auto;
  padding: calc(var(--daisch-header-total-height) + 40px) var(--daisch-page-gutter) 60px;
}

.woocommerce-cart .entry-content { max-width: none !important; }

.woocommerce table.shop_table {
  border: 1px solid var(--daisch-border);
  border-radius: var(--daisch-radius-md);
  border-collapse: separate;
}
.woocommerce table.shop_table th {
  font-family: var(--daisch-font-cn);
  font-weight: 600;
  background: var(--daisch-gray-100);
}

/* Cart actions */
.woocommerce .cart .button,
.woocommerce .cart input.button {
  background: var(--daisch-accent) !important;
  color: #fff !important;
  border: none !important;
  border-radius: var(--daisch-radius-sm) !important;
  font-weight: 600 !important;
}

/* Coupon */
.woocommerce .cart .coupon .input-text {
  border: 1px solid var(--daisch-border);
  border-radius: var(--daisch-radius-sm);
  padding: 8px 12px;
}

/* Cart totals */
.woocommerce .cart-collaterals .cart_totals {
  background: var(--daisch-gray-50);
  border: 1px solid var(--daisch-border);
  border-radius: var(--daisch-radius-md);
  padding: 24px;
}

.woocommerce .checkout-button {
  background: var(--daisch-accent) !important;
  color: #fff !important;
  border: none !important;
  border-radius: var(--daisch-radius-sm) !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  padding: 14px 40px !important;
}

/* ── 4. Checkout Page ── */

.woocommerce-checkout .daisch-main {
  max-width: var(--daisch-max-width);
  margin: 0 auto;
  padding: calc(var(--daisch-header-total-height) + 40px) var(--daisch-page-gutter) 60px;
}

.woocommerce-checkout .entry-content { max-width: none !important; }

/* ── Coupon bar ── */
.woocommerce-checkout .woocommerce-form-coupon-toggle {
  margin-bottom: 24px;
}

.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info {
  padding: 10px 14px;
  margin: 0;
  background: var(--daisch-gray-50);
  border: 1px solid var(--daisch-border);
  border-radius: var(--daisch-radius-sm);
  font-size: 14px;
  color: var(--daisch-text-secondary);
}

.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info::before {
  display: none !important;
}

.woocommerce-checkout .woocommerce-form-coupon-toggle .showcoupon {
  color: var(--daisch-accent);
  text-decoration: underline;
  text-underline-offset: 2px;
  font-weight: 500;
}

.woocommerce-checkout .checkout_coupon.woocommerce-form-coupon {
  display: flex;
  gap: 10px;
  margin-bottom: 24px;
  padding: 16px;
  background: var(--daisch-gray-50);
  border: 1px solid var(--daisch-border);
  border-radius: var(--daisch-radius-sm);
}

.woocommerce-checkout .checkout_coupon p {
  margin: 0;
}

.woocommerce-checkout .checkout_coupon .form-row-first {
  flex: 1;
}

.woocommerce-checkout .checkout_coupon .form-row-last {
  flex-shrink: 0;
}

.woocommerce-checkout .checkout_coupon .input-text {
  width: 100%;
  height: 40px;
  padding: 0 12px;
  border: 1px solid var(--daisch-border);
  border-radius: var(--daisch-radius-sm);
  font-size: 14px;
}

.woocommerce-checkout .checkout_coupon .button {
  height: 40px;
  padding: 0 20px !important;
  font-size: 13px !important;
}

/* ── Section headings ── */
.woocommerce-checkout .woocommerce-billing-fields h3 {
  font-family: var(--daisch-font-cn);
  font-size: 20px;
  font-weight: 700;
  margin: 0 0 24px 0;
  padding-bottom: 12px;
  border-bottom: 2px solid var(--daisch-text-primary);
}

.woocommerce-checkout #order_review_heading {
  font-family: var(--daisch-font-cn);
  font-size: 20px;
  font-weight: 700;
  margin: 0 0 24px 0;
  padding-bottom: 12px;
  border-bottom: 2px solid var(--daisch-text-primary);
}

/* ── Form rows ── */
.woocommerce-checkout form.woocommerce-checkout .form-row {
  margin: 0 0 18px 0;
  padding: 0;
}

.woocommerce-checkout form.woocommerce-checkout .form-row label {
  display: block;
  font-family: var(--daisch-font-cn);
  font-size: 14px;
  font-weight: 500;
  color: var(--daisch-text-primary);
  margin-bottom: 6px;
}

.woocommerce-checkout form.woocommerce-checkout .form-row label .required {
  color: var(--daisch-accent);
  text-decoration: none;
  font-weight: 400;
}

/* ── Input fields ── */
.woocommerce-checkout form.woocommerce-checkout .input-text,
.woocommerce-checkout form.woocommerce-checkout .select2-container .select2-selection {
  height: 44px;
  padding: 0 14px;
  border: 1px solid var(--daisch-border);
  border-radius: var(--daisch-radius-sm);
  font-family: var(--daisch-font-cn);
  font-size: 15px;
  color: var(--daisch-text-primary);
  background: var(--daisch-white);
  box-sizing: border-box;
  transition: border-color 0.2s;
}

.woocommerce-checkout form.woocommerce-checkout .input-text:focus {
  border-color: var(--daisch-accent);
  outline: none;
}

.woocommerce-checkout form.woocommerce-checkout textarea.input-text,
.woocommerce-checkout #order_comments {
  display: block;
  width: 100% !important;
  max-width: 100%;
  box-sizing: border-box;
  height: auto;
  padding: 12px 14px;
  min-height: 80px;
}

/* Select2 overrides */
.woocommerce-checkout .select2-container .select2-selection {
  display: flex;
  align-items: center;
  height: 44px;
}

.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__arrow {
  top: 50%;
  transform: translateY(-50%);
}

/* ── Two-column layout (desktop) ── */

/* Prevent col2-set from creating extra columns — col-1 and col-2 stack vertically */
.woocommerce-checkout #customer_details .col-1,
.woocommerce-checkout #customer_details .col-2 {
  float: none !important;
  width: 100% !important;
}

@media (min-width: 768px) {
  .woocommerce-checkout form.woocommerce-checkout::after {
    content: "";
    display: table;
    clear: both;
  }

  /* Left column: billing + additional fields */
  .woocommerce-checkout #customer_details,
  .woocommerce-checkout .woocommerce-additional-fields {
    float: left;
    width: 52%;
    clear: left;
  }

  /* Right column: order review */
  .woocommerce-checkout #order_review_heading,
  .woocommerce-checkout #order_review {
    float: right;
    width: 44%;
    clear: right;
  }
}

/* ── Order-pay page (付款) — single column, undo two-column float ── */
/* form-pay.php renders #order_review as a <form> with no #customer_details,
   so the checkout float:right/44% would collapse the container onto the footer. */
.woocommerce-checkout form#order_review,
body.woocommerce-order-pay #order_review,
body.woocommerce-order-pay #order_review_heading {
  float: none !important;
  width: 100% !important;
  clear: none !important;
  max-width: 720px;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* ── Order review table ── */
.woocommerce-checkout #order_review .shop_table {
  width: 100%;
  border: 1px solid var(--daisch-border);
  border-radius: var(--daisch-radius-md);
  border-collapse: separate;
  overflow: hidden;
  margin-bottom: 24px;
}

.woocommerce-checkout #order_review .shop_table th,
.woocommerce-checkout #order_review .shop_table td {
  padding: 14px 16px;
  font-size: 14px;
  border-bottom: 1px solid var(--daisch-gray-100);
  text-align: left;
}

.woocommerce-checkout #order_review .shop_table thead th {
  background: var(--daisch-gray-50);
  font-family: var(--daisch-font-cn);
  font-weight: 600;
  font-size: 13px;
  color: var(--daisch-text-secondary);
  text-transform: none;
}

.woocommerce-checkout #order_review .shop_table tbody td {
  font-family: var(--daisch-font-cn);
  color: var(--daisch-text-primary);
}

.woocommerce-checkout #order_review .shop_table tfoot th {
  font-family: var(--daisch-font-cn);
  font-weight: 500;
  color: var(--daisch-text-secondary);
}

.woocommerce-checkout #order_review .shop_table tfoot td {
  font-family: var(--daisch-font-en);
  font-weight: 500;
}

.woocommerce-checkout #order_review .shop_table tfoot .order-total th,
.woocommerce-checkout #order_review .shop_table tfoot .order-total td {
  font-size: 18px;
  font-weight: 700;
  color: var(--daisch-text-primary);
  background: var(--daisch-gray-50);
}

.woocommerce-checkout #order_review .shop_table tbody tr:last-child td,
.woocommerce-checkout #order_review .shop_table tfoot tr:last-child th,
.woocommerce-checkout #order_review .shop_table tfoot tr:last-child td {
  border-bottom: none;
}

/* ── 包邮：隐藏结算页配送方式与运费行 ── */
.woocommerce-checkout #order_review .shop_table tr.shipping,
.woocommerce-checkout .woocommerce-shipping-methods,
.woocommerce-checkout ul#shipping_method {
  display: none;
}

/* ── 企业采购区块：浅灰底卡片，与其它账单信息区分 ── */
.woocommerce-checkout .daisch-corporate-section {
  clear: both; /* 清掉上方「名字/姓氏」的浮动，避免灰底叠到姓名字段上 */
  background: var(--daisch-gray-50);
  border: 1px solid var(--daisch-border);
  border-radius: var(--daisch-radius-md);
  padding: var(--daisch-space-5) var(--daisch-space-5) var(--daisch-space-2);
  margin-bottom: var(--daisch-space-5);
}
.woocommerce-checkout .daisch-corporate-section .form-row {
  margin-bottom: var(--daisch-space-4);
}
.woocommerce-checkout .daisch-corporate-section .daisch-corporate-toggle {
  padding-bottom: var(--daisch-space-2);
  border-bottom: 1px dashed var(--daisch-gray-200);
  margin-bottom: var(--daisch-space-4);
}

/* ── 对公转账必勾企业采购：红框提示。clear 清掉上方「名字/姓氏」浮动，避免红底叠到姓名输入框 ── */
.woocommerce-checkout .daisch-bacs-warn {
  clear: both;
  color: #b91c1c;
  background: #fef2f2;
  border: 1px solid #fecaca;
  border-radius: var(--daisch-radius-md);
  padding: var(--daisch-space-2) var(--daisch-space-4);
  font-size: 13px;
  line-height: 1.6;
  margin: 0 0 var(--daisch-space-4);
}

/* Remove product image from order review */
.woocommerce-checkout #order_review .shop_table .product-thumbnail,
.woocommerce-checkout #order_review .shop_table .product-thumbnail img {
  display: none !important;
}

/* ── Payment methods ── */
.woocommerce-checkout #payment {
  background: var(--daisch-white);
}

.woocommerce-checkout #payment ul.payment_methods {
  padding: 0;
  margin: 0 0 24px 0;
  border: 1px solid var(--daisch-border);
  border-radius: var(--daisch-radius-md);
  overflow: hidden;
  list-style: none;
}

.woocommerce-checkout #payment ul.payment_methods li {
  padding: 16px;
  border-bottom: 1px solid var(--daisch-gray-100);
  margin: 0;
}

.woocommerce-checkout #payment ul.payment_methods li:last-child {
  border-bottom: none;
}

.woocommerce-checkout #payment ul.payment_methods li input[type="radio"] {
  margin-right: 8px;
  accent-color: var(--daisch-accent);
}

.woocommerce-checkout #payment ul.payment_methods li label {
  font-family: var(--daisch-font-cn);
  font-size: 15px;
  font-weight: 500;
  color: var(--daisch-text-primary);
  cursor: pointer;
}

.woocommerce-checkout #payment .payment_box {
  margin: 12px 0 0 0;
  padding: 0;
  background: none;
}

.woocommerce-checkout #payment .payment_box p {
  margin: 0;
  font-size: 13px;
  color: var(--daisch-text-secondary);
  line-height: 1.6;
}

/* ── Terms checkbox ── */
.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper {
  margin-bottom: 20px;
}

.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper .form-row {
  margin-bottom: 8px !important;
}

.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper label {
  font-size: 13px !important;
  color: var(--daisch-text-secondary) !important;
}

.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper a,
.woocommerce-checkout .woocommerce-terms-and-conditions-checkbox-text a {
  color: var(--daisch-accent);
  text-decoration: underline;
}

/* ── Place order button ── */
.woocommerce-checkout #place_order {
  width: 100%;
  height: 52px;
  padding: 0 40px !important;
  font-size: 17px !important;
  font-weight: 700 !important;
  letter-spacing: 0.5px;
  border-radius: var(--daisch-radius-sm) !important;
}

/* Responsive — collapse to single column */
@media (max-width: 767px) {
  .woocommerce-checkout .woocommerce-billing-fields h3,
  .woocommerce-checkout #order_review_heading {
    font-size: 18px;
    margin-bottom: 20px;
  }

  .woocommerce-checkout #order_review {
    margin-top: 32px;
    padding-top: 24px;
    border-top: 1px solid var(--daisch-border);
  }
}

/* ── 5. My Account Page ── */
.woocommerce-account .daisch-main {
  max-width: var(--daisch-max-width);
  margin: 0 auto;
  padding: calc(var(--daisch-header-total-height) + 40px) var(--daisch-page-gutter) 60px;
}

.woocommerce-account .entry-content { max-width: none !important; }

.woocommerce-MyAccount-navigation {
  background: var(--daisch-gray-50);
  border-radius: var(--daisch-radius-md);
  padding: 24px;
}
.woocommerce-MyAccount-navigation ul {
  list-style: none;
  margin: 0; padding: 0;
}
.woocommerce-MyAccount-navigation ul li {
  margin-bottom: 8px;
}
.woocommerce-MyAccount-navigation ul li a {
  display: block;
  padding: 10px 16px;
  font-family: var(--daisch-font-cn);
  font-weight: 500;
  color: var(--daisch-text-secondary);
  text-decoration: none;
  border-radius: var(--daisch-radius-sm);
  transition: background 0.2s, color 0.2s;
}
.woocommerce-MyAccount-navigation ul li.is-active a,
.woocommerce-MyAccount-navigation ul li a:hover {
  background: var(--daisch-accent);
  color: #fff;
}

/* Login / Register form */
.woocommerce form.login,
.woocommerce form.register {
  border: 1px solid var(--daisch-border);
  border-radius: var(--daisch-radius-md);
  padding: 32px;
}

.woocommerce form .form-row input.input-text {
  border: 1px solid var(--daisch-border);
  border-radius: var(--daisch-radius-sm);
  padding: 10px 14px;
  font-family: inherit;
}

/* ── 登录/注册三列并排（form-login.php 覆盖模板，一屏全见） ── */
.daisch-auth-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
  align-items: start;
}

.daisch-auth-col {
  min-width: 0; /* 允许窄列收缩，防止表单/字段溢出 */
}

/* 登录卡内表单去掉 WooCommerce 默认外框，避免卡片里双重边框 */
.daisch-auth-col--login .woocommerce-form-login {
  border: none;
  padding: 0;
  background: none;
}

@media (max-width: 992px) {
  .daisch-auth-grid {
    grid-template-columns: 1fr;
  }
}

.daisch-reg-module {
  border: 1px solid var(--daisch-border);
  border-radius: var(--daisch-radius-md);
  padding: 24px;
  background: var(--daisch-white);
}

/* 企业注册卡：浅蓝底 + 蓝灰边框，与个人注册区分 */
.daisch-reg-module--corporate {
  border-color: #bcd3ea;
  background: #f4f8fc;
}

.daisch-reg-module__title {
  margin: 0 0 4px;
  font-family: var(--daisch-font-cn);
  font-size: 18px;
  font-weight: 600;
  color: var(--daisch-text-primary);
}

.daisch-reg-module__desc {
  margin: 0 0 16px;
  font-size: 13px;
  color: var(--daisch-text-secondary);
}

/* 模块内表单不再自带边框/内边距（外层已是卡片） */
.daisch-reg-module .woocommerce-form.register {
  border: none;
  padding: 0;
}

/* 企业信息字段组：浅底 + 虚线框，与账号字段区分 */
.daisch-reg-corp-fields {
  border: 1px dashed var(--daisch-border);
  border-radius: var(--daisch-radius-sm);
  background: rgba(255, 255, 255, 0.7);
  padding: 14px;
  margin-bottom: 18px;
}

.daisch-reg-corp-fields__label {
  margin: 0 0 10px;
  font-family: var(--daisch-font-cn);
  font-size: 13px;
  font-weight: 600;
  color: var(--daisch-text-primary);
}

/* 模块提交按钮：通栏，便于区分两个独立入口 */
.daisch-reg-module .daisch-reg-btn {
  width: 100%;
}

/* 注册页小字条款（条款勾选 / 成年确认 / 隐私政策文本）：略小于正文字号 */
.daisch-reg-module .daisch-terms-agreement,
.daisch-reg-module .daisch-age-confirm,
.daisch-reg-module .woocommerce-privacy-policy-text {
  font-size: 13px;
  line-height: 1.6;
  color: var(--daisch-text-secondary);
}
.daisch-reg-module .daisch-terms-agreement label,
.daisch-reg-module .daisch-age-confirm label {
  font-size: inherit;
  line-height: inherit;
  color: inherit;
}
.daisch-reg-module .woocommerce-privacy-policy-text {
  margin-top: 8px;
}

/* ── 注册页字号微调：标签/占位符小一号、密码提示与条款同号、登录标题缩小 ── */
.daisch-reg-module .woocommerce-form-row label {
  font-size: 15px; /* 正文 16px 小一号 */
}
.daisch-reg-module .woocommerce-form-row input.input-text {
  font-size: 16px;
}
.daisch-reg-module input.input-text::placeholder {
  font-size: 15px; /* 与标签同号，比输入正文小一号 */
  opacity: 0.7;
}
.daisch-reg-module .daisch-reg-pwd-hint {
  font-size: 13px; /* 与条款小字一致 */
  color: var(--daisch-text-secondary);
}
.daisch-auth-col--login h2 {
  font-size: 20px; /* 登录标题缩小 2 号，与注册卡标题协调 */
  margin-bottom: 8px;
}

.woocommerce button.button {
  background: var(--daisch-accent) !important;
  color: #fff !important;
  border: none !important;
  border-radius: var(--daisch-radius-sm) !important;
  font-family: var(--daisch-font-cn) !important;
  font-weight: 600 !important;
  padding: 12px 32px !important;
  transition: background 0.2s;
}
.woocommerce button.button:hover {
  background: var(--daisch-accent-hover) !important;
}

/* ── 6. Notifications ── */
.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
  border-radius: var(--daisch-radius-sm);
  font-family: var(--daisch-font-cn);
}
.woocommerce-message {
  border-top-color: var(--daisch-accent);
}
.woocommerce-message::before {
  color: var(--daisch-accent);
}

/* ── 8. BACS 对公转账 卡片化 ── */
.woocommerce-checkout .payment_method_bacs .payment_box {
  background: transparent;
  border: none;
  padding: 0 !important;
  margin-top: 4px;
}

.woocommerce-checkout .payment_method_bacs .payment_box::after {
  display: none !important;
}

.daisch-bacs-card {
  background: #f0f5fa;
  border: 1px solid #d6e0ed;
  border-radius: 8px;
  padding: 24px;
  font-size: 14px;
  line-height: 1.7;
  color: #1e293b;
}

.daisch-bacs-card::before {
  content: '对公转账';
  display: block;
  font-size: 16px;
  font-weight: 700;
  color: #1e3a5f;
  margin-bottom: 16px;
  padding-bottom: 12px;
  border-bottom: 1px solid #d6e0ed;
}

/* Intro text */
.daisch-bacs-card__intro {
  margin-bottom: 16px;
  color: #475569;
}

/* Warning banner */
.daisch-bacs-card__warning {
  background: #fff7ed;
  border-left: 3px solid #f59e0b;
  border-radius: 4px;
  padding: 10px 14px;
  margin-bottom: 16px;
  font-size: 13px;
  color: #92400e;
  font-weight: 500;
}

.daisch-bacs-card__warning strong {
  font-size: 19px;
  color: #dc2626;
  font-weight: 700;
  background: #fef2f2;
  padding: 2px 8px;
  border-radius: 4px;
  margin: 0 4px;
  white-space: nowrap;
}

.daisch-bacs-card__warning strong::before {
  content: "⚠ ";
}

/* Bank account info card */
.daisch-bacs-card__account {
  background: #fff;
  border: 1px solid #d6e0ed;
  border-radius: 6px;
  overflow: hidden;
}

.daisch-bacs-card__account-row {
  display: flex;
  padding: 8px 16px;
  border-bottom: 1px solid #f1f5f9;
  font-size: 14px;
}

.daisch-bacs-card__account-row:last-child {
  border-bottom: none;
}

.daisch-bacs-card__label {
  flex-shrink: 0;
  width: 80px;
  color: #64748b;
  font-weight: 500;
}

.daisch-bacs-card__value {
  color: #1e293b;
  font-weight: 500;
}

/* Account number — monospace for readability */
.daisch-bacs-card__account-num {
  color: #1e293b;
  font-weight: 600;
  font-family: 'SF Mono', 'Menlo', 'Consolas', monospace;
  letter-spacing: 2px;
  font-size: 15px;
}

/* ── 手机端:账号行改为「标签在上、号码独占一行」(2026-09-11) ──
   21 位账号 + 2px 字距实宽约 232px,与固定 80px 的标签并在同一 flex 行里放不下
   (390px 视口下卡片内宽仅 270px),又被 .daisch-bacs-card__account 的 overflow:hidden
   裁掉末尾约 5 位。窄屏改 flex 换行:标签占一行、号码用整行宽度;字距收到 1px 让
   375/390 等常见机型仍单行显示;overflow-wrap 兜底,极窄屏宁可折行也不裁字。 */
@media (max-width: 480px) {
  .daisch-bacs-card__account-row {
    flex-wrap: wrap;
  }
  .daisch-bacs-card__account-num {
    flex-basis: 100%;
    letter-spacing: 1px;
    overflow-wrap: anywhere;
  }
}

/* ── 9. Responsive ── */
@media (max-width: 1024px) {
  ul.products {
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 16px !important;
    padding: 0 16px;
  }

  .woocommerce-products-header__title {
    font-size: 20px;
  }
}

@media (max-width: 768px) {
  ul.products {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 12px !important;
    padding: 0 16px;
  }

  .woocommerce .woocommerce-result-count,
  .woocommerce .woocommerce-ordering {
    float: none;
    width: 100%;
    margin-bottom: 12px;
  }

  .woocommerce .woocommerce-ordering select {
    width: 100%;
  }

  .woocommerce div.product div.images,
  .woocommerce div.product div.summary {
    width: 100% !important;
  }

  .woocommerce div.product div.summary {
    padding-left: 0;
  }

  .woocommerce .daisch-main,
  .single-product .daisch-main,
  .woocommerce-cart .daisch-main,
  .woocommerce-checkout .daisch-main,
  .woocommerce-account .daisch-main {
    padding-left: 16px;
    padding-right: 16px;
  }

  .woocommerce-products-header__title {
    font-size: 20px;
  }
}

@media (max-width: 480px) {
  ul.products {
    grid-template-columns: repeat(2, 1fr) !important;
  }
}

/* ── 产品资料下载 ── */
.daisch-downloads-summary { margin: 1em 0; }
.daisch-downloads { margin-top: 2.5em; }
.daisch-downloads h2 { font-size: 1.25em; margin: 0 0 1em; }
.daisch-downloads__list { list-style: none; margin: 0; padding: 0; }
.daisch-downloads__item { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 14px 0; border-bottom: 1px solid #eee; }
.daisch-downloads__item:last-child { border-bottom: 0; }
.daisch-downloads__meta { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.daisch-downloads__type { font-size: 14px; color: #fff; background: #1b3a6b; padding: 2px 10px; border-radius: 3px; }
.daisch-downloads__title { font-weight: 600; }
.daisch-downloads__desc { color: #666; font-size: 13px; }
a.daisch-dl-entry,
a.daisch-dl-go,
a.daisch-dl-entry:link,
a.daisch-dl-go:link,
a.daisch-dl-entry:visited,
a.daisch-dl-go:visited,
a.daisch-dl-entry:hover,
a.daisch-dl-go:hover,
a.daisch-dl-entry:focus,
a.daisch-dl-go:focus,
a.daisch-dl-entry:focus-visible,
a.daisch-dl-go:focus-visible,
a.daisch-dl-entry:active,
a.daisch-dl-go:active { color: #fff !important; }
a.daisch-dl-entry,
a.daisch-dl-go { background: #1b3a6b !important; padding: 8px 18px; border-radius: 4px; transition: background-color .25s ease, opacity .25s ease; }
a.daisch-dl-entry:hover,
a.daisch-dl-go:hover { opacity: .9; }
@media (max-width: 640px) {
	.daisch-downloads__item { flex-direction: column; align-items: flex-start; }
}

/* ── 套装(WPC Composite / wooco)购物车:主行合计锚点 + 组件行兜底隐藏 ──
   购物车为 Cart Block(产品/详细资料/合计 表格)。组件名细已由 WPC 插件设置隐藏
   (WPClever → Composite Products → Cart & Checkout:「Hide component products on
   cart & checkout page」= Yes, just show the main composite;「on mini-cart」同)。
   下面这条 tr.wooco-component 整行隐藏作兜底,防插件设置在区块购物车失效时又冒组件行。
   主行(.wooco-composite)是唯一醒目标识:名称藏青加粗,并隐藏主行内重复的
   「先前/折扣价格」与红色「节省」徽标。 */
body.woocommerce-cart table.wc-block-cart-items tr.wooco-composite .wc-block-cart-item__prices,
body.woocommerce-cart table.wc-block-cart-items tr.wooco-composite .wc-block-cart-item__total .wc-block-components-product-price__value,
body.woocommerce-cart table.wc-block-cart-items tr.wooco-composite .wc-block-components-sale-badge { display: none !important; }

/* 套装主行:名称藏青加粗作识别(2026-09-11 起合计不再放大)。
   原先同时给 .wc-block-cart-item__total 与其内层 .price 加 1.45em,两级复合放大到 ~2.1em
   (33.64px)藏青加粗;而 WPC 区块把「¥0.00」占位塞进 __value 并隐藏,真正显示的整套价是
   .price 下的裸文本节点,插件自带的 display:none 拦不住,移动端金额被挤出屏幕。
   合计字号/字重/颜色一律回到与普通商品行一致。 */
body.woocommerce-cart table.wc-block-cart-items tr.wooco-composite .wc-block-components-product-name { font-weight: 700; color: #1b3a6b; }

/* 组件行兜底隐藏(2026-09-10):套装在购物车只保留主行「套装名 + 整套价」一行。
   仅作用于展示,不影响购物车合计与结算。 */
body.woocommerce-cart table.wc-block-cart-items tr.wooco-component { display: none !important; }
