/* ============================================================
   AURELLE — WooCommerce + 客服聊天 + 联系表单
   main.css（preview/style.css 的快照）之后加载，负责压过 Woo 默认样式。
   ⚠️ Woo 默认样式全站加载且选择器带 id/长链，个别地方必须抬特异性。
   ============================================================ */

/* ---- Woo 外壳 ------------------------------------------------ */
.wc-shell{padding:clamp(1.5rem,4vw,2.6rem) 0 var(--sec)}
.woocommerce-notices-wrapper:empty{display:none}

/* 真图替换预览里的 .ph 占位 */
.card__shot{position:relative;aspect-ratio:3/4;overflow:hidden;background:var(--au-sand)}
.card__img{width:100%;height:100%;object-fit:cover;display:block;transition:opacity .5s,transform .7s cubic-bezier(.22,.61,.36,1)}
.card__img--alt{position:absolute;inset:0;opacity:0}
.card:hover .card__img--alt{opacity:1}
.card:hover .card__shot .card__img{transform:scale(1.03)}
.card__shot .ph{position:absolute;inset:0}

.cat__img{width:100%;aspect-ratio:3/4;object-fit:cover;display:block;transition:transform .7s cubic-bezier(.22,.61,.36,1)}
.cat:hover .cat__img{transform:scale(1.035)}
.edit__img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}
.hero__img{width:min(112%,560px);max-height:620px;object-fit:cover;display:block;margin-inline:auto}

/* 卡片尺码行 */
.card__sizes span{margin-right:.35rem}
.card__sizes s{margin-right:.35rem;color:var(--au-linen)}

/* 价格：Woo 的 <ins>/<del> */
.card__price ins,.price ins{text-decoration:none;color:var(--au-gold-dk)}
.card__price del,.price del{opacity:.55;font-size:.85em;margin-right:.35rem;color:var(--au-mute)}
.price-cur{font-family:var(--ff-body);font-size:.62rem;letter-spacing:.14em;color:var(--au-mute);vertical-align:.35em;margin-left:.15rem}

/* ---- Woo 按钮统一成品牌按钮 ---------------------------------- */
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,
.woocommerce a.button.alt,.woocommerce button.button.alt,.woocommerce input.button.alt,
.wc-block-components-button{
  background:var(--au-ink)!important;color:var(--au-ivory)!important;
  border:1px solid var(--au-ink)!important;border-radius:0!important;
  padding:.95rem 2.2rem!important;
  font:500 .72rem/1 var(--ff-body)!important;letter-spacing:.16em!important;text-transform:uppercase!important;
  transition:background .25s,border-color .25s!important;
}
.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover,
.woocommerce a.button.alt:hover,.woocommerce button.button.alt:hover,.woocommerce input.button.alt:hover{
  background:var(--au-gold-dk)!important;border-color:var(--au-gold-dk)!important;color:#fff!important;
}
.woocommerce .button.disabled,.woocommerce button.button:disabled{opacity:.4!important}

/* ---- 表单 ---------------------------------------------------- */
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.woocommerce .select2-container .select2-selection--single{
  border:1px solid var(--au-linen);border-radius:0;background:transparent;
  padding:.85rem .9rem;font:400 .92rem/1.4 var(--ff-body);color:var(--au-ink);height:auto;
}
.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus,
.woocommerce form .form-row select:focus{outline:none;border-color:var(--au-gold)}
.woocommerce form .form-row label{
  font:500 .66rem/1.4 var(--ff-body);letter-spacing:.14em;text-transform:uppercase;color:var(--au-mute);margin-bottom:.4rem;
}
.woocommerce form .form-row{margin-bottom:1.1rem}

/* ---- 提示条 -------------------------------------------------- */
.woocommerce-message,.woocommerce-info,.woocommerce-error{
  border-top:0!important;border-left:2px solid var(--au-gold)!important;
  background:var(--au-sand)!important;color:var(--au-ink)!important;
  border-radius:0;padding:1.1rem 1.3rem!important;font-size:.88rem;
}
.woocommerce-error{border-left-color:var(--au-err)!important}
.woocommerce-message::before,.woocommerce-info::before,.woocommerce-error::before{display:none}

/* ---- 商店归档：排序条 ---------------------------------------- */
.woocommerce .woocommerce-ordering,.woocommerce .woocommerce-result-count{margin-bottom:1.6rem}
.woocommerce .woocommerce-result-count{font-size:.74rem;letter-spacing:.1em;color:var(--au-mute)}
.woocommerce .woocommerce-ordering select{
  border:1px solid var(--au-linen);background:transparent;padding:.55rem .9rem;border-radius:0;
  font:500 .68rem/1 var(--ff-body);letter-spacing:.11em;text-transform:uppercase;
}
.woocommerce nav.woocommerce-pagination ul{border:0;margin-top:3rem}
.woocommerce nav.woocommerce-pagination ul li{border:0;margin:0 .2rem}
.woocommerce nav.woocommerce-pagination ul li a,.woocommerce nav.woocommerce-pagination ul li span{
  border:1px solid var(--au-linen);padding:.6rem .95rem;font-size:.78rem;
}
.woocommerce nav.woocommerce-pagination ul li span.current{background:var(--au-ink);color:var(--au-ivory);border-color:var(--au-ink)}

/* ---- 单品页 -------------------------------------------------- */
.woocommerce div.product{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(1.6rem,4vw,4rem)}
.woocommerce div.product div.images{margin-bottom:0}
.woocommerce div.product div.summary{margin-bottom:0}
.woocommerce div.product .product_title{
  font-family:var(--ff-display);font-weight:400;font-size:clamp(1.85rem,3.4vw,2.7rem);line-height:1.15;margin-bottom:.6rem;
}
.woocommerce div.product p.price,.woocommerce div.product span.price{
  font-family:var(--ff-display);font-size:1.75rem;color:var(--au-gold-dk);
}
.woocommerce div.product .woocommerce-product-details__short-description{
  color:var(--au-mute);font-weight:300;max-width:46ch;margin-top:1rem;
}
.woocommerce div.product form.cart{margin-top:1.8rem}
.woocommerce div.product form.cart .variations{margin-bottom:1.4rem}
.woocommerce div.product form.cart .variations label{
  font:500 .68rem/1.4 var(--ff-body);letter-spacing:.18em;text-transform:uppercase;
}
.woocommerce div.product form.cart .variations td{padding:.4rem 0}
.woocommerce div.product form.cart .variations select{
  border:1px solid var(--au-linen);border-radius:0;padding:.75rem .9rem;background:transparent;min-width:11rem;
}
.woocommerce .quantity .qty{
  border:1px solid var(--au-linen);border-radius:0;height:auto;padding:.85rem .4rem;width:4.5rem;background:transparent;
}
.woocommerce div.product .woocommerce-tabs ul.tabs{padding:0;margin:0 0 1.5rem}
.woocommerce div.product .woocommerce-tabs ul.tabs::before{border-bottom-color:var(--au-linen)}
.woocommerce div.product .woocommerce-tabs ul.tabs li{
  background:transparent;border:0;border-bottom:1px solid transparent;border-radius:0;margin:0 1.6rem 0 0;padding:0 0 .7rem;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li::before,
.woocommerce div.product .woocommerce-tabs ul.tabs li::after{display:none}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{
  font:500 .7rem/1 var(--ff-body);letter-spacing:.16em;text-transform:uppercase;color:var(--au-mute);padding:0;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active{border-bottom-color:var(--au-gold)}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{color:var(--au-ink)}
@media (max-width:900px){
  .woocommerce div.product{grid-template-columns:1fr;gap:1.6rem}
}

/* 单品页三条保障 */
.pdp__assure{margin-top:1.8rem;padding-top:1.6rem;border-top:1px solid var(--au-linen)}
.pdp__sg{margin:0 0 1.1rem}
.pdp__sg a{
  font:500 .68rem/1 var(--ff-body);letter-spacing:.14em;text-transform:uppercase;
  color:var(--au-gold-dk);border-bottom:1px solid var(--au-gold);padding-bottom:.3rem;
}
.pdp__assure ul{list-style:none;margin:0;padding:0;display:grid;gap:.9rem}
.pdp__assure li{display:grid;grid-template-columns:22px 1fr;gap:.75rem;align-items:start;
  font-size:.83rem;color:var(--au-mute);font-weight:300;line-height:1.6}
.pdp__assure .ico{width:19px;height:19px;color:var(--au-gold);stroke-width:1.15;margin-top:.15rem}
.pdp__assure a{color:var(--au-gold-dk);border-bottom:1px solid var(--au-linen);white-space:nowrap}
.pdp__assure a:hover{border-color:var(--au-gold)}

/* ---- 单品页正文（描述 / 尺寸表 / 规格 / 评价） ------------------ */
/* 商品描述是长文，行宽必须收住，不然在 1320px 容器里一行 160 字符没法读。 */
.woocommerce div.product .woocommerce-Tabs-panel{max-width:78ch;font-weight:300;line-height:1.75}
.woocommerce div.product .woocommerce-Tabs-panel > h2{display:none}
.woocommerce div.product .woocommerce-Tabs-panel p{margin:0 0 1.05rem;color:var(--au-mute)}
.woocommerce div.product .woocommerce-Tabs-panel h3{
  font:500 .68rem/1 var(--ff-body);letter-spacing:.18em;text-transform:uppercase;color:var(--au-ink);
  margin:2.1rem 0 .85rem;padding-top:1.4rem;border-top:1px solid var(--au-linen);
}
.woocommerce div.product .woocommerce-Tabs-panel h3:first-child{margin-top:0;padding-top:0;border-top:0}
.woocommerce div.product .woocommerce-Tabs-panel ul{list-style:none;margin:0 0 1.05rem;padding:0}
.woocommerce div.product .woocommerce-Tabs-panel ul li{
  position:relative;padding-left:1.05rem;margin-bottom:.42rem;color:var(--au-mute);font-size:.9rem;
}
.woocommerce div.product .woocommerce-Tabs-panel ul li::before{
  content:'';position:absolute;left:0;top:.62em;width:5px;height:5px;transform:rotate(45deg);background:var(--au-gold);
}
.woocommerce div.product .woocommerce-Tabs-panel em{color:var(--au-ink);font-style:italic}

/* 平铺尺寸表：7 列在手机上放不下，容器自己横向滚，页面 body 不许横滚。 */
.au-table-wrap{overflow-x:auto;margin:0 0 1.05rem;-webkit-overflow-scrolling:touch}
table.au-measure{width:100%;min-width:34rem;border-collapse:collapse;font-size:.83rem}
table.au-measure th,table.au-measure td{
  padding:.6rem .7rem;text-align:right;border-bottom:1px solid var(--au-linen);white-space:nowrap;
}
table.au-measure thead th{
  font:500 .64rem/1.3 var(--ff-body);letter-spacing:.12em;text-transform:uppercase;color:var(--au-mute);
  border-bottom:1px solid var(--au-ink);
}
table.au-measure tbody th{
  text-align:left;font-weight:400;color:var(--au-ink);white-space:normal;min-width:13rem;
}
table.au-measure thead th:first-child{text-align:left}
table.au-measure tbody tr:hover{background:var(--au-sand)}

/* 简介下面那三条硬事实（颜色 / 面料 / 码段） */
ul.au-facts{list-style:none;margin:1.1rem 0 0;padding:0;display:flex;flex-wrap:wrap;gap:.4rem .5rem}
ul.au-facts li{
  font:400 .7rem/1 var(--ff-body);letter-spacing:.05em;color:var(--au-mute);
  border:1px solid var(--au-linen);padding:.45rem .65rem;
}

/* 「Additional information」那张规格表 */
.woocommerce div.product table.shop_attributes{border:0;margin:0}
.woocommerce div.product table.shop_attributes th,
.woocommerce div.product table.shop_attributes td{
  border:0;border-bottom:1px solid var(--au-linen);padding:.7rem .7rem .7rem 0;font-style:normal;
}
.woocommerce div.product table.shop_attributes th{
  font:500 .64rem/1.3 var(--ff-body);letter-spacing:.12em;text-transform:uppercase;color:var(--au-mute);width:11rem;
}
.woocommerce div.product table.shop_attributes td p{margin:0;color:var(--au-ink)}
.woocommerce div.product table.shop_attributes tr:nth-child(2n) td,
.woocommerce div.product table.shop_attributes tr:nth-child(2n) th{background:transparent}

/* 评价 */
.woocommerce #reviews #comments{max-width:78ch}
.woocommerce #reviews h2.woocommerce-Reviews-title{
  font:500 .68rem/1 var(--ff-body);letter-spacing:.18em;text-transform:uppercase;margin-bottom:1.6rem;
}
.woocommerce #reviews ol.commentlist li .comment-text{
  border:0;border-top:1px solid var(--au-linen);border-radius:0;padding:1.4rem 0 .3rem;margin:0 0 0 4.2rem;
}
.woocommerce #reviews ol.commentlist li img.avatar{
  width:3.2rem;border:0;border-radius:50%;padding:0;background:var(--au-sand);position:absolute;top:1.4rem;
}
.woocommerce #reviews ol.commentlist li .comment-text p.meta{
  font-size:.78rem;color:var(--au-mute);margin-bottom:.55rem;
}
.woocommerce #reviews ol.commentlist li .comment-text p.meta strong{color:var(--au-ink);font-weight:500}
.woocommerce #reviews ol.commentlist li .comment-text .description p{color:var(--au-mute);font-weight:300}
.woocommerce .star-rating span::before,.woocommerce p.stars a::before{color:var(--au-gold)}
.woocommerce .woocommerce-product-rating{margin-bottom:.9rem}
.woocommerce .woocommerce-product-rating .woocommerce-review-link{font-size:.8rem;color:var(--au-mute)}

/* ---- 购物车 / 结账 ------------------------------------------- */
.woocommerce table.shop_table{border:0;border-radius:0}
.woocommerce table.shop_table th{
  font:500 .66rem/1.3 var(--ff-body);letter-spacing:.13em;text-transform:uppercase;color:var(--au-mute);
  border-bottom:1px solid var(--au-linen);padding:1rem .7rem;
}
.woocommerce table.shop_table td{border-top:0;border-bottom:1px solid var(--au-linen);padding:1.1rem .7rem}
.woocommerce table.shop_table img{width:74px}
.woocommerce-cart .cart-collaterals .cart_totals{background:var(--au-sand);padding:1.5rem}
.woocommerce-cart .cart-collaterals .cart_totals h2{
  font-family:var(--ff-body);font-size:.7rem;font-weight:500;letter-spacing:.18em;text-transform:uppercase;margin-bottom:1rem;
}
.woocommerce ul#shipping_method li{margin:0 0 .5rem}
.woocommerce-checkout #payment{background:var(--au-sand);border-radius:0}
.woocommerce-checkout #payment ul.payment_methods{border-bottom:1px solid var(--au-linen);padding:1.4rem}
.woocommerce-checkout #payment div.form-row{padding:1.4rem}
.woocommerce-checkout #payment ul.payment_methods li{margin-bottom:.9rem}
.woocommerce-checkout #payment ul.payment_methods label{
  font:500 .78rem/1.4 var(--ff-body);letter-spacing:.04em;text-transform:none;color:var(--au-ink);
}

/* 免邮进度条 */
.shipbar{margin-bottom:1.3rem}
.shipbar p{margin:0 0 .5rem;font-size:.8rem;color:var(--au-mute)}
.shipbar p .amount{color:var(--au-gold-dk);font-weight:500}
.shipbar__t{display:block;height:2px;background:var(--au-linen);overflow:hidden}
.shipbar__t i{display:block;height:100%;background:var(--au-gold);transition:width .5s}

/* 下单按钮上方的币种/账单描述符声明 */
.ck-assure{
  margin:1.2rem 0;padding:.9rem 1.1rem;background:var(--au-ivory);border-left:2px solid var(--au-gold);
}
.ck-assure p{display:flex;gap:.55rem;align-items:flex-start;margin:0;font-size:.78rem;color:var(--au-mute);line-height:1.55}
.ck-assure .ico{color:var(--au-gold);flex:none;margin-top:.15rem}

/* 结账页底部政策链接 */
.ck-policies{
  display:flex;flex-wrap:wrap;gap:1.2rem;justify-content:center;
  margin-top:2.5rem;padding-top:1.5rem;border-top:1px solid var(--au-linen);
}
.ck-policies a{font-size:.74rem;letter-spacing:.08em;color:var(--au-mute)}
.ck-policies a:hover{color:var(--au-gold-dk)}

/* ---- 联系表单 ------------------------------------------------ */
.cform{max-width:620px;margin-top:1.5rem}
.cform__hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.cform__row{margin-bottom:1.2rem}
.cform__row label{
  display:block;margin-bottom:.45rem;
  font:500 .66rem/1.4 var(--ff-body);letter-spacing:.14em;text-transform:uppercase;color:var(--au-mute);
}
.cform__row input,.cform__row textarea,.cform__row select{
  width:100%;border:1px solid var(--au-linen);border-radius:0;background:transparent;
  padding:.85rem .9rem;font:400 .92rem/1.5 var(--ff-body);color:var(--au-ink);
}
.cform__row input:focus,.cform__row textarea:focus,.cform__row select:focus{outline:none;border-color:var(--au-gold)}
.cform__note{margin-top:1rem;font-size:.75rem;color:var(--au-mute)}
.cform__note a{color:var(--au-gold-dk);border-bottom:1px solid var(--au-linen)}
.formnote{padding:1rem 1.2rem;margin-bottom:1.5rem;border-left:2px solid var(--au-gold);background:var(--au-sand);font-size:.88rem}
.formnote.is-err{border-left-color:var(--au-err)}

/* ---- 在线客服 ------------------------------------------------ */
.chatfab{
  position:fixed;right:1.2rem;bottom:1.2rem;z-index:88;
  display:flex;align-items:center;gap:.55rem;
  background:var(--au-ink);color:var(--au-ivory);
  padding:.85rem 1.3rem;border:1px solid var(--au-ink);
  font:500 .68rem/1 var(--ff-body);letter-spacing:.14em;text-transform:uppercase;
  box-shadow:0 14px 38px rgba(20,18,15,.22);
  transition:transform .3s cubic-bezier(.22,.61,.36,1),opacity .25s,background .25s;
}
.chatfab:hover{background:var(--au-gold-dk);border-color:var(--au-gold-dk)}
.chatfab .ico{width:18px;height:18px}
.chatfab.is-hidden{opacity:0;transform:translateY(12px) scale(.94);pointer-events:none}

.chat{
  position:fixed;right:1.2rem;bottom:1.2rem;z-index:89;
  width:min(370px,calc(100vw - 2.4rem));height:min(540px,calc(100vh - 2.4rem));
  display:flex;flex-direction:column;
  background:var(--au-ivory);border:1px solid var(--au-linen);
  box-shadow:0 26px 70px rgba(20,18,15,.24);
  opacity:0;transform:translateY(16px) scale(.97);transform-origin:100% 100%;
  transition:opacity .28s ease,transform .28s cubic-bezier(.22,.61,.36,1);
}
.chat.is-open{opacity:1;transform:none}

.chat__hd{
  display:flex;align-items:center;justify-content:space-between;gap:1rem;
  padding:1rem 1.2rem;background:var(--au-ink);color:var(--au-ivory);
}
.chat__hd strong{display:block;font-family:var(--ff-body);font-size:.76rem;font-weight:500;letter-spacing:.16em;text-transform:uppercase}
.chat__hd button{color:var(--au-ivory);display:grid;place-items:center;width:30px;height:30px}
.chat__hd button:hover{color:var(--au-gold-lt)}
.chat__status{display:flex;align-items:center;gap:.42rem;margin-top:.3rem;font-size:.7rem;color:var(--au-linen);opacity:.85}
.chat__status i{width:6px;height:6px;border-radius:50%;background:var(--au-mute);display:block}
.chat__status.is-on i{background:var(--au-ok)}

.chat__body{flex:1;overflow-y:auto;padding:1.1rem;display:flex;flex-direction:column;gap:.75rem;background:var(--au-sand)}
.chat__msg{max-width:82%}
.chat__msg p{
  margin:0;padding:.7rem .9rem;font-size:.86rem;line-height:1.55;font-weight:300;
  background:var(--au-ivory);color:var(--au-ink);border:1px solid var(--au-linen);
}
.chat__msg small{display:block;margin-top:.3rem;font-size:.65rem;color:var(--au-mute)}
.chat__msg--you{align-self:flex-end;text-align:right}
.chat__msg--you p{background:var(--au-ink);color:var(--au-ivory);border-color:var(--au-ink)}
.chat__msg--staff{align-self:flex-start}
/* 正在送出：淡一点；确认送达后 JS 摘掉 data-pending 就恢复 */
.chat__msg[data-pending="1"] p{opacity:.6}
.chat__msg.is-failed p{border-color:var(--au-err);opacity:.75}

.chat__form{padding:.9rem 1.1rem 1rem;border-top:1px solid var(--au-linen);background:var(--au-ivory)}
.chat__id{display:grid;gap:.5rem;margin-bottom:.6rem}
.chat__id.is-done{display:none}
.chat__id input{
  width:100%;border:1px solid var(--au-linen);background:transparent;border-radius:0;
  padding:.6rem .7rem;font:400 .82rem/1.3 var(--ff-body);
}
.chat__id input:focus{outline:none;border-color:var(--au-gold)}
.chat__row{display:flex;gap:.5rem;align-items:flex-end}
.chat__row textarea{
  flex:1;resize:none;border:1px solid var(--au-linen);background:transparent;border-radius:0;
  padding:.65rem .75rem;font:400 .86rem/1.45 var(--ff-body);max-height:120px;overflow-y:auto;
}
.chat__row textarea:focus{outline:none;border-color:var(--au-gold)}
.chat__row button{
  flex:none;width:42px;height:42px;display:grid;place-items:center;
  background:var(--au-ink);color:var(--au-ivory);transition:background .25s;
}
.chat__row button:hover{background:var(--au-gold-dk)}
.chat__note{margin:.7rem 0 0;font-size:.68rem;color:var(--au-mute);line-height:1.5}
.chat__note a{color:var(--au-gold-dk);border-bottom:1px solid var(--au-linen)}

@media (max-width:520px){
  .chat{right:0;bottom:0;width:100vw;height:100dvh;border:0}
  .chatfab{right:.9rem;bottom:.9rem}
  /* cookie 横幅和客服气泡在小屏会打架，让横幅往上让 */
  .ckb{bottom:5.2rem}
}

/* ---- 无障碍 -------------------------------------------------- */
:where(a,button,input,select,textarea):focus-visible{
  outline:2px solid var(--au-gold-dk);outline-offset:2px;
}
