/* =============================================================================
   ACG-faka 用户中心 · iOS / macOS 液态玻璃(Liquid Glass) + MUI 皮肤
   -----------------------------------------------------------------------------
   加载顺序:md-tokens.css(--md-* 设计令牌) → md-components.css(共享 MUI 组件)
             → component.css(旧玻璃皮) → glass.css(本文件,最后,负责收口)
   作用域:只由 Common/Header.html(用户中心)加载 —— 不影响 Index/Auth 模板。
   本层职责:① 把前台品牌主色改写成玫瑰粉(异次元)② 定义液态玻璃变量
             ③ 顶部全宽导航(去悬浮) ④ 页面栅格 + 白卡 ⑤ 各页 MUI 组件精修
   ============================================================================= */

/* ---------- ① 令牌:前台品牌主色(macOS 蓝)+ 液态玻璃变量 ---------- */
/* 亮色(默认):蓝白 + 液态玻璃 —— 现代化 macOS 风格 */
:root[data-theme] {
  --md-primary: #0A84FF;          /* macOS 系统蓝:按钮/激活/强调 */
  --md-primary-rgb: 10, 132, 255;
  --md-on-primary: #ffffff;
  --uc-primary-deep: #0062CC;

  /* 方案A「云雾白」(2026-07 用户选定):玻璃增稠、饱和归位、白纱提亮 —
     壁纸退成粉彩雾,卡片内不再透出橙/青色斑,文字对比稳定 */
  --glass-bg: rgba(255, 255, 255, 0.68);
  --glass-bg-strong: rgba(255, 255, 255, 0.82);
  --glass-bg-soft: rgba(255, 255, 255, 0.50);
  --glass-border: rgba(255, 255, 255, 0.85);
  --glass-border-soft: rgba(255, 255, 255, 0.40);
  --glass-hi: inset 0 1px 0 rgba(255, 255, 255, 0.85);
  --glass-filter: saturate(105%) blur(24px);
  --glass-filter-strong: saturate(110%) blur(32px);
  --glass-shadow: 0 10px 36px rgba(31, 45, 70, 0.10);
  --glass-shadow-lg: 0 16px 48px rgba(31, 45, 70, 0.16);
  --glass-radius: 16px;
  --glass-radius-sm: 12px;
  --uc-field-bg: rgba(255, 255, 255, 0.55);   /* 玻璃变稠后,磨砂配件相应减淡 */

  --uc-ink: #1f2733;
  --uc-ink-med: #58606e;
  --uc-ink-dis: #8b909e;
  --uc-nav-bg: #ffffff;                 /* 顶栏卡片(Mac 式,去掉悬浮玻璃) */
  --uc-nav-border: rgba(60, 60, 67, 0.10);
  --uc-nav-shadow: 0 1px 2px rgba(20, 24, 35, 0.04), 0 8px 24px rgba(20, 24, 35, 0.08);

  /* 焦点强调色:淡蓝(输入框聚焦边框/浮标;用户嫌黑色焦点框丑,2026-07) */
  --uc-focus: #0A84FF;
  --uc-focus-rgb: 10, 132, 255;
}
/* 暗色:主色翻转成近白,玻璃变深(md-tokens 的 surface/semantic 走它自己的暗色) */
:root[data-theme="dark"] {
  --md-primary: #e8eaed;
  --md-primary-rgb: 232, 234, 237;
  --md-on-primary: #12151b;
  --uc-primary-deep: #ffffff;

  --glass-bg: rgba(26, 30, 38, 0.56);
  --glass-bg-strong: rgba(30, 34, 43, 0.74);
  --glass-bg-soft: rgba(42, 47, 57, 0.44);
  --glass-border: rgba(255, 255, 255, 0.12);
  --glass-border-soft: rgba(255, 255, 255, 0.07);
  --glass-hi: inset 0 1px 0 rgba(255, 255, 255, 0.09);
  --glass-filter: saturate(140%) blur(22px);
  --glass-filter-strong: saturate(150%) blur(32px);
  --glass-shadow: 0 8px 32px rgba(0, 0, 0, 0.42);
  --glass-shadow-lg: 0 16px 48px rgba(0, 0, 0, 0.54);

  --uc-ink: #e6e8ec;
  --uc-ink-med: #9aa0ab;
  --uc-ink-dis: #6b7280;
  --uc-field-bg: rgba(46, 51, 62, 0.66);
  --uc-nav-bg: #1e2229;
  --uc-nav-border: rgba(255, 255, 255, 0.10);
  --uc-nav-shadow: 0 1px 2px rgba(0, 0, 0, 0.40), 0 8px 24px rgba(0, 0, 0, 0.35);

  --uc-focus: #82b7ef;
  --uc-focus-rgb: 130, 183, 239;
}

/* ---------- ② 基座:壁纸透出 + 中性化旧的白蒙层 ---------- */
/* Header.html 里 body 用 background:url(壁纸) fixed;这里让 .bg-content 的
   50% 白蒙层变淡(几乎不遮壁纸),阅读对比交给玻璃卡片本身。 */
:root[data-theme] body.uc-body { color: var(--uc-ink); }
/* 防横滚:base 主题(_user.css)给 html/body 加的 overflow-x:hidden 会把另一轴隐式算成 auto、
   建立滚动容器并影响定位。改用 overflow-x:clip:同样裁掉横向溢出、但不建立滚动容器。 */
:root[data-theme],
:root[data-theme] body.uc-body { overflow-x: clip !important; }

:root[data-theme] .bg-content.uc-bg {
  /* 方案A:白纱从近全透(10%)提到粉彩雾级,压住高饱和壁纸的底噪(暗色另有覆写) */
  background: linear-gradient(180deg,
      rgba(255, 255, 255, 0.42) 0%,
      rgba(255, 255, 255, 0.30) 40%,
      rgba(255, 255, 255, 0.44) 100%) !important;
  min-height: 100vh;
  height: auto !important;
}

/* 内容容器:居中、留白、给顶栏腾出高度 */
:root[data-theme] .uc-main {
  max-width: 1180px;
  margin: 0 auto;
  padding: 26px 20px 60px;
}
:root[data-theme] #pjax-container { min-height: 60vh; }

/* 通用玻璃质感 mixin(类) */
:root[data-theme] .glass {
  background: var(--glass-bg);
  -webkit-backdrop-filter: var(--glass-filter);
  backdrop-filter: var(--glass-filter);
  border: 1px solid var(--glass-border);
  box-shadow: var(--glass-hi), var(--glass-shadow);
}

   =============================================================================
   ③ 顶部全宽导航(macOS 菜单栏风,去悬浮)
   ============================================================================= */
/* 全宽顶部导航(macOS 菜单栏风)：白底实心、横贯视口、非悬浮(去 sticky)、底部细分隔 + 柔和阴影 */
:root[data-theme] .uc-nav-wrap {
  position: relative; z-index: 900;
  background: var(--uc-nav-bg);
  border-bottom: 1px solid var(--uc-nav-border);
  box-shadow: var(--uc-nav-shadow);
}
/* 扫光：周期斜向高光扫过整条导航(background-position 驱动,不产生溢出、不裁二级下拉) */
:root[data-theme] .uc-nav-wrap::after {
  content: ""; position: absolute; inset: 0; z-index: 3; pointer-events: none;
  background: linear-gradient(105deg,
      transparent 42%, rgba(var(--md-primary-rgb), 0.09) 50%, transparent 58%);
  background-size: 240% 100%; background-position: 140% 0;
  animation: uc-nav-sweep 4.6s ease-in-out infinite;
}
@keyframes uc-nav-sweep {
  0%        { background-position: 140% 0; }
  55%, 100% { background-position: -120% 0; }
}
/* 内容仍居中,但背景由 wrap 拉满;去掉卡片圆角/边框 */
:root[data-theme] .uc-nav {
  max-width: 1280px; margin: 0 auto;
  display: flex; align-items: center; gap: 10px;
  height: 60px; padding: 0 20px;
  border: none; background: transparent; box-shadow: none;
}

/* 品牌 */
:root[data-theme] .uc-brand {
  display: flex; align-items: center; gap: 10px;
  padding-right: 8px; text-decoration: none; flex: 0 0 auto;
}
:root[data-theme] .uc-brand__logo {
  width: 30px; height: 30px; border-radius: 9px; object-fit: cover;
  box-shadow: 0 2px 8px rgba(var(--md-primary-rgb), 0.28);
}
:root[data-theme] .uc-brand__name {
  font-size: 16px; font-weight: 700; letter-spacing: .2px;
  color: var(--uc-ink); white-space: nowrap;
}

/* 一级菜单条 */
:root[data-theme] .uc-nav__list {
  display: flex; align-items: center; gap: 2px;
  list-style: none; margin: 0; padding: 0; flex: 1 1 auto;
}
:root[data-theme] .uc-nav__list > li { position: relative; }
:root[data-theme] .uc-nav__item {
  display: flex; align-items: center; gap: 5px;
  height: 38px; padding: 0 14px; border-radius: 999px;
  font-size: 14px; font-weight: 500; color: var(--uc-ink-med);
  text-decoration: none; cursor: pointer; white-space: nowrap;
  border: 1px solid transparent;
  transition: background-color .18s ease, color .18s ease, border-color .18s ease;
}
:root[data-theme] .uc-nav__item .material-icons-outlined,
:root[data-theme] .uc-nav__item .material-icons { font-size: 19px; }
:root[data-theme] .uc-nav__item .uc-caret { font-size: 18px; margin-left: -2px; opacity: .7; transition: transform .2s ease; }
:root[data-theme] .uc-nav__item:hover {
  color: var(--uc-primary-deep);
  background: rgba(var(--md-primary-rgb), 0.08);
}
:root[data-theme] .uc-nav__list > li.is-open > .uc-nav__item .uc-caret { transform: rotate(180deg); }

/* 一级选中(active) —— 玫瑰实心药丸 */
:root[data-theme] .uc-nav__item.active {
  color: var(--md-on-primary);
  background: linear-gradient(135deg, var(--md-primary), var(--uc-primary-deep));
  box-shadow: 0 4px 14px rgba(var(--md-primary-rgb), 0.36);
}
:root[data-theme] .uc-nav__item.active:hover { color: var(--md-on-primary); }
/* 含子项且子项被选中 → 一级用淡染标记 */
:root[data-theme] .uc-nav__list > li.has-active > .uc-nav__item {
  color: var(--uc-primary-deep);
  background: rgba(var(--md-primary-rgb), 0.10);
}

/* 二级下拉玻璃面板 */
:root[data-theme] .uc-submenu {
  position: absolute; top: calc(100% + 10px); left: 0; z-index: 950;
  min-width: 212px; padding: 8px;
  border-radius: var(--glass-radius-sm);
  background: var(--uc-nav-bg);
  border: 1px solid var(--uc-nav-border);
  box-shadow: var(--uc-nav-shadow);
  opacity: 0; visibility: hidden; transform: translateY(-6px) scale(.98);
  transform-origin: top left;
  transition: opacity .18s ease, transform .18s ease, visibility .18s;
}
:root[data-theme] .uc-nav__right .uc-submenu { left: auto; right: 0; transform-origin: top right; }
:root[data-theme] .uc-nav__list > li.is-open > .uc-submenu,
:root[data-theme] .uc-user.is-open > .uc-submenu {
  opacity: 1; visibility: visible; transform: translateY(0) scale(1);
}
/* 桌面端 hover 兜底：即便 JS 未把 li 标为 is-open（例如脚本加载异常或插件注入的
   菜单项未能被 initDropdowns 重新绑定），悬停也必然展开二级菜单，解决 PC 端分类
   二级菜单「打不开/无法展开」的问题。 */
@media (hover: hover) and (pointer: fine) {
  :root[data-theme] .uc-nav__list > li.uc-has-sub:hover > .uc-submenu {
    opacity: 1; visibility: visible; transform: translateY(0) scale(1);
  }
}
/* 下拉与触发点之间的“悬停桥”,防止指针移动时断开 */
:root[data-theme] .uc-submenu::before {
  content: ""; position: absolute; top: -12px; left: 0; right: 0; height: 12px;
}
:root[data-theme] .uc-subitem {
  display: flex; align-items: center; gap: 10px;
  padding: 9px 12px; border-radius: 10px;
  font-size: 13.5px; font-weight: 500; color: var(--uc-ink-med);
  text-decoration: none; white-space: nowrap;
  transition: background-color .15s ease, color .15s ease;
}
/* 连续菜单项之间保留呼吸缝，避免 active 与相邻 hover 的圆角背景黏成一整块 */
:root[data-theme] .uc-subitem + .uc-subitem { margin-top: 4px; }
:root[data-theme] .uc-subitem .material-icons-outlined,
:root[data-theme] .uc-subitem .material-icons { font-size: 20px; color: var(--uc-ink-dis); transition: color .15s ease; }
:root[data-theme] .uc-subitem:hover { background: rgba(var(--md-primary-rgb), 0.10); color: var(--uc-primary-deep); }
:root[data-theme] .uc-subitem:hover .material-icons-outlined,
:root[data-theme] .uc-subitem:hover .material-icons { color: var(--uc-primary-deep); }
:root[data-theme] .uc-subitem.active { background: rgba(var(--md-primary-rgb), 0.14); color: var(--uc-primary-deep); }
:root[data-theme] .uc-subitem.active .material-icons-outlined,
:root[data-theme] .uc-subitem.active .material-icons { color: var(--uc-primary-deep); }
:root[data-theme] .uc-subitem__badge {
  margin-left: auto; font-size: 11px; font-weight: 600; padding: 1px 8px; border-radius: 999px;
  background: rgba(var(--md-primary-rgb), 0.16); color: var(--uc-primary-deep);
}

/* 右侧:购物链接 + 用户 */
:root[data-theme] .uc-nav__right { display: flex; align-items: center; gap: 6px; flex: 0 0 auto; margin-left: auto; }
:root[data-theme] .uc-nav__link {
  display: inline-flex; align-items: center; gap: 5px; height: 38px; padding: 0 12px;
  border-radius: 999px; font-size: 13.5px; font-weight: 500; color: var(--uc-ink-med);
  text-decoration: none; white-space: nowrap; transition: background-color .18s ease, color .18s ease;
}
:root[data-theme] .uc-nav__link .material-icons-outlined { font-size: 19px; }
:root[data-theme] .uc-nav__link:hover { background: rgba(var(--md-primary-rgb), 0.08); color: var(--uc-primary-deep); }

/* 用户胶囊 */
:root[data-theme] .uc-user { position: relative; }
:root[data-theme] .uc-user__btn {
  display: flex; align-items: center; gap: 8px; height: 42px; padding: 0 6px 0 12px;
  border: 1px solid var(--glass-border-soft); border-radius: 999px; cursor: pointer;
  background: rgba(255, 255, 255, 0.5);
  transition: background-color .18s ease, border-color .18s ease;
}
:root[data-theme] .uc-user__btn:hover { background: rgba(255, 255, 255, 0.75); border-color: var(--glass-border); }
:root[data-theme] .uc-user__lv {
  display: inline-flex; align-items: center; gap: 4px;
  font-size: 13px; font-weight: 600; color: var(--uc-ink); max-width: 120px;
  overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
:root[data-theme] .uc-user__lv img { height: 16px; width: auto; }
:root[data-theme] .uc-user__avatar { width: 30px; height: 30px; border-radius: 50%; object-fit: cover; box-shadow: 0 2px 6px rgba(31, 38, 60, 0.2); }
:root[data-theme] .uc-user .uc-submenu { min-width: 180px; }
:root[data-theme] .uc-submenu__sep { height: 1px; margin: 6px 8px; background: rgba(31, 38, 60, 0.1); }

/* 语言二级菜单：父项右侧飞出，避免把主菜单撑长 */
:root[data-theme] .uc-lang-parent { position: relative; cursor: pointer; padding-right: 30px; }
:root[data-theme] .uc-lang-parent .uc-lang-caret {
  position: absolute; right: 8px; top: 50%; transform: translateY(-50%);
  font-size: 18px; opacity: .55; transition: transform .18s ease, opacity .18s ease;
}
:root[data-theme] .uc-lang-parent:hover .uc-lang-caret,
:root[data-theme] .uc-lang-parent.is-open .uc-lang-caret { opacity: 1; }
:root[data-theme] .uc-submenu .uc-lang-child {
  top: -8px; left: auto; right: calc(100% + 6px);
  min-width: 160px; transform-origin: top right;
  transform: translateX(6px) scale(.98);
}
/* 悬停桥：父项与子菜单之间留出可穿越区域 */
:root[data-theme] .uc-lang-child::before {
  content: ""; position: absolute; top: 0; bottom: 0; left: auto; right: -8px; width: 8px; height: auto;
}
:root[data-theme] .uc-lang-parent:hover > .uc-lang-child,
:root[data-theme] .uc-lang-parent:focus-within > .uc-lang-child,
:root[data-theme] .uc-lang-parent.is-open > .uc-lang-child {
  opacity: 1; visibility: visible; transform: translateX(0) scale(1);
}
/* 窄屏没有横向空间：退化为父项下方展开 */
@media (max-width: 640px) {
  :root[data-theme] .uc-submenu .uc-lang-child {
    position: static; min-width: 0; padding: 4px 0 0 22px;
    background: none; border: none; box-shadow: none; backdrop-filter: none;
    -webkit-backdrop-filter: none; transform: none; opacity: 1; visibility: visible;
    display: none;
  }
  :root[data-theme] .uc-lang-parent.is-open > .uc-lang-child { display: block; }
  :root[data-theme] .uc-lang-parent.is-open .uc-lang-caret { transform: translateY(-50%) rotate(90deg); }
}

/* 移动端汉堡 */
:root[data-theme] .uc-burger {
  display: none; width: 42px; height: 42px; border: none; border-radius: 12px; cursor: pointer;
  background: rgba(var(--md-primary-rgb), 0.1); color: var(--uc-primary-deep);
  align-items: center; justify-content: center; flex: 0 0 auto;
  -webkit-tap-highlight-color: transparent;
}
:root[data-theme] .uc-burger .material-icons-outlined { font-size: 24px; }
/* 触屏反馈：去掉系统灰底高亮，保留 hover/active 反馈即可 */
:root[data-theme] .uc-nav a,
:root[data-theme] .uc-nav button,
:root[data-theme] .uc-drawer__link { -webkit-tap-highlight-color: transparent; }

/* =============================================================================
   ④ 玻璃卡片 + 分区
   ============================================================================= */
:root[data-theme] .uc-card {
  background: var(--glass-bg);
  -webkit-backdrop-filter: var(--glass-filter);
  backdrop-filter: var(--glass-filter);
  border: 1px solid var(--glass-border);
  border-radius: var(--glass-radius);
  box-shadow: var(--glass-hi), var(--glass-shadow);
  overflow: hidden;
}
:root[data-theme] .uc-card + .uc-card { margin-top: 20px; }
:root[data-theme] .uc-card__head {
  display: flex; align-items: center; gap: 10px;
  padding: 17px 24px; border-bottom: 1px solid rgba(255, 255, 255, 0.4);
}
:root[data-theme] .uc-card__head .material-icons-outlined,
:root[data-theme] .uc-card__head .material-icons {
  font-size: 22px; color: var(--md-primary);
}
:root[data-theme] .uc-card__title { font-size: 16px; font-weight: 700; color: var(--uc-ink); }
:root[data-theme] .uc-card__sub { font-size: 12.5px; color: var(--uc-ink-med); margin-left: 4px; }
:root[data-theme] .uc-card__tools { margin-left: auto; display: flex; align-items: center; gap: 8px; }
:root[data-theme] .uc-card__body { padding: 22px 24px; }

/* 页面标题条(面包屑风) */
:root[data-theme] .uc-pagehead {
  display: flex; align-items: center; gap: 10px; margin-bottom: 18px; padding-left: 4px;
}
:root[data-theme] .uc-pagehead .material-icons-outlined { font-size: 24px; color: var(--md-primary); }
:root[data-theme] .uc-pagehead__title { font-size: 20px; font-weight: 700; color: var(--uc-ink); text-shadow: 0 1px 2px rgba(255,255,255,.5); }

/* =============================================================================
   ⑤ Dashboard 组件
   ============================================================================= */
/* 欢迎横幅(直接躺在卡片 body 里,不再套第二层盒子) */
:root[data-theme] .uc-welcome {
  display: flex; align-items: center; gap: 16px;
}
:root[data-theme] .uc-welcome__avatar { width: 52px; height: 52px; border-radius: 50%; object-fit: cover; box-shadow: 0 4px 12px rgba(var(--md-primary-rgb), 0.3); flex: 0 0 auto; }
:root[data-theme] .uc-welcome__hi { font-size: 18px; font-weight: 700; color: var(--uc-ink); }
:root[data-theme] .uc-welcome__sub { font-size: 13px; color: var(--uc-ink-med); margin-top: 2px; }

/* 信息键值表 */
:root[data-theme] .uc-info { display: grid; grid-template-columns: 1fr; gap: 2px; }
:root[data-theme] .uc-info__row {
  display: grid; grid-template-columns: 130px 1fr; align-items: center; gap: 12px;
  padding: 11px 8px; border-bottom: 1px solid rgba(31, 38, 60, 0.06);
}
:root[data-theme] .uc-info__row:last-child { border-bottom: none; }
:root[data-theme] .uc-info__k { font-size: 13px; color: var(--uc-ink-med); }
:root[data-theme] .uc-info__v { font-size: 14px; color: var(--uc-ink); word-break: break-all; }
:root[data-theme] .uc-info__v a { color: var(--md-primary); text-decoration: none; }
:root[data-theme] .uc-info__v a:hover { text-decoration: underline; }
:root[data-theme] .uc-info__v .uc-hint { color: var(--uc-ink-dis); font-size: 12.5px; }
:root[data-theme] .uc-ip { color: #1a86d0; font-weight: 500; }
:root[data-theme] .uc-warn { color: #e5484d; font-weight: 600; }

/* 密钥/ID 徽标 + 复制/重置 */
:root[data-theme] .uc-chip {
  display: inline-flex; align-items: center; height: 26px; padding: 0 11px; border-radius: 8px;
  font-size: 12.5px; font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  background: rgba(var(--md-primary-rgb), 0.12); color: var(--uc-primary-deep); letter-spacing: .3px;
}
:root[data-theme] .uc-minibtn {
  display: inline-flex; align-items: center; gap: 4px; height: 26px; padding: 0 10px; border-radius: 8px;
  font-size: 12.5px; font-weight: 600; cursor: pointer; border: 1px solid transparent; margin-left: 6px;
  transition: filter .15s ease, background-color .15s ease;
}
:root[data-theme] .uc-minibtn .material-icons-outlined { font-size: 15px; }
:root[data-theme] .uc-minibtn--reset { background: rgba(46, 160, 110, 0.16); color: #1c7d52; }
:root[data-theme] .uc-minibtn--reset:hover { background: rgba(46, 160, 110, 0.26); }
:root[data-theme] .uc-minibtn--copy { background: rgba(var(--md-primary-rgb), 0.14); color: var(--uc-primary-deep); }
:root[data-theme] .uc-minibtn--copy:hover { background: rgba(var(--md-primary-rgb), 0.24); }

/* 统计磁贴网格(上下都留呼吸,避免和后面的卡片黏在一起) */
:root[data-theme] .uc-stats {
  display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; margin: 18px 0;
}
:root[data-theme] .uc-stats--3 { grid-template-columns: repeat(3, 1fr); }
:root[data-theme] .uc-stat {
  position: relative; padding: 18px 20px; border-radius: var(--glass-radius-sm);
  background: var(--glass-bg-soft);
  border: 1px solid var(--glass-border-soft);
  -webkit-backdrop-filter: saturate(160%) blur(10px);
  backdrop-filter: saturate(160%) blur(10px);
  overflow: hidden;
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
:root[data-theme] .uc-stat:hover { transform: translateY(-3px); box-shadow: var(--glass-shadow); border-color: rgba(var(--stat-rgb, var(--md-primary-rgb)), 0.4); }
:root[data-theme] .uc-stat__label { display: flex; align-items: center; gap: 6px; font-size: 12.5px; font-weight: 500; color: var(--uc-ink-med); }
:root[data-theme] .uc-stat__label .material-icons-outlined { font-size: 17px; color: rgba(var(--stat-rgb, var(--md-primary-rgb)), 1); }
:root[data-theme] .uc-stat__value { margin-top: 8px; font-size: 24px; font-weight: 800; letter-spacing: -.5px; color: var(--uc-ink); }
:root[data-theme] .uc-stat__value .cur { font-size: 15px; font-weight: 600; color: var(--uc-ink-med); margin-right: 1px; }
/* 磁贴强调色 */
:root[data-theme] .uc-stat--primary { --stat-rgb: var(--md-primary-rgb); }
:root[data-theme] .uc-stat--success { --stat-rgb: 46, 160, 110; }
:root[data-theme] .uc-stat--info    { --stat-rgb: 26, 134, 208; }
:root[data-theme] .uc-stat--warning { --stat-rgb: 240, 155, 30; }
:root[data-theme] .uc-stat--coin    { --stat-rgb: 156, 110, 230; }

/* 分节小标题(段落间距拉开,建立分区节奏;右侧可挂快捷操作)
   标题直接压在壁纸上 → 用主墨色 + 同色光晕(halo)保证两个主题下都读得清 */
:root[data-theme] .uc-subhead {
  display: flex; align-items: center; gap: 8px; margin: 26px 0 2px;
  font-size: 13.5px; font-weight: 800; letter-spacing: .02em; color: var(--uc-ink); text-transform: none;
  text-shadow: 0 1px 10px rgba(255, 255, 255, 0.7), 0 0 3px rgba(255, 255, 255, 0.5);
}
:root[data-theme="dark"] .uc-subhead { text-shadow: 0 1px 10px rgba(0, 0, 0, 0.7), 0 0 3px rgba(0, 0, 0, 0.55); }
:root[data-theme] .uc-subhead::before { content: ""; width: 3px; height: 15px; border-radius: 2px; background: var(--md-primary); box-shadow: 0 0 6px rgba(var(--md-primary-rgb), .4); }
:root[data-theme] .uc-subhead__tools { margin-left: auto; display: inline-flex; gap: 8px; }
:root[data-theme] .uc-main > .uc-subhead:first-child { margin-top: 0; }

/* =============================================================================
   ⑥ 共享组件在玻璃背景上的收口(表格/工具条/空态)
   ============================================================================= */
/* 前台表格外框玻璃化(md-components 已管内部样式) */
:root[data-theme] .uc-card .bootstrap-table,
:root[data-theme] .uc-card .fixed-table-container { background: transparent; }
:root[data-theme] .uc-card .table-search { background: transparent !important; }

/* =============================================================================
   ⑧ 列表页工具条 + 表单 + 等级选择卡 + 提示条
   ============================================================================= */
/* 工具条按钮 → MUI outlined 玻璃药丸(保留 button-* 类给 JS) */
:root[data-theme] .uc-toolbar { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 18px; }
:root[data-theme] .uc-toolbar:empty { display: none; }
:root[data-theme] .uc-toolbar .layui-btn {
  display: inline-flex !important; align-items: center; gap: 6px;
  height: 36px !important; padding: 0 15px !important; margin: 0 !important;
  border-radius: 10px !important; font-size: 13px !important; font-weight: 600 !important;
  background: rgba(255, 255, 255, 0.5) !important; color: var(--uc-primary-deep) !important;
  border: 1px solid rgba(var(--md-primary-rgb), 0.45) !important; box-shadow: none !important;
  transition: background-color .15s, border-color .15s;
}
:root[data-theme] .uc-toolbar .layui-btn:hover { background: rgba(var(--md-primary-rgb), 0.12) !important; border-color: var(--md-primary) !important; }
:root[data-theme] .uc-toolbar .layui-btn i { font-size: 15px; color: currentColor; --fa-primary-color: currentColor; --fa-secondary-color: currentColor; --fa-secondary-opacity: .55; }
/* 主操作(新建/添加/上传/生成)填充实心,更醒目 */
:root[data-theme] .uc-toolbar .layui-btn.button-add {
  background: var(--md-primary) !important;
  color: var(--md-on-primary) !important; border-color: transparent !important;
  box-shadow: 0 3px 1px -2px rgba(0,0,0,.2), 0 2px 2px 0 rgba(0,0,0,.14), 0 1px 5px 0 rgba(0,0,0,.12) !important;
}
:root[data-theme] .uc-toolbar .layui-btn.button-add:hover { filter: brightness(1.05); }

/* 通用 CTA 药丸(店铺开通/升级/保存等) */
/* MUI Contained(与后台按钮一致:实心主色 + MD2 三层阴影) */
:root[data-theme] .uc-cta {
  display: inline-flex; align-items: center; justify-content: center; gap: 7px; height: 40px; padding: 0 22px;
  border-radius: var(--md-radius); border: none; cursor: pointer; font-size: 13.5px; font-weight: 600;
  background: var(--md-primary); color: var(--md-on-primary); text-decoration: none;
  box-shadow: 0 3px 1px -2px rgba(0,0,0,.2), 0 2px 2px 0 rgba(0,0,0,.14), 0 1px 5px 0 rgba(0,0,0,.12);
  transition: box-shadow .18s, filter .15s, transform .1s;
}
:root[data-theme] .uc-cta:hover { color: var(--md-on-primary); filter: brightness(1.08); box-shadow: 0 2px 4px -1px rgba(0,0,0,.2), 0 4px 5px 0 rgba(0,0,0,.14), 0 1px 10px 0 rgba(0,0,0,.12); }
:root[data-theme] .uc-cta:active { transform: translateY(1px); box-shadow: 0 5px 5px -3px rgba(0,0,0,.2), 0 8px 10px 1px rgba(0,0,0,.14), 0 3px 14px 2px rgba(0,0,0,.12); }
/* MUI Outlined */
:root[data-theme] .uc-cta--ghost {
  background: transparent; color: var(--md-primary);
  border: 1px solid rgba(var(--md-primary-rgb), 0.5); box-shadow: none;
}
:root[data-theme] .uc-cta--ghost:hover { background: rgba(var(--md-primary-rgb), 0.08); color: var(--md-primary); box-shadow: none; filter: none; }

/* 店铺设置表单:静态标签在上 + 玻璃 outlined 输入 */
:root[data-theme] .uc-form .form-header,
:root[data-theme] .uc-card .form-header {
  display: flex; align-items: center; gap: 8px; flex-wrap: wrap;
  font-size: 13px; font-weight: 600; color: var(--uc-ink-med); margin: 20px 0 8px;
}
:root[data-theme] .uc-form > .form-block > .form-header:first-child,
:root[data-theme] .uc-card .form-body > *:first-child .form-header { margin-top: 0; }
:root[data-theme] .uc-card .form-body .layui-input,
:root[data-theme] .uc-card .form-body .layui-select,
:root[data-theme] .uc-card .form-body select {
  height: 48px !important; line-height: 46px !important; width: 100%; max-width: 460px;
  border: none !important; border-radius: var(--md-radius) !important;
  background: transparent !important; padding: 0 14px !important;
  color: var(--uc-ink) !important; font-size: 15px !important; box-shadow: none !important; transition: none !important;
}
:root[data-theme] .uc-card .form-body select {
  -webkit-appearance: none; appearance: none; cursor: pointer;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath fill='%23999' d='M7 10l5 5 5-5z'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important; background-position: right 10px center !important; padding-right: 38px !important;
}
:root[data-theme] .uc-card .form-body .layui-input:focus,
:root[data-theme] .uc-card .form-body select:focus { outline: none; box-shadow: none !important; }
:root[data-theme] .uc-card .form-body .layui-input:disabled { opacity: .55; cursor: not-allowed; }
/* MUI 复选框(显示主站商品 等原生 checkbox) */
:root[data-theme] .uc-card .form-body input[type="checkbox"] {
  -webkit-appearance: none !important; appearance: none !important; width: 20px !important; height: 20px !important;
  min-height: 20px; flex: 0 0 auto; margin: 0 6px 0 0; vertical-align: -5px;
  border: 2px solid var(--md-on-surface-med) !important; border-radius: 5px !important; background: transparent !important;
  cursor: pointer; position: relative; box-shadow: none !important; transition: background-color .15s, border-color .15s;
}
:root[data-theme] .uc-card .form-body input[type="checkbox"]:hover { border-color: var(--md-primary) !important; }
:root[data-theme] .uc-card .form-body input[type="checkbox"]:checked { background: var(--md-primary) !important; border-color: var(--md-primary) !important; }
:root[data-theme] .uc-card .form-body input[type="checkbox"]:checked::after {
  content: ""; position: absolute; left: 5px; top: 1px; width: 5px; height: 10px;
  border: solid var(--md-on-primary); border-width: 0 2px 2px 0; transform: rotate(45deg);
}

/* ---- 域名绑定 专属布局 ---- */
:root[data-theme] .uc-card .uc-domain-field { margin-bottom: 28px; max-width: 520px; }
:root[data-theme] .uc-card .uc-domain-row { display: flex; gap: 12px; align-items: flex-start; max-width: 520px; }
@media (max-width: 520px) { :root[data-theme] .uc-card .uc-domain-row { flex-wrap: wrap; } :root[data-theme] .uc-card .uc-domain-row > div { flex: 1 1 100% !important; } }

/* ---- 卡片内 MUI Tabs(店铺页:店铺信息/商品设置/域名绑定 三合一) ---- */
:root[data-theme] .uc-card .uc-tabs {
  display: flex; gap: 2px; padding: 6px 16px 0; border-bottom: 1px solid var(--md-divider);
  /* 窄屏 tab 可横滑,但滚动条不可见(overflow-x:auto 会连带把 y 轴变 auto → 右端冒出竖向滚动条) */
  overflow-x: auto; overflow-y: hidden; scrollbar-width: none;
}
:root[data-theme] .uc-card .uc-tabs::-webkit-scrollbar { display: none; }
:root[data-theme] .uc-card .uc-tab {
  display: inline-flex; align-items: center; gap: 7px; height: 48px; padding: 0 18px; border: none; background: transparent;
  cursor: pointer; font-size: 14px; font-weight: 500; color: var(--uc-ink-med); position: relative; white-space: nowrap;
  font-family: inherit; transition: color .15s;
}
:root[data-theme] .uc-card .uc-tab .material-icons-outlined { font-size: 19px; }
:root[data-theme] .uc-card .uc-tab:hover { color: var(--uc-ink); }
:root[data-theme] .uc-card .uc-tab.active { color: var(--md-primary); }
:root[data-theme] .uc-card .uc-tab.active::after {
  content: ""; position: absolute; left: 12px; right: 12px; bottom: -1px; height: 2px;
  background: var(--md-primary); border-radius: 2px 2px 0 0;
}
:root[data-theme] .uc-card .uc-tabpanel { display: none; }
:root[data-theme] .uc-card .uc-tabpanel.active { display: block; animation: uc-fade .22s ease; }
@keyframes uc-fade { from { opacity: 0; transform: translateY(5px); } to { opacity: 1; transform: none; } }
:root[data-theme] .uc-card .uc-save-row { margin-top: 26px; padding-top: 20px; border-top: 1px solid var(--md-divider); }
:root[data-theme] .uc-card .uc-domain-field__label {
  display: flex; align-items: center; gap: 8px; margin-bottom: 10px;
  font-size: 14px; font-weight: 600; color: var(--uc-ink);
}
:root[data-theme] .uc-card .uc-domain-field__label > .material-icons-outlined { font-size: 20px; color: var(--md-primary); }
/* 子域名输入组:前缀 + . + 后缀,同一个 outlined 容器 */
:root[data-theme] .uc-card .uc-domain-group {
  display: flex; align-items: stretch; height: 48px;
  border: 1px solid var(--md-outline); border-radius: var(--md-radius); overflow: hidden;
  background: var(--uc-field-bg); -webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px);
  transition: border-color .15s, box-shadow .15s;
}
:root[data-theme] .uc-card .uc-domain-group:focus-within { border-color: var(--uc-focus); box-shadow: inset 0 0 0 1px var(--uc-focus); }
:root[data-theme] .uc-card .uc-domain-input {
  flex: 1 1 auto; min-width: 0; border: none; background: transparent; padding: 0 14px;
  color: var(--uc-ink); font-size: 15px; outline: none;
}
:root[data-theme] .uc-card .uc-domain-input::placeholder { color: var(--uc-ink-dis); }
:root[data-theme] .uc-card .uc-domain-sep { display: flex; align-items: center; color: var(--uc-ink-med); font-weight: 700; font-size: 16px; }
:root[data-theme] .uc-card .uc-domain-suffix {
  flex: 0 0 auto; max-width: 48%; border: none; border-left: 1px solid var(--md-divider); background: rgba(0,0,0,.03);
  padding: 0 34px 0 12px; margin: 0; color: var(--uc-ink); font-size: 14.5px; cursor: pointer; outline: none; height: 100%;
  -webkit-appearance: none; appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath fill='%23999' d='M7 10l5 5 5-5z'/%3E%3C/svg%3E");
  background-repeat: no-repeat; background-position: right 10px center;
}
/* 独立域名整行输入 */
:root[data-theme] .uc-card .uc-domain-input--full {
  display: block; width: 100%; height: 48px;
  border: 1px solid var(--md-outline); border-radius: var(--md-radius);
  background: var(--uc-field-bg); -webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px);
  padding: 0 14px; color: var(--uc-ink); font-size: 15px; outline: none;
  transition: border-color .15s, box-shadow .15s;
}
:root[data-theme] .uc-card .uc-domain-input--full::placeholder { color: var(--uc-ink-dis); }
:root[data-theme] .uc-card .uc-domain-input--full:focus { border-color: var(--uc-focus); box-shadow: inset 0 0 0 1px var(--uc-focus); }
:root[data-theme] .uc-card .uc-domain-input:disabled,
:root[data-theme] .uc-card .uc-domain-input--full:disabled,
:root[data-theme] .uc-card .uc-domain-suffix:disabled { opacity: .6; cursor: not-allowed; }
/* helper text + CNAME 复制码 + 状态标签 */
:root[data-theme] .uc-card .uc-domain-hint { margin-top: 10px; font-size: 12.5px; color: var(--uc-ink-med); display: flex; align-items: center; gap: 7px; flex-wrap: wrap; }
:root[data-theme] .uc-card .uc-domain-hint b { color: var(--uc-ink); }
:root[data-theme] .uc-card .uc-cname {
  display: inline-flex; align-items: center; gap: 6px; padding: 4px 10px; border-radius: 8px;
  background: rgba(var(--md-primary-rgb), .08); border: 1px solid rgba(var(--md-primary-rgb), .22); cursor: pointer;
  transition: background-color .15s;
}
:root[data-theme] .uc-card .uc-cname:hover { background: rgba(var(--md-primary-rgb), .16); }
:root[data-theme] .uc-card .uc-cname code { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 12.5px; color: var(--uc-ink); }
:root[data-theme] .uc-card .uc-cname > .material-icons-outlined { font-size: 15px; color: var(--md-primary); }
:root[data-theme] .uc-card .uc-tag { display: inline-flex; align-items: center; font-size: 11.5px; font-weight: 600; padding: 2px 9px; border-radius: 999px; }
:root[data-theme] .uc-card .uc-tag--ok { background: rgba(46,160,110,.15); color: #1c7d52; }
:root[data-theme] .uc-card .uc-tag--warn { background: rgba(240,155,30,.18); color: #b26a00; }
:root[data-theme] .uc-card .uc-unbind { font-size: 12.5px; color: #e5484d; cursor: pointer; text-decoration: none; margin-left: 2px; font-weight: 500; }
:root[data-theme] .uc-card .uc-unbind:hover { text-decoration: underline; }
:root[data-theme="dark"] .uc-card .uc-domain-suffix { background: rgba(255,255,255,.04); }
:root[data-theme="dark"] .uc-card .uc-tag--ok { background: rgba(46,160,110,.2); color: #6fdca5; }
:root[data-theme="dark"] .uc-card .uc-tag--warn { background: rgba(240,155,30,.2); color: #f0b45e; }

/* 店铺等级选择卡 */
/* 升级店铺:定价卡(pick 选中指示 + 推荐角标 + 大价格 + 权益列表) */
:root[data-theme] .uc-plans { display: grid; grid-template-columns: repeat(auto-fit, minmax(238px, 1fr)); gap: 18px; max-width: 760px; margin-top: 16px; }
:root[data-theme] .uc-plan {
  position: relative; display: block; padding: 22px 22px 20px; border-radius: 18px;
  cursor: pointer; text-decoration: none; color: var(--uc-ink);
  background: var(--glass-bg-soft); border: 1.5px solid var(--glass-border-soft);
  transition: border-color .18s, box-shadow .18s, transform .18s, background-color .18s;
}
:root[data-theme] .uc-plan:hover { transform: translateY(-4px); box-shadow: var(--glass-shadow); border-color: var(--md-on-surface-med); }
:root[data-theme] .uc-plan.checked {
  border-color: var(--md-primary); background: rgba(var(--md-primary-rgb), 0.06);
  box-shadow: 0 0 0 3px rgba(var(--md-primary-rgb), 0.16), var(--glass-shadow);
}
/* 选中指示器(右上角圆点,选中填充打勾) */
:root[data-theme] .uc-plan__pick {
  position: absolute; top: 18px; right: 18px; width: 22px; height: 22px; border-radius: 50%;
  border: 2px solid var(--md-outline); background: transparent;
  display: flex; align-items: center; justify-content: center; transition: border-color .18s, background-color .18s;
}
:root[data-theme] .uc-plan__pick .material-icons-outlined { font-size: 15px; opacity: 0; transition: opacity .18s; }
:root[data-theme] .uc-plan.checked .uc-plan__pick { border-color: var(--md-primary); background: var(--md-primary); }
:root[data-theme] .uc-plan.checked .uc-plan__pick .material-icons-outlined { opacity: 1; color: var(--md-on-primary); }
/* 头部:图标 + 名称 + 推荐药丸 */
:root[data-theme] .uc-plan__head { display: flex; align-items: center; gap: 9px; padding-right: 30px; }
:root[data-theme] .uc-plan__icon { width: 30px; height: 30px; border-radius: 8px; object-fit: cover; flex: 0 0 auto; }
:root[data-theme] .uc-plan__name { font-size: 16px; font-weight: 700; color: var(--uc-ink); }
:root[data-theme] .uc-plan__badge {
  padding: 2px 9px; border-radius: 999px; font-size: 10.5px; font-weight: 700; letter-spacing: .04em;
  background: rgba(var(--md-primary-rgb), .14); color: var(--md-primary);
}
/* 价格 */
:root[data-theme] .uc-plan__price { margin-top: 16px; font-size: 34px; font-weight: 800; letter-spacing: -1px; line-height: 1; color: var(--uc-ink); }
:root[data-theme] .uc-plan__cur { font-size: 18px; font-weight: 700; color: var(--uc-ink-med); margin-right: 2px; vertical-align: 6px; }
:root[data-theme] .uc-plan__sub { margin-top: 6px; font-size: 12px; color: var(--uc-ink-dis); }
/* 权益列表 */
:root[data-theme] .uc-plan__feats { margin-top: 18px; padding-top: 16px; border-top: 1px solid rgba(31, 38, 60, 0.09); display: flex; flex-direction: column; gap: 10px; }
:root[data-theme] .uc-plan__feat { display: flex; align-items: center; gap: 9px; font-size: 13px; color: var(--uc-ink); }
:root[data-theme] .uc-plan__feat .material-icons-outlined { font-size: 18px; color: var(--md-success); flex: 0 0 auto; }
:root[data-theme] .uc-plan__feat.off { color: var(--uc-ink-dis); }
:root[data-theme] .uc-plan__feat.off .material-icons-outlined { color: var(--uc-ink-dis); }
:root[data-theme] .uc-plan__feat--fee { justify-content: space-between; margin-top: 2px; padding-top: 12px; border-top: 1px dashed rgba(31, 38, 60, 0.12); font-size: 12.5px; color: var(--uc-ink-med); }
:root[data-theme] .uc-plan__feat--fee b { font-size: 14px; font-weight: 800; color: var(--md-primary); }

/* 权益说明:2 列图文卡格 */
:root[data-theme] .uc-benefits { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 14px; margin: 24px 0 4px; }
:root[data-theme] .uc-benefit {
  display: flex; gap: 12px; padding: 14px 16px; border-radius: 14px;
  background: var(--glass-bg-soft); border: 1px solid var(--glass-border-soft);
}
:root[data-theme] .uc-benefit .material-icons-outlined { font-size: 20px; color: var(--md-primary); flex: 0 0 auto; margin-top: 1px; }
:root[data-theme] .uc-benefit div { font-size: 12.5px; line-height: 1.7; color: var(--uc-ink-med); }
:root[data-theme] .uc-benefit b { display: block; font-size: 13px; color: var(--uc-ink); margin-bottom: 2px; }

/* 操作区 */
:root[data-theme] .uc-plan-actions { margin-top: 22px; display: flex; gap: 12px; flex-wrap: wrap; }

:root[data-theme="dark"] .uc-plan__feats { border-top-color: rgba(255,255,255,0.10); }
:root[data-theme="dark"] .uc-plan__feat--fee { border-top-color: rgba(255,255,255,0.12); }

/* 商户等级状态条(我的店铺顶部,替换原 .elem-quote 一行挤字横幅):等级身份 + 能力药丸 + 升级按钮 */
/* 下方是 <form> 包着的卡片(非相邻 .uc-card 兄弟) → `.uc-card + .uc-card` 不命中,显式补底距 */
:root[data-theme] .uc-mstatus { display: flex; align-items: center; gap: 20px; flex-wrap: wrap; padding: 15px 22px; margin-bottom: 20px; }
:root[data-theme] .uc-mstatus__id { display: flex; align-items: center; gap: 12px; flex: 0 0 auto; }
:root[data-theme] .uc-mstatus__crown {
  width: 44px; height: 44px; flex: 0 0 auto; border-radius: 13px; display: flex; align-items: center; justify-content: center;
  background: linear-gradient(135deg, rgba(var(--md-primary-rgb), .14), rgba(var(--md-primary-rgb), .04));
  border: 1px solid rgba(var(--md-primary-rgb), .16);
}
:root[data-theme] .uc-mstatus__crown img { height: 24px; width: auto; }
:root[data-theme] .uc-mstatus__label { font-size: 11.5px; color: var(--md-on-surface-med); letter-spacing: .3px; }
:root[data-theme] .uc-mstatus__name { font-size: 16px; font-weight: 800; color: var(--uc-ink); margin-top: 2px; line-height: 1.1; }
:root[data-theme] .uc-mstatus__feats { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
:root[data-theme] .uc-mstatus__feat {
  display: inline-flex; align-items: center; gap: 5px; height: 30px; padding: 0 13px; border-radius: 999px;
  font-size: 12.5px; font-weight: 600; white-space: nowrap;
  background: var(--glass-bg-soft); border: 1px solid var(--glass-border-soft); color: var(--md-on-surface-med);
}
:root[data-theme] .uc-mstatus__feat .material-icons-outlined { font-size: 16px; }
:root[data-theme] .uc-mstatus__feat.ok { color: var(--md-success); background: rgba(var(--md-success-rgb), .09); border-color: rgba(var(--md-success-rgb), .22); }
:root[data-theme] .uc-mstatus__feat.no { color: var(--md-on-surface-dis); }
:root[data-theme] .uc-mstatus__feat.no .material-icons-outlined { color: var(--md-error); opacity: .65; }
:root[data-theme] .uc-mstatus__feat.fee { color: var(--md-info); background: rgba(var(--md-info-rgb), .09); border-color: rgba(var(--md-info-rgb), .22); }
:root[data-theme] .uc-mstatus__feat.fee b { margin-left: 3px; font-weight: 800; }
:root[data-theme] .uc-mstatus__up {
  display: inline-flex; align-items: center; gap: 6px; flex: 0 0 auto; margin-left: auto;
  height: 38px; padding: 0 18px; border-radius: 999px; font-size: 13px; font-weight: 700; text-decoration: none;
  color: var(--md-on-primary); background: var(--md-primary); border: 1px solid var(--md-primary);
  transition: filter .15s, transform .12s, box-shadow .15s;
}
:root[data-theme] .uc-mstatus__up .material-icons-outlined { font-size: 17px; }
:root[data-theme] .uc-mstatus__up:hover { filter: brightness(1.08); transform: translateY(-1px); box-shadow: 0 6px 16px -6px rgba(var(--md-primary-rgb), .5); }
:root[data-theme] .uc-mstatus__up:active { transform: translateY(0); box-shadow: none; }
@media (max-width: 640px) {
  :root[data-theme] .uc-mstatus__up { margin-left: 0; width: 100%; justify-content: center; }
}

/* 提示条 elem-quote / elem-tips → MUI 信息横幅 */
:root[data-theme] .uc-card .elem-quote,
:root[data-theme] .uc-card .elem-tips {
  margin: 0 0 18px; padding: 13px 16px 13px 16px; border-radius: 12px;
  background: rgba(var(--md-primary-rgb), 0.08); border: 1px solid rgba(var(--md-primary-rgb), 0.16);
  border-left: 3px solid var(--md-primary); color: var(--uc-ink); font-size: 13.5px; line-height: 1.7;
}
:root[data-theme] .uc-card .elem-tips { background: rgba(31, 38, 60, 0.04); border-color: rgba(31, 38, 60, 0.08); border-left-color: var(--uc-ink-dis); color: var(--uc-ink-med); font-size: 12.5px; }
:root[data-theme] .uc-card .elem-tips p, :root[data-theme] .uc-card .elem-quote p { margin: 2px 0; }

/* 二级 tab 条(硬币兑现/兑现记录) */
:root[data-theme] .uc-subtab { display: flex; flex-wrap: wrap; gap: 2px; margin-bottom: 20px; border-bottom: 1px solid rgba(31, 38, 60, 0.1); }
:root[data-theme] .uc-subtab a {
  display: inline-flex; align-items: center; gap: 6px; padding: 10px 18px; margin-bottom: -1px;
  font-size: 14px; font-weight: 600; color: var(--uc-ink-med); text-decoration: none;
  border-bottom: 2px solid transparent; transition: color .15s, border-color .15s;
}
:root[data-theme] .uc-subtab a .material-icons-outlined { font-size: 19px; }
:root[data-theme] .uc-subtab a:hover { color: var(--uc-primary-deep); }
:root[data-theme] .uc-subtab a.active { color: var(--md-primary); border-bottom-color: var(--md-primary); }
:root[data-theme] .uc-count { font-size: 11px; font-weight: 700; padding: 1px 7px; border-radius: 999px; background: rgba(var(--md-primary-rgb), 0.16); color: var(--uc-primary-deep); }

/* 支付/兑现方式选择器 */
:root[data-theme] .uc-card .pay-list { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 2px; }
:root[data-theme] .uc-card .pay-list .button-click {
  display: inline-flex; align-items: center; gap: 8px; padding: 10px 16px; border-radius: 12px;
  border: 1.5px solid var(--glass-border-soft); background: rgba(255, 255, 255, 0.5);
  color: var(--uc-ink) !important; cursor: pointer; font-weight: 600; font-size: 13.5px; text-decoration: none;
  transition: border-color .15s, background-color .15s, box-shadow .15s;
}
:root[data-theme] .uc-card .pay-list .button-click .pay-icon { width: 22px; height: 22px; object-fit: contain; margin: 0; }
:root[data-theme] .uc-card .pay-list .button-click:hover { border-color: var(--md-primary); }
:root[data-theme] .uc-card .pay-list .button-click.checked {
  border-color: var(--md-primary); background: rgba(var(--md-primary-rgb), 0.1); box-shadow: 0 0 0 2px rgba(var(--md-primary-rgb), 0.16);
}
:root[data-theme] .uc-card .pay-list p { margin: 0 0 6px; width: 100%; }

/* =============================================================================
   硬币兑现(CASH)完全重构 · uc-cash*
   账户总览 + 兑现工作台 + 实时结算单。保留 cash.js 共用的 .cash-wallet-btn/
   .payButton 钩子，其它主题没有 .uc-cash 时新增逻辑自动 no-op。
   ============================================================================= */
/* 总览 hero */
:root[data-theme] .uc-cash-hero { position: relative; overflow: hidden; }
:root[data-theme] .uc-cash-hero > .uc-card__body { padding: 0 28px 26px; }
:root[data-theme] .uc-cash-hero .uc-subtab { position: relative; z-index: 2; margin: 0 0 23px; padding-top: 7px; }
/* 兑现记录沿用普通卡片正文，但 TAB 顶部基线必须与兑现页 hero 完全一致 */
:root[data-theme] .uc-cash-record > .uc-card__body { padding-top: 0; }
:root[data-theme] .uc-cash-record .uc-subtab { padding-top: 7px; }
:root[data-theme] .uc-cash-hero__glow {
  position: absolute; z-index: 0; top: -145px; right: 8%; width: 430px; height: 360px; pointer-events: none;
  background: radial-gradient(circle, rgba(var(--md-info-rgb), .14), rgba(var(--md-info-rgb), .04) 46%, transparent 72%);
}
:root[data-theme] .uc-cash-hero__content {
  position: relative; z-index: 1; display: grid; grid-template-columns: minmax(0, 1fr) minmax(460px, .92fr);
  align-items: center; gap: 38px;
}
:root[data-theme] .uc-cash-balance { display: flex; align-items: center; gap: 18px; min-width: 0; }
:root[data-theme] .uc-cash-balance__icon {
  width: 64px; height: 64px; flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center;
  border-radius: 19px; color: var(--md-info);
  background: linear-gradient(145deg, rgba(var(--md-info-rgb), .17), rgba(var(--md-info-rgb), .06));
  border: 1px solid rgba(var(--md-info-rgb), .18); box-shadow: inset 0 1px 0 rgba(255,255,255,.45);
}
:root[data-theme] .uc-cash-balance__icon .material-icons-outlined { font-size: 31px; }
:root[data-theme] .uc-cash-balance__copy { display: flex; flex-direction: column; min-width: 0; }
:root[data-theme] .uc-cash-balance__label { font-size: 12.5px; font-weight: 700; letter-spacing: .05em; color: var(--uc-ink-med); }
:root[data-theme] .uc-cash-balance__value {
  display: flex; align-items: baseline; gap: 9px; margin-top: 5px; font-size: 44px; line-height: 1; font-weight: 850;
  letter-spacing: -1.4px; color: var(--uc-ink); font-variant-numeric: tabular-nums;
}
:root[data-theme] .uc-cash-balance__value small { font-size: 14px; font-weight: 650; letter-spacing: 0; color: var(--uc-ink-med); }
:root[data-theme] .uc-cash-balance__hint { margin-top: 8px; font-size: 12.5px; color: var(--uc-ink-dis); }
:root[data-theme] .uc-cash-metrics {
  display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); min-width: 0;
  border: 1px solid var(--glass-border-soft); border-radius: 16px; background: var(--glass-bg-soft); overflow: hidden;
}
:root[data-theme] .uc-cash-metric {
  position: relative; display: flex; flex-direction: column; min-width: 0; padding: 15px 17px;
  color: var(--uc-ink); text-decoration: none; transition: background-color .16s ease;
}
:root[data-theme] .uc-cash-metric + .uc-cash-metric { border-left: 1px solid var(--glass-border-soft); }
:root[data-theme] a.uc-cash-metric:hover { background: rgba(var(--md-primary-rgb), .06); color: var(--uc-ink); }
:root[data-theme] .uc-cash-metric__icon {
  position: absolute; top: 13px; right: 13px; width: 27px; height: 27px; display: inline-flex; align-items: center; justify-content: center;
  border-radius: 9px; color: var(--md-info); background: rgba(var(--md-info-rgb), .10);
}
:root[data-theme] .uc-cash-metric__icon .material-icons-outlined { font-size: 16px; }
:root[data-theme] .uc-cash-metric--fee .uc-cash-metric__icon { color: var(--md-warning); background: rgba(var(--md-warning-rgb), .11); }
:root[data-theme] .uc-cash-metric--pending .uc-cash-metric__icon { color: var(--md-secondary); background: rgba(var(--md-secondary-rgb), .10); }
:root[data-theme] .uc-cash-metric__label { padding-right: 28px; font-size: 11.5px; font-weight: 600; color: var(--uc-ink-dis); white-space: nowrap; }
:root[data-theme] .uc-cash-metric strong { margin-top: 10px; font-size: 21px; line-height: 1; font-weight: 800; color: var(--uc-ink); font-variant-numeric: tabular-nums; }
:root[data-theme] .uc-cash-metric strong small { margin-left: 3px; font-size: 10.5px; font-weight: 650; color: var(--uc-ink-med); }

/* 下方工作台:表单与结算单等高 */
:root[data-theme] .uc-cash-grid {
  display: grid; grid-template-columns: minmax(0, 1.32fr) minmax(310px, .68fr); gap: 20px; align-items: stretch; margin-top: 20px;
}
:root[data-theme] .uc-cash-grid > .uc-card { margin-top: 0; height: 100%; display: flex; flex-direction: column; }
:root[data-theme] .uc-cash-grid > .uc-card > .uc-card__body { flex: 1 1 auto; }
:root[data-theme] .uc-cash-cardtitle { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
:root[data-theme] .uc-cash-cardtitle .uc-card__sub { margin-left: 0; }
:root[data-theme] .uc-cash-step + .uc-cash-step { margin-top: 27px; padding-top: 25px; border-top: 1px solid var(--glass-border-soft); }
:root[data-theme] .uc-cash-step__head { display: flex; align-items: flex-start; gap: 11px; margin-bottom: 14px; }
:root[data-theme] .uc-cash-step__num {
  width: 25px; height: 25px; flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center;
  border-radius: 8px; font-size: 11.5px; font-weight: 800; color: var(--md-on-primary); background: var(--md-primary);
}
:root[data-theme] .uc-cash-step__head > div { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
:root[data-theme] .uc-cash-step__head strong { font-size: 14px; line-height: 1.25; color: var(--uc-ink); }
:root[data-theme] .uc-cash-step__head div > span { font-size: 11.5px; line-height: 1.45; color: var(--uc-ink-dis); }

/* 金额输入 */
:root[data-theme] .uc-cash-amount { position: relative; display: flex; align-items: center; }
:root[data-theme] .uc-cash-amount__icon {
  position: absolute; z-index: 2; left: 18px; font-size: 24px; color: var(--md-info); pointer-events: none;
}
:root[data-theme] .uc-cash-amount > input.layui-input {
  width: 100% !important; max-width: none !important; height: 62px !important; box-sizing: border-box;
  padding: 0 86px 0 56px !important; border: 1.5px solid var(--glass-border-soft) !important; border-radius: 15px !important;
  background: var(--uc-field-bg) !important; box-shadow: none !important; outline: none !important;
  color: var(--uc-ink) !important; font-size: 25px !important; font-weight: 800 !important; line-height: normal !important;
  font-variant-numeric: tabular-nums; transition: border-color .16s ease, box-shadow .16s ease !important;
}
:root[data-theme] .uc-cash-amount > input.layui-input:hover { border-color: var(--md-on-surface-med) !important; }
:root[data-theme] .uc-cash-amount > input.layui-input:focus { border-color: var(--uc-focus) !important; box-shadow: 0 0 0 3px rgba(var(--uc-focus-rgb), .14) !important; }
:root[data-theme] .uc-cash-amount__unit {
  position: absolute; right: 17px; font-size: 12px; font-weight: 700; color: var(--uc-ink-med); pointer-events: none;
}
:root[data-theme] .uc-cash-amount__meta { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: 9px; font-size: 12px; color: var(--uc-ink-dis); }
:root[data-theme] .uc-cash-amount__meta b { font-weight: 800; color: var(--uc-ink); }
:root[data-theme] .uc-cash-all {
  padding: 4px 9px; border: 0; border-radius: 8px; cursor: pointer; background: rgba(var(--md-info-rgb), .09);
  color: var(--md-info); font-size: 11.5px; font-weight: 700; transition: background-color .15s ease;
}
:root[data-theme] .uc-cash-all:hover { background: rgba(var(--md-info-rgb), .16); }
:root[data-theme] .uc-cash-all:disabled { opacity: .45; cursor: not-allowed; }

/* 到账方式选择卡 */
:root[data-theme] .uc-card .pay-list.uc-cash-methods { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin-top: 0; }
:root[data-theme] .uc-card .pay-list .button-click.uc-cash-method {
  position: relative; display: grid; grid-template-columns: 42px minmax(0, 1fr) 22px; align-items: center; gap: 11px;
  width: 100%; min-height: 72px; margin: 0; padding: 11px 12px; box-sizing: border-box; text-align: left;
  border: 1.5px solid var(--glass-border-soft); border-radius: 14px; background: var(--uc-field-bg);
  color: var(--uc-ink) !important; box-shadow: none; cursor: pointer; font: inherit;
  transition: border-color .16s ease, background-color .16s ease, box-shadow .16s ease, transform .1s ease;
}
:root[data-theme] .uc-card .pay-list .button-click.uc-cash-method:hover { border-color: rgba(var(--md-primary-rgb), .45); }
:root[data-theme] .uc-card .pay-list .button-click.uc-cash-method:active { transform: translateY(1px); }
:root[data-theme] .uc-card .pay-list .button-click.uc-cash-method.checked {
  border-color: var(--md-primary); background: rgba(var(--md-primary-rgb), .075); box-shadow: 0 0 0 2px rgba(var(--md-primary-rgb), .12);
}
:root[data-theme] .uc-cash-method__icon {
  width: 40px; height: 40px; display: inline-flex; align-items: center; justify-content: center; border-radius: 12px;
  background: rgba(255,255,255,.62); border: 1px solid rgba(255,255,255,.72); box-shadow: 0 2px 8px rgba(31,38,60,.06);
}
:root[data-theme] .uc-card .pay-list .button-click.uc-cash-method .pay-icon { width: 25px; height: 25px; margin: 0; object-fit: contain; }
:root[data-theme] .uc-cash-method__copy { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
:root[data-theme] .uc-cash-method__copy strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 13px; line-height: 1.2; font-weight: 750; color: var(--uc-ink); }
:root[data-theme] .uc-cash-method__copy small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 10.5px; line-height: 1.2; font-weight: 500; color: var(--uc-ink-dis); }
:root[data-theme] .uc-cash-method__check {
  width: 20px; height: 20px; display: inline-flex; align-items: center; justify-content: center; border-radius: 50%;
  border: 1.5px solid var(--md-outline); color: transparent; transition: color .16s ease, border-color .16s ease, background-color .16s ease;
}
:root[data-theme] .uc-cash-method__check .material-icons-outlined { font-size: 13px; font-weight: 800; }
:root[data-theme] .uc-cash-method.checked .uc-cash-method__check { border-color: var(--md-primary); background: var(--md-primary); color: var(--md-on-primary); }
:root[data-theme] .uc-card .pay-list .button-click.uc-cash-method.is-unbound { cursor: not-allowed; }
:root[data-theme] .uc-card .pay-list .button-click.uc-cash-method.is-unbound:hover { border-color: var(--glass-border-soft); }
:root[data-theme] .uc-cash-method.is-unbound .uc-cash-method__icon,
:root[data-theme] .uc-cash-method.is-unbound .uc-cash-method__copy,
:root[data-theme] .uc-cash-method.is-unbound .uc-cash-method__check { opacity: .58; }
:root[data-theme] .uc-cash-method.is-unbound .uc-cash-method__copy small { color: var(--md-error); }
:root[data-theme] .uc-cash-method-help { display: flex; align-items: center; gap: 5px; margin-top: 11px; font-size: 11.5px; color: var(--uc-ink-dis); }
:root[data-theme] .uc-cash-method-help .material-icons-outlined { font-size: 15px; color: var(--md-info); }
:root[data-theme] .uc-cash-method-help a { color: var(--md-info); font-weight: 650; text-decoration: none; }
:root[data-theme] .uc-cash-method-help a:hover { text-decoration: underline; }

/* 提交按钮 */
:root[data-theme] .uc-cash-submit { margin-top: 25px; }
:root[data-theme] .uc-cash-submit .payButton { width: 100%; height: 50px; border-radius: 14px; font-size: 14px; }
:root[data-theme] .uc-cash-submit .payButton .material-icons-outlined { font-size: 18px; }
:root[data-theme] .uc-cash-submit .payButton:disabled {
  cursor: not-allowed; filter: none; transform: none; box-shadow: none; opacity: .45;
}

/* 实时结算单 */
:root[data-theme] .uc-cash-receipt > .uc-card__body { display: flex; flex-direction: column; }
:root[data-theme] .uc-cash-receipt__hero {
  position: relative; overflow: hidden; padding: 18px 20px; border-radius: 15px;
  background: linear-gradient(145deg, rgba(var(--md-info-rgb), .13), rgba(var(--md-info-rgb), .04));
  border: 1px solid rgba(var(--md-info-rgb), .15);
}
:root[data-theme] .uc-cash-receipt__hero::after {
  content: ""; position: absolute; top: -40px; right: -30px; width: 120px; height: 120px; border-radius: 50%;
  background: rgba(var(--md-info-rgb), .08); pointer-events: none;
}
:root[data-theme] .uc-cash-receipt__hero > span { position: relative; z-index: 1; font-size: 11.5px; font-weight: 650; color: var(--uc-ink-med); }
:root[data-theme] .uc-cash-receipt__hero strong { position: relative; z-index: 1; display: flex; align-items: baseline; gap: 6px; margin-top: 7px; font-size: 37px; line-height: 1; font-weight: 850; letter-spacing: -1px; color: var(--uc-ink); font-variant-numeric: tabular-nums; }
:root[data-theme] .uc-cash-receipt__hero strong small { font-size: 13px; font-weight: 650; letter-spacing: 0; color: var(--uc-ink-med); }
:root[data-theme] .uc-cash-receipt__rows { margin-top: 15px; }
:root[data-theme] .uc-cash-receipt__rows > div { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 11px 2px; border-bottom: 1px solid var(--glass-border-soft); }
:root[data-theme] .uc-cash-receipt__rows > div > span { font-size: 11.5px; color: var(--uc-ink-dis); }
:root[data-theme] .uc-cash-receipt__rows > div > strong { max-width: 58%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; text-align: right; font-size: 12.5px; font-weight: 750; color: var(--uc-ink); }
:root[data-theme] .uc-cash-receipt__rows > div:nth-child(2) > strong { color: var(--md-warning); }
:root[data-theme] .uc-cash-receipt__status {
  display: flex; align-items: center; gap: 8px; margin-top: 15px; padding: 10px 12px; border-radius: 11px;
  font-size: 11.5px; font-weight: 650; line-height: 1.45;
}
:root[data-theme] .uc-cash-receipt__status .material-icons-outlined { font-size: 17px; flex: 0 0 auto; }
:root[data-theme] .uc-cash-receipt__status.is-error { color: var(--md-warning); background: rgba(var(--md-warning-rgb), .09); border: 1px solid rgba(var(--md-warning-rgb), .18); }
:root[data-theme] .uc-cash-receipt__status.is-ok { color: var(--md-success); background: rgba(var(--md-success-rgb), .09); border: 1px solid rgba(var(--md-success-rgb), .18); }
:root[data-theme] .uc-cash-receipt__note { display: flex; align-items: flex-start; gap: 10px; margin-top: 15px; padding: 12px; border-radius: 12px; background: var(--glass-bg-soft); border: 1px solid var(--glass-border-soft); }
:root[data-theme] .uc-cash-receipt__note > .material-icons-outlined { font-size: 18px; color: var(--md-info); flex: 0 0 auto; }
:root[data-theme] .uc-cash-receipt__note > div { display: flex; flex-direction: column; gap: 4px; }
:root[data-theme] .uc-cash-receipt__note strong { font-size: 11.5px; color: var(--uc-ink); }
:root[data-theme] .uc-cash-receipt__note div > span { font-size: 10.5px; line-height: 1.55; color: var(--uc-ink-dis); }
:root[data-theme] .uc-cash-receipt__safe { display: flex; align-items: flex-start; gap: 7px; margin-top: auto; padding-top: 17px; font-size: 10.5px; line-height: 1.55; color: var(--uc-ink-dis); }
:root[data-theme] .uc-cash-receipt__safe .material-icons-outlined { font-size: 15px; color: var(--md-success); flex: 0 0 auto; }

/* 暗色:输入和选择卡略增稠，图标仍用白底保证品牌图标清晰 */
:root[data-theme="dark"] .uc-cash-metrics,
:root[data-theme="dark"] .uc-cash-receipt__note { background: rgba(255,255,255,.035); }
:root[data-theme="dark"] .uc-cash-amount > input.layui-input,
:root[data-theme="dark"] .uc-card .pay-list .button-click.uc-cash-method { background: rgba(255,255,255,.05) !important; }
:root[data-theme="dark"] .uc-cash-method__icon { background: rgba(255,255,255,.88); border-color: rgba(255,255,255,.12); box-shadow: none; }
:root[data-theme="dark"] .uc-card .pay-list .button-click.uc-cash-method.checked { background: rgba(var(--md-primary-rgb), .09) !important; }

@media (max-width: 900px) {
  :root[data-theme] .uc-cash-hero__content { grid-template-columns: 1fr; gap: 22px; }
  :root[data-theme] .uc-cash-grid { grid-template-columns: 1fr; }
  :root[data-theme] .uc-cash-grid > .uc-card { height: auto; }
}
@media (max-width: 620px) {
  :root[data-theme] .uc-cash-hero > .uc-card__body { padding: 0 17px 20px; }
  :root[data-theme] .uc-cash-hero .uc-subtab { margin-bottom: 18px; }
  :root[data-theme] .uc-cash-balance { gap: 13px; }
  :root[data-theme] .uc-cash-balance__icon { width: 52px; height: 52px; border-radius: 16px; }
  :root[data-theme] .uc-cash-balance__icon .material-icons-outlined { font-size: 26px; }
  :root[data-theme] .uc-cash-balance__value { font-size: 36px; }
  :root[data-theme] .uc-cash-balance__hint { font-size: 11.5px; }
  :root[data-theme] .uc-cash-metric { padding: 13px 12px; }
  :root[data-theme] .uc-cash-metric__icon { display: none; }
  :root[data-theme] .uc-cash-metric__label { padding-right: 0; }
  :root[data-theme] .uc-cash-metric strong { font-size: 18px; }
  :root[data-theme] .uc-cash-grid .uc-card__head { padding: 15px 17px; }
  :root[data-theme] .uc-cash-grid .uc-card__body { padding: 18px 17px; }
  :root[data-theme] .uc-card .pay-list.uc-cash-methods { grid-template-columns: 1fr; }
  :root[data-theme] .uc-cash-amount > input.layui-input { height: 58px !important; font-size: 22px !important; }
  :root[data-theme] .uc-cash-method-help { align-items: flex-start; }
}
/* =============================================================================
   充值中心(RECHARGE)完全重构 · uc-topup*
   余额总览 + 充值工作台 + 实时确认单 + 横向成长路径。支付列表仍由共享 recharge.js
   注入 `.button-click.btn-pay > .pay-icon`，不改变 MountFuji 依赖的结构。
   ============================================================================= */
/* 账户余额与会员成长总览 */
:root[data-theme] .uc-topup-overview { position: relative; overflow: hidden; }
:root[data-theme] .uc-topup-overview > .uc-card__body {
  position: relative; display: grid; grid-template-columns: minmax(300px, .8fr) minmax(0, 1.2fr); align-items: center;
  gap: 46px; padding: 26px 30px;
}
:root[data-theme] .uc-topup-overview__glow {
  position: absolute; top: -150px; right: 10%; width: 480px; height: 420px; pointer-events: none;
  background: radial-gradient(circle, rgba(var(--md-info-rgb), .15), rgba(var(--md-info-rgb), .04) 48%, transparent 72%);
}
:root[data-theme] .uc-topup-balance { position: relative; z-index: 1; display: flex; align-items: center; gap: 18px; min-width: 0; }
:root[data-theme] .uc-topup-balance__icon {
  width: 66px; height: 66px; flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center;
  border-radius: 20px; color: var(--md-info); background: linear-gradient(145deg, rgba(var(--md-info-rgb), .17), rgba(var(--md-info-rgb), .05));
  border: 1px solid rgba(var(--md-info-rgb), .18); box-shadow: inset 0 1px 0 rgba(255,255,255,.46);
}
:root[data-theme] .uc-topup-balance__icon .material-icons-outlined { font-size: 31px; }
:root[data-theme] .uc-topup-balance__copy { display: flex; flex-direction: column; min-width: 0; }
:root[data-theme] .uc-topup-balance__eyebrow { display: inline-flex; align-items: center; gap: 6px; font-size: 11.5px; font-weight: 750; color: var(--uc-ink-med); letter-spacing: .04em; }
:root[data-theme] .uc-topup-balance__eyebrow .material-icons-outlined { font-size: 15px; color: var(--md-info); }
:root[data-theme] .uc-topup-balance__label { margin-top: 8px; font-size: 11.5px; color: var(--uc-ink-dis); }
:root[data-theme] .uc-topup-balance__value { margin-top: 3px; font-size: 42px; line-height: 1; font-weight: 850; letter-spacing: -1.3px; color: var(--uc-ink); font-variant-numeric: tabular-nums; }
:root[data-theme] .uc-topup-balance__value small { margin-right: 4px; font-size: 20px; font-weight: 750; color: var(--md-success); vertical-align: 6px; }
:root[data-theme] .uc-topup-balance__hint { margin-top: 8px; font-size: 11.5px; color: var(--uc-ink-dis); }
:root[data-theme] .uc-topup-progress { position: relative; z-index: 1; min-width: 0; padding-left: 36px; border-left: 1px solid var(--glass-border-soft); }
:root[data-theme] .uc-topup-progress__head { display: flex; align-items: flex-end; justify-content: space-between; gap: 20px; }
:root[data-theme] .uc-topup-progress__head > div { display: flex; flex-direction: column; gap: 8px; min-width: 0; }
:root[data-theme] .uc-topup-progress__label { font-size: 11.5px; font-weight: 650; color: var(--uc-ink-dis); }
:root[data-theme] .uc-topup-progress__level { display: inline-flex; align-items: center; gap: 7px; font-size: 15px; font-weight: 800; color: var(--uc-ink); }
:root[data-theme] .uc-topup-progress__level img { width: auto; height: 22px; }
:root[data-theme] .uc-topup-progress__head strong { font-size: 25px; line-height: 1; font-weight: 850; color: var(--uc-ink); font-variant-numeric: tabular-nums; }
:root[data-theme] .uc-topup-progress__head strong small { margin-left: 4px; font-size: 11px; font-weight: 650; color: var(--uc-ink-med); }
:root[data-theme] .uc-topup-progress__track { height: 8px; margin-top: 17px; overflow: hidden; border-radius: 999px; background: rgba(var(--md-info-rgb), .13); box-shadow: inset 0 0 0 1px rgba(var(--md-info-rgb), .06); }
:root[data-theme] .uc-topup-progress__track > span { display: block; min-width: 16px; height: 100%; border-radius: inherit; background: linear-gradient(90deg, rgba(var(--md-info-rgb), .72), var(--md-info)); box-shadow: 0 0 12px rgba(var(--md-info-rgb), .35); }
:root[data-theme] .uc-topup-progress__foot { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-top: 9px; font-size: 11px; color: var(--uc-ink-dis); }
:root[data-theme] .uc-topup-progress__foot span { display: inline-flex; align-items: center; gap: 5px; }
:root[data-theme] .uc-topup-progress__foot .material-icons-outlined { font-size: 15px; color: var(--md-warning); }
:root[data-theme] .uc-topup-progress__foot b { color: var(--uc-ink); font-weight: 750; }

/* 充值工作台与确认单 */
:root[data-theme] .uc-topup-grid { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(310px, .65fr); gap: 20px; align-items: stretch; margin-top: 20px; }
:root[data-theme] .uc-topup-grid > .uc-card { margin-top: 0; height: 100%; display: flex; flex-direction: column; }
:root[data-theme] .uc-topup-grid > .uc-card > .uc-card__body { flex: 1 1 auto; }
:root[data-theme] .uc-topup-cardtitle { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
:root[data-theme] .uc-topup-cardtitle .uc-card__sub { margin-left: 0; }
:root[data-theme] .uc-topup-section + .uc-topup-section { margin-top: 27px; padding-top: 24px; border-top: 1px solid var(--glass-border-soft); }
:root[data-theme] .uc-topup-section__head { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; margin-bottom: 14px; }
:root[data-theme] .uc-topup-section__head > div { display: flex; flex-direction: column; gap: 3px; }
:root[data-theme] .uc-topup-section__head strong { font-size: 14px; color: var(--uc-ink); }
:root[data-theme] .uc-topup-section__head div > span { font-size: 11.5px; color: var(--uc-ink-dis); }
:root[data-theme] .uc-topup-section__step { font-size: 11px; font-weight: 800; letter-spacing: .08em; color: var(--uc-ink-dis); }

/* 动态预设金额 */
:root[data-theme] .uc-topup-presets { display: grid; grid-template-columns: repeat(auto-fit, minmax(100px, 1fr)); gap: 9px; }
:root[data-theme] .uc-topup-preset {
  min-height: 48px; padding: 0 12px; border: 1.5px solid var(--glass-border-soft); border-radius: 13px; cursor: pointer;
  background: var(--uc-field-bg); color: var(--uc-ink); font-size: 15px; line-height: 1; font-weight: 800;
  transition: border-color .16s ease, background-color .16s ease, box-shadow .16s ease, transform .1s ease;
}
:root[data-theme] .uc-topup-preset small { margin-right: 3px; font-size: 10.5px; font-weight: 650; color: var(--uc-ink-dis); }
:root[data-theme] .uc-topup-preset:hover { border-color: rgba(var(--md-primary-rgb), .44); }
:root[data-theme] .uc-topup-preset:active { transform: translateY(1px); }
:root[data-theme] .uc-topup-preset.active { border-color: var(--md-primary); background: rgba(var(--md-primary-rgb), .075); box-shadow: 0 0 0 2px rgba(var(--md-primary-rgb), .12); }
:root[data-theme] .uc-topup-preset.active small { color: var(--uc-ink-med); }

/* 大金额输入 */
:root[data-theme] .uc-topup-amount { position: relative; display: flex; align-items: center; margin-top: 11px; }
:root[data-theme] .uc-topup-amount__cur { position: absolute; z-index: 2; left: 17px; font-size: 21px; font-weight: 750; color: var(--md-info); pointer-events: none; }
:root[data-theme] .uc-topup-amount > input.layui-input {
  width: 100% !important; max-width: none !important; height: 62px !important; box-sizing: border-box;
  padding: 0 92px 0 43px !important; border: 1.5px solid var(--glass-border-soft) !important; border-radius: 15px !important;
  background: var(--uc-field-bg) !important; color: var(--uc-ink) !important; font-size: 25px !important; font-weight: 850 !important;
  line-height: normal !important; box-shadow: none !important; outline: none !important; font-variant-numeric: tabular-nums;
  transition: border-color .16s ease, box-shadow .16s ease !important;
}
:root[data-theme] .uc-topup-amount > input.layui-input:hover { border-color: var(--md-on-surface-med) !important; }
:root[data-theme] .uc-topup-amount > input.layui-input:focus { border-color: var(--uc-focus) !important; box-shadow: 0 0 0 3px rgba(var(--uc-focus-rgb), .14) !important; }
:root[data-theme] .uc-topup-amount__unit { position: absolute; right: 17px; font-size: 11px; font-weight: 650; color: var(--uc-ink-dis); pointer-events: none; }
:root[data-theme] .uc-topup-limit { display: flex; align-items: center; flex-wrap: wrap; gap: 5px; margin-top: 9px; font-size: 11.5px; color: var(--uc-ink-dis); }
:root[data-theme] .uc-topup-limit .material-icons-outlined { font-size: 15px; color: var(--md-info); }
:root[data-theme] .uc-topup-limit b { color: var(--uc-ink-med); font-weight: 750; }
:root[data-theme] .uc-topup-bonuses { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 13px; }
:root[data-theme] .uc-topup-bonus { display: inline-flex; align-items: center; gap: 5px; padding: 7px 11px; border-radius: 999px; background: rgba(var(--md-secondary-rgb), .08); border: 1px solid rgba(var(--md-secondary-rgb), .18); color: var(--uc-ink-med); font-size: 11px; }
:root[data-theme] .uc-topup-bonus .material-icons-outlined { font-size: 14px; color: var(--md-secondary); }
:root[data-theme] .uc-topup-bonus b { color: var(--md-secondary); font-weight: 800; }

/* 支付方式网格：仅取样式，不改变 recharge.js 注入结构 */
:root[data-theme] .uc-card .pay-list.uc-topup-methods { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 9px; margin-top: 0; }
:root[data-theme] .uc-topup-methods .btn-pay {
  position: relative; display: grid; grid-template-columns: 34px minmax(0, 1fr); align-items: center; gap: 9px;
  min-width: 0; min-height: 56px; padding: 9px 34px 9px 10px; box-sizing: border-box; overflow: hidden;
  border: 1.5px solid var(--glass-border-soft); border-radius: 13px; background: var(--uc-field-bg);
  color: var(--uc-ink) !important; font-size: 12px; font-weight: 700; line-height: 1.25 !important; text-decoration: none;
  white-space: nowrap; text-overflow: ellipsis; cursor: pointer;
  transition: border-color .16s ease, background-color .16s ease, box-shadow .16s ease, transform .1s ease;
}
:root[data-theme] .uc-topup-methods .btn-pay .pay-icon { width: 30px; height: 30px; margin: 0; object-fit: contain; border-radius: 9px; background: rgba(255,255,255,.78); }
:root[data-theme] .uc-topup-methods .btn-pay:hover { border-color: rgba(var(--md-primary-rgb), .44); }
:root[data-theme] .uc-topup-methods .btn-pay:active { transform: translateY(1px); }
:root[data-theme] .uc-topup-methods .btn-pay.checked { border-color: var(--md-primary); background: rgba(var(--md-primary-rgb), .075); box-shadow: 0 0 0 2px rgba(var(--md-primary-rgb), .12); }
:root[data-theme] .uc-topup-methods .btn-pay::after {
  content: ""; position: absolute; top: 50%; right: 11px; width: 17px; height: 17px; transform: translateY(-50%);
  border: 1.5px solid var(--md-outline); border-radius: 50%; box-sizing: border-box;
}
:root[data-theme] .uc-topup-methods .btn-pay.checked::after { content: "✓"; border-color: var(--md-primary); background: var(--md-primary); color: var(--md-on-primary); font-size: 10px; font-weight: 850; line-height: 14px; text-align: center; }

/* 提交区 */
:root[data-theme] .uc-topup-submit { display: flex; align-items: center; gap: 13px; margin-top: 24px; }
:root[data-theme] .uc-topup-submit .payButton { min-width: 190px; height: 49px; border-radius: 14px; font-size: 14px; }
:root[data-theme] .uc-topup-submit .payButton .material-icons-outlined { font-size: 18px; }
:root[data-theme] .uc-topup-submit .payButton:disabled { cursor: not-allowed; opacity: .45; filter: none; transform: none; box-shadow: none; }
:root[data-theme] .uc-topup-submit > span { display: inline-flex; align-items: center; gap: 5px; font-size: 10.5px; line-height: 1.45; color: var(--uc-ink-dis); }
:root[data-theme] .uc-topup-submit > span .material-icons-outlined { font-size: 15px; color: var(--md-success); }

/* 实时充值确认单 */
:root[data-theme] .uc-topup-summary > .uc-card__body { display: flex; flex-direction: column; }
:root[data-theme] .uc-topup-summary__hero { position: relative; overflow: hidden; padding: 18px 19px; border-radius: 15px; background: linear-gradient(145deg, rgba(var(--md-info-rgb), .13), rgba(var(--md-info-rgb), .04)); border: 1px solid rgba(var(--md-info-rgb), .15); }
:root[data-theme] .uc-topup-summary__hero::after { content: ""; position: absolute; top: -42px; right: -28px; width: 120px; height: 120px; border-radius: 50%; background: rgba(var(--md-info-rgb), .08); }
:root[data-theme] .uc-topup-summary__hero > span { position: relative; z-index: 1; font-size: 11.5px; font-weight: 650; color: var(--uc-ink-med); }
:root[data-theme] .uc-topup-summary__hero strong { position: relative; z-index: 1; display: flex; align-items: baseline; margin-top: 7px; font-size: 36px; line-height: 1; font-weight: 850; letter-spacing: -1px; color: var(--uc-ink); font-variant-numeric: tabular-nums; }
:root[data-theme] .uc-topup-summary__hero strong small { margin-right: 4px; font-size: 17px; font-weight: 750; color: var(--md-info); }
:root[data-theme] .uc-topup-summary__hero em { position: relative; z-index: 1; display: block; margin-top: 8px; font-size: 10px; font-style: normal; color: var(--uc-ink-dis); }
:root[data-theme] .uc-topup-summary__rows { margin-top: 15px; }
:root[data-theme] .uc-topup-summary__rows > div { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 10px 2px; border-bottom: 1px solid var(--glass-border-soft); }
:root[data-theme] .uc-topup-summary__rows span { font-size: 11.5px; color: var(--uc-ink-dis); }
:root[data-theme] .uc-topup-summary__rows strong { max-width: 58%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; text-align: right; font-size: 12.5px; font-weight: 750; color: var(--uc-ink); }
:root[data-theme] .uc-topup-summary__rows > div:nth-child(2) strong { color: var(--md-secondary); }
:root[data-theme] .uc-topup-summary__status { display: flex; align-items: center; gap: 8px; margin-top: 15px; padding: 10px 12px; border-radius: 11px; font-size: 11.5px; font-weight: 650; line-height: 1.45; }
:root[data-theme] .uc-topup-summary__status .material-icons-outlined { font-size: 17px; flex: 0 0 auto; }
:root[data-theme] .uc-topup-summary__status.is-waiting { color: var(--md-warning); background: rgba(var(--md-warning-rgb), .09); border: 1px solid rgba(var(--md-warning-rgb), .18); }
:root[data-theme] .uc-topup-summary__status.is-ready { color: var(--md-success); background: rgba(var(--md-success-rgb), .09); border: 1px solid rgba(var(--md-success-rgb), .18); }
:root[data-theme] .uc-topup-summary__note { display: flex; align-items: flex-start; gap: 9px; margin-top: 14px; padding: 12px; border-radius: 12px; background: var(--glass-bg-soft); border: 1px solid var(--glass-border-soft); }
:root[data-theme] .uc-topup-summary__note > .material-icons-outlined { font-size: 17px; color: var(--md-info); flex: 0 0 auto; }
:root[data-theme] .uc-topup-summary__note > div { display: flex; flex-direction: column; gap: 4px; }
:root[data-theme] .uc-topup-summary__note strong { font-size: 11.5px; color: var(--uc-ink); }
:root[data-theme] .uc-topup-summary__note div > span { font-size: 10.5px; line-height: 1.5; color: var(--uc-ink-dis); }
:root[data-theme] .uc-topup-summary__safe { display: flex; align-items: flex-start; gap: 7px; margin-top: auto; padding-top: 16px; font-size: 10.5px; line-height: 1.5; color: var(--uc-ink-dis); }
:root[data-theme] .uc-topup-summary__safe .material-icons-outlined { font-size: 15px; color: var(--md-success); flex: 0 0 auto; }

/* 横向等级成长路径 */
:root[data-theme] .uc-topup-growth { margin-top: 20px; }
:root[data-theme] .uc-topup-growth__current { margin-left: auto; padding: 5px 11px; border-radius: 999px; background: rgba(var(--md-primary-rgb), .075); border: 1px solid rgba(var(--md-primary-rgb), .13); color: var(--uc-ink-med); font-size: 10.5px; font-weight: 700; }
:root[data-theme] .uc-topup-growth__swipe { display: none; margin-left: auto; align-items: center; gap: 4px; color: var(--uc-ink-dis); font-size: 10.5px; font-weight: 650; }
:root[data-theme] .uc-topup-growth__swipe .material-icons-outlined { font-size: 15px; }
:root[data-theme] .uc-topup-growth > .uc-card__body { overflow-x: auto; scrollbar-width: none; }
:root[data-theme] .uc-topup-growth > .uc-card__body::-webkit-scrollbar { display: none; }
:root[data-theme] .uc-topup-levels { display: flex; min-width: 100%; width: max-content; padding: 3px 0 1px; }
:root[data-theme] .uc-topup-level { position: relative; flex: 1 0 135px; display: flex; flex-direction: column; align-items: center; text-align: center; color: var(--uc-ink-dis); }
:root[data-theme] .uc-topup-level + .uc-topup-level::before { content: ""; position: absolute; z-index: 0; top: 23px; right: 50%; width: 100%; height: 2px; background: var(--md-divider); }
:root[data-theme] .uc-topup-level.is-unlocked::before { background: rgba(var(--md-success-rgb), .55); }
:root[data-theme] .uc-topup-level__mark { position: relative; z-index: 1; width: 46px; height: 46px; display: inline-flex; align-items: center; justify-content: center; border-radius: 50%; background: var(--md-bg); border: 1.5px solid var(--md-outline); }
:root[data-theme] .uc-topup-level__mark img { width: auto; height: 24px; filter: grayscale(1); opacity: .48; }
:root[data-theme] .uc-topup-level__mark > .material-icons-outlined { position: absolute; right: -3px; bottom: -2px; width: 16px; height: 16px; display: none; align-items: center; justify-content: center; border-radius: 50%; background: var(--md-success); color: var(--md-on-success, #fff); font-size: 10px; font-weight: 850; }
:root[data-theme] .uc-topup-level.is-unlocked .uc-topup-level__mark { border-color: rgba(var(--md-success-rgb), .4); background: rgba(var(--md-success-rgb), .07); }
:root[data-theme] .uc-topup-level.is-unlocked .uc-topup-level__mark img { filter: none; opacity: 1; }
:root[data-theme] .uc-topup-level.is-unlocked .uc-topup-level__mark > .material-icons-outlined { display: inline-flex; }
:root[data-theme] .uc-topup-level.is-current .uc-topup-level__mark { border-color: var(--md-primary); box-shadow: 0 0 0 3px rgba(var(--md-primary-rgb), .12); }
:root[data-theme] .uc-topup-level > strong { margin-top: 10px; font-size: 12px; font-weight: 750; color: var(--uc-ink-med); }
:root[data-theme] .uc-topup-level.is-unlocked > strong { color: var(--uc-ink); }
:root[data-theme] .uc-topup-level > small { margin-top: 3px; font-size: 10px; color: var(--uc-ink-dis); }
:root[data-theme] .uc-topup-level > em { margin-top: 5px; padding: 2px 7px; border-radius: 999px; background: var(--md-primary); color: var(--md-on-primary); font-size: 9px; line-height: 1.35; font-style: normal; font-weight: 800; }

/* 暗色微调 */
:root[data-theme="dark"] .uc-topup-preset,
:root[data-theme="dark"] .uc-topup-amount > input.layui-input,
:root[data-theme="dark"] .uc-topup-methods .btn-pay { background: rgba(255,255,255,.05) !important; }
:root[data-theme="dark"] .uc-topup-methods .btn-pay.checked { background: rgba(var(--md-primary-rgb), .09) !important; }
:root[data-theme="dark"] .uc-topup-methods .btn-pay .pay-icon { background: rgba(255,255,255,.88); }
:root[data-theme="dark"] .uc-topup-summary__note { background: rgba(255,255,255,.035); }

@media (max-width: 900px) {
  :root[data-theme] .uc-topup-overview > .uc-card__body { grid-template-columns: 1fr; gap: 24px; }
  :root[data-theme] .uc-topup-progress { padding: 22px 0 0; border-left: 0; border-top: 1px solid var(--glass-border-soft); }
  :root[data-theme] .uc-topup-grid { grid-template-columns: 1fr; }
  :root[data-theme] .uc-topup-grid > .uc-card { height: auto; }
}
@media (max-width: 620px) {
  :root[data-theme] .uc-topup-overview > .uc-card__body { padding: 20px 17px; }
  :root[data-theme] .uc-topup-balance { gap: 13px; }
  :root[data-theme] .uc-topup-balance__icon { width: 54px; height: 54px; border-radius: 16px; }
  :root[data-theme] .uc-topup-balance__icon .material-icons-outlined { font-size: 26px; }
  :root[data-theme] .uc-topup-balance__value { font-size: 35px; }
  :root[data-theme] .uc-topup-progress__head strong { font-size: 21px; }
  :root[data-theme] .uc-topup-progress__foot { align-items: flex-start; flex-direction: column; gap: 5px; }
  :root[data-theme] .uc-topup-grid .uc-card__head,
  :root[data-theme] .uc-topup-growth .uc-card__head { padding: 15px 17px; }
  :root[data-theme] .uc-topup-grid .uc-card__body { padding: 18px 17px; }
  :root[data-theme] .uc-topup-presets { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  :root[data-theme] .uc-topup-amount > input.layui-input { height: 58px !important; font-size: 22px !important; }
  :root[data-theme] .uc-card .pay-list.uc-topup-methods { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  :root[data-theme] .uc-topup-submit { align-items: stretch; flex-direction: column; }
  :root[data-theme] .uc-topup-submit .payButton { width: 100%; }
  :root[data-theme] .uc-topup-growth__current { display: none; }
  :root[data-theme] .uc-topup-growth__swipe { display: inline-flex; }
  :root[data-theme] .uc-topup-growth > .uc-card__body { padding: 18px 0; }
  :root[data-theme] .uc-topup-level { flex-basis: 122px; }
}

/* 头像编辑 + 验证码行 + 微信二维码 */
:root[data-theme] .uc-avatar-edit { width: 96px; height: 96px; border-radius: 50%; object-fit: cover; cursor: pointer; border: 3px solid rgba(255, 255, 255, 0.7); box-shadow: 0 4px 14px rgba(var(--md-primary-rgb), 0.28); transition: filter .15s; }
:root[data-theme] .uc-avatar-edit:hover { filter: brightness(1.04); }
/* =============================================================================
   ⑫ markdown 编辑器(EditorV2,店铺公告)玻璃化:透出玻璃卡,边框对齐 notch 字段
   (md-components 给的是 --md-surface 实底;此处前台覆写,后台不受影响)
   ============================================================================= */
:root[data-theme] .uc-card .ev2-editor {
  background: transparent; border-color: var(--md-outline);
  transition: border-color .15s ease;
}
:root[data-theme] .uc-card .ev2-editor:focus-within { border-color: var(--uc-focus); }
:root[data-theme] .uc-card .ev2-bar { background: rgba(var(--md-primary-rgb), .05); }
:root[data-theme] .uc-card .ev2-preview { background: transparent; }
:root[data-theme] .uc-card .ev2-cm .CodeMirror,
:root[data-theme] .uc-card .ev2-cm .CodeMirror-gutters { background: transparent; }
/* 预览里的实底元素 → tonal 半透,不挡玻璃 */
:root[data-theme] .uc-card .ev2-preview code { background: rgba(var(--md-primary-rgb), .08); }
:root[data-theme] .uc-card .ev2-preview pre { background: rgba(var(--md-primary-rgb), .06); }
:root[data-theme] .uc-card .ev2-preview pre code { background: transparent; }
:root[data-theme] .uc-card .ev2-preview th { background: rgba(var(--md-primary-rgb), .06); }
/* HTML 源码模式(ACE)亮色:透明透出玻璃(仅 .uc-card;弹窗内 ACE 默认浅底也 OK) */
:root[data-theme="light"] .uc-card .ev2-editor .ace_editor,
:root[data-theme="light"] .uc-card .ev2-editor .ace_scroller,
:root[data-theme="light"] .uc-card .ev2-editor .ace_gutter { background: transparent; }
/* HTML 源码模式(ACE)暗色:ACE 自带浅底深字 → 背景改成与 markdown(CodeMirror)同款 --md-surface(#1a1e24)、
   文字翻成亮色可读。**不限 .uc-card** → 覆盖弹窗内的 editorv2(如 商品介绍 的 HTML 源码模式,原来是灰底)。 */
:root[data-theme="dark"] .ev2-editor .ace_editor,
:root[data-theme="dark"] .ev2-editor .ace_scroller,
:root[data-theme="dark"] .ev2-editor .ace_gutter { background: var(--md-surface) !important; }
:root[data-theme="dark"] .ev2-editor .ace_editor,
:root[data-theme="dark"] .ev2-editor .ace_text-layer { color: var(--md-on-surface); }
:root[data-theme="dark"] .ev2-editor .ace_gutter { color: var(--md-on-surface-dis) !important; }
:root[data-theme="dark"] .ev2-editor .ace_cursor { border-left-color: var(--md-on-surface) !important; }
:root[data-theme="dark"] .ev2-editor .ace_gutter-active-line,
:root[data-theme="dark"] .ev2-editor .ace_marker-layer .ace_active-line { background: rgba(255, 255, 255, .04) !important; }
/* 暗色:CodeMirror 默认语法色按白底设计(列表深蓝等) → 重映射为暗色可读的语义色 */
:root[data-theme="dark"] .uc-card .ev2-cm .cm-variable-2,
:root[data-theme="dark"] .uc-card .ev2-cm .cm-variable-3,
:root[data-theme="dark"] .uc-card .ev2-cm .cm-keyword { color: var(--md-info); }
:root[data-theme="dark"] .uc-card .ev2-cm .cm-string,
:root[data-theme="dark"] .uc-card .ev2-cm .cm-tag { color: var(--md-success); }
:root[data-theme="dark"] .uc-card .ev2-cm .cm-attribute,
:root[data-theme="dark"] .uc-card .ev2-cm .cm-number,
:root[data-theme="dark"] .uc-card .ev2-cm .cm-atom { color: var(--md-warning); }
:root[data-theme="dark"] .uc-card .ev2-cm .cm-bracket,
:root[data-theme="dark"] .uc-card .ev2-cm .cm-hr { color: var(--uc-ink-med); }
:root[data-theme="dark"] .uc-card .ev2-cm .cm-error { background: transparent; color: var(--md-error); }

/* 卡密上传示例/提示块 .uc-cardtip 已移到共享 md-components.css(前后台通用) */

/* 验证码行 → MUI 端部装饰(TextField + InputAdornment):按钮内嵌在输入框右侧
   (选择器带 .form-body 前缀:必须比 §⑧ 的 border:none !important 特异性更高) */
:root[data-theme] .uc-captcha-row { display: flex; align-items: center; position: relative; max-width: 460px; }
:root[data-theme] .uc-card .form-body .uc-captcha-row .layui-input {
  flex: 1 1 auto; width: 100%; height: 48px !important; border: 1px solid var(--md-outline) !important;
  border-radius: var(--md-radius) !important; background: transparent !important;
  padding: 0 132px 0 14px !important; color: var(--uc-ink) !important; box-shadow: none !important;
}
:root[data-theme] .uc-card .form-body .uc-captcha-row .layui-input:hover { border-color: var(--md-on-surface-med) !important; }
:root[data-theme] .uc-card .form-body .uc-captcha-row .layui-input:focus { border-color: var(--uc-focus) !important; box-shadow: inset 0 0 0 1px var(--uc-focus) !important; outline: none; }
:root[data-theme] .uc-captcha-row .uc-cta.send-captcha {
  position: absolute; right: 6px; top: 50%; transform: translateY(-50%);
  height: 36px; padding: 0 12px; border: none !important; background: transparent; box-shadow: none;
  color: var(--md-primary); font-size: 13px; font-weight: 600; border-radius: 10px;
}
:root[data-theme] .uc-captcha-row .uc-cta.send-captcha:hover { background: rgba(var(--md-primary-rgb), .08); color: var(--md-primary); filter: none; box-shadow: none; }
:root[data-theme] .uc-captcha-row .uc-cta.send-captcha .material-icons-outlined { font-size: 16px; }
:root[data-theme] .wx_qrcode { width: 100px; height: 100px; border-radius: 12px; cursor: pointer; background-size: cover; background-position: center; border: 1px solid var(--md-divider); }
/* 收款码画布按 150px 生成、上传后的图片带 width:100px 内联样式：都缩放进 100px 容器，免得溢出盖住下一块 */
.wx_qrcode canvas, .wx_qrcode img { display: block; width: 100% !important; height: 100% !important; border-radius: inherit; object-fit: contain; }
:root[data-theme] .wx_qrcode_temp { font-size: 34px !important; color: var(--md-primary) !important; cursor: pointer; }

/* =============================================================================
   ⑥·① 底部版权(macOS 全宽白卡页脚)
   ============================================================================= */
:root[data-theme] .mz-footer {
  margin-top: 24px;
  background: var(--uc-nav-bg);
  border-top: 1px solid var(--uc-nav-border);
  box-shadow: var(--uc-nav-shadow);
}
:root[data-theme] .mz-footer__inner {
  max-width: 1280px; margin: 0 auto;
  padding: 26px 20px 30px;
  display: flex; flex-wrap: wrap; align-items: center; gap: 14px 28px;
}
:root[data-theme] .mz-footer__brand {
  display: flex; align-items: center; gap: 10px; text-decoration: none;
}
:root[data-theme] .mz-footer__brand img { width: 26px; height: 26px; border-radius: 8px; object-fit: cover; }
:root[data-theme] .mz-footer__brand span { font-size: 15px; font-weight: 700; color: var(--uc-ink); }
:root[data-theme] .mz-footer__links {
  display: flex; flex-wrap: wrap; gap: 4px 18px; margin: 0; padding: 0; list-style: none;
}
:root[data-theme] .mz-footer__links a {
  font-size: 13px; color: var(--uc-ink-med); text-decoration: none; transition: color .15s ease;
}
:root[data-theme] .mz-footer__links a:hover { color: var(--uc-primary-deep); }
:root[data-theme] .mz-footer__copy {
  margin-left: auto; display: flex; align-items: center; gap: 14px; flex-wrap: wrap;
  font-size: 12.5px; color: var(--uc-ink-dis);
}
:root[data-theme] .mz-footer__icp { color: var(--uc-ink-dis); text-decoration: none; transition: color .15s ease; }
:root[data-theme] .mz-footer__icp:hover { color: var(--uc-primary-deep); }

/* =============================================================================
   ⑦ 响应式
   ============================================================================= */
@media (max-width: 992px) {
  :root[data-theme] .uc-nav__list,
  :root[data-theme] .uc-nav__right .uc-nav__link { display: none; }
  :root[data-theme] .uc-burger { display: inline-flex; }
  :root[data-theme] .uc-nav { height: 56px; padding: 0 14px; }
  :root[data-theme] .uc-nav__right { margin-left: auto; }
  :root[data-theme] .uc-nav__right { gap: 2px; }

  /* 移动抽屉:一级+二级全部平铺进玻璃抽屉 */
  :root[data-theme] .uc-drawer {
    position: fixed; top: 0; left: 0; bottom: 0; z-index: 1000; width: 82%; max-width: 320px;
    padding: 20px 16px; overflow-y: auto;
    background: var(--uc-nav-bg);
    border-right: 1px solid var(--uc-nav-border);
    transform: translateX(-104%); transition: transform .28s cubic-bezier(.4,0,.2,1);
  }
  :root[data-theme] body.uc-drawer-open .uc-drawer { transform: translateX(0); }
  :root[data-theme] .uc-drawer__shade {
    position: fixed; inset: 0; z-index: 999; background: rgba(20, 22, 30, 0.32);
    opacity: 0; visibility: hidden; transition: opacity .28s ease, visibility .28s;
  }
  :root[data-theme] body.uc-drawer-open .uc-drawer__shade { opacity: 1; visibility: visible; }
  :root[data-theme] .uc-drawer__group { margin-bottom: 12px; }
  :root[data-theme] .uc-drawer__gtitle { font-size: 11.5px; font-weight: 700; letter-spacing: .5px; color: var(--uc-ink-dis); text-transform: uppercase; padding: 8px 12px 4px; }
  :root[data-theme] .uc-drawer__link {
    display: flex; align-items: center; gap: 12px; padding: 11px 12px; border-radius: 12px;
    font-size: 14.5px; font-weight: 500; color: var(--uc-ink); text-decoration: none;
  }
  :root[data-theme] .uc-drawer__link .material-icons-outlined { font-size: 21px; color: var(--uc-ink-dis); }
  :root[data-theme] .uc-drawer__link.active { background: rgba(var(--md-primary-rgb), 0.14); color: var(--uc-primary-deep); }
  :root[data-theme] .uc-drawer__link.active .material-icons-outlined { color: var(--uc-primary-deep); }

  :root[data-theme] .uc-main { padding: 18px 14px 50px; }
  :root[data-theme] .uc-stats { grid-template-columns: repeat(2, 1fr); gap: 12px; }
  :root[data-theme] .uc-info__row { grid-template-columns: 100px 1fr; gap: 8px; }
}
@media (min-width: 993px) { :root[data-theme] .uc-drawer, :root[data-theme] .uc-drawer__shade { display: none; } }
@media (max-width: 520px) {
  :root[data-theme] .uc-stats { grid-template-columns: 1fr 1fr; }
  :root[data-theme] .uc-brand__name { display: none; }
  :root[data-theme] .uc-user__lv { display: none; }
  :root[data-theme] .mz-footer__inner { flex-direction: column; align-items: flex-start; gap: 14px; }
  :root[data-theme] .mz-footer__copy { margin-left: 0; }
}

/* =============================================================================
   ⑨ 暗色收口 + 搜索标签 + 主题切换按钮
   ============================================================================= */
/* 暗色:壁纸压暗一档保证阅读;白色玻璃填充→深色;深色分割线→浅色 */
:root[data-theme="dark"] .bg-content.uc-bg {
  background: linear-gradient(180deg, rgba(8,10,14,0.42) 0%, rgba(8,10,14,0.26) 40%, rgba(8,10,14,0.42) 100%) !important;
}
:root[data-theme="dark"] .uc-user__btn,
:root[data-theme="dark"] .uc-card .pay-list .button-click { background: rgba(255,255,255,0.06) !important; }
:root[data-theme="dark"] .uc-toolbar .layui-btn { background: rgba(255,255,255,0.06) !important; }
:root[data-theme="dark"] .uc-info__row { border-bottom-color: rgba(255,255,255,0.08); }
:root[data-theme="dark"] .uc-submenu__sep { background: rgba(255,255,255,0.10); }
:root[data-theme="dark"] .uc-subtab { border-bottom-color: rgba(255,255,255,0.10); }
:root[data-theme="dark"] .uc-card__head { border-bottom-color: rgba(255,255,255,0.08); }
:root[data-theme="dark"] .uc-avatar-edit { border-color: rgba(255,255,255,0.18); }

/* #3 搜索工具条浮动标签:去掉白色 notch 背景(玻璃上很突兀) */
:root[data-theme] .table-search .mui-sf__label { background: transparent !important; }

/* 顶栏主题切换按钮 */
:root[data-theme] .uc-theme-btn {
  display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px;
  border: none; border-radius: 50%; cursor: pointer; background: transparent; color: var(--uc-ink-med);
  transition: background-color .15s, color .15s; flex: 0 0 auto;
}
:root[data-theme] .uc-theme-btn:hover { background: rgba(var(--md-primary-rgb), 0.10); color: var(--uc-ink); }
:root[data-theme] .uc-theme-btn .material-icons-outlined { font-size: 21px; }

/* =============================================================================
   ⑩ 输入框 MUI 浮动标签(标签从框内浮到框上方,无白色 notch → 适配玻璃 + 呼应 #3)
   仅命中 .form-body 的直接子 .layui-input(排除域名行/验证码行/表格/编辑器等复杂字段)
   ============================================================================= */
:root[data-theme] .uc-card .uc-field { position: relative; margin-top: 18px; max-width: 460px; }
/* fieldset 边框以 .uc-field 为准 → 输入必须撑满字段(压掉模板里的内联 max-width,如充值金额 200px),
   否则缺口边框比输入框宽一大截 */
:root[data-theme] .uc-card .uc-field > .form-body > .layui-input,
:root[data-theme] .uc-card .uc-field > .form-body > select { width: 100% !important; max-width: none !important; }
:root[data-theme] .uc-card .uc-field > .form-body { position: relative; z-index: 1; }
/* 边框 = fieldset(glass.js 注入);legend 撑出真缺口 */
:root[data-theme] .uc-card .uc-field .uc-outline {
  position: absolute; inset: -6px 0 0 0; margin: 0; padding: 0 8px; pointer-events: none; z-index: 0;
  border: 1px solid var(--md-outline); border-radius: var(--md-radius); min-width: 0%; text-align: left;
  transition: border-color .15s ease;
}
:root[data-theme] .uc-card .uc-field .uc-outline legend {
  float: none; width: auto; max-width: 0.01px; height: 11px; padding: 0; margin: 0; display: block;
  font-size: 12px; line-height: 11px; visibility: hidden; white-space: nowrap; transition: max-width .1s ease;
}
:root[data-theme] .uc-card .uc-field .uc-outline legend > span { display: inline-block; opacity: 0; padding: 0 5px; font-size: 12px; }
/* 打开缺口:聚焦 / 有值 / select 恒开 */
:root[data-theme] .uc-card .uc-field:has(> .form-body > .layui-input:focus) .uc-outline legend,
:root[data-theme] .uc-card .uc-field:has(> .form-body > .layui-input:not(:placeholder-shown)) .uc-outline legend,
:root[data-theme] .uc-card .uc-field:has(> .form-body > select) .uc-outline legend { max-width: 100%; }
/* hover / focus 边框(focus 加粗到 2px,颜色主色) */
:root[data-theme] .uc-card .uc-field:has(> .form-body > .layui-input:hover:not(:focus)) .uc-outline,
:root[data-theme] .uc-card .uc-field:has(> .form-body > select:hover:not(:focus)) .uc-outline { border-color: var(--md-on-surface-med); }
:root[data-theme] .uc-card .uc-field:has(> .form-body > .layui-input:focus) .uc-outline,
:root[data-theme] .uc-card .uc-field:has(> .form-body > select:focus) .uc-outline { border-color: var(--uc-focus); border-width: 2px; }

/* 浮动标签:无背景,落进真缺口 */
:root[data-theme] .uc-card .uc-field > .form-header {
  position: absolute; left: 14px; top: 24px; transform: translateY(-50%);
  margin: 0 !important; padding: 0; z-index: 2; max-width: calc(100% - 28px);
  font-size: 15px; font-weight: 400; color: var(--md-on-surface-med); white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
  pointer-events: none; background: transparent;
  transition: top .12s ease, font-size .12s ease, color .12s ease;
}
:root[data-theme] .uc-card .uc-field:has(> .form-body > .layui-input:focus) > .form-header,
:root[data-theme] .uc-card .uc-field:has(> .form-body > .layui-input:not(:placeholder-shown)) > .form-header,
:root[data-theme] .uc-card .uc-field:has(> .form-body > select) > .form-header {
  /* left 14px 让无 padding 的标签文字对齐 legend 缺口内缩区(缺口 left 9 + span padding 5),左右空隙才对称 */
  top: -6px; left: 14px; font-size: 12px; font-weight: 500; color: var(--md-on-surface-med);
}
:root[data-theme] .uc-card .uc-field:has(> .form-body > .layui-input:focus) > .form-header,
:root[data-theme] .uc-card .uc-field:has(> .form-body > select:focus) > .form-header { color: var(--uc-focus); }
/* 占位符默认隐藏,聚焦显示 */
:root[data-theme] .uc-card .uc-field > .form-body > .layui-input::placeholder { color: transparent; }
:root[data-theme] .uc-card .uc-field:has(> .form-body > .layui-input:focus) > .form-body > .layui-input::placeholder { color: var(--md-on-surface-dis); }

/* =============================================================================
   ⑪ 列表页(共享 bootstrap-table)深度收口:搜索区 / 状态段 / 空态 / 分页 / 滚动
   ============================================================================= */
/* --- 查询行:左对齐、去阴影带、修 100%+padding 溢出 --- */
:root[data-theme] .uc-card .table-search {
  display: flex !important; flex-wrap: wrap; align-items: center; gap: 14px 12px;
  justify-content: flex-start !important;
  width: 100% !important; box-sizing: border-box !important;
  margin: 6px 0 4px !important; padding: 0 !important;
  box-shadow: none !important; border: none !important;
}
:root[data-theme] .uc-card .table-search .layui-input-inline { margin: 0 !important; float: none; }

/* --- 搜索字段 = 真缺口 notch(44px 玻璃 MUI small;fieldset 由 glass.js 注入) --- */
:root[data-theme] .uc-card .table-search .mui-sf { width: 220px; }
:root[data-theme] .uc-card .table-search .uc-sfield > .layui-input,
:root[data-theme] .uc-card .table-search .uc-sfield .layui-form-select .layui-input {
  height: 44px; line-height: normal; border: none !important; background: transparent !important;
  box-shadow: none !important; padding: 0 14px; font-size: 13.5px; color: var(--uc-ink);
  /* line-height:normal(非 44px):让浏览器对单行 input 做原生垂直居中(同后台 md-components 的做法),
     强设 line-height=height 会让字形在大行盒里按字体 metrics 偏移、且各浏览器不一致 */
}
:root[data-theme] .uc-card .table-search .uc-sfield > .layui-input,
:root[data-theme] .uc-card .table-search .uc-sfield .layui-form-select { position: relative; z-index: 1; }
:root[data-theme] .uc-card .table-search .uc-sfield .uc-outline {
  position: absolute; inset: 0; margin: 0; padding: 0 8px; pointer-events: none; z-index: 0;
  border: 1px solid var(--md-outline); border-radius: var(--md-radius); min-width: 0%; text-align: left;
  transition: border-color .15s ease;
}
:root[data-theme] .uc-card .table-search .uc-sfield .uc-outline legend {
  float: none; width: auto; max-width: 0.01px; height: 11px; padding: 0; margin: 0; display: block;
  font-size: 12px; line-height: 11px; visibility: hidden; white-space: nowrap; transition: max-width .1s ease;
}
:root[data-theme] .uc-card .table-search .uc-sfield .uc-outline legend > span { display: inline-block; opacity: 0; padding: 0 5px; font-size: 12px; }
/* 打开缺口:聚焦 / 有值 / select 恒开 */
:root[data-theme] .uc-card .table-search .uc-sfield:focus-within .uc-outline legend,
:root[data-theme] .uc-card .table-search .uc-sfield:has(> .layui-input:not(:placeholder-shown)) .uc-outline legend,
:root[data-theme] .uc-card .table-search .uc-sfield.mui-sf--select .uc-outline legend { max-width: 100%; }
:root[data-theme] .uc-card .table-search .uc-sfield:hover:not(:focus-within) .uc-outline { border-color: var(--md-on-surface-med); }
:root[data-theme] .uc-card .table-search .uc-sfield:focus-within .uc-outline { border-color: var(--uc-focus); border-width: 2px; }
/* 标签:默认居中在框内;浮起时落进真缺口(压掉 md-components 的 scale 版本) */
:root[data-theme] .uc-card .table-search .uc-sfield > .mui-sf__label {
  left: 14px; top: 50%; transform: translateY(-50%); line-height: 1;
  font-size: 13.5px; background: transparent !important; color: var(--md-on-surface-med);
  transition: top .12s ease, font-size .12s ease, color .12s ease;
}
:root[data-theme] .uc-card .table-search .uc-sfield:focus-within > .mui-sf__label,
:root[data-theme] .uc-card .table-search .uc-sfield:has(input:not(:placeholder-shown)) > .mui-sf__label,
:root[data-theme] .uc-card .table-search .uc-sfield.mui-sf--select > .mui-sf__label {
  /* left 对齐 legend 缺口(fieldset padding 8px + border 1px = 9px),否则标签比缺口右移 4px、左右空隙不一致 */
  top: 0; left: 9px; transform: translateY(-50%); font-size: 12px; font-weight: 500; max-width: calc(100% - 22px);
}
:root[data-theme] .uc-card .table-search .uc-sfield:focus-within > .mui-sf__label { color: var(--uc-focus); }
/* 文本字段占位符与标签重叠 → 默认透明、聚焦才显 */
:root[data-theme] .uc-card .table-search .uc-sfield > .layui-input::placeholder { color: transparent; }
:root[data-theme] .uc-card .table-search .uc-sfield:focus-within > .layui-input::placeholder { color: var(--md-on-surface-dis); }

/* --- 非 notch 搜索输入(日期区间等):普通 MUI outlined,尺寸对齐 --- */
:root[data-theme] .uc-card .table-search .layui-input-inline:not(.mui-sf) > .layui-input {
  height: 44px; border: 1px solid var(--md-outline) !important; border-radius: var(--md-radius);
  background: transparent !important; box-shadow: none !important; padding: 0 14px;
  font-size: 13.5px; color: var(--uc-ink);
}
:root[data-theme] .uc-card .table-search .layui-input-inline:not(.mui-sf) > .layui-input:hover { border-color: var(--md-on-surface-med) !important; }
:root[data-theme] .uc-card .table-search .layui-input-inline:not(.mui-sf) > .layui-input:focus { border-color: var(--uc-focus) !important; box-shadow: inset 0 0 0 1px var(--uc-focus) !important; }
:root[data-theme] .uc-card .table-search .layui-input-inline:not(.mui-sf) > .layui-input::placeholder { color: var(--uc-ink-dis); }
:root[data-theme] .uc-card .table-search .layui-input-inline.text-center { width: 14px !important; line-height: 44px; color: var(--uc-ink-dis); }

/* --- 查询按钮:扁平 MUI Contained(实心主色、无阴影 disableElevation),与输入字段等高(44)齐平、视觉不显大 --- */
:root[data-theme] .uc-card .table-search .layui-btn.query-button {
  display: inline-flex; align-items: center; justify-content: center; gap: 5px;
  height: 38px !important; line-height: 1; padding: 0 14px !important; margin: 0 !important;
  border-radius: var(--md-radius) !important; font-size: 12.5px !important; font-weight: 600; letter-spacing: .02em;
  background: var(--md-primary) !important; border: 1px solid var(--md-primary) !important; color: var(--md-on-primary) !important;
  box-shadow: none !important; transition: filter .15s, background-color .15s;
}
:root[data-theme] .uc-card .table-search .layui-btn.query-button i {
  font-size: 12.5px; color: var(--md-on-primary); --fa-primary-color: currentColor; --fa-secondary-color: currentColor; --fa-secondary-opacity: .55;
}
:root[data-theme] .uc-card .table-search .layui-btn.query-button:hover { filter: brightness(1.1); }
:root[data-theme] .uc-card .table-search .layui-btn.query-button:active { filter: brightness(.94); }
/* 按钮比字段矮 → 默认居中会让 bottom 高出 3px;改成底部对齐,按钮 bottom 与输入框 bottom 齐平 */
:root[data-theme] .uc-card .table-search .layui-input-inline:has(> .query-button) { align-self: flex-end; }

/* --- 状态段(全部/已上架/…):MUI 玻璃胶囊 chips,active 实心主色 --- */
:root[data-theme] .uc-card .bootstrap-table .table-switch-state {
  display: flex; flex-wrap: wrap; gap: 8px; margin: 14px 0 6px !important;
}
/* state 按钮↔表格间距收紧:.table-switch-state 下距(16→6) + .bs-bars 下距(component.css 的 10→4)叠加太宽 */
:root[data-theme] .uc-card .bootstrap-table .fixed-table-toolbar .bs-bars { margin-bottom: 4px !important; }
:root[data-theme] .uc-card .bootstrap-table .table-switch-state button {
  height: 32px; padding: 0 16px !important; display: inline-flex; align-items: center;
  border-radius: 999px !important; font-size: 12.5px !important; font-weight: 600 !important;
  background: var(--glass-bg-soft) !important; color: var(--uc-ink-med) !important;
  border: 1px solid var(--md-outline) !important; box-shadow: none !important;
  transition: background-color .15s, color .15s, border-color .15s;
}
:root[data-theme] .uc-card .bootstrap-table .table-switch-state button:hover {
  background: rgba(var(--md-primary-rgb), .10) !important; color: var(--uc-ink) !important; border-color: var(--md-on-surface-med) !important;
}
:root[data-theme] .uc-card .bootstrap-table .table-switch-state button.active,
:root[data-theme] .uc-card .bootstrap-table .table-switch-state button.active:focus {
  background: var(--md-primary) !important; color: var(--md-on-primary) !important; border-color: transparent !important;
  box-shadow: 0 3px 1px -2px rgba(0,0,0,.2), 0 2px 2px 0 rgba(0,0,0,.14), 0 1px 5px 0 rgba(0,0,0,.12) !important;
}

/* --- 空态(formatNoMatches 由 glass.js 输出 .uc-empty) --- */
:root[data-theme] .uc-card .bootstrap-table .no-records-found td { padding: 44px 0 !important; border: none; }
:root[data-theme] .uc-empty { display: flex; flex-direction: column; align-items: center; gap: 10px; color: var(--uc-ink-dis); }
:root[data-theme] .uc-empty .material-icons-outlined {
  font-size: 28px; width: 60px; height: 60px; display: flex; align-items: center; justify-content: center;
  border-radius: 50%; background: rgba(var(--md-primary-rgb), .07);
}
:root[data-theme] .uc-empty p { margin: 0; font-size: 13px; letter-spacing: .04em; }

/* --- 分页条:信息文字 + 每页条数按钮玻璃化 --- */
:root[data-theme] .uc-card .fixed-table-pagination { padding-top: 12px; }
:root[data-theme] .uc-card .fixed-table-pagination .pagination-info { font-size: 12.5px; color: var(--uc-ink-med); }
:root[data-theme] .uc-card .fixed-table-pagination .page-list .btn {
  height: 30px; padding: 0 12px; display: inline-flex; align-items: center; gap: 4px;
  border: 1px solid var(--md-outline) !important; border-radius: 999px !important;
  background: transparent !important; color: var(--uc-ink-med) !important;
  font-size: 12.5px !important; box-shadow: none !important;
}
:root[data-theme] .uc-card .fixed-table-pagination .page-list .btn:hover { background: rgba(var(--md-primary-rgb), .08) !important; color: var(--uc-ink) !important; }
/* 旧前台皮把每页条数选择器藏了 → 恢复;前台没有 bootstrap CSS,下拉菜单皮在这补 */
:root[data-theme] .uc-card .fixed-table-pagination .page-list { display: inline-flex !important; align-items: center; gap: 6px; font-size: 12.5px; color: var(--uc-ink-med); position: relative; }
:root[data-theme] .uc-card .page-list .btn-group { position: relative; display: inline-flex; }
:root[data-theme] .uc-card .page-list .btn::after {
  content: ""; width: 0; height: 0; margin-left: 3px;
  border-left: 4px solid transparent; border-right: 4px solid transparent; border-top: 4px solid currentColor; opacity: .7;
}
:root[data-theme] .uc-card .page-list .dropdown-menu {
  display: none; position: absolute; z-index: 30; min-width: 76px; padding: 6px; margin: 0;
  list-style: none; background: var(--glass-bg-strong);
  -webkit-backdrop-filter: var(--glass-filter); backdrop-filter: var(--glass-filter);
  border: 1px solid var(--glass-border); border-radius: 12px; box-shadow: var(--glass-shadow-lg);
}
:root[data-theme] .uc-card .page-list .dropdown-menu.show { display: block; }
:root[data-theme] .uc-card .page-list .dropdown-menu .dropdown-item {
  display: block; padding: 7px 12px; border-radius: 8px; font-size: 12.5px;
  color: var(--uc-ink); text-decoration: none; cursor: pointer; text-align: center; transition: background-color .12s;
}
:root[data-theme] .uc-card .page-list .dropdown-menu .dropdown-item:hover { background: rgba(var(--md-primary-rgb), .08); }
:root[data-theme] .uc-card .page-list .dropdown-menu .dropdown-item.active { background: rgba(var(--md-primary-rgb), .12); font-weight: 700; }

/* --- 宽表横向滚动:卡片内细滚动条 --- */
:root[data-theme] .uc-card .fixed-table-body { overflow-x: auto; }
:root[data-theme] .uc-card .fixed-table-body::-webkit-scrollbar { height: 8px; width: 8px; }
:root[data-theme] .uc-card .fixed-table-body::-webkit-scrollbar-thumb { border-radius: 999px; background: rgba(var(--md-primary-rgb), .22); }
:root[data-theme] .uc-card .fixed-table-body::-webkit-scrollbar-thumb:hover { background: rgba(var(--md-primary-rgb), .38); }
:root[data-theme] .uc-card .fixed-table-body::-webkit-scrollbar-track { background: transparent; }

/* --- 加载遮罩:透明玻璃化(默认是白底) --- */
:root[data-theme] .uc-card .fixed-table-loading { background: transparent !important; color: var(--uc-ink-med); }

/* =============================================================================
   ⑭ 主页重构 + 推广中心:等级进度 / 走势图 / 列表 / 推广 hero / SKU 弹层
   ============================================================================= */
/* 欢迎横幅扩展:左文右徽 */
:root[data-theme] .uc-welcome__main { flex: 1 1 auto; min-width: 0; }
:root[data-theme] .uc-welcome__side { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
:root[data-theme] .uc-grade {
  display: inline-flex; align-items: center; gap: 6px; height: 30px; padding: 0 13px;
  border-radius: 999px; font-size: 12.5px; font-weight: 700; color: var(--uc-ink);
  background: var(--glass-bg-soft); border: 1px solid var(--md-outline);
}
:root[data-theme] .uc-grade img { height: 18px; }
:root[data-theme] .uc-grade .material-icons-outlined { font-size: 16px; }
:root[data-theme] .uc-grade--biz { background: var(--md-primary); color: var(--md-on-primary); border-color: transparent; }

/* 等级升级进度条 */
:root[data-theme] .uc-progress { margin-top: 16px; }
:root[data-theme] .uc-progress__meta { display: flex; justify-content: space-between; align-items: baseline; font-size: 12.5px; color: var(--uc-ink-med); margin-bottom: 7px; }
:root[data-theme] .uc-progress__meta b { color: var(--uc-ink); }
:root[data-theme] .uc-progress__pct { font-weight: 700; color: var(--uc-ink); }
:root[data-theme] .uc-progress__track { height: 8px; border-radius: 999px; background: rgba(var(--md-primary-rgb), 0.10); overflow: hidden; }
:root[data-theme] .uc-progress__fill {
  height: 100%; border-radius: 999px; background: var(--md-primary);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.25); transition: width .5s ease;
}

/* 磁贴扩展:可点击 / 告警 / 单位 */
:root[data-theme] a.uc-stat { text-decoration: none; cursor: pointer; }
:root[data-theme] a.uc-stat:hover .uc-stat__value { color: var(--uc-ink); }
:root[data-theme] .uc-stat--alert { --stat-rgb: 217, 72, 66; }
:root[data-theme] .uc-stat--alert .uc-stat__value { color: var(--md-error); }
:root[data-theme] .uc-stat__unit { font-size: 12px; font-weight: 500; color: var(--uc-ink-dis); margin-left: 4px; }

/* 快捷入口药丸(挂在分节标题右侧等处) */
:root[data-theme] .uc-quick {
  display: inline-flex; align-items: center; justify-content: center; gap: 6px;
  height: 32px; padding: 0 14px; border-radius: 999px;
  font-size: 12.5px; font-weight: 700; text-decoration: none;
  background: var(--md-primary); color: var(--md-on-primary);
  box-shadow: 0 3px 1px -2px rgba(0,0,0,.2), 0 2px 2px 0 rgba(0,0,0,.14), 0 1px 5px 0 rgba(0,0,0,.12);
  transition: filter .15s;
}
:root[data-theme] .uc-quick:hover { filter: brightness(1.08); color: var(--md-on-primary); }
:root[data-theme] .uc-quick--ghost { background: transparent; color: var(--md-primary); border: 1px solid rgba(var(--md-primary-rgb), .5); box-shadow: none; }
:root[data-theme] .uc-quick--ghost:hover { color: var(--md-primary); background: rgba(var(--md-primary-rgb), .08); filter: none; }
:root[data-theme] .uc-quick .material-icons-outlined { font-size: 16px; }

/* 经营次级指标条:一条玻璃横带 4 项(取代第二排磁贴,降低磁贴海的同质感) */
:root[data-theme] .uc-strip {
  display: flex; flex-wrap: wrap; margin: 0 0 18px;
  background: var(--glass-bg-soft); border: 1px solid var(--glass-border-soft);
  border-radius: var(--glass-radius-sm);
  -webkit-backdrop-filter: saturate(160%) blur(10px); backdrop-filter: saturate(160%) blur(10px);
}
:root[data-theme] .uc-strip__item {
  flex: 1 1 0; min-width: 170px; display: flex; align-items: center; gap: 9px;
  padding: 15px 20px; text-decoration: none; position: relative; transition: background-color .15s;
}
:root[data-theme] .uc-strip__item + .uc-strip__item::before {
  content: ""; position: absolute; left: 0; top: 24%; bottom: 24%; width: 1px; background: rgba(31, 38, 60, 0.10);
}
:root[data-theme] .uc-strip__item:hover { background: rgba(var(--md-primary-rgb), 0.05); }
:root[data-theme] .uc-strip__item .material-icons-outlined { font-size: 19px; color: var(--uc-ink-med); }
:root[data-theme] .uc-strip__k { font-size: 12.5px; color: var(--uc-ink-med); white-space: nowrap; }
:root[data-theme] .uc-strip__v { margin-left: auto; font-size: 17px; font-weight: 800; color: var(--uc-ink); white-space: nowrap; }
:root[data-theme] .uc-strip__v .uc-stat__unit { font-size: 11.5px; }
:root[data-theme] .uc-strip__item--alert .uc-strip__v,
:root[data-theme] .uc-strip__item--alert .material-icons-outlined { color: var(--md-error); }

/* 双列卡片行(近7日收入 + 最近卖出):等高、顶对齐 */
:root[data-theme] .uc-cols { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; align-items: stretch; margin-bottom: 18px; }
:root[data-theme] .uc-cols .uc-card { margin-bottom: 0; height: 100%; display: flex; flex-direction: column; }
/* 干掉相邻卡片的 margin-top(基础规则 .uc-card + .uc-card 会把第二张卡顶下去造成错位) */
:root[data-theme] .uc-cols .uc-card + .uc-card { margin-top: 0; }
:root[data-theme] .uc-cols .uc-card .uc-card__body { flex: 1 1 auto; display: flex; flex-direction: column; }
:root[data-theme] .uc-cols .uc-spark { flex: 1 1 auto; height: auto; min-height: 170px; }
:root[data-theme] .uc-cols .uc-blank { margin: auto 0; }
@media (max-width: 860px) { :root[data-theme] .uc-cols { grid-template-columns: 1fr; } }

/* 近 7 日收入:纯 CSS 柱状迷你图 */
:root[data-theme] .uc-spark { display: flex; align-items: stretch; gap: 10px; height: 180px; padding: 6px 2px 0; }
:root[data-theme] .uc-spark__col { flex: 1 1 0; display: flex; flex-direction: column; justify-content: flex-end; align-items: center; gap: 8px; min-width: 0; }
:root[data-theme] .uc-spark__bar {
  width: 100%; max-width: 38px; min-height: 4px; border-radius: 8px 8px 4px 4px;
  background: linear-gradient(180deg, rgba(var(--md-primary-rgb), .85), rgba(var(--md-primary-rgb), .45));
  transition: height .5s ease;
}
:root[data-theme] .uc-spark__col:hover .uc-spark__bar { background: var(--md-primary); }
:root[data-theme] .uc-spark__label { font-size: 11px; color: var(--uc-ink-dis); white-space: nowrap; }

/* 通用玻璃列表(最近卖出/购买/推广订单) */
:root[data-theme] .uc-list { display: flex; flex-direction: column; }
:root[data-theme] .uc-list__row {
  display: flex; align-items: center; gap: 12px; padding: 11px 2px;
  border-bottom: 1px solid rgba(31, 38, 60, 0.07);
}
:root[data-theme] .uc-list__row:last-child { border-bottom: none; }
:root[data-theme] .uc-list__icon { width: 36px; height: 36px; border-radius: 10px; object-fit: cover; flex: 0 0 auto; background: rgba(var(--md-primary-rgb), .06); }
:root[data-theme] .uc-list__main { flex: 1 1 auto; min-width: 0; }
:root[data-theme] .uc-list__name { font-size: 13.5px; font-weight: 600; color: var(--uc-ink); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
:root[data-theme] .uc-list__time { font-size: 11.5px; color: var(--uc-ink-dis); margin-top: 2px; }
:root[data-theme] .uc-list__end { text-align: right; flex: 0 0 auto; }
:root[data-theme] .uc-list__amount { font-size: 13.5px; font-weight: 700; color: var(--uc-ink); }
:root[data-theme] .uc-list__gain { font-size: 11.5px; font-weight: 700; color: var(--md-success); margin-top: 2px; }
:root[data-theme] .uc-list__state { font-size: 11.5px; color: var(--uc-ink-dis); margin-top: 2px; }
:root[data-theme] .uc-list__state.ok { color: var(--md-success); }
/* 最近购买(主页)= 与购买记录同款表格,但作为预览:隐藏分页条(卡头已有「全部记录」入口),
   `setPagination(5,[5])` 仍只取最近 5 条 */
:root[data-theme] .uc-recent-buys .fixed-table-pagination { display: none !important; }

/* 空态(卡片内轻量版) */
:root[data-theme] .uc-blank { display: flex; flex-direction: column; align-items: center; gap: 8px; padding: 34px 0; color: var(--uc-ink-dis); }
:root[data-theme] .uc-blank .material-icons-outlined {
  font-size: 24px; width: 52px; height: 52px; display: flex; align-items: center; justify-content: center;
  border-radius: 50%; background: rgba(var(--md-primary-rgb), .07);
}
:root[data-theme] .uc-blank p { margin: 0; font-size: 12.5px; }

/* 卡头右侧"查看全部"链接 */
:root[data-theme] .uc-card__head .uc-more {
  margin-left: auto; display: inline-flex; align-items: center; gap: 2px;
  font-size: 12.5px; font-weight: 600; color: var(--uc-ink-med); text-decoration: none; transition: color .15s;
}
:root[data-theme] .uc-card__head .uc-more:hover { color: var(--md-primary); }
:root[data-theme] .uc-card__head .uc-more .material-icons-outlined { font-size: 16px; }
:root[data-theme] .uc-card__head .uc-hint { margin-left: auto; font-weight: 400; }

/* 推广 hero:链接 + 复制 + 二维码 + 规则 */
:root[data-theme] .uc-promo { display: flex; gap: 26px; align-items: stretch; }
:root[data-theme] .uc-promo__main { flex: 1 1 auto; min-width: 0; }
:root[data-theme] .uc-promo__title { display: flex; align-items: center; gap: 8px; font-size: 16px; font-weight: 700; color: var(--uc-ink); margin-bottom: 14px; }
:root[data-theme] .uc-promo__title .material-icons-outlined { font-size: 20px; }
:root[data-theme] .uc-promo__link { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; }
:root[data-theme] .uc-promo__url {
  flex: 1 1 320px; min-width: 0; height: 46px; display: flex; align-items: center; padding: 0 16px;
  border: 1px dashed rgba(var(--md-primary-rgb), .45); border-radius: var(--md-radius);
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 13.5px; color: var(--uc-ink);
  background: rgba(var(--md-primary-rgb), .04); white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
:root[data-theme] .uc-promo__copy { height: 46px; }
:root[data-theme] .uc-promo__rule { display: flex; gap: 9px; margin-top: 15px; font-size: 12.5px; line-height: 1.9; color: var(--uc-ink-med); }
:root[data-theme] .uc-promo__rule b { color: var(--uc-ink); }
:root[data-theme] .uc-promo__rule .material-icons-outlined { font-size: 17px; color: var(--md-warning); margin-top: 3px; }
:root[data-theme] .uc-promo__qr {
  flex: 0 0 auto; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px;
  padding: 14px 18px; border-radius: 14px; background: rgba(255, 255, 255, 0.78); border: 1px solid var(--glass-border);
}
:root[data-theme] .uc-promo__qr canvas, :root[data-theme] .uc-promo__qr img { display: block; border-radius: 6px; }
:root[data-theme] .uc-promo__qrhint { font-size: 11.5px; color: #58606e; }
@media (max-width: 760px) { :root[data-theme] .uc-promo { flex-direction: column; } :root[data-theme] .uc-promo__qr { align-self: center; } }

/* 暗色微调 */
:root[data-theme="dark"] .uc-list__row { border-bottom-color: rgba(255,255,255,0.07); }
:root[data-theme="dark"] .uc-promo__qr { background: rgba(255, 255, 255, 0.92); border-color: rgba(255,255,255,0.2); }
:root[data-theme="dark"] .uc-strip__item + .uc-strip__item::before { background: rgba(255,255,255,0.08); }
:root[data-theme="dark"] .uc-minibtn--reset { color: #7ed8ab; background: rgba(46, 160, 110, 0.20); }

/* --- 弹窗表单(component.popup)聚焦也统一淡蓝(md-components 默认给主色) --- */
:root[data-theme] .layui-form-pane .layui-input:focus,
:root[data-theme] .layui-form-pane .layui-textarea:focus {
  border-color: var(--uc-focus) !important;
  box-shadow: inset 0 0 0 1px var(--uc-focus) !important;
}
:root[data-theme] .layui-form-pane .layui-form-item.mui-focused .layui-form-label { color: var(--uc-focus) !important; }

/* 购买记录:已改回普通列表表格(purchase.record.js 去掉了 enableCardView),宝贝信息改为
   操作列「查看卡密」→ layer.open `.md-secret` 弹窗(复制+下载,样式在共享 md-components.css)。
   前台已无 cardView / .card-view / .secret 内联元素,故原订单卡样式整段删除,表格走共享 §⑪ 列表皮肤。 */

/* --- 纯列表页(bootstrap-table 直接是卡片 body 首元素:购买记录/账单/兑现记录/我的下级)---
   这类页卡头下方无工具栏按钮(不像分类/商品页有「新建/添加」按钮填充),默认 22px body 上内距
   会让搜索组件离卡头显远 → 用 :has() 精准命中并收到 10px,让搜索紧贴卡头;有工具栏按钮的页不受影响 */
:root[data-theme] .uc-card .uc-card__body:has(> .bootstrap-table:first-child) { padding-top: 10px; }

/* --- 单元格不换行(数据表标准),宽表交给横向滚动;th 永不换行 --- */
:root[data-theme] .uc-card .bootstrap-table .table thead th,
:root[data-theme] .uc-card .bootstrap-table .table tbody td { white-space: nowrap; }

/* --- 行内"加卡"快捷链接 → 迷你 tonal 芯片(原是裸绿链接) --- */
:root[data-theme] .uc-card .bootstrap-table .add-card {
  display: inline-flex; align-items: center; margin-left: 4px; padding: 1px 9px;
  border-radius: 999px; font-size: 12px; font-weight: 600;
  background: rgba(var(--md-success-rgb, 46, 125, 50), .12);
  color: var(--md-success, #2e7d32) !important; text-decoration: none;
  transition: background-color .15s;
}
:root[data-theme] .uc-card .bootstrap-table .add-card:hover { background: rgba(var(--md-success-rgb, 46, 125, 50), .22); }

/* --- 搜索区 layui select 下拉面板 → 玻璃浮层 --- */
:root[data-theme] .uc-card .layui-form-select dl {
  background: var(--glass-bg-strong); -webkit-backdrop-filter: var(--glass-filter); backdrop-filter: var(--glass-filter);
  border: 1px solid var(--glass-border); border-radius: 12px; box-shadow: var(--glass-shadow-lg);
  padding: 6px; margin-top: 4px; max-height: 300px;
}
:root[data-theme] .uc-card .layui-form-select dl dd,
:root[data-theme] .uc-card .layui-form-select dl dt {
  border-radius: 8px; line-height: 34px; padding: 0 12px; font-size: 13px; color: var(--uc-ink);
  background: transparent; transition: background-color .12s;
}
:root[data-theme] .uc-card .layui-form-select dl dd:hover { background: rgba(var(--md-primary-rgb), .08); }
:root[data-theme] .uc-card .layui-form-select dl dd.layui-this {
  background: rgba(var(--md-primary-rgb), .10) !important; color: var(--uc-ink) !important; font-weight: 600;
}
:root[data-theme] .uc-card .layui-form-select dl dd.layui-select-tips { color: var(--uc-ink-dis); }

/* --- 行内就地编辑输入(排序列 .metadata-text):静默如文本,hover 显框,focus 主色 --- */
:root[data-theme] .uc-card .bootstrap-table .metadata-text {
  width: 72px; padding: 5px 8px; border: 1px solid transparent !important; border-radius: 8px !important;
  background: transparent; color: var(--uc-ink); font-size: 13px;
  transition: border-color .15s, background-color .15s;
}
:root[data-theme] .uc-card .bootstrap-table .metadata-text:hover { border-color: var(--md-outline) !important; background: var(--uc-field-bg); }
:root[data-theme] .uc-card .bootstrap-table .metadata-text:focus {
  border-color: var(--uc-focus) !important; background: var(--uc-field-bg);
  outline: none; box-shadow: inset 0 0 0 1px var(--uc-focus);
}

/* --- format.money/format.color 的内联色 → 主题感知语义色(暗色下裸 green/red 不可读) --- */
:root[data-theme] .uc-card .bootstrap-table span[style*="color: green"],
:root[data-theme] .uc-card .bootstrap-table span[style*="color:green"] { color: var(--md-success) !important; }
:root[data-theme] .uc-card .bootstrap-table span[style*="color: red"],
:root[data-theme] .uc-card .bootstrap-table span[style*="color:red"] { color: var(--md-error) !important; }
:root[data-theme] .uc-card .bootstrap-table span[style*="color: blue"],
:root[data-theme] .uc-card .bootstrap-table span[style*="color:blue"] { color: var(--md-info) !important; }
:root[data-theme] .uc-card .bootstrap-table span[style*="color: orange"],
:root[data-theme] .uc-card .bootstrap-table span[style*="color:orange"] { color: var(--md-warning) !important; }
:root[data-theme] .uc-card .bootstrap-table span[style*="#447cf3"] { color: var(--md-info) !important; } /* child.js 硬币列 */

/* --- 表头对齐:bootstrap-table 默认表头 th 居中、数据 td 左对齐 → 视觉错位;
   表头统一改左对齐与数据一致(无 !important,显式 align 列的内联样式仍优先) --- */
:root[data-theme] .uc-card .bootstrap-table thead th,
:root[data-theme] .uc-card .bootstrap-table thead th .th-inner { text-align: left; }

/* --- 数据表密度:13 列宽表适配 1130 容器(md-components 默认 16/24 太肥) --- */
:root[data-theme] .uc-card .bootstrap-table thead th .th-inner { padding: 12px 12px; }
:root[data-theme] .uc-card .bootstrap-table tbody td { padding: 10px 12px; }
:root[data-theme] .uc-card .bootstrap-table thead th:first-child .th-inner,
:root[data-theme] .uc-card .bootstrap-table tbody td:first-child { padding-left: 18px; }
:root[data-theme] .uc-card .bootstrap-table thead th:last-child .th-inner,
:root[data-theme] .uc-card .bootstrap-table tbody td:last-child { padding-right: 18px; }

/* =============================================================================
   ⑮ 我的工单 — 低噪音支持中心 / 对话时间线
   ============================================================================= */

/* 顶栏入口与未读角标 */
:root[data-theme] .uc-nav__link.active {
  color: var(--uc-primary-deep);
  background: rgba(var(--md-primary-rgb), .10);
}
:root[data-theme] .uc-ticket-nav-link { position: relative; }
:root[data-theme] .uc-ticket-nav-badge {
  display: inline-flex; align-items: center; justify-content: center;
  min-width: 17px; height: 17px; padding: 0 5px; margin-left: 1px;
  border-radius: 999px; background: var(--md-error); color: #fff;
  font-size: 10px; line-height: 1; font-weight: 800; letter-spacing: -.2px;
  box-shadow: 0 2px 7px rgba(211, 47, 47, .28);
  transform: scale(1); opacity: 1;
  transition: transform .18s ease, opacity .18s ease;
}
:root[data-theme] .uc-ticket-nav-badge.is-empty { transform: scale(.55); opacity: 0; width: 0; min-width: 0; padding: 0; margin: 0; overflow: hidden; }
:root[data-theme] .uc-drawer__link .uc-ticket-nav-badge { margin-left: auto; }

/* 页面基座 */
:root[data-theme] .uc-ticket-page { --ticket-line: color-mix(in srgb, var(--uc-ink) 10%, transparent); }
:root[data-theme] .uc-ticket-page h1 { margin: 0; color: var(--uc-ink); font-size: clamp(26px, 3vw, 38px); line-height: 1.12; font-weight: 760; letter-spacing: -.8px; }
:root[data-theme] .uc-ticket-eyebrow {
  display: inline-flex; align-items: center; gap: 6px; margin-bottom: 11px;
  color: var(--uc-ink-med); font-size: 12px; line-height: 1; font-weight: 700; letter-spacing: .7px;
}
:root[data-theme] .uc-ticket-eyebrow .material-icons-outlined { font-size: 17px; color: var(--uc-focus); }
:root[data-theme] .uc-ticket-hero {
  position: relative; display: flex; align-items: center; justify-content: space-between; gap: 30px;
  min-height: 190px; padding: 34px 38px; margin-bottom: 16px; overflow: hidden;
  border: 1px solid var(--glass-border); border-radius: 24px;
  background:
    radial-gradient(circle at 84% 22%, rgba(var(--uc-focus-rgb), .13), transparent 28%),
    radial-gradient(circle at 3% 100%, rgba(var(--md-primary-rgb), .07), transparent 36%),
    var(--glass-bg-strong);
  -webkit-backdrop-filter: var(--glass-filter-strong); backdrop-filter: var(--glass-filter-strong);
  box-shadow: var(--glass-hi), var(--glass-shadow);
}
:root[data-theme] .uc-ticket-hero::after {
  content: ""; position: absolute; width: 210px; height: 210px; right: 6%; top: -145px;
  border: 1px solid rgba(var(--uc-focus-rgb), .16); border-radius: 50%;
  box-shadow: 0 0 0 28px rgba(var(--uc-focus-rgb), .025), 0 0 0 62px rgba(var(--uc-focus-rgb), .018);
  pointer-events: none;
}
:root[data-theme] .uc-ticket-hero__copy { position: relative; z-index: 1; max-width: 610px; }
:root[data-theme] .uc-ticket-hero__copy p { margin: 12px 0 0; color: var(--uc-ink-med); font-size: 14px; line-height: 1.8; }
:root[data-theme] .uc-ticket-primary {
  position: relative; z-index: 1; display: flex; align-items: center; gap: 12px; flex: 0 0 auto;
  box-sizing: border-box; min-width: 240px; max-width: 100%; min-height: 68px; padding: 12px 14px 12px 17px;
  border: 1px solid rgba(var(--md-primary-rgb), .85); border-radius: 18px;
  background: var(--md-primary); color: var(--md-on-primary); text-decoration: none;
  box-shadow: 0 10px 24px rgba(var(--md-primary-rgb), .19), inset 0 1px rgba(255,255,255,.12);
  transition: transform .2s ease, box-shadow .2s ease, filter .2s ease;
}
:root[data-theme] .uc-ticket-primary:hover { color: var(--md-on-primary); transform: translateY(-2px); filter: brightness(1.05); box-shadow: 0 14px 30px rgba(var(--md-primary-rgb), .24), inset 0 1px rgba(255,255,255,.14); }
:root[data-theme] .uc-ticket-primary > .material-icons-outlined:first-child { font-size: 27px; }
:root[data-theme] .uc-ticket-primary > span:nth-child(2) { display: flex; flex-direction: column; gap: 3px; flex: 1; }
:root[data-theme] .uc-ticket-primary strong { font-size: 14px; font-weight: 750; }
:root[data-theme] .uc-ticket-primary small { color: inherit; opacity: .7; font-size: 11px; }
:root[data-theme] .uc-ticket-primary__arrow { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 11px; background: rgba(255,255,255,.12); font-size: 18px !important; }

/* 五格状态概览 */
:root[data-theme] .uc-ticket-stats { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 10px; margin-bottom: 16px; }
:root[data-theme] .uc-ticket-stat {
  display: flex; align-items: center; gap: 11px; min-width: 0; padding: 15px 16px;
  border: 1px solid var(--glass-border); border-radius: 16px; cursor: pointer;
  background: var(--glass-bg); color: var(--uc-ink); text-align: left;
  -webkit-backdrop-filter: var(--glass-filter); backdrop-filter: var(--glass-filter);
  box-shadow: var(--glass-hi), 0 5px 18px rgba(31,45,70,.055);
  transition: border-color .18s ease, background .18s ease, transform .18s ease, box-shadow .18s ease;
}
:root[data-theme] .uc-ticket-stat:hover { transform: translateY(-1px); border-color: rgba(var(--uc-focus-rgb), .28); box-shadow: var(--glass-hi), 0 9px 22px rgba(31,45,70,.085); }
:root[data-theme] .uc-ticket-stat.is-active { border-color: rgba(var(--uc-focus-rgb), .42); background: color-mix(in srgb, var(--glass-bg-strong) 88%, rgba(var(--uc-focus-rgb), .12)); box-shadow: inset 0 0 0 1px rgba(var(--uc-focus-rgb), .12), var(--glass-hi), var(--glass-shadow); }
:root[data-theme] .uc-ticket-stat__icon { display: grid; place-items: center; flex: 0 0 auto; width: 38px; height: 38px; border-radius: 12px; color: var(--uc-ink-med); background: rgba(var(--md-primary-rgb), .07); }
:root[data-theme] .uc-ticket-stat__icon .material-icons-outlined { font-size: 20px; }
:root[data-theme] .uc-ticket-stat__icon--waiting { color: #b7791f; background: rgba(183,121,31,.11); }
:root[data-theme] .uc-ticket-stat__icon--reply { color: var(--uc-focus); background: rgba(var(--uc-focus-rgb), .11); }
:root[data-theme] .uc-ticket-stat__icon--done { color: var(--md-success); background: rgba(var(--md-success-rgb), .10); }
:root[data-theme] .uc-ticket-stat__icon--closed { color: var(--uc-ink-dis); background: rgba(128,128,128,.09); }
:root[data-theme] .uc-ticket-stat__copy { display: flex; flex-direction: column; min-width: 0; gap: 2px; }
:root[data-theme] .uc-ticket-stat__copy small { color: var(--uc-ink-med); font-size: 11.5px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
:root[data-theme] .uc-ticket-stat__copy strong { color: var(--uc-ink); font-size: 21px; line-height: 1.1; font-weight: 750; font-variant-numeric: tabular-nums; }

/* 工单列表工具栏 */
:root[data-theme] .uc-ticket-board { overflow: visible; }
:root[data-theme] .uc-ticket-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 20px 22px; border-bottom: 1px solid var(--md-divider); }
:root[data-theme] .uc-ticket-toolbar__title { display: flex; align-items: center; gap: 11px; min-width: 0; }
:root[data-theme] .uc-ticket-toolbar__title > .material-icons-outlined { display: grid; place-items: center; width: 38px; height: 38px; flex: 0 0 auto; border-radius: 12px; color: var(--uc-focus); background: rgba(var(--uc-focus-rgb), .1); font-size: 20px; }
:root[data-theme] .uc-ticket-toolbar__title > div { display: flex; flex-direction: column; min-width: 0; gap: 2px; }
:root[data-theme] .uc-ticket-toolbar__title strong { color: var(--uc-ink); font-size: 15px; font-weight: 700; }
:root[data-theme] .uc-ticket-toolbar__title small { color: var(--uc-ink-dis); font-size: 11.5px; }
:root[data-theme] .uc-ticket-tools { display: flex; align-items: center; gap: 9px; }
:root[data-theme] .uc-ticket-search { position: relative; display: flex; align-items: center; width: 240px; height: 42px; }
:root[data-theme] .uc-ticket-search > .material-icons-outlined { position: absolute; left: 12px; z-index: 1; color: var(--uc-ink-dis); font-size: 19px; pointer-events: none; }
:root[data-theme] .uc-ticket-search input { box-sizing: border-box; width: 100%; height: 42px; padding: 0 36px 0 39px; border: 1px solid var(--md-outline); border-radius: 13px; outline: none; background: var(--uc-field-bg); color: var(--uc-ink); font-size: 13px; transition: border-color .16s ease, box-shadow .16s ease, background .16s ease; }
:root[data-theme] .uc-ticket-search input::placeholder { color: var(--uc-ink-dis); }
:root[data-theme] .uc-ticket-search input:focus { border-color: var(--uc-focus); box-shadow: inset 0 0 0 1px var(--uc-focus), 0 0 0 3px rgba(var(--uc-focus-rgb), .08); background: var(--glass-bg-strong); }
:root[data-theme] .uc-ticket-search__clear { position: absolute; right: 6px; display: none; align-items: center; justify-content: center; width: 30px; height: 30px; border: none; border-radius: 9px; background: transparent; color: var(--uc-ink-dis); cursor: pointer; }
:root[data-theme] .uc-ticket-search.has-value .uc-ticket-search__clear { display: inline-flex; }
:root[data-theme] .uc-ticket-search__clear:hover { background: rgba(var(--md-primary-rgb), .07); color: var(--uc-ink); }
:root[data-theme] .uc-ticket-search__clear .material-icons-outlined { font-size: 17px; }
:root[data-theme] .uc-ticket-select { position: relative; display: flex; align-items: center; width: 138px; height: 42px; }
:root[data-theme] .uc-ticket-select select { box-sizing: border-box; appearance: none; -webkit-appearance: none; width: 100%; height: 42px; padding: 14px 34px 0 12px; border: 1px solid var(--md-outline); border-radius: 13px; outline: none; background: var(--uc-field-bg); color: var(--uc-ink); font-size: 12.5px; cursor: pointer; }
:root[data-theme] .uc-ticket-select select:focus { border-color: var(--uc-focus); box-shadow: inset 0 0 0 1px var(--uc-focus); }
:root[data-theme] .uc-ticket-select__label { position: absolute; top: 5px; left: 12px; z-index: 1; color: var(--uc-ink-dis); font-size: 9px; line-height: 1; pointer-events: none; }
:root[data-theme] .uc-ticket-select > .material-icons-outlined { position: absolute; right: 9px; color: var(--uc-ink-dis); font-size: 19px; pointer-events: none; }

/* 列表卡行 */
:root[data-theme] .uc-ticket-list { display: flex; flex-direction: column; padding: 4px 10px 10px; }
:root[data-theme] .uc-ticket-row { position: relative; display: flex; align-items: center; gap: 15px; min-width: 0; margin-top: 6px; padding: 18px 18px 18px 20px; border: 1px solid transparent; border-radius: 16px; color: var(--uc-ink); text-decoration: none; overflow: hidden; transition: background .17s ease, border-color .17s ease, transform .17s ease, box-shadow .17s ease; }
:root[data-theme] .uc-ticket-row + .uc-ticket-row { border-top-color: var(--ticket-line); border-radius: 0; margin-top: 0; }
:root[data-theme] .uc-ticket-row:hover { z-index: 1; color: var(--uc-ink); border-color: rgba(var(--uc-focus-rgb), .18); border-radius: 16px; background: rgba(var(--uc-focus-rgb), .045); transform: translateY(-1px); box-shadow: 0 8px 22px rgba(31,45,70,.055); }
:root[data-theme] .uc-ticket-row.has-unread { background: linear-gradient(90deg, rgba(var(--uc-focus-rgb), .055), transparent 62%); }
:root[data-theme] .uc-ticket-row__rail { position: absolute; left: 0; top: 22%; bottom: 22%; width: 3px; border-radius: 0 4px 4px 0; background: transparent; }
:root[data-theme] .uc-ticket-row.has-unread .uc-ticket-row__rail { background: var(--uc-focus); }
:root[data-theme] .uc-ticket-row__icon { display: grid; place-items: center; flex: 0 0 auto; width: 46px; height: 46px; border-radius: 14px; color: var(--uc-focus); background: rgba(var(--uc-focus-rgb), .09); border: 1px solid rgba(var(--uc-focus-rgb), .12); }
:root[data-theme] .uc-ticket-row__icon.is-aftersale { color: #94713a; background: rgba(148,113,58,.10); border-color: rgba(148,113,58,.13); }
:root[data-theme] .uc-ticket-row__icon .material-icons-outlined { font-size: 23px; }
:root[data-theme] .uc-ticket-row__main { display: flex; flex-direction: column; flex: 1 1 auto; min-width: 0; }
:root[data-theme] .uc-ticket-row__top { display: flex; align-items: center; flex-wrap: wrap; gap: 6px; min-width: 0; }
:root[data-theme] .uc-ticket-row__number { color: var(--uc-ink-dis); font-size: 10.5px; font-weight: 700; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; letter-spacing: .15px; }
:root[data-theme] .uc-ticket-row__title { display: block; margin-top: 7px; color: var(--uc-ink); font-size: 14.5px; line-height: 1.45; font-weight: 700; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
:root[data-theme] .uc-ticket-row__excerpt { display: block; margin-top: 4px; color: var(--uc-ink-med); font-size: 12.5px; line-height: 1.5; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
:root[data-theme] .uc-ticket-row__excerpt b { color: var(--uc-ink-dis); font-weight: 600; }
:root[data-theme] .uc-ticket-row__bottom { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: 9px; min-width: 0; }
:root[data-theme] .uc-ticket-row__context, :root[data-theme] .uc-ticket-row__time { display: inline-flex; align-items: center; gap: 5px; min-width: 0; color: var(--uc-ink-dis); font-size: 11px; line-height: 1.3; }
:root[data-theme] .uc-ticket-row__context { max-width: 65%; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
:root[data-theme] .uc-ticket-row__context .material-icons-outlined, :root[data-theme] .uc-ticket-row__time .material-icons-outlined { flex: 0 0 auto; font-size: 14px; }
:root[data-theme] .uc-ticket-row__context em { flex: 0 0 auto; margin-left: 3px; padding: 1px 5px; border-radius: 5px; background: rgba(183,121,31,.1); color: #a66b16; font-size: 9px; font-style: normal; font-weight: 700; }
:root[data-theme] .uc-ticket-row__time { flex: 0 0 auto; }
:root[data-theme] .uc-ticket-row__go { display: grid; place-items: center; flex: 0 0 auto; width: 32px; height: 32px; border-radius: 10px; color: var(--uc-ink-dis); transition: transform .17s ease, background .17s ease, color .17s ease; }
:root[data-theme] .uc-ticket-row:hover .uc-ticket-row__go { transform: translateX(2px); color: var(--uc-focus); background: rgba(var(--uc-focus-rgb), .1); }
:root[data-theme] .uc-ticket-row__go .material-icons-outlined { font-size: 21px; }
:root[data-theme] .uc-ticket-row__unread { margin-left: auto; padding: 3px 8px; border-radius: 999px; color: var(--uc-focus); background: rgba(var(--uc-focus-rgb), .1); font-size: 10px; font-weight: 750; }

/* 通用状态小胶囊 */
:root[data-theme] .uc-ticket-pill { display: inline-flex; align-items: center; gap: 3px; padding: 3px 8px; border: 1px solid var(--md-divider); border-radius: 999px; color: var(--uc-ink-med); background: rgba(var(--md-primary-rgb), .025); font-size: 9.5px; line-height: 1.25; font-weight: 650; white-space: nowrap; }
:root[data-theme] .uc-ticket-pill .material-icons-outlined { font-size: 11px; }
:root[data-theme] .uc-ticket-pill > i { width: 5px; height: 5px; border-radius: 50%; background: currentColor; }
:root[data-theme] .uc-ticket-pill.is-presale { color: var(--uc-focus); border-color: rgba(var(--uc-focus-rgb), .17); background: rgba(var(--uc-focus-rgb), .055); }
:root[data-theme] .uc-ticket-pill.is-aftersale { color: #94713a; border-color: rgba(148,113,58,.18); background: rgba(148,113,58,.06); }
:root[data-theme] .uc-ticket-pill.is-low { color: var(--uc-ink-dis); }
:root[data-theme] .uc-ticket-pill.is-medium, :root[data-theme] .uc-ticket-pill.is-waiting { color: #a66b16; border-color: rgba(183,121,31,.18); background: rgba(183,121,31,.06); }
:root[data-theme] .uc-ticket-pill.is-high { color: var(--md-error); border-color: rgba(var(--md-error-rgb), .18); background: rgba(var(--md-error-rgb), .055); }
:root[data-theme] .uc-ticket-pill.is-reply { color: var(--uc-focus); border-color: rgba(var(--uc-focus-rgb), .18); background: rgba(var(--uc-focus-rgb), .06); }
:root[data-theme] .uc-ticket-pill.is-resolved { color: var(--md-success); border-color: rgba(var(--md-success-rgb), .18); background: rgba(var(--md-success-rgb), .06); }
:root[data-theme] .uc-ticket-pill.is-closed { color: var(--uc-ink-dis); background: rgba(128,128,128,.045); }

/* 加载、空态、分页 */
:root[data-theme] .uc-ticket-loading { padding: 8px 20px 20px; }
:root[data-theme] .uc-ticket-skeleton { position: relative; height: 112px; margin-top: 8px; border-radius: 16px; overflow: hidden; background: rgba(var(--md-primary-rgb), .035); }
:root[data-theme] .uc-ticket-skeleton::after { content: ""; position: absolute; inset: 0; transform: translateX(-100%); background: linear-gradient(90deg, transparent, rgba(255,255,255,.36), transparent); animation: uc-ticket-shimmer 1.35s infinite; }
:root[data-theme="dark"] .uc-ticket-skeleton::after { background: linear-gradient(90deg, transparent, rgba(255,255,255,.055), transparent); }
@keyframes uc-ticket-shimmer { to { transform: translateX(100%); } }
:root[data-theme] .uc-ticket-empty, :root[data-theme] .uc-ticket-error { display: flex; align-items: center; justify-content: center; flex-direction: column; min-height: 330px; padding: 42px 24px; text-align: center; }
:root[data-theme] .uc-ticket-empty[hidden], :root[data-theme] .uc-ticket-error[hidden] { display: none; }
:root[data-theme] .uc-ticket-empty__art { display: grid; place-items: center; width: 78px; height: 78px; margin-bottom: 18px; border-radius: 25px; background: rgba(var(--uc-focus-rgb), .09); color: var(--uc-focus); transform: rotate(-4deg); }
:root[data-theme] .uc-ticket-empty__art .material-icons-outlined { font-size: 36px; transform: rotate(4deg); }
:root[data-theme] .uc-ticket-empty strong, :root[data-theme] .uc-ticket-error strong { color: var(--uc-ink); font-size: 17px; }
:root[data-theme] .uc-ticket-empty p, :root[data-theme] .uc-ticket-error p, :root[data-theme] .uc-ticket-error small { max-width: 410px; margin: 8px auto 18px; color: var(--uc-ink-med); font-size: 13px; line-height: 1.7; }
:root[data-theme] .uc-ticket-empty a, :root[data-theme] .uc-ticket-error button { display: inline-flex; align-items: center; gap: 6px; height: 38px; padding: 0 15px; border: 1px solid var(--md-outline); border-radius: 11px; background: transparent; color: var(--uc-ink); font-size: 12.5px; font-weight: 650; text-decoration: none; cursor: pointer; }
:root[data-theme] .uc-ticket-empty a:hover, :root[data-theme] .uc-ticket-error button:hover { border-color: var(--uc-focus); color: var(--uc-focus); background: rgba(var(--uc-focus-rgb), .06); }
:root[data-theme] .uc-ticket-empty a .material-icons-outlined { font-size: 17px; }
:root[data-theme] .uc-ticket-error > .material-icons-outlined { margin-bottom: 13px; color: var(--uc-ink-dis); font-size: 42px; }
:root[data-theme] .uc-ticket-error > div { display: flex; flex-direction: column; }
:root[data-theme] .uc-ticket-error small { margin: 3px 0 14px; }
:root[data-theme] .uc-ticket-pagination { display: flex; align-items: center; justify-content: center; gap: 18px; padding: 16px 20px 20px; border-top: 1px solid var(--md-divider); }
:root[data-theme] .uc-ticket-pagination[hidden] { display: none; }
:root[data-theme] .uc-ticket-pagination button { display: inline-flex; align-items: center; gap: 4px; height: 34px; padding: 0 11px; border: 1px solid var(--md-outline); border-radius: 10px; background: transparent; color: var(--uc-ink-med); font-size: 11.5px; cursor: pointer; }
:root[data-theme] .uc-ticket-pagination button:hover:not(:disabled) { border-color: var(--uc-focus); color: var(--uc-focus); background: rgba(var(--uc-focus-rgb), .06); }
:root[data-theme] .uc-ticket-pagination button:disabled { opacity: .38; cursor: default; }
:root[data-theme] .uc-ticket-pagination button .material-icons-outlined { font-size: 17px; }
:root[data-theme] .uc-ticket-pagination__meta { color: var(--uc-ink-dis); font-size: 11px; }

/* 创建页页头与结构 */
:root[data-theme] .uc-ticket-create-page { padding-top: 18px; }
:root[data-theme] .uc-ticket-create-head { margin: 0 0 12px; padding: 2px; }
:root[data-theme] .uc-ticket-create-head__copy { min-width: 0; }
:root[data-theme] .uc-ticket-create-head h1 { font-size: 28px; line-height: 1.15; letter-spacing: -.55px; }
:root[data-theme] .uc-ticket-create-layout { display: block; }
:root[data-theme] .uc-ticket-form { display: grid; grid-template-columns: minmax(0, 1fr) 296px; align-items: start; overflow: visible; }
:root[data-theme] .uc-ticket-form__section { grid-column: 1; min-width: 0; padding: 24px 26px 27px; }
:root[data-theme] .uc-ticket-form__section:first-child { padding: 20px 22px 22px; }
:root[data-theme] .uc-ticket-form__section + .uc-ticket-form__section { border-top: 1px solid var(--md-divider); }
:root[data-theme] .uc-ticket-form__heading { display: flex; align-items: center; gap: 11px; margin-bottom: 17px; }
:root[data-theme] .uc-ticket-form__section:first-child .uc-ticket-form__heading { margin-bottom: 14px; }
:root[data-theme] .uc-ticket-step { display: grid; place-items: center; flex: 0 0 auto; width: 28px; height: 28px; border-radius: 9px; background: var(--md-primary); color: var(--md-on-primary); font-size: 11px; font-weight: 750; box-shadow: 0 3px 9px rgba(var(--md-primary-rgb), .13); }
:root[data-theme] .uc-ticket-form__heading > div { display: flex; flex-direction: column; gap: 3px; }
:root[data-theme] .uc-ticket-form__heading strong { color: var(--uc-ink); font-size: 14px; font-weight: 720; }
:root[data-theme] .uc-ticket-form__heading small { color: var(--uc-ink-dis); font-size: 10.5px; line-height: 1.45; }

/* 类型大按钮 */
:root[data-theme] .uc-ticket-type-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
:root[data-theme] .uc-ticket-type { position: relative; display: flex; align-items: center; gap: 11px; min-height: 70px; padding: 11px 40px 11px 12px; border: 1px solid var(--md-outline); border-radius: 14px; background: var(--uc-field-bg); color: var(--uc-ink); text-align: left; cursor: pointer; transition: border-color .18s, background .18s, box-shadow .18s, transform .18s; }
:root[data-theme] .uc-ticket-type:hover { border-color: rgba(var(--uc-focus-rgb), .42); transform: translateY(-1px); }
:root[data-theme] .uc-ticket-type.is-active { border-color: var(--uc-focus); background: rgba(var(--uc-focus-rgb), .055); box-shadow: inset 0 0 0 1px rgba(var(--uc-focus-rgb), .16), 0 6px 18px rgba(var(--uc-focus-rgb), .07); }
:root[data-theme] .uc-ticket-type__icon { display: grid; place-items: center; flex: 0 0 auto; width: 38px; height: 38px; border-radius: 12px; color: var(--uc-ink-med); background: rgba(var(--md-primary-rgb), .06); transition: color .18s, background .18s; }
:root[data-theme] .uc-ticket-type.is-active .uc-ticket-type__icon { color: var(--uc-focus); background: rgba(var(--uc-focus-rgb), .11); }
:root[data-theme] .uc-ticket-type__icon .material-icons-outlined { font-size: 21px; }
:root[data-theme] .uc-ticket-type__copy { display: flex; flex-direction: column; min-width: 0; gap: 4px; }
:root[data-theme] .uc-ticket-type__copy strong { font-size: 13px; font-weight: 700; }
:root[data-theme] .uc-ticket-type__copy small { color: var(--uc-ink-med); font-size: 10px; line-height: 1.4; }
:root[data-theme] .uc-ticket-choice { position: absolute; top: 50%; right: 13px; display: grid; place-items: center; width: 20px; height: 20px; border: 1px solid var(--md-outline); border-radius: 50%; color: transparent; transform: translateY(-50%); transition: color .18s, background .18s, border-color .18s; }
:root[data-theme] .uc-ticket-type.is-active .uc-ticket-choice { border-color: var(--uc-focus); background: var(--uc-focus); color: #fff; }
:root[data-theme] .uc-ticket-choice .material-icons-outlined { font-size: 14px; font-weight: 800; }

/* 字段 / Select2 */
:root[data-theme] .uc-ticket-field-label { display: flex; align-items: center; gap: 5px; margin-bottom: 9px; color: var(--uc-ink); font-size: 12px; font-weight: 650; }
:root[data-theme] .uc-ticket-field-label b, :root[data-theme] .uc-ticket-float-field > span b { color: var(--md-error); font-style: normal; }
:root[data-theme] .uc-ticket-field-label em { margin-left: auto; color: var(--uc-ink-dis); font-size: 10px; font-style: normal; font-weight: 500; }
:root[data-theme] .uc-ticket-field-help { display: flex; align-items: flex-start; gap: 6px; margin: 8px 2px 0; color: var(--uc-ink-dis); font-size: 10.5px; line-height: 1.55; }
:root[data-theme] .uc-ticket-field-help .material-icons-outlined { flex: 0 0 auto; margin-top: 1px; color: var(--uc-ink-dis); font-size: 14px; }
:root[data-theme] .uc-ticket-relation[hidden], :root[data-theme] .uc-ticket-order-panel[hidden] { display: none; }
:root[data-theme] .uc-ticket-page .select2-container { width: 100% !important; }
:root[data-theme] .uc-ticket-page .select2-container--default .select2-selection--single { height: 50px; border: 1px solid var(--md-outline); border-radius: 13px; background: var(--uc-field-bg); }
:root[data-theme] .uc-ticket-page .select2-container--default .select2-selection--single .select2-selection__rendered { height: 48px; padding: 0 43px 0 14px; color: var(--uc-ink); line-height: 48px; font-size: 12.5px; }
:root[data-theme] .uc-ticket-page .select2-container--default .select2-selection--single .select2-selection__placeholder { color: var(--uc-ink-dis); }
:root[data-theme] .uc-ticket-page .select2-container--default .select2-selection--single .select2-selection__arrow { top: 0; right: 8px; height: 48px; }
:root[data-theme] .uc-ticket-page .select2-container--default .select2-selection--single .select2-selection__clear { position: absolute; right: 35px; z-index: 2; color: var(--uc-ink-dis); font-size: 18px; }
:root[data-theme] .uc-ticket-page .select2-container--open .select2-selection--single { border-color: var(--uc-focus); box-shadow: inset 0 0 0 1px var(--uc-focus), 0 0 0 3px rgba(var(--uc-focus-rgb), .07); }
:root[data-theme] .select2-results__option .uc-ticket-option { display: flex; align-items: center; gap: 10px; width: 100%; min-width: 0; max-width: 100%; overflow: hidden; }
:root[data-theme] .uc-ticket-option > img { width: 38px; height: 38px; flex: 0 0 auto; border-radius: 10px; object-fit: cover; background: var(--md-surface-2); }
:root[data-theme] .uc-ticket-option__copy { display: flex; flex: 1 1 auto; flex-direction: column; min-width: 0; max-width: 100%; gap: 2px; }
:root[data-theme] .uc-ticket-option__copy strong { color: inherit; font-size: 12.5px; font-weight: 650; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
:root[data-theme] .uc-ticket-option__copy small { max-width: 100%; color: var(--uc-ink-dis); font-size: 9.5px; line-height: 1.45; overflow-wrap: anywhere; word-break: break-word; }

/* 订单来源切换与已选订单 */
:root[data-theme] .uc-ticket-mode-switch { display: inline-flex; align-items: center; gap: 3px; margin-bottom: 17px; padding: 4px; border: 1px solid var(--md-divider); border-radius: 12px; background: rgba(var(--md-primary-rgb), .035); }
:root[data-theme] .uc-ticket-mode-switch button { display: inline-flex; align-items: center; gap: 6px; height: 34px; padding: 0 12px; border: none; border-radius: 9px; background: transparent; color: var(--uc-ink-med); font-size: 11px; font-weight: 600; cursor: pointer; }
:root[data-theme] .uc-ticket-mode-switch button.is-active { background: var(--glass-bg-strong); color: var(--uc-ink); box-shadow: 0 2px 8px rgba(31,45,70,.08), inset 0 0 0 1px var(--glass-border-soft); }
:root[data-theme] .uc-ticket-mode-switch .material-icons-outlined { font-size: 16px; }
:root[data-theme] .uc-ticket-order-picked { display: flex; align-items: center; gap: 10px; margin-top: 9px; padding: 10px 12px; border: 1px solid rgba(var(--md-success-rgb), .18); border-radius: 12px; background: rgba(var(--md-success-rgb), .045); }
:root[data-theme] .uc-ticket-order-picked[hidden] { display: none; }
:root[data-theme] .uc-ticket-order-picked img { width: 38px; height: 38px; flex: 0 0 auto; border-radius: 9px; object-fit: cover; }
:root[data-theme] .uc-ticket-order-picked > span:nth-child(2) { display: flex; flex-direction: column; min-width: 0; flex: 1; }
:root[data-theme] .uc-ticket-order-picked small { color: var(--md-success); font-size: 9.5px; font-weight: 700; }
:root[data-theme] .uc-ticket-order-picked strong { color: var(--uc-ink); font-size: 11.5px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
:root[data-theme] .uc-ticket-order-picked em { color: var(--uc-ink-dis); font-size: 9.5px; font-style: normal; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
:root[data-theme] .uc-ticket-order-picked > .material-icons-outlined { color: var(--md-success); font-size: 20px; }

/* MUI 浮动输入 */
:root[data-theme] .uc-ticket-float-field { position: relative; display: block; min-width: 0; max-width: 100%; margin-top: 20px; }
:root[data-theme] .uc-ticket-float-field input { box-sizing: border-box; width: 100%; max-width: 100%; height: 52px; padding: 12px 52px 0 14px; border: 1px solid var(--md-outline); border-radius: 13px; outline: none; background: var(--uc-field-bg); color: var(--uc-ink); font-size: 13px; transition: border-color .16s, box-shadow .16s, background .16s; }
:root[data-theme] .uc-ticket-float-field > span { position: absolute; left: 11px; top: 50%; padding: 0 4px; color: var(--uc-ink-med); font-size: 13px; line-height: 1; transform: translateY(-50%); transform-origin: left center; pointer-events: none; transition: top .16s, transform .16s, color .16s, background .16s; }
:root[data-theme] .uc-ticket-float-field:focus-within > span, :root[data-theme] .uc-ticket-float-field:has(input:not(:placeholder-shown)) > span { top: 0; background: var(--glass-bg-strong); transform: translateY(-50%) scale(.82); }
:root[data-theme] .uc-ticket-float-field:focus-within > span { color: var(--uc-focus); }
:root[data-theme] .uc-ticket-float-field input:focus { border-color: var(--uc-focus); box-shadow: inset 0 0 0 1px var(--uc-focus), 0 0 0 3px rgba(var(--uc-focus-rgb), .07); background: var(--glass-bg-strong); }
:root[data-theme] .uc-ticket-char-count { position: absolute; right: 12px; top: 50%; color: var(--uc-ink-dis); font-size: 9.5px; transform: translateY(-50%); font-style: normal; }
:root[data-theme] .uc-ticket-char-count i { font-style: normal; }

/* 购买凭证 */
:root[data-theme] .uc-ticket-proof { margin-top: 22px; }
:root[data-theme] .uc-ticket-proof__drop { display: flex; align-items: center; gap: 13px; width: 100%; min-height: 82px; padding: 13px 14px; border: 1px dashed rgba(var(--uc-focus-rgb), .38); border-radius: 15px; background: rgba(var(--uc-focus-rgb), .035); color: var(--uc-ink); text-align: left; cursor: pointer; transition: background .18s, border-color .18s, transform .18s; }
:root[data-theme] .uc-ticket-proof__drop[hidden] { display: none; }
:root[data-theme] .uc-ticket-proof__drop:hover { border-color: var(--uc-focus); background: rgba(var(--uc-focus-rgb), .065); transform: translateY(-1px); }
:root[data-theme] .uc-ticket-proof__drop.is-uploading { cursor: wait; opacity: .72; }
:root[data-theme] .uc-ticket-proof__icon { display: grid; place-items: center; flex: 0 0 auto; width: 46px; height: 46px; border-radius: 14px; background: rgba(var(--uc-focus-rgb), .11); color: var(--uc-focus); }
:root[data-theme] .uc-ticket-proof__icon .material-icons-outlined { font-size: 23px; }
:root[data-theme] .uc-ticket-proof__copy { display: flex; flex-direction: column; flex: 1; min-width: 0; gap: 4px; }
:root[data-theme] .uc-ticket-proof__copy strong { font-size: 12.5px; font-weight: 700; }
:root[data-theme] .uc-ticket-proof__copy small { color: var(--uc-ink-dis); font-size: 10px; }
:root[data-theme] .uc-ticket-proof__action { flex: 0 0 auto; padding: 7px 10px; border-radius: 9px; background: var(--glass-bg-strong); color: var(--uc-focus); font-size: 10.5px; font-weight: 700; box-shadow: inset 0 0 0 1px var(--glass-border-soft); }
:root[data-theme] .uc-ticket-proof__preview { display: flex; align-items: center; gap: 11px; padding: 10px; border: 1px solid rgba(var(--md-success-rgb), .2); border-radius: 14px; background: rgba(var(--md-success-rgb), .045); }
:root[data-theme] .uc-ticket-proof__preview[hidden] { display: none; }
:root[data-theme] .uc-ticket-proof__preview img { width: 62px; height: 54px; flex: 0 0 auto; border-radius: 10px; object-fit: cover; }
:root[data-theme] .uc-ticket-proof__preview > div { display: flex; flex-direction: column; flex: 1; min-width: 0; gap: 2px; }
:root[data-theme] .uc-ticket-proof__preview strong { color: var(--uc-ink); font-size: 12px; }
:root[data-theme] .uc-ticket-proof__preview small { color: var(--uc-ink-dis); font-size: 10px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
:root[data-theme] .uc-ticket-proof__remove { display: grid; place-items: center; width: 34px; height: 34px; border: none; border-radius: 10px; background: transparent; color: var(--uc-ink-dis); cursor: pointer; }
:root[data-theme] .uc-ticket-proof__remove:hover { color: var(--md-error); background: rgba(var(--md-error-rgb), .08); }
:root[data-theme] .uc-ticket-proof__remove .material-icons-outlined { font-size: 18px; }

/* 优先级 */
:root[data-theme] .uc-ticket-priority-block { margin-bottom: 18px; }
:root[data-theme] .uc-ticket-priorities { display: grid; grid-template-columns: repeat(3, 1fr); gap: 9px; }
:root[data-theme] .uc-ticket-priorities button { display: flex; align-items: center; gap: 9px; min-height: 56px; padding: 9px 11px; border: 1px solid var(--md-outline); border-radius: 12px; background: var(--uc-field-bg); color: var(--uc-ink); text-align: left; cursor: pointer; transition: border-color .16s, background .16s, box-shadow .16s; }
:root[data-theme] .uc-ticket-priorities button:hover { border-color: rgba(var(--uc-focus-rgb), .38); }
:root[data-theme] .uc-ticket-priorities button.is-active { border-color: var(--uc-focus); background: rgba(var(--uc-focus-rgb), .05); box-shadow: inset 0 0 0 1px rgba(var(--uc-focus-rgb), .15); }
:root[data-theme] .uc-ticket-priorities button > span:nth-child(2) { display: flex; flex-direction: column; gap: 2px; }
:root[data-theme] .uc-ticket-priorities strong { font-size: 12px; }
:root[data-theme] .uc-ticket-priorities small { color: var(--uc-ink-dis); font-size: 9px; }
:root[data-theme] .uc-ticket-priority-dot { width: 8px; height: 8px; flex: 0 0 auto; border-radius: 50%; background: var(--uc-ink-dis); box-shadow: 0 0 0 4px rgba(128,128,128,.07); }
:root[data-theme] .uc-ticket-priority-dot--medium { background: #c0841d; box-shadow: 0 0 0 4px rgba(192,132,29,.09); }
:root[data-theme] .uc-ticket-priority-dot--high { background: var(--md-error); box-shadow: 0 0 0 4px rgba(var(--md-error-rgb), .08); }

/* EditorV2 工单限定：Markdown-only */
:root[data-theme] .uc-ticket-editor-field { margin-top: 20px; }
:root[data-theme] .uc-ticket-page .ev2-editor { border-color: var(--md-outline); border-radius: 15px; background: var(--uc-field-bg); }
:root[data-theme] .uc-ticket-page .ev2-bar { padding: 7px 9px; background: rgba(var(--md-primary-rgb), .035); }
:root[data-theme] .uc-ticket-page .ev2-mode-toggle { display: none !important; }
:root[data-theme] .uc-ticket-page .ev2-cm .CodeMirror, :root[data-theme] .uc-ticket-page .ev2-preview { background: color-mix(in srgb, var(--glass-bg-strong) 82%, transparent); }
:root[data-theme] .uc-ticket-page .ev2-cm .CodeMirror { font-size: 12.5px; }
:root[data-theme] .uc-ticket-editor-error { padding: 28px; border: 1px solid rgba(var(--md-error-rgb), .25); border-radius: 14px; background: rgba(var(--md-error-rgb), .055); color: var(--md-error); font-size: 12px; text-align: center; }
:root[data-theme] .uc-ticket-submit-row { display: flex; grid-column: 1; align-items: center; justify-content: space-between; gap: 16px; padding: 17px 26px 20px; border-top: 1px solid var(--md-divider); }
:root[data-theme] .uc-ticket-submit-row > span, :root[data-theme] .uc-ticket-reply__actions > span { display: inline-flex; align-items: center; gap: 6px; color: var(--uc-ink-dis); font-size: 10.5px; }
:root[data-theme] .uc-ticket-submit-row > span .material-icons-outlined, :root[data-theme] .uc-ticket-reply__actions > span .material-icons-outlined { font-size: 15px; }
:root[data-theme] .uc-ticket-submit, :root[data-theme] .uc-ticket-reply__submit { display: inline-flex; align-items: center; justify-content: center; gap: 7px; height: 42px; padding: 0 19px; border: 1px solid var(--md-primary); border-radius: 12px; background: var(--md-primary); color: var(--md-on-primary); font-size: 12.5px; font-weight: 700; cursor: pointer; box-shadow: 0 6px 16px rgba(var(--md-primary-rgb), .16); transition: transform .17s, box-shadow .17s, filter .17s; }
:root[data-theme] .uc-ticket-submit:hover, :root[data-theme] .uc-ticket-reply__submit:hover { transform: translateY(-1px); filter: brightness(1.05); box-shadow: 0 9px 20px rgba(var(--md-primary-rgb), .21); }
:root[data-theme] .uc-ticket-submit:disabled, :root[data-theme] .uc-ticket-reply__submit:disabled { opacity: .62; cursor: wait; transform: none; }
:root[data-theme] .uc-ticket-submit .material-icons-outlined, :root[data-theme] .uc-ticket-reply__submit .material-icons-outlined { font-size: 18px; }
:root[data-theme] .uc-ticket-submit.is-loading .material-icons-outlined { animation: uc-ticket-submit-pulse .9s ease-in-out infinite alternate; }
:root[data-theme] .uc-ticket-reply__submit.is-loading .material-icons-outlined { animation: uc-ticket-send-pulse .9s ease-in-out infinite alternate; }
@keyframes uc-ticket-submit-pulse { to { transform: scale(.88); opacity: .55; } }
@keyframes uc-ticket-send-pulse { to { transform: translateX(3px); opacity: .55; } }

/* 创建页侧栏 */
:root[data-theme] .uc-ticket-create-aside { position: relative; grid-column: 2; grid-row: 1 / 5; align-self: stretch; min-width: 0; padding: 16px; border-left: 1px solid var(--md-divider); border-radius: 0 var(--glass-radius) var(--glass-radius) 0; background: linear-gradient(180deg, rgba(var(--uc-focus-rgb), .035), rgba(var(--md-primary-rgb), .018) 42%, transparent 82%); }
:root[data-theme] .uc-ticket-summary { position: sticky; top: 88px; overflow: visible; }
:root[data-theme] .uc-ticket-summary__head { display: flex; align-items: center; gap: 9px; min-height: 48px; padding: 2px 2px 13px; border-bottom: 1px solid var(--md-divider); }
:root[data-theme] .uc-ticket-summary__head > .material-icons-outlined { display: grid; place-items: center; width: 32px; height: 32px; flex: 0 0 auto; border-radius: 10px; background: rgba(var(--uc-focus-rgb), .1); color: var(--uc-focus); font-size: 17px; }
:root[data-theme] .uc-ticket-summary__head > strong { color: var(--uc-ink); font-size: 12.5px; font-weight: 700; }
:root[data-theme] .uc-ticket-summary__live { display: inline-flex; align-items: center; gap: 5px; margin-left: auto; color: var(--uc-ink-dis); font-size: 9px; font-weight: 600; white-space: nowrap; }
:root[data-theme] .uc-ticket-summary__live i { width: 5px; height: 5px; border-radius: 50%; background: var(--md-success); box-shadow: 0 0 0 3px rgba(var(--md-success-rgb), .08); }
:root[data-theme] .uc-ticket-summary__rows { padding: 5px 2px 0; }
:root[data-theme] .uc-ticket-summary__rows > div { display: flex; align-items: center; justify-content: space-between; gap: 10px; min-height: 38px; border-bottom: 1px solid var(--md-divider); }
:root[data-theme] .uc-ticket-summary__rows > div:last-child { border-bottom: none; }
:root[data-theme] .uc-ticket-summary__rows > div > span:first-child { flex: 0 0 auto; color: var(--uc-ink-med); font-size: 10px; }
:root[data-theme] .uc-ticket-summary__rows strong { max-width: 155px; color: var(--uc-ink); font-size: 10.5px; font-weight: 650; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
:root[data-theme] .uc-ticket-summary__rows strong.is-ready { color: var(--md-success); }
:root[data-theme] .uc-ticket-summary__type > div { display: inline-flex; align-items: center; min-width: 0; gap: 6px; }
:root[data-theme] .uc-ticket-summary__type > div .material-icons-outlined { flex: 0 0 auto; color: var(--uc-focus); font-size: 17px; }

/* 详情加载 / 错误 */
:root[data-theme] .uc-ticket-detail-loading, :root[data-theme] .uc-ticket-detail-error { display: flex; align-items: center; justify-content: center; flex-direction: column; min-height: 560px; text-align: center; }
:root[data-theme] .uc-ticket-detail-loading[hidden], :root[data-theme] .uc-ticket-detail-error[hidden], :root[data-theme] .uc-ticket-detail[hidden] { display: none; }
:root[data-theme] .uc-ticket-detail-loading__orb { display: grid; place-items: center; width: 68px; height: 68px; margin-bottom: 15px; border-radius: 22px; color: var(--uc-focus); background: rgba(var(--uc-focus-rgb), .09); animation: uc-ticket-orb 1.2s ease-in-out infinite alternate; }
:root[data-theme] .uc-ticket-detail-loading__orb .material-icons-outlined { font-size: 30px; }
@keyframes uc-ticket-orb { to { transform: translateY(-5px); box-shadow: 0 12px 26px rgba(var(--uc-focus-rgb), .13); } }
:root[data-theme] .uc-ticket-detail-loading strong { color: var(--uc-ink); font-size: 14px; }
:root[data-theme] .uc-ticket-detail-loading small { margin-top: 3px; color: var(--uc-ink-dis); font-size: 10px; }
:root[data-theme] .uc-ticket-detail-error > .material-icons-outlined { margin-bottom: 15px; color: var(--uc-ink-dis); font-size: 46px; }
:root[data-theme] .uc-ticket-detail-error strong { color: var(--uc-ink); font-size: 17px; }
:root[data-theme] .uc-ticket-detail-error p { margin: 7px 0 0; color: var(--uc-ink-med); font-size: 12px; }

/* 详情页摘要头：嵌入沟通主卡，与右侧上下文从同一高度开始 */
:root[data-theme] .uc-ticket-detail-head {
  position: relative; isolation: isolate; display: block; margin: 0; padding: 18px 20px 19px; overflow: hidden;
  border: 0; border-bottom: 1px solid var(--md-divider); border-radius: 0;
  background: linear-gradient(135deg, rgba(var(--uc-focus-rgb), .075), transparent 48%);
  box-shadow: none;
}
:root[data-theme] .uc-ticket-detail-head::after {
  content: ""; position: absolute; z-index: -1; right: -72px; bottom: -108px; width: 250px; height: 250px;
  border: 1px solid rgba(var(--uc-focus-rgb), .12); border-radius: 50%;
  box-shadow: 0 0 0 30px rgba(var(--uc-focus-rgb), .022), 0 0 0 66px rgba(var(--uc-focus-rgb), .014);
  pointer-events: none;
}
:root[data-theme] .uc-ticket-detail-head__top { position: relative; z-index: 1; display: flex; align-items: center; justify-content: flex-start; gap: 16px; }
:root[data-theme] .uc-ticket-detail-head__meta { display: flex; align-items: center; justify-content: flex-start; flex-wrap: wrap; gap: 6px; margin: 0; min-width: 0; }
:root[data-theme] .uc-ticket-detail-number { margin-right: 2px; color: var(--uc-ink-dis); font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 10.5px; font-weight: 700; }
:root[data-theme] .uc-ticket-detail-head__body { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(0, 1fr) minmax(210px, 245px); align-items: center; gap: 20px; margin-top: 10px; }
:root[data-theme] .uc-ticket-detail-head__copy { min-width: 0; }
:root[data-theme] .uc-ticket-detail-title { max-width: 620px; margin: 0; color: var(--uc-ink); font-size: clamp(22px, 2.35vw, 29px) !important; font-weight: 720; line-height: 1.25; letter-spacing: -.025em; word-break: break-word; }
:root[data-theme] .uc-ticket-detail-state {
  --uc-ticket-state-color: var(--md-warning); --uc-ticket-state-rgb: var(--md-warning-rgb);
  display: flex; align-items: center; gap: 12px; min-width: 0; min-height: 72px; padding: 11px 13px;
  border: 1px solid rgba(var(--uc-ticket-state-rgb), .16); border-radius: 15px;
  background: rgba(var(--uc-ticket-state-rgb), .065); box-shadow: inset 0 1px 0 rgba(255, 255, 255, .2);
}
:root[data-theme] .uc-ticket-detail-state.is-reply { --uc-ticket-state-color: var(--uc-focus); --uc-ticket-state-rgb: var(--uc-focus-rgb); }
:root[data-theme] .uc-ticket-detail-state.is-resolved { --uc-ticket-state-color: var(--md-success); --uc-ticket-state-rgb: var(--md-success-rgb); }
:root[data-theme] .uc-ticket-detail-state.is-closed { --uc-ticket-state-color: var(--uc-ink-med); --uc-ticket-state-rgb: 128, 128, 128; }
:root[data-theme] .uc-ticket-detail-state__icon {
  display: grid; place-items: center; flex: 0 0 auto; width: 40px; height: 40px; border-radius: 13px;
  background: rgba(var(--uc-ticket-state-rgb), .11); color: var(--uc-ticket-state-color);
}
:root[data-theme] .uc-ticket-detail-state__icon .material-icons-outlined { font-size: 21px; }
:root[data-theme] .uc-ticket-detail-state__copy { display: flex; flex-direction: column; min-width: 0; }
:root[data-theme] .uc-ticket-detail-state__copy small { color: var(--uc-ink-dis); font-size: 9px; font-weight: 650; }
:root[data-theme] .uc-ticket-detail-status { margin-top: 1px; color: var(--uc-ticket-state-color); font-size: 13px; font-weight: 750; line-height: 1.35; }
:root[data-theme] .uc-ticket-detail-state__hint { margin-top: 2px; overflow: hidden; color: var(--uc-ink-med); font-size: 9.5px; line-height: 1.4; text-overflow: ellipsis; white-space: nowrap; }
:root[data-theme="dark"] .uc-ticket-detail-state { background: rgba(var(--uc-ticket-state-rgb), .085); box-shadow: inset 0 1px 0 rgba(255, 255, 255, .035); }
:root[data-theme] .uc-ticket-detail-layout { display: grid; grid-template-columns: minmax(0, 1fr) 300px; align-items: start; gap: 16px; }

/* 对话时间线 */
:root[data-theme] .uc-ticket-thread { overflow: hidden; }
:root[data-theme] .uc-ticket-thread__head { display: flex; align-items: center; justify-content: space-between; gap: 15px; padding: 17px 20px; border-bottom: 1px solid var(--md-divider); }
:root[data-theme] .uc-ticket-thread__head > div { display: flex; align-items: center; gap: 10px; }
:root[data-theme] .uc-ticket-thread__head > div > .material-icons-outlined { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 11px; color: var(--uc-focus); background: rgba(var(--uc-focus-rgb), .09); font-size: 18px; }
:root[data-theme] .uc-ticket-thread__head > div > span { display: flex; flex-direction: column; gap: 1px; }
:root[data-theme] .uc-ticket-thread__head strong { color: var(--uc-ink); font-size: 13px; }
:root[data-theme] .uc-ticket-thread__head small { color: var(--uc-ink-dis); font-size: 9.5px; }
:root[data-theme] .uc-ticket-live { display: inline-flex; align-items: center; gap: 6px; padding: 5px 8px; border-radius: 999px; background: rgba(var(--md-success-rgb), .07); color: var(--md-success); font-size: 9.5px; font-weight: 650; }
:root[data-theme] .uc-ticket-live i { width: 6px; height: 6px; border-radius: 50%; background: currentColor; box-shadow: 0 0 0 3px rgba(var(--md-success-rgb), .1); animation: uc-ticket-live 1.3s ease-in-out infinite alternate; }
:root[data-theme] .uc-ticket-live.is-archived { color: var(--uc-ink-dis); background: rgba(128,128,128,.07); }
:root[data-theme] .uc-ticket-live.is-archived i { box-shadow: none; animation: none; }
@keyframes uc-ticket-live { to { opacity: .38; } }
:root[data-theme] .uc-ticket-thread__body { padding: 25px 24px 18px; }
:root[data-theme] .uc-ticket-history-more { display: flex; align-items: center; justify-content: center; gap: 6px; width: max-content; height: 32px; margin: 0 auto 21px; padding: 0 11px; border: 1px solid var(--md-outline); border-radius: 10px; background: transparent; color: var(--uc-ink-med); font-size: 10px; font-weight: 650; cursor: pointer; }
:root[data-theme] .uc-ticket-history-more[hidden] { display: none; }
:root[data-theme] .uc-ticket-history-more:hover:not(:disabled) { border-color: var(--uc-focus); color: var(--uc-focus); background: rgba(var(--uc-focus-rgb), .05); }
:root[data-theme] .uc-ticket-history-more:disabled { opacity: .62; cursor: wait; }
:root[data-theme] .uc-ticket-history-more .material-icons-outlined { font-size: 15px; }
:root[data-theme] .uc-ticket-history-more.is-loading .material-icons-outlined { animation: uc-ticket-live .7s ease-in-out infinite alternate; }
:root[data-theme] .uc-ticket-messages { position: relative; display: flex; flex-direction: column; gap: 22px; }
:root[data-theme] .uc-ticket-messages::before { content: ""; position: absolute; left: 18px; top: 18px; bottom: 18px; width: 1px; background: linear-gradient(var(--md-divider), transparent); }
:root[data-theme] .uc-ticket-message { position: relative; display: flex; align-items: flex-start; gap: 12px; }
:root[data-theme] .uc-ticket-message__avatar { position: relative; z-index: 1; display: grid; place-items: center; flex: 0 0 auto; width: 37px; height: 37px; border: 3px solid color-mix(in srgb, var(--glass-bg-strong) 90%, transparent); border-radius: 12px; color: var(--uc-ink-med); background: var(--md-surface-2); box-shadow: 0 2px 8px rgba(31,45,70,.08); }
:root[data-theme] .uc-ticket-message.is-admin .uc-ticket-message__avatar { color: #fff; background: var(--uc-focus); }
:root[data-theme] .uc-ticket-message__avatar .material-icons-outlined { font-size: 18px; }
:root[data-theme] .uc-ticket-message__main { min-width: 0; flex: 1; }
:root[data-theme] .uc-ticket-message__meta { display: flex; align-items: center; gap: 7px; min-height: 22px; margin-bottom: 5px; }
:root[data-theme] .uc-ticket-message__meta strong { color: var(--uc-ink); font-size: 11.5px; font-weight: 700; }
:root[data-theme] .uc-ticket-message__meta > span { padding: 2px 6px; border-radius: 6px; color: var(--uc-focus); background: rgba(var(--uc-focus-rgb), .08); font-size: 8.5px; font-weight: 750; }
:root[data-theme] .uc-ticket-message__meta > .uc-ticket-final { display: inline-flex; align-items: center; gap: 3px; color: var(--md-success); background: rgba(var(--md-success-rgb), .1); }
:root[data-theme] .uc-ticket-final .material-icons-outlined { font-size: 11px; }
:root[data-theme] .uc-ticket-message__meta time { margin-left: auto; color: var(--uc-ink-dis); font-size: 9.5px; }
:root[data-theme] .uc-ticket-message__bubble { padding: 15px 17px; border: 1px solid var(--md-divider); border-radius: 5px 15px 15px; background: rgba(var(--md-primary-rgb), .025); color: var(--uc-ink); }
:root[data-theme] .uc-ticket-message.is-admin .uc-ticket-message__bubble { border-color: rgba(var(--uc-focus-rgb), .14); background: rgba(var(--uc-focus-rgb), .045); }

/* 系统/结束事件 */
:root[data-theme] .uc-ticket-event { position: relative; display: flex; align-items: flex-start; gap: 10px; margin-left: 7px; padding: 11px 13px; border: 1px solid var(--md-divider); border-radius: 12px; background: rgba(var(--md-primary-rgb), .025); }
:root[data-theme] .uc-ticket-event > .material-icons-outlined { position: relative; z-index: 1; display: grid; place-items: center; flex: 0 0 auto; width: 24px; height: 24px; border-radius: 8px; color: var(--uc-ink-med); background: var(--md-surface-2); font-size: 14px; }
:root[data-theme] .uc-ticket-event > div { display: flex; flex-direction: column; flex: 1; min-width: 0; }
:root[data-theme] .uc-ticket-event strong { color: var(--uc-ink); font-size: 10.5px; }
:root[data-theme] .uc-ticket-event time { margin-top: 3px; color: var(--uc-ink-dis); font-size: 9px; }
:root[data-theme] .uc-ticket-event.is-resolved { border-color: rgba(var(--md-success-rgb), .16); background: rgba(var(--md-success-rgb), .04); }
:root[data-theme] .uc-ticket-event.is-resolved > .material-icons-outlined { color: var(--md-success); background: rgba(var(--md-success-rgb), .09); }
:root[data-theme] .uc-ticket-event.is-closed { color: var(--uc-ink-dis); }

/* 消息 Markdown 渲染（不复用 .ev2-preview，避免移动端 max-height 截断） */
:root[data-theme] .uc-ticket-markdown { color: var(--uc-ink); font-size: 12.5px; line-height: 1.75; overflow-wrap: anywhere; }
:root[data-theme] .uc-ticket-markdown > *:first-child { margin-top: 0 !important; }
:root[data-theme] .uc-ticket-markdown > *:last-child { margin-bottom: 0 !important; }
:root[data-theme] .uc-ticket-markdown p { margin: 0 0 10px; }
:root[data-theme] .uc-ticket-markdown h1, :root[data-theme] .uc-ticket-markdown h2, :root[data-theme] .uc-ticket-markdown h3, :root[data-theme] .uc-ticket-markdown h4 { margin: 16px 0 9px; color: var(--uc-ink); font-weight: 700; line-height: 1.35; }
:root[data-theme] .uc-ticket-markdown h1 { font-size: 1.45em; } :root[data-theme] .uc-ticket-markdown h2 { font-size: 1.3em; } :root[data-theme] .uc-ticket-markdown h3 { font-size: 1.15em; } :root[data-theme] .uc-ticket-markdown h4 { font-size: 1em; }
:root[data-theme] .uc-ticket-markdown ul, :root[data-theme] .uc-ticket-markdown ol { margin: 0 0 10px; padding-left: 1.8em; }
:root[data-theme] .uc-ticket-markdown ul { list-style: disc outside !important; } :root[data-theme] .uc-ticket-markdown ol { list-style: decimal outside !important; }
:root[data-theme] .uc-ticket-markdown li { display: list-item !important; margin: .2em 0; }
:root[data-theme] .uc-ticket-markdown blockquote { margin: 0 0 10px; padding: 7px 10px; border-left: 3px solid var(--uc-focus); border-radius: 0 8px 8px 0; background: rgba(var(--uc-focus-rgb), .045); color: var(--uc-ink-med); }
:root[data-theme] .uc-ticket-markdown code { padding: .15em .38em; border-radius: 5px; background: var(--md-surface-2); color: var(--uc-ink); font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 85%; }
:root[data-theme] .uc-ticket-markdown pre { max-width: 100%; margin: 0 0 10px; padding: 11px 13px; border: 1px solid var(--md-divider); border-radius: 10px; overflow: auto; background: var(--md-surface-2); }
:root[data-theme] .uc-ticket-markdown pre code { padding: 0; background: transparent; }
:root[data-theme] .uc-ticket-markdown a { color: var(--uc-focus); text-decoration: none; }
:root[data-theme] .uc-ticket-markdown a:hover { text-decoration: underline; }
:root[data-theme] .uc-ticket-markdown img { display: block; max-width: min(100%, 520px); max-height: 420px; margin: 9px 0; border: 1px solid var(--md-divider); border-radius: 12px; object-fit: contain; cursor: zoom-in; box-shadow: 0 4px 15px rgba(31,45,70,.08); }
:root[data-theme] .uc-ticket-markdown table { display: block; max-width: 100%; margin: 0 0 10px; border-collapse: collapse; overflow-x: auto; }
:root[data-theme] .uc-ticket-markdown th, :root[data-theme] .uc-ticket-markdown td { padding: 6px 9px; border: 1px solid var(--md-divider); white-space: nowrap; }
:root[data-theme] .uc-ticket-markdown th { background: var(--md-surface-2); font-weight: 700; }
:root[data-theme] .uc-ticket-event .uc-ticket-markdown { margin-top: 2px; color: var(--uc-ink-med); font-size: 10.5px; }

/* 回复区与只读状态 */
:root[data-theme] .uc-ticket-reply { padding: 19px 20px 20px; border-top: 1px solid var(--md-divider); background: rgba(var(--md-primary-rgb), .018); }
:root[data-theme] .uc-ticket-reply[hidden], :root[data-theme] .uc-ticket-readonly[hidden] { display: none; }
:root[data-theme] .uc-ticket-reply__head { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 11px; }
:root[data-theme] .uc-ticket-reply__head > div { display: flex; align-items: center; gap: 8px; }
:root[data-theme] .uc-ticket-reply__head > div > .material-icons-outlined { color: var(--uc-focus); font-size: 19px; }
:root[data-theme] .uc-ticket-reply__head > div > span { display: flex; flex-direction: column; gap: 1px; }
:root[data-theme] .uc-ticket-reply__head strong { color: var(--uc-ink); font-size: 12px; }
:root[data-theme] .uc-ticket-reply__head small, :root[data-theme] .uc-ticket-reply__head > span { color: var(--uc-ink-dis); font-size: 9.5px; }
:root[data-theme] .uc-ticket-reply__actions { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: 12px; }
:root[data-theme] .uc-ticket-new-messages {
  position: fixed; z-index: 1050; left: 50%; bottom: 24px; display: inline-flex; align-items: center; gap: 6px;
  min-height: 38px; padding: 7px 13px; transform: translateX(-50%); border: 1px solid rgba(var(--uc-focus-rgb), .28);
  border-radius: 999px; background: var(--uc-focus); color: var(--md-on-primary); box-shadow: 0 10px 28px rgba(0,0,0,.2);
  font-size: 10.5px; font-weight: 700; cursor: pointer;
}
:root[data-theme] .uc-ticket-new-messages[hidden] { display: none; }
:root[data-theme] .uc-ticket-new-messages .material-icons-outlined { font-size: 16px; }
:root[data-theme] .uc-ticket-new-messages:hover { filter: brightness(1.06); }
:root[data-theme] .uc-ticket-readonly { display: flex; align-items: center; gap: 13px; padding: 20px; border-top: 1px solid var(--md-divider); background: rgba(var(--md-primary-rgb), .025); }
:root[data-theme] .uc-ticket-readonly__icon { display: grid; place-items: center; flex: 0 0 auto; width: 43px; height: 43px; border-radius: 14px; color: var(--uc-ink-dis); background: rgba(128,128,128,.08); }
:root[data-theme] .uc-ticket-readonly__icon .material-icons-outlined { font-size: 21px; }
:root[data-theme] .uc-ticket-readonly > div { flex: 1; min-width: 0; }
:root[data-theme] .uc-ticket-readonly strong { color: var(--uc-ink); font-size: 12.5px; }
:root[data-theme] .uc-ticket-readonly p { margin: 3px 0 0; color: var(--uc-ink-med); font-size: 10.5px; line-height: 1.55; }
:root[data-theme] .uc-ticket-readonly a { box-sizing: border-box; display: inline-flex; align-items: center; gap: 5px; flex: 0 0 auto; height: 36px; padding: 0 11px; border: 1px solid var(--md-outline); border-radius: 10px; color: var(--uc-ink); font-size: 10.5px; font-weight: 650; text-decoration: none; }
:root[data-theme] .uc-ticket-readonly a:hover { border-color: var(--uc-focus); color: var(--uc-focus); }
:root[data-theme] .uc-ticket-readonly a .material-icons-outlined { font-size: 16px; }

/* 详情侧栏 */
:root[data-theme] .uc-ticket-context { position: sticky; top: 88px; display: flex; flex-direction: column; gap: 12px; }
:root[data-theme] .uc-ticket-context-card { overflow: hidden; }
:root[data-theme] .uc-ticket-context-card[hidden] { display: none; }
:root[data-theme] .uc-ticket-context-card__head { display: flex; align-items: center; gap: 8px; padding: 14px 16px; border-bottom: 1px solid var(--md-divider); }
:root[data-theme] .uc-ticket-context-card__head .material-icons-outlined { color: var(--uc-focus); font-size: 18px; }
:root[data-theme] .uc-ticket-context-card__head strong { color: var(--uc-ink); font-size: 11.5px; }
:root[data-theme] .uc-ticket-context-rows { padding: 5px 16px 10px; }
:root[data-theme] .uc-ticket-context-rows > div { display: flex; align-items: flex-start; justify-content: space-between; gap: 10px; padding: 9px 0; border-bottom: 1px solid var(--md-divider); }
:root[data-theme] .uc-ticket-context-rows > div:last-child { border-bottom: none; }
:root[data-theme] .uc-ticket-context-rows span { color: var(--uc-ink-dis); font-size: 9.5px; }
:root[data-theme] .uc-ticket-context-rows strong { color: var(--uc-ink); font-size: 9.5px; font-weight: 650; text-align: right; }
:root[data-theme] .uc-ticket-related { padding: 13px; }
:root[data-theme] .uc-ticket-related__item { display: flex; align-items: center; gap: 10px; min-width: 0; }
:root[data-theme] .uc-ticket-related__item > img, :root[data-theme] .uc-ticket-related__order-icon { width: 48px; height: 48px; flex: 0 0 auto; border-radius: 12px; object-fit: cover; background: var(--md-surface-2); }
:root[data-theme] .uc-ticket-related__order-icon { display: grid; place-items: center; color: var(--uc-focus); }
:root[data-theme] .uc-ticket-related__item > span:nth-child(2) { display: flex; flex-direction: column; min-width: 0; gap: 2px; }
:root[data-theme] .uc-ticket-related__item small { color: var(--uc-focus); font-size: 8.5px; font-weight: 700; }
:root[data-theme] .uc-ticket-related__item.is-guest small { color: #a66b16; }
:root[data-theme] .uc-ticket-related__item strong { color: var(--uc-ink); font-size: 10.5px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
:root[data-theme] .uc-ticket-related__item em { color: var(--uc-ink-dis); font-size: 8.5px; font-style: normal; line-height: 1.45; word-break: break-all; }
:root[data-theme] .uc-ticket-proof-view { position: relative; display: block; width: calc(100% - 26px); height: 150px; margin: 13px; padding: 0; border: none; border-radius: 12px; overflow: hidden; background: var(--md-surface-2); cursor: zoom-in; }
:root[data-theme] .uc-ticket-proof-view img { width: 100%; height: 100%; object-fit: cover; transition: transform .25s ease, filter .25s ease; }
:root[data-theme] .uc-ticket-proof-view > span { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; gap: 5px; background: rgba(10,14,20,.5); color: #fff; font-size: 10px; font-weight: 650; opacity: 0; transition: opacity .2s ease; }
:root[data-theme] .uc-ticket-proof-view:hover img { transform: scale(1.025); filter: brightness(.78); }
:root[data-theme] .uc-ticket-proof-view:hover > span { opacity: 1; }
:root[data-theme] .uc-ticket-proof-view > span .material-icons-outlined { font-size: 17px; }
:root[data-theme] .uc-ticket-safe-note { display: flex; align-items: flex-start; gap: 9px; padding: 13px 14px; border: 1px solid rgba(var(--uc-focus-rgb), .13); border-radius: 14px; background: rgba(var(--uc-focus-rgb), .035); }
:root[data-theme] .uc-ticket-safe-note > .material-icons-outlined { flex: 0 0 auto; color: var(--uc-focus); font-size: 18px; }
:root[data-theme] .uc-ticket-safe-note strong { display: block; color: var(--uc-ink); font-size: 10px; }
:root[data-theme] .uc-ticket-safe-note p { margin: 2px 0 0; color: var(--uc-ink-med); font-size: 8.8px; line-height: 1.55; }

/* 暗色精修 */
:root[data-theme="dark"] .uc-ticket-stat { box-shadow: var(--glass-hi), 0 7px 22px rgba(0,0,0,.22); }
:root[data-theme="dark"] .uc-ticket-row:hover { box-shadow: 0 9px 24px rgba(0,0,0,.18); }
:root[data-theme="dark"] .uc-ticket-primary { box-shadow: 0 10px 24px rgba(0,0,0,.28), inset 0 1px rgba(255,255,255,.08); }
:root[data-theme="dark"] .uc-ticket-mode-switch button.is-active { box-shadow: 0 2px 8px rgba(0,0,0,.28), inset 0 0 0 1px var(--glass-border-soft); }

/* 工单响应式 */
@media (max-width: 1060px) {
  :root[data-theme] .uc-ticket-stats { grid-template-columns: repeat(5, minmax(118px, 1fr)); overflow-x: auto; padding-bottom: 4px; scrollbar-width: none; }
  :root[data-theme] .uc-ticket-stats::-webkit-scrollbar { display: none; }
  :root[data-theme] .uc-ticket-form { grid-template-columns: minmax(0, 1fr) 270px; }
  :root[data-theme] .uc-ticket-detail-layout { grid-template-columns: minmax(0, 1fr) 270px; }
}
@media (max-width: 860px) {
  :root[data-theme] .uc-ticket-hero { align-items: flex-start; flex-direction: column; padding: 28px; }
  :root[data-theme] .uc-ticket-primary { width: 100%; min-width: 0; }
  :root[data-theme] .uc-ticket-toolbar { align-items: flex-start; flex-direction: column; }
  :root[data-theme] .uc-ticket-tools { width: 100%; }
  :root[data-theme] .uc-ticket-search { flex: 1; width: auto; }
  :root[data-theme] .uc-ticket-detail-layout { grid-template-columns: 1fr; }
  :root[data-theme] .uc-ticket-form { grid-template-columns: 1fr; }
  :root[data-theme] .uc-ticket-form__section, :root[data-theme] .uc-ticket-submit-row { grid-column: 1; }
  :root[data-theme] .uc-ticket-create-aside { position: static; grid-column: 1; grid-row: auto; padding: 15px 24px 16px; border-top: 1px solid var(--md-divider); border-left: none; border-radius: 0; background: rgba(var(--uc-focus-rgb), .025); }
  :root[data-theme] .uc-ticket-summary { position: static; }
  :root[data-theme] .uc-ticket-context { position: static; }
  :root[data-theme] .uc-ticket-context { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); }
  :root[data-theme] .uc-ticket-safe-note { grid-column: 1 / -1; }
}
@media (max-width: 620px) {
  :root[data-theme] .uc-ticket-page { padding-top: 16px; }
  :root[data-theme] .uc-ticket-hero {
    display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: end; gap: 12px;
    min-height: 0; padding: 20px; border-radius: 20px;
  }
  :root[data-theme] .uc-ticket-eyebrow { display: none; }
  :root[data-theme] .uc-ticket-hero__copy { min-width: 0; }
  :root[data-theme] .uc-ticket-hero h1 { font-size: 26px; }
  :root[data-theme] .uc-ticket-hero__copy p {
    display: -webkit-box; margin-top: 8px; overflow: hidden; font-size: 11.5px; line-height: 1.55;
    -webkit-box-orient: vertical; -webkit-line-clamp: 2;
  }
  :root[data-theme] .uc-ticket-primary {
    align-self: end; width: auto; min-width: 0; min-height: 44px; height: 44px;
    gap: 7px; padding: 0 12px; border-radius: 13px;
  }
  :root[data-theme] .uc-ticket-primary > .material-icons-outlined:first-child { font-size: 20px; }
  :root[data-theme] .uc-ticket-primary > span:nth-child(2) { flex: 0 1 auto; }
  :root[data-theme] .uc-ticket-primary strong { font-size: 12px; white-space: nowrap; }
  :root[data-theme] .uc-ticket-primary small, :root[data-theme] .uc-ticket-primary__arrow { display: none; }

  :root[data-theme] .uc-ticket-stats {
    grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 8px;
    overflow: visible; padding-bottom: 0;
  }
  :root[data-theme] .uc-ticket-stat { grid-column: span 2; min-width: 0; min-height: 58px; gap: 8px; padding: 10px; border-radius: 14px; }
  :root[data-theme] .uc-ticket-stat:nth-child(n + 4) { grid-column: span 3; }
  :root[data-theme] .uc-ticket-stat__icon { width: 34px; height: 34px; border-radius: 11px; }
  :root[data-theme] .uc-ticket-stat__icon .material-icons-outlined { font-size: 18px; }
  :root[data-theme] .uc-ticket-stat__copy small { font-size: 10px; }
  :root[data-theme] .uc-ticket-stat__copy strong { font-size: 18px; }

  :root[data-theme] .uc-ticket-board { border-radius: 16px; }
  :root[data-theme] .uc-ticket-toolbar { display: grid; grid-template-columns: minmax(0, 1fr); gap: 12px; padding: 14px; }
  :root[data-theme] .uc-ticket-toolbar__title { gap: 9px; }
  :root[data-theme] .uc-ticket-toolbar__title > .material-icons-outlined { width: 34px; height: 34px; border-radius: 11px; font-size: 18px; }
  :root[data-theme] .uc-ticket-toolbar__title small { display: none; }
  :root[data-theme] .uc-ticket-tools { display: grid; grid-template-columns: minmax(0, 1fr) 112px; align-items: stretch; gap: 8px; width: 100%; }
  :root[data-theme] .uc-ticket-search, :root[data-theme] .uc-ticket-select { width: 100%; min-width: 0; }
  :root[data-theme] .uc-ticket-search { flex: none; }
  :root[data-theme] .uc-ticket-list { padding: 10px; }
  :root[data-theme] .uc-ticket-row, :root[data-theme] .uc-ticket-row + .uc-ticket-row {
    display: block; margin-top: 8px; padding: 13px 14px 12px;
    border: 1px solid var(--md-divider); border-radius: 14px;
    background: rgba(var(--md-primary-rgb), .025);
  }
  :root[data-theme] .uc-ticket-row:first-child { margin-top: 0; }
  :root[data-theme] .uc-ticket-row:hover { transform: none; }
  :root[data-theme] .uc-ticket-row__rail { top: 12px; bottom: 12px; }
  :root[data-theme] .uc-ticket-row__icon { display: none; }
  :root[data-theme] .uc-ticket-row__main { width: 100%; }
  :root[data-theme] .uc-ticket-row__top { gap: 5px; }
  :root[data-theme] .uc-ticket-row__number {
    display: block; box-sizing: border-box; flex: 0 0 100%; width: 100%; padding-right: 84px;
    overflow: hidden; font-size: 9.5px; text-overflow: ellipsis; white-space: nowrap;
  }
  :root[data-theme] .uc-ticket-row__unread { position: absolute; top: 11px; right: 12px; margin: 0; padding: 3px 7px; font-size: 9px; }
  :root[data-theme] .uc-ticket-pill { padding: 2px 6px; font-size: 8.8px; }
  :root[data-theme] .uc-ticket-row__go { display: none; }
  :root[data-theme] .uc-ticket-row__title { margin-top: 8px; font-size: 13.5px; white-space: nowrap; }
  :root[data-theme] .uc-ticket-row__excerpt { max-width: 100%; margin-top: 3px; font-size: 11.5px; }
  :root[data-theme] .uc-ticket-row__bottom { align-items: center; flex-direction: row; gap: 8px; margin-top: 8px; }
  :root[data-theme] .uc-ticket-row__context { flex: 1 1 auto; max-width: none; font-size: 10px; }
  :root[data-theme] .uc-ticket-row__time { flex: 0 0 auto; font-size: 10px; }

  :root[data-theme] .uc-ticket-create-head { margin-bottom: 10px; padding: 0 2px; }
  :root[data-theme] .uc-ticket-create-head h1 { font-size: 24px; letter-spacing: -.4px; }
  :root[data-theme] .uc-ticket-type-grid { grid-template-columns: 1fr; }
  :root[data-theme] .uc-ticket-form__section, :root[data-theme] .uc-ticket-form__section:first-child { padding: 18px 16px 20px; }
  :root[data-theme] .uc-ticket-form__heading, :root[data-theme] .uc-ticket-form__section:first-child .uc-ticket-form__heading { align-items: flex-start; margin-bottom: 13px; }
  :root[data-theme] .uc-ticket-type { min-height: 64px; padding: 10px 38px 10px 11px; }
  :root[data-theme] .uc-ticket-type__icon { width: 36px; height: 36px; }
  :root[data-theme] .uc-ticket-priorities { grid-template-columns: 1fr; }
  :root[data-theme] .uc-ticket-mode-switch { display: flex; width: 100%; }
  :root[data-theme] .uc-ticket-mode-switch button { flex: 1; justify-content: center; padding: 0 7px; }
  :root[data-theme] .uc-ticket-proof__action { display: none; }
  :root[data-theme] .uc-ticket-submit-row { align-items: stretch; flex-direction: column; padding: 15px 18px 18px; }
  :root[data-theme] .uc-ticket-submit { width: 100%; }
  :root[data-theme] .uc-ticket-create-aside, :root[data-theme] .uc-ticket-context { display: flex; flex-direction: column; }
  :root[data-theme] .uc-ticket-create-aside { padding: 14px 16px 15px; }
  :root[data-theme] .uc-ticket-detail-head { padding: 14px 14px 15px; border-radius: 0; }
  :root[data-theme] .uc-ticket-detail-head__top { align-items: flex-start; flex-direction: column; gap: 9px; }
  :root[data-theme] .uc-ticket-detail-head__meta { justify-content: flex-start; width: 100%; }
  :root[data-theme] .uc-ticket-detail-number { max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  :root[data-theme] .uc-ticket-detail-head__body { grid-template-columns: 1fr; gap: 13px; margin-top: 13px; }
  :root[data-theme] .uc-ticket-detail-title { font-size: 22px !important; }
  :root[data-theme] .uc-ticket-detail-state { width: 100%; min-height: 66px; }
  :root[data-theme] .uc-ticket-detail-state__hint { white-space: normal; }
  :root[data-theme] .uc-ticket-thread__head { padding: 15px 14px; }
  :root[data-theme] .uc-ticket-live { font-size: 0; padding: 6px; }
  :root[data-theme] .uc-ticket-thread__body { padding: 21px 14px 15px; }
  :root[data-theme] .uc-ticket-message { gap: 9px; }
  :root[data-theme] .uc-ticket-message__avatar { width: 33px; height: 33px; }
  :root[data-theme] .uc-ticket-messages::before { left: 16px; }
  :root[data-theme] .uc-ticket-message__bubble { padding: 12px 13px; }
  :root[data-theme] .uc-ticket-message__meta { flex-wrap: wrap; }
  :root[data-theme] .uc-ticket-message__meta time { flex: 0 0 100%; margin-left: 0; }
  :root[data-theme] .uc-ticket-reply { padding: 16px 13px; }
  :root[data-theme] .uc-ticket-reply__head > span { display: none; }
  :root[data-theme] .uc-ticket-reply__actions { align-items: stretch; flex-direction: column; }
  :root[data-theme] .uc-ticket-reply__submit { width: 100%; }
  :root[data-theme] .uc-ticket-readonly { display: grid; grid-template-columns: 43px minmax(0, 1fr); align-items: center; gap: 12px; padding: 15px; }
  :root[data-theme] .uc-ticket-readonly > div { min-width: 0; }
  :root[data-theme] .uc-ticket-readonly p { overflow-wrap: anywhere; }
  :root[data-theme] .uc-ticket-readonly a { grid-column: 1 / -1; width: 100%; min-height: 42px; justify-content: center; }

}

@media (max-width: 360px) {
  :root[data-theme] .uc-ticket-hero { grid-template-columns: minmax(0, 1fr); }
  :root[data-theme] .uc-ticket-primary { width: 100%; justify-content: center; }
}

/* =============================================================================
   ⑯ 消息通知 — 顶栏收件箱 / 消息中心
   ============================================================================= */

/* 顶栏铃铛与未读徽章 */
:root[data-theme] .uc-message-center { position: relative; flex: 0 0 auto; }
:root[data-theme] .uc-message-btn {
  position: relative; display: inline-flex; align-items: center; justify-content: center;
  width: 40px; height: 40px; padding: 0; border: none; border-radius: 50%;
  background: transparent; color: var(--uc-ink-med); cursor: pointer;
  transition: color .16s ease, background-color .16s ease, transform .16s ease;
}
:root[data-theme] .uc-message-btn:hover,
:root[data-theme] .uc-message-center.is-open .uc-message-btn {
  color: var(--uc-primary-deep); background: rgba(var(--md-primary-rgb), .11);
}
:root[data-theme] .uc-message-btn:focus-visible { outline: 2px solid var(--uc-focus); outline-offset: 2px; }
:root[data-theme] .uc-message-btn__icon { font-size: 22px; transform-origin: 50% 4px; }
:root[data-theme] .uc-message-badge,
:root[data-theme] .uc-message-drawer-badge {
  display: inline-flex; align-items: center; justify-content: center; box-sizing: border-box;
  min-width: 18px; height: 18px; padding: 0 5px; border: 2px solid var(--glass-bg-strong); border-radius: 999px;
  background: linear-gradient(145deg, #ff5968, #d92f43); color: #fff;
  font-size: 9.5px; line-height: 1; font-weight: 850; letter-spacing: -.25px;
  box-shadow: 0 3px 9px rgba(217, 47, 67, .32);
  transition: transform .18s ease, opacity .18s ease;
}
:root[data-theme] .uc-message-badge { position: absolute; top: -2px; right: -5px; }
:root[data-theme] .uc-message-badge.is-empty,
:root[data-theme] .uc-message-drawer-badge.is-empty { transform: scale(.5); opacity: 0; pointer-events: none; }
:root[data-theme] .uc-message-badge.is-error,
:root[data-theme] .uc-message-drawer-badge.is-error { background: var(--md-error); }
:root[data-theme] .uc-message-drawer-badge { margin-left: auto; border-width: 0; }
:root[data-theme] .uc-message-btn.is-ringing .uc-message-btn__icon { animation: uc-message-ring .72s cubic-bezier(.36,.07,.19,.97); }
@keyframes uc-message-ring {
  0%, 100% { transform: rotate(0); }
  18% { transform: rotate(14deg); }
  34% { transform: rotate(-12deg); }
  50% { transform: rotate(9deg); }
  66% { transform: rotate(-6deg); }
  82% { transform: rotate(3deg); }
}

/* 最近消息玻璃下拉 */
:root[data-theme] .uc-message-dropdown {
  position: absolute; z-index: 1100; top: calc(100% + 13px); right: -48px;
  width: min(370px, calc(100vw - 28px)); overflow: hidden;
  border: 1px solid var(--glass-border); border-radius: 20px;
  background: var(--glass-bg-strong);
  -webkit-backdrop-filter: var(--glass-filter-strong); backdrop-filter: var(--glass-filter-strong);
  box-shadow: var(--glass-hi), 0 22px 58px rgba(31, 38, 60, .20);
  opacity: 0; visibility: hidden; pointer-events: none;
  transform: translateY(-8px) scale(.975); transform-origin: calc(100% - 66px) top;
  transition: opacity .18s ease, transform .18s ease, visibility .18s;
}
:root[data-theme] .uc-message-center.is-open .uc-message-dropdown {
  opacity: 1; visibility: visible; pointer-events: auto; transform: translateY(0) scale(1);
}
:root[data-theme] .uc-message-dropdown::before {
  content: ""; position: absolute; top: -6px; right: 65px; width: 12px; height: 12px;
  border-top: 1px solid var(--glass-border); border-left: 1px solid var(--glass-border);
  background: var(--glass-bg-strong); transform: rotate(45deg);
}
:root[data-theme] .uc-message-dropdown__head {
  position: relative; display: flex; align-items: center; justify-content: space-between; gap: 12px;
  min-height: 61px; padding: 0 18px; border-bottom: 1px solid var(--md-divider);
}
:root[data-theme] .uc-message-dropdown__head > span {
  display: inline-flex; align-items: center; gap: 8px; color: var(--uc-ink); font-size: 14px; font-weight: 760;
}
:root[data-theme] .uc-message-dropdown__head .material-icons-outlined { color: var(--uc-focus); font-size: 20px; }
:root[data-theme] .uc-message-dropdown__head em {
  padding: 4px 9px; border-radius: 999px; background: rgba(var(--md-primary-rgb), .09);
  color: var(--uc-primary-deep); font-size: 10.5px; line-height: 1; font-style: normal; font-weight: 700;
}
:root[data-theme] .uc-message-recent { max-height: 414px; overflow-x: hidden; overflow-y: auto; scrollbar-width: thin; scrollbar-color: var(--md-outline) transparent; }
:root[data-theme] .uc-message-recent__item {
  position: relative; display: grid; grid-template-columns: 38px minmax(0, 1fr) 20px; align-items: center; gap: 10px;
  width: 100%; min-height: 82px; padding: 12px 14px 12px 16px; border: 0; border-bottom: 1px solid var(--md-divider);
  background: transparent; color: inherit; text-align: left; cursor: pointer;
  transition: background-color .15s ease, transform .15s ease;
}
:root[data-theme] .uc-message-recent__item:hover { background: rgba(var(--md-primary-rgb), .065); }
:root[data-theme] .uc-message-recent__item:focus-visible { outline: 2px solid var(--uc-focus); outline-offset: -3px; }
:root[data-theme] .uc-message-recent__item.is-loading { opacity: .58; cursor: wait; }
:root[data-theme] .uc-message-recent__mark {
  position: relative; display: grid; place-items: center; width: 38px; height: 38px; border-radius: 13px;
  background: var(--md-surface-2); color: var(--uc-ink-dis);
}
:root[data-theme] .uc-message-recent__mark .material-icons-outlined { font-size: 19px; }
:root[data-theme] .uc-message-recent__mark i {
  position: absolute; top: -1px; right: -1px; width: 8px; height: 8px; border: 2px solid var(--glass-bg-strong); border-radius: 50%;
  background: var(--md-error); opacity: 0;
}
:root[data-theme] .uc-message-recent__item.is-unread { background: linear-gradient(90deg, rgba(var(--md-primary-rgb), .075), transparent 75%); }
:root[data-theme] .uc-message-recent__item.is-unread .uc-message-recent__mark { background: rgba(var(--md-primary-rgb), .13); color: var(--uc-primary-deep); }
:root[data-theme] .uc-message-recent__item.is-unread .uc-message-recent__mark i { opacity: 1; }
:root[data-theme] .uc-message-recent__copy { display: flex; flex-direction: column; min-width: 0; }
:root[data-theme] .uc-message-recent__copy strong {
  overflow: hidden; color: var(--uc-ink); font-size: 12.5px; line-height: 1.45; font-weight: 690; text-overflow: ellipsis; white-space: nowrap;
}
:root[data-theme] .uc-message-recent__item.is-unread .uc-message-recent__copy strong { font-weight: 790; }
:root[data-theme] .uc-message-recent__copy small {
  display: -webkit-box; margin-top: 2px; overflow: hidden; color: var(--uc-ink-med); font-size: 10.5px; line-height: 1.42;
  -webkit-box-orient: vertical; -webkit-line-clamp: 2;
}
:root[data-theme] .uc-message-recent__copy time { margin-top: 4px; color: var(--uc-ink-dis); font-size: 9.5px; }
:root[data-theme] .uc-message-recent__arrow { color: var(--uc-ink-dis); font-size: 18px; transition: transform .15s ease, color .15s ease; }
:root[data-theme] .uc-message-recent__item:hover .uc-message-recent__arrow { color: var(--uc-focus); transform: translateX(2px); }
:root[data-theme] .uc-message-dropdown__all {
  display: flex; align-items: center; justify-content: center; gap: 8px; height: 52px;
  color: var(--uc-primary-deep); font-size: 12px; font-weight: 720; text-decoration: none;
  background: rgba(var(--md-primary-rgb), .035); transition: background-color .15s ease;
}
:root[data-theme] .uc-message-dropdown__all:hover { color: var(--uc-primary-deep); background: rgba(var(--md-primary-rgb), .095); }
:root[data-theme] .uc-message-dropdown__all .material-icons-outlined { font-size: 17px; transition: transform .15s ease; }
:root[data-theme] .uc-message-dropdown__all:hover .material-icons-outlined { transform: translateX(3px); }
:root[data-theme] .uc-message-recent__empty {
  display: flex; align-items: center; flex-direction: column; justify-content: center; min-height: 196px; padding: 30px; text-align: center;
}
:root[data-theme] .uc-message-recent__empty > .material-icons-outlined { color: var(--uc-ink-dis); font-size: 38px; }
:root[data-theme] .uc-message-recent__empty strong { margin-top: 9px; color: var(--uc-ink); font-size: 13px; }
:root[data-theme] .uc-message-recent__empty small { margin-top: 3px; color: var(--uc-ink-dis); font-size: 10.5px; }
:root[data-theme] .uc-message-recent__loading { display: flex; flex-direction: column; gap: 10px; padding: 18px; }
:root[data-theme] .uc-message-recent__loading i {
  display: block; height: 55px; border-radius: 13px;
  background: linear-gradient(100deg, var(--md-surface-2) 30%, rgba(var(--md-primary-rgb), .09) 45%, var(--md-surface-2) 60%);
  background-size: 220% 100%; animation: uc-message-loading 1.25s ease-in-out infinite;
}
:root[data-theme] .uc-message-recent__loading i:nth-child(2) { animation-delay: .12s; }
:root[data-theme] .uc-message-recent__loading i:nth-child(3) { animation-delay: .24s; }
@keyframes uc-message-loading { to { background-position-x: -220%; } }
:root[data-theme] .uc-message-recent__retry {
  display: flex; align-items: center; justify-content: center; flex-direction: column; gap: 8px;
  width: 100%; min-height: 170px; border: 0; background: transparent; color: var(--uc-ink-med); font-size: 11px; cursor: pointer;
}
:root[data-theme] .uc-message-recent__retry .material-icons-outlined { color: var(--uc-ink-dis); font-size: 34px; }
:root[data-theme] .uc-message-recent__retry strong { color: var(--uc-ink); font-size: 13px; }

/* 消息中心页面 */
:root[data-theme] .uc-message-hero {
  position: relative; display: flex; align-items: center; justify-content: space-between; min-height: 152px;
  margin-bottom: 18px; padding: 29px 34px; overflow: hidden;
  border: 1px solid var(--glass-border); border-radius: 24px;
  background: radial-gradient(circle at 87% 16%, rgba(var(--uc-focus-rgb), .15), transparent 30%), var(--glass-bg-strong);
  -webkit-backdrop-filter: var(--glass-filter-strong); backdrop-filter: var(--glass-filter-strong);
  box-shadow: var(--glass-hi), var(--glass-shadow);
}
:root[data-theme] .uc-message-hero h1 { margin: 6px 0 0; color: var(--uc-ink); font-size: clamp(26px, 3vw, 36px); line-height: 1.15; font-weight: 780; letter-spacing: -.7px; }
:root[data-theme] .uc-message-hero p { margin: 9px 0 0; color: var(--uc-ink-med); font-size: 13px; }
:root[data-theme] .uc-message-hero__eyebrow { display: inline-flex; align-items: center; gap: 6px; color: var(--uc-primary-deep); font-size: 10.5px; font-weight: 750; letter-spacing: .6px; }
:root[data-theme] .uc-message-hero__eyebrow .material-icons-outlined { font-size: 16px; }
:root[data-theme] .uc-message-hero__art {
  position: relative; display: grid; place-items: center; width: 78px; height: 78px; margin-right: 16px;
  border: 1px solid rgba(var(--md-primary-rgb), .22); border-radius: 25px;
  background: linear-gradient(145deg, rgba(var(--md-primary-rgb), .18), rgba(var(--uc-focus-rgb), .07));
  color: var(--uc-focus); transform: rotate(6deg); box-shadow: 0 16px 38px rgba(var(--md-primary-rgb), .16);
}
:root[data-theme] .uc-message-hero__art::before,
:root[data-theme] .uc-message-hero__art::after { content: ""; position: absolute; border: 1px solid rgba(var(--md-primary-rgb), .12); border-radius: 50%; }
:root[data-theme] .uc-message-hero__art::before { inset: -23px; }
:root[data-theme] .uc-message-hero__art::after { inset: -46px; }
:root[data-theme] .uc-message-hero__art .material-icons-outlined { font-size: 38px; }
:root[data-theme] .uc-message-board { overflow: hidden; }
:root[data-theme] .uc-message-board .uc-card__head { min-height: 70px; }
:root[data-theme] .uc-message-board__heading { display: flex; align-items: baseline; gap: 7px; min-width: 0; }
:root[data-theme] .uc-message-actions { display: flex; align-items: center; gap: 8px; margin-left: auto; }
:root[data-theme] .uc-message-action {
  display: inline-flex; align-items: center; justify-content: center; gap: 5px; min-height: 36px; padding: 0 12px;
  border: 1px solid var(--md-outline); border-radius: 10px; background: transparent;
  color: var(--uc-ink-med); font-size: 11.5px; font-weight: 650; cursor: pointer;
  transition: color .15s ease, border-color .15s ease, background-color .15s ease;
}
:root[data-theme] .uc-message-action .material-icons-outlined { font-size: 17px; }
:root[data-theme] .uc-message-action:hover { color: var(--uc-ink); border-color: var(--md-on-surface-med); background: var(--md-surface-2); }
:root[data-theme] .uc-message-action--clear:hover,
:root[data-theme] .uc-message-action--delete:hover { color: var(--md-error); border-color: color-mix(in srgb, var(--md-error) 55%, transparent); background: color-mix(in srgb, var(--md-error) 7%, transparent); }
:root[data-theme] .uc-message-board .uc-card__body { padding-top: 10px; }
:root[data-theme] .uc-message-board .table-switch-state { margin-bottom: 12px; }
:root[data-theme] .uc-message-cell { display: flex; align-items: center; gap: 10px; min-width: 250px; max-width: 510px; }
:root[data-theme] .uc-message-cell__dot { flex: 0 0 auto; width: 7px; height: 7px; border-radius: 50%; background: var(--md-outline); }
:root[data-theme] .uc-message-cell.is-unread .uc-message-cell__dot { background: var(--md-error); box-shadow: 0 0 0 4px color-mix(in srgb, var(--md-error) 11%, transparent); }
:root[data-theme] .uc-message-cell__copy { display: flex; flex-direction: column; min-width: 0; }
:root[data-theme] .uc-message-cell__copy strong { overflow: hidden; color: var(--uc-ink); font-size: 12.5px; font-weight: 610; text-overflow: ellipsis; white-space: nowrap; }
:root[data-theme] .uc-message-cell.is-unread .uc-message-cell__copy strong { font-weight: 780; }
:root[data-theme] .uc-message-cell__copy small { overflow: hidden; margin-top: 3px; color: var(--uc-ink-med); font-size: 10.5px; text-overflow: ellipsis; white-space: nowrap; }
:root[data-theme] .uc-message-status { display: inline-flex; align-items: center; gap: 4px; padding: 4px 9px; border-radius: 999px; font-size: 10.5px; font-weight: 680; white-space: nowrap; }
:root[data-theme] .uc-message-status .material-icons-outlined { font-size: 14px; }
:root[data-theme] .uc-message-status.is-unread { color: var(--uc-primary-deep); background: rgba(var(--md-primary-rgb), .12); }
:root[data-theme] .uc-message-status.is-read { color: var(--uc-ink-med); background: var(--md-surface-2); }
:root[data-theme] .uc-message-board .bootstrap-table td { vertical-align: middle; }
:root[data-theme] .uc-message-board .a-badge-glass.is-loading { opacity: .5; pointer-events: none; }
:root[data-theme] .uc-message-mobile { display: none; }

/* 暗色与窄屏 */
:root[data-theme="dark"] .uc-message-dropdown { box-shadow: var(--glass-hi), 0 24px 58px rgba(0, 0, 0, .42); }
:root[data-theme="dark"] .uc-message-recent__item.is-unread { background: linear-gradient(90deg, rgba(var(--md-primary-rgb), .12), transparent 80%); }
:root[data-theme="dark"] .uc-message-hero__art { box-shadow: 0 16px 38px rgba(0, 0, 0, .28); }

@media (max-width: 992px) {
  :root[data-theme] .uc-message-dropdown {
    position: fixed; top: 84px; right: 14px; left: auto; width: min(370px, calc(100vw - 28px));
    transform-origin: calc(100% - 128px) top;
  }
  :root[data-theme] .uc-message-dropdown::before { display: none; }
}
@media (max-width: 620px) {
  :root[data-theme] .uc-message-page { padding-top: 16px; }
  :root[data-theme] .uc-message-hero { min-height: 116px; padding: 22px 20px; border-radius: 19px; }
  :root[data-theme] .uc-message-hero h1 { font-size: 26px; }
  :root[data-theme] .uc-message-hero p { max-width: 245px; font-size: 11px; line-height: 1.55; }
  :root[data-theme] .uc-message-hero__art { width: 54px; height: 54px; margin-right: 4px; border-radius: 18px; }
  :root[data-theme] .uc-message-hero__art .material-icons-outlined { font-size: 28px; }
  :root[data-theme] .uc-message-hero__art::before, :root[data-theme] .uc-message-hero__art::after { display: none; }
  :root[data-theme] .uc-message-board { border-radius: 17px; }
  :root[data-theme] .uc-message-board .uc-card__head { align-items: flex-start; flex-wrap: wrap; min-height: 0; padding: 16px; }
  :root[data-theme] .uc-message-board__heading { align-items: flex-start; flex-direction: column; gap: 2px; }
  :root[data-theme] .uc-message-actions { flex: 0 0 100%; width: 100%; margin-top: 8px; }
  :root[data-theme] .uc-message-action { flex: 1; }
  :root[data-theme] .uc-message-board .uc-card__body { padding: 8px 12px 16px; }
  :root[data-theme] .uc-message-recent { max-height: min(414px, calc(100vh - 220px)); }
}

@media (max-width: 720px) {
  :root[data-theme] .uc-message-page[data-cartoon-message-page] {
    box-sizing: border-box; width: 100%; max-width: none; padding: 12px 12px calc(42px + env(safe-area-inset-bottom));
  }
  :root[data-theme] .uc-message-page[data-cartoon-message-page] *,
  :root[data-theme] .uc-message-page[data-cartoon-message-page] *::before,
  :root[data-theme] .uc-message-page[data-cartoon-message-page] *::after { box-sizing: border-box; }
  :root[data-theme] .uc-message-page[data-cartoon-message-page] .uc-message-hero {
    min-height: 126px; margin-bottom: 12px; padding: 22px 20px; border-radius: 22px;
  }
  :root[data-theme] .uc-message-page[data-cartoon-message-page] .uc-message-hero h1 { font-size: 27px; letter-spacing: -.5px; }
  :root[data-theme] .uc-message-page[data-cartoon-message-page] .uc-message-hero p { max-width: 235px; font-size: 11.5px; line-height: 1.55; }
  :root[data-theme] .uc-message-page[data-cartoon-message-page] .uc-message-hero__art { width: 58px; height: 58px; margin-right: 2px; border-radius: 19px; }
  :root[data-theme] .uc-message-page[data-cartoon-message-page] .uc-message-hero__art::before,
  :root[data-theme] .uc-message-page[data-cartoon-message-page] .uc-message-hero__art::after { display: none; }
  :root[data-theme] .uc-message-page[data-cartoon-message-page] .uc-message-board { border-radius: 22px; overflow: visible; }
  :root[data-theme] .uc-message-page[data-cartoon-message-page] .uc-card__head {
    align-items: center; flex-wrap: wrap; gap: 8px; min-height: 0; padding: 16px 14px 12px;
    border-radius: 22px 22px 0 0;
  }
  :root[data-theme] .uc-message-page[data-cartoon-message-page] .uc-card__head > .material-icons-outlined {
    display: grid; place-items: center; width: 42px; height: 42px; border-radius: 14px;
    background: rgba(var(--md-primary-rgb), .12); font-size: 21px;
  }
  :root[data-theme] .uc-message-page[data-cartoon-message-page] .uc-message-board__heading {
    align-items: flex-start; flex: 1 1 calc(100% - 54px); flex-direction: column; gap: 1px;
  }
  :root[data-theme] .uc-message-page[data-cartoon-message-page] .uc-card__title { font-size: 16px; }
  :root[data-theme] .uc-message-page[data-cartoon-message-page] .uc-card__sub {
    max-width: 100%; margin: 0; overflow: hidden; font-size: 10.5px; text-overflow: ellipsis; white-space: nowrap;
  }
  :root[data-theme] .uc-message-page[data-cartoon-message-page] .uc-message-actions {
    display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); flex: 0 0 100%; gap: 8px; width: 100%; margin: 4px 0 0;
  }
  :root[data-theme] .uc-message-page[data-cartoon-message-page] .uc-message-action {
    min-width: 0; min-height: 44px; padding: 0 10px; border-radius: 13px; font-size: 12px;
  }
  :root[data-theme] .uc-message-page[data-cartoon-message-page] .uc-message-action--delete {
    border-color: transparent; background: var(--md-surface-2); color: var(--uc-ink);
  }
  :root[data-theme] .uc-message-page[data-cartoon-message-page] .uc-message-action--clear {
    border-color: color-mix(in srgb, var(--md-error) 28%, transparent);
    background: color-mix(in srgb, var(--md-error) 9%, transparent); color: var(--md-error);
  }
  :root[data-theme] .uc-message-page[data-cartoon-message-page] .uc-card__body { padding: 12px 10px 10px; }
  :root[data-theme] .uc-message-page[data-cartoon-message-page] .bootstrap-table { display: none !important; }
  :root[data-theme] .uc-message-page[data-cartoon-message-page] .uc-message-mobile { display: block; min-width: 0; }
  :root[data-theme] .uc-message-mobile-search { display: grid; grid-template-columns: minmax(0, 1fr) 58px; gap: 8px; }
  :root[data-theme] .uc-message-mobile-search__field {
    display: grid; grid-template-columns: 24px minmax(0, 1fr) 44px; align-items: center; min-width: 0; min-height: 48px;
    padding: 0 5px 0 13px; border: 1px solid var(--md-outline); border-radius: 16px; background: var(--uc-field-bg);
    transition: border-color .16s ease, box-shadow .16s ease;
  }
  :root[data-theme] .uc-message-mobile-search__field:focus-within { border-color: var(--uc-focus); box-shadow: 0 0 0 3px rgba(var(--uc-focus-rgb), .11); }
  :root[data-theme] .uc-message-mobile-search__field > .material-icons-outlined { color: var(--uc-ink-dis); font-size: 20px; }
  :root[data-theme] .uc-message-mobile-search__field input {
    min-width: 0; height: 46px; padding: 0 6px; border: 0; outline: 0; background: transparent; color: var(--uc-ink); font-size: 16px;
  }
  :root[data-theme] .uc-message-mobile-search__field input::placeholder { color: var(--uc-ink-dis); }
  :root[data-theme] .uc-message-mobile-search__clear {
    display: grid; place-items: center; width: 44px; height: 44px; padding: 0; border: 0; background: transparent; color: var(--uc-ink-dis);
  }
  :root[data-theme] .uc-message-mobile-search__clear[hidden] { display: none; }
  :root[data-theme] .uc-message-mobile-search__clear .material-icons-outlined { font-size: 18px; }
  :root[data-theme] .uc-message-mobile-search__submit {
    min-height: 48px; padding: 0; border: 0; border-radius: 16px; background: var(--md-primary); color: var(--md-on-primary);
    font-size: 12.5px; font-weight: 760; box-shadow: 0 8px 18px rgba(var(--md-primary-rgb), .18);
  }
  :root[data-theme] .uc-message-mobile-filters { display: flex; gap: 8px; margin: 11px 0 0; overflow-x: auto; scrollbar-width: none; }
  :root[data-theme] .uc-message-mobile-filters::-webkit-scrollbar { display: none; }
  :root[data-theme] .uc-message-mobile-filters button {
    flex: 0 0 auto; min-width: 66px; min-height: 44px; padding: 0 16px; border: 1px solid transparent; border-radius: 14px;
    background: var(--md-surface-2); color: var(--uc-ink-med); font-size: 12px; font-weight: 680;
  }
  :root[data-theme] .uc-message-mobile-filters button.is-active {
    border-color: rgba(var(--md-primary-rgb), .18); background: rgba(var(--md-primary-rgb), .13); color: var(--uc-primary-deep);
  }
  :root[data-theme] .uc-message-mobile-meta {
    display: flex; align-items: center; justify-content: space-between; min-height: 38px; padding: 5px 4px 0;
    color: var(--uc-ink-med); font-size: 10.5px;
  }
  :root[data-theme] .uc-message-mobile-list { display: grid; gap: 10px; min-width: 0; }
  :root[data-theme] .uc-message-mobile-card {
    position: relative; display: grid; grid-template-columns: 0 minmax(0, 1fr); min-width: 0; overflow: hidden;
    border: 1px solid var(--glass-border-soft); border-radius: 18px; background: var(--glass-bg-strong);
    box-shadow: 0 7px 20px rgba(31, 38, 60, .07); transition: border-color .16s ease, transform .16s ease;
  }
  :root[data-theme] .uc-message-mobile-card.is-unread { border-color: rgba(var(--md-primary-rgb), .26); }
  :root[data-theme] .uc-message-mobile-card.is-unread::before {
    content: ""; position: absolute; top: 18px; left: 0; width: 3px; height: 34px; border-radius: 0 3px 3px 0; background: var(--md-primary);
  }
  :root[data-theme] .uc-message-mobile-card.is-selected { border-color: var(--uc-focus); box-shadow: 0 0 0 2px rgba(var(--uc-focus-rgb), .12); }
  :root[data-theme] .uc-message-mobile-card__select {
    display: none; place-items: center; align-self: stretch; width: 48px; min-height: 44px; padding: 0; border: 0;
    background: transparent; color: var(--uc-focus);
  }
  :root[data-theme] .is-message-selecting .uc-message-mobile-card { grid-template-columns: 48px minmax(0, 1fr); }
  :root[data-theme] .is-message-selecting .uc-message-mobile-card__select { display: grid; }
  :root[data-theme] .uc-message-mobile-card__select .material-icons-outlined { font-size: 23px; }
  :root[data-theme] .uc-message-mobile-card__content {
    display: flex; flex-direction: column; min-width: 0; padding: 16px 15px 14px; border: 0; background: transparent; color: inherit; text-align: left;
  }
  :root[data-theme] .uc-message-mobile-card__topline { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
  :root[data-theme] .uc-message-mobile-card__topline time { overflow: hidden; color: var(--uc-ink-dis); font-size: 9.5px; text-overflow: ellipsis; white-space: nowrap; }
  :root[data-theme] .uc-message-mobile-card__state {
    display: inline-flex; align-items: center; gap: 4px; flex: 0 0 auto; color: var(--uc-ink-med); font-size: 10px; font-weight: 720;
  }
  :root[data-theme] .uc-message-mobile-card.is-unread .uc-message-mobile-card__state { color: var(--uc-primary-deep); }
  :root[data-theme] .uc-message-mobile-card__state .material-icons-outlined { font-size: 15px; }
  :root[data-theme] .uc-message-mobile-card__content > strong {
    margin-top: 10px; overflow: hidden; color: var(--uc-ink); font-size: 14px; line-height: 1.45; font-weight: 720; text-overflow: ellipsis; white-space: nowrap;
  }
  :root[data-theme] .uc-message-mobile-card.is-unread .uc-message-mobile-card__content > strong { font-weight: 820; }
  :root[data-theme] .uc-message-mobile-card__summary {
    display: -webkit-box; margin-top: 5px; overflow: hidden; color: var(--uc-ink-med); font-size: 11px; line-height: 1.55;
    overflow-wrap: anywhere; -webkit-box-orient: vertical; -webkit-line-clamp: 2;
  }
  :root[data-theme] .uc-message-mobile-card__actions {
    grid-column: 2; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); border-top: 1px solid var(--md-divider);
  }
  :root[data-theme] .uc-message-mobile-card__actions button {
    display: inline-flex; align-items: center; justify-content: center; gap: 5px; min-width: 0; min-height: 44px; padding: 0 9px;
    border: 0; background: transparent; color: var(--uc-ink-med); font-size: 11px; font-weight: 680;
  }
  :root[data-theme] .uc-message-mobile-card__actions button + button { border-left: 1px solid var(--md-divider); }
  :root[data-theme] .uc-message-mobile-card__actions button.is-danger { color: var(--md-error); }
  :root[data-theme] .uc-message-mobile-card__actions .material-icons-outlined { font-size: 17px; }
  :root[data-theme] .is-message-selecting .uc-message-mobile-card__actions { display: none; }
  :root[data-theme] .uc-message-mobile-loading { display: grid; gap: 10px; }
  :root[data-theme] .uc-message-mobile-loading i {
    display: block; height: 136px; border-radius: 18px;
    background: linear-gradient(100deg, var(--md-surface-2) 30%, rgba(var(--md-primary-rgb), .09) 45%, var(--md-surface-2) 60%);
    background-size: 220% 100%; animation: uc-message-loading 1.25s ease-in-out infinite;
  }
  :root[data-theme] .uc-message-mobile-loading i:nth-child(2) { animation-delay: .12s; }
  :root[data-theme] .uc-message-mobile-loading i:nth-child(3) { animation-delay: .24s; }
  :root[data-theme] .uc-message-mobile-feedback {
    display: flex; align-items: center; flex-direction: column; justify-content: center; min-height: 246px; padding: 34px 18px; text-align: center;
  }
  :root[data-theme] .uc-message-mobile-feedback > .material-icons-outlined { color: var(--uc-ink-dis); font-size: 44px; }
  :root[data-theme] .uc-message-mobile-feedback strong { margin-top: 12px; color: var(--uc-ink); font-size: 14px; }
  :root[data-theme] .uc-message-mobile-feedback small { max-width: 250px; margin-top: 5px; color: var(--uc-ink-med); font-size: 11px; line-height: 1.55; }
  :root[data-theme] .uc-message-mobile-feedback button {
    display: inline-flex; align-items: center; justify-content: center; gap: 6px; min-height: 44px; margin-top: 16px; padding: 0 18px;
    border: 0; border-radius: 14px; background: var(--md-primary); color: var(--md-on-primary); font-size: 12px; font-weight: 730;
  }
  :root[data-theme] .uc-message-mobile-feedback button .material-icons-outlined { font-size: 18px; }
  :root[data-theme] .uc-message-mobile-pagination {
    display: grid; grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); align-items: center; gap: 8px; margin-top: 12px;
  }
  :root[data-theme] .uc-message-mobile-pagination[hidden] { display: none; }
  :root[data-theme] .uc-message-mobile-pagination button {
    display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 0 10px; border: 1px solid var(--md-outline);
    border-radius: 14px; background: var(--md-surface-2); color: var(--uc-ink); font-size: 11px; font-weight: 680;
  }
  :root[data-theme] .uc-message-mobile-pagination button:disabled { opacity: .4; }
  :root[data-theme] .uc-message-mobile-pagination button .material-icons-outlined { font-size: 18px; }
  :root[data-theme] .uc-message-mobile-pagination > span { min-width: 44px; color: var(--uc-ink-med); font-size: 10.5px; text-align: center; }
  :root[data-theme] .uc-message-selection-bar {
    position: sticky; z-index: 20; bottom: max(10px, env(safe-area-inset-bottom)); display: grid;
    grid-template-columns: 52px minmax(66px, 1fr) auto auto; align-items: center; gap: 5px; min-height: 60px; margin: 12px 0 0; padding: 7px;
    border: 1px solid var(--glass-border); border-radius: 19px; background: var(--glass-bg-strong);
    -webkit-backdrop-filter: var(--glass-filter-strong); backdrop-filter: var(--glass-filter-strong); box-shadow: 0 14px 34px rgba(31, 38, 60, .18);
  }
  :root[data-theme] .uc-message-selection-bar[hidden] { display: none; }
  :root[data-theme] .uc-message-selection-bar > span { color: var(--uc-ink); font-size: 11px; font-weight: 720; white-space: nowrap; }
  :root[data-theme] .uc-message-selection-bar button {
    min-width: 44px; min-height: 44px; padding: 0 8px; border: 0; border-radius: 13px; background: var(--md-surface-2);
    color: var(--uc-ink-med); font-size: 10.5px; font-weight: 700; white-space: nowrap;
  }
  :root[data-theme] .uc-message-selection-bar .uc-message-selection-bar__delete {
    display: inline-flex; align-items: center; justify-content: center; gap: 3px; background: color-mix(in srgb, var(--md-error) 12%, transparent); color: var(--md-error);
  }
  :root[data-theme] .uc-message-selection-bar .uc-message-selection-bar__delete:disabled { opacity: .42; }
  :root[data-theme] .uc-message-selection-bar .material-icons-outlined { font-size: 17px; }
  :root[data-theme] .uc-message-page[data-cartoon-message-page] button { font-family: inherit; cursor: pointer; }
  :root[data-theme] .uc-message-page[data-cartoon-message-page] button:disabled { cursor: default; }
  :root[data-theme] .uc-message-page[data-cartoon-message-page] button:focus-visible {
    outline: 2px solid var(--uc-focus); outline-offset: 2px;
  }
  :root[data-theme="dark"] .uc-message-mobile-card { box-shadow: 0 8px 24px rgba(0, 0, 0, .18); }
}

@media (max-width: 350px) {
  :root[data-theme] .uc-message-page[data-cartoon-message-page] { padding-right: 8px; padding-left: 8px; }
  :root[data-theme] .uc-message-page[data-cartoon-message-page] .uc-message-hero { padding-right: 16px; padding-left: 16px; }
  :root[data-theme] .uc-message-page[data-cartoon-message-page] .uc-message-hero p { max-width: 205px; }
  :root[data-theme] .uc-message-page[data-cartoon-message-page] .uc-message-hero__art { width: 50px; height: 50px; }
  :root[data-theme] .uc-message-selection-bar { grid-template-columns: 44px minmax(54px, 1fr) auto 44px; }
  :root[data-theme] .uc-message-selection-bar button { padding: 0 5px; }
  :root[data-theme] .uc-message-selection-bar__delete { font-size: 0 !important; }
}
@media (max-width: 440px) {
  :root[data-theme] .uc-nav__right { gap: 2px; }
  :root[data-theme] .uc-theme-btn, :root[data-theme] .uc-message-btn { width: 38px; height: 38px; }
  :root[data-theme] body.uc-body:has(.uc-message-page[data-cartoon-message-page]) .uc-message-btn { width: 44px; height: 44px; }
  :root[data-theme] .uc-message-dropdown { top: 78px; right: 10px; width: calc(100vw - 20px); border-radius: 18px; }
  :root[data-theme] .uc-message-dropdown__head { min-height: 56px; padding: 0 15px; }
  :root[data-theme] .uc-message-recent__item { min-height: 78px; padding: 10px 12px; }
  :root[data-theme] .uc-message-hero__eyebrow { display: none; }
  :root[data-theme] .uc-message-hero h1 { margin-top: 0; }
}

@media (prefers-reduced-motion: reduce) {
  :root[data-theme] .uc-message-btn,
  :root[data-theme] .uc-message-badge,
  :root[data-theme] .uc-message-drawer-badge,
  :root[data-theme] .uc-message-dropdown,
  :root[data-theme] .uc-message-recent__item,
  :root[data-theme] .uc-message-recent__arrow,
  :root[data-theme] .uc-message-dropdown__all .material-icons-outlined { transition: none !important; }
  :root[data-theme] .uc-message-btn.is-ringing .uc-message-btn__icon,
  :root[data-theme] .uc-message-recent__loading i { animation: none !important; }
}

/* =============================================================================
   代理IP购买页(ProxyStore /plugin/proxyStore/proxy/index)：按钮 + uc-proxy* 分区
   原模板只用了 layui 表单类，按钮/分区类此前在玻璃皮里未定义导致裸样式，这里补齐并对齐玻璃卡片。
   ============================================================================= */
:root[data-theme] .uc-btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 6px;
  min-height: 40px; padding: 0 16px; border-radius: 12px;
  border: 1px solid var(--glass-border);
  background: var(--glass-bg-strong); color: var(--uc-ink);
  font-size: 13.5px; font-weight: 600; line-height: 1; cursor: pointer; text-decoration: none;
  -webkit-backdrop-filter: var(--glass-filter); backdrop-filter: var(--glass-filter);
  box-shadow: var(--glass-hi);
  transition: background-color .18s ease, color .18s ease, border-color .18s ease, box-shadow .18s ease, transform .12s ease;
}
:root[data-theme] .uc-btn:hover { background: rgba(var(--md-primary-rgb), .08); border-color: rgba(var(--md-primary-rgb), .28); }
:root[data-theme] .uc-btn:active { transform: translateY(1px); }
:root[data-theme] .uc-btn:disabled { opacity: .5; cursor: default; transform: none; }
:root[data-theme] .uc-btn .material-icons-outlined,
:root[data-theme] .uc-btn .material-icons { font-size: 19px; }

:root[data-theme] .uc-btn--primary {
  border-color: transparent;
  background: linear-gradient(135deg, var(--md-primary), var(--uc-primary-deep));
  color: var(--md-on-primary);
  box-shadow: 0 6px 16px rgba(var(--md-primary-rgb), .32);
}
:root[data-theme] .uc-btn--primary:hover { color: var(--md-on-primary); filter: brightness(1.07); }

:root[data-theme] .uc-btn--ghost {
  background: transparent; border-color: var(--glass-border-soft); color: var(--uc-ink-med); box-shadow: none;
}
:root[data-theme] .uc-btn--ghost:hover { background: rgba(var(--md-primary-rgb), .08); color: var(--uc-primary-deep); }

:root[data-theme] .uc-proxy { display: flex; flex-direction: column; gap: 26px; }
:root[data-theme] .uc-proxy__section { display: flex; flex-direction: column; gap: 14px; }
:root[data-theme] .uc-proxy__section + .uc-proxy__section { padding-top: 22px; border-top: 1px solid var(--glass-border-soft); }
:root[data-theme] .uc-proxy__title {
  display: flex; align-items: center; gap: 10px; font-size: 15px; font-weight: 700; color: var(--uc-ink);
}
:root[data-theme] .uc-proxy__title .uc-btn { margin-left: auto; }

:root[data-theme] .uc-proxy__grid {
  display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px 20px;
}
:root[data-theme] .uc-proxy__actions { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; margin-top: 2px; }
:root[data-theme] .uc-proxy__price { font-size: 15px; font-weight: 700; color: var(--uc-primary-deep); margin-left: auto; }

/* 让 layui 表单在玻璃卡片里贴合玻璃皮(标签顶置、无浮动) */
:root[data-theme] .uc-proxy .layui-form-item { display: flex; flex-direction: column; gap: 6px; margin-bottom: 0; }
:root[data-theme] .uc-proxy .layui-form-label {
  width: auto; float: none; padding: 0; text-align: left; font-size: 12.5px; font-weight: 600; color: var(--uc-ink-med);
}
:root[data-theme] .uc-proxy .layui-input-block { margin-left: 0; }
:root[data-theme] .uc-proxy .layui-input-inline { width: auto; }
:root[data-theme] .uc-proxy .layui-input,
:root[data-theme] .uc-proxy .layui-select {
  height: 40px; border-radius: 12px; border: 1px solid var(--glass-border-soft);
  background: var(--uc-field-bg); color: var(--uc-ink); padding-left: 12px;
}
:root[data-theme] .uc-proxy .layui-input:focus,
:root[data-theme] .uc-proxy .layui-select:focus {
  border-color: var(--uc-focus); box-shadow: 0 0 0 3px rgba(var(--uc-focus-rgb), .12); outline: none;
}
:root[data-theme] .uc-proxy .layui-form-select .layui-input { padding-right: 28px; }

@media (max-width: 640px) {
  :root[data-theme] .uc-proxy__grid { grid-template-columns: 1fr; gap: 12px; }
  :root[data-theme] .uc-proxy__actions { justify-content: flex-start; }
  :root[data-theme] .uc-proxy__price { margin-left: 0; width: 100%; text-align: right; }
}

/* =============================================================================
   代理IP购买页 2.0：旗帜卡片 + 胶囊点选 + 步进器（无下拉框），及代理/订单列表表格
   ============================================================================= */
:root[data-theme] .uc-proxy__actions .uc-proxy__price { margin: 0 auto 0 0; }
:root[data-theme] .uc-proxy [hidden] { display: none !important; }
:root[data-theme] .uc-proxy__hint { margin-left: 8px; font-size: 11.5px; font-weight: 500; color: var(--uc-ink-dis); }
:root[data-theme] .uc-proxy__note { padding: 8px 0; color: var(--uc-ink-dis); font-size: 12.5px; }
:root[data-theme] .uc-proxy__loading { display: flex; align-items: center; gap: 10px; padding: 8px 0; color: var(--uc-ink-med); font-size: 13px; }
:root[data-theme] .uc-proxy__spinner {
  width: 18px; height: 18px; border: 2px solid rgba(var(--md-primary-rgb), .2); border-top-color: var(--md-primary);
  border-radius: 50%; flex: 0 0 auto; animation: uc-proxy-spin .8s linear infinite;
}
@keyframes uc-proxy-spin { to { transform: rotate(360deg); } }

/* 旗帜卡片 */
:root[data-theme] .uc-flags { display: grid; grid-template-columns: repeat(auto-fill, minmax(96px, 1fr)); gap: 10px; }
:root[data-theme] .uc-flag {
  display: flex; flex-direction: column; align-items: center; gap: 8px; padding: 14px 8px 12px;
  border: 1px solid var(--glass-border-soft); border-radius: 14px; background: var(--glass-bg-soft);
  color: var(--uc-ink-med); cursor: pointer;
  transition: border-color .16s ease, background-color .16s ease, color .16s ease, box-shadow .16s ease, transform .12s ease;
}
:root[data-theme] .uc-flag:hover { border-color: rgba(var(--md-primary-rgb), .28); color: var(--uc-primary-deep); transform: translateY(-1px); }
:root[data-theme] .uc-flag.is-active {
  border-color: var(--md-primary); background: rgba(var(--md-primary-rgb), .10); color: var(--uc-primary-deep);
  box-shadow: 0 0 0 2px rgba(var(--md-primary-rgb), .12);
}
:root[data-theme] .uc-flag__media { position: relative; display: flex; align-items: center; justify-content: center; width: 40px; height: 30px; }
:root[data-theme] .uc-flag__img { width: 40px; height: 30px; border-radius: 5px; object-fit: cover; box-shadow: 0 2px 6px rgba(0, 0, 0, .14); background: #eef0f2; }
:root[data-theme] .uc-flag__code {
  display: none; width: 40px; height: 30px; align-items: center; justify-content: center; border-radius: 5px;
  background: rgba(var(--md-primary-rgb), .14); color: var(--uc-primary-deep); font-size: 12px; font-weight: 700; letter-spacing: .3px;
}
:root[data-theme] .uc-flag__name { font-size: 12px; font-weight: 600; line-height: 1.2; text-align: center; overflow: hidden; max-width: 100%; }

/* 胶囊点选 */
:root[data-theme] .uc-pills { display: flex; flex-wrap: wrap; gap: 8px; }
:root[data-theme] .uc-pill {
  display: inline-flex; align-items: center; gap: 6px; min-height: 38px; padding: 0 16px;
  border: 1px solid var(--glass-border-soft); border-radius: 999px; background: var(--glass-bg-soft);
  color: var(--uc-ink-med); font-size: 13px; font-weight: 600; cursor: pointer;
  transition: border-color .16s ease, background-color .16s ease, color .16s ease, box-shadow .16s ease, transform .12s ease;
}
:root[data-theme] .uc-pill small { font-size: 11px; opacity: .82; font-weight: 500; }
:root[data-theme] .uc-pill:hover { border-color: rgba(var(--md-primary-rgb), .28); color: var(--uc-primary-deep); }
:root[data-theme] .uc-pill.is-active {
  border-color: var(--md-primary); background: linear-gradient(135deg, var(--md-primary), var(--uc-primary-deep));
  color: var(--md-on-primary); box-shadow: 0 4px 12px rgba(var(--md-primary-rgb), .3);
}
:root[data-theme] .uc-pill.is-active small { opacity: .92; }
:root[data-theme] .uc-pills--city .uc-pill { border-radius: 12px; }

/* 数量步进器 */
:root[data-theme] .uc-stepper {
  display: inline-flex; align-items: center; border: 1px solid var(--glass-border-soft); border-radius: 12px;
  overflow: hidden; background: var(--glass-bg-soft); width: fit-content;
}
:root[data-theme] .uc-stepper__btn { width: 42px; height: 40px; border: 0; background: transparent; color: var(--uc-ink); font-size: 20px; line-height: 1; cursor: pointer; }
:root[data-theme] .uc-stepper__btn:hover { background: rgba(var(--md-primary-rgb), .08); }
:root[data-theme] .uc-stepper__input {
  width: 64px; height: 40px; border: 0; border-left: 1px solid var(--glass-border-soft); border-right: 1px solid var(--glass-border-soft);
  background: transparent; text-align: center; color: var(--uc-ink); font-size: 15px; font-weight: 700;
  -moz-appearance: textfield; appearance: textfield;
}
:root[data-theme] .uc-stepper__input::-webkit-outer-spin-button,
:root[data-theme] .uc-stepper__input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
:root[data-theme] .uc-stepper__input:focus { outline: none; }

/* 小号按钮（表格内续费） */
:root[data-theme] .uc-btn--sm { min-height: 32px; padding: 0 12px; border-radius: 9px; font-size: 12px; }

/* 代理/订单列表表格 */
:root[data-theme] .uc-table { width: 100%; overflow-x: auto; }
:root[data-theme] .uc-table__table { width: 100%; border-collapse: collapse; min-width: 640px; }
:root[data-theme] .uc-table__table th,
:root[data-theme] .uc-table__table td { padding: 11px 14px; text-align: left; border-bottom: 1px solid var(--glass-border-soft); font-size: 12.5px; color: var(--uc-ink); white-space: nowrap; }
:root[data-theme] .uc-table__table th { color: var(--uc-ink-dis); font-size: 11.5px; font-weight: 700; }
:root[data-theme] .uc-table__table tbody tr:hover { background: rgba(var(--md-primary-rgb), .04); }
:root[data-theme] .uc-table__table td:last-child { white-space: normal; }
@media (max-width: 640px) {
  :root[data-theme] .uc-flags { grid-template-columns: repeat(auto-fill, minmax(84px, 1fr)); gap: 8px; }
  :root[data-theme] .uc-pill { min-height: 36px; padding: 0 14px; }
}
