/* ==========================================================================
   见山 MVP · 缺陷修复层（最后加载，覆盖前面样式）
   修复项来自 _temp/ui-audit.cjs + _temp/interaction-audit.cjs 实测
   ========================================================================== */

/* 1) 移动端点击目标不小于 32px（原来购物车步进 26px、门店「补打」21px 太小） */
.step-btn {
  min-width: 32px;
  min-height: 32px;
}
.line-del {
  min-height: 32px;
  padding: 4px 8px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.st-link {
  min-height: 32px;
  padding: 6px 8px;
  display: inline-flex;
  align-items: center;
}
.st-due {
  min-height: 34px;
}
.sheet-close {
  width: 36px;
  height: 36px;
}
.tab {
  min-height: 44px;
}

/* 2) Toast 不再压住底部弹层 / 固定栏：移到顶部导航下方 */
.toast {
  top: 88px;
  bottom: auto;
  transform: translate(-50%, -6px);
}
.toast.is-on {
  transform: translate(-50%, 0);
}

/* 3) 弹层打开时，页面骨架不做无谓的滚动抖动 */
html,
body {
  overscroll-behavior-y: none;
}

/* 4) 长店名/长地址兜底：不允许撑破卡片 */
.store-name,
.item-name,
.st-order__items,
.store-meta,
.addr-line {
  overflow-wrap: anywhere;
  word-break: break-word;
}

/* 5) 下单成功页：矮屏首屏内看到主操作（审计 UI-04） */
.detail-actions {
  position: relative;
  z-index: 2;
  margin-top: 2px;
}
@media (max-height: 940px) {
  .success-hero {
    padding: 12px 12px 10px;
  }
  .success-ico {
    width: 46px;
    height: 46px;
    margin-bottom: 8px;
  }
  .success-title {
    font-size: 20px;
  }
  .code-card {
    padding: 14px 16px 12px;
  }
  .code-big {
    font-size: 54px;
    margin: 4px 0 2px;
  }
  .steps-card {
    padding: 12px 14px;
  }
  .steps {
    margin: 10px 0 2px;
  }
  .detail-actions .btn {
    height: 42px;
  }
}

/* 6) 我的页底部说明不被悬浮 tabbar 遮住 */
.mobile-page {
  padding-bottom: 132px;
}

/* 7) 后台设置页 sticky 保存条不遮最后一个字段（审计 P2） */
.main #view {
  padding-bottom: 96px;
}

/* 8) 后台列表超长商品名不撑行高 */
.table td,
.cell-name {
  max-width: 320px;
}
.item-name,
.item-en,
.item-desc {
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* 9) 购物车金额加标签（原来单价/小计两个数字没有说明） */
.cart-line-amt em,
.cart-line-unit em {
  font-style: normal;
  font-weight: 600;
  font-size: 11px;
  color: var(--ink-3);
  letter-spacing: 0.02em;
  margin-right: 1px;
}

/* 10) 售罄加购按钮：保持禁用外观，但保留点击反馈（点击提示「今日已售罄」） */
.add-btn.is-off {
  background: var(--surface-2);
  color: var(--ink-3);
  box-shadow: none;
  cursor: not-allowed;
}

/* 11) 360 窄屏分类栏：缩小间距与字号，四个分类尽量一屏可见 */
@media (max-width: 380px) {
  .chips-wrap {
    gap: 6px;
    padding: 8px 12px;
    margin-left: -12px;
    margin-right: -12px;
  }
  .chip {
    height: 32px;
    padding: 0 10px;
    gap: 3px;
    font-size: 12px;
  }
  .chip-no {
    display: none;
  }
}

/* 12) 后台设置页：给 sticky 保存条留足空间，且保存条不透明 */
.save-bar {
  background: var(--surface);
  box-shadow: 0 -12px 28px -20px rgba(26, 29, 33, 0.5);
}
.main #view {
  padding-bottom: 150px;
}

/* 13) 键盘可达性：可见焦点环 */
:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 2px;
  border-radius: 8px;
}
button:focus:not(:focus-visible),
a:focus:not(:focus-visible) {
  outline: none;
}

/* 14) 「我的」页顶部演示说明（原底部说明移到这里，避免被悬浮 tabbar 遮） */
.demo-foot--top {
  margin: 8px 0 0;
  font-size: 11px;
  color: var(--ink-3);
  line-height: 1.5;
  letter-spacing: 0.02em;
}



/* 15) 后台商品图上传 */
.upload-row {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
  margin-top: 12px;
}
.upload-btn {
  position: relative;
  cursor: pointer;
  overflow: hidden;
}
.upload-btn input[type="file"] {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  cursor: pointer;
}


/* 16) 后台侧栏当前账号 */
.side-account {
  padding-left: 12px;
  color: var(--ink-2) !important;
  font-weight: 700;
  letter-spacing: 0.02em;
}


/* 17) 门店端前台充值收款码 */
.st-qr {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  margin: 14px 0;
  padding: 14px;
  border: 1px dashed var(--line-strong);
  border-radius: 16px;
  background: var(--surface-2);
}
.st-qr__head {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.st-qr__img {
  width: 200px;
  height: 200px;
  object-fit: contain;
  border-radius: 10px;
  background: #fff;
}
.st-qr__empty {
  width: 200px;
  min-height: 110px;
  display: grid;
  place-items: center;
  padding: 12px;
  border-radius: 10px;
  background: var(--surface);
  color: var(--ink-3);
  font-size: 12px;
  text-align: center;
  line-height: 1.5;
}
.st-qr__note {
  margin: 0;
  font-size: 11px;
  color: var(--ink-3);
  text-align: center;
  line-height: 1.6;
}


/* 19) 门店端双币合计 */
.st-sum-alt {
  margin-left: 5px;
  font-size: 10px;
  font-weight: 600;
  color: var(--ink-3);
}
.st-receipt__total-alt {
  display: block;
  margin-top: 1px;
  font-size: 10px;
  font-weight: 500;
  color: #6b7280;
}
