/* Auto-split from xy-member.css — do not hand-edit large chunks; edit source packs or re-run tests/split_xy_member_css.py */
/* Member account portal ? B2B Trust & Authority; brand via --xy-skin-* only */
*{box-sizing:border-box}
body.xy-m-body{
  margin:0;
  min-height:100vh;
  font-family:var(--xy-ui-font,"Segoe UI","Microsoft YaHei",Arial,sans-serif);
  color:var(--xy-ui-ink,var(--xy-skin-ink,#1a1d21));
  background:var(--xy-ui-bg,#f4f3f1);
  -webkit-font-smoothing:antialiased;
  touch-action:manipulation;
}
.xy-m-wrap{
  max-width:420px;
  margin:0 auto;
  padding:64px 24px 80px;
}
.xy-m-wrap.xy-m-wide{max-width:860px}
.xy-m-brand{
  display:flex;
  align-items:center;
  justify-content:center;
  margin-bottom:48px;
  text-align:center;
}
.xy-m-brand a{color:inherit;text-decoration:none;cursor:pointer}
.xy-m-brand img{
  max-height:36px;
  max-width:160px;
  display:inline-block;
  vertical-align:middle;
}
.xy-m-brand strong{
  display:block;
  margin-top:10px;
  font-size:12px;
  font-weight:500;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--xy-ui-muted,#6a727c);
}

.xy-m-card{
  background:transparent;
  border:0;
  border-radius:0;
  padding:0;
}
.xy-m-hero{margin:0 0 24px}
.xy-m-hero-row{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:20px 28px;
  flex-wrap:wrap;
}
.xy-m-hero-text{min-width:0;flex:1}
.xy-m-hero-row .xy-m-quick-btn{flex-shrink:0;margin:0}
.xy-m-card h1,
.xy-m-hero h1{
  margin:0 0 6px;
  font-size:28px;
  font-weight:600;
  letter-spacing:-.03em;
  line-height:1.15;
  color:var(--xy-ui-ink,var(--xy-skin-ink,#1a1d21));
}
.xy-m-card .sub,
.xy-m-hero .sub{
  margin:0;
  color:var(--xy-ui-muted,#6a727c);
  font-size:14px;
  line-height:1.5;
  font-weight:400;
}
.xy-m-hero .sub{margin-top:2px}

/* Form fields */
.xy-m-form{margin:0;padding:0;border:0}
.xy-m-field{margin-bottom:22px}
.xy-m-field label{
  display:block;
  margin-bottom:8px;
  font-size:11px;
  font-weight:500;
  color:var(--xy-ui-muted,#6a727c);
  letter-spacing:.1em;
  text-transform:uppercase;
}
.xy-m-field input:not([type="checkbox"]):not([type="radio"]){
  width:100%;
  max-width:100%;
  height:48px;
  padding:0;
  border:0;
  border-bottom:1px solid var(--xy-ui-line,#e6e8eb);
  border-radius:0;
  background:transparent;
  color:var(--xy-ui-ink,var(--xy-skin-ink,#1a1d21));
  font:400 16px/1.4 var(--xy-ui-font,inherit);
  transition:border-color .2s ease;
}
.xy-m-field input:not([type="checkbox"]):not([type="radio"]):focus{
  outline:none;
  border-color:var(--xy-skin-primary);
}
.xy-m-field.is-focused label{
  color:var(--xy-skin-primary);
  transform:scale(1.02);
  transform-origin:left center;
}
.xy-m-field label{
  transition:color .2s ease,transform .2s ease;
}
.xy-m-field input:not([type="checkbox"]):not([type="radio"]):focus-visible{
  box-shadow:0 2px 0 0 var(--xy-skin-primary);
}
.xy-m-field input:not([type="checkbox"]):not([type="radio"]):disabled{
  background:transparent;
  color:var(--xy-ui-muted,#6a727c);
  border-bottom-style:dashed;
  opacity:.85;
}

/* CTA ? single brand primary */
.xy-m-btn{
  display:inline-block;
  width:auto;
  min-width:148px;
  min-height:46px;
  height:46px;
  margin-top:20px;
  padding:0 32px;
  border:0;
  border-radius:var(--xy-ui-radius,2px);
  background:var(--xy-skin-primary);
  color:#fff;
  font:600 14px/46px var(--xy-ui-font,inherit);
  letter-spacing:.04em;
  text-align:center;
  text-decoration:none;
  cursor:pointer;
  transition:background .2s ease,opacity .2s ease;
}
.xy-m-btn:hover{background:var(--xy-skin-accent);color:#fff}
.xy-m-btn:active{opacity:.9}
.xy-m-btn:disabled,.xy-m-btn.is-loading[disabled]{
  opacity:.7;
  cursor:not-allowed;
  pointer-events:none;
}
.xy-m-btn:focus-visible{outline:2px solid var(--xy-skin-primary);outline-offset:3px}
.xy-m-btn-block{display:block;width:100%;padding:0}
.xy-m-btn-inline{
  display:inline-block;
  width:auto;
  min-width:160px;
  padding:0 28px;
  margin-top:20px;
}
.xy-m-form-actions{margin-top:8px;padding-top:8px}

.xy-m-links{
  margin-top:28px;
  text-align:center;
  font-size:13px;
  color:var(--xy-ui-muted,#6a727c);
}
.xy-m-links a{
  color:var(--xy-ui-ink,var(--xy-skin-ink,#1a1d21));
  text-decoration:none;
  margin:0 10px;
  border-bottom:1px solid transparent;
  cursor:pointer;
  transition:color .2s ease,border-color .2s ease;
}
.xy-m-links a:hover{
  color:var(--xy-skin-primary);
  border-bottom-color:var(--xy-skin-primary);
}
.xy-m-foot{margin-top:40px;opacity:.75}
.xy-m-foot a{
  font-size:12px;
  letter-spacing:.04em;
  text-transform:uppercase;
  color:var(--xy-ui-muted,#6a727c);
}

/* Nav tabs */
.xy-m-nav{
  display:flex;
  align-items:stretch;
  gap:4px 0;
  flex-wrap:wrap;
  margin:0 0 28px;
  padding:0;
  border-bottom:1px solid var(--xy-ui-line,#e6e8eb);
}
.xy-m-nav a{
  position:relative;
  display:inline-flex;
  align-items:center;
  box-sizing:border-box;
  height:44px;
  min-height:44px;
  padding:0 18px;
  margin:0 0 -1px;
  border:0;
  border-radius:0;
  background:transparent;
  font-size:13px;
  font-weight:500;
  line-height:1.2;
  letter-spacing:.02em;
  color:var(--xy-ui-muted,#6a727c);
  text-decoration:none;
  white-space:nowrap;
  cursor:pointer;
  box-shadow:inset 0 -2px 0 transparent;
  transition:color .2s ease,box-shadow .2s ease;
  -webkit-tap-highlight-color:transparent;
}
.xy-m-nav a:first-child{padding-left:0}
.xy-m-nav a.is-on{
  color:var(--xy-ui-ink,var(--xy-skin-ink,#1a1d21));
  font-weight:600;
  box-shadow:inset 0 -2px 0 var(--xy-skin-primary);
}
.xy-m-nav a:hover{color:var(--xy-skin-primary)}
.xy-m-nav a:focus{outline:none}
.xy-m-nav a:focus-visible{color:var(--xy-skin-primary)}

/* Summary metrics */

/* Overview todo action cards */

.xy-m-btn-primary{
  background:var(--xy-skin-primary);
  color:#fff;
  border:0;
  text-decoration:none;
}
.xy-m-btn-primary:hover{background:var(--xy-skin-accent);color:#fff}

/* Favorites list */

/* Unified account panel (overview) */

/* Legacy strips (orders / other pages) */
.xy-m-meta{
  display:flex;
  flex-wrap:wrap;
  gap:4px 0;
  margin:0 0 24px;
  font-size:12px;
  letter-spacing:.02em;
  color:var(--xy-ui-muted,#6a727c);
}
.xy-m-meta span{display:inline}
.xy-m-meta span + span::before{
  content:"?";
  display:inline-block;
  margin:0 10px;
  opacity:.45;
}
.xy-m-meta-inline{
  margin-left:12px;
  font-size:13px;
  color:var(--xy-ui-muted,#6a727c);
  vertical-align:middle;
  font-weight:400;
}
.xy-m-hint{
  margin:0 0 24px;
  padding:0 0 0 14px;
  border:0;
  border-left:2px solid var(--xy-skin-primary);
  background:transparent;
  font-size:14px;
  line-height:1.55;
  color:var(--xy-ui-ink,var(--xy-skin-ink,#1a1d21));
}
.xy-m-hint a{
  color:var(--xy-skin-primary);
  font-weight:600;
  text-decoration:none;
  margin-left:4px;
  white-space:nowrap;
  cursor:pointer;
}
.xy-m-hint a:hover{text-decoration:underline}

.xy-m-quick{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px 24px;
  margin:0 0 28px;
  padding:0 0 24px;
  border-bottom:1px solid var(--xy-ui-line,#e6e8eb);
}
.xy-m-quick-links{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px 0;
  font-size:14px;
}
.xy-m-quick-links a{
  color:var(--xy-ui-ink,var(--xy-skin-ink,#1a1d21));
  text-decoration:none;
  cursor:pointer;
}
.xy-m-quick-links a:hover{color:var(--xy-skin-primary)}
.xy-m-quick-links .xy-m-sep{
  display:inline-block;
  margin:0 14px;
  color:var(--xy-ui-line,#e6e8eb);
  user-select:none;
}
.xy-m-quick-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  height:42px;
  padding:0 20px;
  border-radius:var(--xy-ui-radius,2px);
  border:1px solid var(--xy-ui-line,#e6e8eb);
  background:transparent;
  color:var(--xy-ui-ink,var(--xy-skin-ink,#1a1d21));
  font-size:13px;
  font-weight:500;
  letter-spacing:.02em;
  text-decoration:none;
  cursor:pointer;
  transition:border-color .2s ease,color .2s ease,background .2s ease;
}
.xy-m-quick-btn:hover{
  border-color:var(--xy-skin-primary);
  color:var(--xy-skin-primary);
}
.xy-m-quick-primary{
  border-color:var(--xy-skin-primary);
  background:var(--xy-skin-primary);
  color:#fff;
  font-weight:600;
}
.xy-m-quick-primary:hover{
  background:var(--xy-skin-accent);
  border-color:var(--xy-skin-accent);
  color:#fff;
}
.xy-m-quick-primary:focus-visible{outline:2px solid var(--xy-skin-primary);outline-offset:3px}

.xy-m-hero .sub .xy-m-badge{margin-right:4px;vertical-align:middle}
.xy-m-section{margin:0}
.xy-m-sec-head{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:16px;
  margin:0 0 14px;
}
.xy-m-sec-head-spaced{margin-top:8px}
.xy-m-sec-title{
  font-size:16px;
  font-weight:600;
  letter-spacing:-.02em;
  color:var(--xy-ui-ink,var(--xy-skin-ink,#1a1d21));
  margin:0;
  padding:0;
  border:0;
}
.xy-m-sec-note{
  font-size:12px;
  color:var(--xy-ui-muted,#6a727c);
  letter-spacing:.02em;
}
.xy-m-empty{
  padding:28px 4px 8px;
  text-align:left;
}
.xy-m-empty-icon{
  display:block;
  width:48px;
  height:48px;
  margin:0 0 14px;
  color:var(--xy-skin-primary,var(--xy-ui-muted,#6a727c));
  opacity:.72;
}
.xy-m-empty-icon svg{
  display:block;
  width:100%;
  height:100%;
}
.xy-m-empty p{
  margin:0;
  color:var(--xy-ui-muted,#6a727c);
  font-size:14px;
  line-height:1.65;
  max-width:34em;
}
.xy-m-empty .xy-m-btn{margin-top:16px}

/* Inquiry / order cards */
.xy-m-text-link{
  color:var(--xy-skin-primary);
  font-weight:600;
  text-decoration:none;
  border-bottom:1px solid transparent;
}
.xy-m-text-link:hover{border-bottom-color:currentColor}

/* Table (order items / fallback) */
.xy-m-table{width:100%;border-collapse:collapse;font-size:14px}
.xy-m-table-dense th,.xy-m-table-dense td{padding:16px 8px}
.xy-m-table-dense tbody td{vertical-align:middle}
.xy-m-table th,.xy-m-table td{
  border-bottom:1px solid var(--xy-ui-line,#e6e8eb);
  padding:18px 10px;
  text-align:left;
  vertical-align:top;
}
.xy-m-table thead th{
  padding-top:0;
  padding-bottom:12px;
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.08em;
  color:var(--xy-ui-muted,#6a727c);
  font-weight:500;
  border-bottom-color:var(--xy-ui-ink,var(--xy-skin-ink,#1a1d21));
}
.xy-m-table tbody tr.xy-m-row-link{transition:background .15s ease}
.xy-m-table tbody tr.xy-m-row-link:hover{background:rgba(0,0,0,.02)}
.xy-m-table tbody tr.xy-m-row-link a{color:inherit;text-decoration:none}
.xy-m-table tbody tr.xy-m-row-link a.xy-m-prod{font-weight:500;color:var(--xy-ui-ink,var(--xy-skin-ink,#1a1d21))}
.xy-m-table tbody tr.xy-m-row-link a.xy-m-prod:hover{color:var(--xy-skin-primary)}
.xy-m-table tbody tr:last-child td{border-bottom:0}
.xy-m-col-id{width:48px;color:var(--xy-ui-muted,#6a727c);font-variant-numeric:tabular-nums;font-size:13px}
.xy-m-col-time{white-space:nowrap;color:var(--xy-ui-muted,#6a727c);font-size:13px;font-variant-numeric:tabular-nums}
.xy-m-col-status{white-space:nowrap}
.xy-m-col-qty{width:72px;font-variant-numeric:tabular-nums}
.xy-m-prod{display:block;font-weight:500;color:var(--xy-ui-ink,var(--xy-skin-ink,#1a1d21));text-decoration:none}
.xy-m-prod:hover{color:var(--xy-skin-primary)}
.xy-m-excerpt{
  display:block;
  margin-top:5px;
  font-size:13px;
  color:var(--xy-ui-muted,#6a727c);
  line-height:1.45;
  font-weight:400;
}

/* Status badges ? filled, high contrast */
.xy-m-badge{
  display:inline-block;
  padding:4px 10px;
  border-radius:var(--xy-ui-radius,2px);
  border:1px solid transparent;
  font-size:11px;
  font-weight:600;
  letter-spacing:.04em;
  line-height:1.45;
  vertical-align:middle;
  white-space:nowrap;
}
.xy-m-badge.is-replied,
.xy-m-badge.is-confirmed{
  background:#e8f5ef;
  border-color:#b7d4c9;
  color:#1f6b57;
}
.xy-m-badge.is-shipped{
  background:#e8eef8;
  border-color:#b7c5d9;
  color:#2c4a7c;
}
.xy-m-badge.is-pending{
  background:#fef9e7;
  border-color:#f0d78c;
  color:#8a5a18;
}
.xy-m-badge.is-cancelled,
.xy-m-badge.is-closed{
  background:#f3f4f6;
  border-color:#e6e8eb;
  color:#6a727c;
}

.xy-m-cards{display:none;list-style:none;margin:0;padding:0}
.xy-m-card-item{
  display:block;
  padding:20px 0;
  margin:0;
  border-bottom:1px solid var(--xy-ui-line,#e6e8eb);
  text-decoration:none;
  color:inherit;
  background:transparent;
  cursor:pointer;
  transition:opacity .15s ease;
}
.xy-m-card-item:last-child{border-bottom:0}
.xy-m-card-item:hover{opacity:.82}
.xy-m-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.xy-m-card-top strong{font-size:15px;line-height:1.35;font-weight:500}
.xy-m-card-meta{margin-top:10px;font-size:12px;color:var(--xy-ui-muted,#6a727c);letter-spacing:.02em}

.xy-m-back{margin:0 0 12px;font-size:13px}
.xy-m-back a{
  color:var(--xy-ui-muted,#6a727c);
  text-decoration:none;
  cursor:pointer;
}
.xy-m-back a:hover{color:var(--xy-skin-primary)}

.xy-m-dl{
  margin:8px 0 0;
  display:grid;
  grid-template-columns:132px 1fr;
  gap:18px 28px;
  font-size:14px;
  padding-top:8px;
  border-top:1px solid var(--xy-ui-line,#e6e8eb);
}
.xy-m-dl-inpanel{
  margin:0;
  padding:18px 22px 22px;
  border-top:0;
  gap:14px 24px;
}
.xy-m-dl dt{
  margin:0;
  color:var(--xy-ui-muted,#6a727c);
  font-size:11px;
  font-weight:500;
  letter-spacing:.06em;
  text-transform:uppercase;
  padding-top:3px;
}
.xy-m-dl dd{margin:0;word-break:break-word;color:var(--xy-ui-ink,var(--xy-skin-ink,#1a1d21));line-height:1.5}
.xy-m-dl-body{white-space:pre-wrap;line-height:1.65}
.xy-m-muted{color:var(--xy-ui-muted,#6a727c);font-weight:400}

/* Inquiry replies (detail) ? kept for backward compat */

/* Inquiry conversation timeline */

/* Lifecycle timeline (inquiry ↔ order) */
.xy-m-quick-outline{
  background:transparent;
  border:1px solid var(--xy-skin-primary,#FF9E16);
  color:var(--xy-skin-primary,#FF9E16);
}
.xy-m-quick-outline:hover{
  background:rgba(255,158,22,.08);
}
/* Downloads / notices / orders share .xy-m-inbox-* list rows (see inbox section below). */
.xy-m-quick-btn.xy-m-quick-danger{
  color:#9b2c2c;
  border-color:#f0c4c0;
  background:linear-gradient(180deg,#fff7f6 0%,#fff 70%);
}
.xy-m-quick-btn.xy-m-quick-danger:hover{
  color:#7f1d1d;
  border-color:#e8a8a3;
  background:#fff;
}
.xy-m-field-hint{
  margin:6px 0 0;
  font-size:12px;
  line-height:1.5;
  color:var(--xy-ui-muted,#6a727c);
}
.xy-m-empty-act{margin-top:14px}

/* Order status progress */

/* Email verify banner */

@media (max-width:768px){
  .xy-m-tl-bubble{max-width:92%}
  .xy-m-progress{padding:18px 4px 10px}
  .xy-m-progress-label{font-size:11px}
  .xy-m-progress-step:not(:last-child)::after{
    left:calc(50% + 8px);
    right:calc(-50% + 8px);
  }
}

/* Mobile fixed bottom bar (dashboard) */

/* Order checkout shipping — profile-like boxed grid inside panel */
.xy-m-form-section-head{
  margin:28px 0 18px;
  padding-top:22px;
  border-top:1px solid var(--xy-ui-line,#e6e8eb);
}
.xy-m-form-section-head h2{
  margin:0 0 6px;
  font-size:16px;
  font-weight:600;
  color:var(--xy-ui-ink,inherit);
}
.xy-m-form-section-head p{
  margin:0;
  font-size:13px;
  color:var(--xy-ui-muted,#6a727c);
  line-height:1.45;
}

/* Profile form — card sections, boxed inputs, primary save */
.xy-m-btn-link{
  appearance:none;
  border:0;
  background:none;
  padding:0;
  font:inherit;
  font-size:13px;
  font-weight:600;
  color:var(--xy-skin-primary,#e88a0a);
  cursor:pointer;
  text-decoration:underline;
  text-underline-offset:2px;
}
.xy-m-btn-link:hover{color:#c67608}
.xy-m-postal-rec{
  color:#8a5a18;
  font-weight:700;
}
/* Notify row — text left, compact check right (password / security prefs) */

/* Password form — boxed inputs, primary CTA */
/* :not() matches base underline rule (0,3,1) so boxed styles win */

/* Security prefs panel (password page) */

/* Security + danger panel bodies (password page) */
.xy-m-empty-panel{
  margin:0;
  padding:36px 22px;
  background:var(--xy-ui-surface,#fff);
  border:1px solid var(--xy-ui-line,#e6e8eb);
  border-radius:var(--xy-ui-radius,2px);
}
.xy-m-empty-panel .xy-m-btn{margin-top:16px}

/* Overview: 30-day inquiry CSS bar chart */
.xy-m-field-check{margin-bottom:22px}
.xy-m-field-hint{
  display:block;
  margin:8px 0 0 24px;
  font-size:12px;
  color:var(--xy-ui-muted,#6a727c);
  line-height:1.45;
}

.xy-m-actions{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:12px 24px;
  margin-top:40px;
  padding-top:28px;
  border-top:1px solid var(--xy-ui-line,#e6e8eb);
}
.xy-m-actions a.xy-m-text{
  font-size:14px;
  color:var(--xy-ui-ink,var(--xy-skin-ink,#1a1d21));
  text-decoration:none;
  border-bottom:1px solid transparent;
  cursor:pointer;
}
.xy-m-actions a.xy-m-text:hover{
  color:var(--xy-skin-primary);
  border-bottom-color:currentColor;
}
@media (max-width:640px){
  .xy-m-wrap{padding:40px 20px 64px}
  .xy-m-brand{margin-bottom:36px}
  .xy-m-card h1,
  .xy-m-hero h1{font-size:24px}
  .xy-m-hero-row{align-items:stretch}
  .xy-m-hero-row .xy-m-quick-btn{width:100%}
  .xy-m-nav a{height:44px;min-height:44px;padding:0 12px;font-size:13px}
  .xy-m-nav a:first-child{padding-left:0}
  .xy-m-stats{grid-template-columns:1fr}
  .xy-m-todo-grid{grid-template-columns:1fr 1fr}
  .xy-m-todo-card{min-height:104px}
  .xy-m-fav-item{flex-wrap:wrap}
  .xy-m-fav-side{
    align-items:stretch;
    width:100%;
  }
  .xy-m-fav-action-stack{
    width:100%;
    min-width:0;
    max-width:280px;
    margin-left:auto;
    flex-direction:row;
    flex-wrap:wrap;
  }
  .xy-m-fav-action-stack > form{
    flex:1 1 calc(50% - 4px);
    min-width:0;
  }
  .xy-m-fav-action-stack .xy-m-btn{
    min-height:44px;
    padding:10px 14px;
  }
  .xy-m-stat{min-height:64px;padding:14px 16px}
  .xy-m-stat-num{font-size:22px}
  .xy-m-panel{margin-bottom:16px}
  .xy-m-panel-head{padding:12px 16px}
  .xy-m-panel-grid{grid-template-columns:1fr 1fr}
  .xy-m-panel-cell{
    padding:14px 16px;
    border-right:0;
    border-bottom:1px solid var(--xy-ui-line,#e6e8eb);
  }
  .xy-m-panel-cell:nth-child(-n+2){border-bottom:1px solid var(--xy-ui-line,#e6e8eb)}
  .xy-m-panel-cell:last-child{border-bottom:0}
  .xy-m-panel .xy-m-hint{padding:12px 16px}
  .xy-m-panel-links{
    padding:10px 12px 12px;
    gap:6px;
  }
  .xy-m-panel-links a{
    flex:1 1 calc(50% - 6px);
    justify-content:center;
    min-height:38px;
    padding:0 10px;
  }
  .xy-m-chart{padding:12px 14px 8px;min-height:112px;height:112px}
  .xy-m-panel .xy-m-login-log{padding:0 16px 4px}
  .xy-m-login-log-foot,
  .xy-m-panel .xy-m-collapsible-foot{padding:0 16px 12px}
  .xy-m-login-log li{
    flex-direction:column;
    align-items:flex-start;
    gap:8px;
    padding:12px 0;
  }
  .xy-m-login-log-ua{
    max-width:100%;
    text-align:left;
    align-self:flex-start;
  }
  .xy-m-account{flex-direction:column;align-items:flex-start;gap:14px}
  .xy-m-account-edit{margin-left:0}
  .xy-m-quick{gap:16px;margin-bottom:24px;padding-bottom:20px}
  .xy-m-quick-btn{width:100%}
  .xy-m-btn{width:100%;padding:0}
  .xy-m-inq{
    flex-direction:column;
    gap:12px;
    padding:16px 14px;
  }
  .xy-m-inq-view{align-self:flex-start}
  .xy-m-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
  .xy-m-dl{grid-template-columns:1fr;gap:4px 0}
  .xy-m-dl dt{padding-top:16px;border-top:1px solid var(--xy-ui-line,#e6e8eb)}
  .xy-m-dl dt:first-child{border-top:0;padding-top:0}
  .xy-m-dl-inpanel{padding:16px}
  .xy-m-panel-form{padding:18px 16px 4px}
  .xy-m-profile-body{padding:16px}
  .xy-m-password-body{padding:16px}
  .xy-m-security-prefs-body{padding:16px}
  .xy-m-security-body,
  .xy-m-danger-body{padding:16px}
  .xy-m-password-actions .xy-m-btn{width:100%;min-width:0}
  .xy-m-security-prefs-actions .xy-m-btn{width:100%;min-width:0}
  .xy-m-security-body .xy-m-btn-outline,
  .xy-m-danger-body .xy-m-btn-danger{width:100%;min-width:0}
  .xy-m-profile-grid{grid-template-columns:1fr;gap:16px}
  .xy-m-profile-row-2col{grid-template-columns:1fr;gap:16px}
  .xy-m-profile-save{
    padding:14px 16px;
    justify-content:stretch;
  }
  .xy-m-profile-save .xy-m-btn{width:100%;min-width:0}
  .xy-m-empty-panel{padding:28px 16px}
}

@media (prefers-reduced-motion:reduce){
  .xy-m-btn,
  .xy-m-nav a,
  .xy-m-quick-btn,
  .xy-m-inq,
  .xy-m-stat,
  .xy-m-field input,
  .xy-m-links a,
  .xy-m-profile-form .xy-m-field input,
  .xy-m-profile-form .xy-m-field select,
  .xy-m-password-form .xy-m-field input:not([type="checkbox"]):not([type="radio"]),
  .xy-m-auth-form .xy-m-field input:not([type="checkbox"]):not([type="radio"]),
  .xy-m-inq-follow .xy-m-textarea,
  .xy-m-profile-notify,
  .xy-m-notify-card,
  .xy-m-notify-row,
  .xy-m-notify-card-check{
    transition:none;
  }
}

/* Split layout (login / register / forgot / reset) */
/* language switch — pill group on auth pages */
/* login inline alert (kept for no-JS; auth pages prefer toast) */
.xy-m-alert{
  margin:0 0 20px;
  padding:12px 14px;
  border-radius:var(--xy-ui-radius,2px);
  font-size:13px;
  line-height:1.5;
}
.xy-m-alert.is-err{
  background:#fdf0ef;
  border:1px solid #f0c4c0;
  color:#a93226;
}
.xy-m-alert.is-ok{
  background:#eef8f3;
  border:1px solid #b8e0d0;
  color:#1f6b57;
}
.xy-m-alert.is-toasted{display:none!important}

/* floating toast — login / register 冒泡 */
/* Auth forms — boxed inputs aligned with profile/password */
/* password show/hide toggle */
.xy-m-pw-wrap{position:relative}
.xy-m-pw-wrap input:not([type="checkbox"]):not([type="radio"]){padding-right:44px}
.xy-m-pw-wrap .xy-m-pw-eye{
  position:absolute;
  right:0;
  top:50%;
  transform:translateY(-50%);
  width:40px;
  height:40px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:none;
  border:0;
  cursor:pointer;
  color:var(--xy-ui-muted,#6a727c);
  font-size:15px;
  padding:0;
  line-height:1;
  -webkit-tap-highlight-color:transparent;
}
.xy-m-pw-eye:hover{color:var(--xy-ui-ink,var(--xy-skin-ink,#1a1d21))}
.xy-m-pw-eye:focus-visible{outline:2px solid var(--xy-skin-primary);outline-offset:2px}
/* form submit loading */
.xy-m-btn.is-loading{opacity:.7;pointer-events:none;position:relative}
.xy-m-btn.is-loading::after{
  content:"";
  display:inline-block;
  width:14px;
  height:14px;
  border:2px solid rgba(255,255,255,.4);
  border-top-color:#fff;
  border-radius:50%;
  animation:xy-spin .7s linear infinite;
  margin-left:10px;
  vertical-align:middle;
}
@keyframes xy-spin{to{transform:rotate(360deg)}}

/* ?? Dashboard layout (logged-in pages) ??????????????????????????????? */
.xy-m-dash{
  display:flex;
  min-height:100vh;
  background:var(--xy-ui-bg,#f4f3f1);
  align-items:stretch;
}
/* Sidebar */
.xy-m-sidebar{
  flex:0 0 240px;
  display:flex;
  flex-direction:column;
  background:var(--xy-ui-surface,#fff);
  border-right:1px solid var(--xy-ui-line,#e6e8eb);
  position:sticky;
  top:0;
  height:100vh;
  max-height:100vh;
  overflow:hidden;
}
.xy-m-sidebar-head{
  flex-shrink:0;
  border-bottom:1px solid var(--xy-ui-line,#e6e8eb);
}
.xy-m-sidebar-brand{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:8px;
  padding:20px 18px 16px;
  text-decoration:none;
  color:inherit;
}
.xy-m-sidebar-brand img{
  max-height:30px;
  max-width:128px;
  object-fit:contain;
}
.xy-m-sidebar-brand strong{
  font-size:12px;
  font-weight:600;
  letter-spacing:.01em;
  line-height:1.35;
  color:var(--xy-ui-ink,var(--xy-skin-ink,#1a1d21));
  word-break:break-word;
}
.xy-m-sidebar-user{
  padding:0 14px 14px;
}
.xy-m-sidebar-user-row{
  display:flex;
  align-items:center;
  gap:11px;
  min-width:0;
  padding:10px 12px;
  border-radius:8px;
  background:linear-gradient(135deg,#fafafa 0%,#f5f6f7 100%);
  border:1px solid var(--xy-ui-line,#e6e8eb);
}
.xy-m-sidebar-user-avatar{
  flex-shrink:0;
  width:34px;
  height:34px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:var(--xy-skin-primary);
  color:#fff;
  font-size:13px;
  font-weight:700;
  letter-spacing:.02em;
  line-height:1;
  box-shadow:0 2px 6px rgba(0,0,0,.08);
}
.xy-m-sidebar-user-meta{
  min-width:0;
  flex:1;
}
.xy-m-sidebar-user-name{
  font-size:13px;
  font-weight:600;
  color:var(--xy-ui-ink,var(--xy-skin-ink,#1a1d21));
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  line-height:1.3;
}
.xy-m-sidebar-user-email{
  margin-top:2px;
  font-size:11px;
  color:var(--xy-ui-muted,#6a727c);
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  line-height:1.35;
}
/* Sidebar nav */
.xy-m-sidebar-nav{
  flex:1 1 auto;
  min-height:0;
  overflow-y:auto;
  overflow-x:hidden;
  -webkit-overflow-scrolling:touch;
  padding:10px 0 8px;
}
.xy-m-sidenav{
  padding:0;
  list-style:none;
  margin:0;
}
.xy-m-sidenav-item{margin:0;padding:0 10px}
.xy-m-sidenav-item + .xy-m-sidenav-item{margin-top:2px}
.xy-m-sidenav-link{
  position:relative;
  display:flex;
  align-items:center;
  gap:10px;
  min-height:40px;
  padding:0 12px 0 14px;
  border-radius:8px;
  font-size:13px;
  font-weight:500;
  color:var(--xy-ui-muted,#6a727c);
  text-decoration:none;
  cursor:pointer;
  transition:background .18s ease,color .18s ease,box-shadow .18s ease;
  white-space:nowrap;
}
.xy-m-sidenav-link svg{
  flex-shrink:0;
  width:16px;
  height:16px;
  opacity:.72;
  transition:opacity .18s ease,color .18s ease;
}
.xy-m-sidenav-label{
  flex:1 1 auto;
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
}
.xy-m-sidenav-link .xy-m-badge-num{
  margin-left:auto;
  flex:0 0 auto;
}
.xy-m-sidenav-link:hover{
  background:rgba(0,0,0,.04);
  color:var(--xy-ui-ink,var(--xy-skin-ink,#1a1d21));
}
.xy-m-sidenav-link:hover svg{opacity:.92}
.xy-m-sidenav-link.is-on{
  background:color-mix(in srgb,var(--xy-skin-primary) 10%,#fff);
  color:var(--xy-skin-primary);
  font-weight:600;
  box-shadow:inset 3px 0 0 var(--xy-skin-primary);
}
.xy-m-sidenav-link.is-on svg{
  opacity:1;
  color:var(--xy-skin-primary);
}
.xy-m-sidenav-link.is-on .xy-m-badge-num{
  box-shadow:0 1px 3px rgba(0,0,0,.14);
}
@supports not (background: color-mix(in srgb, red 10%, white)){
  .xy-m-sidenav-link.is-on{background:rgba(232,138,10,.1)}
}
.xy-m-sidenav-sep{
  margin:10px 18px;
  border:0;
  border-top:1px solid var(--xy-ui-line,#e6e8eb);
}
.xy-m-sidenav-footer{
  margin-top:auto;
  flex-shrink:0;
  padding:14px 16px calc(16px + env(safe-area-inset-bottom,0px));
  border-top:1px solid var(--xy-ui-line,#e6e8eb);
  background:linear-gradient(180deg,#fafafa 0%,#fff 100%);
}
.xy-m-sidenav-footer-links{
  display:flex;
  flex-direction:column;
  gap:2px;
  margin-bottom:12px;
}
.xy-m-sidenav-footer-link{
  display:flex;
  align-items:center;
  gap:10px;
  min-height:36px;
  padding:0 10px;
  border-radius:6px;
  font-size:12px;
  font-weight:500;
  color:var(--xy-ui-muted,#6a727c);
  text-decoration:none;
  cursor:pointer;
  transition:background .15s ease,color .15s ease;
}
.xy-m-sidenav-footer-link:hover{
  background:rgba(0,0,0,.04);
  color:var(--xy-ui-ink,var(--xy-skin-ink,#1a1d21));
}
.xy-m-sidenav-icon{
  flex-shrink:0;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:20px;
  height:20px;
  color:#666;
}
.xy-m-sidenav-icon svg{
  display:block;
  width:20px;
  height:20px;
  flex-shrink:0;
}
.xy-m-sidenav-footer-signout .xy-m-sidenav-icon{
  color:var(--xy-ui-muted,#666);
  opacity:.88;
  transition:opacity .15s ease,color .15s ease;
}
.xy-m-sidenav-footer-home .xy-m-sidenav-icon{
  color:var(--xy-ui-muted,#666);
  opacity:.88;
  transition:opacity .15s ease,color .15s ease;
}
.xy-m-sidenav-footer-home:hover .xy-m-sidenav-icon{
  opacity:1;
  color:var(--xy-skin-primary);
}
.xy-m-sidenav-footer-signout:hover .xy-m-sidenav-icon{
  opacity:1;
  color:var(--xy-ui-err,#b42318);
}
.xy-m-sidenav-footer-signout svg{
  flex-shrink:0;
  width:20px;
  height:20px;
  display:block;
  color:inherit;
  opacity:1;
  transition:color .15s ease;
}
.xy-m-sidenav-footer-signout:hover{color:var(--xy-ui-err,#b42318)}
.xy-m-sidenav-footer-signout:hover svg{color:var(--xy-ui-err,#b42318)}

/* 中英切换：放 base，已登录页不引 auth 也能用 */
.xy-m-lang-switch{
  display:inline-flex;
  align-items:center;
  gap:0;
  font-size:12px;
  font-weight:600;
  letter-spacing:.04em;
  line-height:1;
}
.xy-m-lang-seg{
  background:none;
  border:0;
  padding:6px 8px;
  cursor:pointer;
  font:inherit;
  color:var(--xy-ui-muted,#6a727c);
  border-radius:4px;
  transition:color .2s ease,background .2s ease,box-shadow .2s ease;
}
.xy-m-lang-seg:hover{color:var(--xy-ui-ink,var(--xy-skin-ink,#1a1d21))}
.xy-m-lang-seg.is-on{
  color:var(--xy-skin-primary);
  background:rgba(0,0,0,.04);
}
.xy-m-lang-sep{
  color:var(--xy-ui-line,#e6e8eb);
  user-select:none;
  font-weight:400;
}
.xy-m-lang-switch-dash{
  margin-top:12px;
  padding-top:12px;
  border-top:1px solid var(--xy-ui-line,#e6e8eb);
}
.xy-m-sidenav-footer .xy-m-lang-switch-dash{
  display:inline-flex;
  align-items:center;
  margin-top:0;
  padding-top:0;
  border-top:0;
  justify-content:center;
  width:100%;
  box-sizing:border-box;
  padding:4px;
  border-radius:8px;
  background:var(--xy-ui-bg,#f4f3f1);
}
.xy-m-sidenav-footer .xy-m-lang-seg{
  flex:1;
  text-align:center;
  padding:8px 10px;
  border-radius:6px;
}
.xy-m-sidenav-footer .xy-m-lang-seg.is-on{
  background:#fff;
  box-shadow:0 1px 3px rgba(0,0,0,.08);
}
.xy-m-sidenav-footer .xy-m-lang-sep{display:none}

/* Main content area */
.xy-m-main{
  flex:1;
  min-width:0;
  display:flex;
  flex-direction:column;
}
.xy-m-main-inner{
  flex:1;
  width:100%;
  max-width:none;
  margin:0;
  padding:36px clamp(20px,2.5vw,40px) 64px;
  box-sizing:border-box;
}
/* Mobile sidebar toggle */
.xy-m-mob-bar{
  display:none;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:14px 20px;
  background:var(--xy-ui-surface,#fff);
  border-bottom:1px solid var(--xy-ui-line,#e6e8eb);
  position:sticky;
  top:0;
  z-index:100;
}
.xy-m-mob-home{
  flex:0 0 auto;
  font-size:13px;
  font-weight:600;
  color:var(--xy-skin-primary);
  text-decoration:none;
  white-space:nowrap;
}
.xy-m-mob-home:hover{opacity:.85}
.xy-m-mob-bar-brand{
  flex:1 1 auto;
  min-width:0;
  font-size:14px;
  font-weight:700;
  color:var(--xy-ui-ink,var(--xy-skin-ink,#1a1d21));
  text-align:center;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.xy-m-mob-toggle{
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:5px;
  width:36px;
  height:36px;
  background:none;
  border:0;
  cursor:pointer;
  padding:6px;
  border-radius:4px;
}
.xy-m-mob-toggle span{
  display:block;
  height:2px;
  background:var(--xy-ui-ink,var(--xy-skin-ink,#1a1d21));
  border-radius:2px;
  transition:transform .2s ease,opacity .2s ease;
}
.xy-m-mob-overlay{
  display:none;
  position:fixed;
  inset:0;
  background:rgba(0,0,0,.35);
  z-index:199;
}
@media (max-width:768px){
  .xy-m-dash{flex-direction:column;min-height:auto}
  .xy-m-mob-bar{display:flex}
  .xy-m-sidebar{
    position:fixed;
    top:0;
    left:0;
    bottom:0;
    z-index:200;
    transform:translateX(-100%);
    transition:transform .25s ease;
    height:100%;
    width:240px;
    flex:none;
  }
  .xy-m-sidebar.is-open{transform:translateX(0)}
  .xy-m-mob-overlay.is-open{display:block}
  .xy-m-main-inner{padding:24px 20px 56px}
}
@media (max-width:480px){
  .xy-m-main-inner{padding:20px 16px 48px}
}

/* ?? Remember me ??????????????????????????????????????????????????????? */
.xy-m-field-remember{margin-top:16px}
.xy-m-field label.xy-m-remember-label{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-bottom:0;
  text-transform:none;
  letter-spacing:normal;
  font-weight:400;
  line-height:1.4;
}
.xy-m-remember-label{
  display:inline-flex;
  align-items:center;
  gap:8px;
  cursor:pointer;
  font-size:13px;
  color:var(--xy-ui-muted,#6a727c);
  user-select:none;
}
.xy-m-remember-chk{
  width:16px;
  height:16px;
  margin:0;
  accent-color:var(--xy-skin-primary);
  cursor:pointer;
  flex-shrink:0;
}
.xy-m-remember-label:hover{color:var(--xy-ui-ink,var(--xy-skin-ink,#1a1d21))}

/* ?? Field validation hints ???????????????????????????????????????????? */
.xy-m-field-msg{
  display:block;
  margin-top:6px;
  font-size:12px;
  line-height:1.4;
  min-height:16px;
  color:var(--xy-ui-muted,#6a727c);
  transition:color .2s ease;
}
.xy-m-field-msg.is-ok{color:var(--xy-ui-ok,#1f6b57)}
.xy-m-field-msg.is-err{color:#c0392b}
/* Underline fields only — boxed forms override above */
.xy-m-form:not(.xy-m-profile-form):not(.xy-m-password-form):not(.xy-m-auth-form) .xy-m-field input:not([type="checkbox"]):not([type="radio"]).is-ok{
  border-bottom-color:var(--xy-ui-ok,#1f6b57);
}
.xy-m-form:not(.xy-m-profile-form):not(.xy-m-password-form):not(.xy-m-auth-form) .xy-m-field input:not([type="checkbox"]):not([type="radio"]).is-err{
  border-bottom-color:#c0392b;
}

/* ?? Password strength bar ????????????????????????????????????????????? */
.xy-m-pw-strength{
  margin-top:8px;
  height:3px;
  border-radius:2px;
  background:var(--xy-ui-line,#e6e8eb);
  overflow:hidden;
}
.xy-m-pw-strength-fill{
  height:100%;
  border-radius:2px;
  width:0;
  transition:width .3s ease,background .3s ease;
}
.xy-m-pw-strength-fill.s1{width:25%;background:#e74c3c}
.xy-m-pw-strength-fill.s2{width:50%;background:#e67e22}
.xy-m-pw-strength-fill.s3{width:75%;background:#f1c40f}
.xy-m-pw-strength-fill.s4{width:100%;background:var(--xy-ui-ok,#1f6b57)}

/* Login log + security */
.xy-m-inq-list.is-collapsed > li.xy-m-collapsible-extra,
.xy-m-login-log.is-collapsed > li.xy-m-collapsible-extra,
.xy-m-login-log.is-collapsed > li.xy-m-login-log-extra,
.xy-m-collapsible-extra[hidden]{
  display:none!important;
}
.xy-m-section .xy-m-collapsible-foot{padding:4px 0 2px}
.xy-m-btn-outline{
  background:transparent!important;color:var(--xy-skin-primary,#c45c26)!important;
  border:1px solid currentColor!important;box-shadow:none!important;
}
.xy-m-btn-outline:hover{opacity:.85}
.xy-m-btn-danger{
  background:#b42318!important;border-color:#b42318!important;color:#fff!important;
}
.xy-m-btn-danger:hover{opacity:.9}

/* Order confirm / cancel */
.xy-m-btn-sm{
  min-width:120px;
  min-height:40px;
  height:40px;
  padding:0 20px;
  font-size:13px;
  line-height:40px;
}
.xy-m-btn-xs{
  min-width:0;
  min-height:32px;
  height:32px;
  padding:0 12px;
  font-size:12px;
  line-height:32px;
  letter-spacing:.02em;
}
.xy-m-btn-danger{
  background:transparent!important;
  color:var(--xy-ui-err,#b42318)!important;
  border:1px solid currentColor!important;
  box-shadow:none!important;
}
.xy-m-btn-danger:hover{
  background:var(--xy-ui-err,#b42318)!important;
  color:#fff!important;
  opacity:1;
}
/* Order list cards */
.xy-m-page-orders .xy-m-inq-list{gap:12px}
.xy-m-hero-orders{margin-bottom:20px}
.xy-m-ord.is-cancelled .xy-m-inq-title,
.xy-m-ord.is-closed .xy-m-inq-title{color:var(--xy-ui-muted,#6a727c)}
.xy-m-ord .xy-m-inq-main{flex:1;min-width:0}
.xy-m-ord .xy-m-inq-top{
  align-items:flex-start;
  gap:8px 12px;
  margin-bottom:2px;
}
.xy-m-ord .xy-m-inq-title{
  flex:1;
  min-width:0;
  margin:0;
  font-size:15px;
  font-weight:600;
  line-height:1.35;
  letter-spacing:-.01em;
}
.xy-m-ord .xy-m-inq-badges{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  align-items:center;
  gap:5px;
  flex-shrink:0;
  max-width:42%;
}
.xy-m-badge.is-paying{
  background:#e8f0fe;
  border-color:#b7c9e8;
  color:#1a5fb4;
}
.xy-m-badge.is-to_ship{
  background:#e6f7ef;
  border-color:#b7d4c9;
  color:#0d7a4c;
}
.xy-m-badge.is-refunded,
.xy-m-badge.pay-refunded{
  background:#f4f0eb;
  border-color:#e0d5c8;
  color:#7a5c3a;
}
.xy-m-ord .xy-m-inq-view.xy-m-ord-view{
  margin:0;
  display:flex;
  align-items:center;
  justify-content:center;
  box-sizing:border-box;
  width:100%;
  min-height:32px;
  padding:6px 10px;
  border-radius:6px;
  border:1px solid rgba(196,92,38,.22);
  background:rgba(196,92,38,.05);
  font-size:12px;
  font-weight:600;
  letter-spacing:.02em;
  white-space:normal;
  text-align:center;
  border-bottom:1px solid rgba(196,92,38,.22);
  transition:background .2s ease,border-color .2s ease,color .2s ease;
}
.xy-m-ord .xy-m-inq-view.xy-m-ord-view:hover{
  background:rgba(196,92,38,.11);
  border-color:var(--xy-skin-primary);
  color:var(--xy-skin-primary);
}
@media (max-width:640px){
  .xy-m-order-actions{flex-direction:column;align-items:stretch}
  .xy-m-order-actions .xy-m-btn,
  .xy-m-order-actions form{width:100%}
  .xy-m-ord{
    padding:12px 14px;
    gap:10px;
    flex-wrap:wrap;
  }
  .xy-m-ord .xy-m-inq-badges{
    max-width:none;
    justify-content:flex-start;
  }
  .xy-m-ord .xy-m-inq-top{flex-wrap:wrap}
  .xy-m-ord-amt{font-size:15px}
  .xy-m-ord-side{
    align-items:stretch;
    width:100%;
    padding-left:28px;
  }
  .xy-m-ord-action-stack{
    width:100%;
    min-width:0;
    max-width:280px;
    margin-left:auto;
    flex-direction:row;
    flex-wrap:wrap;
  }
  .xy-m-ord-action-stack .xy-m-btn,
  .xy-m-ord-action-stack > a.xy-m-btn,
  .xy-m-ord .xy-m-inq-view.xy-m-ord-view{
    width:auto;
    flex:1 1 auto;
    min-height:40px;
    padding:8px 12px;
  }
  .xy-m-progress-compact{max-width:none;margin-top:12px}
  .xy-m-progress-compact-label{font-size:0;line-height:0}
  .xy-m-progress-compact-step[data-step="pending"] .xy-m-progress-compact-label::before,
  .xy-m-progress-compact-step[data-step="confirmed"] .xy-m-progress-compact-label::before,
  .xy-m-progress-compact-step[data-step="shipped"] .xy-m-progress-compact-label::before,
  .xy-m-progress-compact-step[data-step="closed"] .xy-m-progress-compact-label::before{
    display:block;
    font-size:8px;
    font-weight:600;
    line-height:1.25;
    letter-spacing:.04em;
    text-transform:uppercase;
    color:var(--xy-ui-muted,#6a727c);
  }
  .xy-m-progress-compact-step.is-done .xy-m-progress-compact-label::before,
  .xy-m-progress-compact-step.is-current .xy-m-progress-compact-label::before{
    color:var(--xy-ui-ink,var(--xy-skin-ink,#1a1d21));
  }
  .xy-m-progress-compact-step[data-step="pending"] .xy-m-progress-compact-label::before{content:"Pend."}
  .xy-m-progress-compact-step[data-step="confirmed"] .xy-m-progress-compact-label::before{content:"Conf."}
  .xy-m-progress-compact-step[data-step="shipped"] .xy-m-progress-compact-label::before{content:"Ship."}
  .xy-m-progress-compact-step[data-step="closed"] .xy-m-progress-compact-label::before{content:"Done"}
}

/* Inquiry follow-up + notices + print CTA */
.xy-m-hero-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:center;
  flex-shrink:0;
}
.xy-m-badge-num{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-left:auto;
  min-width:20px;
  height:20px;
  padding:0 6px;
  border-radius:10px;
  background:var(--xy-skin-primary,#e88a0a);
  color:#fff;
  font-size:10px;
  font-weight:700;
  line-height:1;
  text-align:center;
  box-shadow:0 1px 3px rgba(0,0,0,.12);
  font-variant-numeric:tabular-nums;
  box-sizing:border-box;
}
.xy-m-sr{
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
  border:0;
}
.xy-m-batch-bar{
  display:none;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:10px 16px;
  margin:12px 0 0;
  padding:10px 12px;
  border:1px solid var(--xy-ui-line,#e6e8eb);
  border-radius:var(--xy-ui-radius,2px);
  background:var(--xy-ui-surface,#fff);
  position:sticky;
  bottom:8px;
  z-index:30;
  box-shadow:0 -6px 18px rgba(26,29,33,.08);
}
.xy-m-batch-bar.is-visible{
  display:flex;
  animation:xy-m-batch-in .18s ease;
}
@keyframes xy-m-batch-in{
  from{opacity:0;transform:translateY(6px)}
  to{opacity:1;transform:translateY(0)}
}
@media (prefers-reduced-motion:reduce){
  .xy-m-batch-bar.is-visible{animation:none}
}
.xy-m-main-inner:has(.xy-m-batch-bar.is-visible){
  padding-bottom:72px;
}
@media (max-width:768px){
  .xy-m-batch-bar{
    bottom:calc(72px + env(safe-area-inset-bottom,0px));
  }
  .xy-m-main-inner:has(.xy-m-batch-bar.is-visible){
    padding-bottom:calc(72px + 64px + env(safe-area-inset-bottom,0px));
  }
}
.xy-m-batch-all{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin:0;
  font-size:13px;
  color:var(--xy-ui-ink,#1a1d21);
  cursor:pointer;
  user-select:none;
}
.xy-m-batch-all input{
  width:16px;
  height:16px;
  margin:0;
  accent-color:var(--xy-skin-primary,#e88a0a);
  cursor:pointer;
}
.xy-m-batch-actions{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
}
.xy-m-batch-actions .xy-m-btn{
  margin:0;
  box-shadow:none;
  border-radius:4px;
}
.xy-m-batch-danger,
.xy-m-batch-actions .xy-m-btn-danger{
  color:var(--xy-ui-err,#b42318) !important;
  border-color:currentColor !important;
  background:transparent !important;
  box-shadow:none !important;
}
.xy-m-batch-danger:hover,
.xy-m-batch-actions .xy-m-btn-danger:hover{
  background:rgba(180,35,24,.06) !important;
  color:var(--xy-ui-err,#b42318) !important;
}

/* Shared inbox grid (header + rows): notices + downloads + orders */
.xy-m-inbox-panel{
  width:100%;
  border:1px solid var(--xy-ui-line,#e6e8eb);
  border-radius:var(--xy-ui-radius,2px);
  background:var(--xy-ui-surface,#fff);
  overflow:visible;
  container-type:inline-size;
  container-name:xy-inbox;
}
.xy-m-inbox-scroll{
  width:100%;
  overflow-x:visible;
  overflow-y:visible;
  -webkit-overflow-scrolling:touch;
}
.xy-m-inbox-list{
  list-style:none;
  margin:0;
  padding:0;
  width:100%;
}
.xy-m-inbox-head,
.xy-m-inbox-item{
  display:grid;
  grid-template-columns:var(--xy-inbox-cols);
  align-items:center;
  column-gap:14px;
  width:100%;
  min-width:100%;
  box-sizing:border-box;
  padding:14px 16px;
}
.xy-m-inbox-notice .xy-m-inbox-head,
.xy-m-inbox-notice .xy-m-inbox-item,
.xy-m-inbox-dl .xy-m-inbox-head,
.xy-m-inbox-dl .xy-m-inbox-item,
.xy-m-inbox-order .xy-m-inbox-head,
.xy-m-inbox-order .xy-m-inbox-item{
  min-width:0;
}
.xy-m-inbox-dl .xy-m-inbox-item,
.xy-m-inbox-notice .xy-m-inbox-item{
  align-items:start;
}
.xy-m-inbox-dl .xy-m-inbox-col-id,
.xy-m-inbox-dl .xy-m-inbox-col-check,
.xy-m-inbox-dl .xy-m-inbox-col-file,
.xy-m-inbox-dl .xy-m-inbox-col-date,
.xy-m-inbox-notice .xy-m-inbox-col-id,
.xy-m-inbox-notice .xy-m-inbox-col-check,
.xy-m-inbox-notice .xy-m-inbox-col-status,
.xy-m-inbox-notice .xy-m-inbox-col-date{
  align-self:center;
}
.xy-m-inbox-order .xy-m-inbox-col-title,
.xy-m-inbox-dl .xy-m-inbox-col-title,
.xy-m-inbox-notice .xy-m-inbox-col-title{
  align-self:stretch;
  justify-self:stretch;
}
.xy-m-inbox-order .xy-m-inbox-col-id,
.xy-m-inbox-dl .xy-m-inbox-col-id,
.xy-m-inbox-notice .xy-m-inbox-col-id{
  grid-column:1;
}
.xy-m-inbox-col-id{
  font-size:12px;
  color:var(--xy-ui-muted,#6a727c);
  font-variant-numeric:tabular-nums;
  white-space:nowrap;
  text-align:center;
}
.xy-m-inbox-head .xy-m-inbox-col-id{
  color:var(--xy-ui-ink,#1a1d21);
}
.xy-m-inbox-id{
  display:inline-block;
  min-width:0;
  font-variant-numeric:tabular-nums;
}
.xy-m-inbox-head{
  border-bottom:1px solid var(--xy-ui-ink,var(--xy-skin-ink,#1a1d21));
  font-size:12px;
  font-weight:600;
  letter-spacing:.02em;
  color:var(--xy-ui-ink,#1a1d21);
  background:var(--xy-ui-surface,#fff);
}
.xy-m-inbox-item{
  border-bottom:1px solid var(--xy-ui-line,#e6e8eb);
  font-size:14px;
}
.xy-m-inbox-item:last-child{border-bottom:0}
.xy-m-inbox-item.is-unread{background:rgba(232,138,10,.045)}
.xy-m-inbox-col{min-width:0}
.xy-m-inbox-col-id,
.xy-m-inbox-col-check{
  min-width:0;
}
.xy-m-inbox-col-amt,
.xy-m-inbox-col-status,
.xy-m-inbox-col-date,
.xy-m-inbox-col-file{
  min-width:min-content;
}
.xy-m-inbox-col-title{
  display:block;
  width:100%;
  min-width:0;
  max-width:100%;
  text-align:left;
  overflow-wrap:break-word;
  word-break:normal;
  box-sizing:border-box;
}
.xy-m-inbox-col-title > .xy-m-inbox-title,
.xy-m-inbox-col-title > a.xy-m-inbox-title,
.xy-m-inbox-col-title > span.xy-m-inbox-title{
  display:-webkit-box;
  -webkit-box-orient:vertical;
  width:100%;
  min-width:0;
  max-width:100%;
  box-sizing:border-box;
}
.xy-m-inbox-col-check{
  display:flex;
  align-items:center;
  justify-content:center;
  flex-shrink:0;
}
.xy-m-inbox-check{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin:0;
  cursor:pointer;
  line-height:0;
}
.xy-m-inbox-check input{
  width:16px;
  height:16px;
  margin:0;
  accent-color:var(--xy-skin-primary,#e88a0a);
  cursor:pointer;
}
.xy-m-inbox-title{
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  line-clamp:2;
  overflow:hidden;
  width:100%;
  min-width:0;
  max-width:100%;
  box-sizing:border-box;
  font-size:14px;
  font-weight:400;
  color:var(--xy-ui-ink,#1a1d21);
  text-decoration:none;
  line-height:1.45;
  white-space:normal;
  overflow-wrap:break-word;
  word-break:normal;
}
a.xy-m-inbox-title,
span.xy-m-inbox-title{
  font-size:14px;
  font-weight:400;
  width:100%;
  min-width:0;
  max-width:100%;
}
.xy-m-inbox-title strong,
.xy-m-inbox-title b{
  font-weight:400;
}
a.xy-m-inbox-title:hover{color:var(--xy-skin-primary,#e88a0a)}
.xy-m-inbox-col-file{
  font-size:13px;
  line-height:1.4;
  overflow-wrap:break-word;
  word-break:normal;
}
.xy-m-inbox-col-amt{
  font-size:13px;
  font-variant-numeric:tabular-nums;
  white-space:nowrap;
  text-align:left;
}
.xy-m-inbox-amt{
  display:inline-flex;
  align-items:baseline;
  flex-wrap:wrap;
  gap:.35em;
  justify-content:flex-start;
  font-weight:600;
  color:var(--xy-ui-ink,#1a1d21);
}
.xy-m-inbox-amt-cur{
  font-weight:400;
  color:var(--xy-ui-muted,#6a727c);
  font-size:12px;
}
.xy-m-inbox-col-status{
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
}
.xy-m-inbox-col-date{
  font-size:13px;
  color:var(--xy-ui-muted,#6a727c);
  white-space:nowrap;
  font-variant-numeric:tabular-nums;
}
.xy-m-inbox-meta-time{
  font-variant-numeric:tabular-nums;
  white-space:nowrap;
}
.xy-m-inbox-meta-time[title]{
  cursor:help;
  border-bottom:1px dotted rgba(106,114,124,.45);
}
.xy-m-inbox-col-act{
  grid-column:-1;
  justify-self:end;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  text-align:right;
  overflow:visible;
  flex-shrink:0;
  min-width:max-content;
  margin-left:auto;
}
.xy-m-inbox-head .xy-m-inbox-col-act{
  justify-content:flex-end;
}
.xy-m-inbox-actions{
  display:flex;
  flex-direction:row;
  flex-wrap:wrap;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
}
.xy-m-inbox-actions .xy-m-btn{
  margin:0;
  box-shadow:none;
  border-radius:4px;
  white-space:nowrap;
}
.xy-m-btn-icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:32px;
  min-width:32px;
  height:32px;
  padding:0;
  line-height:1;
}
.xy-m-btn-icon svg{
  display:block;
  width:16px;
  height:16px;
  flex-shrink:0;
}
.xy-m-inbox-actions .xy-m-btn-icon{
  width:32px;
  min-width:32px;
  max-width:32px;
  height:32px;
  flex:0 0 32px;
  padding:0;
}
.xy-m-inbox-inline-form{
  margin:0;
  display:inline-flex;
}

/* Inbox responsive: --xy-inbox-cols track count = visible cols (hidden use display:none) */
@container xy-inbox (max-width:960px){
  .xy-m-inbox-dl{
    --xy-inbox-cols:38px 44px minmax(0,1fr) 128px auto;
  }
  .xy-m-inbox-dl .xy-m-inbox-col-file{display:none}

  .xy-m-inbox-notice{
    --xy-inbox-cols:38px 44px minmax(0,1fr) 96px auto;
  }
  .xy-m-inbox-notice .xy-m-inbox-col-date{display:none}

  .xy-m-inbox-order .xy-m-inbox-col-check,
  .xy-m-inbox-order .xy-m-inbox-col-amt,
  .xy-m-inbox-order .xy-m-inbox-head .xy-m-inbox-col-status,
  .xy-m-inbox-order .xy-m-inbox-item .xy-m-inbox-col-status,
  .xy-m-inbox-order .xy-m-inbox-col-date{display:none !important}

  .xy-m-inbox-order .xy-m-inbox-head,
  .xy-m-inbox-order .xy-m-inbox-item{
    display:flex !important;
    flex-wrap:nowrap;
    align-items:flex-start;
    column-gap:14px;
    grid-template-columns:none !important;
  }
  .xy-m-inbox-order .xy-m-inbox-head{
    align-items:center;
  }
  .xy-m-inbox-order .xy-m-inbox-col-id,
  .xy-m-inbox-order .xy-m-inbox-col-title,
  .xy-m-inbox-order .xy-m-inbox-col-act{
    grid-column:auto !important;
  }
  .xy-m-inbox-order .xy-m-inbox-col-id{
    flex:0 0 38px;
    align-self:center;
  }
  .xy-m-inbox-order .xy-m-inbox-col-title{
    flex:1 1 0%;
    min-width:0;
    width:100%;
    max-width:100%;
    align-self:stretch;
  }
  .xy-m-inbox-order .xy-m-inbox-col-title > .xy-m-inbox-title,
  .xy-m-inbox-order .xy-m-inbox-col-title > a.xy-m-inbox-title,
  .xy-m-inbox-order .xy-m-inbox-col-title > span.xy-m-inbox-title{
    display:-webkit-box;
    -webkit-box-orient:vertical;
    width:100%;
    max-width:100%;
    min-width:0;
    box-sizing:border-box;
  }
  .xy-m-inbox-order .xy-m-inbox-col-act{
    flex:0 0 auto;
    margin-left:auto;
    align-self:center;
  }
}
/* Order 3-col @ viewport — fallback when panel container wider than phone */
@container xy-inbox (max-width:700px){
  .xy-m-inbox-dl .xy-m-inbox-col-check,
  .xy-m-inbox-dl .xy-m-inbox-col-file,
  .xy-m-inbox-dl .xy-m-inbox-col-date,
  .xy-m-inbox-notice .xy-m-inbox-col-check,
  .xy-m-inbox-notice .xy-m-inbox-head .xy-m-inbox-col-status,
  .xy-m-inbox-notice .xy-m-inbox-item .xy-m-inbox-col-status,
  .xy-m-inbox-notice .xy-m-inbox-col-date,
  .xy-m-inbox-order .xy-m-inbox-col-check,
  .xy-m-inbox-order .xy-m-inbox-col-amt,
  .xy-m-inbox-order .xy-m-inbox-head .xy-m-inbox-col-status,
  .xy-m-inbox-order .xy-m-inbox-item .xy-m-inbox-col-status,
  .xy-m-inbox-order .xy-m-inbox-col-date{display:none !important}

  .xy-m-inbox-panel .xy-m-inbox-head,
  .xy-m-inbox-panel .xy-m-inbox-item{
    display:flex !important;
    flex-wrap:nowrap;
    align-items:flex-start;
    column-gap:14px;
    grid-template-columns:none !important;
  }
  .xy-m-inbox-panel .xy-m-inbox-head{
    align-items:center;
  }

  .xy-m-inbox-panel .xy-m-inbox-col-id,
  .xy-m-inbox-panel .xy-m-inbox-col-title,
  .xy-m-inbox-panel .xy-m-inbox-col-act{
    grid-column:auto !important;
  }

  .xy-m-inbox-panel .xy-m-inbox-col-id{
    flex:0 0 38px;
    align-self:center;
  }
  .xy-m-inbox-panel .xy-m-inbox-col-title{
    flex:1 1 0%;
    min-width:0;
    width:100%;
    max-width:100%;
    align-self:stretch;
  }
  .xy-m-inbox-panel .xy-m-inbox-col-title > .xy-m-inbox-title,
  .xy-m-inbox-panel .xy-m-inbox-col-title > a.xy-m-inbox-title,
  .xy-m-inbox-panel .xy-m-inbox-col-title > span.xy-m-inbox-title{
    display:-webkit-box;
    -webkit-box-orient:vertical;
    width:100%;
    max-width:100%;
    min-width:0;
    box-sizing:border-box;
  }
  .xy-m-inbox-panel .xy-m-inbox-col-act{
    flex:0 0 auto;
    margin-left:auto;
    align-self:center;
  }
}
/* @container fallback when panel wider than viewport */
@media (max-width:700px){
  .xy-m-inbox-dl .xy-m-inbox-col-check,
  .xy-m-inbox-dl .xy-m-inbox-col-file,
  .xy-m-inbox-dl .xy-m-inbox-col-date,
  .xy-m-inbox-notice .xy-m-inbox-col-check,
  .xy-m-inbox-notice .xy-m-inbox-head .xy-m-inbox-col-status,
  .xy-m-inbox-notice .xy-m-inbox-item .xy-m-inbox-col-status,
  .xy-m-inbox-notice .xy-m-inbox-col-date,
  .xy-m-inbox-order .xy-m-inbox-col-check,
  .xy-m-inbox-order .xy-m-inbox-col-amt,
  .xy-m-inbox-order .xy-m-inbox-head .xy-m-inbox-col-status,
  .xy-m-inbox-order .xy-m-inbox-item .xy-m-inbox-col-status,
  .xy-m-inbox-order .xy-m-inbox-col-date{display:none !important}

  .xy-m-inbox-panel .xy-m-inbox-head,
  .xy-m-inbox-panel .xy-m-inbox-item{
    display:flex !important;
    flex-wrap:nowrap;
    align-items:flex-start;
    column-gap:14px;
    grid-template-columns:none !important;
  }
  .xy-m-inbox-panel .xy-m-inbox-head{
    align-items:center;
  }

  .xy-m-inbox-panel .xy-m-inbox-col-id,
  .xy-m-inbox-panel .xy-m-inbox-col-title,
  .xy-m-inbox-panel .xy-m-inbox-col-act{
    grid-column:auto !important;
  }

  .xy-m-inbox-panel .xy-m-inbox-col-id{
    flex:0 0 38px;
    align-self:center;
  }
  .xy-m-inbox-panel .xy-m-inbox-col-title{
    flex:1 1 0%;
    min-width:0;
    width:100%;
    max-width:100%;
    align-self:stretch;
  }
  .xy-m-inbox-panel .xy-m-inbox-col-title > .xy-m-inbox-title,
  .xy-m-inbox-panel .xy-m-inbox-col-title > a.xy-m-inbox-title,
  .xy-m-inbox-panel .xy-m-inbox-col-title > span.xy-m-inbox-title{
    display:-webkit-box;
    -webkit-box-orient:vertical;
    width:100%;
    max-width:100%;
    min-width:0;
    box-sizing:border-box;
  }
  .xy-m-inbox-panel .xy-m-inbox-col-act{
    flex:0 0 auto;
    margin-left:auto;
    align-self:center;
  }
}
@container xy-inbox (max-width:480px){
  .xy-m-inbox-panel .xy-m-inbox-head,
  .xy-m-inbox-panel .xy-m-inbox-item{
    padding:12px 10px;
    column-gap:8px;
  }
  .xy-m-inbox-panel .xy-m-inbox-col-id{
    flex-basis:36px;
  }
}

/* Narrow inbox: no row checkboxes → hide sticky batch bar */
.xy-m-main-inner:has(.xy-m-inbox-panel){
  container-type:inline-size;
  container-name:xy-inbox-form;
}
@container xy-inbox-form (max-width:700px){
  .xy-m-main-inner:has(.xy-m-inbox-panel) .xy-m-batch-bar,
  .xy-m-main-inner:has(.xy-m-inbox-panel) .xy-m-batch-bar.is-visible{
    display:none !important;
  }
  .xy-m-main-inner:has(.xy-m-inbox-panel):has(.xy-m-batch-bar.is-visible){
    padding-bottom:0 !important;
  }
}

/* Confirm modal styles: Homes/Tpl/_common/Member/xy-member-confirm.css */
.xy-m-opt{font-weight:400;color:var(--xy-ui-muted,#6a727c);font-size:12px}
.xy-m-btn-pay{background:#0070ba;border-color:#0070ba;color:#fff}
.xy-m-btn-pay:hover,.xy-m-btn-pay:focus{background:#005ea6;border-color:#005ea6;color:#fff}
.xy-m-btn-pay-go{background:#1f6b57;border-color:#1f6b57;color:#fff;min-width:140px}
.xy-m-btn-pay-go:hover,.xy-m-btn-pay-go:focus{background:#185a48;border-color:#185a48;color:#fff}
.xy-m-btn-pay-alipay{background:#1677ff;border-color:#1677ff;color:#fff}
.xy-m-btn-pay-alipay:hover,.xy-m-btn-pay-alipay:focus{background:#0958d9;border-color:#0958d9;color:#fff}
.xy-m-btn-pay-stripe{background:#635bff;border-color:#635bff;color:#fff}
.xy-m-btn-pay-stripe:hover,.xy-m-btn-pay-stripe:focus{background:#4f46e5;border-color:#4f46e5;color:#fff}
.xy-m-btn-pay-wechat{background:#07c160;border-color:#07c160;color:#fff}
.xy-m-btn-pay-wechat:hover,.xy-m-btn-pay-wechat:focus{background:#06ad56;border-color:#06ad56;color:#fff}
.xy-m-alert-err{margin:0 0 14px;padding:10px 12px;border-radius:6px;background:#fdf0ef;color:#a33;font-size:13px}
.xy-m-badge.pay-paid{background:#e6f7ef;color:#0d7a4c}
.xy-m-badge.pay-unpaid{background:#fff7e6;color:#ad6800}
.xy-m-badge.pay-pending{background:#e8eef8;color:#2c4a7c}
.xy-m-badge.pay-failed,.xy-m-badge.pay-cancelled{background:#faf0f0;color:#a33}
.xy-m-badge.pay-refunded{background:#f4f0eb;color:#7a5c3a}

/* Login / register success tip — standalone member page (not theme jump.html) */
