/* Generated by scripts/css_bundle_manifest.py. Do not edit directly. */

/* ===== foundation ===== */

/* source: style.css */
:root{--navy:#29314e;--navy-2:#363e5d;--coral:#ff5966;--coral-dark:#e94656;--blue:#36a9e8;--purple:#8666e8;--paper:#f3f5fa;--ink:#242b3c;--muted:#7d8493;--line:#e4e8f0;--white:#fff;--shadow:0 12px 30px rgba(31,43,72,.10)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.5 "Microsoft YaHei",system-ui,sans-serif}.topbar{height:52px;background:var(--navy);display:flex;align-items:center;justify-content:space-between;padding:0 max(5vw,24px);position:sticky;top:0;z-index:10;box-shadow:0 2px 10px #10172730}.brand{display:flex;align-items:center;gap:10px;color:#fff;text-decoration:none;font-weight:800;font-size:17px}.brand small{display:inline-block;margin-left:7px;padding:2px 6px;border-radius:3px;background:#edb55a;color:#fff;font-size:12px;font-weight:700;vertical-align:2px}.brand-mark{display:grid;place-items:center;width:30px;height:30px;border:2px solid #fff;border-radius:7px;font-size:16px;transform:rotate(-8deg)}nav{display:flex;align-items:center;gap:4px}button{border:0;border-radius:8px;background:transparent;color:inherit;font:inherit;cursor:pointer;padding:9px 13px}nav button{color:#e9ecf4;font-weight:700}nav button:hover,nav button:focus-visible{background:#ffffff18}.cart-button{background:#ffffff12!important}.cart-button b{display:inline-grid;place-items:center;min-width:19px;height:19px;border-radius:50%;background:var(--coral);color:#fff;font-size:12px;margin-left:3px}.view{display:none}.view.active{display:block}main{max-width:1220px;margin:auto;padding:0 max(5vw,16px) 70px}.store-strip{display:flex;align-items:center;gap:8px;padding:12px 0;color:#646d81;font-size:13px}.pulse{width:7px;height:7px;border-radius:50%;background:var(--coral);box-shadow:0 0 0 4px #ff596622}.hero-card{display:grid;grid-template-columns:1.35fr .65fr;min-height:278px;overflow:hidden;border-radius:16px;background:linear-gradient(118deg,var(--navy),#3a4261);box-shadow:var(--shadow);color:#fff;padding:36px 42px;position:relative}.overline{margin:0;color:var(--coral);font-weight:800;font-size:12px;letter-spacing:.08em}.hero-card .overline{color:#ffb2b8}.hero-card h1{margin:8px 0 12px;font-size:clamp(30px,4vw,46px);line-height:1.16;letter-spacing:-1.5px}.hero-copy{color:#c9cfe0;max-width:520px;margin:0}.hero-actions{display:flex;gap:10px;margin-top:23px}.primary{background:var(--coral);color:#fff;font-weight:800;box-shadow:0 8px 16px #ff596638}.primary:hover{background:var(--coral-dark)}.ghost{border:1px solid #ffffff55;color:#fff}.hero-visual{align-self:center;justify-self:end;width:170px;height:170px;border-radius:20px;background:#ffffff10;border:1px solid #ffffff1f;position:relative;padding:22px;overflow:hidden}.hero-visual:after{content:"";position:absolute;right:-35px;bottom:-35px;width:130px;height:130px;border-radius:50%;background:var(--coral)}.hero-visual span{color:#f4b863;font-size:12px;font-weight:800}.hero-visual strong{display:block;font-size:30px;line-height:1.05;margin-top:11px}.hero-visual i{position:absolute;right:17px;top:17px;font-style:normal;font-size:25px}.member-banner{display:flex;align-items:center;gap:14px;margin:20px 0;background:#fff;border:1px solid #dfe3fa;border-radius:13px;padding:14px 18px;box-shadow:0 6px 18px #25305309}.member-icon{display:grid;place-items:center;width:42px;height:42px;flex:0 0 auto;border-radius:12px;color:#fff;background:linear-gradient(135deg,var(--blue),var(--purple));font-size:24px}.member-banner p,.member-panel p{margin:0;color:var(--muted);font-size:12px}.member-banner strong{font-size:16px}.member-banner button{margin-left:auto;color:var(--coral);font-weight:800}.promo-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.promo-grid article{border-radius:13px;padding:20px 24px;background:#dceefa;color:#235b7b;min-height:112px;position:relative;overflow:hidden}.promo-grid article+article{background:#f8e6e9;color:#91434d}.promo-grid article:after{content:"";position:absolute;width:90px;height:90px;border:17px solid #ffffff70;border-radius:50%;right:-25px;bottom:-42px}.promo-grid span,.promo-grid small{display:block;font-size:12px}.promo-grid strong{display:block;margin:4px 0;font-size:20px;line-height:1.25}.section-heading{display:flex;align-items:end;justify-content:space-between;margin:20px 0 10px}.section-heading h2,.page-intro h2{margin:2px 0 0;font-size:26px}.search{display:flex;align-items:center;gap:8px;width:min(365px,100%);height:42px;padding:0 13px;border:1px solid var(--line);border-radius:9px;background:#fff;color:#9da5b4}.search input{border:0;outline:0;width:100%;font:inherit}.category-row{display:flex;gap:9px;overflow:auto;padding-bottom:6px;margin-bottom:18px}.category-row button{white-space:nowrap;padding:7px 13px;border:1px solid var(--line);background:#fff;color:#687083;font-size:13px}.category-row button.active{background:var(--navy);border-color:var(--navy);color:#fff}.product-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.product{overflow:hidden;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:0 4px 12px #25305308}.product-image{height:165px;background:linear-gradient(135deg,#dcebf7,#f1e9e5);display:grid;place-items:center;color:#73869b;font-size:12px}.product-image img{width:100%;height:100%;object-fit:cover}.product-body{padding:13px}.product h3{min-height:44px;margin:0;font-size:16px;line-height:1.45}.product .spec{color:var(--muted);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:4px 0 10px}.price-row{display:flex;align-items:baseline;gap:7px}.price{color:var(--coral);font-size:20px;font-weight:900}.member-price{color:var(--purple);font-size:12px;font-weight:700}.product footer{display:flex;align-items:center;justify-content:space-between;gap:5px;margin-top:12px}.stock{color:var(--muted);font-size:12px}.product footer button{padding:7px 9px;background:#fff0f1;color:var(--coral);font-size:12px;font-weight:800}.trust-row{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin-top:34px;border-radius:12px;overflow:hidden;background:var(--line)}.trust-row div{padding:16px 20px;background:#fff}.trust-row b,.trust-row span{display:block}.trust-row b{font-size:14px}.trust-row span{color:var(--muted);font-size:12px}.page-intro{max-width:660px;padding:40px 0 23px}.page-intro>p:last-child{color:var(--muted);margin:8px 0 0}.member-panel{max-width:550px;background:var(--navy);padding:27px;border-radius:16px;color:#fff;box-shadow:var(--shadow)}.member-panel-head{display:flex;align-items:center;gap:12px;margin-bottom:18px}.member-panel h3{margin:2px 0 0}.member-panel label,.form label{display:block;font-size:13px;font-weight:700;margin-top:12px}.member-panel label{color:#dce1ed}.member-panel input,.form input:not([type=checkbox]),.form textarea,.barcode-row input{display:block;width:100%;border:1px solid var(--line);border-radius:8px;padding:10px;margin-top:5px;font:inherit;outline:0;background:#fff;color:var(--ink)}.member-panel .primary{width:100%;margin-top:18px}.member-panel .hint{color:#bfc7d9}.member-benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;max-width:760px;margin-top:18px}.member-benefits article{padding:16px;background:#fff;border-radius:12px;border:1px solid var(--line)}.member-benefits b,.member-benefits span{display:block}.member-benefits span{font-size:12px;color:var(--muted);margin-top:4px}.checkout-layout,.admin-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.9fr);gap:20px}.panel{background:#fff;border:1px solid var(--line);border-radius:14px;padding:21px;box-shadow:0 4px 13px #25305307}.cart-panel{min-height:230px}.cart-line,.order{padding:13px 0;border-bottom:1px solid var(--line)}.cart-line:last-child,.order:last-child{border:0}.cart-line{display:flex;justify-content:space-between;gap:12px}.cart-line strong{display:block}.cart-line input{width:54px;padding:4px;margin:0 3px}.cart-line button{color:var(--coral);font-size:12px}.hint,.checkout-note{font-size:12px;color:var(--muted)}.checkout-note{margin-top:15px;padding:10px;background:#f6f7fa;border-radius:8px}.form textarea{min-height:66px;resize:vertical}.full{width:100%;margin-top:18px}.admin-title{padding-bottom:18px}.admin-panel{min-height:360px}.panel-title{display:flex;align-items:center;justify-content:space-between;gap:10px}.panel-title>div{display:flex;align-items:center;gap:9px}.panel-title h3{margin:0;font-size:17px}.panel-title>span{font-size:12px;color:var(--muted)}.panel-title>button{padding:6px 9px;color:var(--coral);font-size:13px;font-weight:700}.step{display:grid;place-items:center;width:27px;height:27px;border-radius:8px;background:#fff0f1;color:var(--coral);font-size:12px;font-weight:900}.barcode-row{display:flex;gap:8px;margin-top:13px}.barcode-row input{margin:0}.barcode-row button{background:var(--navy);color:#fff;white-space:nowrap}.secondary{margin-top:10px;border:1px solid var(--line);background:#fff;font-weight:700}.preview{display:block;width:100%;max-height:180px;object-fit:cover;border-radius:8px;margin-top:8px}.check{display:flex!important;align-items:center;gap:8px}.check input{margin:0}.status{display:inline-block;padding:3px 8px;margin:6px 0;border-radius:99px;background:#eef6f2;color:#177957;font-size:12px}.order small{display:block;color:var(--muted);margin-top:6px}.order-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:8px}.order-actions button{padding:7px 10px;border:1px solid var(--line);font-size:12px}.empty{color:var(--muted);padding:20px 0}video{width:100%;margin-top:12px;border-radius:10px}dialog{border:0;border-radius:12px;max-width:320px;padding:21px;box-shadow:0 20px 70px #11182755}dialog::backdrop{background:#11182766}dialog button{margin-top:7px;background:var(--navy);color:#fff}@media(max-width:1120px){.product-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:720px){.topbar{height:58px;padding:0 14px}.brand{font-size:14px;gap:7px}.brand small{display:none}.brand-mark{width:27px;height:27px}.topbar nav{gap:0}.topbar nav button{padding:7px 7px;font-size:12px}.topbar nav button[data-view="admin"]{display:none}main{padding:0 14px 45px}.store-strip{font-size:12px;white-space:nowrap;overflow:hidden}.hero-card{grid-template-columns:1fr;min-height:280px;padding:27px 23px}.hero-card h1{font-size:34px}.hero-copy{font-size:13px;max-width:245px}.hero-visual{position:absolute;right:15px;bottom:18px;width:125px;height:125px;padding:16px}.hero-visual strong{font-size:23px}.hero-visual i{right:13px;top:10px}.hero-actions{margin-top:18px}.promo-grid{gap:10px}.promo-grid article{padding:16px;min-height:122px}.promo-grid strong{font-size:16px}.member-banner{padding:12px}.member-banner strong{font-size:13px}.section-heading{align-items:start;gap:12px;flex-direction:column;margin-top:29px}.section-heading h2,.page-intro h2{font-size:23px}.search{width:100%}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.product-image{height:132px}.product-body{padding:10px}.product h3{font-size:13px;min-height:39px}.product footer{align-items:flex-start;flex-direction:column}.product footer button{width:100%}.trust-row{grid-template-columns:1fr}.member-benefits{grid-template-columns:1fr}.page-intro{padding:28px 0 18px}.checkout-layout,.admin-layout{grid-template-columns:1fr;gap:13px}.panel{padding:16px}.cart-line{font-size:13px}.admin-layout{padding-bottom:20px}}@media(max-width:365px){.topbar nav button[data-view="member"]{display:none}.product-grid{grid-template-columns:1fr}.product-image{height:170px}}



/* source: vendor/photoswipe/photoswipe.css */
/*! PhotoSwipe main CSS by Dmytro Semenov | photoswipe.com */

.pswp {
  --pswp-bg: #000;
  --pswp-placeholder-bg: #222;
  

  --pswp-root-z-index: 100000;
  
  --pswp-preloader-color: rgba(79, 79, 79, 0.4);
  --pswp-preloader-color-secondary: rgba(255, 255, 255, 0.9);
  
  /* defined via js:
  --pswp-transition-duration: 333ms; */
  
  --pswp-icon-color: #fff;
  --pswp-icon-color-secondary: #4f4f4f;
  --pswp-icon-stroke-color: #4f4f4f;
  --pswp-icon-stroke-width: 2px;

  --pswp-error-text-color: var(--pswp-icon-color);
}


/*
	Styles for basic PhotoSwipe (pswp) functionality (sliding area, open/close transitions)
*/

.pswp {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: var(--pswp-root-z-index);
	display: none;
	touch-action: none;
	outline: 0;
	opacity: 0.003;
	contain: layout style size;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

/* Prevents focus outline on the root element,
  (it may be focused initially) */
.pswp:focus {
  outline: 0;
}

.pswp * {
  box-sizing: border-box;
}

.pswp img {
  max-width: none;
}

.pswp--open {
	display: block;
}

.pswp,
.pswp__bg {
	transform: translateZ(0);
	will-change: opacity;
}

.pswp__bg {
  opacity: 0.005;
	background: var(--pswp-bg);
}

.pswp,
.pswp__scroll-wrap {
	overflow: hidden;
}

.pswp__scroll-wrap,
.pswp__bg,
.pswp__container,
.pswp__item,
.pswp__content,
.pswp__img,
.pswp__zoom-wrap {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.pswp__img,
.pswp__zoom-wrap {
	width: auto;
	height: auto;
}

.pswp--click-to-zoom.pswp--zoom-allowed .pswp__img {
	cursor: -webkit-zoom-in;
	cursor: -moz-zoom-in;
	cursor: zoom-in;
}

.pswp--click-to-zoom.pswp--zoomed-in .pswp__img {
	cursor: move;
	cursor: -webkit-grab;
	cursor: -moz-grab;
	cursor: grab;
}

.pswp--click-to-zoom.pswp--zoomed-in .pswp__img:active {
  cursor: -webkit-grabbing;
  cursor: -moz-grabbing;
  cursor: grabbing;
}

/* :active to override grabbing cursor */
.pswp--no-mouse-drag.pswp--zoomed-in .pswp__img,
.pswp--no-mouse-drag.pswp--zoomed-in .pswp__img:active,
.pswp__img {
	cursor: -webkit-zoom-out;
	cursor: -moz-zoom-out;
	cursor: zoom-out;
}


/* Prevent selection and tap highlights */
.pswp__container,
.pswp__img,
.pswp__button,
.pswp__counter {
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

.pswp__item {
	/* z-index for fade transition */
	z-index: 1;
	overflow: hidden;
}

.pswp__hidden {
	display: none !important;
}

/* Allow to click through pswp__content element, but not its children */
.pswp__content {
  pointer-events: none;
}
.pswp__content > * {
  pointer-events: auto;
}


/*

  PhotoSwipe UI

*/

/*
	Error message appears when image is not loaded
	(JS option errorMsg controls markup)
*/
.pswp__error-msg-container {
  display: grid;
}
.pswp__error-msg {
	margin: auto;
	font-size: 1em;
	line-height: 1;
	color: var(--pswp-error-text-color);
}

/*
class pswp__hide-on-close is applied to elements that
should hide (for example fade out) when PhotoSwipe is closed
and show (for example fade in) when PhotoSwipe is opened
 */
.pswp .pswp__hide-on-close {
	opacity: 0.005;
	will-change: opacity;
	transition: opacity var(--pswp-transition-duration) cubic-bezier(0.4, 0, 0.22, 1);
	z-index: 10; /* always overlap slide content */
	pointer-events: none; /* hidden elements should not be clickable */
}

/* class pswp--ui-visible is added when opening or closing transition starts */
.pswp--ui-visible .pswp__hide-on-close {
	opacity: 1;
	pointer-events: auto;
}

/* <button> styles, including css reset */
.pswp__button {
	position: relative;
	display: block;
	width: 50px;
	height: 60px;
	padding: 0;
	margin: 0;
	overflow: hidden;
	cursor: pointer;
	background: none;
	border: 0;
	box-shadow: none;
	opacity: 0.85;
	-webkit-appearance: none;
	-webkit-touch-callout: none;
}

.pswp__button:hover,
.pswp__button:active,
.pswp__button:focus {
  transition: none;
  padding: 0;
  background: none;
  border: 0;
  box-shadow: none;
  opacity: 1;
}

.pswp__button:disabled {
  opacity: 0.3;
  cursor: auto;
}

.pswp__icn {
  fill: var(--pswp-icon-color);
  color: var(--pswp-icon-color-secondary);
}

.pswp__icn {
  position: absolute;
  top: 14px;
  left: 9px;
  width: 32px;
  height: 32px;
  overflow: hidden;
  pointer-events: none;
}

.pswp__icn-shadow {
  stroke: var(--pswp-icon-stroke-color);
  stroke-width: var(--pswp-icon-stroke-width);
  fill: none;
}

.pswp__icn:focus {
	outline: 0;
}

/*
	div element that matches size of large image,
	large image loads on top of it,
	used when msrc is not provided
*/
div.pswp__img--placeholder,
.pswp__img--with-bg {
	background: var(--pswp-placeholder-bg);
}

.pswp__top-bar {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 60px;
	display: flex;
  flex-direction: row;
  justify-content: flex-end;
	z-index: 10;

	/* allow events to pass through top bar itself */
	pointer-events: none !important;
}
.pswp__top-bar > * {
  pointer-events: auto;
  /* this makes transition significantly more smooth,
     even though inner elements are not animated */
  will-change: opacity;
}


/*

  Close button

*/
.pswp__button--close {
  margin-right: 6px;
}


/*

  Arrow buttons

*/
.pswp__button--arrow {
  position: absolute;
  top: 0;
  width: 75px;
  height: 100px;
  top: 50%;
  margin-top: -50px;
}

.pswp__button--arrow:disabled {
  display: none;
  cursor: default;
}

.pswp__button--arrow .pswp__icn {
  top: 50%;
  margin-top: -30px;
  width: 60px;
  height: 60px;
  background: none;
  border-radius: 0;
}

.pswp--one-slide .pswp__button--arrow {
  display: none;
}

/* hide arrows on touch screens */
.pswp--touch .pswp__button--arrow {
  visibility: hidden;
}

/* show arrows only after mouse was used */
.pswp--has_mouse .pswp__button--arrow {
  visibility: visible;
}

.pswp__button--arrow--prev {
  right: auto;
  left: 0px;
}

.pswp__button--arrow--next {
  right: 0px;
}
.pswp__button--arrow--next .pswp__icn {
  left: auto;
  right: 14px;
  /* flip horizontally */
  transform: scale(-1, 1);
}

/*

  Zoom button

*/
.pswp__button--zoom {
  display: none;
}

.pswp--zoom-allowed .pswp__button--zoom {
  display: block;
}

/* "+" => "-" */
.pswp--zoomed-in .pswp__zoom-icn-bar-v {
  display: none;
}


/*

  Loading indicator

*/
.pswp__preloader {
  position: relative;
  overflow: hidden;
  width: 50px;
  height: 60px;
  margin-right: auto;
}

.pswp__preloader .pswp__icn {
  opacity: 0;
  transition: opacity 0.2s linear;
  animation: pswp-clockwise 600ms linear infinite;
}

.pswp__preloader--active .pswp__icn {
  opacity: 0.85;
}

@keyframes pswp-clockwise {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}


/*

  "1 of 10" counter

*/
.pswp__counter {
  height: 30px;
  margin-top: 15px;
  margin-inline-start: 20px;
  font-size: 14px;
  line-height: 30px;
  color: var(--pswp-icon-color);
  text-shadow: 1px 1px 3px var(--pswp-icon-color-secondary);
  opacity: 0.85;
}

.pswp--one-slide .pswp__counter {
  display: none;
}


/* source: single-image-viewer.css */
/* PhotoSwipe is used as a single-image viewer only: no controls or gallery UI. */
.tm-single-image-viewer .pswp__button,
.tm-single-image-viewer .pswp__counter,
.tm-single-image-viewer .pswp__preloader { display:none!important; }
.tm-single-image-viewer .pswp__bg { background:#080a10; }
.tm-single-image-viewer .pswp__img { cursor:grab; }
.tm-single-image-viewer .pswp__img:active { cursor:grabbing; }


/* source: viewport-lock.css */
html{touch-action:pan-x pan-y}
@media(max-width:720px){input,textarea,select{font-size:16px!important}}


/* source: client-extra.css */
.announcement-bar{overflow:hidden;margin:10px 0 0;border-radius:9px;background:#fff0d7;color:#965300;font-size:13px;white-space:nowrap}.announcement-bar span{display:inline-block;padding:9px 0;animation:mall-marquee 18s linear infinite}.closed-mall{margin:28px 0;padding:42px 24px;text-align:center}.closed-mall h1{margin:6px 0;font-size:30px}.closed-mall p:last-of-type{color:var(--muted)}.hero-visual{padding:0!important}.hero-visual>img{width:100%;height:100%;object-fit:cover}.hero-visual>div{height:100%;padding:22px}.member-identity{padding:14px;border-radius:9px;background:#ffffff12;color:#fff!important;font-size:16px!important}.cart-total{justify-content:flex-end;margin-top:17px}.customer-order{padding:14px 0;border-bottom:1px solid var(--line)}.customer-order:last-child{border:0}.customer-order>div{display:flex;align-items:center;justify-content:space-between;gap:10px}.customer-order p{margin:7px 0}.customer-order small{display:block;color:var(--muted);margin-bottom:7px}.guest-order-lookup{margin-bottom:14px;padding:15px!important}.guest-order-lookup h3{margin:0 0 8px;font-size:16px}.guest-order-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}.guest-order-lookup .secondary{margin-top:12px}.delivery-methods{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:14px}.delivery-methods label{margin:0!important;padding:9px 5px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--muted);text-align:center;font-size:12px;cursor:pointer}.delivery-methods label.active{border-color:var(--coral);background:#fff0f1;color:var(--coral);font-weight:800}.delivery-methods input{position:absolute;opacity:0;pointer-events:none}.order-section+.order-section{margin-top:24px;padding-top:20px;border-top:8px solid #f3f5fa}.order-section h3{margin:0 0 4px;font-size:16px}.order-section h3 small{margin-left:5px;color:var(--muted);font-size:12px;font-weight:400}.order-progress{display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:0!important;margin:10px 0;overflow:auto;padding:2px 0}.order-progress span{display:flex;align-items:center;flex:0 0 auto;color:#a3aab8;font-size:12px;white-space:nowrap}.order-progress span+span:before{content:'›';margin:0 5px;color:#c6cbd5;font-size:16px}.order-progress span.done{color:#25815e}.order-progress span.current{color:var(--coral);font-weight:800}.pickup-code{padding:2px 6px;border-radius:5px;background:#fff0f1;color:var(--coral);letter-spacing:.08em}.completed-orders{opacity:.78}.product{position:relative}.product-image{position:relative;height:142px!important;padding:0!important;border:0;overflow:hidden;cursor:zoom-in}.image-trigger{display:block;width:100%;margin:0;border-radius:0;background:#eef1f6}.product-body{padding:9px 10px 34px!important}.product h3{min-height:0!important;margin:0!important;font-size:13px!important;line-height:1.3!important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.product .spec{margin:2px 0 5px!important;line-height:1.25!important}.price{font-size:17px!important}.product footer{margin-top:6px!important}.product footer button{padding:5px 8px!important}.out-of-stock{color:#d94556}.preview-manage{position:absolute;right:8px;bottom:8px;z-index:2;padding:4px 7px!important;border:1px solid #ffffffb8;border-radius:6px!important;background:#29314edb!important;color:#fff!important;font-size:12px!important;line-height:1.1;box-shadow:none!important}.preview-manage:hover{background:#ff5966!important}.image-viewer{width:100vw;max-width:none;height:100vh;max-height:none;margin:0;padding:0;border:0;border-radius:0;background:#080a10}.image-viewer::backdrop{background:#080a10}.lightbox-stage{position:relative;width:100%;height:100%;display:grid;place-items:center;touch-action:pan-y;cursor:zoom-out}.lightbox-stage img{display:block;width:auto;max-width:100%;height:auto;max-height:100%;object-fit:contain}.lightbox-index{position:absolute;right:15px;bottom:15px;padding:4px 8px;border-radius:999px;background:#0009;color:#fff;font-size:12px}@keyframes mall-marquee{from{transform:translateX(100vw)}to{transform:translateX(-100%)}}@media(max-width:480px){.delivery-methods{grid-template-columns:1fr}.delivery-methods label{padding:10px}.guest-order-fields{grid-template-columns:1fr}.order-progress{margin-right:-4px}}
  .customer-order .order-items span{display:block}
  .order-section h3{display:flex;align-items:center;gap:7px}
  .order-section-count{display:inline-grid;place-items:center;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--coral);color:#fff;font-size:12px;line-height:1;font-weight:800}
  .lightbox-stage.is-dragging,.backend-lightbox-stage.is-dragging{cursor:grabbing}.lightbox-stage.is-dragging img,.backend-lightbox-stage.is-dragging img{transition:none}
  .image-viewer,.backend-image-viewer{overflow:hidden}.lightbox-stage,.backend-lightbox-stage{overflow:hidden;touch-action:none}.lightbox-canvas,.backend-lightbox-canvas{display:grid;width:100%;height:100%;place-items:center;overflow:hidden}.lightbox-stage img,.backend-lightbox-stage img{max-width:100%;max-height:100%;transition:transform .16s ease;transform-origin:center;will-change:transform}.lightbox-close,.backend-lightbox-close{position:absolute;z-index:2;top:14px;left:14px;width:38px;height:38px;padding:0;border:0;border-radius:50%;background:#11182799;color:#fff;font-size:34px;line-height:32px}.lightbox-tools,.backend-lightbox-tools{position:absolute;z-index:2;top:14px;right:14px;display:flex;overflow:hidden;border-radius:9px;background:#11182799}.lightbox-tools button,.backend-lightbox-tools button{width:36px;height:38px;padding:0;border:0;background:transparent;color:#fff;font-size:22px;line-height:1}.lightbox-tools button+button,.backend-lightbox-tools button+button{border-left:1px solid #ffffff40}.lightbox-stage.is-zoomed,.backend-lightbox-stage.is-zoomed{cursor:grab}.lightbox-stage.is-zoomed:active,.backend-lightbox-stage.is-zoomed:active{cursor:grabbing}


/* source: typography.css */
:root{
  --font-body:15px;
  --font-support:13px;
  --font-meta:12px;
  --font-tag:11px;
  --font-page-title:28px;
  --font-page-title-mobile:24px;
}

body{font-size:var(--font-body)}
.page-head span{font-size:14px}

/* Keep the key list-page titles on the same visual baseline as the client
   cart's “商品明细”: same type scale, weight and breathing room. */
#myOrders .page-intro{padding:25px 0 14px}
#myOrders .page-intro h2,
#products .page-head h1,
#orders .page-head h1,
#consultations .page-head h1{
  margin:0;
  font-size:27px;
  line-height:1.2;
  font-weight:700;
}
#products .page-head,
#orders .page-head,
#consultations .page-head{
  min-height:32px;
  margin:0 0 14px;
}

/* 客户商城商品卡：密度不变，所有业务文字至少 11px。 */
.product-open .product-title{min-height:37px!important;font-size:14px!important}
.product-open .card-spec,.product-open .member-price,.product-open .price-unit,.product-open .stock{font-size:12px!important}
.product-open .price-compact .member-price,.product-open .price-compact .price-unit{font-size:12px!important}
.product-open .price-compact .currency{font-size:10px}

/* 后台商品卡：标签和微型操作与正文层级一致。 */
.product-card-spec{font-size:14px}
.product-full-title h3{font-size:16px}
.product-published,.product-category{font-size:13px}
.product-manage{font-size:13px!important}
.product-field-list p{font-size:13px}
.product-search-meta{font-size:12px}
.product-member-price .product-price{font-size:18px}

@media(max-width:720px){
  #myOrders .page-intro{padding:20px 0 11px}
  #myOrders .page-intro h2,
  #products .page-head h1,
  #orders .page-head h1,
  #consultations .page-head h1{font-size:24px}
  #products .page-head,
  #orders .page-head,
  #consultations .page-head{min-height:29px;margin:2px 0 11px}
  .topbar nav button,.logout{font-size:14px}
  .page-head span{font-size:12px}
  .product-search-panel .search-row input{font-size:13px!important}
  .product-card-spec{font-size:13px}
  .product-full-title h3{font-size:13px}
  .product-published,.product-category{font-size:12px}
  .product-manage{font-size:12px!important}
  .product-field-list p{font-size:12px}
  .product-member-price,.product-cost-price{font-size:12px}
  .product-member-price .product-price{font-size:16px}
  .product-cost-price .product-price{font-size:12px}
  .product-member-price .product-price i,.product-cost-price .product-price i{font-size:10px}
}

@media(min-width:721px){.search-results{grid-template-columns:repeat(2,minmax(0,1fr))!important}}


/* source: client-topbar.css */
/* 客户端手机顶栏沿用后台已定稿的菜单模式。 */
.topbar nav button {
  border-bottom: 3px solid transparent;
}

.topbar .brand-mark {
  width: 46px;
  height: 30px;
  overflow: visible;
  border: 0 !important;
  border-radius: 0;
  /* The logo asset already carries the approved -8 degree flight angle. */
  transform: none;
}

.topbar .brand-mark img {
  display: block;
  width: 46px !important;
  height: 30px !important;
  max-width: 46px;
  max-height: 30px;
  object-fit: contain !important;
}

.topbar nav button.active {
  color: var(--topbar-active-text-color, #fff);
  background: var(--topbar-active-background, rgba(255, 255, 255, .12));
  border-bottom-color: var(--topbar-active-underline-color, #ff5966);
  box-shadow: none;
}

.topbar nav button.active:hover,
.topbar nav button.active:focus-visible {
  background: var(--topbar-active-background, rgba(255, 255, 255, .12));
}

.topbar nav .cart-button,
.topbar nav .order-button,
.topbar nav .member-button {
  position: relative;
}

.topbar nav .menu-count {
  position: absolute;
  top: -5px;
  right: -6px;
  z-index: 1;
  display: inline-grid;
  place-items: center;
  min-width: 18px;
  height: 18px;
  padding: 0 4px;
  margin: 0;
  border-radius: 99px;
  background: var(--topbar-badge-background-color, var(--coral));
  color: var(--topbar-badge-text-color, #fff);
  font-size: 10px;
  font-weight: 800;
  line-height: 1;
}

.topbar nav .menu-count[hidden] {
  display: none;
}

.topbar nav .order-button .menu-count {
  right: -3px;
}

/* “我的”菜单的消息角标向左收 2px，和文字右上角更贴合。 */
.topbar nav .member-button .menu-count {
  right: -4px;
}

.order-progress {
  margin: 12px 0;
  padding: 4px 0;
}

.order-progress span {
  font-size: 14px;
  line-height: 1.35;
}

.order-progress span + span:before {
  margin: 0 7px;
  font-size: 18px;
}

@media (max-width: 720px) {
  .topbar {
    height: 48px;
    padding: 0 9px;
  }

  .topbar .brand-mark {
    display: none;
  }

  .topbar .brand {
    flex: 0 0 auto;
    font-size:20px;
    line-height: 1;
    white-space: nowrap;
  }

  .topbar nav {
    min-width: 0;
    gap: 0;
  }

  .topbar nav button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 32px;
    padding: 3px 10px 0;
    border-right: 0;
    border-left: 0;
    background: transparent;
    font-size: 18px;
    line-height: 1.35;
    letter-spacing: .16em;
    text-indent: .10em;
    white-space: nowrap;
  }

  .topbar nav .cart-button {
    padding-right: 8px;
    padding-left: 8px;
    background: transparent !important;
    letter-spacing: .08em;
    text-indent: .04em;
  }

  .topbar nav button.active,
  .topbar nav .cart-button.active {
    background: var(--topbar-active-background, rgba(255, 255, 255, .12)) !important;
    border-bottom-color: var(--topbar-active-underline-color, #ff5966);
  }
}

@media (max-width: 390px) {
  .topbar nav button {
    padding-right: 10px;
    padding-left: 10px;
  }

  .topbar nav .cart-button {
    padding-right: 6px;
    padding-left: 6px;
  }
}

@media (max-width: 370px) {
  .topbar nav button {
    padding: 3px 4px 0;
    letter-spacing: .10em;
    text-indent: .05em;
  }

  .topbar nav .cart-button {
    padding-right: 2px;
    padding-left: 2px;
  }

  /* The original base stylesheet hid “我的” below 365px; all four main menus must remain available. */
  .topbar nav button[data-view="member"] {
    display: inline-flex;
  }
}


/* source: topbar-theme.css */
/* Configurable shared colors for the customer and staff top navigation. */
.topbar{background:var(--topbar-background-color,#29314e)!important}
.topbar .brand{color:var(--topbar-brand-color,#fff)!important}
.topbar .brand-mark{border-color:var(--topbar-brand-color,#fff)!important}
.topbar .brand small{background:var(--topbar-tag-background-color,#edb55a)!important;color:var(--topbar-tag-text-color,#fff)!important}
.topbar nav button,.topbar .logout{color:var(--topbar-text-color,#e9ecf4)!important}
.topbar nav button:hover,.topbar nav button:focus-visible{background:var(--topbar-active-background,#ffffff1f)!important}
.topbar nav .cart-button:not(.active){background:transparent!important}
.topbar nav button.active{color:var(--topbar-active-text-color,#fff)!important;background:var(--topbar-active-background,#ffffff1f)!important;border-bottom-color:var(--topbar-active-underline-color,#ff5966)!important}
.topbar nav button.active:hover,.topbar nav button.active:focus-visible{background:var(--topbar-active-background,#ffffff1f)!important}
.topbar nav .menu-count{background:var(--topbar-badge-background-color,#ff5966)!important;color:var(--topbar-badge-text-color,#fff)!important}

/* iPhone 添加到主屏幕后会以独立网页模式占用状态栏区域。顶栏自身承担这段
   安全区的底色，菜单仍保持原来的 48px 可视高度。普通浏览器的 inset 为 0。 */
@media (max-width:720px){
  .topbar{
    height:calc(48px + env(safe-area-inset-top));
    padding-top:env(safe-area-inset-top);
  }
}


/* source: topbar-logo-mode-v1.css */
/* Manual logo rendering for the shared top bar.
   The administrator decides independently whether the supplied full-colour
   mark stays original, becomes white, or becomes deep ink. */
html[data-topbar-logo-mode="original"] .topbar .brand-mark img {
  filter: none;
}

html[data-topbar-logo-mode="light"] .topbar .brand-mark img {
  filter: brightness(0) invert(1);
}

html[data-topbar-logo-mode="dark"] .topbar .brand-mark img {
  filter: brightness(0) saturate(100%);
}


/* source: storefront-theme.css */
/* The dark frame color and coral action color are independent theme roles. */
:root{
  --theme-action-color:#FF5966;
  --theme-action-hover-color:#E94656;
  --theme-action-text-color:#FFFFFF;
  --theme-control-tint-color:#F2F3F7;
  --theme-control-border-color:#D4D9E5;
  --theme-focus-color:#B7C1DF;
  --theme-staff-bubble-background:#FFF0F2;
  --theme-staff-bubble-border:#FFD2D8;
  --theme-staff-bubble-text:#71313A;
  --theme-member-unbound-start:#29314E;
  --theme-member-unbound-end:#363E5D;
  --theme-member-unbound-text:#FFFFFF;
  --theme-member-unbound-muted:#E9ECF4;
  --theme-member-unbound-border:#FFFFFF2D;
  --content-selection-color:#29314E;
}

/* Shared controls. Semantic colors for price, member price, warning, success and danger stay untouched. */
.primary{
  background:var(--theme-action-color)!important;
  color:var(--theme-action-text-color)!important;
  border-color:var(--theme-action-color)!important;
  box-shadow:0 8px 16px color-mix(in srgb,var(--theme-action-color) 24%,transparent)!important;
}
.primary:hover,.primary:focus-visible{background:var(--theme-action-hover-color)!important}

.category-row:not(#categoryRow) button.active,
.barcode-row button{
  background:var(--content-selection-color,#29314e)!important;
  border-color:var(--content-selection-color,#29314e)!important;
  color:#fff!important;
}
.category-row .category-save{
  background:var(--theme-action-color,#ff5966)!important;
  border-color:var(--theme-action-color,#ff5966)!important;
  color:var(--theme-action-text-color,#fff)!important;
}

.checkout-form .delivery-methods label.active,
.settlement-options label.active{
  border-color:var(--theme-action-color)!important;
  background:var(--theme-control-tint-color)!important;
  color:var(--theme-action-color)!important;
  box-shadow:0 4px 10px color-mix(in srgb,var(--theme-action-color) 18%,transparent)!important;
}
.checkout-form .delivery-methods label.active:after,
.settlement-options label.active:after{background:var(--theme-action-color)!important}

input:focus,textarea:focus,select:focus{
  border-color:var(--theme-focus-color)!important;
  box-shadow:0 0 0 3px color-mix(in srgb,var(--theme-focus-color) 28%,transparent)!important;
}

.consultation-message.staff,
.consultation-admin-message:not(.staff){
  background:var(--theme-staff-bubble-background,#fff0f2)!important;
  border-color:var(--theme-staff-bubble-border,#ffd2d8)!important;
  color:var(--theme-staff-bubble-text,#242B3C)!important;
}

.member-panel:not(.is-member-bound){
  background:linear-gradient(136deg,var(--theme-member-unbound-start),var(--theme-member-unbound-end))!important;
  border-color:var(--theme-member-unbound-border)!important;
  color:var(--theme-member-unbound-text)!important;
}
.member-panel:not(.is-member-bound) .member-card-unbound-tags,
.member-panel:not(.is-member-bound) #memberLoggedOut label,
.member-panel:not(.is-member-bound) #clearLocalDevice{color:var(--theme-member-unbound-muted)!important}
.member-panel:not(.is-member-bound) #loginMember{
  background:var(--theme-action-color)!important;
  border-color:color-mix(in srgb,var(--theme-action-color) 75%,#fff)!important;
  color:var(--theme-action-text-color)!important;
}
.member-panel:not(.is-member-bound) #loginMember:hover,
.member-panel:not(.is-member-bound) #loginMember:focus-visible{background:var(--theme-action-hover-color)!important}

.topbar nav .menu-count{box-shadow:0 2px 6px color-mix(in srgb,var(--topbar-badge-background-color) 28%,transparent)}

button:disabled,.primary:disabled{
  border-color:#DDE1E9!important;
  background:#E8EBF1!important;
  color:#A1A8B5!important;
  box-shadow:none!important;
  cursor:not-allowed!important;
  opacity:1!important;
}
.category-delete,
[data-promotion-action="delete"],
[data-receipt-footer-action="delete"]{
  border-color:#E7B8BF!important;
  background:#fff!important;
  color:#A73745!important;
}

@supports not (color:color-mix(in srgb,#000 50%,#fff)){
  .primary{box-shadow:0 8px 16px #29314e2e!important}
  input:focus,textarea:focus,select:focus{box-shadow:0 0 0 3px #29314e24!important}
  .member-panel:not(.is-member-bound) #loginMember{border-color:#ffffff99!important}
  .topbar nav .menu-count{box-shadow:0 2px 6px #29314e2e}
}


/* ===== catalogue ===== */

/* source: product-card.css */
/* 手机商品卡：iPhone 4:3 竖拍图片按 3:4 完整展示。 */
.product-open{display:flex;flex-direction:column;border-radius:16px;box-shadow:0 5px 16px #2530530d}
.product-open .product-image{width:100%;height:auto!important;aspect-ratio:1/1;background:#f2f3f5}
.product-open .product-image img{object-fit:contain;object-position:center;background:#f2f3f5}
.product-open .product-body{display:flex;flex:1;flex-direction:column;padding:5px 6px 6px!important}
.product-open .product-title{min-height:34px!important;margin:0!important;font-size:13px!important;line-height:1.3!important;display:-webkit-box!important;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.product-open .card-spec{color:#7d8493;font-size:14px;font-weight:400}
.product-commerce{margin-top:auto}
.product-open .price-row{min-height:23px;align-items:flex-end;gap:4px;overflow:hidden;white-space:nowrap}
.product-open .price{display:inline-flex;align-items:flex-end;line-height:1!important;font-size:18px!important;letter-spacing:-.4px}
.price-value{display:inline-flex;align-items:flex-end;line-height:1}
.product-open .currency{display:inline-block;margin:0;font-size:12px;font-style:normal;font-weight:400;line-height:1}
.product-open .price-amount{font:inherit;line-height:1}
.product-open .price>.price-value .price-amount{transform:translateY(2px)}
.product-open .member-price{display:inline-flex;align-items:flex-end;gap:3px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1}
.product-open .price-unit{align-self:flex-end;flex:0 0 auto;color:#7d8493;font-size:12px;line-height:1;white-space:nowrap}
.product-open .price-compact{gap:2px}
.product-open .price-compact .price{font-size:16px!important;letter-spacing:-.6px}
.product-open .price-compact .member-price,.product-open .price-compact .price-unit{font-size:10px!important;letter-spacing:-.25px}
.product-open .price-compact .currency{font-size:10px}
.product-open footer{display:flex!important;flex-direction:row!important;align-items:center!important;margin-top:1px!important;min-height:28px}
.product-open .stock{font-size:12px;line-height:1.2}
/* 库存状态与前台、后台商城卡片统一：缺货和库存紧张均使用警示红色。 */
.product-open .stock.out-of-stock{color:#d94556}
.card-cart{position:relative;display:grid!important;place-items:center;width:30px!important;height:28px!important;margin:0!important;padding:5px!important;border-radius:8px!important;background:#fff0f1!important;color:#ff5966!important}
.card-cart:after{content:"";position:absolute;inset:-5px -4px}
.card-cart svg,.detail-cart-nav svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.card-cart:disabled{background:#f0f1f3!important;color:#aab0bb!important}
.card-cart.added{animation:card-cart-added .34s ease}
@keyframes card-cart-added{0%{transform:scale(1)}45%{transform:scale(.84);background:#ff5966;color:#fff}100%{transform:scale(1)}}
/* Treat a category refresh as one stable catalogue surface, not a collection
   of individually popping cards. */
#productGrid{view-transition-name:storefront-product-grid;transition:height .18s cubic-bezier(.2,.7,.2,1),opacity .18s ease-out}
#productGrid.catalogue-swapping{opacity:.82}
::view-transition-old(storefront-product-grid){animation:storefront-catalogue-out .16s ease-out both}
::view-transition-new(storefront-product-grid){animation:storefront-catalogue-in .2s ease-out both}
@keyframes storefront-catalogue-out{to{opacity:.82}}
@keyframes storefront-catalogue-in{from{opacity:.82}to{opacity:1}}
@media(prefers-reduced-motion:reduce){::view-transition-old(storefront-product-grid),::view-transition-new(storefront-product-grid){animation:none}}
.preview-manage{top:8px!important;right:8px!important;bottom:auto!important;padding:5px 8px!important;border-radius:7px!important}
@media(min-width:331px) and (max-width:365px){.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.category-row{display:flex;gap:4px;overflow-x:auto;margin-bottom:12px;scrollbar-width:none}.category-row::-webkit-scrollbar{display:none}.category-row button{flex:1 0 56px;min-width:0;padding:6px 1px;font-size:12px;text-align:center}}


/* source: card-image-crop.css */
/* 商城与后台共用：主图保持正方形视窗，完整显示原图。 */
.product-card-main-image{
  position:relative;
  width:100%;
  height:auto!important;
  aspect-ratio:1/1;
  overflow:hidden;
  padding:0;
  background:#f2f3f5;
}
.product-card-main-image img{
  position:absolute;
  inset:0;
  display:block;
  width:100%!important;
  height:100%!important;
  max-width:none;
  object-fit:contain!important;
  object-position:50% 50%!important;
}

/* Every small catalogue image uses the same no-crop rule and never inherits a
   page-level image size. */
.series-member-image img,
.series-candidate img,
.series-list-item img,
.detail-variant-thumb img,
.favorite-row-thumb img,
.cart-thumb img,
.image-item img{
  display:block;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  object-fit:contain!important;
  object-position:50% 50%!important;
}


/* source: product-card-title-layout.css */
/* Front product card: name and specification share exactly two text rows. */
.product-open .product-title{
  min-height:37px!important;
  margin:0!important;
  font-size:14px!important;
  line-height:1.3!important;
}
.product-open .product-title.no-spec{
  display:-webkit-box!important;
  overflow:hidden;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
}
.product-open .product-title.has-spec{
  display:flex!important;
  flex-direction:column;
  overflow:hidden;
}
.product-open .product-title.has-spec .card-name,
.product-open .product-title.has-spec .card-spec{
  display:block;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.product-open .product-title.has-spec .card-name{min-height:18px}
.product-open .product-title.has-spec .card-spec{
  min-height:18px;
  color:#242b3c;
  font-size:14px!important;
  font-weight:400;
}
.product-open footer .card-actions{
  display:inline-flex;
  align-items:center;
  gap:4px;
  margin-left:auto;
}
.product-open .product-favorite.card-favorite{
  position:relative!important;
  z-index:auto!important;
  top:auto!important;
  right:auto!important;
  display:grid!important;
  place-items:center;
  width:30px!important;
  height:28px!important;
  margin:0!important;
  padding:4px!important;
  border:0!important;
  border-radius:9px!important;
  background:transparent!important;
  color:#697386!important;
  box-shadow:none!important;
}
.product-open .product-favorite.card-favorite.is-favorite{color:var(--coral)!important}
.product-open .product-favorite.card-favorite svg{width:19px;height:19px;fill:currentColor;stroke:currentColor;stroke-width:1.4;stroke-linejoin:round}
.product-open .product-favorite.card-favorite:not(.is-favorite) svg{fill:none}


/* source: storefront-product-detail.css */
/* 前台商品详情专用：只作用于 #productDetail，不覆盖后台详情、客服商品预览。 */
body.detail-open{background:#f5f5f5}
body.detail-open .staff-entry{display:none}
body.detail-open main{max-width:none;padding:0}
#productDetail{position:relative;min-height:calc(100svh - 52px);background:#f5f5f5}
#productDetail.active{display:flex;flex-direction:column}
#productDetail .detail-sheet{display:flex;flex:1 1 0%;flex-direction:column;min-height:0;overflow:hidden;background:#fff}
#productDetail .detail-scroll{scrollbar-color:transparent transparent;scrollbar-width:thin}
#productDetail .detail-scroll::-webkit-scrollbar{width:8px;height:8px}
#productDetail .detail-scroll::-webkit-scrollbar-track{background:transparent}
#productDetail .detail-scroll::-webkit-scrollbar-thumb{border-radius:99px;background:transparent}
#productDetail .detail-scroll.is-scrolling{scrollbar-color:#aeb7c6 transparent}
#productDetail .detail-scroll.is-scrolling::-webkit-scrollbar-thumb{background:#aeb7c6}
#productDetail,#productDetail .detail-sheet,#productDetail .detail-scroll{scrollbar-width:none}
#productDetail::-webkit-scrollbar,#productDetail .detail-sheet::-webkit-scrollbar,#productDetail .detail-scroll::-webkit-scrollbar{width:0;height:0}
#productDetail .detail-scroll.is-scrolling{scrollbar-width:thin}
#productDetail .detail-scroll.is-scrolling::-webkit-scrollbar{width:8px;height:8px}
#productDetail .detail-back,#productDetail .detail-manage{position:absolute;top:10px;z-index:3;border:0;border-radius:50%;background:#11182799;color:#fff;box-shadow:none}
#productDetail .detail-back{display:grid;place-items:center;left:13px;width:38px;height:38px;padding:0;font-size:0;line-height:1}
#productDetail .detail-back::before{content:"‹";position:static;width:auto;transform:translate(-1px,-1px);color:currentColor;font-size:34px;line-height:1;text-align:center}
#productDetail .detail-manage{right:13px;padding:9px 12px;font-size:12px}
#productDetail .detail-media{position:relative;display:grid;place-items:center;flex:0 0 auto;width:min(100%,570px);height:auto;aspect-ratio:3 / 4;min-height:0;margin:0 auto;overflow:hidden;background:#eef0f3;touch-action:pan-y;cursor:pointer;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;user-select:none}
#productDetail .detail-media.no-image:after{content:'暂无实拍图片';color:#778093;font-size:13px}
#productDetail .detail-media img{display:block;width:100%;height:100%;object-fit:contain;background:#eef0f3;pointer-events:none;-webkit-user-drag:none;user-select:none;-webkit-tap-highlight-color:transparent}
#productDetail .detail-media.image-error img{visibility:hidden}
#productDetail .detail-media.image-error:after{content:'图片暂时无法显示';color:#778093;font-size:13px}
#productDetail .detail-media.no-image img{display:none}
#productDetail .detail-dots{position:absolute;right:15px;bottom:14px;display:flex;gap:5px}
#productDetail .detail-dots button{position:relative;width:18px;height:3px;padding:0;border-radius:99px;background:#ffffff8f}
#productDetail .detail-dots button:after{content:"";position:absolute;inset:-10px -4px}
#productDetail .detail-dots button.active{background:#fff}
#productDetail .detail-image-count{position:absolute;right:15px;top:15px;padding:4px 8px;border-radius:999px;background:#1118278a;color:#fff;font-size:12px}
#productDetail .detail-info{width:min(760px,100%);margin:0 auto;padding:7px 16px 13px;background:#fff}
#productDetail .detail-price-row{position:relative;display:flex;align-items:flex-end;gap:7px;min-height:33px;white-space:nowrap}
#productDetail .detail-price-row strong{display:inline-flex;align-items:flex-end;color:#ff542d;font-size:29px;line-height:1;letter-spacing:-.6px}
#productDetail .detail-price-row #detailMemberPrice{display:inline-flex;align-items:flex-end;gap:3px;color:#8666e8;font-size:16px;font-weight:700;line-height:1}
#productDetail .detail-price-row .currency{display:inline-block;margin:0;font-size:16px;font-style:normal;font-weight:400;line-height:1}
#productDetail .detail-price-row .price-amount{font:inherit;line-height:1}
#productDetail #detailPrice .price-amount{transform:translateY(3px)}
#productDetail .detail-price-unit{align-self:flex-end;margin-left:3px;color:#7d8493;font-size:14px;font-style:normal;font-weight:400;line-height:1;letter-spacing:0}
#productDetail .detail-info h1{margin:6px 0 3px;font-size:20px;line-height:1.4}
#productDetail .detail-spec,#productDetail .detail-stock{margin:0;padding:5px 0;border-top:1px solid #f0f0f0;color:#737b8c;font-size:14px}
#productDetail .detail-spec{font-weight:700}
#productDetail .detail-stock{border:0;color:#25815e}
#productDetail .detail-stock.is-out{color:#d8495a}
#productDetail #detailStock.detail-stock{position:absolute;bottom:0;left:50%;margin:0;padding:0;transform:none;border:0;color:#25815e;font-size:13px;line-height:1.2}
#productDetail #detailStock.detail-stock.is-out{color:#d8495a}
#productDetail .detail-description{margin:0;padding:5px 0;border-top:1px solid #f0f0f0;border-radius:0;background:transparent;color:#737b8c;font-size:14px;font-weight:700;line-height:1.5}
#productDetail .detail-actionbar{position:relative;bottom:auto;z-index:5;display:flex;align-items:stretch;flex:0 0 auto;gap:5px;width:min(760px,100%);margin:0;padding:9px 8px calc(9px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid #edf0f4;box-shadow:0 -8px 18px #2530530a}
#productDetail .detail-actionbar button{padding:0;border-radius:10px;color:#fff;font-size:16px;font-weight:800}
#productDetail .detail-consult,#productDetail .detail-service,#productDetail .detail-cart-nav{display:grid;place-items:center;flex:0 0 38px;border-radius:10px!important;font-size:12px!important;font-weight:800;text-decoration:none}
#productDetail .detail-consult,#productDetail .detail-service{background:#f1f3f7!important;color:#566074!important}
#productDetail .detail-consult svg,#productDetail .detail-service svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
#productDetail .detail-service[hidden],#productDetail .detail-cart-nav[hidden]{display:none!important}
#productDetail .detail-cart-nav{position:relative;background:#fff0f1!important;color:#ff5966!important}
#productDetail .detail-cart-nav b{position:absolute;top:-4px;right:-4px;display:grid;place-items:center;min-width:17px;height:17px;padding:0 4px;border-radius:999px;background:#ff5966;color:#fff;font-size:10px;line-height:1}
#productDetail .detail-cart-nav b[hidden]{display:none!important}
#productDetail .detail-quantity{display:flex;align-items:center;flex:0 0 auto;height:40px;overflow:hidden;border:1px solid #dfe3ea;border-radius:10px;background:#f5f6f8}
#productDetail .detail-quantity button{width:31px!important;height:38px;color:#566074;background:transparent;font-size:18px;font-weight:700}
#productDetail .detail-quantity button:disabled{color:#bbc1cb}
#productDetail .detail-quantity input{display:block;align-self:stretch;width:52px;margin:0;padding:0 3px;border:0;border-right:1px solid #e2e5eb;border-left:1px solid #e2e5eb;background:#fff;color:#29314e;font:14px "Microsoft YaHei",sans-serif;text-align:center;outline:0}
#productDetail .detail-quantity input:focus{background:#fffafa;box-shadow:inset 0 0 0 1px var(--coral)}
#productDetail .detail-cart{flex:1;min-height:38px;height:38px;background:#ffb21b}
#productDetail .detail-buy{flex:1;background:#ff592e}
#productDetail .detail-actionbar button:disabled{background:#c8ccd4!important;color:#fff!important}
#productDetail .detail-cart:active{transform:scale(.97)}
#productDetail .detail-cart.added{animation:storefront-detail-cart-added .26s ease}
@keyframes storefront-detail-cart-added{0%{transform:scale(1)}45%{transform:scale(.96);filter:brightness(.88)}100%{transform:scale(1)}}
@media(min-width:721px){#productDetail{min-height:calc(100svh - 52px)}#productDetail .detail-media{max-height:none}}
@media(min-width:721px) and (max-width:1199px){
  body.detail-open main{width:100%!important;max-width:none!important;margin:0!important;padding-right:0!important;padding-left:0!important}
  #productDetail,#productDetail .detail-sheet,#productDetail .detail-scroll,#productDetail .detail-media{width:100%!important;max-width:none!important;margin-right:0!important;margin-left:0!important}
  #productDetail .detail-media{aspect-ratio:3 / 4;height:auto;min-height:0}
  #productDetail .detail-media img{object-fit:contain;object-position:50% 50%}
}
@media(min-width:761px){body.detail-open #productDetail{max-width:760px;margin:auto;box-shadow:0 0 0 1px #e7e8ec}#productDetail .detail-actionbar{border-right:1px solid #eceef2;border-left:1px solid #eceef2}}
/* 电脑端前台详情采用居中弹窗卡片，不替换整页商品列表。 */
@media(min-width:1200px){
  body.detail-open #productDetail.active[data-viewport-shell]{position:fixed;z-index:60;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;width:auto;max-width:none;height:100dvh!important;max-height:none;min-height:0;margin:0;padding:24px;overflow:hidden;border-radius:0;background:#1c243b73;box-shadow:none}
  body.detail-open #productDetail .detail-sheet{position:relative;display:flex;flex:0 0 auto;flex-direction:column;width:min(560px,calc(100vw - 48px));height:auto;max-height:calc(100dvh - 48px);min-height:0;overflow:hidden;border-radius:18px;background:#fff;box-shadow:0 24px 72px #11182766}
  body.detail-open #productDetail .detail-scroll{display:flex;flex-direction:column;flex:1;min-height:0;overflow-x:hidden!important;overflow-y:auto!important;background:#fff}
  body.detail-open #productDetail .detail-scroll-content{display:flow-root;flex:0 0 auto;min-height:0;overflow:visible}
  body.detail-open #productDetail .detail-media{display:grid;flex:0 0 auto;width:100%;height:auto;aspect-ratio:3 / 4;min-height:0;margin:0;overflow:hidden;background:#eef0f3}
  body.detail-open #productDetail .detail-media img{display:block;width:100%;height:100%;object-fit:contain;object-position:50% 50%}
  body.detail-open #productDetail .detail-info{flex:0 0 auto;width:100%;min-width:0;min-height:0;margin:0;padding:12px 22px 14px;overflow:hidden;background:#fff}
  body.detail-open #productDetail .detail-actionbar{flex:0 0 auto;width:100%;margin:0;padding:10px 22px 14px;border-radius:0 0 18px 18px}
}
/* Front detail uses the same portrait card rule as the backend: fixed 3:4
   frame, edge-to-edge fill, and centered crop for non-3:4 source images. */
@media(max-width:720px){#productDetail{min-height:calc(100svh - 48px - env(safe-area-inset-top))}#productDetail .detail-media{height:auto;min-height:0;aspect-ratio:3 / 4}#productDetail .detail-media img{object-fit:contain;object-position:50% 50%}#productDetail .detail-info{padding:6px 13px 10px}#productDetail .detail-info h1{margin:5px 0 3px;line-height:1.38}#productDetail .detail-spec{padding:4px 0;line-height:1.4}#productDetail .detail-description{padding:4px 0;line-height:1.45}}
@media(max-width:420px){#productDetail .detail-info{padding:5px 13px 11px}#productDetail .detail-info h1{font-size:18px}#productDetail .detail-price-row strong{font-size:27px}#productDetail .detail-price-row #detailMemberPrice,#productDetail .detail-price-row .currency{font-size:14px}#productDetail .detail-actionbar button{font-size:14px}#productDetail .detail-cart,#productDetail .detail-buy,#productDetail .detail-select-variant{flex:1 1 72px;min-width:72px;font-size:13px!important;white-space:nowrap}#productDetail .detail-select-variant{font-size:16px!important}#productDetail .detail-quantity button{width:28px!important}#productDetail .detail-quantity input{width:46px}}
@media(max-width:374px){#productDetail .detail-actionbar{gap:3px;padding-right:5px;padding-left:5px}#productDetail .detail-consult,#productDetail .detail-service,#productDetail .detail-cart-nav{flex-basis:32px}#productDetail .detail-quantity button{width:25px!important}#productDetail .detail-quantity input{width:42px}#productDetail .detail-cart,#productDetail .detail-buy,#productDetail .detail-select-variant{flex-basis:64px;min-width:64px;font-size:12px!important}}
#productDetail .detail-scroll:not(.is-scrollable){overflow-y:hidden!important}
#productDetail .detail-scroll.is-scrollable{overflow-y:auto!important}


/* source: storefront-card-interaction.css */
/* A storefront card opens product details.  Its image is not a zoom target. */
.product-open,.product-open .product-image,.product-open .product-card-main-image{
  cursor:pointer;
}

/* Storefront-only caret cleanup.  Backend consultation controls intentionally
   stay outside this rule so customer-service interactions are untouched. */
button,[role="button"]{caret-color:transparent;user-select:none;-webkit-user-select:none}
input,textarea,[contenteditable="true"]{caret-color:auto;user-select:text;-webkit-user-select:text}

/* Desktop storefront details use the centered popup-card rules in
   storefront-product-detail.css.  Do not override that card back to a full page. */


/* source: series-products.css */
.series-card-badge{display:inline-flex;align-items:center;justify-content:center;padding:3px 4px;border:1px solid currentColor;border-radius:8px;font-size:12px;color:var(--accent,#e45757);font-weight:700;line-height:1;white-space:nowrap}
.series-card-note{font-size:12px;color:var(--muted);white-space:nowrap;min-width:0;overflow:hidden;text-overflow:ellipsis}
.product.series-product footer{align-items:center;min-width:0}
.product.series-product footer .card-favorite,.product.series-product footer .series-card-badge{flex:0 0 auto}
.product.series-product footer .series-card-badge{margin-left:-4px}
@media(max-width:720px){.detail-variant-price-row>.price-value{position:relative;top:1px}}
.product-open .series-price-suffix{align-self:flex-end;flex:0 0 auto;color:#7d8493;font-size:12px;line-height:1;white-space:nowrap}
.product-open .price-compact .series-price-suffix{font-size:10px!important;letter-spacing:-.25px}
.detail-select-variant{flex:1;min-height:38px;height:38px;background:#ffb21b}
.detail-select-variant[hidden],.detail-quantity[hidden]{display:none!important}
.series-variant-dialog{width:min(980px,calc(100vw - 32px));max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);margin:auto;padding:0;border:0;border-radius:16px;background:#fff;box-shadow:0 24px 80px #11182766}
.series-variant-dialog::backdrop{background:#11182766}
.series-variant-dialog>section{display:flex;flex-direction:column;width:100%;max-height:inherit;margin:0 auto;padding:16px 16px 8px}
.series-variant-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.series-variant-dialog-head h2{margin:0;font-size:14px;color:var(--ink)}
.series-variant-dialog-head .dialog-close{float:none;margin:0;padding:3px 9px;background:#eef1f6!important;color:#29314e!important;font-size:24px;line-height:1}
.series-variant-dialog-title{margin:5px 0 12px;color:var(--ink);font-size:20px;font-weight:700;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.series-variant-dialog-list{display:grid;gap:8px;min-height:0;max-height:calc(100dvh - 190px);overflow:auto;padding:1px}
.series-variant-dialog-actions{display:flex;gap:8px;padding-top:12px}
.series-variant-dialog-actions button{min-height:42px;border:0;border-radius:10px;color:#fff;font-size:16px;font-weight:800}
.series-variant-dialog-actions .detail-cart,.series-variant-dialog-actions .detail-buy{flex:1}
.series-variant-dialog-actions .detail-cart{background:#ffb21b}
.series-variant-dialog-actions .detail-buy{background:#ff592e}
.series-variant-dialog-actions .detail-cart:active,.series-variant-dialog-actions .detail-buy:active{transform:scale(.97)}
@media(max-width:720px){.series-variant-dialog{width:calc(100vw - 16px);max-width:calc(100vw - 16px);max-height:calc(100dvh - 16px);margin:auto;border-radius:16px}.series-variant-dialog>section{width:100%;padding:15px 13px 6px}.series-variant-dialog-list{max-height:calc(100dvh - 178px);flex:0 1 auto}}

@media(min-width:721px){
  .series-variant-dialog{width:min(440px,calc(100vw - 32px));max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px)}
}
.series-select-hint{font-size:12px;color:var(--muted)}
.detail-variants{margin-top:10px;padding-top:10px;border-top:1px solid var(--line)}
.detail-variants-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:8px}
.detail-variants-head b{font-size:16px;color:var(--ink)}
.detail-variants-head span{font-size:12px;color:var(--muted)}
.detail-series-images{border:0;background:transparent;color:var(--accent,#e45757);font:inherit;font-size:12px;padding:3px 0;white-space:nowrap}
.series-variant-dialog .detail-variant-list{display:grid;gap:4px;max-height:42vh;overflow:auto;padding-right:1px}
.detail-variant{display:grid;grid-template-columns:96px minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;min-height:108px;padding:5px 8px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink);text-align:left}
.detail-variant.active{border-color:var(--accent,#e45757);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent,#e45757) 22%,transparent);color:var(--accent,#e45757)}
.detail-variant.unavailable{opacity:.58}
.detail-variant-thumb{width:96px;height:96px;border-radius:10px;background:#f4f5f8;overflow:hidden;display:grid;place-items:center;color:var(--muted);font-size:12px}
.detail-variant-thumb{cursor:pointer}
.detail-variant-thumb img{display:block;width:100%;height:100%;object-fit:contain}
.detail-variant-content{align-self:stretch;min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;align-content:center;column-gap:8px;row-gap:3px}
.detail-variant-content>b{grid-column:1/-1;min-width:0;font-size:14px;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.detail-variant-spec{min-width:0;color:var(--ink);font-size:14px;font-weight:700;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.detail-variant-content>.detail-variant-spec{grid-column:1/-1}
.detail-variant-price-row{display:flex;align-items:flex-end;gap:5px;min-width:0;white-space:nowrap;line-height:1}
.detail-variant-price-row .price-value{display:inline-flex;align-items:flex-end;color:#ff542d;font-size:16px;font-weight:800;letter-spacing:0;line-height:1}
.detail-variant-price-row .currency{margin:0;font-size:12px;font-style:normal;font-weight:400;line-height:1}
.detail-variant-price-row .price-amount{font:inherit;line-height:1}
.detail-variant-unit{align-self:flex-end;color:#7d8493;font-size:12px;font-style:normal;font-weight:400;line-height:1}
.detail-variant-member-price{display:inline-flex;align-items:flex-end;gap:2px;min-width:0;color:#8666e8;font-size:12px;font-weight:700;line-height:1}
.detail-variant-member-price .price-value{color:inherit;font-size:inherit;font-weight:inherit;letter-spacing:0}
.detail-variant-member-price .currency{font-size:10px}
.detail-variant-side{display:flex;grid-column:2;grid-row:2;align-items:flex-end;justify-content:flex-end;white-space:nowrap}
.detail-variant-side span{font-size:12px;color:var(--muted)}
.detail-variant-side .is-low,.detail-variant-side .is-empty{color:var(--accent,#e45757)}
@media(max-width:720px){.detail-variant-list{max-height:34vh}.detail-variant{grid-template-columns:80px minmax(0,1fr) auto;min-height:92px;gap:9px;padding:5px 7px}.detail-variant-thumb{width:80px;height:80px;border-radius:9px}.detail-variant-main b{font-size:14px}.detail-variant-side strong{font-size:16px}}

/* Frontend SKU selection uses the same centre-cropped square thumbnail. */
.detail-variant-thumb{aspect-ratio:1/1;overflow:hidden}
.detail-variant-thumb>img{display:block!important;width:100%!important;height:100%!important;max-width:none!important;object-fit:contain!important;object-position:50% 50%!important}


/* source: product-pager.css */
.product-pager {
  display: flex;
  justify-content: center;
  padding: 18px 0 4px;
}

.product-pager .secondary {
  margin: 0;
  min-width: 132px;
}


/* source: client-home.css */
/* 首页运营位：无底色跑马灯、可隐藏提示和多图宣传轮播。 */
.announcement-bar{display:flex;align-items:center;min-height:34px;margin:6px 0 4px!important;border-radius:0!important;background:transparent!important;color:var(--announcement-color,#965300)!important;font-size:var(--announcement-size,14px)!important}
.announcement-bar span{position:relative;top:1px;padding:0!important;line-height:1.35;animation-duration:var(--announcement-duration,18s)!important}
#announcementBar[hidden]{display:none!important}
.store-strip{min-height:30px;margin:4px 0 10px;padding:0!important;line-height:1.35}
#storeStrip[hidden]{display:none!important}
.promotion-carousel{position:relative;overflow:hidden;margin:4px 0 29px;border-radius:14px;background:#e8ecf3;box-shadow:0 8px 20px #25305314}
.promotion-slides{display:flex;width:100%;transition:transform .32s ease}
.promotion-slides img{display:block;flex:0 0 100%;width:100%;aspect-ratio:16/7;object-fit:cover;background:#eef1f5}
.promotion-dots{position:absolute;right:12px;bottom:10px;display:flex;gap:5px}
.promotion-dots button{width:6px;height:6px;min-width:0;padding:0;border:0;border-radius:999px;background:#ffffff88;box-shadow:0 1px 3px #11182735}
.promotion-dots button.active{width:16px;background:#fff}
.homepage-promo{margin-top:30px}
@media(max-width:720px){.announcement-bar{min-height:32px;margin:4px 0 3px!important}.store-strip{min-height:28px;margin:3px 0 8px}.promotion-carousel{margin:3px 0 24px;border-radius:12px}.promotion-slides img{aspect-ratio:16/8.2}.promotion-dots{right:9px;bottom:8px}.homepage-promo{margin-top:24px}}


/* source: category-tabs-v1.css */
/* 2026-08-01 分类菜单试行版：五项等宽的顶部标签栏。 */
#categoryRow.category-row{display:flex;gap:0;overflow-x:auto;overflow-y:hidden;margin:0 0 18px;padding:0;border-bottom:1px solid var(--line);scrollbar-width:none}
#shop .promotion-carousel{margin-bottom:16px}
#shop .section-heading{margin-top:16px}
#categoryRow.category-row::-webkit-scrollbar{display:none}
#categoryRow.category-row button{position:relative;flex:1 0 72px;min-width:72px;padding:8px 0 9px;border:0!important;border-radius:0!important;background:transparent!important;color:#747c8c;font-size:16px;font-weight:600;line-height:1.35;white-space:nowrap}
#categoryRow.category-row button.active{background:transparent!important;color:var(--content-selection-color,var(--theme-action-color,var(--navy)));font-weight:800}
#categoryRow.category-row button.active:after{content:"";position:absolute;right:12%;bottom:-1px;left:12%;height:4px;border-radius:3px;background:var(--content-selection-underline-color,#ff5966)}
#shop .section-heading .search{gap:6px}
#shop .section-heading .search:focus-within{border-color:var(--line);box-shadow:none}
#shop .section-heading .search input{flex:1;min-width:0;width:auto}
#shop .section-heading .search-clear{display:grid;flex:0 0 auto;place-items:center;width:24px;height:24px;margin:0;padding:0;border:0;border-radius:50%;background:#e8ebf1;color:#667085;font-size:20px;font-weight:400;line-height:1;box-shadow:none}
#shop .section-heading .search-clear:hover,#shop .section-heading .search-clear:focus-visible{background:#dce2eb;color:#394458}
#shop .section-heading .search-clear[hidden]{display:none}
@media(max-width:720px){#shop .promotion-carousel{margin-bottom:12px}#shop .section-heading{align-items:center;gap:10px;flex-direction:row;margin-top:12px;margin-bottom:12px}#shop .section-heading>div{flex:0 0 auto}#shop .section-heading h2{font-size:21px;white-space:nowrap}#shop .section-heading .search{flex:1;min-width:0;height:38px}#categoryRow.category-row{margin-bottom:15px}#categoryRow.category-row button{flex-basis:20%;min-width:0;padding:7px 0 8px;font-size:16px}#categoryRow.category-row button.active:after{right:0;left:0;height:4px}}


/* source: storefront-desktop-workspace-width-v1.css */
/* Keep the customer catalogue comfortable on large desktop displays while
   retaining the existing compact mobile storefront. */
@media (min-width:1200px){
  main{
    width:100%;
    max-width:1680px;
    padding:0 24px 70px;
  }

  #shop #productGrid.product-grid{
    width:min(100%,1400px);
    margin-right:auto;
    margin-left:0;
  }
}

@media (min-width:1360px){
  #shop #productGrid.product-grid{
    grid-template-columns:repeat(6,minmax(0,1fr));
  }
}


/* ===== checkout-and-orders ===== */

/* source: checkout-v1.css */
/* 购物车与结算：选择商品、数量调整与交付方式。 */
#cart .checkout-page-title{padding:25px 0 14px}
#cart .checkout-page-title h2,#checkout .checkout-page-title h2,#settlement .checkout-page-title h2{font-size:27px}
#cart .checkout-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;width:100%}
#cart .checkout-layout>.panel{width:100%;max-width:none;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
#cart,#checkout,#settlement,#cart .checkout-layout,#cart .cart-line,#checkout .checkout-form,#settlement .checkout-form{width:100%;max-width:100%;min-width:0}
#checkout .checkout-form,#settlement .checkout-form{padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
#cart .cart-line-main small>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#cart .cart-panel{min-height:0}
#cart .cart-line{display:grid;grid-template-columns:26px 96px minmax(0,1fr);grid-template-rows:auto auto auto;align-items:center;gap:6px 12px;padding:12px 0;border-bottom:1px solid var(--line)}
#cart .cart-thumb{display:grid;grid-column:2;grid-row:1/4;place-items:center;position:relative;width:96px;height:96px;padding:0;overflow:hidden;border:0;border-radius:10px;background:#eef1f5;color:#9ba3b2;font-size:12px;cursor:pointer}
#cart .cart-thumb img{position:absolute;inset:0;display:block;width:100%!important;height:100%!important;max-width:none;object-fit:contain!important;object-position:50% 50%!important}
#cart .cart-line-main{grid-column:3;grid-row:1/3;min-width:0}
#cart .cart-product-title{display:flex;align-items:center;gap:7px;min-width:0}
#cart .cart-product-link{display:block;max-width:100%;padding:0;overflow:hidden;background:transparent;color:var(--ink);font-size:16px;font-weight:700;line-height:1.45;text-align:left;text-overflow:ellipsis;white-space:nowrap}
#cart .cart-product-title .cart-product-link{flex:1 1 auto;min-width:0}
#cart .cart-line-status{flex:0 0 auto;color:var(--coral);font-size:14px;font-style:normal;font-weight:800;white-space:nowrap}
#cart .cart-line.unavailable{opacity:.62}
#cart .cart-line.unavailable .cart-product-link{color:var(--muted)}
#cart .cart-product-link:active{color:var(--content-selection-color,var(--navy))}
#cart .cart-line-main small{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-top:4px;color:var(--ink);font-size:14px;font-weight:700}
#cart .cart-line-meta{min-width:0}
#cart .cart-spec{min-width:0;overflow:hidden;color:var(--ink);font-weight:700;text-overflow:ellipsis;white-space:nowrap}
#cart .cart-price-summary{display:flex;flex:0 0 auto;align-items:baseline;justify-content:flex-end;white-space:nowrap}
#cart .cart-unit-price{color:var(--ink);font-size:16px;font-weight:700}
#cart .cart-subtotal{flex:0 0 auto;color:var(--ink);font-size:16px}
#cart .cart-check{display:grid!important;grid-column:1;grid-row:1/3;place-items:center;justify-self:start;align-self:center;position:relative!important;inset:auto!important;width:26px;height:26px;margin:0!important;cursor:pointer}
#cart .cart-check input{position:absolute;opacity:0;pointer-events:none}
#cart .cart-check span{display:block;width:20px;height:20px;border:1.5px solid #c7ced9;border-radius:6px;background:#f8f9fb;box-shadow:inset 0 0 0 1px #fff}
#cart .cart-check input:checked+span{position:relative;border-color:var(--cart-selection-color,var(--content-selection-color,var(--navy)));background:var(--cart-selection-color,var(--content-selection-color,var(--navy)));box-shadow:0 2px 5px #29314e30}
#cart .cart-check input:checked+span:after{content:"";position:absolute;top:3px;left:6px;width:5px;height:9px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}
#cart .cart-line-controls{display:flex;grid-column:3;grid-row:3;align-items:center;justify-content:flex-start;gap:8px;width:auto;min-width:0;margin-top:2px}
#cart .cart-line-controls{min-width:0}
#cart .cart-quantity{display:flex;align-items:center;height:36px;overflow:hidden;border:1px solid #dfe3ea;border-radius:9px;background:#f5f6f8}
#cart .cart-quantity button{width:28px;height:34px;padding:0;color:#566074;background:transparent;font-size:18px;font-weight:700}
#cart .cart-quantity button:disabled{color:#bbc1cb}
#cart .cart-quantity input{display:block;align-self:stretch;width:48px;margin:0;padding:0 3px;border:0;border-right:1px solid #e2e5eb;border-left:1px solid #e2e5eb;background:#fff;color:#29314e;font:16px "Microsoft YaHei",sans-serif;text-align:center;outline:0}
#cart .cart-quantity input:focus{background:#fffafa;box-shadow:inset 0 0 0 1px var(--coral)}
#cart .cart-remove{margin-left:auto;padding:3px 0;color:#9aa1ae;font-size:16px;white-space:nowrap}
#cart .cart-total{margin:9px 0 0;padding-top:9px;border-top:0}
#cart #cartMemberIdentity{margin:0;padding:6px 9px;font-size:18px;line-height:1.35}
#cart #cartNext{margin-top:0}
.checkout-delivery-title{padding-bottom:12px!important}.delivery-back-links{display:flex;align-items:center;gap:14px}.delivery-back{padding:0;color:var(--muted);font-size:16px;font-weight:800;letter-spacing:.02em}.delivery-back:active{color:var(--content-selection-color,var(--navy))}.flow-summary{margin:0 0 14px;padding:9px 11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#checkout .checkout-cart-summary{width:max-content;max-width:100%;margin:3px 0 7px;padding:4px 8px;font-size:13px;line-height:1.4}.settlement-flow-summaries{display:grid;gap:3px;margin:5px 0 8px}.settlement-flow-summaries .flow-summary{width:max-content;max-width:100%;margin:0;padding:4px 8px;font-size:13px;line-height:1.4}.checkout-form .delivery-methods{display:flex!important;gap:7px;margin-top:12px}.checkout-form .delivery-methods label,.settlement-options label{position:relative;display:flex!important;align-items:center;justify-content:center;flex:1;min-width:0;margin:0!important;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--muted);font-weight:800;white-space:nowrap;box-shadow:0 2px 5px #25305308}.checkout-form .delivery-methods label{height:42px;padding:0 20px 0 8px;font-size:13px}.checkout-form .delivery-methods label.active,.settlement-options label.active{border-color:var(--coral);background:#fff1f3;color:var(--coral);box-shadow:0 4px 10px #ff596626}.checkout-form .delivery-methods label.active:after,.settlement-options label.active:after{content:'✓';position:absolute;right:7px;top:50%;display:grid;place-items:center;width:15px;height:15px;border-radius:50%;background:var(--coral);color:#fff;font-size:10px;font-weight:900;transform:translateY(-50%)}.checkout-form .delivery-methods input,.settlement-options input{position:absolute!important;width:1px!important;height:1px!important;min-width:0!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important;border:0!important}.checkout-form input[type="hidden"]{display:none!important}.settlement-page-form{gap:14px!important}.settlement-page-form #settlementOrderControls{display:grid;gap:14px}html,body{max-width:100%;overflow-x:clip}
.checkout-form .delivery-method-hint{min-height:3.1em;margin:8px 0 1px;color:var(--coral);font-size:14px;line-height:1.55}
.checkout-form .delivery-availability-notes:empty{display:none}
.checkout-form #buyerNameField{margin-top:0}
#checkout .checkout-form textarea{height:42px;min-height:42px;resize:none;line-height:20px}
.delivery-address-head{position:relative;display:block;width:100%;line-height:1.5}.delivery-address-head .secondary{position:absolute;top:-8px;right:0;min-height:30px;margin:0!important;padding:4px 9px;border:1px solid var(--coral);border-radius:7px;background:#fff;color:var(--coral);font-size:12px;font-weight:800;white-space:nowrap}.delivery-address-head .secondary:active{background:#fff1f3}#addressField{position:relative;z-index:2;margin-top:12px;overflow:visible}#addressField>label{margin-top:0}#addressField:focus-within{z-index:12}.delivery-place-actions{display:block;margin:8px 0 0}.delivery-place-actions p{margin:0;color:var(--coral);font-size:12px;font-weight:700;text-align:left}.delivery-place-actions p button{margin-left:5px;padding:0;color:var(--coral);font-size:12px;font-weight:800;text-decoration:underline}.delivery-place-suggestions{position:absolute;top:calc(100% + 4px);right:0;left:0;z-index:20;display:grid;gap:0;max-height:var(--delivery-place-max-height,260px);margin:0;padding:0;overflow-y:auto;overscroll-behavior:contain;border:1px solid var(--cart-selection-color,var(--content-selection-color,var(--navy)));border-radius:8px;background:var(--cart-selection-color,var(--content-selection-color,var(--navy)));-webkit-overflow-scrolling:touch}.delivery-place-suggestions[hidden]{display:none}.delivery-place-suggestions button{padding:8px 10px;border:0;border-bottom:1px solid #ffffff55;border-radius:0;background:transparent;color:#fff;font-size:13px;text-align:left;line-height:1.35;box-shadow:none}.delivery-place-suggestions button:last-child{border-bottom:0}.delivery-place-suggestions button:active{background:#ffffff24;color:#fff}.delivery-place-suggestions p{margin:0;padding:7px 9px;color:#fff}
@media(max-width:720px){#cart .checkout-page-title,#checkout .checkout-page-title,#settlement .checkout-page-title{padding:20px 0 11px}#cart .checkout-page-title h2,#checkout .checkout-page-title h2,#settlement .checkout-page-title h2{font-size:24px}#cart .cart-line{grid-template-columns:26px 88px minmax(0,1fr);grid-template-rows:auto auto auto;gap:6px 10px;padding:12px 0}#cart .cart-thumb{grid-column:2;grid-row:1/4;width:88px;height:88px;border-radius:9px}#cart .cart-line-main{grid-column:3;grid-row:1/3}#cart .cart-check{grid-column:1;grid-row:1/4}#cart .cart-line-controls{grid-column:3;grid-row:3;justify-content:flex-start;margin-top:1px}#cart .cart-remove{font-size:14px}#cart .cart-product-link{font-size:14px}#cart .cart-line-status{font-size:12px}#cart .cart-line-main small{font-size:12px}#cart .cart-unit-price,#cart .cart-subtotal{font-size:14px}#cart #cartMemberIdentity{font-size:16px}#cart .cart-quantity{height:34px}#cart .cart-quantity button{width:27px;height:32px}#cart .cart-quantity input{width:46px;font-size:16px}.checkout-form .delivery-methods{gap:5px}.checkout-form .delivery-methods label{height:36px;font-size:12px}}
.payment-page-title{padding-bottom:12px!important}.payment-page-title p{margin:4px 0 0;color:var(--muted);font-size:13px}.payment-simulation{width:100%;max-width:520px;padding:24px 22px;border:1px solid var(--line);border-radius:15px;background:#fff;box-shadow:0 8px 22px #2530530d}.payment-demo-tag{display:inline-block;margin:0;padding:3px 8px;border-radius:999px;background:#fff0f1;color:var(--coral);font-size:12px;font-weight:800}.payment-order-no{margin:18px 0 0;color:var(--muted);font-size:13px}.payment-order-no b{color:var(--ink);font-weight:700}.payment-amount-label{margin:20px 0 0;color:var(--muted);font-size:13px}.payment-amount{display:block;margin-top:1px;color:var(--coral);font-size:38px;line-height:1.15}.payment-hint{margin:16px 0 0;color:var(--muted);font-size:12px;line-height:1.6}.payment-simulation .full{margin-top:14px}.payment-simulation .secondary{display:block;width:100%;margin-top:8px}
.settlement-mode{margin:4px 0 2px;padding:13px 14px;border:1px solid #e7e9f0;border-radius:12px;background:#fafbfe}.settlement-mode>div:first-child{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.settlement-mode b{font-size:14px;color:var(--ink)}.settlement-mode small,.settlement-mode p{color:var(--muted);font-size:12px;line-height:1.55}.settlement-mode p{margin:9px 0 0}.settlement-options{display:flex;gap:8px;margin-top:10px}.settlement-options label{height:42px;padding:0 24px 0 10px;font-size:13px}
.store-runtime-notice{margin:0 0 9px;padding:8px 11px;border:1px solid #f0d6a8;border-radius:9px;background:#fff9ec;color:#805611;font-size:13px;font-weight:700}.store-runtime-notice p{margin:0}.store-runtime-notice p+p{margin-top:3px}.checkout-form .delivery-methods label.unavailable{border-color:#e2e4e9;background:#f3f4f6;color:#a2a7b0;box-shadow:none;cursor:not-allowed}.checkout-form .delivery-methods label.delayed{border-color:#e5c37e;background:#fff9eb;color:#855c14}.delivery-availability-notes{display:grid;gap:4px;margin:7px 0 3px}.delivery-availability-notes p{display:flex;align-items:baseline;gap:0;margin:0;padding:5px 8px;border-radius:7px;background:#f6f7f9;color:var(--muted);font-size:12px;line-height:1.45}.delivery-availability-notes p b{min-width:0;flex:0 0 auto;color:var(--ink);font-size:12px}.delivery-availability-notes p.open{display:none}.delivery-availability-notes p.delayed{background:#fff9ec;color:#805611}.delivery-availability-notes p.off{background:#f3f4f6;color:#8a909c}@media(max-width:720px){.delivery-availability-notes p{align-items:baseline;flex-direction:row;gap:0}.delivery-availability-notes p span{min-width:0}}
#checkout [hidden]{display:none!important}
.payment-preview{padding:14px;border:1px solid #e6e8ee;border-radius:12px;background:#fff}.payment-preview-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding-bottom:9px;border-bottom:1px solid #eef0f4}.payment-preview-head b{font-size:16px;color:var(--ink)}.payment-preview-head small{color:var(--muted);font-size:12px;text-align:right}.payment-preview-row,.payment-preview-total{display:flex;align-items:center;justify-content:space-between;gap:12px}.payment-preview-row{padding-top:9px;color:var(--muted);font-size:13px}.payment-preview-row b{color:var(--ink);font-size:14px}.payment-preview-total{margin-top:12px;padding-top:11px;border-top:1px solid #eef0f4;color:var(--ink);font-size:14px;font-weight:800}.payment-preview-total strong{color:var(--coral);font-size:24px;line-height:1}
#checkout input[name="delivery_address"]::placeholder{font-size:14px}


/* source: mall-operating-status.css */
/* 商城接单状态使用固定的业务语义色，不随主题配色改变。 */
#closedMall[data-mall-status="closed"]{border:1px solid #e53e4b75;background:#fdecef}
#closedMall[data-mall-status="closed"] .overline,#closedMall[data-mall-status="closed"] h1{color:#c42b38}

#checkoutAvailabilityHint[data-mall-status]{display:flex;align-items:center;gap:7px;margin:8px 0 0!important;padding:7px 9px;border:1px solid transparent;border-radius:8px;font-weight:700}
#checkoutAvailabilityHint[data-mall-status]::before,.delivery-availability-notes p[data-mall-status] b i{content:"";display:inline-block;width:7px;height:7px;flex:0 0 7px;border-radius:50%;background:currentColor}
#checkoutAvailabilityHint[data-mall-status="paused"]{border-color:#e67e2280;background:#fff1e4;color:#a54b08}
#checkoutAvailabilityHint[data-mall-status="closed"]{border-color:#e53e4b75;background:#fdecef;color:#c42b38}

.checkout-form .delivery-methods label.unavailable[data-mall-status="paused"]{border-color:#e67e2280!important;background:#fff1e4!important;color:#a54b08!important}
.checkout-form .delivery-methods label.unavailable[data-mall-status="closed"]{border-color:#e53e4b75!important;background:#fdecef!important;color:#c42b38!important}
.delivery-availability-notes p[data-mall-status]{gap:7px;border:1px solid transparent}
.delivery-availability-notes p[data-mall-status] b{display:inline-flex;align-items:center;gap:6px;min-width:0;font-weight:800;color:inherit}
.delivery-availability-notes p[data-mall-status="delayed_confirmation"]{border-color:#f4d03f!important;background:#fff9d8!important;color:#735b00!important}
.delivery-availability-notes p[data-mall-status="paused"]{border-color:#e67e2280!important;background:#fff1e4!important;color:#a54b08!important}
.delivery-availability-notes p[data-mall-status="closed"]{border-color:#e53e4b75!important;background:#fdecef!important;color:#c42b38!important}


/* source: checkout-order-v2.css */
.settlement-flow-summaries .flow-summary{white-space:pre-line}

#customerOrders{padding:0;overflow:hidden}
#customerOrders .order-section{margin:0}
#customerOrders .order-section+.order-section{margin:0;padding:0;border-top:8px solid #f3f5fa}
#customerOrders .order-section h3{display:flex;align-items:center;gap:7px;min-height:42px;margin:0;padding:0 14px;border-bottom:1px solid #e7eaf0;background:#f8f9fc;color:var(--ink)}
#customerOrders .order-section-items{padding:10px 12px 12px}
#customerOrders .order-section-items .customer-order{padding:12px!important;border:1px solid #e8ebf1!important;border-radius:10px;background:#fff}
#customerOrders .order-section-items .customer-order+.customer-order{margin-top:8px}
#customerOrders .order-section-items .customer-order:last-child{border:1px solid #e8ebf1!important}
#customerOrders .order-section-items .empty{margin:4px 0;padding:6px 2px}

/* More legible client order hierarchy. */
#customerOrders .order-section h3{min-height:44px;padding:0 15px;background:#f5f7fb;font-size:16px;font-weight:850}
#customerOrders .order-section-items{padding:12px}
#customerOrders .order-section-items .customer-order{position:relative;padding:13px 14px 12px!important;border:1px solid #e1e6ef!important;border-left:4px solid #92a0b7!important;border-radius:12px;background:#fff;box-shadow:0 3px 12px #28365a0a}
#customerOrders .order-section-items .customer-order+.customer-order{margin-top:12px}
#customerOrders .order-section-items .customer-order:last-child{border:1px solid #e1e6ef!important;border-left:4px solid #92a0b7!important}
#customerOrders .order-section-items .customer-order.tone-payment{border-left-color:#ff5966!important;background:#fffafb}
#customerOrders .order-section-items .customer-order.tone-attention{border-left-color:#ef9c36!important}
#customerOrders .order-section-items .customer-order.tone-processing{border-left-color:#677ddd!important}
#customerOrders .order-section-items .customer-order.tone-delivery{border-left-color:#8c6dde!important}
#customerOrders .order-section-items .customer-order.tone-completed{border-left-color:#54a87d!important}
#customerOrders .order-section-items .customer-order.tone-cancelled{border-left-color:#a4abb8!important;background:#fafbfc}
#customerOrders .customer-order-head{min-height:25px;display:flex;align-items:center;justify-content:space-between;gap:10px}
#customerOrders .customer-order-head strong{display:flex;align-items:baseline;min-width:0;color:#1e2b46;font-size:16px;line-height:1.25;letter-spacing:.01em}
#customerOrders .customer-order-head strong em{margin-right:7px;color:#7b8799;font-size:12px;font-style:normal;font-weight:700;letter-spacing:0;white-space:nowrap}
#customerOrders .customer-order-head strong span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#customerOrders .customer-order-head .status{flex:0 0 auto;padding:4px 8px;border-radius:999px;background:#eef1f6;color:#657187;font-size:12px;line-height:1;font-weight:850;white-space:nowrap}
#customerOrders .customer-order-head .status-awaiting_payment{background:#fff0f1;color:#ec5361}
#customerOrders .customer-order-head .status-paid_pending_acceptance,#customerOrders .customer-order-head .status-credit_pending_acceptance,#customerOrders .customer-order-head .status-paid_pending_reopen_confirmation,#customerOrders .customer-order-head .status-credit_pending_reopen_confirmation{background:#fff4e4;color:#bd7618}
#customerOrders .customer-order-head .status-accepted_pending_qianfan,#customerOrders .customer-order-head .status-imported_pending_settlement{background:#edf1ff;color:#5269c6}
#customerOrders .customer-order-head .status-pickup_ready,#customerOrders .customer-order-head .status-runner_waiting_dispatch,#customerOrders .customer-order-head .status-runner_delivering,#customerOrders .customer-order-head .status-express_waiting_shipment,#customerOrders .customer-order-head .status-express_shipped{background:#f1ecff;color:#785ccc}
#customerOrders .customer-order-head .status-completed{background:#e9f7ef;color:#36805b}
#customerOrders .customer-order-head .status-cancelled,#customerOrders .customer-order-head .status-cancelled_credit,#customerOrders .customer-order-head .status-cancelled_refund_pending,#customerOrders .customer-order-head .status-cancelled_refunded,#customerOrders .customer-order-head .status-expired{background:#eef0f3;color:#7b8492}
#customerOrders .customer-order .order-progress{margin:9px 0 8px;padding:5px 0;border-top:1px solid #edf0f4;border-bottom:1px solid #edf0f4}
#customerOrders .customer-order .order-progress span{font-size:12px;font-weight:700}
#customerOrders .customer-order-delivery{display:flex;align-items:baseline;gap:9px;margin:9px 0 7px;color:#69758a;font-size:13px;line-height:1.4}
#customerOrders .customer-order-delivery b{flex:0 0 auto;color:#283652;font-size:14px;font-weight:850}
#customerOrders .customer-order-delivery span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#customerOrders .customer-order-footer{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-top:5px}
#customerOrders .customer-order .order-items{min-width:0;margin:0;color:#7a8496;font-size:12px;line-height:1.55}
#customerOrders .customer-order .order-items span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#customerOrders .customer-order-total{flex:0 0 auto;color:#ef5562;font-size:19px;line-height:1;font-weight:900;white-space:nowrap}
#customerOrders .customer-order-total i{margin-right:5px;color:#7a8496;font-size:12px;font-style:normal;font-weight:700;vertical-align:2px}
#customerOrders .customer-pending-actions{margin-top:12px;padding-top:10px;border-top:1px dashed #e7eaf0}
@media(max-width:480px){
  #customerOrders .order-section h3{min-height:42px;font-size:16px}
  #customerOrders .order-section-items{padding:10px}
  #customerOrders .order-section-items .customer-order{padding:12px!important;border-radius:10px}
  #customerOrders .customer-order-head strong{font-size:16px}
  #customerOrders .customer-order-delivery{gap:7px;font-size:12px}
  #customerOrders .customer-order-delivery b{font-size:13px}
  #customerOrders .customer-order-total{font-size:18px}
}

/* Client order detail layout: delivery facts first, then a three-column item list. */
#customerOrders .customer-order-head strong .order-number-label{margin-right:7px;color:inherit;font-size:inherit;font-style:normal;font-weight:inherit;letter-spacing:0;white-space:nowrap}
#customerOrders .customer-order-head strong em{display:none}
#customerOrders .customer-order .customer-order-delivery{display:block;margin:9px 0 8px;padding:7px 0;border-bottom:1px solid #edf0f4;color:#69758a;font-size:13px;line-height:1.55}
#customerOrders .customer-order .customer-order-delivery p{display:flex;align-items:baseline;gap:0;margin:0;min-width:0}
#customerOrders .customer-order .customer-order-delivery p+p{margin-top:2px}
#customerOrders .customer-order .customer-order-delivery b{flex:0 0 auto;color:#526076;font-size:12px;font-weight:800}
#customerOrders .customer-order .customer-order-delivery p>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#customerOrders .customer-order-item-list{display:block!important;margin:0;padding:1px 0 3px}
#customerOrders .customer-order-item{display:grid!important;grid-template-columns:minmax(0,1fr) 108px 76px;align-items:baseline;gap:8px;min-height:22px;color:#647086;font-size:12px;line-height:1.45}
#customerOrders .customer-order-item+.customer-order-item{margin-top:3px}
#customerOrders .customer-order-item-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#536077}
#customerOrders .customer-order-item-price{color:#778196;text-align:right;white-space:nowrap}
#customerOrders .customer-order-item-amount{color:#39455b;text-align:right;font-weight:800;white-space:nowrap}
#customerOrders .customer-order-total{display:flex!important;align-items:baseline!important;justify-content:flex-end!important;gap:7px;margin-top:8px;padding-top:8px;border-top:1px solid #e9edf3;color:#ef5562;font-size:20px;line-height:1;font-weight:900;white-space:nowrap}
#customerOrders .customer-order-total i{margin:0;color:#6f7b8f;font-size:12px;font-style:normal;font-weight:800;vertical-align:0}
@media(max-width:480px){
  #customerOrders .customer-order .customer-order-delivery{font-size:12px}
  #customerOrders .customer-order-item{grid-template-columns:minmax(0,1fr) 96px 66px;gap:6px;font-size:12px}
  #customerOrders .customer-order-total{font-size:19px}
}

/* Final customer-facing emphasis: a quiet stacked-paper depth to the right and below. */
#customerOrders .order-section-items{padding:13px 18px 17px 13px}
#customerOrders .order-section-items .customer-order{margin-right:5px;margin-bottom:7px!important;border-color:#dce3ee!important;box-shadow:5px 6px 0 #e2e7f0,0 8px 18px #27365a10}
#customerOrders .order-section-items .customer-order+.customer-order{margin-top:13px}
#customerOrders .customer-order-head{padding-bottom:8px;border-bottom:1px solid #e8edf4}
#customerOrders .customer-order-head strong{font-size:17px;font-weight:900}
#customerOrders .customer-order-head strong .order-number-label{color:inherit;font-size:inherit;font-weight:inherit}
#customerOrders .customer-order-head .status{padding:5px 9px;font-size:12px;box-shadow:0 1px 2px #313d5614}
#customerOrders .customer-order .order-progress{margin:8px 0;padding:6px 0;border-top:0;background:#fafbfd}
#customerOrders .customer-order .order-progress span.current{font-weight:900}
#customerOrders .customer-order .customer-order-delivery{margin:8px 0;padding:8px 9px;border:0;border-radius:7px;background:#f7f9fc}
#customerOrders .customer-order .customer-order-delivery p:first-child b{color:#293955;font-size:13px}
#customerOrders .customer-order .customer-order-delivery p:not(:first-child){color:#667389}
#customerOrders .customer-order-item-list{padding:3px 1px 4px}
#customerOrders .customer-order-item{min-height:24px;font-size:12px}
#customerOrders .customer-order-item-name{color:#35425a;font-weight:700}
#customerOrders .customer-order-item-price{color:#69768c}
#customerOrders .customer-order-item-amount{color:#293650;font-size:13px;font-weight:900}
#customerOrders .customer-order-total{margin-top:9px;padding:10px 10px 9px;border:0;border-radius:8px;background:#fff2f3;color:#e94756;font-size:21px}
#customerOrders .customer-order-total i{color:#af5660;font-size:12px}
@media(max-width:480px){
  #customerOrders .order-section-items{padding:11px 16px 15px 10px}
  #customerOrders .order-section-items .customer-order{margin-right:4px;margin-bottom:5px!important;box-shadow:4px 5px 0 #e2e7f0,0 6px 15px #27365a10}
  #customerOrders .customer-order-head strong{font-size:16px}
  #customerOrders .customer-order .customer-order-delivery{padding:7px 8px}
  #customerOrders .customer-order-total{padding:9px;font-size:20px}
}


/* source: storefront-checkout-shell.css */
/* 前台结算链路专用壳层：商品明细、送货方式、结算付款共用，禁止影响订单和后台。 */
#cart,#checkout,#settlement{width:100%;max-width:100%;min-width:0;overflow-x:clip}
#cart .checkout-layout,#checkout .checkout-form,#settlement .checkout-form,#settlement #settlementOrderControls{width:100%;max-width:100%;min-width:0}
#checkout .checkout-form,#settlement .checkout-form{padding-bottom:max(20px,env(safe-area-inset-bottom));scroll-padding-bottom:calc(76px + env(safe-area-inset-bottom))}
#cart .cart-line,#checkout .delivery-methods,#settlement .settlement-options{min-width:0}
#checkout .checkout-form label,#settlement .checkout-form label{min-width:0}
#checkout .checkout-form input:not([type=radio]):not([type=hidden]),#checkout .checkout-form textarea,#settlement .checkout-form input:not([type=radio]):not([type=hidden]),#settlement .checkout-form textarea{box-sizing:border-box;max-width:100%;min-width:0}
#cart #cartNext,#checkout #deliveryNext,#settlement #submitOrder{min-height:44px;touch-action:manipulation}
#checkout .delivery-method-hint,#checkout .delivery-availability-notes{max-width:100%;min-width:0}
#checkout .delivery-availability-notes p{overflow-wrap:anywhere}
#checkout .delivery-place-suggestions{max-width:100%;overflow-x:clip}
@media(max-width:720px){
  #cart .checkout-layout,#checkout .checkout-form,#settlement .checkout-form{padding-right:0;padding-left:0}
  #checkout .checkout-form,#settlement .checkout-form{padding-bottom:max(24px,env(safe-area-inset-bottom))}
  #checkout .delivery-methods,#settlement .settlement-options{width:100%;max-width:100%}
}


/* source: customer-orders-page-v4.css */
/* Single-level order page: the category bar replaces nested section cards. */
#customerOrders.customer-orders-shell{padding:0;border:0;background:transparent;box-shadow:none;overflow:visible}
#customerOrders .customer-order-tabs{display:flex;align-items:stretch;gap:0;margin:0 0 12px;border-bottom:1px solid #dfe5ef;background:transparent}
#customerOrders .customer-order-tabs button{position:relative;min-width:92px;padding:9px 14px;border:0;border-radius:0;background:transparent;color:#7a8799;font-size:16px;font-weight:800}
#customerOrders .customer-order-tabs button.active{color:var(--ink)}
#customerOrders .customer-order-tabs button.active:after{position:absolute;right:14px;bottom:-1px;left:14px;height:3px;border-radius:3px 3px 0 0;background:var(--coral);content:""}
#customerOrders .customer-order-tabs .customer-order-find-toggle{min-width:auto;margin-left:auto;padding-right:0;color:#68768d;font-size:13px}
#customerOrders .customer-order-tabs .customer-order-find-toggle:before{content:"⌕";margin-right:4px;font-size:16px;vertical-align:-1px}
#customerOrders .customer-order-find{display:flex;gap:7px;margin:-2px 0 12px;padding:8px;border-radius:9px;background:#f5f7fb}
#customerOrders .customer-order-find[hidden]{display:none!important}
#customerOrders .customer-order-find input{min-width:0;flex:1;height:34px;border:1px solid #dce3ee;border-radius:7px;padding:0 9px;background:#fff;color:var(--ink);font:13px "Microsoft YaHei",sans-serif;outline:0}
#customerOrders .customer-order-find button{height:34px;padding:0 10px;border:0;border-radius:7px;background:var(--coral);color:#fff;font:13px "Microsoft YaHei",sans-serif;font-weight:800}
#customerOrders .customer-order-find .secondary{border:1px solid #dce3ee;background:#fff;color:#69768d}
#customerOrders .customer-order-list{display:grid;gap:14px}
#customerOrders .customer-order-list .customer-order{position:relative;margin:0 5px 7px 0!important;padding:13px 14px 12px!important;border:1px solid #dce3ee!important;border-left:4px solid #92a0b7!important;border-radius:12px;background:#fff;box-shadow:5px 6px 0 #e2e7f0,0 8px 18px #27365a10}
#customerOrders .customer-order-list .customer-order.tone-payment{border-left-color:#ff5966!important;background:#fffafb}
#customerOrders .customer-order-list .customer-order.tone-attention{border-left-color:#ef9c36!important}
#customerOrders .customer-order-list .customer-order.tone-processing{border-left-color:#677ddd!important}
#customerOrders .customer-order-list .customer-order.tone-delivery{border-left-color:#8c6dde!important}
#customerOrders .customer-order-list .customer-order.tone-completed{border-left-color:#54a87d!important}
#customerOrders .customer-order-list .customer-order.tone-cancelled{border-left-color:#a4abb8!important;background:#fafbfc}
#customerOrders .history-order-card{margin-right:3px;border:1px solid #e0e5ed;border-radius:10px;background:#fff;box-shadow:3px 4px 0 #e9edf4}
#customerOrders .history-order-summary{display:grid;width:100%;grid-template-columns:minmax(0,1fr) auto;gap:4px 10px;padding:11px 12px;border:0;border-radius:10px;background:transparent;color:var(--ink);text-align:left;font-family:"Microsoft YaHei",sans-serif;cursor:pointer}
#customerOrders .history-order-main{display:flex;align-items:center;min-width:0;gap:7px}
#customerOrders .history-order-main>b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:900}
#customerOrders .history-order-main .status{padding:3px 6px;font-size:10px}
#customerOrders .history-order-meta{grid-column:1/-1;grid-row:2;min-width:0;overflow:visible;color:#526076;font-size:12px;font-weight:400;line-height:1.45;text-overflow:clip;white-space:normal}
#customerOrders .history-order-summary>strong{grid-column:2;grid-row:1;align-self:center;color:#e85562;font-size:16px;white-space:nowrap}
#customerOrders .history-order-summary>i{display:none}
#customerOrders .history-order-summary[aria-expanded="true"]{border-bottom:1px solid #e8edf4;border-radius:10px 10px 0 0;background:#fafbfd}
#customerOrders .history-order-detail{padding:10px 12px 12px}
#customerOrders .history-order-detail[hidden]{display:none!important}
#customerOrders .history-order-delivery{margin:0 0 8px;padding:7px 8px;border-radius:7px;background:#f7f9fc;color:#667389;font-size:12px;line-height:1.55}
#customerOrders .history-order-delivery p{margin:0}
#customerOrders .history-order-delivery p+p{margin-top:2px}
#customerOrders .history-order-delivery b{color:#293955;font-weight:850}
#customerOrders .history-order-detail .customer-order-item-list{display:block!important;margin:0;padding:1px 0 3px}
#customerOrders .history-order-detail .customer-order-item{display:grid!important;grid-template-columns:minmax(0,1fr) max-content;align-items:baseline;gap:8px;min-height:22px;color:#647086;font-size:12px;line-height:1.45}
#customerOrders .history-order-detail .customer-order-item-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#536077;font-weight:700}
#customerOrders .history-order-detail .customer-order-item-price{color:#778196;text-align:right;white-space:nowrap}
#customerOrders .history-order-detail .customer-order-total{display:flex!important;align-items:baseline!important;justify-content:flex-end!important;gap:7px;margin-top:7px;padding:8px;border:0;border-radius:7px;background:#fff2f3;color:#e94756;font-size:19px;font-weight:900}
#customerOrders .history-order-detail .customer-order-total i{color:inherit;font-size:inherit;font-style:normal;font-weight:inherit}
#customerOrders .customer-order-load-more{display:block;width:100%;margin:2px 0 0;padding:10px;border:1px solid #dce3ee;border-radius:9px;background:#fff;color:#536178;font:13px "Microsoft YaHei",sans-serif;font-weight:800}
#customerOrders .customer-order-list .empty{margin:0;padding:30px 12px;text-align:center;color:#8792a3}
@media(max-width:480px){
  #customerOrders .customer-order-tabs{margin-bottom:10px}
  #customerOrders .customer-order-tabs button{min-width:78px;padding:8px 10px;font-size:14px}
  #customerOrders .customer-order-tabs button.active:after{right:10px;left:10px}
  #customerOrders .customer-order-tabs .customer-order-find-toggle{font-size:12px}
  #customerOrders .customer-order-list{gap:12px}
  #customerOrders .customer-order-list .customer-order{margin-right:4px;margin-bottom:5px!important;padding:12px!important;box-shadow:4px 5px 0 #e2e7f0,0 6px 15px #27365a10}
  #customerOrders .history-order-summary{padding:10px}
  #customerOrders .history-order-main>b{font-size:13px}
  #customerOrders .history-order-meta{font-size:12px}
  #customerOrders .history-order-summary>strong{font-size:16px}
}

/* Full-width order reading area, using the current top-bar colour as its quiet base. */
#myOrders{--order-theme:var(--content-selection-color,var(--navy));--order-action:var(--theme-action-color,var(--coral));--order-soft:color-mix(in srgb,var(--order-theme) 5%,#fff);--order-line:color-mix(in srgb,var(--order-theme) 15%,#fff);margin-inline:-14px}
#myOrders .page-intro{max-width:none;padding:16px 14px 9px}
#myOrders .page-intro h2{margin:0;color:var(--order-theme);font-size:25px;line-height:1.18;letter-spacing:.01em}
#myOrders #customerOrders{padding-inline:14px}
#customerOrders .customer-order-tabs{margin:0 0 10px;border-bottom-color:var(--order-line)}
#customerOrders .customer-order-tabs button{color:color-mix(in srgb,var(--order-theme) 56%,#fff);font-size:18px;font-weight:600}
#customerOrders .customer-order-tabs button.active{color:var(--order-theme);font-weight:800}
#customerOrders .customer-order-tabs button.active:after{height:4px;border-radius:3px;background:var(--content-selection-underline-color,#ff5966)}
#customerOrders .customer-order-tabs .customer-order-find-toggle{color:color-mix(in srgb,var(--order-theme) 72%,#fff)}
#customerOrders .customer-order-find{border:1px solid var(--order-line);background:var(--order-soft)}
#customerOrders .customer-order-find input{border-color:var(--order-line)}
#customerOrders .customer-order-find button{background:var(--order-action)}
#customerOrders .customer-order-find .secondary{border-color:var(--order-line);color:var(--order-theme)}
#customerOrders .customer-order-list{gap:15px}
#customerOrders .customer-order-list .customer-order{margin:0 6px 8px 0!important;padding:14px 15px 13px!important;border:1px solid var(--order-line)!important;border-left:1px solid var(--order-line)!important;background:#fff;box-shadow:6px 7px 0 color-mix(in srgb,var(--order-theme) 10%,#fff),0 10px 20px color-mix(in srgb,var(--order-theme) 10%,transparent)}
#customerOrders .customer-order-list .customer-order.tone-payment,#customerOrders .customer-order-list .customer-order.tone-attention,#customerOrders .customer-order-list .customer-order.tone-processing,#customerOrders .customer-order-list .customer-order.tone-delivery,#customerOrders .customer-order-list .customer-order.tone-completed,#customerOrders .customer-order-list .customer-order.tone-cancelled{border-left:1px solid var(--order-line)!important;background:#fff}
#customerOrders .customer-order-head{padding-bottom:9px;border-bottom-color:var(--order-line)}
#customerOrders .customer-order-head strong{color:var(--order-theme);font-size:18px;letter-spacing:.015em}
#customerOrders .customer-order-head .status{box-shadow:none;font-size:12px;font-weight:900}
#customerOrders .customer-order .order-progress{margin:8px 0;background:var(--order-soft)}
#customerOrders .customer-order .order-progress span.done{color:color-mix(in srgb,var(--order-theme) 76%,#fff)}
#customerOrders .customer-order .order-progress span.current{color:var(--order-action)}
#customerOrders .customer-order .customer-order-delivery{margin:9px 0;padding:9px 10px;border:1px solid color-mix(in srgb,var(--order-theme) 8%,#fff);background:var(--order-soft)}
#customerOrders .customer-order .customer-order-delivery p:first-child b{color:var(--order-theme);font-size:14px}
#customerOrders .customer-order-item-list{padding:4px 1px 5px}
#customerOrders .customer-order-item{min-height:25px}
#customerOrders .customer-order-item-name{color:#34425a;font-weight:800}
#customerOrders .customer-order-item-amount{color:var(--order-theme);font-size:13px}
#customerOrders .customer-order-total{margin-top:10px;padding:10px 11px;border:1px solid color-mix(in srgb,var(--order-action) 14%,#fff);background:color-mix(in srgb,var(--order-action) 8%,#fff);color:var(--order-action);font-size:22px}
#customerOrders .customer-order-total i{color:color-mix(in srgb,var(--order-action) 70%,#6e7788)}
#customerOrders .history-order-card{margin-right:4px;border-color:var(--order-line);box-shadow:4px 5px 0 color-mix(in srgb,var(--order-theme) 8%,#fff)}
#customerOrders .history-order-delete-action{display:none}
#customerOrders .history-order-summary{padding:12px 13px}
#customerOrders .history-order-main>b{color:var(--order-theme);font-size:16px}
#customerOrders .history-order-summary>strong{color:var(--order-action);font-size:17px}
#customerOrders .history-order-summary[aria-expanded="true"]{border-bottom-color:var(--order-line);background:var(--order-soft)}
#customerOrders .history-order-detail{padding:11px 13px 13px}
#customerOrders .history-order-delivery{border:1px solid color-mix(in srgb,var(--order-theme) 8%,#fff);background:var(--order-soft)}
#customerOrders .history-order-delivery b{color:var(--order-theme)}
#customerOrders .history-order-detail .customer-order-item-amount{color:var(--order-theme)}
#customerOrders .history-order-detail .customer-order-total{border:1px solid color-mix(in srgb,var(--order-action) 14%,#fff);background:color-mix(in srgb,var(--order-action) 8%,#fff);color:var(--order-action)}
#customerOrders .customer-order-load-more{border-color:var(--order-line);color:var(--order-theme);box-shadow:3px 4px 0 color-mix(in srgb,var(--order-theme) 7%,#fff)}
@media(max-width:720px){
  #myOrders{margin-inline:-5px}
  #myOrders .page-intro{padding:10px 5px 7px}
  #myOrders .page-intro h2{font-size:23px}
  #myOrders #customerOrders{padding-inline:5px}
  #customerOrders .customer-order-list{gap:13px}
  #customerOrders .customer-order-list .customer-order{margin:0 5px 6px 0!important;padding:12px 12px 11px!important;box-shadow:5px 6px 0 color-mix(in srgb,var(--order-theme) 10%,#fff),0 8px 17px color-mix(in srgb,var(--order-theme) 10%,transparent)}
  #customerOrders .customer-order-head strong{font-size:17px}
  #customerOrders .customer-order .customer-order-delivery{padding:8px}
  #customerOrders .customer-order-total{font-size:21px}
  #customerOrders .history-order-summary{padding:11px}
  #customerOrders .history-order-card{position:relative;overflow:hidden}
  #customerOrders .history-order-swipe-content{position:relative;z-index:1;background:#fff;transition:transform .2s ease;will-change:transform;touch-action:pan-y}
  #customerOrders .history-order-card.swiped .history-order-swipe-content{transform:translateX(-76px)}
  #customerOrders .history-order-delete-action{position:absolute;top:0;right:0;bottom:0;width:76px;display:flex;align-items:stretch;background:var(--order-total-red)}
  #customerOrders .history-order-delete-action button{width:100%;border:0;background:transparent;color:#fff;font:800 13px "Microsoft YaHei",sans-serif}
}

/* Keep ordinary phones at 18px; only genuinely narrow screens reduce it. */
@media(max-width:480px){
  #customerOrders .customer-order-tabs button{font-size:16px;font-weight:600}
}

/* Order content keeps stable business colours when the top-bar theme changes. */
#myOrders{
  --order-heading-color:#242b3c;
  --order-label-color:#34425a;
  --order-subtotal-color:#39455b;
}
#myOrders .page-intro h2,
#customerOrders .customer-order-head strong,
#customerOrders .history-order-main>b{
  color:var(--order-heading-color);
}
#customerOrders .customer-order .customer-order-delivery p:first-child b,
#customerOrders .history-order-delivery b{
  color:var(--order-label-color);
}
#customerOrders .customer-order-item-amount,
#customerOrders .history-order-detail .customer-order-item-amount{
  color:var(--order-subtotal-color);
}

/* Reading copy stays neutral; browsing-selection colour remains only on the
   card's quiet borders and background tints. */
#customerOrders .customer-order-tabs button,
#customerOrders .customer-order-tabs button.active,
#customerOrders .customer-order-tabs .customer-order-find-toggle,
#customerOrders .customer-order-find .secondary,
#customerOrders .customer-order .order-progress span.done,
#customerOrders .customer-order .customer-order-delivery p:first-child span,
#customerOrders .customer-order-load-more{
  color:var(--order-label-color);
}

/* Active orders are few: favour large, plain text over multiple coloured blocks. */
#myOrders{--order-total-red:#e94656}
#customerOrders .customer-order-tabs .customer-order-find-toggle{display:none!important}
#customerOrders .customer-order .order-progress{background:transparent}
#customerOrders .customer-order .customer-order-delivery{padding:5px 0;border:0;border-radius:0;background:transparent}
#customerOrders .customer-order .customer-order-delivery p:first-child b{font-size:14px}
#customerOrders .customer-order-total{padding:9px 0 0;border:0;border-top:1px solid var(--order-line);border-radius:0;background:transparent;color:var(--order-total-red)}
#customerOrders .customer-order-total i{color:#8a7380}
#customerOrders .history-order-summary>strong{color:var(--order-total-red)}
#customerOrders .history-order-detail .customer-order-total{justify-content:flex-end!important;margin-top:7px;padding:0;border:0;border-radius:0;background:transparent;color:#647086;font-size:12px;font-weight:400}
#customerOrders .history-order-detail .customer-order-total i{color:inherit;font-size:inherit;font-weight:inherit}
#customerOrders .history-order-delivery{padding:5px 0;border:0;border-radius:0;background:transparent}
#customerOrders .active-list .customer-order-head strong{font-size:20px}
#customerOrders .active-list .customer-order-head .status{padding:6px 10px;font-size:13px}
#customerOrders .active-list .order-progress{padding:7px 0}
#customerOrders .active-list .order-progress span{font-size:12px}
#customerOrders .active-list .customer-order .customer-order-delivery{margin:10px 0 8px;font-size:14px;line-height:1.65}
#customerOrders .active-list .customer-order .customer-order-delivery p:first-child b{font-size:16px}
#customerOrders .active-list .customer-order-item{min-height:27px;font-size:13px}
#customerOrders .active-list .customer-order-item-amount{font-size:14px}
#customerOrders .active-list .customer-order-total{margin-top:10px;font-size:24px}
#customerOrders .customer-order-tabs button,
#customerOrders .customer-order-tabs button.active{color:#242b3c}
@media(max-width:720px){
  #customerOrders .active-list .customer-order-head strong{font-size:19px}
  #customerOrders .active-list .customer-order-head .status{padding:5px 8px;font-size:12px}
  #customerOrders .active-list .customer-order .customer-order-delivery{font-size:13px}
  #customerOrders .active-list .customer-order .customer-order-delivery p:first-child b{font-size:14px}
  #customerOrders .active-list .customer-order-item{min-height:26px;font-size:12px}
  #customerOrders .active-list .customer-order-total{font-size:23px}
}


/* source: customer-orders-cancellation-v1.css */
/* Final action row: total at left, customer controls at right. */
#customerOrders .customer-order-control-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px;padding-top:9px;border-top:1px solid var(--order-line)}
#customerOrders .customer-order-control-row .customer-order-total{display:flex!important;align-items:center!important;gap:7px;margin:0;padding:0;border:0;background:transparent;color:var(--ink);font-size:12px;font-weight:800;line-height:1;white-space:nowrap}
#customerOrders .customer-order-control-row .customer-order-total i{color:inherit;font-size:inherit;font-style:normal;font-weight:inherit}
#customerOrders .customer-order-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}
#customerOrders .customer-order-actions button,#customerOrders .customer-order-contact,#customerOrders .customer-order-cancellation-state{height:31px;padding:0 10px;border:1px solid var(--order-line);border-radius:7px;background:#fff;color:var(--order-theme);font:700 13px "Microsoft YaHei",sans-serif;line-height:29px;text-decoration:none;white-space:nowrap}
#customerOrders .customer-order-actions .customer-order-pay{border-color:var(--order-action);background:var(--order-action);color:#fff}
#customerOrders .customer-order-actions .customer-order-cancel{border-color:color-mix(in srgb,var(--order-total-red) 48%,#fff);color:var(--order-total-red)}
#customerOrders .customer-order-actions .customer-order-cancel:disabled,#customerOrders .customer-order-actions .disabled{border-color:#e5e9f0;background:#f4f6f9;color:#a6afbd;cursor:not-allowed}
#customerOrders .customer-order-cancellation-state{border-color:color-mix(in srgb,var(--order-action) 36%,#fff);background:color-mix(in srgb,var(--order-action) 8%,#fff);color:var(--order-action)}
#customerOrders .cancellation-reviewing{opacity:.9}
@media(max-width:720px){
  #customerOrders .customer-order-control-row{gap:8px;align-items:center}
  #customerOrders .customer-order-control-row .customer-order-total{font-size:12px}
  #customerOrders .customer-order-actions{gap:5px}
  #customerOrders .customer-order-actions button,#customerOrders .customer-order-contact,#customerOrders .customer-order-cancellation-state{height:29px;padding:0 8px;font-size:12px;line-height:27px}
}

/* Emphasise only the order stage that is currently in progress. */
#customerOrders .customer-order .order-progress span.current,
#customerOrders .active-list .order-progress span.current{
  font-size:16px;
  line-height:1.35;
}
@media(max-width:720px){
  #customerOrders .customer-order .order-progress span.current,
  #customerOrders .active-list .order-progress span.current{
    font-size:16px;
  }
}

/* Client orders: compact reference number, clearer progress, and a clean delivery/items break. */
#customerOrders .customer-order-head strong,
#customerOrders .active-list .customer-order-head strong{font-size:16px}
#customerOrders .customer-order-head strong .order-number-label{margin-right:0}
#customerOrders .customer-order-delivery .customer-order-delivery-method{display:flex;align-items:baseline;gap:0}
#customerOrders .customer-order-delivery .customer-order-delivery-method time{margin-left:auto;color:#647086;font-size:12px;font-style:normal;font-weight:400;line-height:1.35;white-space:nowrap}
#customerOrders .customer-order .order-progress span,
#customerOrders .active-list .order-progress span{font-size:14px;line-height:1.5}
#customerOrders .customer-order .customer-order-delivery{margin-top:6px;margin-bottom:9px;padding-bottom:9px;border-bottom:1px solid var(--order-line)}
#customerOrders .active-list .customer-order .customer-order-delivery{margin-top:6px}
#customerOrders .customer-order .customer-order-delivery .customer-order-address b{color:inherit;font-size:inherit;font-weight:inherit}
#customerOrders .customer-order .customer-order-delivery p:first-child span{color:var(--order-theme);font-size:14px;font-weight:850}
#customerOrders .active-list .customer-order .customer-order-delivery p:first-child span{font-size:16px}
#customerOrders .customer-order-total .order-total-value{display:inline-flex;align-items:center;line-height:1}
#customerOrders .customer-order-total .order-total-currency{margin:0 1px 0 0;color:inherit;font-size:1em;font-style:normal;font-weight:inherit;vertical-align:0}
#customerOrders .customer-order-contact,#customerOrders .customer-order-actions .customer-order-cancel:not(:disabled){border-color:var(--order-line);background:#fff;color:var(--order-label-color)}
#customerOrders .customer-order-item{grid-template-columns:minmax(0,1fr) max-content;gap:8px}
#customerOrders .active-list .customer-order-item-price{color:#526076;font-weight:400}
#customerOrders .active-list .customer-order-delivery p:not(:first-child),
#customerOrders .active-list .customer-order-delivery p:not(:first-child) b,
#customerOrders .active-list .customer-order-delivery p:not(:first-child) span{color:#526076;font-weight:400}
#customerOrders .customer-order .order-progress{margin:0;padding:10px 0;border-bottom:1px solid var(--order-line)}
#customerOrders .customer-order-item-list{margin:0;padding:6px 1px}
#customerOrders .customer-order-control-row{margin-top:0}
@media(max-width:720px){
  #customerOrders .customer-order-head strong,
  #customerOrders .active-list .customer-order-head strong{font-size:16px}
  #customerOrders .customer-order .order-progress span,
  #customerOrders .active-list .order-progress span{font-size:13px}
  #customerOrders .active-list .customer-order .customer-order-delivery p:first-child span{font-size:14px}
  #customerOrders .customer-order-item{grid-template-columns:minmax(0,1fr) max-content;gap:7px}
  #customerOrders .customer-order .order-progress{padding:9px 0}
  #customerOrders .customer-order-item-list{padding:6px 1px}
}


/* source: storefront-orders-shell.css */
/* 前台订单专用壳层：只控制订单页可用宽度和阅读区，不改变订单状态、金额或操作。 */
#myOrders,#myOrders #customerOrders,#myOrders .customer-order-list,#myOrders .history-order-list{width:100%;max-width:100%;min-width:0;overflow-x:clip}
#myOrders .page-intro,#myOrders .customer-order-tabs,#myOrders .customer-order-find,#myOrders .customer-order,#myOrders .history-order-card{max-width:100%;min-width:0}
#myOrders .customer-order-head,#myOrders .customer-order-delivery,#myOrders .customer-order-item,#myOrders .history-order-summary,#myOrders .history-order-delivery{min-width:0}
#myOrders .customer-order-delivery p,#myOrders .history-order-delivery p{overflow-wrap:anywhere}
#myOrders .customer-order-item-name,#myOrders .history-order-main,#myOrders .history-order-meta{min-width:0}
#myOrders .customer-order-total,#myOrders .history-order-summary>strong{white-space:nowrap}
@media(max-width:720px){
  #myOrders{overflow-x:clip}
  #myOrders .page-intro{max-width:100%}
  #myOrders .customer-order-tabs{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}
  #myOrders .customer-order-find{max-width:100%}
}


/* ===== member-and-consultation ===== */

/* source: consultation.css */
.consultation-list{display:grid;gap:12px}.consultation-card{padding:14px;border:1px solid var(--line);border-radius:12px;background:#fff}.consultation-card+.consultation-card{margin-top:0}.consultation-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.consultation-product-summary{display:flex;align-items:center;gap:10px;min-width:0}.consultation-product-summary img,.consultation-product-summary .no-photo{width:44px;height:44px;flex:0 0 auto;border-radius:8px;object-fit:cover;background:#edf0f4}.consultation-product-summary strong,.consultation-product-summary span{display:block}.consultation-product-summary strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.consultation-product-summary span{margin-top:2px;color:var(--muted);font-size:12px}.consultation-status{padding:3px 8px;border-radius:999px;background:#fff4e7;color:#a65d00;font-size:12px;white-space:nowrap}.consultation-status.answered{background:#eef6f2;color:#177957}.consultation-status.resolved{background:#f0f1f4;color:#6e7480}.consultation-messages{display:grid;gap:8px;margin-top:13px}.consultation-message{max-width:88%;padding:8px 10px;border-radius:10px;background:#f3f5f8;color:#465064;font-size:13px;white-space:pre-wrap;word-break:break-word}.consultation-message.staff{justify-self:end;background:#fff0f1;color:#71313a}.consultation-message small{display:block;margin-top:3px;color:#8c93a1;font-size:10px}.consultation-card form{display:flex;gap:8px;margin-top:12px}.consultation-card form input{min-width:0;flex:1;border:1px solid var(--line);border-radius:8px;padding:8px;font:inherit}.consultation-card form button{padding:7px 10px;background:var(--navy);color:#fff;font-size:12px;font-weight:800}.consultation-dialog{width:min(430px,calc(100vw - 28px))}.consultation-dialog h2{margin:2px 0 12px}.consultation-product{display:flex;align-items:center;gap:10px;margin:10px 0;padding:9px;border-radius:10px;background:#f5f6f9}.consultation-product img,.consultation-product .no-photo{width:48px;height:48px;flex:0 0 auto;border-radius:8px;object-fit:cover;background:#e9edf3}.consultation-product b,.consultation-product span{display:block}.consultation-product span{color:var(--muted);font-size:12px}.detail-consult{display:grid;place-items:center;flex:0 0 40px!important;border-radius:10px!important;background:#f1f3f7!important;color:#566074!important;font-size:12px!important}.detail-actionbar:has(.detail-service:not([hidden])) .detail-consult{flex-basis:34px!important;font-size:12px!important}.detail-actionbar:has(.detail-service:not([hidden])) .detail-service{flex-basis:34px}.consultation-unread{display:inline-grid;place-items:center;min-width:16px;height:16px;margin-left:3px;border-radius:50%;background:var(--coral);color:#fff;font-size:10px}@media(max-width:420px){.detail-consult{flex-basis:34px!important;font-size:12px!important}.consultation-message{max-width:92%}.consultation-card form{flex-wrap:wrap}.consultation-card form input{flex-basis:100%}.consultation-card form button{margin-left:auto}}


/* source: consultation-dialog-layout.css */
/* 商品详情页首次咨询弹窗：标题、商品、输入和发送各自清晰分区。 */
.consultation-dialog{box-sizing:border-box;width:min(440px,calc(100vw - 28px));max-height:calc(var(--app-visual-height,100vh) - 24px);padding:0;overflow:hidden}
.consultation-dialog .form{display:flex;flex-direction:column;min-height:0;max-height:inherit;margin:0}
.consultation-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px 13px;border-bottom:1px solid var(--line)}
.consultation-dialog .consultation-dialog-head h2{margin:0;font-size:20px;line-height:1.25}
.consultation-dialog .consultation-dialog-head .dialog-close{float:none;flex:0 0 auto;width:30px;height:30px;margin:0!important;padding:0;border:1px solid #dfe4ec!important;border-radius:7px;background:#eef1f6!important;color:var(--ink)!important;font-size:22px;line-height:1}
.consultation-dialog .consultation-product{margin:0 18px;padding:12px 0;border-bottom:1px solid var(--line);border-radius:0;background:transparent}
.consultation-dialog .consultation-content-field{display:block;min-height:0;margin:13px 18px 0;overflow-y:auto;font-size:14px;font-weight:700}
.consultation-dialog .consultation-content-field>span{display:block;margin-bottom:7px}
.consultation-dialog .consultation-content-field textarea{display:block;width:100%;min-height:88px;max-height:150px;margin:0;padding:10px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--ink);font:inherit;line-height:1.5;resize:vertical}
.consultation-dialog-footer{display:flex;align-items:center;gap:12px;padding:12px 18px 17px}
.consultation-dialog-footer .hint{min-width:0;margin:0;color:var(--muted);font-size:12px;line-height:1.45}
.consultation-dialog-footer .hint span{display:block;white-space:nowrap}
.consultation-dialog-footer .dialog-actions{flex:0 0 auto;margin:0 0 0 auto}
.consultation-dialog-footer .dialog-actions .primary{min-width:92px;margin:0!important;padding:8px 12px;border:1px solid #dfe4ec!important;border-radius:7px;background:#eef1f6!important;color:var(--ink)!important;box-shadow:none!important;white-space:nowrap}
@media(max-width:420px){.consultation-dialog-head{padding:14px 15px 12px}.consultation-dialog .consultation-product{margin:0 15px;padding:10px 0}.consultation-dialog .consultation-content-field{margin:11px 15px 0}.consultation-dialog .consultation-content-field textarea{min-height:82px}.consultation-dialog-footer{gap:8px;padding:11px 15px 15px}.consultation-dialog-footer .dialog-actions .primary{min-width:88px;padding:8px 10px}}

@media(min-width:721px){
  .consultation-dialog{width:min(560px,calc(100vw - 48px));max-height:calc(var(--app-visual-height,100vh) - 48px)}
  .consultation-dialog-head{padding:19px 22px 16px}
  .consultation-dialog .consultation-dialog-head h2{font-size:22px}
  .consultation-dialog .consultation-product{margin:0 22px;padding:15px 0}
  .consultation-dialog .consultation-content-field{margin:16px 22px 0;font-size:15px}
  .consultation-dialog .consultation-content-field textarea{min-height:120px;max-height:220px}
  .consultation-dialog-footer{gap:16px;padding:15px 22px 20px}
}


/* source: customer-consultation-upgrade.css */
.consultation-card{box-shadow:0 5px 16px #25305308}.consultation-card-tags{display:flex;align-items:flex-end;gap:5px;flex-direction:column}.consultation-card .consultation-handler{padding:3px 7px;border-radius:99px;background:#eef2f8;color:#59657a;font-size:10px;white-space:nowrap}.consultation-messages{max-height:300px;overflow:auto;padding-right:3px}.consultation-message.staff{background:#fff0f1;border:1px solid #ffdce0}.consultation-message small{font-weight:700}.consultation-card form{padding-top:2px;border-top:1px solid var(--line)}@media(max-width:420px){.consultation-card-tags{align-items:flex-start;flex-direction:row;margin-top:7px}.consultation-messages{max-height:340px}}


/* source: customer-consultation-layout.css */
.my-consultations,
#customerConsultations,
.consultation-card,
.consultation-head,
.consultation-messages{
  width:100%;
  max-width:100%;
  min-width:0;
}

#member{
  padding-top:8px;
}

.my-consultations{
  position:relative;
  overflow:visible;
  margin-top:8px;
  padding:12px;
  border:1px solid rgba(228,232,240,.9);
  border-radius:14px;
  background:#fff;
  box-shadow:none;
}

.my-consultations .section-heading{
  margin-bottom:10px;
}

#customerConsultations{
  padding:0;
  border:0;
  background:transparent;
  box-shadow:none;
}

.consultation-card{
  overflow:visible;
  padding:0;
  border:0;
  border-radius:0;
  box-shadow:none;
  background:transparent;
}

.consultation-card+.consultation-card{
  margin-top:18px;
  padding-top:18px;
  border-top:1px solid var(--line);
}

.consultation-head{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

.consultation-card-tags{
  order:-1;
  width:100%;
  max-width:100%;
  display:flex;
  align-items:center;
  justify-content:flex-start;
  flex-direction:row;
  gap:8px;
}

.consultation-card .consultation-handler,
.consultation-outside-head .consultation-handler{
  padding:0;
  border-radius:0;
  background:transparent;
  color:var(--ink);
  font-size:13px;
  font-weight:800;
}

.consultation-card .consultation-status,
.consultation-outside-head .consultation-status{
  font-size:13px;
}

.consultation-product-summary{
  width:100%;
  max-width:100%;
  min-width:0;
  display:grid;
  align-content:start;
  align-items:start;
  grid-template-columns:44px minmax(0,1fr) auto;
  align-items:center;
  gap:10px;
  padding:7px 8px;
  border:0;
  border-radius:10px;
  background:#f5f6f9;
  color:inherit;
  text-align:left;
}

.consultation-product-summary div{
  min-width:0;
}

.consultation-product-summary i,
.consultation-message-product>i{
  color:#8a92a2;
  font-size:22px;
  font-style:normal;
}

.consultation-messages{
  box-sizing:border-box;
  max-height:340px;
  max-height:min(44dvh,420px);
  overflow-x:hidden;
  overflow-y:auto;
  overscroll-behavior-y:contain;
  -webkit-overflow-scrolling:touch;
  touch-action:pan-y;
  display:grid;
  grid-auto-flow:row;
  grid-auto-rows:max-content;
  align-content:start;
  align-items:start;
  gap:8px;
  margin-top:10px;
  padding:0 2px;
  scrollbar-gutter:auto;
  scrollbar-width:none;
}
.consultation-messages::-webkit-scrollbar{display:none}

.consultation-message{
  position:relative;
  box-sizing:border-box;
  width:fit-content;
  max-width:min(76%,320px);
  padding:9px 12px;
  border:1px solid #a0f1a6;
  border-radius:6px;
  background:#a0f1a6;
  box-shadow:0 1px 2px rgba(41,49,78,.08);
  color:#1f2329;
  overflow-wrap:anywhere;
  word-break:break-word;
  touch-action:pan-y;
  user-select:none;
  -webkit-user-select:none;
  justify-self:end;
  align-self:start;
  font-size:18px;
  line-height:1.5;
}

.consultation-message.staff{
  justify-self:start;
  border:0;
  border-radius:6px;
  background:var(--theme-staff-bubble-background,#fff0f2);
  color:var(--theme-staff-bubble-text,var(--ink));
}

/* WeChat-style single-layer tails point from each bubble toward its sender. */
.consultation-message::before{
  content:"";
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:0;
  height:0;
  pointer-events:none;
  right:-7px;
  border-top:6px solid transparent;
  border-bottom:6px solid transparent;
  border-left:7px solid #a0f1a6;
}

.consultation-message.staff::before{
  right:auto;
  left:-7px;
  border-right:7px solid var(--theme-staff-bubble-background,#fff0f2);
  border-left:0;
}

/* Only attachment-only messages stay outside a bubble. */
.consultation-message:has(.consultation-message-product):not(:has(.consultation-message-text)),
.consultation-message:has(.consultation-chat-image):not(:has(.consultation-message-text)){
  display:grid;
  gap:5px;
  justify-items:end;
  padding:0;
  border:0!important;
  border-radius:0;
  background:transparent!important;
  box-shadow:none;
}
.consultation-message.staff:has(.consultation-message-product):not(:has(.consultation-message-text)),
.consultation-message.staff:has(.consultation-chat-image):not(:has(.consultation-message-text)){justify-items:start}
.consultation-message:has(.consultation-message-product):not(:has(.consultation-message-text))::before,
.consultation-message:has(.consultation-chat-image):not(:has(.consultation-message-text))::before{content:none}

/* Two-sided conversation identity and breathing room. */
.consultation-message-row{
  display:flex;
  flex-direction:row;
  align-items:center;
  gap:8px;
  width:fit-content;
  max-width:80%;
  min-width:0;
  margin:2px 4px;
}
.consultation-message-row.customer{justify-self:end;margin-left:auto;justify-content:flex-end;flex-direction:row-reverse;align-items:center}
.consultation-message-row.staff{justify-self:start;margin-right:auto;justify-content:flex-start;flex-direction:row;align-items:center}
.consultation-message-row .consultation-message{max-width:calc(100% - 30px);margin:0}
.consultation-sender{display:flex;flex:0 0 auto;align-items:center;gap:6px;min-height:26px;margin:0;color:#5f6c81;font-size:16px;font-weight:800;line-height:1;white-space:nowrap}
.consultation-sender{color:#68758a}

.consultation-message small{
  display:none;
  margin-top:5px;
}

.consultation-message.meta-visible small{
  display:flex;
  align-items:center;
  gap:8px;
}

.consultation-message-recall{
  min-height:0;
  margin:0;
  padding:0;
  border:0;
  background:transparent;
  color:#5b6b84;
  font:inherit;
  font-weight:700;
  line-height:inherit;
}
.consultation-message-recall:disabled{opacity:.45}
.consultation-message-row.recalled{
  align-self:center;
  width:auto;
  max-width:100%;
  margin:5px auto;
}
.consultation-message-row.staff.recalled{
  align-self:flex-start;
  margin:5px 0;
}
.consultation-message-row.recalled .consultation-sender{display:none}
.consultation-message.recalled{
  padding:4px 9px;
  border:0;
  border-radius:5px;
  background:#eef1f5;
  box-shadow:none;
  color:#7d8797;
  font-size:13px;
  line-height:1.35;
  text-align:center;
}
/* 主题对店面气泡使用了 !important；撤回提示必须始终保持与客户撤回相同的中性样式。 */
.consultation-message.staff.recalled{
  border-color:transparent!important;
  background:#eef1f5!important;
  color:#7d8797!important;
}
.consultation-message.recalled::before{content:none}

.consultation-message-text+.consultation-message-product{
  margin-top:7px;
}

.consultation-message-product{
  width:min(340px,100%);
  min-width:0;
  height:60px;
  display:grid;
  grid-template-columns:48px minmax(0,1fr) 12px;
  grid-template-rows:minmax(0,1fr) minmax(0,1fr);
  align-items:center;
  gap:8px;
  padding:6px;
  border:1px solid #e6e9ef;
  border-radius:9px;
  background:#fff;
  color:var(--ink);
  text-align:left;
}

.consultation-message-product img,
.consultation-message-product .no-photo{
  width:48px;
  height:48px;
  border-radius:7px;
  object-fit:cover;
  background:#edf0f4;
}

.consultation-message-product span,
.consultation-message-product b,
.consultation-message-product em{
  display:block;
  min-width:0;
}
.consultation-message-product>img,.consultation-message-product>.no-photo{grid-column:1;grid-row:1/3}
.consultation-message-product>b{grid-column:2/3;grid-row:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;align-self:end;text-align:left}
.consultation-message-product-price{grid-column:2;grid-row:2;display:flex!important;align-items:baseline;gap:5px;width:100%;min-width:0;white-space:nowrap;text-align:left}
.consultation-message-product-price em{width:auto!important;margin-top:3px;flex:0 0 auto}
.consultation-message-product-spec{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;color:#748095;font-size:12px;font-weight:400;line-height:1.15}
.consultation-message-product>i{grid-column:3;grid-row:1/3}

.consultation-message-product b{
  overflow:hidden;
  color:var(--ink);
  font-size:12px;
  line-height:1.35;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.consultation-message-product em{
  margin-top:3px;
  color:var(--coral);
  font-size:12px;
  font-style:normal;
  font-weight:800;
}

.consultation-welcome{display:grid;min-height:96px;align-content:start;padding:20px 0 8px}
.consultation-welcome-message{max-width:min(88%,360px);margin:0}

#member.view.active .consultation-card form input{
  width:auto;
  min-width:0;
  max-width:none;
}

#member.view.active .consultation-card form button{
  margin:0;
}

#member.view.active .consultation-card form .consultation-image-button,
#member.view.active .consultation-card form .consultation-voice-button{
  min-width:46px;
  padding:8px 9px;
  border:1px solid #dfe4ec;
  background:#f5f7fa;
  color:#536078;
}

#member.view.active .consultation-card form .consultation-voice-button.recording{
  min-width:72px;
  border-color:#ff8b95;
  background:#fff0f2;
  color:#c94756;
}

#member.view.active .consultation-card form .consultation-voice-button:disabled{
  opacity:.45;
}

#member.view.active .consultation-card form .consultation-send-button{
  min-width:58px;
  background:var(--navy);
  color:#fff;
}

.consultation-chat-image{
  display:block;
  max-width:190px;
  padding:0;
  border:0;
  border-radius:9px;
  overflow:hidden;
  background:transparent;
}

.consultation-chat-image img{
  display:block;
  width:auto;
  max-width:190px;
  max-height:220px;
  object-fit:contain;
}

.consultation-chat-audio{
  display:block;
  width:min(230px,62vw);
  height:34px;
}

.consultation-audio-duration{
  display:block;
  margin-top:3px;
  color:#7b8496;
  font-size:10px;
}

@media(max-width:420px){
  .consultation-card{
    padding:0;
  }

  .consultation-message{
    max-width:calc(100% - 30px);
    padding:7px 9px;
  }

  .consultation-message.staff{
    justify-self:start;
  }

  .consultation-message small{
    font-size:9px;
  }

  .consultation-message-product{
    width:100%;
  }

  #member.view.active .consultation-card form .consultation-image-button,
  #member.view.active .consultation-card form .consultation-voice-button{
    min-width:40px;
    padding:7px 6px;
    font-size:12px;
  }

  #member.view.active .consultation-card form .consultation-send-button{
    min-width:48px;
    padding:7px 6px;
  }
}

@media(max-width:720px){
  .consultation-message-row.customer{margin-right:0}
  .consultation-message-row.staff{margin-left:0}
  .consultation-message{
    padding:6px 9px;
    line-height:1.35;
  }

}


/* source: member-level-card.css */
.member-level-current{display:flex;align-items:center;gap:11px;margin:0 0 11px;padding:10px 12px;border:1px solid #ffffff2e;border-radius:13px;background:#ffffff12}.member-level-current small,.member-level-current strong{display:block}.member-level-current small{color:#e2e6f0;font-size:12px;letter-spacing:.08em}.member-level-current strong{margin-top:1px;color:#fff;font-size:18px;line-height:1.2}.member-level-badge{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%);background:linear-gradient(135deg,#ffc969,#f16f43);color:#fff;font-size:17px;font-weight:900;font-style:italic;text-shadow:0 1px 2px #0004}.member-level-track{display:grid;grid-template-columns:repeat(5,1fr);gap:5px;margin:0 0 12px}.member-level-track span{position:relative;display:grid;place-items:center;height:22px;border:1px solid #ffffff25;border-radius:99px;background:#ffffff12;color:#d9deec;font-size:10px;font-weight:800}.member-level-track span.is-reached{background:#ffffff35;color:#fff}.member-level-track span.is-current{border-color:#fff;background:#fff;color:#333b58;box-shadow:0 3px 9px #161a3652}.member-panel[data-member-level="bronze"]{background:linear-gradient(136deg,#49384a 0%,#6c4d48 57%,#9a6743 100%)!important}.member-panel[data-member-level="bronze"] .member-level-badge{background:linear-gradient(135deg,#d48a4b,#9a542f)}.member-panel[data-member-level="silver"]{background:linear-gradient(136deg,#3d4c60 0%,#61768d 57%,#9caabb 100%)!important}.member-panel[data-member-level="silver"] .member-level-badge{background:linear-gradient(135deg,#d7e1e9,#8294a8)}.member-panel[data-member-level="gold"]{background:linear-gradient(136deg,#5b3f2d 0%,#a26b2b 56%,#e0a647 100%)!important}.member-panel[data-member-level="gold"] .member-level-badge{background:linear-gradient(135deg,#ffe18a,#e56b3c)}.member-panel[data-member-level="platinum"]{background:linear-gradient(136deg,#4c365b 0%,#8e477f 54%,#df5e92 100%)!important}.member-panel[data-member-level="platinum"] .member-level-badge{background:linear-gradient(135deg,#ff86b7,#bf47d4)}.member-panel[data-member-level="diamond"]{background:linear-gradient(136deg,#2e3b68 0%,#57489b 54%,#8455d6 100%)!important}.member-panel[data-member-level="diamond"] .member-level-badge{background:linear-gradient(135deg,#71baff,#8039e4)}@media(max-width:420px){.member-level-current{padding:9px 10px}.member-level-current strong{font-size:16px}.member-level-badge{flex-basis:38px;width:38px;height:38px;font-size:16px}.member-level-track{gap:4px}.member-level-track span{height:21px;font-size:9px}}


/* source: member-service-final.css */
/* 会员服务：单一布局规则，避免多份历史样式相互覆盖。 */
.member-page-intro{padding:28px 0 14px!important}.member-page-intro h2{margin:0!important;font-size:25px!important;line-height:1.2}.member-panel{position:relative!important;isolation:isolate;width:min(100%,550px)!important;max-width:550px!important;min-height:0!important;aspect-ratio:1.618 / 1!important;padding:24px!important;overflow:hidden;border:1px solid #ffffff2d!important;border-radius:20px!important;color:#fff;box-shadow:0 14px 32px #20274434!important}.member-panel>*:not(.member-card-orbit){position:relative;z-index:1}.member-card-orbit{position:absolute!important;z-index:0!important}.member-panel-head{display:flex!important;align-items:center!important;min-height:27px!important;margin:0!important}.member-card-unbound-tags{display:flex!important;align-items:center;gap:22px;color:#fff;font-size:20px;font-weight:850;line-height:27px;letter-spacing:.045em}.member-panel #memberLoggedOut{display:flex;flex-direction:column;width:min(100%,320px);margin:auto 0;padding:0!important}.member-panel #memberLoggedOut label{display:block;margin:0!important;color:#edf0fa!important;font-size:13px!important;font-weight:700;line-height:18px}.member-panel #memberLoggedOut input{display:block;width:100%;height:39px;margin:4px 0 0!important;padding:8px 10px!important;border:1px solid #ffffff47!important;border-radius:9px!important;background:#ffffffef!important;color:#29314e!important;box-shadow:0 5px 12px #19213d22}.member-panel #memberLoggedOut .primary{align-self:flex-start;width:188px!important;min-height:40px!important;margin:10px 0 0!important;border:1px solid #ff9da4!important;border-radius:11px!important;background:linear-gradient(100deg,#ff6572,#ff8172)!important;color:#fff!important;font-size:14px;font-weight:800;box-shadow:0 9px 18px #181c3b48!important}.member-panel.is-member-bound .member-panel-head{display:none!important}.member-panel.is-member-bound #memberLoggedIn:not([hidden]){display:flex!important;flex-direction:column;align-items:flex-start;width:100%;margin:0}.member-level-current{display:flex!important;align-items:center!important;gap:12px!important;margin:0 0 12px!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important}.member-level-current .member-level-badge{display:grid;place-items:center;flex:0 0 48px;width:48px;height:48px;color:#fff;font-size:18px;font-weight:900;font-style:italic;text-shadow:0 1px 2px #0004}.member-level-copy small{display:block;color:#e6eaf5;font-size:12px;line-height:13px;letter-spacing:.08em}.member-level-current strong{display:block;margin-top:2px;color:#fff;font-size:23px!important;line-height:27px;letter-spacing:.02em}.member-identity{display:inline-flex!important;align-items:center;min-height:38px;max-width:100%;margin:0 0 11px!important;padding:8px 12px!important;border:1px solid #ffffff2f!important;border-radius:11px!important;background:#ffffff14!important;color:#fff!important;font-size:14px!important;font-weight:700!important;line-height:1.35}.member-level-track{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px;width:min(100%,390px);margin:0!important}.member-level-track span{height:22px}.member-panel #clearLocalDevice,.member-panel #logoutMember{position:absolute!important;z-index:2;min-height:0!important;margin:0!important;box-shadow:none!important;white-space:nowrap}.member-panel #clearLocalDevice{left:24px;bottom:22px;width:auto!important;padding:0!important;border-color:transparent!important;background:transparent!important;color:#dce1ee!important;font-size:12px!important;font-weight:500!important;line-height:14px;text-decoration:underline;text-underline-offset:3px}.member-panel #logoutMember{right:24px;bottom:18px;width:auto!important;min-height:30px!important;padding:5px 13px!important;border:1px solid #ffffff6b!important;border-radius:9px!important;background:#ffffff18!important;color:#fff!important;font-size:12px!important;font-weight:700!important}.member-panel #logoutMember:hover,.member-panel #logoutMember:focus-visible{background:#ffffff2b!important;color:#fff!important}.member-benefits{width:min(100%,550px)!important;max-width:550px!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:9px!important;margin-top:12px!important}.member-benefits article{min-width:0!important;padding:12px!important}.member-benefits b{font-size:13px!important}.member-benefits span{font-size:10px!important;line-height:1.4!important}
@media(max-width:720px){.member-page-intro{padding:24px 0 12px!important}.member-page-intro h2{font-size:23px!important}.member-panel{width:100%!important;max-width:none!important;padding:18px!important;border-radius:17px!important}.member-panel-head{min-height:24px!important}.member-card-unbound-tags{gap:18px;font-size:18px;line-height:24px}.member-panel #memberLoggedOut{width:100%;max-width:none}.member-panel #memberLoggedOut label{font-size:12px!important;line-height:16px}.member-panel #memberLoggedOut input{height:36px;margin-top:3px!important;padding:7px 9px!important}.member-panel #memberLoggedOut .primary{width:172px!important;min-height:37px!important;margin-top:8px!important;font-size:13px}.member-level-current{gap:10px!important;margin-bottom:9px!important}.member-level-current .member-level-badge{flex-basis:43px;width:43px;height:43px;font-size:17px}.member-level-copy small{font-size:10px;line-height:12px}.member-level-current strong{font-size:21px!important;line-height:24px}.member-identity{min-height:34px;margin-bottom:8px!important;padding:7px 10px!important;font-size:13px!important}.member-level-track{width:100%}.member-level-track span{height:20px}.member-panel #clearLocalDevice{left:18px;bottom:17px;font-size:10px!important;line-height:12px}.member-panel #logoutMember{right:18px;bottom:14px;min-height:27px!important;padding:4px 11px!important;font-size:12px!important}.member-benefits{width:100%!important;max-width:none!important}.member-benefits article{padding:10px 9px!important}.member-benefits b{font-size:12px!important}.member-benefits span{font-size:9px!important}}
@media(max-width:340px){.member-panel{padding:13px!important}.member-panel-head{min-height:18px!important}.member-card-unbound-tags{gap:13px;font-size:16px;line-height:18px}.member-panel #memberLoggedOut label{font-size:12px!important;line-height:14px}.member-panel #memberLoggedOut input{height:33px;padding:6px 8px!important}.member-panel #memberLoggedOut .primary{width:154px!important;min-height:33px!important;margin-top:6px!important;font-size:12px}.member-level-current{margin-bottom:6px!important}.member-level-current .member-level-badge{flex-basis:39px;width:39px;height:39px;font-size:16px}.member-level-current strong{font-size:19px!important;line-height:21px}.member-identity{min-height:31px;margin-bottom:6px!important;padding:6px 8px!important;font-size:12px!important}.member-level-track span{height:18px;font-size:8px}.member-panel #clearLocalDevice{left:13px;bottom:12px;font-size:9px!important}.member-panel #logoutMember{right:13px;bottom:10px;min-height:24px!important;padding:3px 9px!important}}

/* 信息区占用卡片中上部，操作始终独立固定在底部。 */
.member-panel #memberLoggedOut{position:absolute!important;top:51%;left:24px;display:flex;flex-direction:column;width:min(calc(100% - 48px),320px);margin:0!important;transform:translateY(-47%)}.member-panel.is-member-bound #memberLoggedIn:not([hidden]){position:absolute!important;top:24px;right:24px;bottom:62px;left:24px;display:flex!important;flex-direction:column;align-items:flex-start;width:auto;margin:0}.member-panel.is-member-bound #memberLoggedIn .member-identity{margin:0!important}.member-panel.is-member-bound #memberLoggedIn .member-level-track{margin-top:auto!important}
@media(max-width:720px){.member-panel #memberLoggedOut{top:52%;left:18px;width:calc(100% - 36px)}.member-panel.is-member-bound #memberLoggedIn:not([hidden]){top:18px;right:18px;bottom:52px;left:18px}}
@media(max-width:340px){.member-panel #memberLoggedOut{left:13px;width:calc(100% - 26px)}.member-panel.is-member-bound #memberLoggedIn:not([hidden]){top:13px;right:13px;bottom:44px;left:13px}}

/* 固定三段网格：顶部信息、中部内容、底部操作。覆盖旧的绝对定位。 */
.member-panel{display:grid!important;grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr) auto;align-items:start}.member-panel-head{grid-row:1}.member-panel #memberLoggedOut{position:static!important;grid-row:2;align-self:center;display:flex;width:min(100%,320px);margin:0!important;transform:none!important}.member-panel #clearLocalDevice{position:static!important;grid-row:3;justify-self:start;align-self:end}.member-panel.is-member-bound{grid-template-rows:minmax(0,1fr) auto}.member-panel.is-member-bound #memberLoggedIn:not([hidden]){position:static!important;grid-row:1;align-self:stretch;display:flex!important;width:100%;margin:0!important}.member-panel.is-member-bound #memberLoggedIn .member-level-track{margin-top:auto!important}
@media(max-width:720px){.member-panel #memberLoggedOut{width:100%}}

/* 删去会员权益框后，适度压缩卡片高度，同时保留登录前后完整排布。 */
.member-panel{aspect-ratio:2 / 1!important;margin-top:0!important;padding:20px!important;box-shadow:none!important}
@media(max-width:720px){.member-panel{margin-top:0!important;padding:16px!important}}
@media(max-width:340px){.member-panel{padding:13px!important}}


/* source: member-level-header.css */
.member-panel-head{display:grid!important;grid-template-columns:48px minmax(0,1fr);align-items:start!important;gap:12px!important;min-height:48px!important;margin:0!important}.member-diamond-badge{display:grid!important;place-items:center!important;width:46px!important;height:46px!important;flex:none!important;color:#8066e8;filter:drop-shadow(0 4px 6px #11162f38)}.member-diamond-badge svg{display:block;width:42px;height:42px}.member-diamond-badge .gem-fill{fill:currentColor}.member-diamond-badge .gem-facet{fill:none;stroke:#fff;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;opacity:.95}.member-card-unbound-tags{align-self:center;gap:20px!important;font-size:19px!important;line-height:26px!important}.member-level-header{display:flex;flex-direction:column;min-width:0;padding-top:0}.member-level-header[hidden]{display:none!important}.member-level-title{display:flex;align-items:baseline;gap:8px;height:23px;color:#fff;line-height:23px}.member-level-title #memberLevelCode{font-size:21px;font-style:italic;font-weight:900}.member-level-title #memberLevelName{font-size:19px;font-weight:800}.member-panel-head .member-level-track{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;width:min(100%,330px)!important;margin:5px 0 0!important}.member-panel-head .member-level-track span{height:20px!important;font-size:9px!important}.member-panel.is-member-bound{grid-template-rows:auto minmax(0,1fr) auto!important}.member-panel.is-member-bound .member-panel-head{display:grid!important}.member-panel.is-member-bound .member-card-unbound-tags{display:none!important}.member-panel.is-member-bound #memberLoggedIn:not([hidden]){position:static!important;grid-row:2;align-self:center;display:flex!important;width:100%;margin:0!important}.member-panel.is-member-bound #memberLoggedIn .member-identity{margin:0!important}.member-panel[data-member-level="bronze"] .member-diamond-badge{color:#b56838}.member-panel[data-member-level="silver"] .member-diamond-badge{color:#aebdca}.member-panel[data-member-level="gold"] .member-diamond-badge{color:#efad45}.member-panel[data-member-level="platinum"] .member-diamond-badge{color:#dc5c9c}.member-panel[data-member-level="diamond"] .member-diamond-badge{color:#8b63ef}
@media(max-width:720px){.member-panel-head{grid-template-columns:43px minmax(0,1fr);gap:10px!important;min-height:43px!important}.member-diamond-badge{width:42px!important;height:42px!important}.member-diamond-badge svg{width:38px;height:38px}.member-card-unbound-tags{gap:15px!important;font-size:17px!important;line-height:23px!important}.member-level-title{gap:6px;height:21px;line-height:21px}.member-level-title #memberLevelCode{font-size:19px}.member-level-title #memberLevelName{font-size:17px}.member-panel-head .member-level-track{gap:3px;margin-top:3px!important}.member-panel-head .member-level-track span{height:18px!important;font-size:8px!important}}

/* 单体立体宝石：放大图形，使用明暗切面，不使用白色描边。 */
.member-panel-head{grid-template-columns:54px minmax(0,1fr);min-height:52px!important}.member-diamond-badge{width:52px!important;height:52px!important;filter:drop-shadow(0 6px 7px #11162f55)}.member-diamond-badge svg{width:52px;height:52px}.member-diamond-badge .gem-base{fill:currentColor}.member-diamond-badge .gem-top-left{fill:#fff;opacity:.28}.member-diamond-badge .gem-top-right{fill:#fff;opacity:.12}.member-diamond-badge .gem-face-left{fill:#111b4c;opacity:.20}.member-diamond-badge .gem-face-right{fill:#fff;opacity:.06}
@media(max-width:720px){.member-panel-head{grid-template-columns:49px minmax(0,1fr);min-height:47px!important}.member-diamond-badge{width:47px!important;height:47px!important}.member-diamond-badge svg{width:47px;height:47px}}

/* 经典钻石轮廓：宽冠、斜边、尖底，仅用色块切面。 */
.member-panel-head{grid-template-columns:58px minmax(0,1fr);min-height:56px!important}.member-diamond-badge{width:56px!important;height:56px!important;filter:drop-shadow(0 7px 8px #11162f66)}.member-diamond-badge svg{width:56px;height:56px}.member-diamond-badge .gem-base{fill:currentColor}.member-diamond-badge .gem-crown-left{fill:#fff;opacity:.34}.member-diamond-badge .gem-crown-center{fill:#fff;opacity:.17}.member-diamond-badge .gem-crown-right{fill:#111b4c;opacity:.13}.member-diamond-badge .gem-body-left{fill:#111b4c;opacity:.18}.member-diamond-badge .gem-body-center{fill:#fff;opacity:.09}.member-diamond-badge .gem-body-right{fill:#111b4c;opacity:.31}.member-diamond-badge .gem-shine{fill:#fff;opacity:.68}
@media(max-width:720px){.member-panel-head{grid-template-columns:53px minmax(0,1fr);min-height:51px!important}.member-diamond-badge{width:51px!important;height:51px!important}.member-diamond-badge svg{width:51px;height:51px}}

/* 精修宝石色阶：用同色系明暗切面增强质感，不增加描边。 */
.member-diamond-badge{--gem-main:#7959df;--gem-light:#a892f4;--gem-soft:#9278e8;--gem-dark:#48309a;color:var(--gem-main);filter:drop-shadow(0 5px 5px #11162f52)}.member-diamond-badge .gem-base{fill:var(--gem-main)}.member-diamond-badge .gem-crown-left{fill:var(--gem-light);opacity:1}.member-diamond-badge .gem-crown-center{fill:var(--gem-soft);opacity:1}.member-diamond-badge .gem-crown-right{fill:var(--gem-main);opacity:1}.member-diamond-badge .gem-body-left{fill:var(--gem-main);opacity:1}.member-diamond-badge .gem-body-center{fill:var(--gem-soft);opacity:1}.member-diamond-badge .gem-body-right{fill:var(--gem-dark);opacity:1}.member-diamond-badge .gem-shine{display:none}.member-panel[data-member-level="bronze"] .member-diamond-badge{--gem-main:#b56f43;--gem-light:#dda072;--gem-soft:#c88759;--gem-dark:#784124}.member-panel[data-member-level="silver"] .member-diamond-badge{--gem-main:#a4b3c2;--gem-light:#d9e1e9;--gem-soft:#bcc8d3;--gem-dark:#718295}.member-panel[data-member-level="gold"] .member-diamond-badge{--gem-main:#e5a13d;--gem-light:#ffd77b;--gem-soft:#f0b956;--gem-dark:#a65a24}.member-panel[data-member-level="platinum"] .member-diamond-badge{--gem-main:#d55594;--gem-light:#ff91bd;--gem-soft:#e86fab;--gem-dark:#8d347e}.member-panel[data-member-level="diamond"] .member-diamond-badge{--gem-main:#7959df;--gem-light:#b09aff;--gem-soft:#9479eb;--gem-dark:#452b99}


/* source: member-state-fields.css */
/* 登录前后共用同一内容位置：输入手机号 / 显示会员信息，登录 / 退出。 */
#memberLoggedOut[hidden],#memberLoggedIn[hidden]{display:none!important}
.member-panel.is-member-bound #memberLoggedIn:not([hidden]){position:static!important;grid-row:2;align-self:center;display:flex!important;flex-direction:column;align-items:stretch;width:min(100%,320px);margin:0!important}.member-panel .member-identity-label{display:block;margin:0!important;color:#edf0fa!important;font-size:13px!important;font-weight:700;line-height:18px}.member-panel #memberIdentity{display:flex!important;align-items:center;width:100%;height:39px;min-height:39px;max-width:none;margin:4px 0 0!important;padding:8px 10px!important;overflow:hidden;border:1px solid #ffffff47!important;border-radius:9px!important;background:#ffffffef!important;color:#29314e!important;font-size:14px!important;font-weight:700!important;line-height:21px;white-space:nowrap;text-overflow:ellipsis;box-shadow:0 5px 12px #19213d22}.member-panel #logoutMember{position:static!important;align-self:flex-start;width:188px!important;min-height:40px!important;margin:10px 0 0!important;padding:8px 13px!important;border:1px solid #ffffff7a!important;border-radius:11px!important;background:#fff!important;color:#29314e!important;font-size:14px!important;font-weight:800!important;box-shadow:none!important}
@media(max-width:720px){.member-panel.is-member-bound #memberLoggedIn:not([hidden]){width:100%}.member-panel .member-identity-label{font-size:12px!important;line-height:16px}.member-panel #memberIdentity{height:36px;min-height:36px;margin-top:3px!important;padding:7px 9px!important;font-size:13px!important}.member-panel #logoutMember{width:172px!important;min-height:37px!important;margin-top:8px!important;font-size:13px!important}}
@media(max-width:340px){.member-panel .member-identity-label{font-size:12px!important;line-height:14px}.member-panel #memberIdentity{height:33px;min-height:33px;padding:6px 8px!important;font-size:12px!important}.member-panel #logoutMember{width:154px!important;min-height:33px!important;margin-top:6px!important;font-size:12px!important}}

/* 两种状态共用右下角的小操作按钮。 */
.member-panel #loginMember,.member-panel #logoutMember{position:absolute!important;right:24px;bottom:18px;z-index:2;align-self:auto;width:72px!important;min-width:72px!important;height:30px!important;min-height:30px!important;margin:0!important;padding:5px 14px!important;border-radius:9px!important;font-size:12px!important;line-height:18px!important;box-shadow:none!important}.member-panel #loginMember{border:1px solid #ff9da4!important;background:linear-gradient(100deg,#ff6572,#ff8172)!important;color:#fff!important}.member-panel #logoutMember{border:1px solid #ffffff6b!important;background:#ffffff18!important;color:#fff!important}
@media(max-width:720px){.member-panel #loginMember,.member-panel #logoutMember{right:18px;bottom:14px;width:66px!important;min-width:66px!important;height:27px!important;min-height:27px!important;padding:4px 12px!important;font-size:12px!important;line-height:17px!important}}
@media(max-width:340px){.member-panel #loginMember,.member-panel #logoutMember{right:13px;bottom:10px;width:60px!important;min-width:60px!important;height:24px!important;min-height:24px!important;padding:3px 10px!important;font-size:10px!important;line-height:16px!important}}

/* 压缩卡片后，登录态会员信息紧跟等级区域向上排列。 */
.member-panel.is-member-bound #memberLoggedIn:not([hidden]){align-self:start!important;margin-top:-2px!important}


/* source: member-unit-identity.css */
.member-panel.is-unit-customer .member-panel-head{display:none!important}.member-panel.is-unit-customer .member-identity-label>span{display:none!important}.member-panel.is-unit-customer #memberLoggedIn:not([hidden]){grid-row:1!important;align-self:center!important}.member-panel.is-unit-customer #memberIdentity{font-size:14px!important}.member-panel.is-unit-customer .member-identity-label{margin:0!important}@media(max-width:720px){.member-panel.is-unit-customer #memberIdentity{font-size:13px!important}}


/* source: member-card-original.css */
/* 恢复会员服务最初的大卡样式：一张完整卡面，两种互斥状态。 */
#myMembership .member-page-intro{
  padding:16px 0 12px!important;
}

#myMembership .member-page-intro h2{
  margin:0!important;
  color:var(--ink)!important;
  font-size:25px!important;
  font-weight:850!important;
  line-height:1.2!important;
}

#myMembership .member-panel{
  display:flex!important;
  flex-direction:column!important;
  position:relative!important;
  isolation:isolate!important;
  width:min(100%,550px)!important;
  max-width:550px!important;
  min-height:0!important;
  aspect-ratio:1.586 / 1!important;
  margin:0!important;
  padding:24px!important;
  overflow:hidden!important;
  border:1px solid rgba(255,255,255,.18)!important;
  border-radius:18px!important;
  background:var(--navy)!important;
  color:#fff!important;
  box-shadow:0 12px 30px rgba(31,43,72,.16)!important;
}

#myMembership .member-panel::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  border-radius:inherit;
  background:linear-gradient(125deg,rgba(255,255,255,.07),transparent 36%);
  pointer-events:none;
}

/* 未登录卡直接跟随后台顶栏背景色；文字随色彩明暗自动适配。 */
#myMembership .member-panel:not(.is-member-bound){
  background:linear-gradient(136deg,var(--theme-member-unbound-start),var(--theme-member-unbound-end))!important;
  border-color:var(--theme-member-unbound-border)!important;
  color:var(--theme-member-unbound-text)!important;
}

#myMembership .member-panel:not(.is-member-bound)::before{
  background:
    radial-gradient(circle at 13% 2%,rgba(255,255,255,.28),rgba(255,255,255,0) 39%),
    radial-gradient(circle at 96% 112%,rgba(10,14,35,.30),rgba(10,14,35,0) 54%),
    linear-gradient(116deg,rgba(255,255,255,.10),rgba(255,255,255,0) 42%)!important;
}

#myMembership .member-panel:not(.is-member-bound) .member-card-unbound-tags,
#myMembership .member-panel:not(.is-member-bound) #memberLoggedOut label{
  color:var(--theme-member-unbound-text)!important;
}

#myMembership .member-panel:not(.is-member-bound) #clearLocalDevice{
  color:var(--theme-member-unbound-muted)!important;
}

/* 已登录会员按千帆会员等级使用独立色阶；不受未登录主题色影响。 */
#myMembership .member-panel.is-member-bound[data-member-level="bronze"]{background:linear-gradient(136deg,#49384a 0%,#6c4d48 57%,#9a6743 100%)!important}
#myMembership .member-panel.is-member-bound[data-member-level="silver"]{background:linear-gradient(136deg,#3d4c60 0%,#61768d 57%,#9caabb 100%)!important}
#myMembership .member-panel.is-member-bound[data-member-level="gold"]{background:linear-gradient(136deg,#5b3f2d 0%,#a26b2b 56%,#e0a647 100%)!important}
#myMembership .member-panel.is-member-bound[data-member-level="platinum"]{background:linear-gradient(136deg,#4c365b 0%,#8e477f 54%,#df5e92 100%)!important}
#myMembership .member-panel.is-member-bound[data-member-level="diamond"]{background:linear-gradient(136deg,#2e3b68 0%,#57489b 54%,#8455d6 100%)!important}

#myMembership .member-panel>*:not(.member-card-orbit){
  position:relative!important;
  z-index:1!important;
}

#myMembership .member-panel-head{
  display:flex!important;
  flex:0 0 auto!important;
  align-items:center!important;
  min-height:28px!important;
  margin:0 0 16px!important;
}

#myMembership .member-panel:not(.is-member-bound) .member-diamond-badge,
#myMembership .member-panel:not(.is-member-bound) .member-level-header{
  display:none!important;
}

#myMembership .member-card-unbound-tags{
  display:flex!important;
  align-items:center!important;
  gap:20px!important;
  color:#fff!important;
  font-size:20px!important;
  font-weight:850!important;
  line-height:27px!important;
  letter-spacing:.045em!important;
}

#myMembership .member-panel.is-member-bound .member-panel-head{
  display:grid!important;
  grid-template-columns:58px minmax(0,1fr)!important;
  align-items:start!important;
  gap:11px!important;
  min-height:56px!important;
  margin-bottom:12px!important;
}

#myMembership .member-panel.is-member-bound .member-card-unbound-tags{
  display:none!important;
}

#myMembership .member-panel.is-member-bound .member-diamond-badge,
#myMembership .member-panel.is-member-bound .member-level-header{
  display:flex!important;
}

#myMembership #memberLoggedOut,
#myMembership .member-panel.is-member-bound #memberLoggedIn:not([hidden]){
  display:flex!important;
  position:static!important;
  flex:0 0 auto!important;
  flex-direction:column!important;
  align-self:flex-start!important;
  align-items:stretch!important;
  width:min(100%,320px)!important;
  margin:2px 0 0!important;
  padding:0!important;
  transform:none!important;
}

/* 未登录输入框与登录后的会员信息框采用同一条纵向基准线。 */
#myMembership .member-panel:not(.is-member-bound) #memberLoggedOut{
  margin-top:22px!important;
}

#myMembership #memberLoggedOut[hidden],
#myMembership #memberLoggedIn[hidden]{
  display:none!important;
}

#myMembership #memberLoggedOut label,
#myMembership .member-identity-label{
  display:block!important;
  margin:0!important;
  color:#edf0fa!important;
  font-size:13px!important;
  font-weight:700!important;
  line-height:18px!important;
}

#myMembership #memberLoggedOut input,
#myMembership #memberIdentity{
  display:flex!important;
  align-items:center!important;
  width:100%!important;
  height:39px!important;
  min-height:39px!important;
  margin:4px 0 0!important;
  padding:8px 10px!important;
  overflow:hidden!important;
  border:1px solid rgba(255,255,255,.28)!important;
  border-radius:9px!important;
  background:#fff!important;
  color:var(--navy)!important;
  font-size:14px!important;
  font-weight:700!important;
  line-height:21px!important;
  white-space:nowrap!important;
  text-overflow:ellipsis!important;
  box-shadow:0 5px 12px rgba(25,33,61,.13)!important;
}

#myMembership #loginMember{
  position:absolute!important;
  right:24px!important;
  bottom:18px!important;
  z-index:2!important;
  align-self:auto!important;
  width:72px!important;
  min-width:72px!important;
  min-height:30px!important;
  height:30px!important;
  margin:0!important;
  padding:5px 13px!important;
  border:1px solid #ff9da4!important;
  border-radius:9px!important;
  background:linear-gradient(100deg,#ff6572,#ff8172)!important;
  color:#fff!important;
  font-size:12px!important;
  font-weight:800!important;
  box-shadow:none!important;
}

#myMembership .member-panel.is-member-bound #memberLoggedIn:not([hidden]){
  width:min(100%,390px)!important;
}

#myMembership #logoutMember{
  position:absolute!important;
  right:24px!important;
  bottom:18px!important;
  z-index:2!important;
  width:auto!important;
  min-width:72px!important;
  min-height:30px!important;
  margin:0!important;
  padding:5px 13px!important;
  border:1px solid rgba(255,255,255,.42)!important;
  border-radius:9px!important;
  background:rgba(255,255,255,.10)!important;
  color:#fff!important;
  font-size:12px!important;
  font-weight:700!important;
  line-height:18px!important;
  box-shadow:none!important;
}

#myMembership #clearLocalDevice{
  position:absolute!important;
  bottom:22px!important;
  left:24px!important;
  z-index:2!important;
  width:auto!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  color:#dce1ee!important;
  font-size:12px!important;
  font-weight:500!important;
  line-height:14px!important;
  text-decoration:underline!important;
  text-underline-offset:3px!important;
}

#myMembership .member-card-orbit{
  position:absolute!important;
  z-index:0!important;
  display:block!important;
  border:1px solid rgba(255,255,255,.18)!important;
  border-radius:50%!important;
  background:transparent!important;
  pointer-events:none!important;
}

#myMembership .orbit-one{top:-96px!important;right:-72px!important;width:205px!important;height:205px!important;background:rgba(255,89,102,.10)!important}
#myMembership .orbit-two{right:24px!important;bottom:-78px!important;width:132px!important;height:132px!important;background:rgba(169,132,255,.10)!important}

#myMembership .member-benefits{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  width:min(100%,550px)!important;
  max-width:550px!important;
  gap:9px!important;
  margin:12px 0 0!important;
}

#myMembership .member-benefits article{
  min-width:0!important;
  padding:12px!important;
  overflow:hidden!important;
  border:1px solid var(--line)!important;
  border-radius:12px!important;
  background:#fff!important;
  box-shadow:0 4px 12px rgba(37,48,83,.03)!important;
}

#myMembership .member-benefits article:first-child{border-color:#ffe0e3!important;background:#fffafb!important}
#myMembership .member-benefits article:nth-child(2){border-color:#e4defa!important;background:#fcfbff!important}
#myMembership .member-benefits article:last-child{border-color:#dceee7!important;background:#fbfefc!important}
#myMembership .member-benefits b,
#myMembership .member-benefits span{display:block!important}
#myMembership .member-benefits b{color:var(--ink)!important;font-size:14px!important;font-weight:800!important}
#myMembership .member-benefits span{margin-top:3px!important;color:var(--muted)!important;font-size:12px!important;line-height:1.4!important}

@media(max-width:720px){
  #myMembership .member-page-intro{padding:14px 0 11px!important}
  #myMembership .member-page-intro h2{font-size:20px!important;font-weight:800!important}
  #myMembership .member-panel{width:100%!important;max-width:none!important;min-height:0!important;aspect-ratio:1.586 / 1!important;padding:20px!important;border-radius:17px!important}
  #myMembership .member-panel-head{margin-bottom:14px!important}
  #myMembership .member-card-unbound-tags{gap:16px!important;font-size:18px!important;line-height:24px!important}
  #myMembership #memberLoggedOut,
  #myMembership .member-panel.is-member-bound #memberLoggedIn:not([hidden]){width:100%!important}
  #myMembership .member-panel:not(.is-member-bound) #memberLoggedOut{margin-top:24px!important}
  #myMembership #memberLoggedOut label,
  #myMembership .member-identity-label{font-size:12px!important;line-height:16px!important}
  #myMembership #memberLoggedOut input,
  #myMembership #memberIdentity{height:36px!important;min-height:36px!important;margin-top:3px!important;padding:7px 9px!important;font-size:13px!important}
  #myMembership #loginMember{right:20px!important;bottom:16px!important;width:66px!important;min-width:66px!important;min-height:27px!important;height:27px!important;margin:0!important;padding:4px 11px!important;font-size:12px!important}
  #myMembership #logoutMember{right:20px!important;bottom:16px!important}
  #myMembership #clearLocalDevice{left:20px!important;bottom:18px!important;font-size:10px!important}
  #myMembership .member-benefits{width:100%!important;max-width:none!important;gap:8px!important;margin-top:12px!important}
  #myMembership .member-benefits article{padding:10px 9px!important}
  #myMembership .member-benefits b{font-size:14px!important}
  #myMembership .member-benefits span{font-size:12px!important}
}

@media(max-width:340px){
  #myMembership .member-panel{min-height:206px!important;aspect-ratio:auto!important;padding:14px!important}
  #myMembership .member-card-unbound-tags{gap:12px!important;font-size:16px!important;line-height:20px!important}
  #myMembership #loginMember{right:14px!important;bottom:11px!important;width:60px!important;min-width:60px!important;min-height:25px!important;height:25px!important;padding:3px 9px!important;font-size:10px!important}
  #myMembership #logoutMember{right:14px!important;bottom:11px!important;min-width:60px!important;min-height:25px!important;padding:3px 9px!important;font-size:10px!important}
  #myMembership #clearLocalDevice{left:14px!important;bottom:13px!important;font-size:9px!important}
}


/* source: my-pages.css */
/* “我的”按任务分成收藏、消息、会员登录；收藏只存在当前浏览器。 */
.my-page-tabs{display:flex;align-items:stretch;gap:0;margin:16px 0 14px;border-bottom:1px solid var(--line)}
.my-page-tabs button{position:relative;flex:1;padding:10px 8px 9px;color:var(--muted);font-size:20px;font-weight:800;text-align:center}
.my-page-tabs button.active{color:var(--content-selection-color,var(--ink))}
.my-page-tabs button.active::after{content:"";position:absolute;right:18%;bottom:-1px;left:18%;height:3px;border-radius:3px;background:var(--content-selection-underline-color,#ff5966)}
.add-home-entry{display:flex;justify-content:flex-end;width:min(100%,550px);margin:12px 0 0}.add-home-entry button{width:calc((100% - 18px)/3);min-width:0;margin:0;padding:7px 8px;border-color:transparent;background:var(--topbar-background-color,#29314e);color:var(--topbar-text-color,#fff);font-size:13px;font-weight:700}.add-home-entry button:active{transform:scale(.985)}.install-app-dialog{width:min(360px,calc(100vw - 36px))!important}.install-app-dialog h2{margin:0 0 10px;font-size:18px}.install-app-dialog .system-action-copy{margin:0;color:var(--ink);font-size:14px;line-height:1.7}.install-app-dialog .dialog-actions{justify-content:center;margin-top:16px}.install-app-dialog .dialog-actions button{min-width:112px}
@media(max-width:720px){.add-home-entry{width:100%;margin-top:10px}.add-home-entry button{width:calc((100% - 16px)/3);height:34px;padding:6px 5px;font-size:13px}}
.my-page-tabs .menu-count{position:relative;top:-7px;display:inline-grid;min-width:16px;height:16px;margin-left:0;padding:0 3px;border-radius:99px;background:var(--coral);color:#fff;font-size:10px;line-height:16px;vertical-align:top}
.my-page-tabs .menu-count[hidden]{display:none!important}
.my-page{display:none}.my-page.active{display:block}
.favorite-list{display:grid;gap:0;max-width:760px}
.favorite-row{position:relative;display:grid;grid-template-columns:96px minmax(0,1fr);grid-template-rows:29px 22px minmax(7px,1fr) 38px;column-gap:12px;align-items:center;min-height:112px;padding:8px 42px 8px 0;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;box-shadow:none}
.favorite-row.is-unavailable{opacity:.62}.favorite-row.is-missing{background:transparent;color:var(--muted)}
.favorite-row-thumb{display:block;grid-column:1;grid-row:1/5;width:96px;height:96px;padding:0!important;overflow:hidden;border:0!important;border-radius:10px;background:#eef1f5!important}.favorite-row-thumb img{display:block;width:100%;height:100%;object-fit:contain;object-position:50% 50%}.favorite-row-thumb span{display:grid;place-items:center;width:100%;height:100%;font-size:12px}
.favorite-row-main{display:contents;min-width:0;text-align:left}.favorite-product-link{grid-column:2;grid-row:1;display:block;width:100%;padding:0;overflow:hidden;background:transparent;color:var(--ink);font-size:16px;font-weight:700;line-height:1.45;text-align:left;text-overflow:ellipsis;white-space:nowrap}.favorite-row-main small{grid-column:2;grid-row:2;display:block;overflow:hidden;color:var(--muted);font-size:14px;text-overflow:ellipsis;white-space:nowrap}
.favorite-row-actions{display:flex;grid-column:2;grid-row:4;align-items:center;justify-content:space-between;gap:8px;min-width:0}.favorite-price-row{display:flex;align-items:flex-end;gap:4px;min-width:0;overflow:hidden;white-space:nowrap}.favorite-price-row .price{display:inline-flex;align-items:flex-end;flex:0 0 auto;color:var(--coral);font-size:16px;font-weight:900;letter-spacing:-.4px;line-height:1}.favorite-price-row .price-value{display:inline-flex;align-items:flex-end;line-height:1}.favorite-price-row .currency{margin:0;color:inherit;font-size:10px;font-style:normal;font-weight:400;line-height:1}.favorite-price-row .price-amount{font:inherit;line-height:1;transform:translateY(2px)}.favorite-price-row .price-unit{align-self:flex-end;flex:0 0 auto;color:var(--muted);font-size:12px;line-height:1;white-space:nowrap}.favorite-price-row .member-price{display:inline-flex;align-items:flex-end;gap:3px;min-width:0;overflow:hidden;color:#8666e8;font-size:12px;font-weight:700;line-height:1;text-overflow:ellipsis;white-space:nowrap}.favorite-price-row .member-price .price-value{color:inherit;font-size:inherit;font-weight:inherit}.favorite-price-row .member-price .currency{font-size:10px}.favorite-price-row.price-compact{gap:2px}.favorite-price-row.price-compact .price{font-size:16px;letter-spacing:-.6px}.favorite-price-row.price-compact .member-price,.favorite-price-row.price-compact .price-unit{font-size:9px;letter-spacing:-.25px}.favorite-price-row.price-compact .currency{font-size:9px}.favorite-row-actions-right{display:flex;align-items:center;justify-content:flex-end;gap:8px;min-width:0}.favorite-row-actions-right .stock{white-space:nowrap;font-size:14px}.favorite-row-actions-right .secondary{margin:0;padding:6px 8px;color:var(--coral);font-size:12px;white-space:nowrap}
.favorite-remove{position:relative;z-index:1;grid-column:2;grid-row:1;justify-self:end;align-self:center;padding:3px 0!important;color:var(--muted)!important;font-size:16px!important;font-weight:700;line-height:1!important}.favorite-remove:hover{color:var(--coral)!important}
.product{position:relative}.product-favorite{position:absolute;z-index:2;top:7px;right:7px;display:grid;place-items:center;width:30px;height:30px;padding:0!important;border:1px solid #ffffffc9;border-radius:50%;background:#fffffff0!important;color:#697386!important;box-shadow:0 2px 7px #10172720;font-size:17px;line-height:1}.product-favorite.is-favorite{color:var(--coral)!important}.product-favorite:hover{color:var(--coral)!important}
#detailFavorite{display:grid;place-items:center;flex:0 0 38px;min-width:38px!important;width:38px;height:38px;padding:0!important;border:0;border-radius:10px;background:#f1f3f7;color:#697386;line-height:1}#productDetail #detailFavorite{color:#697386!important}#productDetail #detailFavorite.is-favorite{color:var(--coral)!important}#detailFavorite svg{width:19px;height:19px;fill:currentColor;stroke:currentColor;stroke-width:1.4;stroke-linejoin:round}#detailFavorite:not(.is-favorite) svg{fill:none}
.favorite-row-actions-right{margin-left:auto;text-align:right}
.favorite-row-actions-right{margin-left:auto!important}.favorite-action-button{height:38px;min-width:88px;margin:0;padding:0 12px!important;border:0!important;border-radius:10px!important;background:#ffb21b!important;color:#fff!important;font-size:14px!important;font-weight:800!important;line-height:38px!important;white-space:nowrap}.favorite-action-button:active{transform:scale(.97)}
@media(max-width:720px){.my-page-tabs{margin:12px 0}.my-page-tabs button{padding:8px 5px;font-size:20px}.favorite-list{gap:0}.favorite-row{grid-template-columns:88px minmax(0,1fr);grid-template-rows:23px 17px minmax(7px,1fr) 32px;column-gap:10px;min-height:104px;padding:7px 36px 7px 0;border-radius:0}.favorite-row-thumb{width:88px;height:88px;border-radius:9px}.favorite-product-link{font-size:14px}.favorite-row-main small{font-size:12px}.favorite-row-actions .price{font-size:14px}.favorite-row-actions-right{gap:6px}.favorite-row-actions-right .stock{font-size:12px}.favorite-remove{font-size:14px!important}.favorite-action-button{height:32px;min-width:76px;padding:0 9px!important;font-size:12px!important;line-height:32px!important}.product-favorite{top:5px;right:5px;width:28px;height:28px}}


/* source: storefront-member-shell.css */
/* 前台“我的”专用壳层：会员、收藏和客服会话只在本页内部排版。 */
#member,#member .my-page,#member .my-page-tabs,#member .my-consultations,#member .consultation-list,#member .member-card{width:100%;max-width:100%;min-width:0;overflow-x:clip}
#member .my-page-tabs{overscroll-behavior-x:contain}
#myFavorites .favorite-list,#myMessages .consultation-list,#myMembership .member-card{min-width:0;max-width:100%}
#myMessages .consultation-card,#myMessages .consultation-message,#myMessages .consultation-product,#myMessages form{min-width:0;max-width:100%}
#myMessages .consultation-message{overflow-wrap:anywhere}
#myMessages textarea,#myMessages input{box-sizing:border-box;min-width:0;max-width:100%}
@media(max-width:720px){
  #member{overflow-x:clip}
  #member .my-page-tabs{max-width:100%}
  #myMessages .consultation-list{overscroll-behavior:contain}
}


/* ===== shared-components ===== */

/* source: notice-dialog.css */
/* Only the single-message notice dialog is standardised here. */
#notice{
  width:min(360px,calc(100vw - 32px));
  max-width:360px;
  padding:23px 22px 19px;
  border:1px solid #e4e8f0;
  border-radius:14px;
  color:#242b3c;
  box-shadow:0 20px 70px #11182745;
}
#notice p{
  margin:0 0 17px;
  color:#242b3c;
  font-size:16px;
  line-height:1.65;
  text-align:left;
  overflow-wrap:anywhere;
}
#notice #closeNotice{
  display:block;
  min-width:88px;
  margin:0 auto;
  padding:8px 18px;
  border:1px solid #d4d9e5!important;
  border-radius:8px;
  background:#f7f8fa!important;
  color:#29314e!important;
  box-shadow:none!important;
  font-weight:700;
  line-height:1.4;
}
#notice #closeNotice:hover{
  border-color:#bfc6d3!important;
  background:#fff!important;
}
#notice #closeNotice:focus-visible{
  outline:0;
  border-color:#9ca7bd!important;
  box-shadow:0 0 0 3px #29314e1f!important;
}

@media(max-width:420px){
  #notice{padding:21px 18px 18px}
  #notice p{margin-bottom:16px}
}


/* source: page-title-unified.css */
/* Shared list-page title standard: matches the client cart title “商品明细”. */
#myOrders .page-intro{max-width:660px!important;padding:25px 0 14px!important}
#myOrders .page-intro h2,
#products .page-head h1,
#inventory .page-head h1,
#orders .page-head h1,
#config .page-head h1,
#consultations .page-head h1,
#operations .page-head h1{
  margin:2px 0 0!important;
  color:var(--ink)!important;
  font-size:27px!important;
  line-height:1.2!important;
  font-weight:700!important;
}
#products .page-head,
#orders .page-head,
#config .page-head,
#consultations .page-head{
  align-items:flex-start!important;
  height:44px!important;
  min-height:44px!important;
  margin:0 0 10px!important;
}

main:has(#consultations.view.active){padding-top:28px!important}

@media(max-width:720px){
  #myOrders .page-intro{margin-inline:5px!important;padding:20px 0 11px!important}
  #myOrders .page-intro h2,
  #products .page-head h1,
  #inventory .page-head h1,
  #orders .page-head h1,
  #config .page-head h1,
  #consultations .page-head h1,
  #operations .page-head h1{font-size:24px!important}
  #myOrders .page-intro h2{line-height:1.5!important}
  #products .page-head,
  #orders .page-head,
  #config .page-head,
  #consultations .page-head{height:36px!important;min-height:36px!important;margin:0 0 11px!important}
  #products .page-head span,
  #orders .page-head span,
  #config .page-head span,
  #consultations .page-head span{display:none!important}
  main:has(#consultations.view.active){padding:18px 12px 8px!important}
}


/* source: system-dialogs.css */
#notice{width:min(390px,calc(100vw - 28px));padding:21px}#notice p{margin:0;color:var(--ink);line-height:1.65;white-space:pre-wrap}.notice-actions{display:flex;justify-content:center;margin-top:18px}.notice-actions button{min-width:88px}.system-action-dialog{width:min(430px,calc(100vw - 28px));padding:22px}.system-action-dialog .form{margin:0}.system-action-dialog h2{margin:3px 0 8px;font-size:20px}.system-action-copy{margin:0;color:var(--muted);line-height:1.65;white-space:pre-wrap}.system-action-dialog .dialog-actions{justify-content:center;margin-top:20px}.system-action-dialog .dialog-actions button{min-width:88px}.system-action-dialog .dialog-actions .secondary{margin-top:0;background:#fff;color:var(--navy);border:1px solid var(--line)}.system-action-dialog .dialog-actions .primary{margin-top:0;box-shadow:none}.system-action-dialog input,.system-action-dialog textarea{margin-top:6px}.system-action-dialog textarea{min-height:92px}#inputDialogText[hidden],#inputDialogInputWrap[hidden],#inputDialogTextareaWrap[hidden]{display:none!important}@media(max-width:720px){#notice,.system-action-dialog{width:calc(100vw - 30px);padding:19px}.system-action-dialog .dialog-actions{gap:8px}.system-action-dialog .dialog-actions button{min-width:82px}}

.clear-local-dialog{width:min(470px,calc(100vw - 28px))}
.clear-local-dialog h2{margin-bottom:7px}
.clear-local-options{display:grid;gap:8px;margin-top:17px}
.clear-local-option{display:grid;grid-template-columns:22px minmax(0,1fr);gap:10px;align-items:center;min-height:56px;padding:10px 11px;border:1px solid var(--line);border-radius:10px;background:#fff;cursor:pointer}
.clear-local-option:has(input:checked){border-color:color-mix(in srgb,var(--theme-action-color,var(--coral)) 44%,var(--line));background:color-mix(in srgb,var(--theme-action-color,var(--coral)) 6%,#fff)}
.clear-local-option input{width:18px;height:18px;margin:0;accent-color:var(--theme-action-color,var(--coral))}
.clear-local-option b{display:block;color:var(--ink);font-size:14px;line-height:1.3}
.clear-local-option small{display:block;margin-top:3px;color:var(--muted);font-size:12px;line-height:1.35}
.clear-local-dialog .dialog-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:18px}
.clear-local-dialog .dialog-actions button{width:100%;min-width:0}
@media(max-width:720px){.clear-local-dialog{width:calc(100vw - 30px);padding:19px}.clear-local-options{gap:7px;margin-top:15px}.clear-local-option{min-height:54px;padding:9px 10px}.clear-local-option b{font-size:14px}.clear-local-option small{font-size:12px}.clear-local-dialog .dialog-actions{gap:9px}.clear-local-dialog .dialog-actions button{min-width:0}}


/* source: choice-controls-v1.css */
/* Delivery choices centre the selected marker and label as one compact group. */
.checkout-form .delivery-methods label{padding-right:8px;padding-left:8px}
.checkout-form .delivery-methods label.active:after{display:none}
.checkout-form .delivery-methods label.active:before{content:'✓';display:grid;place-items:center;width:15px;height:15px;flex:0 0 15px;margin-right:4px;border-radius:50%;background:var(--theme-action-color,var(--coral));color:var(--theme-action-text-color,#fff);font-size:10px;font-weight:900;line-height:1}


/* ===== adaptive-runtime ===== */

/* source: adaptive-layout.css */
:root{
  --app-visual-top:0px;
  --app-visual-width:100vw;
  --app-visual-height:100vh;
  --app-visual-bottom:100vh;
  --app-content-top:0px;
  --app-content-height:100vh;
  --app-keyboard-inset:0px;
}

html,body{max-width:100%;overflow-x:clip}
main,.view,.panel,dialog,form,section,article{min-width:0}
img,video,canvas,svg{max-width:100%}
[data-viewport-scroll]{min-height:0;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}

html:has(body.detail-open),body.detail-open{overflow:hidden;overscroll-behavior:none}
/* Backend mall detail is the staff version of the storefront detail page:
   one fixed header, one internal scroll root, and one bottom action row. */
html:has(body.backend-detail-open),body.backend-detail-open{overflow:hidden;overscroll-behavior:none}
body.backend-detail-open .topbar{position:fixed;z-index:50;top:0;right:0;left:0;width:100%}
body.backend-detail-open main{padding-top:48px}
/* Safari can intermittently drop a sticky header when its scroll root becomes
   overflow:hidden. Pin only the header while detail is open, then reserve the
   exact same flow height so product and action-bar geometry do not change. */
body.detail-open .topbar{position:fixed;z-index:50;top:0;right:0;left:0;width:100%}
body.detail-open main{padding-top:52px}
#productDetail.active[data-viewport-shell]{display:flex;flex-direction:column;width:100%;height:var(--app-content-height);min-height:0;max-height:var(--app-content-height);overflow:hidden}
#productDetail .detail-scroll{flex:1 1 0%;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;background:#fff}
#productDetail .detail-scroll-content{display:flow-root;min-height:0}
@media(max-width:720px){
  /* Preserve the iPhone gesture handoff buffer without making desktop cards
     appear scrollable when their content already fits. */
  #productDetail .detail-scroll-content{min-height:calc(100% + 1px)}
}
#productDetail .detail-back,#productDetail .detail-manage{position:absolute}

#consultationWorkbench .consultation-thread-list,#consultationWorkbench .consultation-admin-messages{min-height:0;overflow-x:hidden;overflow-y:auto}
main:has(#consultations.view.active){box-sizing:border-box;height:var(--app-content-height)!important;min-height:0;overflow:hidden}

#backendMallProductDetail:not([hidden]){display:flex;flex-direction:column;top:var(--app-content-top);bottom:0;height:auto;overflow:hidden;background:#fff}
#backendMallProductDetail .backend-detail-sheet{display:grid;grid-template-rows:minmax(0,1fr) auto;width:min(760px,100%);height:100%;min-height:0;margin:0 auto;background:#fff}
#backendMallProductDetail .backend-detail-scroll{min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;background:#fff}
#backendMallProductDetail .backend-detail-scroll-content{display:flow-root;min-height:calc(100% + 1px)}
#backendMallProductDetail .backend-detail-actionbar{position:relative;flex:0 0 auto}

@media(max-width:720px){
  #backendMallProductDetail:not([hidden]){overflow-y:auto}
  #backendMallProductDetail .backend-detail-sheet{display:block;height:auto;min-height:0}
  #backendMallProductDetail .backend-detail-scroll{overflow:visible}
}

@media(min-width:721px){
  #backendMallProductDetail.consultation-detail-modal:not([hidden]){top:0;bottom:0;height:auto}
  #backendMallProductDetail.consultation-detail-modal .backend-detail-sheet{height:min(820px,calc(var(--app-visual-height) - 76px));max-height:calc(var(--app-visual-height) - 76px);overflow:hidden}
  #backendMallProductDetail.consultation-detail-modal .backend-detail-scroll{overflow-y:auto}
}

@media(max-width:720px){
  body.detail-open main{padding-top:calc(48px + env(safe-area-inset-top))}
  body.backend-detail-open main{padding-top:calc(48px + env(safe-area-inset-top))}
  /* iOS home-screen apps can expose a visual/dynamic viewport that ends well
     above the physical screen bottom.  In standalone mode the stable layout
     viewport is the correct boundary for a bottom action bar. */
  html.ios-device.standalone-app #productDetail.active[data-viewport-shell]{height:calc(100vh - 48px - env(safe-area-inset-top));max-height:calc(100vh - 48px - env(safe-area-inset-top))}
}
@supports not (overflow:clip){html,body{overflow-x:hidden}}


/* 所有后台商品详情统一使用同一套桌面弹窗卡片，不仅限于客服入口。 */
@media(min-width:721px){
  #backendMallProductDetail.backend-product-detail:not([hidden]){top:0;right:0;bottom:0;left:0;height:auto;padding:24px;background:#1c243b73;overflow:hidden}
  #backendMallProductDetail.backend-product-detail .backend-detail-sheet{display:flex;flex-direction:column;width:min(560px,calc(100vw - 48px));height:auto;max-height:calc(100dvh - 48px);min-height:0;margin:0 auto;overflow:hidden;border-radius:18px;background:#fff;box-shadow:0 24px 72px #11182766}
  #backendMallProductDetail.backend-product-detail .backend-detail-scroll{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden!important;background:#fff}
  #backendMallProductDetail.backend-product-detail .detail-scroll-content{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}
  #backendMallProductDetail.backend-product-detail .detail-media{display:grid;flex:0 0 auto;width:100%;height:auto;aspect-ratio:3 / 4;min-height:0;max-height:none;margin:0;overflow:hidden;background:#eef0f3}
  #backendMallProductDetail.backend-product-detail .detail-media img{display:block;width:100%;height:100%;object-fit:contain;object-position:50% 50%}
  #backendMallProductDetail.backend-product-detail .detail-info{flex:0 0 auto;width:100%;min-width:0;min-height:0;margin:0;padding:12px 22px 14px;overflow:hidden;background:#fff}
  #backendMallProductDetail.backend-product-detail .backend-detail-actionbar{flex:0 0 auto;width:100%;margin:0;padding:10px 22px 14px;border-radius:0 0 18px 18px}
}

/* 后台商品详情：桌面端保持居中的弹窗卡片，图片与卡片同宽，卡片内不滚动。 */
@media(min-width:721px){
  #backendMallProductDetail.consultation-detail-modal:not([hidden]){top:0;right:0;bottom:0;left:0;height:auto;padding:24px;background:#1c243b73;overflow:hidden}
  #backendMallProductDetail.consultation-detail-modal .backend-detail-sheet{display:flex;flex-direction:column;width:min(560px,calc(100vw - 48px));height:auto;max-height:calc(100dvh - 48px);min-height:0;margin:0 auto;overflow:hidden;border-radius:18px;background:#fff;box-shadow:0 24px 72px #11182766}
  #backendMallProductDetail.consultation-detail-modal .backend-detail-scroll{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden!important;background:#fff}
  #backendMallProductDetail.consultation-detail-modal .detail-scroll-content{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}
  #backendMallProductDetail.consultation-detail-modal .detail-media{display:grid;flex:0 0 auto;width:100%;height:auto;aspect-ratio:3 / 4;min-height:0;max-height:none;margin:0;overflow:hidden;background:#eef0f3}
  #backendMallProductDetail.consultation-detail-modal .detail-media img{display:block;width:100%;height:100%;min-height:0;max-height:none;object-fit:contain}
  #backendMallProductDetail.consultation-detail-modal .detail-info{flex:0 0 auto;width:100%;min-width:0;min-height:0;margin:0;padding:12px 22px 14px;overflow:hidden;background:#fff}
  #backendMallProductDetail.consultation-detail-modal .detail-info h1{margin:5px 0 3px;line-height:1.3}
  #backendMallProductDetail.consultation-detail-modal .detail-description{overflow:visible;max-height:none}
  #backendMallProductDetail.consultation-detail-modal .backend-detail-actionbar{flex:0 0 auto;width:100%;margin:0;padding:10px 22px 14px;border-radius:0 0 18px 18px}
}


/* source: customer-chat-shell.css */
/* Frontend customer chat: one continuous conversation with one scroll root. */
html.customer-message-shell-open,
body.customer-message-shell-open{
  overflow:hidden;
  overscroll-behavior:none;
}

main.customer-message-shell{
  box-sizing:border-box;
  height:var(--app-content-height);
  min-height:0;
  max-height:var(--app-content-height);
  padding-bottom:0;
  overflow:hidden;
}

#member.view.active.customer-message-shell{
  box-sizing:border-box;
  display:grid;
  grid-template-rows:auto minmax(0,1fr);
  width:100%;
  height:100%;
  min-height:0;
  max-height:100%;
  padding-top:8px;
  overflow:hidden;
}

#member.customer-message-shell .my-page-tabs{
  margin:16px 0 6px;
}

#member.customer-message-shell #myMessages.active{
  display:block;
  min-height:0;
  overflow:hidden;
}

#member.customer-message-shell .customer-chat-shell{
  display:grid;
  grid-template-rows:auto minmax(0,1fr);
  width:100%;
  height:100%;
  min-height:0;
  margin:0;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  overflow:hidden;
}

#member.customer-message-shell .customer-chat-status{
  grid-row:1;
  position:static;
  display:flex;
  align-items:center;
  min-height:22px;
  margin:0;
  padding:0 0 2px;
  border:0;
  border-bottom:1px solid var(--line);
  border-radius:0;
  background:transparent;
  transform:none;
}

#member.customer-message-shell .customer-chat-status[hidden]{
  display:none;
}

#member.customer-message-shell .customer-chat-status .consultation-status{
  padding:0;
  border:0;
  background:transparent;
  color:var(--navy);
  font-size:13px;
  font-weight:800;
  line-height:20px;
}

#member.customer-message-shell .customer-chat-conversation{
  grid-row:2;
  display:block;
  min-height:0;
  padding:0;
  border:0;
  background:transparent;
  box-shadow:none;
  overflow:hidden;
}

#member.customer-message-shell .customer-chat-conversation>.consultation-card{
  display:grid;
  grid-template-rows:minmax(0,1fr) auto;
  width:100%;
  height:100%;
  min-height:0;
  margin:0;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  overflow:hidden;
}

#member.customer-message-shell .consultation-messages{
  min-height:0;
  max-height:none;
  margin:0;
  padding:10px 2px;
  background:transparent;
  overflow-x:hidden;
  overflow-y:auto;
  overscroll-behavior:contain;
  -webkit-overflow-scrolling:touch;
  touch-action:pan-y;
  scrollbar-width:none;
}

#member.customer-message-shell .consultation-messages::-webkit-scrollbar{
  display:none;
}

#member.customer-message-shell .consultation-reply{
  position:static;
  display:grid;
  grid-template-columns:auto auto minmax(0,1fr);
  align-items:center;
  gap:6px;
  width:100%;
  max-width:none;
  min-width:0;
  margin:0;
  padding:8px 0 calc(8px + env(safe-area-inset-bottom));
  border:0;
  border-top:1px solid var(--line);
  border-radius:0;
  background:var(--paper);
  box-shadow:none;
  transform:none;
}

#member.customer-message-shell .consultation-reply .consultation-image-input{
  display:none;
}

#member.customer-message-shell .consultation-reply button{
  min-width:44px;
  height:38px;
  margin:0;
  padding:0 9px;
}

#member.customer-message-shell .consultation-reply .consultation-text-input{
  box-sizing:border-box;
  display:block;
  width:100%;
  min-width:0;
  height:38px;
  margin:0;
  padding:7px 10px;
  border:1px solid var(--line);
  border-radius:9px;
  background:#fff;
  color:var(--ink);
  font:16px/1.35 "Microsoft YaHei",system-ui,sans-serif;
  outline:0;
}

@media(max-width:720px){
  #member.customer-message-shell .my-page-tabs{
    margin:12px 0 6px;
  }

  #member.customer-message-shell .consultation-reply button{
    min-width:42px;
    height:38px;
    padding:0 7px;
    font-size:13px;
  }

  html.ios-device.standalone-app:not([data-keyboard-open="true"]) main.customer-message-shell{
    height:calc(100vh - 48px - env(safe-area-inset-top));
    max-height:calc(100vh - 48px - env(safe-area-inset-top));
  }
}


/* source: font-scale-normalization.css */
/*
 * Shared screen typography scale.
 *
 * Keep this layer last in both bundles.  It intentionally does not target
 * product cards, order cards or print styles: those are business-dense
 * layouts with their own confirmed measurements.
 */
:root{
  --font-scale-12:12px;
  --font-scale-14:14px;
  --font-scale-16:16px;
  --font-scale-18:18px;
  --font-scale-20:20px;
  --font-scale-24:24px;
  --font-scale-28:28px;
}

/* Standard form controls outside the confirmed product/order card layouts. */
:is(#config,#consultations,.system-dialog,.navigation-dialog,.install-app-dialog)
  :is(input,select,textarea){font-size:var(--font-scale-16)}

/* Hints, timestamps, status supplements and small counters. */
:is(.hint,.help,.muted,.eyebrow,.field-note,.form-note,.page-head span,
    .config-tools-head span,.operation-section-head small,.operation-help,
    .promotion-selection-note,.promotion-pending-item small,.navigation-destination,
    .order-event-log,.reconciliation-card em,.consultation-message-meta,
    .consultation-status-copy,.system-action-copy small){font-size:var(--font-scale-12)}

/* Standard labels and non-primary controls. */
:is(.form label,.config-operation-card label,.operation-basic-grid>label,
    .operation-mode-options label,.config-theme-dialog .logo-mode-field,
    .navigation-apps button,.system-dialog .dialog-actions button,
    .add-home-entry button,.consultation-actions button){font-size:var(--font-scale-14)}

/* Small panel headings and ordinary dialog titles. */
:is(.panel-title h3,.operation-section-head b,.config-tool-card h3,
    .category-manager-head h2,.navigation-dialog h2,.install-app-dialog h2,
    .system-dialog h2,.consultation-admin-product b){font-size:var(--font-scale-18)}

/* My-page tabs retain their deliberate strong navigation role. */
.my-page-tabs button{font-size:var(--font-scale-20)}

/* Desktop page titles. */
:is(#myOrders .page-intro h2,#products .page-head h1,#orders .page-head h1,
    #config .page-head h1,#consultations .page-head h1){font-size:var(--font-scale-28)!important}

@media(max-width:720px){
  :is(#config,#consultations,.system-dialog,.navigation-dialog,.install-app-dialog)
    :is(input,select,textarea){font-size:var(--font-scale-16)}
  :is(#myOrders .page-intro h2,#products .page-head h1,#orders .page-head h1,
      #config .page-head h1,#consultations .page-head h1){font-size:var(--font-scale-24)!important}
  #shop .section-heading h2{font-size:20px;font-weight:600}
  .my-page-tabs button{font-size:18px;font-weight:600}
  #cart .checkout-page-title h2{font-size:22px!important;font-weight:600!important}
  #myOrders .page-intro h2{font-size:22px!important;font-weight:600!important}
}

