/* v5 merchant skin: presentation only; vendor dimensions and form behavior remain authoritative. */
html[data-zz^="merchant"] {
  --zzm-bg:#faf8f5; --zzm-card:#fff; --zzm-line:#ece7e0; --zzm-ink:#1d1b2c; --zzm-muted:#8b8698;
  --zzm-brand:#3e63dd; --zzm-soft:#eef2fd; --color-primary-light-1:#eef2fd;
  --primary-6:62,99,221; --primary-5:83,118,225; --primary-7:51,82,194;
  --color-text-1:#1d1b2c; --color-text-2:#4a4759; --color-text-3:#8b8698;
  --color-border-1:#f3efea; --color-border-2:#ece7e0; --color-fill-1:#faf8f5; --color-bg-2:#fff;
}
html[data-zz^="merchant"] body { background:var(--zzm-bg); color:var(--zzm-ink); font-family:"PingFang SC","HarmonyOS Sans SC","MiSans","Microsoft YaHei UI",system-ui,sans-serif; }
#app .layout, #app .styles_appMain, #app .styles_subAppContent { background:var(--zzm-bg); }
#app .style_bgMask { background:none; }
#app .styles_normalHeader { background:rgba(255,255,255,.96); border-bottom:1px solid var(--zzm-line); box-shadow:none; }
#app .styles_firstMenuWrapper, #app .styles_secondMenuWrapper { background:#fff; }
#app .styles_firstItem, #app .styles_secondItem { border-radius:12px; transition:background-color .18s,color .18s; }
#app .styles_firstItem:hover, #app .styles_secondItem:hover { background:#f5f3f0; color:var(--zzm-brand); }
#app .styles_firstItem.styles_selected, #app .styles_secondItem.styles_selected { background:var(--zzm-soft); color:var(--zzm-brand); box-shadow:inset 3px 0 var(--zzm-brand); }
#app .arco-card { background:var(--zzm-card); border-color:var(--zzm-line); border-radius:20px; box-shadow:0 2px 8px #31281505; }
#app .arco-card-header { border-color:var(--zzm-line); }
#app .arco-card-header-title { font-weight:650; color:var(--zzm-ink); }
#app .arco-statistic-value, #app .TodoListRow_MerchantNumber { font-variant-numeric:tabular-nums; letter-spacing:-.02em; }
#app .TodoListRow_MerchantContainer { background:#eef2fd; border:1px solid #dce4fb; border-radius:20px; color:var(--zzm-ink); }
#app .TodoListRow_MerchantCard { color:var(--zzm-ink); }
#app .TodoListRow_MerchantNumber { color:var(--zzm-brand); }
#app .TodoListRow_MerchantName { color:#4a4759; }
#app .TodoListRow_bkImgOne, #app .TodoListRow_bkImgTwo { opacity:.12; }
#app .arco-btn { border-radius:999px; transition:background-color .18s,box-shadow .18s; }
#app .arco-btn-primary:not(.arco-btn-disabled) { background:var(--zzm-brand); }
#app .arco-btn-primary:not(.arco-btn-disabled):hover { background:#3352c2; box-shadow:0 4px 12px #3e63dd20; }
#app .arco-input-wrapper, #app .arco-textarea-wrapper, #app .arco-select-view-single, #app .arco-picker { border-radius:10px; }
#app .arco-input-wrapper:focus-within, #app .arco-textarea-wrapper:focus-within { box-shadow:0 0 0 3px #3e63dd12; }
#app .arco-table { border-radius:14px; }
#app .arco-table-th { background:#f8f6f2; color:#4a4759; font-weight:600; }
#app .arco-table-td { border-bottom-color:#f0ece7; }
#app .arco-table-tr:hover > .arco-table-td { background:#f6f8ff; }
#app .arco-tag { border-radius:7px; }
#app .arco-tabs-nav-ink { background:var(--zzm-brand); border-radius:3px; }
#app .arco-tabs-tab-active { color:var(--zzm-brand); font-weight:600; }
html[data-zz^="merchant"] .arco-modal, html[data-zz^="merchant"] .arco-drawer-content { border-radius:18px; background:#fff; }
html[data-zz^="merchant"] .arco-modal-header, html[data-zz^="merchant"] .arco-modal-footer { border-color:var(--zzm-line); }
html[data-zz^="merchant"] .arco-message { border-radius:12px; }
#app .zzm-route-enter { animation:zzm-enter .2s ease-out; }
@keyframes zzm-enter { from{opacity:.55} to{opacity:1} }
@media (prefers-reduced-motion:reduce) { #app .zzm-route-enter { animation-duration:.1s; } }

/* One selected surface; suppress the vendor's second marker. */
html[data-zz="merchant"] #app .styles_firstItem::after,
html[data-zz="merchant"] #app .styles_secondItem::before,
html[data-zz="merchant"] #app .styles_secondItem::after { content:none !important; display:none !important; }
html[data-zz="merchant"] #app .styles_firstItem.styles_selected,
html[data-zz="merchant"] #app .styles_secondItem.styles_selected { box-shadow:none; }
html[data-zz="merchant"] #app .styles_secondItem {
  box-sizing:border-box; padding:0 14px; margin:4px 0; min-height:42px;
  display:flex; align-items:center; border-radius:10px;
}
html[data-zz="merchant"] #app .styles_secondItemName { line-height:1.5; white-space:nowrap; }
html[data-zz="merchant"] #app .styles_firstItem:hover,
html[data-zz="merchant"] #app .styles_secondItem:hover { background:#f1f4fc; }
html[data-zz="merchant"] #app .styles_firstItem.styles_selected:hover,
html[data-zz="merchant"] #app .styles_secondItem.styles_selected:hover { background:#e5ebfc; }

/* Account rows keep the action beside its status instead of at the screen edge. */
html[data-zz="merchant"] #app .styles_subAppContent:has(.zzm-account-page) { min-width:0; }
html[data-zz="merchant"] #app .zzm-account-page { width:100%; max-width:960px; margin-inline:auto; }
html[data-zz="merchant"] #app .zzm-account-page .arco-card-body { padding:8px 28px 20px; }
html[data-zz="merchant"] #app .zzm-account-page .arco-list-item { padding:22px 0; }
html[data-zz="merchant"] #app .zzm-account-page .arco-list-item-meta { display:flex; align-items:center; gap:24px; }
html[data-zz="merchant"] #app .zzm-account-page .arco-list-item-meta-avatar { flex:0 0 128px; width:128px; margin:0; }
html[data-zz="merchant"] #app .zzm-account-page .arco-list-item-meta-content { min-width:0; flex:1; }
html[data-zz="merchant"] #app .zzm-account-page .arco-list-item-meta-description { display:flex; align-items:center; justify-content:space-between; gap:20px; min-height:36px; }
html[data-zz="merchant"] #app .zzm-account-page .content { min-width:0; overflow-wrap:anywhere; }
html[data-zz="merchant"] #app .zzm-account-page .operation { flex:0 0 auto; margin:0; }
html[data-zz="merchant"] #app .zzm-account-page .operation .arco-link {
  min-width:68px; min-height:36px; padding:6px 15px; box-sizing:border-box;
  justify-content:center; border-radius:10px; background:#eef2fd; color:#3352c2;
}
html[data-zz="merchant"] #app .zzm-account-page .operation .arco-link:hover { background:#dce4fb; }
html[data-zz="merchant"] #app .zzm-account-page .operation .arco-link:focus-visible { outline:3px solid #a6b8ed; outline-offset:3px; }
html[data-zz="merchant"] #app .zzm-account-page .arco-list-item:last-child .operation .arco-link { background:#fff0ee; color:#bd4439; }
@media(max-width:1000px) {
  html[data-zz="merchant"] #app .zzm-account-page .arco-card-body { padding-inline:18px; }
  html[data-zz="merchant"] #app .zzm-account-page .arco-list-item-meta { gap:12px; }
  html[data-zz="merchant"] #app .zzm-account-page .arco-list-item-meta-avatar { flex-basis:100px; width:100px; }
}

/* Dashboard tasks are separate, readable targets rather than a decorative banner. */
html[data-zz="merchant"] #app .TodoListRow_MerchantContainer {
  background:transparent; border:0; border-radius:0; gap:12px; overflow:visible;
}
html[data-zz="merchant"] #app .TodoListRow_MerchantCard {
  min-width:0; flex:1; padding:20px 12px; border:1px solid #e6e9f1;
  border-radius:16px; background:#f8f9fd; color:#30374b;
  transition:background-color .18s,border-color .18s,box-shadow .18s;
}
html[data-zz="merchant"] #app .TodoListRow_MerchantCard:hover {
  background:#eef2fd; border-color:#bdcbf5; box-shadow:0 4px 14px #3e63dd0c;
}
html[data-zz="merchant"] #app .TodoListRow_MerchantCard:focus-visible { outline:3px solid #a6b8ed; outline-offset:3px; }
html[data-zz="merchant"] #app .TodoListRow_MerchantNumber { font-size:30px; line-height:1.25; font-weight:700; color:#3556be; }
html[data-zz="merchant"] #app .TodoListRow_MerchantName { margin-top:8px; color:#586176; font-size:14px; }
html[data-zz="merchant"] #app .TodoListRow_bkImgOne,
html[data-zz="merchant"] #app .TodoListRow_bkImgTwo { display:none; }

/* ================= v5.2 登录 / 注册 / 找回密码(仅 html.zzm-auth 生效,由 merchant.js 按路由标记) ================= */
html.zzm-auth body { background:var(--zzm-bg); }
html.zzm-auth #app .container {
  min-height:100vh; background:
    radial-gradient(560px 360px at 0% 0%, rgba(252,239,242,.9), transparent 70%),
    radial-gradient(620px 420px at 60% 100%, rgba(220,228,251,.55), transparent 70%),
    var(--zzm-bg);
}
/* 品牌标:旧黄色徽章换成小猪头 + 文字 */
html.zzm-auth #app .container .logo { background:none; display:inline-flex; align-items:center; gap:10px; }
html.zzm-auth #app .container .logo img { content:url(/assets/zzfk/mark.webp); width:38px !important; height:38px !important; margin-left:0; transition:transform .5s cubic-bezier(.2,.7,.2,1); }
html.zzm-auth #app .container .logo:hover img { transform:rotate(-8deg) scale(1.06); }
html.zzm-auth #app .container .logo::after { content:"猪猪发卡 · 商家中心"; font-weight:800; font-size:17px; letter-spacing:.02em; color:var(--zzm-ink); white-space:nowrap; }
/* 表单卡片 */
html.zzm-auth #app .container .content-inner {
  padding:36px 40px 30px; border-radius:24px; background:#fff;
  box-shadow:0 0 0 1px var(--zzm-line) inset, 0 28px 60px -20px rgba(29,27,44,.18);
  animation:zzm-rise .7s cubic-bezier(.2,.7,.2,1) both; overflow:visible;
}
/* 标签页内容区原本 overflow:hidden,会把按钮投影裁成方块 */
html.zzm-auth #app .content-inner .arco-tabs,
html.zzm-auth #app .content-inner .arco-tabs-content,
html.zzm-auth #app .content-inner .arco-tabs-content-item { overflow:visible; }
@keyframes zzm-rise { from { opacity:0; translate:0 16px; } }
html.zzm-auth #app [class$="form-title"] b { font-size:24px; font-weight:800; letter-spacing:-.01em; color:var(--zzm-ink); }
html.zzm-auth #app [class$="form-title"] .arco-tag { border:0; border-radius:999px; background:var(--zzm-soft); color:var(--zzm-brand); font-weight:600; }
html.zzm-auth #app .arco-tabs-nav::before { background:var(--zzm-line); }
html.zzm-auth #app .arco-tabs-tab-title { font-weight:600; }
html.zzm-auth #app .arco-form-item { margin-bottom:16px; }
html.zzm-auth #app .arco-input-wrapper {
  height:46px; border-radius:12px; background:#fff; border:1px solid #e2dcd3; transition:border-color .2s, box-shadow .2s;
}
html.zzm-auth #app .arco-input-wrapper:hover { border-color:#cfc8bd; background:#fff; }
html.zzm-auth #app .arco-input-wrapper:focus-within { border-color:var(--zzm-brand); box-shadow:0 0 0 4px #dce4fb; }
html.zzm-auth #app .arco-input-wrapper .arco-input { font-size:15px; }
html.zzm-auth #app .arco-input-prefix { color:var(--zzm-muted); }
html.zzm-auth #app .arco-input-wrapper:focus-within .arco-input-prefix { color:var(--zzm-brand); }
html.zzm-auth #app .arco-form-item-status-error .arco-input-wrapper { border-color:#e5544a; box-shadow:0 0 0 4px #fdeeec; }
html.zzm-auth #app .arco-btn-primary.arco-btn-long {
  height:48px; border-radius:999px; font-size:16px; font-weight:700; letter-spacing:.04em;
  box-shadow:0 1px 0 rgba(255,255,255,.25) inset, 0 10px 22px -10px rgba(62,99,221,.7);
}
html.zzm-auth #app .arco-btn-primary.arco-btn-long:not(.arco-btn-disabled):hover { transform:translateY(-1px); box-shadow:0 1px 0 rgba(255,255,255,.25) inset, 0 14px 26px -10px rgba(62,99,221,.75); }
html.zzm-auth #app .arco-btn-text { color:var(--zzm-brand); font-weight:600; border-radius:8px; }
html.zzm-auth #app .arco-btn-text:hover { background:var(--zzm-soft); }
html.zzm-auth #app .arco-checkbox-label, html.zzm-auth #app .arco-link { font-size:13px; }
html.zzm-auth #app .footer { color:var(--zzm-muted); font-size:13px; background:transparent; }
html.zzm-auth #app .footer a { color:var(--zzm-muted); }
html.zzm-auth #app .footer a:hover { color:var(--zzm-ink); }

/* 右侧品牌面板(电脑端):替换厂家的蓝色轮播 */
html.zzm-auth #app .banner {
  position:relative; overflow:hidden; isolation:isolate;
  background:linear-gradient(160deg, #eef2fd 0%, #fceff2 58%, #fdf6e2 100%);
  box-shadow:1px 0 0 var(--zzm-line) inset;
}
html.zzm-auth #app .banner::before { content:""; position:absolute; z-index:-1; right:-120px; top:-120px; width:460px; height:460px; border-radius:50%; background:radial-gradient(circle, rgba(255,255,255,.95), transparent 70%); }
html.zzm-auth #app .banner .banner-inner { display:none; }
html.zzm-auth #app .zzm-auth-hero { position:relative; width:min(400px, 100% - 64px); }
html.zzm-auth #app .zzm-auth-hero .zzm-pig { display:block; width:220px; height:auto; margin:0 0 -6px -6px; animation:zzm-bob 5s ease-in-out infinite; }
@keyframes zzm-bob { 0%,100% { translate:0 0; rotate:0deg; } 50% { translate:0 -6px; rotate:-1.2deg; } }
html.zzm-auth #app .zzm-auth-hero h2 { margin:18px 0 12px; font-size:34px; line-height:1.25; font-weight:800; letter-spacing:-.02em; color:var(--zzm-ink); }
html.zzm-auth #app .zzm-auth-hero h2 em { font-style:normal; color:var(--zzm-brand); background:linear-gradient(transparent 70%, rgba(242,190,70,.55) 70%); }
html.zzm-auth #app .zzm-auth-hero p { margin:0 0 22px; font-size:15px; line-height:1.8; color:#4a4759; }
html.zzm-auth #app .zzm-auth-hero ul { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin:0; padding:0; list-style:none; }
html.zzm-auth #app .zzm-auth-hero li {
  display:flex; align-items:center; gap:8px; padding:12px 14px; border-radius:14px; font-size:14px; font-weight:600; color:var(--zzm-ink);
  background:rgba(255,255,255,.75); -webkit-backdrop-filter:blur(8px); backdrop-filter:blur(8px); box-shadow:0 0 0 1px rgba(29,27,44,.05) inset;
  animation:zzm-rise .7s cubic-bezier(.2,.7,.2,1) both; animation-delay:calc(.25s + var(--i) * 80ms);
}
html.zzm-auth #app .zzm-auth-hero li::before { content:""; flex:none; width:18px; height:18px; border-radius:6px; background:#e6f5ef url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232E9E78' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5 10 17l9-10'/%3E%3C/svg%3E") center / 12px no-repeat; }

/* 电脑版窗口较窄时:右侧面板放不下,隐藏;表单让出 logo 的位置 */
@media (max-width:1180px) {
  html.zzm-auth #app .banner { display:none; }
  html.zzm-auth #app .container > .content { padding-top:72px; }
}
@media (max-height:720px) { html.zzm-auth #app .container > .content { padding-top:72px; } }
/* 手机端:去掉顶部旧装饰图,表单贴近上方 */
html.zzm-auth[data-zz="merchant-h5"] #app .container .logo, html.zzm-auth #app .container div.logo { width:100%; padding:22px 20px 6px; height:auto; background:none; }
html.zzm-auth #app .container div.logo img { width:34px !important; height:34px !important; }
@media (max-width:899px) {
  html.zzm-auth #app .container .content { align-items:flex-start; padding:12px 16px 72px; }
  html.zzm-auth #app .container .content-inner { width:100%; padding:28px 22px 24px; border-radius:22px; box-sizing:border-box; flex:none; height:auto; }
  html.zzm-auth #app [class$="form-wrapper"] { width:100%; }
  html.zzm-auth #app [class$="form-title"] b { font-size:22px; }
  /* 电脑版的 logo 是固定定位,窄窗口下给它让出位置(手机版 logo 在文档流里,不需要) */
  html.zzm-auth[data-zz="merchant"] #app .container .content { padding-top:76px; }
}
@media (prefers-reduced-motion:reduce) {
  @keyframes zzm-rise { from { opacity:0; } }
  html.zzm-auth #app .zzm-auth-hero .zzm-pig { animation:none; }
}

/* ================= v5.2 主题色:Arco 在 body 上定义了一套默认蓝,html 上的变量会被它盖住,所以在 body 层覆盖 ================= */
html[data-zz^="merchant"] body {
  --arcoblue-1:238,242,253; --arcoblue-2:220,228,251; --arcoblue-3:185,200,246; --arcoblue-4:143,166,238; --arcoblue-5:102,131,230;
  --arcoblue-6:62,99,221; --arcoblue-7:51,82,194; --arcoblue-8:42,67,161; --arcoblue-9:33,52,128; --arcoblue-10:24,38,94;
  --primary-1:238,242,253; --primary-2:220,228,251; --primary-3:185,200,246; --primary-4:143,166,238; --primary-5:102,131,230;
  --primary-6:62,99,221; --primary-7:51,82,194; --primary-8:42,67,161; --primary-9:33,52,128; --primary-10:24,38,94;
  --link-1:238,242,253; --link-6:62,99,221; --link-7:51,82,194;
  --success-1:230,245,239; --success-6:46,158,120; --green-1:230,245,239; --green-6:46,158,120;
  --warning-1:253,244,226; --warning-6:205,135,30; --orange-1:253,244,226; --orange-6:205,135,30;
  --danger-1:253,238,236; --danger-6:229,84,74; --red-1:253,238,236; --red-6:229,84,74;
  --color-text-1:#1d1b2c; --color-text-2:#4a4759; --color-text-3:#8b8698; --color-text-4:#b3afbc;
  --color-border-1:#f3efea; --color-border-2:#ece7e0; --color-border-3:#e2dcd3;
  --color-fill-1:#faf8f5; --color-fill-2:#f4f1ec; --color-fill-3:#ece7e0;
  --color-bg-2:#fff; --border-radius-small:6px; --border-radius-medium:10px; --border-radius-large:14px;
}
/* 弹窗按钮统一为胶囊 */
html[data-zz^="merchant"] .arco-modal .arco-btn { border-radius:999px; font-weight:600; min-width:84px; }
html[data-zz^="merchant"] .arco-modal-title { font-weight:700; }

/* ================= v5.3 工作台 / 列表 / 钱包:显示与交互(只改表现层) ================= */
/* 厂家给 body 写了 #fafbfc !important,短页面底部会露出一截冷灰,这里统一成暖白 */
html[data-zz^="merchant"], html[data-zz^="merchant"] body { background-color:var(--zzm-bg) !important; }
/* 厂家还有一层固定定位的蓝色渐变底(.style_bgc),内容短时会从卡片下方露出来;v5.5 在这一层上改画暖色极光 */
html[data-zz^="merchant"] #app .style_bgc { background:none; }
html[data-zz^="merchant"] body {
  --orangered-1:253,240,232; --orangered-6:207,96,48; --gold-1:252,244,220; --gold-6:160,112,8;
  --blue-1:238,242,253; --blue-6:62,99,221; --gray-2:242,240,236; --gray-6:122,117,135;
  --zzm-ease:cubic-bezier(.2,.7,.2,1);
}

/* 页头:旧黄色徽章换成小猪头 + 字标;消息角标不再压住文字 */
html[data-zz="merchant"] #app .styles_leftBar > a { display:inline-flex; align-items:center; gap:9px; text-decoration:none; }
html[data-zz="merchant"] #app .styles_leftBar > a .styles_newNavBarIcon { content:url(/assets/zzfk/mark.webp); width:34px; height:34px; object-fit:contain; transition:rotate .5s var(--zzm-ease), scale .5s var(--zzm-ease); }
html[data-zz="merchant"] #app .styles_leftBar > a:hover .styles_newNavBarIcon { rotate:-8deg; scale:1.06; }
html[data-zz="merchant"] #app .styles_leftBar > a::after {
  content:"猪猪发卡"; font-size:17px; font-weight:800; letter-spacing:.02em; color:var(--zzm-ink); white-space:nowrap;
}
html[data-zz="merchant"] #app .styles_leftBar > a::before {
  content:"商家中心"; order:2; padding:2px 8px; border-radius:999px; background:var(--zzm-soft); color:var(--zzm-brand);
  font-size:12px; font-weight:700; white-space:nowrap;
}
html[data-zz="merchant"] #app .index_headerIcon { padding-right:12px; border-radius:10px; transition:color .2s; }
html[data-zz="merchant"] #app .index_headerIcon:hover { color:var(--zzm-brand); }
html[data-zz="merchant"] #app .index_headerShopName { border-radius:999px; padding:4px 10px 4px 4px; transition:background-color .2s; }
html[data-zz="merchant"] #app .index_headerShopName:hover { background:#f1f4fc; }

/* 卡片入场:每次进入页面依次浮现(JS 写 --zzm-i 序号) */
@keyframes zzm-pop { from { opacity:0; translate:0 10px; } }
@keyframes zzm-row { from { opacity:0; translate:0 6px; } }
html[data-zz^="merchant"] #app .arco-layout-content .arco-card,
html[data-zz="merchant-h5"] #app .layout-container > * {
  animation:zzm-pop .5s var(--zzm-ease) both; animation-delay:calc(min(var(--zzm-i, 0), 8) * 55ms);
}
html[data-zz^="merchant"] #app .arco-card .arco-card { animation:none; }

/* 待办卡片:按类型配色;有待办时右上角亮点提示,为 0 时退成灰色 */
html[data-zz="merchant"] #app .TodoListRow_MerchantCard {
  --c:62,99,221; position:relative; cursor:pointer;
  background:rgba(var(--c),.055); border-color:rgba(var(--c),.16);
  transition:translate .28s var(--zzm-ease), box-shadow .28s, border-color .2s, background-color .2s;
  animation:zzm-pop .5s var(--zzm-ease) both;
}
html[data-zz="merchant"] #app .TodoListRow_MerchantCard:nth-child(1) { --c:196,132,24; animation-delay:.05s; }
html[data-zz="merchant"] #app .TodoListRow_MerchantCard:nth-child(2) { --c:62,99,221; animation-delay:.1s; }
html[data-zz="merchant"] #app .TodoListRow_MerchantCard:nth-child(3) { --c:204,80,104; animation-delay:.15s; }
html[data-zz="merchant"] #app .TodoListRow_MerchantCard:nth-child(4) { --c:214,116,36; animation-delay:.2s; }
html[data-zz="merchant"] #app .TodoListRow_MerchantCard:nth-child(5) { --c:196,70,62; animation-delay:.25s; }
html[data-zz="merchant"] #app .TodoListRow_MerchantCard:hover {
  translate:0 -3px; background:rgba(var(--c),.09); border-color:rgba(var(--c),.34);
  box-shadow:0 14px 26px -16px rgba(var(--c),.6);
}
html[data-zz="merchant"] #app .TodoListRow_MerchantNumber { color:rgb(var(--c)); }
html[data-zz="merchant"] #app .TodoListRow_MerchantName { opacity:1; color:#6b6679; font-weight:500; }
html[data-zz="merchant"] #app .TodoListRow_MerchantCard::after {
  content:""; position:absolute; top:12px; right:12px; width:7px; height:7px; border-radius:50%;
  background:rgb(var(--c)); box-shadow:0 0 0 0 rgba(var(--c),.45); animation:zzm-ping 2.4s ease-out infinite;
}
@keyframes zzm-ping { 0% { box-shadow:0 0 0 0 rgba(var(--c),.45); } 70%,100% { box-shadow:0 0 0 7px rgba(var(--c),0); } }
html[data-zz="merchant"] #app .TodoListRow_MerchantCard.zzm-zero { background:#fff; border-color:var(--zzm-line); }
html[data-zz="merchant"] #app .TodoListRow_MerchantCard.zzm-zero .TodoListRow_MerchantNumber { color:#b3afbc; }
html[data-zz="merchant"] #app .TodoListRow_MerchantCard.zzm-zero::after { display:none; }

/* 问候语(JS 插入)+ 厂家标语降为副标题 */
html[data-zz="merchant"] #app .left-side .banner .zzm-greet { margin:0 0 4px; font-size:22px; font-weight:800; letter-spacing:-.01em; color:var(--zzm-ink); }
html[data-zz="merchant"] #app .left-side .banner .zzm-greet em { font-style:normal; color:var(--zzm-brand); }
html[data-zz="merchant"] #app .left-side .banner .zzm-greet ~ h5.arco-typography { margin:0 0 6px; font-size:14px; font-weight:500; color:var(--zzm-muted); }

/* 店铺数据:小卡片 + 较昨日涨跌 */
html[data-zz="merchant"] #app .left-side .panel-col {
  border-radius:16px; transition:translate .28s var(--zzm-ease), box-shadow .28s, background-color .2s;
}
html[data-zz="merchant"] #app .left-side .panel-col:hover { translate:0 -2px; background:#fff; box-shadow:0 0 0 1px var(--zzm-line), 0 14px 26px -18px rgba(29,27,44,.35); }
html[data-zz="merchant"] #app .left-side .arco-statistic-title { color:#6b6679; font-weight:600; }
html[data-zz="merchant"] #app .left-side .arco-statistic-value { font-weight:750; color:var(--zzm-ink); }
html[data-zz="merchant"] #app .left-side .arco-statistic-extra { display:flex; align-items:center; flex-wrap:wrap; gap:6px; }
.zzm-delta {
  display:inline-flex; align-items:center; gap:2px; padding:1px 7px; border-radius:999px;
  font-size:12px; line-height:18px; font-weight:700; font-variant-numeric:tabular-nums; white-space:nowrap;
  animation:zzm-pop .45s var(--zzm-ease) both;
}
.zzm-delta.is-up { background:#e6f5ef; color:#23805f; }
.zzm-delta.is-down { background:#fdeef0; color:#b9465a; }
.zzm-delta.is-flat { background:#f2f0ec; color:#7a7587; }

/* 快捷操作:彩色图标块 */
html[data-zz="merchant"] #app .right-side .wrapper { --c:62,99,221; cursor:pointer; border-radius:14px; padding:8px 0 10px; transition:background-color .2s; }
html[data-zz="merchant"] #app .right-side .wrapper:nth-child(5n+2) { --c:124,104,214; }
html[data-zz="merchant"] #app .right-side .wrapper:nth-child(5n+3) { --c:46,158,120; }
html[data-zz="merchant"] #app .right-side .wrapper:nth-child(5n+4) { --c:196,132,24; }
html[data-zz="merchant"] #app .right-side .wrapper:nth-child(5n+5) { --c:204,80,104; }
html[data-zz="merchant"] #app .right-side .wrapper .icon {
  width:42px; height:42px; border-radius:13px; display:inline-flex; align-items:center; justify-content:center;
  background:rgba(var(--c),.1); color:rgb(var(--c)); font-size:19px;
  transition:translate .3s var(--zzm-ease), background-color .2s, color .2s, box-shadow .3s;
}
html[data-zz="merchant"] #app .right-side .wrapper:hover { background:#faf8f5; }
html[data-zz="merchant"] #app .right-side .wrapper:hover .icon { translate:0 -3px; background:rgb(var(--c)); color:#fff; box-shadow:0 10px 18px -10px rgba(var(--c),.8); }
html[data-zz="merchant"] #app .right-side .wrapper .text { margin-top:8px; color:#4a4759; font-weight:500; }

/* 公告:整行可点 */
html[data-zz="merchant"] #app .right-side .list .item { margin:0 -10px; padding:8px 10px; border-radius:10px; cursor:pointer; transition:background-color .2s; }
html[data-zz="merchant"] #app .right-side .list .item:hover { background:#f6f4f0; }
html[data-zz="merchant"] #app .right-side .list .item:hover .item-content { color:var(--zzm-brand); }

/* 平台客服卡:厂家的高饱和蓝换成品牌渐变,装饰圆缓慢漂移 */
html[data-zz="merchant"] #app .right-side .wechat {
  border-radius:20px; overflow:hidden; background:linear-gradient(135deg, #3e63dd 0%, #5b78e3 55%, #8a9cec 100%);
  box-shadow:0 18px 34px -22px rgba(62,99,221,.9);
}
html[data-zz="merchant"] #app .right-side .wechat-bg-circle1,
html[data-zz="merchant"] #app .right-side .wechat-bg-circle2 { opacity:.5; animation:zzm-drift 14s ease-in-out infinite alternate; }
html[data-zz="merchant"] #app .right-side .wechat-bg-circle2 { animation-duration:18s; animation-direction:alternate-reverse; }
@keyframes zzm-drift { to { translate:14px -10px; } }
html[data-zz="merchant"] #app .right-side .wechat-code { border-radius:12px; padding:5px; background:#fff; box-shadow:0 8px 18px -10px rgba(0,0,0,.35); }
/* 平台客服 24 小时在线(平台已确认) */
html[data-zz="merchant"] #app .right-side .wechat-text-name { display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
html[data-zz="merchant"] #app .right-side .wechat-text-name::after {
  content:"24 小时在线"; display:inline-flex; align-items:center; padding:2px 9px 2px 20px; border-radius:999px; font-size:12px; font-weight:600; line-height:18px;
  color:#fff; background:rgba(255,255,255,.2) radial-gradient(circle at 10px 50%, #7ee2b8 0 3.5px, transparent 4.5px); box-shadow:inset 0 0 0 1px rgba(255,255,255,.28);
}

/* 表格:数字等宽、状态标签带圆点、行依次浮现 */
#app .arco-tag { border:0; border-radius:999px; padding:0 8px; font-weight:600; }
#app .arco-table-td-content > .arco-tag { gap:5px; }
#app .arco-table-td-content > .arco-tag::before { content:""; width:6px; height:6px; border-radius:50%; background:currentColor; opacity:.85; }
#app .arco-table-td .item-span, #app .arco-table-td .apply-time p, #app .arco-table-td .used-time p { font-variant-numeric:tabular-nums; }
#app .arco-table-td .apply-time > span, #app .arco-table-td .used-time > span {
  display:inline-block; margin-right:6px; padding:0 6px; border-radius:6px; font-size:12px; line-height:18px;
  background:#eef2fd; color:#3e63dd;
}
#app .arco-table-td .used-time > span { background:#fdf4e2; color:#a86b12; }
/* 厂家表格是 break-all,日期会从数字中间断开;改成优先在空格处换行 */
#app .arco-table-td .arco-table-td-content { word-break:normal; overflow-wrap:break-word; }
/* 订单号不折行(售后列表那一列只有 150px) */
#app .arco-table-td .item-span.zzm-copy { white-space:nowrap; font-size:13px; letter-spacing:-.01em; }
#app .arco-table-td .used-time:not(:has(p)) { opacity:.4; }
#app .arco-table-td a.name { color:var(--zzm-ink); transition:color .2s; }
#app .arco-table-td a.name:hover { color:var(--zzm-brand); }
#app .arco-table tbody > .arco-table-tr { animation:zzm-row .42s var(--zzm-ease) both; }
#app .arco-table tbody > .arco-table-tr:nth-child(2) { animation-delay:.03s; }
#app .arco-table tbody > .arco-table-tr:nth-child(3) { animation-delay:.06s; }
#app .arco-table tbody > .arco-table-tr:nth-child(4) { animation-delay:.09s; }
#app .arco-table tbody > .arco-table-tr:nth-child(5) { animation-delay:.12s; }
#app .arco-table tbody > .arco-table-tr:nth-child(6) { animation-delay:.15s; }
#app .arco-table tbody > .arco-table-tr:nth-child(7) { animation-delay:.18s; }
#app .arco-table tbody > .arco-table-tr:nth-child(n+8) { animation-delay:.21s; }
#app .arco-table-tr > .arco-table-td { transition:background-color .18s; }
/* 订单号点一下就复制(JS 标记 .zzm-copy) */
#app .zzm-copy { cursor:copy; border-radius:6px; transition:background-color .2s, color .2s; }
#app .zzm-copy:hover { background:#eef2fd; color:var(--zzm-brand); }

/* 分页 */
#app .arco-pagination-item { border-radius:10px; transition:background-color .2s, color .2s, box-shadow .2s; }
#app .arco-pagination-item:not(.arco-pagination-item-active):not(.arco-pagination-item-disabled):hover { background:#eef2fd; color:var(--zzm-brand); }
#app .arco-pagination-item-active { background:var(--zzm-brand); color:#fff; font-weight:700; box-shadow:0 6px 14px -8px rgba(62,99,221,.9); }

/* 空状态:小猪代替默认灰盒子 */
html[data-zz^="merchant"] .arco-empty-image { width:76px; height:76px; margin:0 auto 10px; background:url(/assets/zzfk/mark.webp) center / contain no-repeat; opacity:.6; animation:zzm-float 4.5s ease-in-out infinite; }
html[data-zz^="merchant"] .arco-empty-image > * { display:none; }
html[data-zz^="merchant"] .arco-empty-description { color:var(--zzm-muted); }
@keyframes zzm-float { 50% { translate:0 -5px; } }

/* 加载 */
html[data-zz^="merchant"] .arco-spin-icon { color:var(--zzm-brand); }
html[data-zz^="merchant"] .arco-spin-mask { background:rgba(250,248,245,.55); -webkit-backdrop-filter:blur(1.5px); backdrop-filter:blur(1.5px); }

/* 钱包:账户卡片,金额加大;第一张(平台账户)用品牌色强调 */
html[data-zz="merchant"] #app .card-col {
  border-radius:18px; border-color:var(--zzm-line); overflow:hidden; background:#fff;
  transition:translate .28s var(--zzm-ease), box-shadow .28s, border-color .2s;
}
html[data-zz="merchant"] #app .card-col:hover { translate:0 -2px; border-color:#dcd5ca; box-shadow:0 16px 30px -22px rgba(29,27,44,.4); }
html[data-zz="merchant"] #app .card-col > .header { background:#faf8f5; border-bottom:1px solid var(--zzm-line); }
html[data-zz="merchant"] #app .card-col > .header .title { font-weight:700; color:var(--zzm-ink); }
html[data-zz="merchant"] #app .arco-col:first-child > .card-col > .header { background:linear-gradient(120deg, #eef2fd, #fceff2); }
html[data-zz="merchant"] #app .money_box .sub_title { color:#6b6679; }
html[data-zz="merchant"] #app .money_box .sub_content { color:var(--zzm-muted); }
html[data-zz="merchant"] #app .money_box .price { font-size:26px; font-weight:750; letter-spacing:-.02em; color:var(--zzm-ink); font-variant-numeric:tabular-nums; }
html[data-zz="merchant"] #app .arco-col:first-child > .card-col .money_box > div:first-child .price { color:var(--zzm-brand); }

@media (prefers-reduced-motion:reduce) {
  @keyframes zzm-pop { from { opacity:0; } }
  @keyframes zzm-row { from { opacity:0; } }
  html[data-zz^="merchant"] #app .TodoListRow_MerchantCard::after,
  html[data-zz^="merchant"] .arco-empty-image,
  html[data-zz="merchant"] #app .right-side .wechat-bg-circle1,
  html[data-zz="merchant"] #app .right-side .wechat-bg-circle2 { animation:none; }
  html[data-zz^="merchant"] #app .TodoListRow_MerchantCard:hover,
  html[data-zz^="merchant"] #app .left-side .panel-col:hover,
  html[data-zz^="merchant"] #app .card-col:hover,
  html[data-zz^="merchant"] #app .right-side .wrapper:hover .icon { translate:none; }
}

/* ================= v5.4 顺滑与手感:弹层动画、滑动高亮、按钮/链接/开关反馈 ================= */
html[data-zz^="merchant"] body { --zzm-spring:cubic-bezier(.3,1.25,.4,1); --zzm-out:cubic-bezier(.16,1,.3,1); }

/* 侧边栏:一块高亮随鼠标滑动,另一块停在当前页;厂家刷新后不选中任何项,由 JS 按地址补 .zzm-current */
html[data-zz="merchant"] #app .zzm-glide-ready { position:relative; }
html[data-zz="merchant"] #app .zzm-glide {
  position:absolute; left:0; top:0; z-index:0; width:0; height:0; border-radius:12px; pointer-events:none; opacity:0;
  transition:translate .42s var(--zzm-spring), width .42s var(--zzm-spring), height .42s var(--zzm-spring), opacity .2s ease;
}
html[data-zz="merchant"] #app .zzm-glide.is-sel { background:var(--zzm-soft); box-shadow:inset 0 0 0 1px #dce4fb; }
html[data-zz="merchant"] #app .zzm-glide.is-hover { background:#f3f1ec; }
html[data-zz="merchant"] #app .zzm-glide.is-jump { transition:opacity .2s ease; }
html[data-zz="merchant"] #app .styles_secondMenuWrapper .zzm-glide { border-radius:10px; }
html[data-zz="merchant"] #app .zzm-glide-ready .styles_firstItem,
html[data-zz="merchant"] #app .zzm-glide-ready .styles_secondItem { position:relative; z-index:1; background:transparent !important; box-shadow:none !important; }
html[data-zz="merchant"] #app .styles_firstItem.zzm-current { color:var(--zzm-brand); }
html[data-zz="merchant"] #app .styles_firstItem svg { transition:scale .35s var(--zzm-spring), color .2s; }
html[data-zz="merchant"] #app .styles_firstItem:hover svg { scale:1.12; }
html[data-zz="merchant"] #app .styles_firstItem.styles_selected svg,
html[data-zz="merchant"] #app .styles_firstItem.zzm-current svg { color:var(--zzm-brand); }

/* 弹窗:厂家是从 0.5 倍带回弹放大,换成小幅上浮 + 轻缩放;遮罩加一点模糊(厂家进入动画类名拼错,遮罩是硬切的) */
html[data-zz^="merchant"] .zoom-modal-enter-from, html[data-zz^="merchant"] .zoom-modal-appear-from { opacity:0; transform:translateY(12px) scale(.96); }
html[data-zz^="merchant"] .zoom-modal-enter-active, html[data-zz^="merchant"] .zoom-modal-appear-active { transition:opacity .24s ease-out, transform .46s var(--zzm-out); }
html[data-zz^="merchant"] .zoom-modal-leave-to { opacity:0; transform:translateY(6px) scale(.98); }
html[data-zz^="merchant"] .zoom-modal-leave-active { transition:opacity .16s ease-in, transform .18s ease-in; }
html[data-zz^="merchant"] .fade-modal-enter-active, html[data-zz^="merchant"] .fade-modal-appear-active { transition:opacity .26s ease-out; }
html[data-zz^="merchant"] .fade-modal-leave-active { transition:opacity .2s ease-in; }
html[data-zz^="merchant"] .arco-modal-mask, html[data-zz^="merchant"] .arco-drawer-mask { background:rgba(29,27,44,.34); -webkit-backdrop-filter:blur(3px); backdrop-filter:blur(3px); }
html[data-zz^="merchant"] .arco-modal { box-shadow:0 30px 70px -24px rgba(29,27,44,.4); }
/* 抽屉 */
html[data-zz^="merchant"] .slide-right-drawer-enter-active, html[data-zz^="merchant"] .slide-right-drawer-appear-active,
html[data-zz^="merchant"] .slide-left-drawer-enter-active, html[data-zz^="merchant"] .slide-left-drawer-appear-active { transition:transform .44s var(--zzm-out); }
html[data-zz^="merchant"] .slide-right-drawer-leave-active, html[data-zz^="merchant"] .slide-left-drawer-leave-active { transition:transform .24s ease-in; }
/* 下拉 / 选择器 / 气泡 */
html[data-zz^="merchant"] .slide-dynamic-origin-enter-from, html[data-zz^="merchant"] .slide-dynamic-origin-appear-from { opacity:0; transform:translateY(-4px) scaleY(.96); }
html[data-zz^="merchant"] .slide-dynamic-origin-enter-active, html[data-zz^="merchant"] .slide-dynamic-origin-appear-active { transition:opacity .18s ease-out, transform .3s var(--zzm-out); }
html[data-zz^="merchant"] .slide-dynamic-origin-leave-to { opacity:0; transform:translateY(-2px) scaleY(.98); }
html[data-zz^="merchant"] .slide-dynamic-origin-leave-active { transition:opacity .12s ease-in, transform .12s ease-in; }
html[data-zz^="merchant"] .zoom-in-fade-out-enter-from, html[data-zz^="merchant"] .zoom-in-fade-out-appear-from,
html[data-zz^="merchant"] .zoom-in-fade-out-leave-to { opacity:0; transform:scale(.92); }
html[data-zz^="merchant"] .zoom-in-fade-out-enter-active, html[data-zz^="merchant"] .zoom-in-fade-out-appear-active { transition:opacity .18s ease-out, transform .32s var(--zzm-out); }
html[data-zz^="merchant"] .zoom-in-fade-out-leave-active { transition:opacity .12s ease-in, transform .12s ease-in; }
html[data-zz^="merchant"] .arco-dropdown, html[data-zz^="merchant"] .arco-select-dropdown, html[data-zz^="merchant"] .arco-picker-container,
html[data-zz^="merchant"] .arco-popover-popup-content, html[data-zz^="merchant"] .arco-trigger-menu {
  border-color:var(--zzm-line); border-radius:12px; box-shadow:0 16px 36px -14px rgba(29,27,44,.28);
}
html[data-zz^="merchant"] .arco-dropdown-option, html[data-zz^="merchant"] .arco-select-option { margin:0 4px; border-radius:8px; transition:background-color .15s, color .15s; }
html[data-zz^="merchant"] .arco-dropdown-option:not(.arco-dropdown-option-disabled):hover,
html[data-zz^="merchant"] .arco-select-option-hover { background:#eef2fd; color:var(--zzm-brand); }
/* 消息提示:从上方轻滑入 */
html[data-zz^="merchant"] .fade-message-enter-from, html[data-zz^="merchant"] .fade-message-appear-from { opacity:0; transform:translateY(-10px) scale(.98); }
html[data-zz^="merchant"] .fade-message-enter-active, html[data-zz^="merchant"] .fade-message-appear-active { transition:opacity .2s ease-out, transform .42s var(--zzm-spring); }
html[data-zz^="merchant"] .fade-message-leave-active { transition:opacity .18s ease-in; }
html[data-zz^="merchant"] .arco-message { border-color:var(--zzm-line); box-shadow:0 12px 30px -14px rgba(29,27,44,.3); }

/* 标签页下划线、开关、复选框:带一点弹性 */
#app .arco-tabs-nav-ink { transition:left .42s var(--zzm-spring), width .42s var(--zzm-spring); }
#app .arco-tabs-tab { transition:color .2s; }
#app .arco-switch { transition:background-color .25s; }
#app .arco-switch-handle { transition:left .38s var(--zzm-spring), color .2s; }
#app .arco-checkbox-checked .arco-checkbox-icon, #app .arco-radio-checked .arco-radio-button, #app .arco-radio-checked .arco-icon-hover { animation:zzm-check .34s var(--zzm-spring); }
@keyframes zzm-check { 0% { scale:.7; } 100% { scale:1; } }
/* 标签页内容切换时淡入 */
#app .arco-tabs-content-item-active > .arco-tabs-pane { animation:zzm-fade .28s ease-out; }
@keyframes zzm-fade { from { opacity:0; } }

/* 按钮:主按钮悬停微微上浮,键盘焦点有清晰描边 */
#app .arco-btn { transition:background-color .2s, color .2s, box-shadow .25s, translate .25s var(--zzm-out), border-color .2s; }
#app .arco-btn-primary:not(.arco-btn-disabled):hover { translate:0 -1px; }
#app .arco-btn-primary:not(.arco-btn-disabled):active { translate:0 0; }
#app .arco-btn:focus-visible, #app .arco-link:focus-visible, #app [data-fx]:focus-visible, html[data-zz^="merchant"] .arco-modal .arco-btn:focus-visible { outline:3px solid #a6b8ed; outline-offset:2px; }
/* 表格里的文字链接:去掉灰底,换成下划线从左扫入 */
#app .arco-table-td .arco-link, #app .arco-table-td a.name {
  background:linear-gradient(currentColor, currentColor) 0 100% / 0 1px no-repeat; transition:background-size .3s var(--zzm-out), color .2s;
}
#app .arco-table-td .arco-link:hover, #app .arco-table-td a.name:hover { background-color:transparent; background-size:100% 1px; }
/* 表格行悬停:左侧出现品牌色细条 */
#app .arco-table-tr:hover > .arco-table-td:first-child { box-shadow:inset 3px 0 0 var(--zzm-brand); }
/* 输入框聚焦过渡 */
#app .arco-input-wrapper, #app .arco-textarea-wrapper, #app .arco-select-view, #app .arco-picker { transition:background-color .2s, border-color .2s, box-shadow .25s; }
#app .arco-input-wrapper:focus-within, #app .arco-textarea-wrapper:focus-within, #app .arco-select-view-focus, #app .arco-picker-focused { background:#fff; }
/* 加载中:内容轻微变淡,加载完平滑恢复 */
#app .arco-spin-children { transition:opacity .25s ease; }
#app .arco-spin-loading > .arco-spin-children { opacity:.6; }
/* 图片加载完再淡入(JS 标记) */
#app img[data-zzm-img] { transition:opacity .4s ease; }
#app img.zzm-img-wait { opacity:0; }

@media (prefers-reduced-motion:reduce) {
  html[data-zz="merchant"] #app .zzm-glide { transition:opacity .15s ease; }
  #app .arco-checkbox-checked .arco-checkbox-icon, #app .arco-radio-checked .arco-radio-button, #app .arco-radio-checked .arco-icon-hover { animation:none; }
  #app .arco-btn-primary:not(.arco-btn-disabled):hover, html[data-zz="merchant"] #app .styles_firstItem:hover svg { translate:none; scale:none; }
  html[data-zz^="merchant"] .zoom-modal-enter-from, html[data-zz^="merchant"] .zoom-modal-appear-from, html[data-zz^="merchant"] .zoom-modal-leave-to,
  html[data-zz^="merchant"] .fade-message-enter-from, html[data-zz^="merchant"] .fade-message-appear-from,
  html[data-zz^="merchant"] .slide-dynamic-origin-enter-from, html[data-zz^="merchant"] .slide-dynamic-origin-appear-from,
  html[data-zz^="merchant"] .zoom-in-fade-out-enter-from, html[data-zz^="merchant"] .zoom-in-fade-out-appear-from, html[data-zz^="merchant"] .zoom-in-fade-out-leave-to { transform:none; }
}

/* ================= v5.5 品牌个性与层次:氛围底、欢迎横幅、功能区配色、图标徽章 ================= */
/* 图标(描边 SVG,当 mask 用,颜色跟随 background-color)。
   必须定义在 html 上:功能区属性也打在 html 上,--zone-icon:var(--ic-xx) 在声明处求值,放 body 上会取不到 */
html[data-zz^="merchant"] {
  --ic-home:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 10.5 12 4l8 6.5V19a1 1 0 0 1-1 1h-4.5v-5.5h-5V20H5a1 1 0 0 1-1-1z'/%3E%3C/svg%3E");
  --ic-store:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4.5 9 6 4h12l1.5 5M4 9h16v1.5a2.7 2.7 0 0 1-5.3.7 2.7 2.7 0 0 1-5.4 0A2.7 2.7 0 0 1 4 10.5zM5.5 13.5V20h13v-6.5'/%3E%3C/svg%3E");
  --ic-box:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3 4 7v10l8 4 8-4V7zM4 7l8 4 8-4M12 11v10'/%3E%3C/svg%3E");
  --ic-receipt:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 3h12v18l-3-2-3 2-3-2-3 2zM9 8h6M9 12h6M9 16h3'/%3E%3C/svg%3E");
  --ic-chat:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 6a1 1 0 0 1 1-1h14a1 1 0 0 1 1 1v10a1 1 0 0 1-1 1h-7l-4 3v-3H5a1 1 0 0 1-1-1zM8 10h8M8 13h5'/%3E%3C/svg%3E");
  --ic-ticket:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 7h16v3a2 2 0 0 0 0 4v3H4v-3a2 2 0 0 0 0-4zM14 7v10'/%3E%3C/svg%3E");
  --ic-users:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 11a3 3 0 1 0 0-6 3 3 0 0 0 0 6zM3 20a6 6 0 0 1 12 0M15.5 5.2a3 3 0 0 1 0 5.6M17.5 14.2A6 6 0 0 1 21 20'/%3E%3C/svg%3E");
  --ic-link:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M10 14a4 4 0 0 0 5.7 0l3-3a4 4 0 0 0-5.7-5.7l-1 1M14 10a4 4 0 0 0-5.7 0l-3 3a4 4 0 0 0 5.7 5.7l1-1'/%3E%3C/svg%3E");
  --ic-wallet:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 7.5A2.5 2.5 0 0 1 6.5 5H17v3M4 7.5V18a2 2 0 0 0 2 2h14V8H6.5A2.5 2.5 0 0 1 4 7.5zM16 14h.01'/%3E%3C/svg%3E");
  --ic-user:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 12a4 4 0 1 0 0-8 4 4 0 0 0 0 8zM4 21a8 8 0 0 1 16 0'/%3E%3C/svg%3E");
  --ic-clock:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21a9 9 0 1 0 0-18 9 9 0 0 0 0 18zM12 7v5l3 2'/%3E%3C/svg%3E");
  --ic-send:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 3 10 14M21 3l-7 18-4-7-7-4z'/%3E%3C/svg%3E");
  --ic-layers:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 4 3 9l9 5 9-5zM3 14l9 5 9-5'/%3E%3C/svg%3E");
  --ic-shield:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3 5 6v5c0 4.5 3 8 7 10 4-2 7-5.5 7-10V6zM12 9v4M12 16h.01'/%3E%3C/svg%3E");
  --ic-yen:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 4l5 7 5-7M12 11v9M8 13h8M8 16.5h8'/%3E%3C/svg%3E");
  --ic-eye:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 12s3.6-7 10-7 10 7 10 7-3.6 7-10 7S2 12 2 12zM12 15a3 3 0 1 0 0-6 3 3 0 0 0 0 6z'/%3E%3C/svg%3E");
}
/* v5.6 调色板:10 个色相在色环上拉开,每色两档——主色(图标/色块)和墨色(文字,保证对比度)。
   颜色只用在"身份"元素(图标、徽章、圆点、数字),按钮/标签页/链接这些操作件一律保持品牌蓝 */
html[data-zz^="merchant"] {
  --p-blue:62,99,221;    --p-blue-ink:51,82,194;
  --p-sky:26,155,224;    --p-sky-ink:12,116,176;
  --p-violet:128,89,232; --p-violet-ink:102,63,204;
  --p-plum:181,79,207;   --p-plum-ink:145,52,170;
  --p-rose:232,80,138;   --p-rose-ink:192,50,104;
  --p-coral:236,92,64;   --p-coral-ink:196,62,40;
  --p-orange:242,138,26; --p-orange-ink:186,98,8;
  --p-green:47,165,90;   --p-green-ink:30,124,64;
  --p-teal:18,163,154;   --p-teal-ink:8,122,115;
  --p-red:229,72,61;     --p-red-ink:190,44,36;
  --p-slate:100,116,139; --p-slate-ink:71,85,105;
}
/* 功能区:首页蓝、店铺珊瑚、商品紫、订单天蓝、售后玫红、营销橙、分销青绿、货源梅紫、资金绿、我的石板灰(JS 按路由和菜单文字打 data-zzm-zone) */
[data-zzm-zone] { --zone:var(--p-blue); --zone-ink:var(--p-blue-ink); --zone-icon:var(--ic-home); }
[data-zzm-zone="shop"] { --zone:var(--p-coral); --zone-ink:var(--p-coral-ink); --zone-icon:var(--ic-store); }
[data-zzm-zone="goods"] { --zone:var(--p-violet); --zone-ink:var(--p-violet-ink); --zone-icon:var(--ic-box); }
[data-zzm-zone="orders"] { --zone:var(--p-sky); --zone-ink:var(--p-sky-ink); --zone-icon:var(--ic-receipt); }
[data-zzm-zone="complaint"] { --zone:var(--p-rose); --zone-ink:var(--p-rose-ink); --zone-icon:var(--ic-chat); }
[data-zzm-zone="sales"] { --zone:var(--p-orange); --zone-ink:var(--p-orange-ink); --zone-icon:var(--ic-ticket); }
[data-zzm-zone="agent"] { --zone:var(--p-teal); --zone-ink:var(--p-teal-ink); --zone-icon:var(--ic-users); }
[data-zzm-zone="parent"] { --zone:var(--p-plum); --zone-ink:var(--p-plum-ink); --zone-icon:var(--ic-link); }
[data-zzm-zone="wallet"] { --zone:var(--p-green); --zone-ink:var(--p-green-ink); --zone-icon:var(--ic-wallet); }
[data-zzm-zone="user"] { --zone:var(--p-slate); --zone-ink:var(--p-slate-ink); --zone-icon:var(--ic-user); }

/* 氛围底:厂家那层固定背景换成首页同款的极淡极光,两团柔光极慢漂移(只在卡片之间的空隙里露出来) */
html[data-zz="merchant"] #app .style_bgc {
  overflow:hidden;
  background:
    radial-gradient(720px 380px at 10% 0%, rgba(238,143,161,.11), transparent 70%),
    radial-gradient(780px 420px at 95% 4%, rgba(62,99,221,.09), transparent 70%),
    radial-gradient(640px 340px at 72% 100%, rgba(242,190,70,.10), transparent 70%);
}
html[data-zz="merchant"] #app .style_bgc::before,
html[data-zz="merchant"] #app .style_bgc::after { content:""; position:absolute; border-radius:50%; pointer-events:none; }
html[data-zz="merchant"] #app .style_bgc::before {
  width:900px; height:900px; right:-260px; top:-380px;
  background:radial-gradient(circle, rgba(62,99,221,.07), transparent 62%);
  animation:zzm-amb-a 60s ease-in-out infinite alternate;
}
html[data-zz="merchant"] #app .style_bgc::after {
  width:820px; height:820px; left:-240px; bottom:-420px;
  background:radial-gradient(circle, rgba(238,143,161,.08), rgba(242,190,70,.04) 40%, transparent 64%);
  animation:zzm-amb-b 72s ease-in-out infinite alternate;
}
@keyframes zzm-amb-a { to { translate:-160px 120px; } }
@keyframes zzm-amb-b { to { translate:180px -90px; } }

/* 工作台欢迎横幅:淡彩底 + 点阵 + 举卡小猪 + 倾斜字标(JS 插入 .zzm-hero-art) */
html[data-zz="merchant"] #app .left-side .banner { padding:16px 16px 0; }
html[data-zz="merchant"] #app .left-side .banner > .arco-col {
  position:relative; overflow:hidden; isolation:isolate; min-height:118px; box-sizing:border-box; padding:20px 24px 18px; border-radius:18px;
  background:linear-gradient(118deg, #EEF2FD 0%, #F6F2FC 42%, #FCEFF2 70%, #FDF6E2 100%);
  box-shadow:inset 0 0 0 1px rgba(62,99,221,.07);
}
html[data-zz="merchant"] #app .left-side .banner > .arco-col::before {
  content:""; position:absolute; inset:0; z-index:-1; pointer-events:none;
  background-image:radial-gradient(rgba(29,27,44,.08) 1px, transparent 1px); background-size:20px 20px;
  -webkit-mask-image:radial-gradient(ellipse 45% 90% at 82% 50%, #000 15%, transparent 75%); mask-image:radial-gradient(ellipse 45% 90% at 82% 50%, #000 15%, transparent 75%);
}
html[data-zz="merchant"] #app .zzm-hero-art { position:absolute; right:0; top:0; bottom:0; width:340px; z-index:-1; pointer-events:none; }
html[data-zz="merchant"] #app .zzm-hero-art img { position:absolute; right:40px; bottom:-4px; width:168px; height:auto; filter:drop-shadow(0 10px 16px rgba(29,27,44,.12)); animation:zzm-bob 6s ease-in-out infinite; }
html[data-zz="merchant"] #app .zzm-hero-art i {
  position:absolute; left:var(--x); top:var(--y); display:grid; place-items:center; width:34px; height:34px; border-radius:11px;
  font-style:normal; font-weight:800; font-size:14px; background:rgba(255,255,255,.85); rotate:var(--r);
  box-shadow:0 0 0 1px rgba(29,27,44,.05) inset, 0 10px 20px -12px rgba(29,27,44,.3);
  animation:zzm-tk 7s ease-in-out infinite; animation-delay:calc(var(--z) * -9s);
}
@keyframes zzm-tk { 50% { translate:0 -6px; } }
html[data-zz="merchant"] #app .zzm-hero-art .t-blue { color:#3E63DD; }
html[data-zz="merchant"] #app .zzm-hero-art .t-pink { color:#D86A80; }
html[data-zz="merchant"] #app .zzm-hero-art .t-yellow { color:#B9851A; }
/* 问候语里的店铺名:首页同款暖黄荧光笔下划线,进入时画出来 */
html[data-zz="merchant"] #app .left-side .banner .zzm-greet { position:relative; z-index:1; font-size:24px; }
html[data-zz="merchant"] #app .zzm-greet em { position:relative; white-space:nowrap; }
html[data-zz="merchant"] #app .zzm-swash { position:absolute; left:-2%; bottom:-.16em; width:104%; height:.36em; overflow:visible; z-index:-1; pointer-events:none; }
html[data-zz="merchant"] #app .zzm-swash path { fill:none; stroke:#F2BE46; stroke-width:7; stroke-linecap:round; opacity:.7; stroke-dasharray:220; stroke-dashoffset:220; animation:zzm-draw .9s var(--zzm-ease) .3s forwards; }
@keyframes zzm-draw { to { stroke-dashoffset:0; } }
html[data-zz="merchant"] #app .left-side .banner .sub_title { color:#7a7587; }

/* 侧边栏图标按功能区上色 */
html[data-zz="merchant"] #app .styles_firstItem[data-zzm-zone] svg { color:rgb(var(--zone)); }

/* 页面主标题:功能区色的图标徽章;其余卡片标题前一个功能区色小圆点 */
html[data-zz="merchant"] #app .arco-layout-content .arco-card-header-title { display:flex; align-items:center; gap:10px; }
html[data-zz="merchant"] #app .arco-layout-content .arco-card-header-title:not(.zzm-page-title)::before {
  content:""; flex:none; width:8px; height:8px; border-radius:50%; background:rgb(var(--zone, 62,99,221)); box-shadow:0 0 0 4px rgba(var(--zone, 62,99,221),.13);
}
html[data-zz="merchant"] #app .zzm-page-title { position:relative; gap:12px; font-size:17px; }
html[data-zz="merchant"] #app .zzm-page-title::before {
  content:""; flex:none; width:36px; height:36px; border-radius:12px;
  background:linear-gradient(140deg, rgba(var(--zone),.16), rgba(var(--zone),.07)); box-shadow:inset 0 0 0 1px rgba(var(--zone),.14);
}
html[data-zz="merchant"] #app .zzm-page-title::after {
  content:""; position:absolute; left:9px; top:50%; width:18px; height:18px; margin-top:-9px; background:rgb(var(--zone));
  -webkit-mask:var(--zone-icon) center / contain no-repeat; mask:var(--zone-icon) center / contain no-repeat;
}
/* 表头底边带一点功能区色 */
html[data-zz="merchant"] #app .arco-table-th { border-bottom:2px solid rgba(var(--zone, 62,99,221),.16); }

/* 待办卡片:左上角类型图标 */
html[data-zz="merchant"] #app .TodoListRow_MerchantCard::before {
  content:""; position:absolute; left:14px; top:14px; width:18px; height:18px; background:rgb(var(--c)); opacity:.8;
  -webkit-mask:var(--ic, var(--ic-clock)) center / contain no-repeat; mask:var(--ic, var(--ic-clock)) center / contain no-repeat;
}
html[data-zz="merchant"] #app .TodoListRow_MerchantCard:nth-child(1) { --ic:var(--ic-clock); }
html[data-zz="merchant"] #app .TodoListRow_MerchantCard:nth-child(2) { --ic:var(--ic-send); }
html[data-zz="merchant"] #app .TodoListRow_MerchantCard:nth-child(3) { --ic:var(--ic-chat); }
html[data-zz="merchant"] #app .TodoListRow_MerchantCard:nth-child(4) { --ic:var(--ic-layers); }
html[data-zz="merchant"] #app .TodoListRow_MerchantCard:nth-child(5) { --ic:var(--ic-shield); }
html[data-zz="merchant"] #app .TodoListRow_MerchantCard.zzm-zero::before { background:#b3afbc; }

/* 店铺数据四张小卡:各自的颜色、右上角图标徽章、角落一层极淡晕染 */
html[data-zz="merchant"] #app .left-side .panel-col { --k:62,99,221; --ic:var(--ic-yen); position:relative; background:radial-gradient(170px 150px at calc(100% + 30px) -40px, rgba(var(--k),.14), transparent 70%), #f9f8f6; }
html[data-zz="merchant"] #app .left-side .panel-col:nth-child(2) { --k:133,118,222; --ic:var(--ic-receipt); }
html[data-zz="merchant"] #app .left-side .panel-col:nth-child(3) { --k:46,158,120; --ic:var(--ic-eye); }
html[data-zz="merchant"] #app .left-side .panel-col:nth-child(4) { --k:214,106,128; --ic:var(--ic-user); }
html[data-zz="merchant"] #app .left-side .panel-col:hover { background:radial-gradient(220px 190px at calc(100% + 30px) -40px, rgba(var(--k),.18), transparent 70%), #fff; }
html[data-zz="merchant"] #app .left-side .panel-col::before {
  content:""; position:absolute; right:16px; top:14px; width:32px; height:32px; border-radius:10px; background:rgba(var(--k),.12);
}
html[data-zz="merchant"] #app .left-side .panel-col::after {
  content:""; position:absolute; right:23px; top:21px; width:18px; height:18px; background:rgb(var(--k));
  -webkit-mask:var(--ic) center / contain no-repeat; mask:var(--ic) center / contain no-repeat;
}

/* 钱包:平台账户卡右下角大号 ¥ 水印;保证金/运营账户标题区分别带暖黄/薄荷底 */
html[data-zz="merchant"] #app .arco-col:first-child > .card-col { position:relative; isolation:isolate; }
html[data-zz="merchant"] #app .arco-col:first-child > .card-col::after {
  content:"¥"; position:absolute; right:18px; bottom:-34px; z-index:-1; font-size:150px; line-height:1; font-weight:800; color:rgba(62,99,221,.06); pointer-events:none;
}
html[data-zz="merchant"] #app .arco-col:nth-child(4) > .card-col > .header { background:linear-gradient(120deg, #FDF6E2, #fbf8f2); }
html[data-zz="merchant"] #app .arco-col:nth-child(5) > .card-col > .header { background:linear-gradient(120deg, #E6F5EF, #f6f9f5); }

@media (prefers-reduced-motion:reduce) {
  html[data-zz="merchant"] #app .style_bgc::before, html[data-zz="merchant"] #app .style_bgc::after,
  html[data-zz="merchant"] #app .zzm-hero-art img, html[data-zz="merchant"] #app .zzm-hero-art i { animation:none; }
  html[data-zz="merchant"] #app .zzm-swash path { animation:none; stroke-dashoffset:0; }
}

/* ================= v5.6 颜色分明:实色图标块、各组数据各用一色、标签与选中态跟随功能区 ================= */
/* 实色图标块的通用做法:元素本身铺渐变实色,用 mask 把图标"挖空"(露出底下的浅色),一个伪元素就能画出白色图标。
   mask 要直接写在伪元素上:--ic 只在卡片上有,做成 html 上的变量会在 html 处求值失败 */

/* Arco 标签色:换成同一套调色板(浅底 + 墨色字),互相之间一眼能分开 */
html[data-zz^="merchant"] body {
  /* 暖色几档拉开:琥珀(orange)/ 朱红(orangered)/ 绯红(red,偏冷)/ 橄榄金(gold);售后列表里"待判定"和"买家胜诉"、订单里"代销"和"代理"会挨在一起 */
  --orangered-1:254,236,229; --orangered-6:210,74,36;
  --orange-1:253,243,220;    --orange-6:176,110,0;
  --gold-1:250,245,210;      --gold-6:138,112,0;
  --green-1:228,245,234;     --green-6:var(--p-green-ink);
  --red-1:253,233,236;       --red-6:196,30,58;
  --purple-1:241,236,253;    --purple-6:var(--p-violet-ink);
  --cyan-1:224,245,243;      --cyan-6:var(--p-teal-ink);
  --magenta-1:252,232,240;   --magenta-6:var(--p-rose-ink);
  --gray-2:239,241,244;      --gray-6:var(--p-slate);
}

/* 侧边栏:选中项文字、滑块底色都跟随该项的功能区色(滑块换项时颜色一起渐变) */
html[data-zz="merchant"] #app .styles_firstItem[data-zzm-zone]:hover,
html[data-zz="merchant"] #app .styles_firstItem[data-zzm-zone].styles_selected,
html[data-zz="merchant"] #app .styles_firstItem[data-zzm-zone].zzm-current { color:rgb(var(--zone-ink)); }
html[data-zz="merchant"] #app .styles_firstItem[data-zzm-zone].styles_selected,
html[data-zz="merchant"] #app .styles_firstItem[data-zzm-zone].zzm-current { font-weight:600; }
html[data-zz="merchant"] #app .zzm-glide { transition:translate .42s var(--zzm-spring), width .42s var(--zzm-spring), height .42s var(--zzm-spring), opacity .2s ease, background-color .35s ease, box-shadow .35s ease; }
html[data-zz="merchant"] #app .zzm-glide.is-jump { transition:opacity .2s ease; }
html[data-zz="merchant"] #app .zzm-glide.is-sel { background:rgba(var(--zone, var(--p-blue)),.12); box-shadow:inset 0 0 0 1px rgba(var(--zone, var(--p-blue)),.22); }
html[data-zz="merchant"] #app .zzm-glide.is-hover { background:rgba(var(--zone, var(--p-blue)),.07); }

/* 页面主标题徽章:实色渐变块 + 白色图标 */
html[data-zz="merchant"] #app .zzm-page-title::before {
  background:linear-gradient(140deg, rgb(var(--zone)), rgba(var(--zone),.78));
  box-shadow:0 8px 16px -8px rgba(var(--zone),.75), inset 0 1px 0 rgba(255,255,255,.28);
}
html[data-zz="merchant"] #app .zzm-page-title::after { background:#fff; }
html[data-zz="merchant"] #app .arco-layout-content .arco-card-header-title:not(.zzm-page-title)::before { box-shadow:0 0 0 4px rgba(var(--zone, var(--p-blue)),.16); }
html[data-zz="merchant"] #app .arco-table-th { border-bottom-color:rgba(var(--zone, var(--p-blue)),.3); }

/* 待办五张卡:橙 / 天蓝 / 玫红 / 紫 / 红,各自一块实色图标,数字用墨色 */
html[data-zz="merchant"] #app .TodoListRow_MerchantCard:nth-child(1) { --c:var(--p-orange); --ci:var(--p-orange-ink); }
html[data-zz="merchant"] #app .TodoListRow_MerchantCard:nth-child(2) { --c:var(--p-sky); --ci:var(--p-sky-ink); }
html[data-zz="merchant"] #app .TodoListRow_MerchantCard:nth-child(3) { --c:var(--p-rose); --ci:var(--p-rose-ink); }
html[data-zz="merchant"] #app .TodoListRow_MerchantCard:nth-child(4) { --c:var(--p-violet); --ci:var(--p-violet-ink); }
html[data-zz="merchant"] #app .TodoListRow_MerchantCard:nth-child(5) { --c:var(--p-red); --ci:var(--p-red-ink); }
html[data-zz="merchant"] #app .TodoListRow_MerchantCard {
  background:linear-gradient(180deg, rgba(var(--c),.10), rgba(var(--c),.03)); border-color:rgba(var(--c),.24);
}
html[data-zz="merchant"] #app .TodoListRow_MerchantCard:hover { background:linear-gradient(180deg, rgba(var(--c),.15), rgba(var(--c),.05)); border-color:rgba(var(--c),.42); }
html[data-zz="merchant"] #app .TodoListRow_MerchantNumber { color:rgb(var(--ci, var(--c))); }
html[data-zz="merchant"] #app .TodoListRow_MerchantCard::before {
  left:12px; top:12px; width:30px; height:30px; border-radius:9px; opacity:1;
  background:linear-gradient(140deg, rgb(var(--c)), rgba(var(--c),.78));
  box-shadow:0 6px 12px -6px rgba(var(--c),.8);
  -webkit-mask:var(--ic) center / 16px no-repeat, linear-gradient(#000 0 0); -webkit-mask-composite:xor; mask:var(--ic) center / 16px no-repeat exclude, linear-gradient(#000 0 0);
}
html[data-zz="merchant"] #app .TodoListRow_MerchantCard.zzm-zero { background:#fff; border-color:var(--zzm-line); }
html[data-zz="merchant"] #app .TodoListRow_MerchantCard.zzm-zero::before { background:#cfcbd6; box-shadow:none; }

/* 店铺数据四张卡:成交金额绿 / 订单数天蓝 / 访客数紫 / 支付买家数橙,右上角实色图标块 */
html[data-zz="merchant"] #app .left-side .panel-col { --k:var(--p-green); }
html[data-zz="merchant"] #app .left-side .panel-col:nth-child(2) { --k:var(--p-sky); }
html[data-zz="merchant"] #app .left-side .panel-col:nth-child(3) { --k:var(--p-violet); }
html[data-zz="merchant"] #app .left-side .panel-col:nth-child(4) { --k:var(--p-orange); }
html[data-zz="merchant"] #app .left-side .panel-col {
  background:radial-gradient(190px 160px at calc(100% + 30px) -40px, rgba(var(--k),.16), transparent 70%), #f9f8f6;
  box-shadow:inset 3px 0 0 rgba(var(--k),.85);
}
html[data-zz="merchant"] #app .left-side .panel-col:hover { background:radial-gradient(230px 200px at calc(100% + 30px) -40px, rgba(var(--k),.2), transparent 70%), #fff; box-shadow:inset 3px 0 0 rgb(var(--k)), 0 0 0 1px var(--zzm-line), 0 14px 26px -18px rgba(29,27,44,.35); }
html[data-zz="merchant"] #app .left-side .panel-col::before {
  right:16px; top:14px; width:32px; height:32px; border-radius:10px;
  background:linear-gradient(140deg, rgb(var(--k)), rgba(var(--k),.78)); box-shadow:0 6px 12px -6px rgba(var(--k),.8);
  -webkit-mask:var(--ic) center / 16px no-repeat, linear-gradient(#000 0 0); -webkit-mask-composite:xor; mask:var(--ic) center / 16px no-repeat exclude, linear-gradient(#000 0 0);
}
html[data-zz="merchant"] #app .left-side .panel-col::after { content:none; }

/* 快捷操作:蓝 / 紫 / 天蓝 / 绿 / 珊瑚,平时浅底彩色图标,悬停变实色 */
html[data-zz="merchant"] #app .right-side .wrapper { --c:var(--p-blue); }
html[data-zz="merchant"] #app .right-side .wrapper:nth-child(5n+2) { --c:var(--p-violet); }
html[data-zz="merchant"] #app .right-side .wrapper:nth-child(5n+3) { --c:var(--p-sky); }
html[data-zz="merchant"] #app .right-side .wrapper:nth-child(5n+4) { --c:var(--p-green); }
html[data-zz="merchant"] #app .right-side .wrapper:nth-child(5n+5) { --c:var(--p-coral); }
html[data-zz="merchant"] #app .right-side .wrapper .icon { background:rgba(var(--c),.13); box-shadow:inset 0 0 0 1px rgba(var(--c),.16); }
html[data-zz="merchant"] #app .right-side .wrapper:hover .icon { background:linear-gradient(140deg, rgb(var(--c)), rgba(var(--c),.8)); box-shadow:0 10px 18px -10px rgba(var(--c),.9); }

/* 钱包:各账户标题图标上色(平台蓝、保证金橙、运营绿) */
html[data-zz="merchant"] #app .arco-col:nth-child(1) > .card-col > .header .title svg { color:rgb(var(--p-blue)); }
html[data-zz="merchant"] #app .arco-col:nth-child(4) > .card-col > .header .title svg { color:rgb(var(--p-orange)); }
html[data-zz="merchant"] #app .arco-col:nth-child(5) > .card-col > .header .title svg { color:rgb(var(--p-green)); }
html[data-zz="merchant"] #app .arco-col:nth-child(4) > .card-col > .header { background:linear-gradient(120deg, rgba(var(--p-orange),.12), rgba(var(--p-orange),.03)); }
html[data-zz="merchant"] #app .arco-col:nth-child(5) > .card-col > .header { background:linear-gradient(120deg, rgba(var(--p-green),.12), rgba(var(--p-green),.03)); }

/* ================= v5.7 表单页与设置页统一 ================= */
/* "返回 | 标题"条:返回做成胶囊按钮,分隔竖线去掉,标题与列表页主标题同一套徽章(JS 把 .tab-title 标成 .zzm-page-title) */
html[data-zz="merchant"] #app .tabs-wrapper .tab-left {
  display:inline-flex; align-items:center; gap:4px; height:32px; padding:0 14px 0 10px; border-radius:999px; cursor:pointer;
  background:#f4f1ec; color:#4a4759; font-weight:500; transition:background-color .2s, color .2s;
}
html[data-zz="merchant"] #app .tabs-wrapper .tab-left:hover { background:#eef2fd; color:var(--zzm-brand); }
html[data-zz="merchant"] #app .tabs-wrapper .tab-left svg { transition:translate .25s var(--zzm-ease); }
html[data-zz="merchant"] #app .tabs-wrapper .tab-left:hover svg { translate:-2px 0; }
html[data-zz="merchant"] #app .tabs-wrapper .styles_line { display:none; }
html[data-zz="merchant"] #app .tabs-wrapper .arco-space-item:has(> .styles_line) { display:none; }
html[data-zz="merchant"] #app .tab-title.zzm-page-title { display:inline-flex; align-items:center; gap:12px; margin-left:6px; font-size:17px; font-weight:700; color:var(--zzm-ink); }

/* 表单里的小节标题(.card-title):功能区色点 + 右侧一条细分隔线 */
html[data-zz="merchant"] #app .arco-form > .card-title {
  display:flex; align-items:center; gap:10px; margin:10px 0 18px; font-size:15px; font-weight:700; color:var(--zzm-ink);
}
html[data-zz="merchant"] #app .arco-form > .card-title::before {
  content:""; flex:none; width:8px; height:8px; border-radius:50%; background:rgb(var(--zone, var(--p-blue))); box-shadow:0 0 0 4px rgba(var(--zone, var(--p-blue)),.16);
}
html[data-zz="merchant"] #app .arco-form > .card-title::after { content:""; flex:1; height:1px; background:linear-gradient(90deg, var(--zzm-line), transparent); }
html[data-zz="merchant"] #app .arco-form > .card-title ~ .card-title { margin-top:26px; }
/* 表单标签与必填星号 */
html[data-zz="merchant"] #app .arco-form-item-label { color:#4a4759; font-weight:500; }
html[data-zz="merchant"] #app .arco-form-item-label-required-symbol { color:rgb(var(--p-red)); }
html[data-zz="merchant"] #app .arco-form-item-message { font-size:12px; }

/* 提示条:统一圆角与浅色描边 */
html[data-zz^="merchant"] #app .arco-alert { border:0; border-radius:12px; box-shadow:inset 0 0 0 1px rgba(29,27,44,.04); }
html[data-zz^="merchant"] #app .arco-alert-info { background:#eef2fd; }
html[data-zz^="merchant"] #app .arco-alert-warning { background:#fdf6e2; }
html[data-zz^="merchant"] #app .arco-alert-success { background:#e6f5ef; }
html[data-zz^="merchant"] #app .arco-alert-error { background:#fdeeec; }

/* 次要 / 虚线小按钮(卡密助手工具等):暖灰底胶囊,悬停变品牌浅蓝 */
#app .arco-btn-dashed, #app .arco-btn-secondary { border-color:transparent; background:#f4f1ec; color:#4a4759; }
#app .arco-btn-dashed:not(.arco-btn-disabled):hover, #app .arco-btn-secondary:not(.arco-btn-disabled):hover { border-color:transparent; background:#eef2fd; color:var(--zzm-brand); }

/* 账号设置:内容区文字自带下边距,把状态标签顶高了,和右侧"修改"按钮对不齐 */
html[data-zz="merchant"] #app .zzm-account-page .arco-list-item .arco-typography { margin-bottom:0; }

/* 店铺链接:二维码放进白色圆角相框 */
html[data-zz="merchant"][data-zzm-page="shop-link"] #app .arco-list-item canvas {
  box-sizing:content-box; padding:12px; border-radius:16px; background:#fff;
  box-shadow:0 0 0 1px var(--zzm-line), 0 14px 28px -18px rgba(29,27,44,.4);
}

/* 销售统计:五个数据格做成和工作台一样的彩色小卡(收款绿 / 收益青绿 / 订单天蓝 / 成本橙 / 访客紫) */
html[data-zz="merchant"][data-zzm-page="shop-analysis"] #app .arco-row-justify-space-around { gap:14px; flex-wrap:nowrap; }
html[data-zz="merchant"][data-zzm-page="shop-analysis"] #app .arco-row-justify-space-around > .arco-col {
  --k:var(--p-green); flex:1; max-width:none; padding:16px 18px; border-radius:16px;
  background:radial-gradient(190px 160px at calc(100% + 30px) -40px, rgba(var(--k),.16), transparent 70%), #f9f8f6;
  box-shadow:inset 3px 0 0 rgba(var(--k),.85); transition:background-color .2s, box-shadow .25s, translate .28s var(--zzm-ease);
}
html[data-zz="merchant"][data-zzm-page="shop-analysis"] #app .arco-row-justify-space-around > .arco-col:nth-child(2) { --k:var(--p-teal); }
html[data-zz="merchant"][data-zzm-page="shop-analysis"] #app .arco-row-justify-space-around > .arco-col:nth-child(3) { --k:var(--p-sky); }
html[data-zz="merchant"][data-zzm-page="shop-analysis"] #app .arco-row-justify-space-around > .arco-col:nth-child(4) { --k:var(--p-orange); }
html[data-zz="merchant"][data-zzm-page="shop-analysis"] #app .arco-row-justify-space-around > .arco-col:nth-child(5) { --k:var(--p-violet); }
html[data-zz="merchant"][data-zzm-page="shop-analysis"] #app .arco-row-justify-space-around > .arco-col:hover { translate:0 -2px; box-shadow:inset 3px 0 0 rgb(var(--k)), 0 0 0 1px var(--zzm-line), 0 14px 26px -18px rgba(29,27,44,.35); }
html[data-zz="merchant"][data-zzm-page="shop-analysis"] #app .statistic-prefix {
  background:linear-gradient(140deg, rgb(var(--k)), rgba(var(--k),.78)) !important; color:#fff; border-radius:10px;
  box-shadow:0 6px 12px -6px rgba(var(--k),.8);
}
/* 图标颜色是 SVG 自己的 stroke/fill 属性,CSS 属性可以盖过它,改成白色 */
html[data-zz="merchant"][data-zzm-page="shop-analysis"] #app .statistic-prefix svg [stroke]:not([stroke="none"]) { stroke:#fff; }
html[data-zz="merchant"][data-zzm-page="shop-analysis"] #app .statistic-prefix svg [fill]:not([fill="none"]) { fill:#fff; }
html[data-zz="merchant"][data-zzm-page="shop-analysis"] #app .arco-statistic-title { color:#6b6679; font-weight:600; }
html[data-zz="merchant"][data-zzm-page="shop-analysis"] #app .arco-statistic-value { font-weight:750; color:var(--zzm-ink); }
/* 日期切换(今日/昨日/本周…)和图表切换用的圆角页签:选中项白底浮起 */
html[data-zz="merchant"] #app .arco-tabs-type-rounded .arco-tabs-tab { border-radius:999px; transition:background-color .2s, color .2s, box-shadow .2s; }
html[data-zz="merchant"] #app .arco-tabs-type-rounded .arco-tabs-tab-active { background:#fff; color:var(--zzm-brand); box-shadow:0 0 0 1px var(--zzm-line), 0 4px 10px -6px rgba(29,27,44,.25); }
@media (prefers-reduced-motion:reduce) {
  html[data-zz="merchant"] #app .tabs-wrapper .tab-left:hover svg,
  html[data-zz="merchant"][data-zzm-page="shop-analysis"] #app .arco-row-justify-space-around > .arco-col:hover { translate:none; }
}

/* ================= v5.7 店铺推广海报 ================= */
/* 二维码旁的按钮:品牌渐变胶囊 */
html[data-zz^="merchant"] #app .zzm-poster-btn {
  display:inline-flex; align-items:center; gap:7px; height:38px; margin:12px 0 0 0; padding:0 18px 0 14px; border:0; border-radius:999px; cursor:pointer;
  font:inherit; font-size:14px; font-weight:700; color:#fff; vertical-align:top;
  background:linear-gradient(120deg, #3E63DD, #6D86E8); box-shadow:0 10px 20px -10px rgba(62,99,221,.9);
  transition:translate .25s var(--zzm-ease), box-shadow .25s;
}
html[data-zz="merchant"] #app .arco-list-item .zzm-poster-btn { display:flex; margin-top:14px; }
html[data-zz^="merchant"] #app .zzm-poster-btn:hover { translate:0 -1px; box-shadow:0 14px 24px -10px rgba(62,99,221,.95); }
html[data-zz^="merchant"] #app .zzm-poster-btn:focus-visible { outline:3px solid #a6b8ed; outline-offset:2px; }
html[data-zz^="merchant"] #app .zzm-poster-btn svg { width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
/* 海报弹层(挂在 body 下) */
html[data-zz^="merchant"] .zzm-poster {
  position:fixed; inset:0; z-index:3000; display:grid; place-items:center; padding:16px; box-sizing:border-box;
  background:rgba(29,27,44,.42); -webkit-backdrop-filter:blur(4px); backdrop-filter:blur(4px);
  animation:zzm-fade .22s ease-out;
}
html[data-zz^="merchant"] .zzm-poster-panel {
  display:flex; flex-direction:column; align-items:center; gap:14px; max-width:min(420px, 100%); max-height:100%; box-sizing:border-box;
  padding:18px 18px 16px; border-radius:24px; background:#fff; box-shadow:0 30px 70px -24px rgba(29,27,44,.5);
  animation:zzm-pop .42s var(--zzm-out, ease-out);
}
html[data-zz^="merchant"] .zzm-poster-stage {
  display:grid; place-items:center; width:min(360px, 78vw); aspect-ratio:750 / 1180; max-height:68vh; border-radius:16px; overflow:hidden; background:#FAF8F5;
}
html[data-zz^="merchant"] .zzm-poster-stage img { display:block; width:100%; height:100%; object-fit:contain; }
html[data-zz^="merchant"] .zzm-poster-wait { color:#8B8698; font-size:14px; }
html[data-zz^="merchant"] .zzm-poster-actions { display:flex; gap:10px; width:100%; }
html[data-zz^="merchant"] .zzm-poster-actions > * {
  flex:1; display:inline-flex; align-items:center; justify-content:center; height:44px; border-radius:999px; border:0; cursor:pointer;
  font:inherit; font-size:15px; font-weight:700; text-decoration:none; transition:background-color .2s, box-shadow .25s;
}
html[data-zz^="merchant"] .zzm-poster-save { color:#fff; background:#3E63DD; box-shadow:0 10px 20px -10px rgba(62,99,221,.9); }
html[data-zz^="merchant"] .zzm-poster-save:hover { background:#3352C2; color:#fff; }
html[data-zz^="merchant"] .zzm-poster-close { color:#4A4759; background:#F4F1EC; }
html[data-zz^="merchant"] .zzm-poster-close:hover { background:#ECE7E0; }
html[data-zz^="merchant"] .zzm-poster-actions > *:focus-visible { outline:3px solid #a6b8ed; outline-offset:2px; }
html[data-zz^="merchant"] .zzm-poster-tip { margin:0; font-size:12px; color:#8B8698; }
@media (prefers-reduced-motion:reduce) {
  html[data-zz^="merchant"] #app .zzm-poster-btn:hover { translate:none; }
  html[data-zz^="merchant"] .zzm-poster-panel { animation:zzm-fade .2s ease-out; }
}

/* v5.9 钱包提醒:钱包页"结算与提现规则"卡片 + 未设置收款信息提示(钱包页与首页) */
html[data-zz^="merchant"] #app .zzm-settle-card { margin:0 0 18px; padding:16px 20px; border-radius:16px; background:#F7F9FE; box-shadow:0 0 0 1px #E3E9FB inset; }
html[data-zz^="merchant"] #app .zzm-settle-card h3 { margin:0 0 8px; font-size:14px; font-weight:700; color:#1D1B2C; }
html[data-zz^="merchant"] #app .zzm-settle-card ul { display:grid; gap:6px; margin:0; padding:0; list-style:none; }
html[data-zz^="merchant"] #app .zzm-settle-card li { position:relative; padding-left:16px; font-size:13px; line-height:1.6; color:#4A4759; }
html[data-zz^="merchant"] #app .zzm-settle-card li::before { content:""; position:absolute; left:2px; top:.62em; width:6px; height:6px; border-radius:50%; background:#3E63DD; opacity:.55; }
html[data-zz^="merchant"] #app .zzm-wallet-tip { display:flex; align-items:center; gap:12px; margin:0 0 14px; padding:14px 16px; border-radius:16px; background:#FFF8E8; box-shadow:0 0 0 1px #F3DFAA inset; animation:zzm-tip-in .4s cubic-bezier(.2,.7,.2,1) both; }
html[data-zz^="merchant"] #app .zzm-wallet-tip svg { flex:none; width:22px; height:22px; fill:none; stroke:#C07A12; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
html[data-zz^="merchant"] #app .zzm-wallet-tip > div { display:grid; flex:1; gap:2px; min-width:0; }
html[data-zz^="merchant"] #app .zzm-wallet-tip b { font-size:14px; font-weight:700; color:#7A4B06; }
html[data-zz^="merchant"] #app .zzm-wallet-tip span { font-size:12.5px; line-height:1.5; color:#8A6A2C; }
html[data-zz^="merchant"] #app .zzm-wallet-go { flex:none; height:32px; padding:0 16px; border:0; border-radius:999px; background:#3E63DD; color:#fff; font-size:13px; font-weight:600; cursor:pointer; box-shadow:0 8px 16px -10px rgba(62,99,221,.9); transition:translate .2s, box-shadow .2s; }
html[data-zz^="merchant"] #app .zzm-wallet-go:hover { translate:0 -1px; box-shadow:0 12px 20px -10px rgba(62,99,221,.9); }
html[data-zz^="merchant"] #app .zzm-wallet-x { flex:none; width:28px; height:28px; border:0; border-radius:50%; background:transparent; color:#A88A4F; font-size:18px; line-height:1; cursor:pointer; }
html[data-zz^="merchant"] #app .zzm-wallet-x:hover { background:#F8EBC8; }
html[data-zz^="merchant"] #app :is(.zzm-wallet-go, .zzm-wallet-x):focus-visible { outline:3px solid #ACBBED; outline-offset:2px; }
html[data-zz="merchant"] #app .left-side .panel > .zzm-wallet-tip { margin:16px 0 0; }
html[data-zz="merchant-h5"] #app .layout-container > .zzm-wallet-tip { position:relative; z-index:1; margin:12px 12px 12px; }
html[data-zz="merchant-h5"] #app .layout-container > .card-content > .zzm-wallet-tip, html[data-zz="merchant-h5"] #app .layout-container > .card-content > .zzm-settle-card { margin:0 0 12px; }
html[data-zz="merchant-h5"] #app .zzm-wallet-tip { flex-wrap:wrap; }
html[data-zz="merchant-h5"] #app .zzm-wallet-tip > div { flex-basis:calc(100% - 70px); }
@keyframes zzm-tip-in { from { opacity:0; translate:0 -6px; } }
@media (prefers-reduced-motion: reduce) { @keyframes zzm-tip-in { from { opacity:0; } } }

/* v5.10 提现到账凭证:结算账单"打款成功"记录旁的按钮 + 凭证弹窗(不仿制印章,只用"已到账"勾选标记) */
.zzm-receipt-btn { display:inline-flex; align-items:center; gap:4px; margin:6px 0 0; padding:3px 10px; border:1px solid #CDEBDD; border-radius:999px; background:#F1FAF6; color:#1F7A5C; cursor:pointer; font:600 12px/1.5 "PingFang SC","HarmonyOS Sans SC","MiSans","Microsoft YaHei UI",sans-serif; transition:background .2s ease, translate .2s ease; }
.zzm-receipt-btn:hover { background:#E3F5EC; translate:0 -1px; }
.zzm-receipt-btn svg { width:14px; height:14px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
html[data-zz="merchant-h5"] #app .arco-list-content > .item .zzm-receipt-btn { margin:10px 0 2px auto; display:flex; width:max-content; }
.zzm-receipt { position:fixed; inset:0; z-index:3000; display:grid; place-items:center; padding:16px; background:#171b3866; animation:zzm-receipt-fade .2s ease-out both; }
.zzm-receipt-panel { position:relative; box-sizing:border-box; width:min(420px, 100%); max-height:calc(100vh - 32px); overflow:auto; padding:18px 20px 16px; border-radius:20px; background:#fff; color:#4A4759; box-shadow:0 24px 80px #20234052; font:13px/1.6 "PingFang SC","HarmonyOS Sans SC","MiSans","Microsoft YaHei UI",sans-serif; animation:zzm-receipt-pop .28s cubic-bezier(.2,.9,.3,1.2) both; }
.zzm-receipt-wait { margin:24px 0; text-align:center; color:#8B8698; }
.zzm-receipt-brand { display:flex; align-items:center; gap:10px; padding-bottom:12px; border-bottom:1px dashed #ECE7E0; }
.zzm-receipt-brand img { width:34px; height:34px; border-radius:10px; background:#FAF8F5; object-fit:contain; }
.zzm-receipt-brand div { display:flex; flex-direction:column; line-height:1.3; }
.zzm-receipt-brand b { color:#1D1B2C; font-size:14px; }
.zzm-receipt-brand span { color:#8B8698; font-size:12px; }
.zzm-receipt-x { margin-left:auto; width:30px; height:30px; padding:0; border:0; border-radius:50%; background:#F4F2EE; color:#8B8698; cursor:pointer; font:20px/30px system-ui, sans-serif; }
.zzm-receipt-x:hover { background:#ECE7E0; color:#4A4759; }
.zzm-receipt-panel h2 { margin:14px 0 0; color:#1D1B2C; font-size:19px; font-weight:700; }
.zzm-receipt-sub { margin:2px 0 12px; color:#8B8698; font-size:12px; }
.zzm-receipt-amount { position:relative; display:flex; flex-direction:column; gap:2px; padding:14px 16px; border-radius:16px; background:linear-gradient(135deg, #F1FAF6, #F6F8FE); box-shadow:inset 3px 0 0 #2E9E78; }
.zzm-receipt-amount small { color:#58625E; font-size:12px; }
.zzm-receipt-amount strong { color:#1D1B2C; font-size:30px; line-height:1.25; font-weight:700; letter-spacing:.5px; font-variant-numeric:tabular-nums; }
.zzm-receipt-amount em { color:#58625E; font-style:normal; font-size:12.5px; }
.zzm-receipt-state { position:absolute; top:12px; right:12px; display:inline-flex; align-items:center; gap:4px; padding:2px 10px 2px 7px; border-radius:999px; background:#E3F5EC; color:#1F7A5C; font-size:12px; font-weight:600; }
.zzm-receipt-state svg, .zzm-receipt-mark svg { width:14px; height:14px; fill:none; stroke:currentColor; stroke-width:2.4; stroke-linecap:round; stroke-linejoin:round; }
.zzm-receipt-no { display:flex; align-items:center; gap:8px; margin:12px 0 0; padding:9px 12px; border-radius:12px; background:#FAF8F5; }
.zzm-receipt-no span { color:#8B8698; font-size:12px; white-space:nowrap; }
.zzm-receipt-no b { flex:1; min-width:0; overflow-wrap:anywhere; color:#1D1B2C; font:600 13px/1.4 ui-monospace,"SFMono-Regular",Consolas,monospace; }
.zzm-receipt-copy { flex:none; padding:3px 10px; border:0; border-radius:999px; background:#EEF2FD; color:#3E63DD; cursor:pointer; font:600 12px/1.5 inherit; }
.zzm-receipt-grid { display:grid; grid-template-columns:1fr 1fr; gap:0; margin:12px 0 0; border:1px solid #ECE7E0; border-radius:14px; overflow:hidden; }
.zzm-receipt-grid > div { padding:9px 12px; border-bottom:1px solid #F1EDE7; }
.zzm-receipt-grid > div.is-left { border-right:1px solid #F1EDE7; }
.zzm-receipt-grid > div.is-wide { grid-column:1 / -1; }
.zzm-receipt-grid > div:last-child, .zzm-receipt-grid > div.is-left:nth-last-child(2) { border-bottom:0; }
.zzm-receipt-grid dt { color:#8B8698; font-size:11.5px; }
.zzm-receipt-grid dd { margin:2px 0 0; color:#1D1B2C; font-weight:600; overflow-wrap:anywhere; font-variant-numeric:tabular-nums; }
.zzm-receipt-mark { position:absolute; right:22px; bottom:96px; display:flex; flex-direction:column; align-items:center; gap:0; padding:6px 12px; border:2px solid #2E9E7880; border-radius:12px; color:#2E9E78; rotate:-10deg; opacity:.85; pointer-events:none; animation:zzm-receipt-stamp .45s .18s cubic-bezier(.2,.9,.3,1.3) both; }
.zzm-receipt-mark span { font-weight:800; font-size:15px; letter-spacing:2px; }
.zzm-receipt-mark small { font-size:10.5px; font-variant-numeric:tabular-nums; }
.zzm-receipt-foot { margin:12px 0 0; color:#8B8698; font-size:11.5px; line-height:1.6; }
.zzm-receipt-actions { display:flex; justify-content:flex-end; margin-top:12px; }
.zzm-receipt-actions .zzm-receipt-close { padding:8px 22px; border:0; border-radius:999px; background:#3E63DD; color:#fff; cursor:pointer; font:600 13px/1.5 inherit; }
.zzm-receipt-actions .zzm-receipt-close:hover { background:#3352C2; }
@media (max-width:480px) {
  .zzm-receipt { align-items:end; padding:0; }
  .zzm-receipt-panel { width:100%; max-height:92vh; border-radius:20px 20px 0 0; padding-bottom:calc(16px + env(safe-area-inset-bottom, 0px)); animation-name:zzm-receipt-up; }
  .zzm-receipt-mark { bottom:104px; }
}
@keyframes zzm-receipt-fade { from { opacity:0; } }
@keyframes zzm-receipt-pop { from { opacity:0; scale:.96; translate:0 8px; } }
@keyframes zzm-receipt-up { from { translate:0 40px; opacity:.4; } }
@keyframes zzm-receipt-stamp { from { opacity:0; scale:1.5; } }
@media (prefers-reduced-motion: reduce) {
  .zzm-receipt-panel, .zzm-receipt-mark { animation-name:zzm-receipt-fade; }
  .zzm-receipt-btn:hover { translate:none; }
}

/* v5.10 店铺徽章入口(店铺设置页顶部;设置面板与徽章样式在 badge-lib.js 里注入) */
.zzm-badge-entry { display:flex; align-items:center; gap:16px; margin:0 0 16px; padding:14px 18px; border:1px solid #ECE7E0; border-radius:18px; background:linear-gradient(120deg, #FFFDF8, #F6F8FE); box-shadow:0 10px 24px -20px #3E63DD; }
.zzm-badge-art { flex:none; width:84px; height:50px; }
.zzm-badge-art svg { width:100%; height:100%; filter:drop-shadow(0 3px 6px rgba(40,30,20,.16)); }
.zzm-badge-text { flex:1; min-width:0; display:flex; flex-direction:column; gap:2px; }
.zzm-badge-text b { color:#1D1B2C; font-size:15px; }
.zzm-badge-text > span { color:#8B8698; font-size:12.5px; }
.zzm-badge-now small { color:#8B8698; font-size:12px; }
.zzm-badge-now .zzb-row { margin-top:6px; }
.zzm-badge-go { flex:none; padding:9px 20px; border:0; border-radius:999px; background:#3E63DD; color:#fff; cursor:pointer; font:600 13.5px/1.4 "PingFang SC","HarmonyOS Sans SC","MiSans","Microsoft YaHei UI",sans-serif; box-shadow:0 8px 18px -10px #3E63DD; transition:background .2s ease; }
.zzm-badge-go:hover { background:#3352C2; }
@media (max-width:600px) {
  .zzm-badge-entry { flex-wrap:wrap; gap:10px 12px; margin:0 0 12px; padding:12px 14px; }
  .zzm-badge-art { width:64px; height:38px; }
  .zzm-badge-text { flex-basis:calc(100% - 80px); }
  .zzm-badge-go { width:100%; padding:10px; }
}
