/* 协会平台全站视觉基线（表现层；监票大屏不加载） */
:root {
  --site-blue: #2f80d8;
  --site-blue-hover: #216cc0;
  --site-blue-soft: #eaf4ff;
  --site-ink: #163a63;
  --site-muted: #526a84;
  --site-helper: #6e88a4;
  --site-icon: #5d7ea6;
  --site-border: #dce8f5;
  --site-border-strong: #c7d9eb;
  --site-surface: #fff;
  --site-surface-soft: #f4f8fc;
  --site-success: #188a67;
  --site-warning: #b87800;
  --site-danger: #c44747;
  --site-shadow: 0 2px 10px rgba(31, 91, 145, .07);
}
[data-ui="enterprise-v2"] {
  --type-body-leading: 1.5714;
  --radius-sm: 8px;
  --radius: 10px;
  --radius-lg: 12px;
  --radius-xl: 12px;
  --success: var(--ui-success, #188a67);
  --warning: var(--ui-warning, #b87800);
  --danger: var(--ui-danger, #c44747);
}
:where(.btn, button.btn, a.btn) {
  min-height: 40px; border-radius: 8px; border: 1px solid var(--site-border-strong);
  background: var(--site-surface); color: var(--site-ink); font-weight: 600; box-shadow: none;
  transition: background .18s ease, border-color .18s ease, color .18s ease, box-shadow .18s ease;
}
:where(.btn, button.btn, a.btn):hover:not(:disabled) {
  transform: none; background: var(--site-blue-soft); border-color: var(--site-blue);
  color: var(--site-blue-hover); box-shadow: var(--site-shadow);
}
:where(.btn.btn-primary, button.btn-primary, a.btn-primary) {
  background: var(--site-blue); border-color: var(--site-blue); color: #fff;
  box-shadow: var(--site-shadow);
}
:where(.btn.btn-primary, button.btn-primary, a.btn-primary):hover:not(:disabled) {
  background: var(--site-blue-hover); border-color: var(--site-blue-hover); color: #fff;
}
:where(.primary) {
  min-height: 40px; border-radius: 8px; border: 1px solid var(--site-blue);
  background: var(--site-blue); color: #fff; box-shadow: var(--site-shadow);
}
:where(.primary):hover:not(:disabled) { background: var(--site-blue-hover); border-color: var(--site-blue-hover); }
:where(.secondary) {
  min-height: 40px; border-radius: 8px; border: 1px solid var(--site-border-strong);
  background: var(--site-surface); color: var(--site-ink);
}
:where(.secondary):hover:not(:disabled) { background: var(--site-blue-soft); border-color: var(--site-blue); color: var(--site-blue-hover); }
:where(input:not([type="checkbox"]):not([type="radio"]), select, textarea, .input, .select, .textarea, .form-control) {
  min-height: 40px; border: 1px solid var(--site-border-strong); border-radius: 8px;
  background: var(--site-surface); color: var(--site-ink); box-sizing: border-box;
}
:where(input:not([type="checkbox"]):not([type="radio"]), select, textarea, .input, .select, .textarea, .form-control):focus {
  outline: none; border-color: var(--site-blue); box-shadow: 0 0 0 3px rgba(47, 128, 216, .12);
}
:where(input, select, textarea)::placeholder { color: var(--site-helper); }
:where(.card, .panel, .table-wrap, .list-card, .surface-card) {
  border-color: var(--site-border); background: var(--site-surface); box-shadow: var(--site-shadow);
}
:where(table) th { background: var(--site-surface-soft); color: var(--site-muted); border-color: var(--site-border); font-weight: 700; }
:where(table) td { border-color: var(--site-border); }
:where(table tbody tr:hover) { background: #f8fbff; }
:where(.badge, .tag, .chip, .status, .pill) { border-radius: 999px; }
:where(.nav-item, .sidebar a, .side-nav a, .toolbar, .topbar, .card-head, .btn) svg {
  color: var(--site-icon); stroke-width: 1.25; stroke-linecap: round; stroke-linejoin: round;
}
:where(.nav-item.active, .side-nav a.active, .btn-primary) svg { color: currentColor; }
:where(.toolbar, .filter-bar, .search-bar) { gap: 10px; border-color: var(--site-border); background: var(--site-surface); box-shadow: var(--site-shadow); }
:where(.page-title, .card-title, h1, h2, h3) { color: var(--site-ink); }
:where(.muted, .text-muted, .helper, .cell-sub, .card-sub) { color: var(--site-helper); }
.site-cloud-sync {
  position: fixed; right: 16px; bottom: 16px; z-index: 99999;
  display: inline-flex; align-items: center; gap: 7px; min-height: 40px;
  padding: 0 14px; border: 1px solid var(--site-border-strong); border-radius: 8px;
  background: var(--site-surface); color: var(--site-ink); font: 600 13px/1 var(--font-sans, "Microsoft YaHei", sans-serif);
  cursor: pointer; box-shadow: var(--site-shadow);
  transition: background .18s ease, border-color .18s ease, color .18s ease, box-shadow .18s ease;
}
.site-cloud-sync:hover:not(:disabled) { background: var(--site-blue-soft); border-color: var(--site-blue); color: var(--site-blue-hover); box-shadow: var(--site-shadow); }
.site-cloud-sync:disabled { opacity: .65; cursor: wait; }
.site-cloud-sync__icon { display: inline-flex; width: 16px; height: 16px; color: var(--site-icon); }
.site-cloud-sync__icon svg { width: 16px; height: 16px; }
@media (max-width: 720px) { .site-cloud-sync { right: 12px; bottom: 12px; min-height: 44px; } }
@media (max-width: 720px) {
  :where(.toolbar, .filter-bar, .search-bar) { align-items: stretch; }
  :where(.toolbar > *, .filter-bar > *, .search-bar > *) { min-width: 0; max-width: 100%; }
  :where(.btn, button.btn, a.btn), :where(.primary, .secondary) { min-height: 44px; }
}

/* 旧模块存在同名规则，以下是最后加载的确定性收口。 */
.btn,
button.btn,
a.btn {
  min-height: 40px;
  border-radius: 8px;
  box-shadow: none;
}
.btn-primary,
button.btn-primary,
a.btn-primary {
  background: var(--site-blue) !important;
  border: 1px solid var(--site-blue) !important;
  color: #fff !important;
  box-shadow: var(--site-shadow) !important;
}
.btn-primary:hover:not(:disabled),
button.btn-primary:hover:not(:disabled),
a.btn-primary:hover:not(:disabled) {
  background: var(--site-blue-hover) !important;
  border-color: var(--site-blue-hover) !important;
  box-shadow: var(--site-shadow) !important;
}

/* =====================================================================
   Enterprise V2 全站壳层与版式基线
   只负责表现层：所有入口共享颜色、字体、间距、控件和状态语言；
   管理后台、门户和角色中心保留各自信息架构，不改变业务功能。
   ===================================================================== */
[data-ui="enterprise-v2"] {
  --ui-page: #f4f8fd;
  --ui-surface: #ffffff;
  --ui-surface-soft: #f7faff;
  --ui-ink: #163a63;
  --ui-muted: #526a84;
  --ui-helper: #6e88a4;
  --ui-line: #dce8f5;
  --ui-line-strong: #c7d9eb;
  --ui-blue: #2f80d8;
  --ui-blue-hover: #216cc0;
  --ui-blue-soft: #eaf4ff;
  --ui-icon: #5d7ea6;
  --ui-success: #188a67;
  --ui-warning: #b87800;
  --ui-danger: #c44747;
  --ui-radius-sm: 8px;
  --ui-radius: 12px;
  --ui-radius-lg: 16px;
  --ui-shadow: 0 2px 10px rgba(31, 91, 145, .07);
  --ui-shadow-hover: 0 8px 22px rgba(31, 91, 145, .12);

  /* 旧模块变量别名：让既有业务布局自动消费同一套 Enterprise V2 真值。 */
  --bg: var(--ui-page);
  --bg-primary: var(--ui-page);
  --surface: var(--ui-surface);
  --surface-solid: var(--ui-surface);
  --surface-2: var(--ui-surface-soft);
  --border: var(--ui-line);
  --border-strong: var(--ui-line-strong);
  --text: var(--ui-ink);
  --text-2: var(--ui-muted);
  --text-3: var(--ui-helper);
  --heading-color: var(--ui-ink);
  --body-color: var(--ui-muted);
  --helper-color: var(--ui-helper);
  --accent: var(--ui-blue);
  --accent-2: var(--ui-blue-hover);
  --accent-3: var(--ui-blue);
  --primary: var(--ui-blue);
  --primary-color: var(--ui-blue);
  --primary-soft: var(--ui-blue-soft);
  --icon-color: var(--ui-icon);
  --icon-active-color: var(--ui-blue);
  --icon-disabled-color: var(--ui-line-strong);
  --danger: var(--ui-danger);
  --warning: var(--ui-warning);
  --success: var(--ui-success);
  --font-sans: "Microsoft YaHei", "PingFang SC", "Noto Sans SC", "Source Han Sans SC", sans-serif;
}
[data-ui="enterprise-v2"][data-theme="dark"] {
  --ui-page: #0a1a2e;
  --ui-surface: #0f2742;
  --ui-surface-soft: #14304f;
  --ui-ink: #eaf1f8;
  --ui-muted: #c2d3e3;
  --ui-helper: #93aac0;
  --ui-line: rgba(150, 180, 210, .18);
  --ui-line-strong: rgba(150, 180, 210, .30);
  --ui-blue: #5b9be0;
  --ui-blue-hover: #75b2f0;
  --ui-blue-soft: rgba(91, 155, 224, .18);
  --ui-icon: #9db9d6;
  --ui-success: #67c7a7;
  --ui-warning: #e5b45f;
  --ui-danger: #ee8e8e;
  --ui-shadow: 0 12px 32px -14px rgba(0, 0, 0, .6);
  --ui-shadow-hover: 0 18px 38px -18px rgba(0, 0, 0, .7);
}
[data-ui="enterprise-v2"] {
  background: var(--ui-page);
  color: var(--ui-ink);
  font-family: var(--font-sans);
  letter-spacing: 0;
  line-height: 1.5714;
}
[data-ui="enterprise-v2"] body {
  background: var(--ui-page) !important;
  color: var(--ui-ink) !important;
  font-family: var(--font-sans);
  line-height: 1.5714;
}
[data-ui="enterprise-v2"] :where(input:not([type="checkbox"]):not([type="radio"]), select, textarea, .input, .select, .textarea, .form-control) {
  font-size: 14px;
  line-height: 22px;
}
[data-ui="enterprise-v2"] :where(table, .data-table, .tbl, .ta-table, .ewb-table, .acw-table, .ecc-table) {
  font-size: 13px;
  line-height: 20px;
  font-variant-numeric: tabular-nums;
}
[data-ui="enterprise-v2"] :where(.metric b, .kpi-value, .kpi-number, .ta-stat-num, .ewb-stat b, .ecc-kpis b) {
  font-variant-numeric: tabular-nums;
  letter-spacing: .01em;
}
[data-ui="enterprise-v2"] :where(h1, h2, h3, h4, .page-title, .card-title, .ta-section-title) {
  color: var(--ui-ink);
  letter-spacing: .01em;
}
[data-ui="enterprise-v2"] :where(.muted, .text-muted, .helper, .card-sub, .ta-section-sub, p) {
  color: var(--ui-helper);
}
[data-ui="enterprise-v2"] :where(.app, .ta-layout) { background: var(--ui-page); }

/* 管理壳：导航、顶栏、内容区保持同一垂直节奏。 */
[data-ui="enterprise-v2"] :where(.sidebar, .ta-sidebar, body > .sidebar) {
  background: var(--ui-surface);
  border-color: var(--ui-line);
  box-shadow: 1px 0 0 rgba(31, 91, 145, .025);
}
[data-ui="enterprise-v2"] :where(.topbar, .ta-topbar) {
  background: var(--ui-surface);
  border-color: var(--ui-line);
  min-height: 72px;
  box-shadow: 0 1px 0 rgba(31, 91, 145, .02);
}
[data-ui="enterprise-v2"] :where(.content, .ta-main) {
  padding-top: 28px;
  padding-bottom: 40px;
}
[data-ui="enterprise-v2"] :where(.nav-item, .ta-nav) {
  color: var(--ui-muted);
  border-radius: var(--ui-radius-sm);
  transition: background .18s ease, color .18s ease;
}
[data-ui="enterprise-v2"] :where(.nav-item:hover, .ta-nav:hover) {
  background: var(--ui-blue-soft);
  color: var(--ui-blue-hover);
  transform: none;
}
[data-ui="enterprise-v2"] :where(.nav-item.active, .ta-nav.active) {
  background: var(--ui-blue-soft);
  color: var(--ui-blue);
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--ui-blue) 20%, transparent);
}
[data-ui="enterprise-v2"] :where(.nav-item svg, .nav-svg, .ta-nav svg) {
  color: var(--ui-icon);
  stroke-width: 1.25;
  stroke-linecap: round;
  stroke-linejoin: round;
}
[data-ui="enterprise-v2"] :where(.nav-item.active svg, .ta-nav.active svg) { color: var(--ui-blue); }

/* 全站常用操作图标：与导航保持同一细线重量；品牌标记和监票大屏不在此范围。 */
[data-ui="enterprise-v2"] :where(.btn svg, .icon-btn svg, .toolbar svg, .filter-bar svg, .card-head svg, .table-wrap .action svg, .table-wrap button svg, .panel-head svg, .mp-topbar svg) {
  width: 16px;
  height: 16px;
  color: currentColor;
  stroke-width: 1.25;
  stroke-linecap: round;
  stroke-linejoin: round;
  vector-effect: non-scaling-stroke;
}
[data-ui="enterprise-v2"] :where(.btn.btn-lg svg, .card-title svg, .panel-title svg) { width: 18px; height: 18px; }
[data-ui="enterprise-v2"] :where(.btn-primary svg, .nav-item.active svg, .ta-nav.active svg) { color: currentColor; }

/* 门户、会员中心和辅助入口沿用同一套细线图标；监票大屏不加载此共享层。 */
[data-ui="enterprise-v2"] :where(.icon-btn svg, .theme-icon svg, .toast .t-ico svg, .dl-icon svg, .mp-service-icon svg, .member-service-icon svg, .backend-entry .be-icon svg) {
  width: 16px;
  height: 16px;
  color: var(--ui-icon);
  stroke-width: 1.25;
  stroke-linecap: round;
  stroke-linejoin: round;
  vector-effect: non-scaling-stroke;
}
[data-ui="enterprise-v2"] :where(.btn.btn-lg .icon-btn svg, .theme-icon svg, .backend-entry .be-icon svg) { width: 18px; height: 18px; }

/* 统一内容表面：页面仍保留原有字段，只整理外框、间距、标题和分隔线。 */
[data-ui="enterprise-v2"] :where(.card, .panel, .table-wrap, .surface-card, .ta-stat, .ta-form, .ta-modrow, .mp-card, .mp-news-item, .metric) {
  background: var(--ui-surface);
  border: 1px solid var(--ui-line);
  border-radius: var(--ui-radius);
  box-shadow: var(--ui-shadow);
}
[data-ui="enterprise-v2"] :where(.card, .panel, .ta-stat, .ta-form, .mp-card, .mp-news-item, .metric) { padding: 20px; }
[data-ui="enterprise-v2"] :where(.card:hover, .panel:hover, .mp-news-item:hover) { box-shadow: var(--ui-shadow-hover); }
[data-ui="enterprise-v2"] :where(table th, .ta-table th) {
  background: var(--ui-surface-soft);
  color: var(--ui-muted);
  border-color: var(--ui-line);
  font-weight: 700;
}
[data-ui="enterprise-v2"] :where(table td, .ta-table td) { border-color: var(--ui-line); }
[data-ui="enterprise-v2"] :where(table tbody tr:hover, .ta-table tbody tr:hover) { background: var(--ui-blue-soft); }

/* 控件统一：主按钮只使用天空蓝纯色，辅助操作低对比，避免颜色噪音。 */
[data-ui="enterprise-v2"] :where(.btn, button, input, select, textarea) { font-family: inherit; }
[data-ui="enterprise-v2"] :where(input:not([type="checkbox"]):not([type="radio"]), select, textarea, .input, .select, .textarea, .form-control) {
  min-height: 40px;
  border: 1px solid var(--ui-line-strong);
  border-radius: var(--ui-radius-sm);
  background: var(--ui-surface);
  color: var(--ui-ink);
  box-shadow: none;
}
[data-ui="enterprise-v2"] :where(input, select, textarea)::placeholder { color: var(--ui-helper); }
[data-ui="enterprise-v2"] :where(input, select, textarea):focus {
  outline: none;
  border-color: var(--ui-blue);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--ui-blue) 15%, transparent);
}
[data-ui="enterprise-v2"] :where(.btn, .primary, .secondary) {
  min-height: 40px;
  border-radius: var(--ui-radius-sm);
  font-weight: 600;
}
[data-ui="enterprise-v2"] :where(.btn-primary, .primary) {
  background: var(--ui-blue) !important;
  border-color: var(--ui-blue) !important;
  color: #fff !important;
  box-shadow: var(--ui-shadow) !important;
}
[data-ui="enterprise-v2"] :where(.btn-primary, .primary):hover:not(:disabled) {
  background: var(--ui-blue-hover) !important;
  border-color: var(--ui-blue-hover) !important;
}
[data-ui="enterprise-v2"] :where(.btn-ghost, .secondary, .btn.ghost) {
  background: var(--ui-surface) !important;
  color: var(--ui-muted) !important;
  border: 1px solid var(--ui-line-strong) !important;
}
[data-ui="enterprise-v2"] :where(.btn-ghost, .secondary, .btn.ghost):hover:not(:disabled) {
  background: var(--ui-blue-soft) !important;
  border-color: var(--ui-blue) !important;
  color: var(--ui-blue-hover) !important;
}
[data-ui="enterprise-v2"] :where(button, a, input, select, textarea):focus-visible {
  outline: 2px solid var(--ui-blue);
  outline-offset: 2px;
}

/* 会员中心与门户：同色同字，但保留更适合公众访问的宽版布局。 */
[data-ui="enterprise-v2"] :where(.nav, .mp-topbar) {
  background: var(--ui-surface);
  border-color: var(--ui-line);
  box-shadow: 0 1px 0 rgba(31, 91, 145, .03);
}
[data-ui="enterprise-v2"] :where(.theme-toggle) {
  display: inline-flex;
  gap: 2px;
  padding: 3px;
  border: 1px solid var(--ui-line);
  border-radius: var(--ui-radius-sm);
  background: var(--ui-surface-soft);
}
[data-ui="enterprise-v2"] :where(.theme-toggle-option) {
  min-height: 32px;
  min-width: auto;
  padding: 0 9px;
  border: 0;
  border-radius: 6px;
  background: transparent;
  color: var(--ui-muted);
  font-size: 12px;
  cursor: pointer;
}
[data-ui="enterprise-v2"] :where(.theme-toggle-option.active) {
  background: var(--ui-surface);
  color: var(--ui-blue-hover);
  box-shadow: 0 1px 3px rgba(31, 91, 145, .08);
}
[data-ui="enterprise-v2"] :where(.mp-main, .container, .view) { color: var(--ui-ink); }
[data-ui="enterprise-v2"] :where(.mp-service-card, .mp-news-item) {
  border-color: var(--ui-line);
  background: var(--ui-surface);
}
[data-ui="enterprise-v2"] :where(.mp-service-card:hover, .mp-news-item:hover) {
  border-color: var(--ui-blue);
  transform: none;
  box-shadow: var(--ui-shadow);
}
[data-ui="enterprise-v2"] :where(.footer) { background: var(--ui-ink); color: #dce8f5; }

/* 协会门户：保持网站浏览结构，不套用后台侧栏；统一导航、内容区块和公开卡片语言。 */
[data-ui="enterprise-v2"] :where(.nav) {
  min-height: 68px;
  background: var(--ui-surface);
  border-bottom: 1px solid var(--ui-line);
  box-shadow: 0 1px 0 rgba(31, 91, 145, .03);
  backdrop-filter: none;
}
[data-ui="enterprise-v2"] :where(.nav-inner, .container, .hero-inner) { max-width: 1280px; }
[data-ui="enterprise-v2"] :where(.nav-links a) {
  border-radius: var(--ui-radius-sm);
  color: var(--ui-muted);
}
[data-ui="enterprise-v2"] :where(.nav-links a:hover, .nav-links a.active) {
  background: var(--ui-blue-soft);
  color: var(--ui-blue-hover);
}
[data-ui="enterprise-v2"] :where(.section) { padding-top: 64px; padding-bottom: 64px; }
[data-ui="enterprise-v2"] :where(.section-head h2) {
  color: var(--ui-ink);
  font-size: clamp(24px, 3vw, 34px);
  line-height: 1.35;
}
[data-ui="enterprise-v2"] :where(.section-head p, .news-desc, .faq-desc) { color: var(--ui-helper); }
[data-ui="enterprise-v2"] :where(.card, .news-card, .meeting-card) {
  border-color: var(--ui-line);
  border-radius: var(--ui-radius);
  background: var(--ui-surface);
  box-shadow: var(--ui-shadow);
}
[data-ui="enterprise-v2"] :where(.card.hover:hover, .news-card:hover, .meeting-card:hover) {
  transform: none;
  border-color: var(--ui-blue);
  box-shadow: var(--ui-shadow);
}
[data-ui="enterprise-v2"] :where(.news-tag, .mp-badge) {
  background: var(--ui-blue-soft);
  border-color: var(--ui-line);
  color: var(--ui-blue-hover);
}
[data-ui="enterprise-v2"] :where(.news-toolbar, .filter-bar, .search-bar) {
  gap: 10px;
  padding: 12px;
  border: 1px solid var(--ui-line);
  border-radius: var(--ui-radius);
  background: var(--ui-surface);
  box-shadow: var(--ui-shadow);
}
[data-ui="enterprise-v2"] :where(.empty-state, .notfound, .error-state) {
  color: var(--ui-helper);
  border-color: var(--ui-line);
}
[data-ui="enterprise-v2"] :where(.footer) {
  border-top: 1px solid color-mix(in srgb, var(--ui-blue) 20%, transparent);
}

/* 登录、错误、加载和反馈状态：所有正式入口使用同一组状态容器。 */
[data-ui="enterprise-v2"] :where(.login-screen) {
  background: var(--ui-page);
  color: var(--ui-ink);
}
[data-ui="enterprise-v2"] :where(.login-bg) { background: var(--ui-page); }
[data-ui="enterprise-v2"] .login-bg::before,
[data-ui="enterprise-v2"] .login-bg::after { display: none; }
[data-ui="enterprise-v2"] :where(.login-card) {
  max-width: 420px;
  padding: 36px;
  border: 1px solid var(--ui-line);
  border-radius: var(--ui-radius-lg);
  background: var(--ui-surface);
  box-shadow: var(--ui-shadow-hover);
}
[data-ui="enterprise-v2"] :where(.login-brand .brand-logo) {
  background: var(--ui-blue);
  box-shadow: none;
}
[data-ui="enterprise-v2"] :where(.login-form .field label, .login-form label) { color: var(--ui-muted); }
[data-ui="enterprise-v2"] :where(.login-foot, .login-desc) { color: var(--ui-helper); }
[data-ui="enterprise-v2"] :where(.login-foot a) { color: var(--ui-blue-hover); }
[data-ui="enterprise-v2"] :where(.form-error, .login-error) { color: var(--ui-danger); }
[data-ui="enterprise-v2"] :where(.toast, .mp-toast, .ta-toast) {
  border: 1px solid var(--ui-line);
  border-left: 3px solid var(--ui-blue);
  border-radius: var(--ui-radius-sm);
  background: var(--ui-surface);
  color: var(--ui-ink);
  box-shadow: var(--ui-shadow-hover);
}
[data-ui="enterprise-v2"] :where(.toast.ok) { border-left-color: var(--ui-success); }
[data-ui="enterprise-v2"] :where(.toast.err) { border-left-color: var(--ui-danger); }
[data-ui="enterprise-v2"] :where(.modal, .modal-mask .modal, .vp-modal) {
  border-color: var(--ui-line);
  border-radius: var(--ui-radius-lg);
  background: var(--ui-surface);
  box-shadow: var(--ui-shadow-hover);
}
[data-ui="enterprise-v2"] :where(.modal-head, .modal-foot, .vp-modal-head) { border-color: var(--ui-line); }
[data-ui="enterprise-v2"] :where(.empty, .empty-state, .ta-loading, .mp-loading, .ecc-empty, .ewb-empty) {
  color: var(--ui-helper);
}

/* 写作助手 / 项目管线：把历史冷灰、橙色和旧蓝色收回到统一令牌。
   仅覆盖视觉表现，不改变资料、评分、报告和上传流程。 */
[data-ui="enterprise-v2"] :where(.pp-shell) { max-width: 1180px; }
[data-ui="enterprise-v2"] :where(.pp-title, .pp-card-title, .pp-sec-title, .pp-stage-name, .pp-material-title, .pp-deliverable-title, .pp-fr-hist-title) { color: var(--ui-ink); }
[data-ui="enterprise-v2"] :where(.pp-sub, .pp-muted, .pp-stage-desc, .pp-material-meta, .pp-deliverable-meta, .pp-hint, .pp-gauge-label) { color: var(--ui-helper); }
[data-ui="enterprise-v2"] :where(.pp-badge, .pp-count, .pp-status-进行中, .pp-status-submitted, .pp-tag) {
  color: var(--ui-blue-hover);
  background: var(--ui-blue-soft);
  border-color: var(--ui-line);
}
[data-ui="enterprise-v2"] :where(.pp-table, .pp-card, .pp-video-card, .pp-model-card, .pp-upload, .pp-file-item, .pp-mat-item, .pp-fr-hist-item) {
  background: var(--ui-surface);
  border-color: var(--ui-line);
  border-radius: var(--ui-radius);
  box-shadow: var(--ui-shadow);
}
[data-ui="enterprise-v2"] :where(.pp-table th, .pp-sc-table th) {
  background: var(--ui-surface-soft);
  color: var(--ui-muted);
  border-color: var(--ui-line);
}
[data-ui="enterprise-v2"] :where(.pp-table td, .pp-sc-table td, .pp-info-row) { border-color: var(--ui-line); }
[data-ui="enterprise-v2"] :where(.pp-table tbody tr:hover, .pp-mat-item:hover, .pp-fr-item:hover) { background: var(--ui-blue-soft); }
[data-ui="enterprise-v2"] :where(.pp-link, .pp-tab-active, .pp-score-total b, .pp-stage-fill, .pp-upload:hover, .pp-upload.dragover) { color: var(--ui-blue-hover); }
[data-ui="enterprise-v2"] :where(.pp-link, .pp-tab-active) { color: var(--ui-blue-hover); }
[data-ui="enterprise-v2"] :where(.pp-tab-active) { border-bottom-color: var(--ui-blue); }
[data-ui="enterprise-v2"] :where(.pp-stage-current) { background: var(--ui-blue-soft); border-color: var(--ui-line-strong); }
[data-ui="enterprise-v2"] :where(.pp-stage-current .pp-stage-ico, .pp-stage-fill, .pp-switch:checked) { background: var(--ui-blue); }
[data-ui="enterprise-v2"] :where(.pp-input) {
  border-color: var(--ui-line-strong);
  background: var(--ui-surface);
  color: var(--ui-ink);
}
[data-ui="enterprise-v2"] :where(.pp-input:focus) {
  border-color: var(--ui-blue);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--ui-blue) 15%, transparent);
}
[data-ui="enterprise-v2"] :where(.pp-empty, .pp-sec-empty, .pp-ar-hint-bottom, .pp-review-log) {
  background: var(--ui-surface-soft);
  border-color: var(--ui-line);
  color: var(--ui-helper);
}
[data-ui="enterprise-v2"] :where(.pp-upload) { background: var(--ui-surface-soft); }
[data-ui="enterprise-v2"] :where(.pp-upload:hover, .pp-upload.dragover) { background: var(--ui-blue-soft); border-color: var(--ui-blue); }
[data-ui="enterprise-v2"] :where(.pp-archive-upload, .pp-feedback-report) { box-shadow: none; }
[data-ui="enterprise-v2"] :where(.pp-fr-open, .pp-fr-hist-view) { border-color: var(--ui-line-strong); color: var(--ui-blue-hover); background: var(--ui-surface); }
[data-ui="enterprise-v2"] :where(.pp-fr-open:hover, .pp-fr-hist-view:hover) { background: var(--ui-blue); color: #fff; }

/* 活动/审批工作台列表与审核页。 */
[data-ui="enterprise-v2"] :where(.acw-page, .acw-head h2) { color: var(--ui-ink); }
[data-ui="enterprise-v2"] :where(.acw-crumb, .acw-head p, .acw-toolbar, .acw-todo, .acw-title small) { color: var(--ui-helper); }
[data-ui="enterprise-v2"] :where(.acw-tabs, .acw-table, .acw-hint) {
  border-color: var(--ui-line);
  background: var(--ui-surface);
  box-shadow: var(--ui-shadow);
}
[data-ui="enterprise-v2"] :where(.acw-tabs button) { color: var(--ui-muted); }
[data-ui="enterprise-v2"] :where(.acw-tabs button.active) { color: var(--ui-blue-hover); border-bottom-color: var(--ui-blue); }
[data-ui="enterprise-v2"] :where(.acw-row) { border-color: var(--ui-line); color: var(--ui-muted); }
[data-ui="enterprise-v2"] :where(.acw-row-head) { background: var(--ui-surface-soft); color: var(--ui-muted); }
[data-ui="enterprise-v2"] :where(.acw-row:hover) { background: var(--ui-blue-soft); }
[data-ui="enterprise-v2"] :where(.acw-title b, .acw-progress b, .acw-link) { color: var(--ui-blue-hover); }
[data-ui="enterprise-v2"] :where(.acw-state) { background: var(--ui-blue-soft); border-color: var(--ui-line); color: var(--ui-blue-hover); }
[data-ui="enterprise-v2"] :where(.acw-progress em) { background: var(--ui-blue); }

@media (max-width: 520px) {
  [data-ui="enterprise-v2"] :where(.login-card) { padding: 24px 20px; border-radius: var(--ui-radius); }
}

@media (max-width: 768px) {
  [data-ui="enterprise-v2"] :where(.section) { padding-top: 44px; padding-bottom: 44px; }
  [data-ui="enterprise-v2"] :where(.nav-inner) { padding-left: 16px; padding-right: 16px; }
  [data-ui="enterprise-v2"] :where(.hero-inner) { padding-left: 16px; padding-right: 16px; }
  [data-ui="enterprise-v2"] :where(.section-head h2) { font-size: 26px; }
}

@media (max-width: 768px) {
  [data-ui="enterprise-v2"] :where(.content, .ta-main, .mp-main) { padding: 20px 16px 32px; }
  [data-ui="enterprise-v2"] :where(.card, .panel, .ta-stat, .ta-form, .mp-card, .metric) { padding: 16px; }
  [data-ui="enterprise-v2"] :where(.topbar, .ta-topbar, .mp-topbar) { min-height: 60px; }
}

/* 平台控制中心当前由独立 HTML 壳承载，使用同一组表现令牌。 */
body.platform-login-required {
  --ui-page: #f4f8fd;
  --ui-surface: #ffffff;
  --ui-surface-soft: #f7faff;
  --ui-ink: #163a63;
  --ui-muted: #526a84;
  --ui-helper: #6e88a4;
  --ui-line: #dce8f5;
  --ui-line-strong: #c7d9eb;
  --ui-blue: #2f80d8;
  --ui-blue-hover: #216cc0;
  --ui-blue-soft: #eaf4ff;
  background: var(--ui-page);
  color: var(--ui-ink);
  font-family: var(--font-sans);
}
body.platform-login-required :where(.sidebar, main .panel, main .metric, main .login-card) {
  border-color: var(--ui-line);
  box-shadow: var(--site-shadow);
}
body.platform-login-required :where(.sidebar, main .panel, main .metric, main .login-card) { background: var(--ui-surface); }
body.platform-login-required :where(nav a:hover, nav a.active) { background: var(--ui-blue-soft); color: var(--ui-blue); }
body.platform-login-required :where(.primary) {
  background: var(--ui-blue) !important;
  border-color: var(--ui-blue) !important;
  border-radius: 8px;
  box-shadow: var(--ui-shadow);
}
body.platform-login-required :where(.secondary) {
  background: var(--ui-surface) !important;
  border-color: var(--ui-line-strong) !important;
  border-radius: 8px;
  color: var(--ui-muted) !important;
}
body.platform-login-required :where(input, select) {
  border-color: var(--ui-line-strong);
  border-radius: 8px;
  color: var(--ui-ink);
}
body.platform-login-required :where(main:not(.login-gate) header) {
  border-color: var(--ui-line);
  padding-bottom: 20px;
}
body.platform-login-required :where(main h1, main h2, main h3) { color: var(--ui-ink); }
body.platform-login-required :where(main p, main .muted, main td small) { color: var(--ui-helper); }
body.platform-login-required :where(.metric) {
  border-radius: var(--ui-radius);
  padding: 20px;
  box-shadow: var(--ui-shadow);
}
body.platform-login-required :where(.metric span) { color: var(--ui-muted); }
body.platform-login-required :where(.metric b) { color: var(--ui-ink); font-variant-numeric: tabular-nums; }
body.platform-login-required :where(.panel-head, .section-head) { border-color: var(--ui-line); }
body.platform-login-required :where(th) { background: var(--ui-surface-soft); color: var(--ui-muted); }
body.platform-login-required :where(td, th) { border-color: var(--ui-line); }
body.platform-login-required :where(tbody tr:hover) { background: var(--ui-blue-soft); }
body.platform-login-required :where(.tabs) { border-color: var(--ui-line); }
body.platform-login-required :where(.tabs button.active) { color: var(--ui-blue-hover); border-bottom-color: var(--ui-blue); }

/* 普通业务工作台中的历史资料面板改为平面冷蓝表面；监票大屏专属
   `.vb-mon-*` / `.xj-mon-*` 视觉不在此规则内。 */
[data-ui="enterprise-v2"] :where(.pp-archive-upload) {
  background: var(--ui-blue-soft) !important;
  border-color: var(--ui-line) !important;
}
[data-ui="enterprise-v2"] :where(.pp-feedback-report) {
  background: var(--ui-surface) !important;
  border-color: var(--ui-line) !important;
}

/* 高频工作台：会务、培训、智能会务、活动看板共用相同的页面节奏。 */
[data-ui="enterprise-v2"] :where(.ewb-page, .ecc-page) { color: var(--ui-ink); }
[data-ui="enterprise-v2"] :where(.ewb-header, .ecc-header) { padding-bottom: 18px; }
[data-ui="enterprise-v2"] :where(.ewb-title-row h2, .ecc-title-line h2) {
  color: var(--ui-ink);
  font-size: 24px;
  line-height: 1.35;
}
[data-ui="enterprise-v2"] :where(.ewb-header p, .ecc-header p, .ewb-card-head p, .ecc-section-head p) {
  color: var(--ui-helper);
  line-height: 1.6;
}
[data-ui="enterprise-v2"] :where(.ewb-stat, .ewb-card, .ecc-card, .ecc-form, .ecc-error) {
  background: var(--ui-surface);
  border-color: var(--ui-line);
  border-radius: var(--ui-radius);
  box-shadow: var(--ui-shadow);
}
[data-ui="enterprise-v2"] :where(.ewb-stat) {
  border-top: 2px solid var(--ui-blue);
  padding: 18px 20px;
}
[data-ui="enterprise-v2"] :where(.ewb-stat b, .ecc-kpis b, .ecc-person-summary b) { color: var(--ui-ink); }
[data-ui="enterprise-v2"] :where(.ewb-stat span, .ecc-kpis span, .ecc-version, .ecc-muted) { color: var(--ui-helper); }
[data-ui="enterprise-v2"] :where(.ewb-table, .ecc-table) { border-color: var(--ui-line); background: var(--ui-surface); }
[data-ui="enterprise-v2"] :where(.ewb-row-head, .ecc-table-head) { background: var(--ui-surface-soft); color: var(--ui-muted); }
[data-ui="enterprise-v2"] :where(.ewb-row, .ecc-table-row) { border-color: var(--ui-line); color: var(--ui-muted); }
[data-ui="enterprise-v2"] :where(.ewb-row:hover, .ecc-table-row:hover) { background: var(--ui-blue-soft); }
[data-ui="enterprise-v2"] :where(.ewb-link, .ecc-link) { color: var(--ui-blue-hover); }
[data-ui="enterprise-v2"] :where(.ewb-filter.active, .ecc-tab.active) {
  background: var(--ui-blue-soft);
  border-color: var(--ui-blue);
  color: var(--ui-blue-hover);
}
[data-ui="enterprise-v2"] :where(.ecc-tabs) {
  background: var(--ui-surface);
  border-color: var(--ui-line);
  box-shadow: var(--ui-shadow);
}
[data-ui="enterprise-v2"] :where(.ecc-tab) { color: var(--ui-muted); }
[data-ui="enterprise-v2"] :where(.ecc-tab.active) { border-bottom-color: var(--ui-blue); }
[data-ui="enterprise-v2"] :where(.ecc-notice) {
  background: var(--ui-surface-soft);
  border-color: var(--ui-line);
  color: var(--ui-muted);
}
[data-ui="enterprise-v2"] :where(.ecc-form input, .ecc-form textarea, .ecc-inline-form input) {
  border-color: var(--ui-line-strong);
  border-radius: var(--ui-radius-sm);
  background: var(--ui-surface);
  color: var(--ui-ink);
}
[data-ui="enterprise-v2"] :where(.ecc-form input:focus, .ecc-form textarea:focus) {
  outline: none;
  border-color: var(--ui-blue);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--ui-blue) 15%, transparent);
}
[data-ui="enterprise-v2"] :where(.ecc-kpis > div) {
  background: var(--ui-surface);
  border-color: var(--ui-line);
  border-radius: var(--ui-radius);
}
[data-ui="enterprise-v2"] :where(.ecc-kpis em, .ewb-progress em) { background: var(--ui-blue); }

@media (max-width: 700px) {
  [data-ui="enterprise-v2"] :where(.ewb-title-row h2, .ecc-title-line h2) { font-size: 21px; }
  [data-ui="enterprise-v2"] :where(.ewb-stats, .ecc-kpis) { gap: 10px; }
  [data-ui="enterprise-v2"] :where(.ewb-card, .ecc-card, .ecc-form) { padding: 16px; }
}
.btn-ghost,
button.btn-ghost,
a.btn-ghost {
  background: var(--site-surface) !important;
  border: 1px solid var(--site-border-strong) !important;
  color: var(--site-muted) !important;
}
.btn-ghost:hover:not(:disabled),
button.btn-ghost:hover:not(:disabled),
a.btn-ghost:hover:not(:disabled) {
  background: var(--site-blue-soft) !important;
  border-color: var(--site-blue) !important;
  color: var(--site-blue-hover) !important;
}

/* 投票管理普通页面：沿用 Enterprise V2；监票大屏 `.vb-mon-*` 明确排除。 */
[data-ui="enterprise-v2"] :where(.vb-tabs, .vb-list-toolbar, .vb-form-preview, .vb-result-hero, .vb-result-card, .vb-result-panel, .vb-settings-page, .vb-workbench-section) {
  background: var(--ui-surface) !important;
  border-color: var(--ui-line) !important;
  color: var(--ui-ink);
  box-shadow: var(--ui-shadow);
}
[data-ui="enterprise-v2"] :where(.vb-tabs, .vb-list-toolbar) {
  border-radius: var(--ui-radius-sm);
}
[data-ui="enterprise-v2"] :where(.vb-tabs button, .vb-status-tab) {
  border-color: var(--ui-line);
  background: var(--ui-surface);
  color: var(--ui-muted);
}
[data-ui="enterprise-v2"] :where(.vb-tabs button:hover, .vb-status-tab:hover) {
  border-color: var(--ui-line-strong);
  background: var(--ui-blue-soft);
  color: var(--ui-blue-hover);
}
[data-ui="enterprise-v2"] :where(.vb-tabs button.active, .vb-status-tab.active) {
  border-color: var(--ui-blue);
  background: var(--ui-blue-soft);
  color: var(--ui-blue-hover);
  box-shadow: none;
}
[data-ui="enterprise-v2"] :where(.vb-list-search .input, .vb-settings-page .input, .vb-workbench-field input) {
  border-color: var(--ui-line-strong);
  background: var(--ui-surface);
  color: var(--ui-ink);
}
[data-ui="enterprise-v2"] :where(.vb-list-search .input:focus, .vb-settings-page .input:focus, .vb-workbench-field input:focus) {
  outline: none;
  border-color: var(--ui-blue);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--ui-blue) 15%, transparent);
}
[data-ui="enterprise-v2"] :where(.vb-report-table th, .vb-workbench-section .vb-report-table th, .vb-settings-page > .vb-section-h, .vb-workbench-section-head) {
  background: var(--ui-surface-soft) !important;
  border-color: var(--ui-line) !important;
  color: var(--ui-muted);
}
[data-ui="enterprise-v2"] :where(.vb-report-table td, .vb-report-table th, .vb-settings-page .vb-setting-row) {
  border-color: var(--ui-line) !important;
  color: var(--ui-muted);
}
[data-ui="enterprise-v2"] :where(.vb-report-table tbody tr:hover) { background: var(--ui-blue-soft); }
[data-ui="enterprise-v2"] :where(.vb-result-card-label, .vb-result-card-sub, .vb-workbench-field em, .vb-settings-page .cell-sub) { color: var(--ui-helper); }
[data-ui="enterprise-v2"] :where(.vb-result-card-num, .vb-workbench-section-head h3, .vb-settings-page > .vb-section-h) { color: var(--ui-ink); }
[data-ui="enterprise-v2"] :where(.vb-result-card--primary) {
  background: var(--ui-blue-soft) !important;
  border-color: var(--ui-line-strong) !important;
}
[data-ui="enterprise-v2"] :where(.vb-form-nav) {
  background: var(--ui-surface) !important;
  border-color: var(--ui-line) !important;
}
[data-ui="enterprise-v2"] :where(.vb-form-preview.is-editing) { border-color: var(--ui-line-strong) !important; }
[data-ui="enterprise-v2"] :where(.vb-form-nav-btn.selected) { outline-color: var(--ui-blue); }
[data-ui="enterprise-v2"] :where(.vb-settings-page > .vb-section-h::before, .vb-workbench-section-head h3::before) { background: var(--ui-blue); }
[data-ui="enterprise-v2"] :where(.vb-workbench-pane) { background: var(--ui-page); color: var(--ui-ink); }
[data-ui="enterprise-v2"] :where(.vb-workbench-control-grid, .vb-workbench-utility) { border-color: var(--ui-line); }
[data-ui="enterprise-v2"] :where(.vb-status-badge) { background: var(--ui-blue); }
[data-ui="enterprise-v2"] :where(.vb-chip) {
  background: var(--ui-blue-soft);
  color: var(--ui-blue-hover);
  border: 1px solid var(--ui-line);
}
[data-ui="enterprise-v2"] :where(.vb-status-current) {
  box-shadow: var(--ui-shadow) !important;
}

/* 赛事模板字段工具：使用与导航同重的细线 SVG，不使用 emoji。 */
[data-ui="enterprise-v2"] :where(.fb-pi-ico, .fb-empty-icon, .fb-iconbtn) svg {
  width: 16px;
  height: 16px;
  color: var(--ui-icon);
  stroke-width: 1.25;
  stroke-linecap: round;
  stroke-linejoin: round;
}
[data-ui="enterprise-v2"] :where(.fb-pi-ico) { color: var(--ui-blue); }
[data-ui="enterprise-v2"] :where(.fb-empty-icon) { color: var(--ui-icon); font-size: 0; }
[data-ui="enterprise-v2"] :where(.fb-empty-icon) svg { width: 32px; height: 32px; }
[data-ui="enterprise-v2"] :where(.fb-iconbtn:hover) { background: var(--ui-blue-soft); border-color: var(--ui-line-strong); color: var(--ui-blue-hover); }
[data-ui="enterprise-v2"] :where(.fb-iconbtn--danger:hover) { background: var(--ui-surface-soft); border-color: var(--ui-line-strong); color: var(--ui-blue-hover); }

[data-ui="enterprise-v2"][data-theme="dark"] :where(.vb-tabs button, .vb-status-tab, .vb-list-search .input, .vb-settings-page .input, .vb-workbench-field input) {
  background: var(--ui-surface-soft);
  color: var(--ui-ink);
}
[data-ui="enterprise-v2"][data-theme="dark"] :where(.vb-report-table tbody tr:hover) { background: color-mix(in srgb, var(--ui-blue) 16%, var(--ui-surface)); }
.ui-empty-mark{display:inline-block;width:32px;height:32px;border:1.25px solid var(--ui-icon,#5d7ea6);border-radius:9px;position:relative;vertical-align:middle}
.ui-empty-mark::after{content:"";position:absolute;width:6px;height:6px;border-radius:50%;background:var(--ui-blue,#2f80d8);left:50%;top:50%;transform:translate(-50%,-50%)}
.ui-inline-mark{display:inline-block;width:14px;height:14px;border:1.25px solid currentColor;border-radius:3px;vertical-align:-2px;margin-right:4px;opacity:.8}
[data-ui="enterprise-v2"] .platform-feedback-dialog,
body.platform-login-required .platform-feedback-dialog{width:min(460px,calc(100vw - 32px));padding:0;border:1px solid var(--ui-line-strong);border-radius:12px;background:var(--ui-surface);color:var(--ui-ink);box-shadow:var(--ui-shadow-hover)}
body.platform-login-required .platform-feedback-dialog::backdrop{background:color-mix(in srgb, var(--ui-ink) 32%, transparent)}
body.platform-login-required .platform-dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:22px 24px 12px}
body.platform-login-required .platform-dialog-head h2{margin:0;font-size:18px;color:var(--ui-ink)}
body.platform-login-required .platform-dialog-head p{margin:7px 0 0;color:var(--ui-helper);font-size:13px;line-height:1.6}
body.platform-login-required .platform-dialog-close{border:0;background:transparent;color:var(--ui-helper);font-size:24px;line-height:1;cursor:pointer;padding:2px 4px}
body.platform-login-required .platform-feedback-dialog form{padding:0 24px 22px}
body.platform-login-required .platform-feedback-dialog label{display:grid;gap:7px;margin:8px 0 4px;color:var(--ui-muted);font-size:13px}
body.platform-login-required .platform-feedback-dialog input{min-height:40px;border:1px solid var(--ui-line-strong);border-radius:8px;padding:0 12px;color:var(--ui-ink);background:var(--ui-surface)}
body.platform-login-required .platform-dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}
body.platform-login-required .platform-dialog-actions button{min-height:40px;padding:0 16px;border-radius:8px;font:inherit;font-weight:700;cursor:pointer}
body.platform-login-required .platform-dialog-actions .secondary{border:1px solid var(--ui-line-strong);background:var(--ui-surface);color:var(--ui-muted)}
body.platform-login-required .platform-dialog-actions .primary{border:1px solid var(--ui-blue);background:var(--ui-blue);color:#fff}
body.platform-login-required .platform-dialog-actions button:focus-visible,
body.platform-login-required .platform-dialog-close:focus-visible,
body.platform-login-required .platform-feedback-dialog input:focus-visible{outline:3px solid color-mix(in srgb, var(--ui-blue) 25%, transparent);outline-offset:2px}
@media(max-width:760px){body.platform-login-required .platform-dialog-actions button{min-height:44px}}

/* 业务模块收口：管线、座次与门户活动组件不再各自定义品牌色。 */
[data-ui="enterprise-v2"] :where(.pp-shell, .pp-card, .pp-video-card) { color: var(--ui-ink); }
[data-ui="enterprise-v2"] :where(.pp-badge, .pp-count, .pp-status-进行中, .pp-status-submitted) {
  color: var(--ui-blue-hover);
  border-color: var(--ui-line-strong);
  background: var(--ui-blue-soft);
}
[data-ui="enterprise-v2"] :where(.pp-title, .pp-card-title, .pp-stage-name, .pp-info-row span, .pp-material-title, .pp-deliverable-title, .pp-file-name, .pp-ar-val, .pp-score-name, .pp-video-head b) { color: var(--ui-ink); }
[data-ui="enterprise-v2"] :where(.pp-sub, .pp-muted, .pp-table th, .pp-stage-desc, .pp-info-row b, .pp-gauge-label, .pp-score-max, .pp-material-meta, .pp-deliverable-meta, .pp-file-meta, .pp-ar-meta, .pp-ar-count, .pp-ar-hint, .pp-upload-text, .pp-upload-hint) { color: var(--ui-helper); }
[data-ui="enterprise-v2"] :where(.pp-table, .pp-card, .pp-video-card, .pp-file-item, .pp-material-item, .pp-deliverable-item, .pp-review-log, .pp-upload, .pp-input, .pp-table tr, .pp-stage) {
  border-color: var(--ui-line);
  background: var(--ui-surface);
}
[data-ui="enterprise-v2"] :where(.pp-table th, .pp-empty, .pp-sec-empty, .pp-hint, .pp-video-prompt, .pp-review-log, .pp-upload:hover, .pp-upload.dragover, .pp-stage-pending, .pp-stage-current) { background: var(--ui-surface-soft); }
[data-ui="enterprise-v2"] :where(.pp-table tbody tr:hover, .pp-link:hover, .pp-tab:hover) { background: var(--ui-blue-soft); }
[data-ui="enterprise-v2"] :where(.pp-link, .pp-tab-active, .pp-score-total b, .pp-stage-fill, .pp-stage-current .pp-stage-ico, .pp-upload:hover, .pp-upload.dragover) { color: var(--ui-blue-hover); border-color: var(--ui-blue); }
[data-ui="enterprise-v2"] :where(.pp-stage-current .pp-stage-ico, .pp-stage-fill) { background: var(--ui-blue); }
[data-ui="enterprise-v2"] :where(.pp-input:focus) { border-color: var(--ui-blue); box-shadow: 0 0 0 3px color-mix(in srgb, var(--ui-blue) 15%, transparent); }
[data-ui="enterprise-v2"] :where(.pp-tag) { color: var(--ui-muted); border-color: var(--ui-line); background: var(--ui-surface-soft); }
[data-ui="enterprise-v2"] :where(.pp-ar-ok, .pp-status-已完成, .pp-status-approved) { background: color-mix(in srgb, var(--ui-success) 10%, var(--ui-surface)); border-color: color-mix(in srgb, var(--ui-success) 28%, var(--ui-line)); }
[data-ui="enterprise-v2"] :where(.pp-ar-no, .pp-status-已暂停, .pp-status-rejected) { background: color-mix(in srgb, var(--ui-danger) 8%, var(--ui-surface)); border-color: color-mix(in srgb, var(--ui-danger) 24%, var(--ui-line)); }
[data-ui="enterprise-v2"] :where(.pp-ar-pending, .pp-status-规划中, .pp-status-reviewing) { background: color-mix(in srgb, var(--ui-warning) 10%, var(--ui-surface)); border-color: color-mix(in srgb, var(--ui-warning) 28%, var(--ui-line)); }

/* 会务座次：保留形状差异，取消绿色、橙色和紫色业务分色。 */
[data-ui="enterprise-v2"] :where(.ewb-seating-table, .ewb-seating-table[data-ewb-table-type="round"], .ewb-seating-table[data-ewb-table-type="long"], .ewb-seating-table[data-ewb-table-type="sofa"], .ewb-seating-table[data-ewb-table-type="custom"]) {
  background: var(--ui-blue-soft);
  border-color: var(--ui-line-strong);
  color: var(--ui-ink);
}
[data-ui="enterprise-v2"] :where(.ewb-seating-seat) { border-color: var(--ui-line-strong); background: var(--ui-surface); color: var(--ui-ink); }
[data-ui="enterprise-v2"] :where(.ewb-seating-seat.is-locked, .ewb-seating-seat.is-reserved) { background: var(--ui-blue-soft); border-color: var(--ui-blue); color: var(--ui-blue-hover); }

/* 门户活动视觉：图片仍可使用暗色遮罩保证文字可读，但不用渐变作为品牌装饰。 */
[data-ui="enterprise-v2"] :where(.carousel-slide .cs-overlay, .hero::after) { background: rgba(5, 25, 48, .48); }
[data-ui="enterprise-v2"] .hero::after { background: transparent; }
[data-ui="enterprise-v2"] :where(.vote-bar-fill) { background: var(--ui-blue); }

/* 大赛模板与评审编辑器：共享工作台表面，减少旧的多彩局部组件。 */
[data-ui="enterprise-v2"] :where(.stage-pills .sp, .lib-chip, .fb-palette-item, .fb-field, .fb-file-drop, .fb-iconbtn, .fb-import-box, .fb-mx-col) {
  border-color: var(--ui-line);
  background: var(--ui-surface);
  color: var(--ui-muted);
}
[data-ui="enterprise-v2"] :where(.stage-pills .sp.cur, .fb-field.selected) {
  border-color: var(--ui-blue);
  background: var(--ui-blue-soft);
  color: var(--ui-blue-hover);
  box-shadow: none;
}
[data-ui="enterprise-v2"] :where(.tag-scope, .lib-chip.mode, .fb-palette-item:hover, .fb-field:hover, .fb-field-label-text:hover, .fb-field-label-text:focus) {
  border-color: var(--ui-line-strong);
  background: var(--ui-blue-soft);
  color: var(--ui-blue-hover);
}
[data-ui="enterprise-v2"] :where(.tag-lock, .perm-super-note, .form-error, .fb-req, .fb-iconbtn--danger:hover) {
  color: var(--ui-danger);
}
[data-ui="enterprise-v2"] :where(.tag-required, .fb-bonus-tag, .fb-opt-bonus, .ct-bonus-badge) {
  color: var(--ui-success);
  background: color-mix(in srgb, var(--ui-success) 10%, var(--ui-surface));
  border-color: color-mix(in srgb, var(--ui-success) 28%, var(--ui-line));
}
[data-ui="enterprise-v2"] :where(.tag-optional, .perm-super-note) {
  background: color-mix(in srgb, var(--ui-warning) 10%, var(--ui-surface));
  border-color: color-mix(in srgb, var(--ui-warning) 28%, var(--ui-line));
}
[data-ui="enterprise-v2"] :where(.fb-pane, .fb-palette, .fb-settings, .fb-canvas, .fb-field-body, .fb-section-desc, .fb-mx-table th, .fb-mx-rowhead) {
  background: var(--ui-surface-soft);
  border-color: var(--ui-line);
  color: var(--ui-muted);
}
[data-ui="enterprise-v2"] :where(.fb-field-no) { background: var(--ui-surface-soft); color: var(--ui-muted); }
[data-ui="enterprise-v2"] :where(.fb-field.selected .fb-field-no, .sec-fixed, .stage-pills .sp.cur) { background: var(--ui-blue); color: #fff; }
[data-ui="enterprise-v2"] :where(.wz-step.active, .wz-step.done, .wz-step.active .wz-dot, .wz-step.done .wz-dot) { color: var(--ui-blue); }
[data-ui="enterprise-v2"] :where(.wz-step.active .wz-dot) { background: var(--ui-blue); color: #fff; }
[data-ui="enterprise-v2"] :where(.wz-step.done .wz-dot) { background: var(--ui-blue-soft); color: var(--ui-blue-hover); }
[data-ui="enterprise-v2"] :where(.btn-danger) { background: var(--ui-danger); border-color: var(--ui-danger); color: #fff; }

/* 注册字段、权限矩阵和运营看板：统一旧模块的卡片、标签和指标语言。 */
[data-ui="enterprise-v2"] :where(.rf-main, .rf-field-row, .rf-ico, .rf-opt-del, .perm-preview, .xj-kpi, .xj-card) {
  border-color: var(--ui-line);
  background: var(--ui-surface);
  color: var(--ui-ink);
  box-shadow: var(--ui-shadow);
}
[data-ui="enterprise-v2"] :where(.rf-field-row:hover, .rf-field-row.rf-drag-over, .rf-ico:hover, .rf-opt-del:hover) {
  border-color: var(--ui-blue);
  background: var(--ui-blue-soft);
  box-shadow: none;
}
[data-ui="enterprise-v2"] :where(.rf-core, .rf-flag.on, .xj-feed-ok) { color: var(--ui-blue-hover); border-color: var(--ui-line-strong); background: var(--ui-blue-soft); }
[data-ui="enterprise-v2"] :where(.rf-flag.req, .rf-del-group:hover, .rf-opt-del) { color: var(--ui-danger); }
[data-ui="enterprise-v2"] :where(.rf-sub, .rf-field-label, .perm-preview-title, .xj-kpi-label, .xj-kpi-val) { color: var(--ui-ink); }
[data-ui="enterprise-v2"] :where(.rf-field-meta, .rf-drag, .rf-flag, .perm-meetings, .xj-kpi-sub, .xj-feed-time, .xj-prog-num) { color: var(--ui-helper); }
[data-ui="enterprise-v2"] :where(.role-member_rep, .role-council_member) { background: var(--ui-blue-soft); color: var(--ui-blue-hover); }
[data-ui="enterprise-v2"] :where(.xj-alert--ok) { background: color-mix(in srgb, var(--ui-success) 10%, var(--ui-surface)); border-color: color-mix(in srgb, var(--ui-success) 28%, var(--ui-line)); color: var(--ui-success); }
[data-ui="enterprise-v2"] :where(.xj-alert--warn) { background: color-mix(in srgb, var(--ui-danger) 8%, var(--ui-surface)); border-color: color-mix(in srgb, var(--ui-danger) 24%, var(--ui-line)); color: var(--ui-danger); box-shadow: none; }
[data-ui="enterprise-v2"] :where(.xj-prog-bar) { background: var(--ui-surface-soft); }
[data-ui="enterprise-v2"] :where(.xj-prog-fill) { background: var(--ui-blue); }
[data-ui="enterprise-v2"] :where(.xj-kpi--ok::before, .xj-kpi--warn::before) { background: var(--ui-blue); }
[data-ui="enterprise-v2"] :where(.xj-kpi--ok .xj-kpi-val, .xj-kpi--warn .xj-kpi-val) { color: var(--ui-ink); }

/* ---------------------------------------------------------------------
   Enterprise V2 final surface refinement
   门户保留内容型信息架构，但与后台共享同一蓝白层级、控件尺寸和反馈语言。
   不改动内容、路由或租户可配置的图片，仅收口旧版深色首屏和过度装饰。
   --------------------------------------------------------------------- */
[data-ui="enterprise-v2"] :where(.hero) {
  min-height: 430px;
  padding: 72px 0 64px;
  color: var(--ui-ink);
  background: var(--ui-surface-soft);
  border-bottom: 1px solid var(--ui-line);
}
[data-ui="enterprise-v2"] .hero h1 {
  color: var(--ui-ink);
  font-size: clamp(30px, 4vw, 46px);
  line-height: 1.2;
  letter-spacing: -.02em;
}
[data-ui="enterprise-v2"] .hero-text > .badge {
  background: var(--ui-blue-soft) !important;
  color: var(--ui-blue-hover) !important;
  border: 1px solid var(--ui-line) !important;
}
[data-ui="enterprise-v2"] .hero .sub { color: var(--ui-muted); font-size: 16px; line-height: 1.8; }
[data-ui="enterprise-v2"] :where(.hero .hero-cta) { margin-top: 24px; gap: 10px; }
[data-ui="enterprise-v2"] :where(.hero .hero-cta .btn-ghost) {
  color: var(--ui-blue-hover);
  border-color: var(--ui-line-strong);
  background: var(--ui-surface);
}
[data-ui="enterprise-v2"] :where(.hero .hero-cta .btn-ghost:hover) {
  background: var(--ui-blue-soft);
  color: var(--ui-blue-hover);
}
[data-ui="enterprise-v2"] :where(.hero .hero-carousel, .hero .carousel) {
  border-radius: var(--ui-radius-lg);
  box-shadow: var(--ui-shadow-hover);
}
[data-ui="enterprise-v2"] :where(.carousel-slide .cs-overlay) {
  background: rgba(22, 58, 99, .72);
}
[data-ui="enterprise-v2"] :where(.carousel-slide .cs-cta) {
  min-height: 40px;
  padding: 0 18px;
  border-radius: var(--ui-radius-sm);
  background: var(--ui-surface);
  color: var(--ui-blue-hover);
  border: 1px solid var(--ui-line-strong);
  box-shadow: var(--ui-shadow);
}
[data-ui="enterprise-v2"] :where(.carousel-slide .cs-cta:hover) {
  background: var(--ui-blue-soft);
  border-color: var(--ui-blue);
  color: var(--ui-blue-hover);
  box-shadow: var(--ui-shadow);
}

/* 撰写助手与字段设计器：选中态使用统一蓝色，避免把业务交互误读为警告。 */
[data-ui="enterprise-v2"] :where(.pp-mat-item:has(input:checked)) {
  border-color: var(--ui-blue);
  background: var(--ui-blue-soft);
}
[data-ui="enterprise-v2"] :where(.pp-mat-cb) { accent-color: var(--ui-blue); }
[data-ui="enterprise-v2"] :where(.fb-builder) {
  border-color: var(--ui-line);
  border-radius: var(--ui-radius);
  background: var(--ui-surface);
  box-shadow: none;
}
[data-ui="enterprise-v2"] :where(.fb-palette-item:hover) {
  background: var(--ui-blue-soft);
  border-color: var(--ui-blue);
  transform: none;
}
[data-ui="enterprise-v2"] :where(.fb-field) {
  border-width: 1px;
  border-style: solid;
  border-color: var(--ui-line);
  background: var(--ui-surface);
}
[data-ui="enterprise-v2"] :where(.fb-field.selected) {
  border-width: 1px;
  border-color: var(--ui-blue);
  background: var(--ui-blue-soft);
  box-shadow: none;
}
[data-ui="enterprise-v2"] :where(.btn, .portal-btn, .btn-primary, .btn-accent) {
  border-radius: var(--ui-radius-sm);
  box-shadow: none;
  transition: background .18s ease, border-color .18s ease, color .18s ease, box-shadow .18s ease;
}
[data-ui="enterprise-v2"] :where(.btn:hover, .btn-primary:hover, .btn-accent:hover) { transform: none; }
[data-ui="enterprise-v2"] :where(.icon-btn:hover) { transform: none; }
[data-ui="enterprise-v2"] :where(.section) { padding: 56px 0; }
[data-ui="enterprise-v2"] :where(.section-head) { margin-bottom: 32px; }
[data-ui="enterprise-v2"] :where(.section-head h2) { font-size: clamp(24px, 3vw, 32px); color: var(--ui-ink); }
[data-ui="enterprise-v2"] :where(.card, .news-card, .video-card, .past-card, .entry-row, .dl-item, .member-panel, .member-quick-card, .member-service-card) {
  border-color: var(--ui-line);
  border-radius: var(--ui-radius);
  box-shadow: var(--ui-shadow);
}
[data-ui="enterprise-v2"] :where(.news-card:hover, .video-card:hover, .past-card:hover, .member-quick-card:hover, .member-service-card:hover) {
  transform: none;
  border-color: var(--ui-line-strong);
  box-shadow: var(--ui-shadow);
}
[data-ui="enterprise-v2"] :where(.filter-chip, .page-btn) { border-radius: var(--ui-radius-sm); }
[data-ui="enterprise-v2"] :where(.filter-chip.active, .page-btn.active) {
  background: var(--ui-blue);
  border-color: var(--ui-blue);
  color: #fff;
}
[data-ui="enterprise-v2"] :where(.nav, .nav--solid) {
  background: var(--ui-surface);
  border-bottom: 1px solid var(--ui-line);
  box-shadow: none;
}
[data-ui="enterprise-v2"] :where(.nav-links a) { border-radius: var(--ui-radius-sm); color: var(--ui-muted); }
[data-ui="enterprise-v2"] :where(.nav-links a:hover, .nav-links a.active) {
  background: var(--ui-blue-soft);
  color: var(--ui-blue-hover);
}
[data-ui="enterprise-v2"] :where(.footer) { background: var(--ui-blue-hover); }

/* 平台与租户工作区：旧页面仍有局部深蓝/大圆角定义，统一回到工作台密度。 */
[data-ui="enterprise-v2"] :where(.platform-shell, .ta-layout, .platform-layout) { background: var(--ui-page); }
[data-ui="enterprise-v2"] :where(.platform-shell .panel, .platform-layout .panel, .ta-form, .ta-stat, .ta-modrow) {
  border-radius: var(--ui-radius);
  border-color: var(--ui-line);
  box-shadow: var(--ui-shadow);
}
[data-ui="enterprise-v2"] :where(.platform-shell .tabs, .platform-layout .tabs, .ta-sidebar) { border-color: var(--ui-line); }
[data-ui="enterprise-v2"] :where(.platform-shell .tabs button.active, .platform-layout .tabs button.active) {
  color: var(--ui-blue-hover);
  border-bottom-color: var(--ui-blue);
}
[data-ui="enterprise-v2"] :where(.ta-nav.active) {
  background: var(--ui-blue-soft);
  color: var(--ui-blue-hover);
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--ui-blue) 20%, transparent);
}
[data-ui="enterprise-v2"] :where(.ta-nav, .platform-shell nav a, .platform-layout nav a) { min-height: 40px; }
@media (max-width: 720px) {
  [data-ui="enterprise-v2"] :where(.hero) { min-height: 0; padding: 48px 0; }
  [data-ui="enterprise-v2"] :where(.hero-inner) { gap: 28px; }
  [data-ui="enterprise-v2"] :where(.section) { padding: 40px 0; }
}

/* 会员中心：保留统一底座，补齐工作台的宽度、留白和服务入口层级。 */
[data-ui="enterprise-v2"] :where(.mp-topbar) {
  min-height: 72px;
  padding: 0 32px;
  background: var(--ui-surface);
  border-bottom-color: var(--ui-line);
}
[data-ui="enterprise-v2"] :where(.mp-brand) { color: var(--ui-ink); letter-spacing: .01em; }
[data-ui="enterprise-v2"] :where(.mp-main) { max-width: 760px; padding: 40px 24px 56px; }
[data-ui="enterprise-v2"] :where(.mp-card, .mp-news-item, .mp-service-card) {
  border-color: var(--ui-line);
  border-radius: var(--ui-radius);
  background: var(--ui-surface);
  box-shadow: var(--ui-shadow);
}
[data-ui="enterprise-v2"] :where(.mp-card) { padding: 24px; }
[data-ui="enterprise-v2"] :where(.mp-title) { color: var(--ui-ink); font-size: 24px; line-height: 1.35; }
[data-ui="enterprise-v2"] :where(.mp-sub, .mp-form label, .mp-row .k, .mp-news-body, .mp-service-card small) { color: var(--ui-helper); }
[data-ui="enterprise-v2"] :where(.mp-form input) {
  min-height: 40px;
  border-color: var(--ui-line-strong);
  border-radius: var(--ui-radius-sm);
  background: var(--ui-surface);
  color: var(--ui-ink);
}
[data-ui="enterprise-v2"] :where(.mp-form input:focus) {
  outline: none;
  border-color: var(--ui-blue);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--ui-blue) 15%, transparent);
}
[data-ui="enterprise-v2"] :where(.mp-service-grid) { gap: 16px; }
[data-ui="enterprise-v2"] :where(.mp-service-icon) {
  border-radius: var(--ui-radius-sm);
  background: var(--ui-blue-soft);
  border-color: var(--ui-line);
  color: var(--ui-blue-hover);
}
[data-ui="enterprise-v2"] :where(.mp-profile-progress, .mp-badge.pub) {
  color: var(--ui-blue-hover);
  background: var(--ui-blue-soft);
}
[data-ui="enterprise-v2"] :where(.mp-service-card strong) {
  color: var(--ui-ink);
  font-weight: 600;
}
[data-ui="enterprise-v2"] :where(.mp-service-card em) {
  color: var(--ui-blue-hover);
  font-weight: 600;
}
[data-ui="enterprise-v2"] :where(.mp-profile-edit, .mp-form-actions .btn, .mp-logout) {
  min-height: 40px;
  border: 1px solid var(--ui-line-strong);
  border-radius: var(--ui-radius-sm);
  background: var(--ui-surface);
  color: var(--ui-blue-hover);
}
[data-ui="enterprise-v2"] :where(.mp-profile-edit:hover, .mp-form-actions .btn:hover, .mp-logout:hover) {
  border-color: var(--ui-blue);
  background: var(--ui-blue-soft);
  color: var(--ui-blue-hover);
}
[data-ui="enterprise-v2"] :where(.mp-form-actions .btn-primary, .mp-form-actions .btn-primary:hover) {
  border-color: var(--ui-blue);
  background: var(--ui-blue);
  color: #fff;
}
@media (max-width: 600px) {
  [data-ui="enterprise-v2"] :where(.mp-topbar) { min-height: 64px; padding: 0 16px; }
  [data-ui="enterprise-v2"] :where(.mp-main) { padding: 28px 16px 40px; }
  [data-ui="enterprise-v2"] :where(.mp-card) { padding: 20px; }
}
@media (max-width: 520px) {
  [data-ui="enterprise-v2"] :where(.mp-section-head) { display: block; }
  [data-ui="enterprise-v2"] :where(.mp-profile-edit) { display: inline-flex; width: 100%; margin: 12px 0 0; align-items: center; justify-content: center; }
  [data-ui="enterprise-v2"] :where(.mp-form-actions) { display: grid; grid-template-columns: 1fr; }
  [data-ui="enterprise-v2"] :where(.mp-form-actions .btn, .mp-logout) { min-height: 44px; }
}

/* 投票管理普通工作区：与监票大屏彻底分离，统一列表、编辑器和操作层。
   这里仅覆盖 .vb-* 普通管理类；.vb-mon-* 仍由 monitor.html 的独立视觉负责。 */
[data-ui="enterprise-v2"] :where(.vb-shell, .vb-page, .vb-main, .vb-workbench) {
  color: var(--ui-ink);
  background: var(--ui-page);
}
[data-ui="enterprise-v2"] :where(.vb-topbar, .vb-list-toolbar, .vb-tabs, .vb-submit-bar, .vb-pane, .vb-card, .vb-stat-card, .vb-publish-check, .vb-banner-preview, .vb-report-table, .vb-dropdown-panel) {
  border-color: var(--ui-line);
  border-radius: var(--ui-radius);
  background: var(--ui-surface);
  box-shadow: var(--ui-shadow);
}
[data-ui="enterprise-v2"] :where(.vb-topbar, .vb-list-toolbar, .vb-submit-bar) {
  padding: 12px 16px;
}
[data-ui="enterprise-v2"] :where(.vb-card, .vb-pane, .vb-stat-card) {
  color: var(--ui-ink);
}
[data-ui="enterprise-v2"] :where(.vb-card:hover, .vb-pub-card:hover, .vb-file-type-chip:hover) {
  border-color: var(--ui-line-strong);
  box-shadow: var(--ui-shadow-hover);
  transform: none;
}
[data-ui="enterprise-v2"] :where(.vb-card-cover, .vb-banner-preview, .vb-stat-card) {
  background-color: var(--ui-blue-soft);
}
[data-ui="enterprise-v2"] :where(.vb-card-meta, .vb-filename, .vb-ft-label, .vb-list-select-all, .vb-status-tab, .vb-dropdown-arrow) {
  color: var(--ui-muted);
}
[data-ui="enterprise-v2"] :where(.vb-card-foot, .vb-report-table th, .vb-report-table td, .vb-setting-group) {
  border-color: var(--ui-line);
}
[data-ui="enterprise-v2"] :where(.vb-report-table th, .vb-report-table thead th) {
  background: var(--ui-surface-soft);
  color: var(--ui-muted);
}
[data-ui="enterprise-v2"] :where(.vb-table tbody tr:hover, .vb-report-table tbody tr:hover, .vb-pub-card.active, .vb-status-tab.active, .vb-file-type-chip:has(input:checked)) {
  background: var(--ui-blue-soft);
  border-color: var(--ui-blue);
  color: var(--ui-blue-hover);
}
[data-ui="enterprise-v2"] :where(.vb-tabs, .vb-mobile-panels) {
  gap: 4px;
  padding: 6px;
}
[data-ui="enterprise-v2"] :where(.vb-tab, .vb-mobile-panel-btn, .vb-status-tab, .vb-file-type-chip) {
  min-height: 32px;
  border: 1px solid var(--ui-line);
  border-radius: var(--ui-radius-sm);
  background: var(--ui-surface);
  color: var(--ui-muted);
}
[data-ui="enterprise-v2"] :where(.vb-tab:hover, .vb-mobile-panel-btn:hover, .vb-status-tab:hover, .vb-file-type-chip:hover) {
  background: var(--ui-blue-soft);
  border-color: var(--ui-line-strong);
  color: var(--ui-blue-hover);
}
[data-ui="enterprise-v2"] :where(.vb-tab.active, .vb-mobile-panel-btn.active, .vb-status-tab.active) {
  background: var(--ui-blue);
  border-color: var(--ui-blue);
  color: #fff;
}
[data-ui="enterprise-v2"] :where(.vb-edit-sticky, .vb-header-action, .vb-topbar-ops .va-shared-control, .vb-topbar-ops .va-countdown-inline) {
  border-color: var(--ui-line);
  background: var(--ui-surface);
  color: var(--ui-muted);
}
[data-ui="enterprise-v2"] :where(.vb-edit-sticky .vb-header-status) {
  border-color: var(--ui-line);
  background: var(--ui-blue-soft);
  color: var(--ui-blue-hover);
}
[data-ui="enterprise-v2"] :where(.vb-header-action:hover, .vb-edit-sticky .vb-header-action:hover) {
  border-color: var(--ui-blue);
  background: var(--ui-blue-soft);
  color: var(--ui-blue-hover);
}
[data-ui="enterprise-v2"] :where(.vb-edit-sticky .vb-topbar-ops .btn-secondary, .vb-submit-bar .btn-primary) {
  background: var(--ui-blue) !important;
  border-color: var(--ui-blue) !important;
  color: #fff !important;
  box-shadow: none !important;
}
[data-ui="enterprise-v2"] :where(.vb-edit-sticky .vb-topbar-ops .btn-secondary:hover, .vb-submit-bar .btn-primary:hover) {
  background: var(--ui-blue-hover) !important;
  border-color: var(--ui-blue-hover) !important;
}
[data-ui="enterprise-v2"] :where(.vb-op-del, .vb-banner-actions .btn-danger) {
  color: var(--ui-danger) !important;
  border-color: color-mix(in srgb, var(--ui-danger) 28%, var(--ui-line)) !important;
  background: var(--ui-surface) !important;
}
[data-ui="enterprise-v2"] :where(.vb-op-del:hover, .vb-banner-actions .btn-danger:hover) {
  color: var(--ui-danger) !important;
  background: color-mix(in srgb, var(--ui-danger) 8%, var(--ui-surface)) !important;
}
[data-ui="enterprise-v2"] :where(.vb-publish-check > span) { background: var(--ui-helper); }
[data-ui="enterprise-v2"] :where(.vb-publish-check.is-ok > span) { background: var(--ui-success); }
[data-ui="enterprise-v2"] :where(.vb-publish-check.is-warn > span) { background: var(--ui-warning); }
[data-ui="enterprise-v2"] :where(.vb-chip, .vb-status-badge) {
  background: var(--ui-blue-soft);
  color: var(--ui-blue-hover);
  border-color: var(--ui-line);
}
[data-ui="enterprise-v2"] :where(.vb-status-badge) { color: var(--ui-blue-hover); }
[data-ui="enterprise-v2"] :where(.vb-edit-sticky .vb-status-pill) {
  border-color: var(--ui-line);
  background: var(--ui-surface);
  color: var(--ui-muted);
  box-shadow: none;
  transform: none;
}
[data-ui="enterprise-v2"] :where(.vb-edit-sticky .vb-status-pill.active) {
  border-color: var(--ui-blue);
  background: var(--ui-blue);
  color: #fff;
  box-shadow: none;
  transform: none;
}
@media (max-width: 720px) {
  [data-ui="enterprise-v2"] :where(.vb-topbar, .vb-list-toolbar, .vb-submit-bar) { padding: 12px; }
  [data-ui="enterprise-v2"] :where(.vb-card, .vb-pane) { border-radius: var(--ui-radius-sm); }
  [data-ui="enterprise-v2"] :where(.vb-topbar-ops .btn, .vb-submit-bar .btn) { min-height: 44px; }
}

/* 培训与大赛工作区：把旧的密集表单、步骤条和多色标签收口到同一工作台节奏。 */
[data-ui="enterprise-v2"] :where(.training-view, .comp-view, .competition-view) {
  color: var(--ui-ink);
}
[data-ui="enterprise-v2"] :where(.training-view > .tabs, .comp-view > .tabs, .competition-view > .tabs, .lib-toolbar) {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  padding: 10px 12px;
  margin-bottom: 16px;
  border: 1px solid var(--ui-line);
  border-radius: var(--ui-radius);
  background: var(--ui-surface);
  box-shadow: var(--ui-shadow);
}
[data-ui="enterprise-v2"] :where(.training-view > .tabs .btn, .comp-view > .tabs .btn, .competition-view > .tabs .btn) {
  min-height: 40px;
  border: 1px solid transparent;
  border-radius: var(--ui-radius-sm);
  background: transparent;
  color: var(--ui-muted);
  box-shadow: none;
}
[data-ui="enterprise-v2"] :where(.training-view > .tabs .btn:hover, .comp-view > .tabs .btn:hover, .competition-view > .tabs .btn:hover) {
  border-color: var(--ui-line);
  background: var(--ui-surface-soft);
  color: var(--ui-blue-hover);
  transform: none;
}
[data-ui="enterprise-v2"] :where(.training-view > .tabs .btn.btn-primary, .comp-view > .tabs .btn.btn-primary, .competition-view > .tabs .btn.btn-primary) {
  border-color: var(--ui-line-strong);
  background: var(--ui-blue-soft);
  color: var(--ui-blue-hover);
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--ui-blue) 10%, transparent);
}
[data-ui="enterprise-v2"] :where(.training-view .card.glass, .comp-view .card.glass, .competition-view .card.glass, .lib-card, .group-card, .ed-dim) {
  border: 1px solid var(--ui-line);
  border-radius: var(--ui-radius);
  background: var(--ui-surface);
  box-shadow: var(--ui-shadow);
}
[data-ui="enterprise-v2"] :where(.training-view .card.glass:hover, .comp-view .card.glass:hover, .competition-view .card.glass:hover, .lib-card:hover) {
  border-color: var(--ui-line-strong);
  box-shadow: var(--ui-shadow-hover);
}
[data-ui="enterprise-v2"] :where(.training-view .data-table, .comp-view .data-table, .competition-view .data-table, .lib-card, .group-card) {
  overflow: hidden;
}
[data-ui="enterprise-v2"] :where(.training-view .data-table th, .comp-view .data-table th, .competition-view .data-table th, .lib-dim-h, .group-head) {
  background: var(--ui-surface-soft);
  color: var(--ui-muted);
  border-color: var(--ui-line);
}
[data-ui="enterprise-v2"] :where(.training-view .data-table td, .comp-view .data-table td, .competition-view .data-table td, .lib-item, .group-apps) {
  border-color: var(--ui-line);
  color: var(--ui-ink);
}
[data-ui="enterprise-v2"] :where(.training-view .data-table tbody tr:hover, .comp-view .data-table tbody tr:hover, .competition-view .data-table tbody tr:hover, .lib-item:hover) {
  background: var(--ui-blue-soft);
}
[data-ui="enterprise-v2"] :where(.training-view .card-sub, .training-view .muted, .comp-view .card-sub, .comp-view .cell-sub, .competition-view .card-sub, .competition-view .cell-sub, .lib-dim .w, .lib-meta) {
  color: var(--ui-helper);
}
[data-ui="enterprise-v2"] :where(.training-view h2, .training-view h3, .training-view h4, .comp-view h2, .comp-view h3, .competition-view h2, .competition-view h3, .lib-name) {
  color: var(--ui-ink);
}
[data-ui="enterprise-v2"] :where(.training-view .badge, .comp-view .badge, .competition-view .badge, .lib-chip, .stage-pills .sp, .chip) {
  border: 1px solid var(--ui-line);
  border-radius: 999px;
  background: var(--ui-surface-soft);
  color: var(--ui-muted);
}
[data-ui="enterprise-v2"] :where(.training-view .badge-blue, .comp-view .badge-blue, .competition-view .badge-blue, .stage-pills .sp.cur, .lib-chip.mode) {
  border-color: var(--ui-line-strong);
  background: var(--ui-blue-soft);
  color: var(--ui-blue-hover);
  box-shadow: none;
}
[data-ui="enterprise-v2"] :where(.training-view .badge-green, .comp-view .badge-green, .competition-view .badge-green) {
  background: color-mix(in srgb, var(--ui-success) 10%, var(--ui-surface));
  border-color: color-mix(in srgb, var(--ui-success) 28%, var(--ui-line));
  color: var(--ui-success);
}
[data-ui="enterprise-v2"] :where(.training-view .badge-red, .comp-view .badge-red, .competition-view .badge-red) {
  background: color-mix(in srgb, var(--ui-danger) 8%, var(--ui-surface));
  border-color: color-mix(in srgb, var(--ui-danger) 24%, var(--ui-line));
  color: var(--ui-danger);
}
[data-ui="enterprise-v2"] :where(.training-wizard-steps) {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 8px;
  margin: 16px 0;
  padding: 10px;
  border: 1px solid var(--ui-line);
  border-radius: var(--ui-radius);
  background: var(--ui-surface-soft);
}
[data-ui="enterprise-v2"] :where(.training-wizard-steps span) {
  display: flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
  padding: 8px;
  border-radius: var(--ui-radius-sm);
  color: var(--ui-helper);
  font-size: 12px;
}
[data-ui="enterprise-v2"] :where(.training-wizard-steps span b) {
  display: grid;
  place-items: center;
  width: 24px;
  height: 24px;
  flex: 0 0 auto;
  border: 1px solid var(--ui-line-strong);
  border-radius: 50%;
  background: var(--ui-surface);
  color: var(--ui-muted);
}
[data-ui="enterprise-v2"] :where(.training-wizard-steps span.is-active) {
  background: var(--ui-blue-soft);
  color: var(--ui-blue-hover);
}
[data-ui="enterprise-v2"] :where(.training-wizard-steps span.is-active b) {
  border-color: var(--ui-blue);
  background: var(--ui-blue);
  color: #fff;
}
[data-ui="enterprise-v2"] :where(.wizard-pane, .ed-dim, .group-card) { padding: 16px; }
[data-ui="enterprise-v2"] :where(.ed-item-row) {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 100px minmax(0, 1.4fr) auto;
  gap: 8px;
  align-items: center;
  padding: 8px 0;
  border-top: 1px solid var(--ui-line);
}
[data-ui="enterprise-v2"] :where(.steps) { color: var(--ui-helper); }
[data-ui="enterprise-v2"] :where(.step-node) {
  border-color: var(--ui-line-strong);
  background: var(--ui-surface);
  color: var(--ui-muted);
}
[data-ui="enterprise-v2"] :where(.step-node.done, .step-node.active) {
  border-color: var(--ui-blue);
  background: var(--ui-blue);
  color: #fff;
}
[data-ui="enterprise-v2"] :where(.step-line, .step-line.done) { background: var(--ui-line-strong); }
[data-ui="enterprise-v2"] :where(.step-line.done) { background: var(--ui-blue); }
@media (max-width: 720px) {
  [data-ui="enterprise-v2"] :where(.training-wizard-steps) { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  [data-ui="enterprise-v2"] :where(.ed-item-row) { grid-template-columns: 1fr; }
  [data-ui="enterprise-v2"] :where(.training-view > .tabs .btn, .comp-view > .tabs .btn, .competition-view > .tabs .btn) { min-height: 44px; }
}

/* 网站运营、注册字段与权限中心：统一编辑器、矩阵和内容管理的密度。 */
[data-ui="enterprise-v2"] :where(.web-actions, .news-toolbar, .perm-toolbar, .rf-side, .rf-main, .perm-preview) {
  border-color: var(--ui-line-strong);
  border-radius: var(--ui-radius);
  background: var(--ui-surface);
  box-shadow: var(--ui-shadow);
}
[data-ui="enterprise-v2"] :where(.web-actions) { padding: 12px 16px; box-shadow: var(--ui-shadow-hover); }
[data-ui="enterprise-v2"] :where(.rte) {
  overflow: hidden;
  border: 1px solid var(--ui-line-strong);
  border-radius: var(--ui-radius-sm);
  background: var(--ui-surface);
}
[data-ui="enterprise-v2"] :where(.rte-toolbar) {
  gap: 6px;
  border-bottom-color: var(--ui-line);
  background: var(--ui-surface-soft);
}
[data-ui="enterprise-v2"] :where(.rte-btn) {
  min-height: 32px;
  border-color: var(--ui-line);
  border-radius: 6px;
  background: var(--ui-surface);
  color: var(--ui-muted);
}
[data-ui="enterprise-v2"] :where(.rte-btn:hover) {
  border-color: var(--ui-blue);
  background: var(--ui-blue-soft);
  color: var(--ui-blue-hover);
}
[data-ui="enterprise-v2"] :where(.rte-btn) {
  display: inline-flex;
  min-width: 32px;
  align-items: center;
  justify-content: center;
  padding: 0 8px;
}
[data-ui="enterprise-v2"] :where(.rte-content) { color: var(--ui-ink); }
[data-ui="enterprise-v2"] :where(.news-editor, .news-list) { gap: 12px; }
[data-ui="enterprise-v2"] :where(.ne-card, .nr-row) {
  border-color: var(--ui-line);
  border-radius: var(--ui-radius);
  background: var(--ui-surface);
  box-shadow: var(--ui-shadow);
}
[data-ui="enterprise-v2"] :where(.ne-card:hover, .nr-row:hover) {
  border-color: var(--ui-line-strong);
  box-shadow: var(--ui-shadow-hover);
  transform: none;
}
[data-ui="enterprise-v2"] :where(.ne-id, .tag-check, .nr-cat) {
  border-color: var(--ui-line);
  background: var(--ui-surface-soft);
  color: var(--ui-muted);
}
[data-ui="enterprise-v2"] :where(.ne-status.published, .ne-status.draft, .nr-row.pinned) {
  border-color: var(--ui-line);
  background: var(--ui-blue-soft);
  color: var(--ui-blue-hover);
}
[data-ui="enterprise-v2"] :where(.ne-status.published) {
  background: color-mix(in srgb, var(--ui-success) 10%, var(--ui-surface));
  border-color: color-mix(in srgb, var(--ui-success) 28%, var(--ui-line));
  color: var(--ui-success);
}
[data-ui="enterprise-v2"] :where(.ne-actions) { border-top-color: var(--ui-line); }
[data-ui="enterprise-v2"] :where(.perm-page .perm-matrix, .perm-page .tbl, .rf-main table) {
  border-color: var(--ui-line);
}
[data-ui="enterprise-v2"] :where(.perm-page .perm-matrix th, .perm-page .tbl th, .rf-main th) {
  background: var(--ui-surface-soft);
  color: var(--ui-muted);
  border-color: var(--ui-line);
}
[data-ui="enterprise-v2"] :where(.perm-page .perm-matrix td, .perm-page .tbl td, .rf-main td) {
  border-color: var(--ui-line);
  color: var(--ui-ink);
}
[data-ui="enterprise-v2"] :where(.perm-g-nav-item) { min-height: 40px; border-radius: var(--ui-radius-sm); }
[data-ui="enterprise-v2"] :where(.perm-module-toggle) { min-height: 40px; border-radius: var(--ui-radius-sm); }
[data-ui="enterprise-v2"] :where(.perm-tile) { min-height: 72px; border-radius: var(--ui-radius-sm); }
[data-ui="enterprise-v2"] :where(.rf-ico) { min-width: 32px; min-height: 32px; border-radius: var(--ui-radius-sm); }
[data-ui="enterprise-v2"] :where(.rf-field-acts .btn) { min-height: 32px; }
@media (max-width: 900px) {
  [data-ui="enterprise-v2"] :where(.rf-layout) { grid-template-columns: 1fr; }
  [data-ui="enterprise-v2"] :where(.rf-side) { position: static; }
}
@media (max-width: 720px) {
  [data-ui="enterprise-v2"] :where(.perm-g-layout) { grid-template-columns: 1fr; }
  [data-ui="enterprise-v2"] :where(.perm-g-sidebar) { border-right: 0; border-bottom: 1px solid var(--ui-line); }
  [data-ui="enterprise-v2"] :where(.perm-g-nav-item) { min-height: 44px; }
  [data-ui="enterprise-v2"] :where(.web-actions) { position: static; }
  [data-ui="enterprise-v2"] :where(.web-actions > *, .rte-btn) { min-height: 44px; }
}
[data-ui="enterprise-v2"] :where(.perm-page .perm-matrix tbody tr:hover, .perm-page .tbl tbody tr:hover, .rf-main tr:hover) { background: var(--ui-blue-soft); }
[data-ui="enterprise-v2"] :where(.perm-g-layout) {
  border-color: var(--ui-line);
  border-radius: var(--ui-radius);
  background: var(--ui-surface);
}
[data-ui="enterprise-v2"] :where(.perm-g-sidebar) {
  border-right-color: var(--ui-line);
  background: var(--ui-surface-soft);
}
[data-ui="enterprise-v2"] :where(.perm-g-nav-item) { color: var(--ui-muted); border-radius: var(--ui-radius-sm); }
[data-ui="enterprise-v2"] :where(.perm-g-nav-item:hover, .perm-g-nav-item.is-active) {
  border-left-color: var(--ui-blue);
  background: var(--ui-surface);
  color: var(--ui-blue-hover);
}
[data-ui="enterprise-v2"] :where(.perm-module-toggle, .perm-tile, .perm-tile.is-locked) {
  border-color: var(--ui-line);
  border-radius: var(--ui-radius-sm);
  background: var(--ui-surface);
}
[data-ui="enterprise-v2"] :where(.perm-module-toggle:has(input:not(:checked)), .perm-tile.is-locked, .perm-tile.is-module-disabled) { background: var(--ui-surface-soft); }
[data-ui="enterprise-v2"] :where(.perm-tile:hover, .perm-tile:has(input:checked)) {
  border-color: var(--ui-blue);
  background: var(--ui-blue-soft);
  box-shadow: none;
}
[data-ui="enterprise-v2"] :where(.perm-tile-title, .perm-preview-title, .rf-field-label) { color: var(--ui-ink); }
[data-ui="enterprise-v2"] :where(.perm-tile-key, .perm-tile-note, .perm-g-hint, .rf-field-meta, .rf-drag) { color: var(--ui-helper); }
[data-ui="enterprise-v2"] :where(.rf-group, .rf-field-row, .rf-ico, .rf-opt-del) {
  border-color: var(--ui-line);
  border-radius: var(--ui-radius-sm);
  background: var(--ui-surface);
}
[data-ui="enterprise-v2"] :where(.rf-group:hover, .rf-field-row:hover, .rf-ico:hover, .rf-field-row.rf-drag-over) {
  border-color: var(--ui-blue);
  background: var(--ui-blue-soft);
  box-shadow: none;
}
[data-ui="enterprise-v2"] :where(.rf-flag.on, .rf-core) {
  color: var(--ui-blue-hover);
  border-color: var(--ui-line-strong);
  background: var(--ui-blue-soft);
}
[data-ui="enterprise-v2"] :where(.rf-flag.req, .rf-del-group:hover, .rf-opt-del) { color: var(--ui-danger); }
@media (max-width: 720px) {
  [data-ui="enterprise-v2"] :where(.web-actions) { position: static; }
  [data-ui="enterprise-v2"] :where(.perm-tile-grid) { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  [data-ui="enterprise-v2"] :where(.rf-field-row) { align-items: flex-start; flex-wrap: wrap; }
  [data-ui="enterprise-v2"] :where(.rf-field-acts) { width: 100%; justify-content: flex-end; }
}

/* 平台管理员、租户后台与统一会员中心：共享同一层级，但保留各自信息架构。 */
[data-ui="enterprise-v2"] :where(.sidebar, .ta-sidebar) {
  background: var(--ui-surface);
  border-color: var(--ui-line);
}
[data-ui="enterprise-v2"] :where(.brand, .ta-brand, .mp-brand, .operator, .ta-topbar-right) { color: var(--ui-ink); }
[data-ui="enterprise-v2"] :where(.brand small, .operator, .ta-tenant, .ta-link, .ta-section-sub) { color: var(--ui-helper); }
[data-ui="enterprise-v2"] :where(.brand-mark) { background: var(--ui-blue); border-radius: var(--ui-radius-sm); }
[data-ui="enterprise-v2"] :where(.sidebar nav a, .ta-nav) {
  color: var(--ui-muted);
  border-radius: var(--ui-radius-sm);
}
[data-ui="enterprise-v2"] :where(.sidebar nav a:hover, .sidebar nav a.active, .ta-nav:hover, .ta-nav.active) {
  background: var(--ui-blue-soft);
  color: var(--ui-blue-hover);
  border-left-color: var(--ui-blue);
}
[data-ui="enterprise-v2"] :where(main, .ta-main) { background: var(--ui-page); }
[data-ui="enterprise-v2"] :where(main > header, .ta-topbar) { border-color: var(--ui-line); }
[data-ui="enterprise-v2"] :where(.eyebrow, .back-button, .link-button) { color: var(--ui-blue-hover); }
[data-ui="enterprise-v2"] :where(.metrics, .detail-grid) { gap: 16px; }
[data-ui="enterprise-v2"] :where(.metric, .panel, .ta-stat, .ta-form, .ta-modrow, .tab-panel) {
  border-color: var(--ui-line);
  border-radius: var(--ui-radius);
  background: var(--ui-surface);
  box-shadow: var(--ui-shadow);
}
[data-ui="enterprise-v2"] :where(.metric span, .muted, .ta-stat-label, .ta-mod-desc, .operator-card span, .notice-list span) { color: var(--ui-helper); }
[data-ui="enterprise-v2"] :where(.metric b, .ta-stat-num) { color: var(--ui-ink); }
[data-ui="enterprise-v2"] :where(.panel-head, .section-head, .notice-list div, .operator-card, .module-line, .operator-line) { border-color: var(--ui-line); }
[data-ui="enterprise-v2"] :where(.panel h2, .section-head h3, .section-copy h3, .operator-card strong) { color: var(--ui-ink); }
[data-ui="enterprise-v2"] :where(.table-wrap table th, .ta-table th) {
  background: var(--ui-surface-soft);
  color: var(--ui-muted);
  border-color: var(--ui-line);
}
[data-ui="enterprise-v2"] :where(.table-wrap table td, .ta-table td) { border-color: var(--ui-line); color: var(--ui-ink); }
[data-ui="enterprise-v2"] :where(.table-wrap table tbody tr:hover, .ta-table tbody tr:hover) { background: var(--ui-blue-soft); }
[data-ui="enterprise-v2"] :where(.pill.green, .ta-badge:not(.off), .good) {
  background: color-mix(in srgb, var(--ui-success) 10%, var(--ui-surface));
  color: var(--ui-success);
}
[data-ui="enterprise-v2"] :where(.pill.gray, .ta-badge.off) { background: var(--ui-surface-soft); color: var(--ui-helper); }
[data-ui="enterprise-v2"] :where(.warn) { color: var(--ui-warning); }
[data-ui="enterprise-v2"] :where(.danger) { color: var(--ui-danger); }
[data-ui="enterprise-v2"] :where(.toolbar, .tenant-context, .tabs) { border-color: var(--ui-line); }
[data-ui="enterprise-v2"] :where(.tabs button) { color: var(--ui-muted); border-radius: var(--ui-radius-sm); }
[data-ui="enterprise-v2"] :where(.tabs button:hover, .tabs button.active) { color: var(--ui-blue-hover); border-bottom-color: var(--ui-blue); background: var(--ui-blue-soft); }
[data-ui="enterprise-v2"] :where(.module-line, .operator-line, .operator-card) { background: var(--ui-surface); }
[data-ui="enterprise-v2"] :where(.module-line em) { color: var(--ui-success); }
[data-ui="enterprise-v2"] :where(.module-grid label, .operator-line select, dialog fieldset) { border-color: var(--ui-line); background: var(--ui-surface-soft); }
[data-ui="enterprise-v2"] :where(dialog) { border: 1px solid var(--ui-line); border-radius: var(--ui-radius-lg); background: var(--ui-surface); }
[data-ui="enterprise-v2"] :where(dialog::backdrop) { background: color-mix(in srgb, var(--ui-ink) 28%, transparent); }
[data-ui="enterprise-v2"] :where(.empty, .empty-block, .ta-loading) { color: var(--ui-helper); }
[data-ui="enterprise-v2"] :where(.mp-profile, .mp-workbench) { color: var(--ui-ink); }
[data-ui="enterprise-v2"] :where(.mp-avatar) { background: var(--ui-blue); }
[data-ui="enterprise-v2"] :where(.mp-tier, .mp-profile-progress) { background: var(--ui-blue-soft); color: var(--ui-blue-hover); }
[data-ui="enterprise-v2"] :where(.mp-row, .mp-news-item, .mp-service-card) { border-color: var(--ui-line); }
[data-ui="enterprise-v2"] :where(.mp-row .k, .mp-news-body, .mp-form label, .mp-service-card small) { color: var(--ui-helper); }
[data-ui="enterprise-v2"] :where(.mp-service-card:hover) { border-color: var(--ui-blue); }
[data-ui="enterprise-v2"] :where(.btn-sm) { --bh: 40px; }
@media (max-width: 760px) {
  [data-ui="enterprise-v2"] :where(main) { padding: 24px 16px; }
  [data-ui="enterprise-v2"] :where(.metrics, .detail-grid) { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  [data-ui="enterprise-v2"] :where(.operator-grid) { grid-template-columns: 1fr; }
}
@media (max-width: 480px) {
  [data-ui="enterprise-v2"] :where(.metrics, .detail-grid) { grid-template-columns: 1fr; }
  [data-ui="enterprise-v2"] :where(.header-actions, .toolbar) { align-items: stretch; flex-wrap: wrap; }
  [data-ui="enterprise-v2"] :where(.header-actions > *, .toolbar > *) { min-height: 44px; }
}

/* 会务角色工作台与展出/供应商协作：统一复杂执行页面的状态层级。 */
[data-ui="enterprise-v2"] :where(.ewb-page, .ecc-page) { color: var(--ui-ink); }
[data-ui="enterprise-v2"] :where(.ewb-card, .ewb-meta, .ewb-stat, .ewb-stage-nav, .ewb-seating-plan-tools, .ewb-seating-plan-seat-form, .ecc-panel, .ecc-card) {
  border-color: var(--ui-line);
  border-radius: var(--ui-radius);
  background: var(--ui-surface);
  box-shadow: var(--ui-shadow);
}
[data-ui="enterprise-v2"] :where(.ewb-title-row h2, .ewb-card h3, .ewb-stage-nav b, .ecc-section-head h3, .ecc-card h4) { color: var(--ui-ink); }
[data-ui="enterprise-v2"] :where(.ewb-crumb, .ewb-header p, .ewb-card-head p, .ewb-meta, .ewb-stat span, .ewb-row small, .ewb-tasks small, .ewb-next, .ecc-section-head p, .ecc-hint) { color: var(--ui-helper); }
[data-ui="enterprise-v2"] :where(.ewb-stat b) { color: var(--ui-ink); }
[data-ui="enterprise-v2"] :where(.ewb-table, .ewb-row, .ewb-row-head, .ewb-tasks li, .ecc-table-head, .ecc-table-row) { border-color: var(--ui-line); }
[data-ui="enterprise-v2"] :where(.ewb-row-head, .ecc-table-head) { background: var(--ui-surface-soft); color: var(--ui-muted); }
[data-ui="enterprise-v2"] :where(.ewb-row:hover, .ecc-table-row:hover) { background: var(--ui-blue-soft); }
[data-ui="enterprise-v2"] :where(.ewb-filters, .ewb-quick-form, .ecc-inline-form) { gap: 8px; }
[data-ui="enterprise-v2"] :where(.ewb-filter, .ewb-filters input, .ewb-seating-plan-tools select, .ewb-seating-plan-seat-form select, .ewb-seating-plan-seat-form input, .ecc-inline-form input, .ecc-inline-form select) {
  min-height: 40px;
  border-color: var(--ui-line-strong);
  border-radius: var(--ui-radius-sm);
  background: var(--ui-surface);
  color: var(--ui-ink);
}
[data-ui="enterprise-v2"] :where(.ewb-filter.active) { background: var(--ui-blue); border-color: var(--ui-blue); color: #fff; }
[data-ui="enterprise-v2"] :where(.ewb-link, .ecc-link, .ecc-message) { color: var(--ui-blue-hover); }
[data-ui="enterprise-v2"] :where(.ewb-status, .ecc-version) { border-color: var(--ui-line-strong); background: var(--ui-blue-soft); color: var(--ui-blue-hover); }
[data-ui="enterprise-v2"] :where(.ewb-steps b.done, .ewb-steps b.active) { color: var(--ui-blue-hover); }
[data-ui="enterprise-v2"] :where(.ewb-steps b.done::before, .ewb-steps b.active::before, .ewb-progress em) { border-color: var(--ui-blue); background: var(--ui-blue); }
[data-ui="enterprise-v2"] :where(.ewb-steps b::before) { border-color: var(--ui-line-strong); background: var(--ui-surface); }
[data-ui="enterprise-v2"] :where(.ewb-steps b::after) { background: var(--ui-line); }
[data-ui="enterprise-v2"] :where(.ewb-seating-canvas) { border-color: var(--ui-line-strong); background: var(--ui-surface-soft); }
[data-ui="enterprise-v2"] :where(.ewb-seating-table, .ewb-seating-table[data-ewb-table-type="round"], .ewb-seating-table[data-ewb-table-type="long"], .ewb-seating-table[data-ewb-table-type="sofa"], .ewb-seating-table[data-ewb-table-type="custom"]) {
  background: var(--ui-blue-soft);
  border-color: var(--ui-line-strong);
  color: var(--ui-ink);
}
[data-ui="enterprise-v2"] :where(.ewb-seating-seat, .ewb-seating-seat.is-locked, .ewb-seating-seat.is-reserved) {
  border-color: var(--ui-line-strong);
  background: var(--ui-surface);
  color: var(--ui-ink);
}
[data-ui="enterprise-v2"] :where(.ewb-seating-seat.is-locked) { border-color: var(--ui-blue); background: var(--ui-blue-soft); color: var(--ui-blue-hover); }
[data-ui="enterprise-v2"] :where(.ewb-seating-seat.is-reserved) { border-style: dashed; border-color: var(--ui-warning); background: color-mix(in srgb, var(--ui-warning) 10%, var(--ui-surface)); color: var(--ui-warning); }
[data-ui="enterprise-v2"] :where(.ecc-mini-list span, .ecc-point-row img) { border-color: var(--ui-line); background: var(--ui-surface-soft); }
@media (max-width: 720px) {
  [data-ui="enterprise-v2"] :where(.ewb-stats) { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  [data-ui="enterprise-v2"] :where(.ewb-filters, .ewb-quick-form, .ecc-inline-form) { display: grid; grid-template-columns: 1fr; }
  [data-ui="enterprise-v2"] :where(.ewb-filters input, .ewb-quick-form input, .ewb-quick-form select, .ewb-quick-form button, .ecc-inline-form input, .ecc-inline-form select, .ecc-inline-form button) { width: 100%; }
}

/* 状态同步与分享辅助页：作为正式运行入口，使用相同的步骤、表面和反馈语言。 */
[data-ui="enterprise-v2"] :where(.wrap) { color: var(--ui-ink); }
[data-ui="enterprise-v2"] :where(.wrap > .card, .wrap .card) {
  border: 1px solid var(--ui-line);
  border-radius: var(--ui-radius);
  background: var(--ui-surface);
  box-shadow: var(--ui-shadow);
}
[data-ui="enterprise-v2"] :where(.step) { color: var(--ui-ink); border-color: var(--ui-line); }
[data-ui="enterprise-v2"] :where(.drop) { border-color: var(--ui-line-strong); background: var(--ui-surface-soft); }
[data-ui="enterprise-v2"] :where(.drop.dragover) { border-color: var(--ui-blue); background: var(--ui-blue-soft); }
[data-ui="enterprise-v2"] :where(.hint, .subtitle, .capacity, .log) { color: var(--ui-helper); }
[data-ui="enterprise-v2"] :where(.actions) { gap: 8px; }
[data-ui="enterprise-v2"] :where(.btn-primary) { background: var(--ui-blue); border-color: var(--ui-blue); color: #fff; }
[data-ui="enterprise-v2"] :where(.btn-secondary) { background: var(--ui-surface); border-color: var(--ui-line-strong); color: var(--ui-muted); }
[data-ui="enterprise-v2"] :where(.btn-secondary:hover) { background: var(--ui-blue-soft); border-color: var(--ui-blue); color: var(--ui-blue-hover); }
[data-ui="enterprise-v2"] :where(.size-bar) { background: var(--ui-surface-soft); border-color: var(--ui-line); }
[data-ui="enterprise-v2"] :where(.size-bar i, .origin-badge) { background: var(--ui-blue); color: #fff; }
[data-ui="enterprise-v2"] :where(table th) { background: var(--ui-surface-soft); color: var(--ui-muted); }
[data-ui="enterprise-v2"] :where(table td) { border-color: var(--ui-line); }

/* 全正式页面共用的最终控件契约：避免平台后台、主后台、门户和辅助页各自漂移。 */
[data-ui="enterprise-v2"] {
  scrollbar-color: var(--ui-line-strong) var(--ui-surface-soft);
  scrollbar-width: thin;
}
[data-ui="enterprise-v2"] ::-webkit-scrollbar { width: 10px; height: 10px; }
[data-ui="enterprise-v2"] ::-webkit-scrollbar-track { background: var(--ui-surface-soft); }
[data-ui="enterprise-v2"] ::-webkit-scrollbar-thumb {
  background: var(--ui-line-strong);
  border: 2px solid var(--ui-surface-soft);
  border-radius: 999px;
}
[data-ui="enterprise-v2"] ::-webkit-scrollbar-thumb:hover { background: var(--ui-blue); }
[data-ui="enterprise-v2"] :where(button, a, input, select, textarea, summary):focus-visible {
  outline: 3px solid color-mix(in srgb, var(--ui-blue) 28%, transparent);
  outline-offset: 2px;
}
[data-ui="enterprise-v2"] :where(button, input, select, textarea) { font: inherit; }
[data-ui="enterprise-v2"] :where(button, a.btn, .btn, .primary, .secondary, .danger, .ghost, .btn-danger, .btn-ghost, .btn-secondary) {
  min-height: 40px;
  border-radius: var(--ui-radius-sm);
  font-weight: 600;
}
[data-ui="enterprise-v2"] :where(.btn-secondary, .secondary, .ghost, .btn-ghost) {
  background: var(--ui-surface);
  border: 1px solid var(--ui-line-strong);
  color: var(--ui-muted);
}
[data-ui="enterprise-v2"] :where(.btn-secondary, .secondary, .ghost, .btn-ghost):hover:not(:disabled) {
  background: var(--ui-blue-soft);
  border-color: var(--ui-blue);
  color: var(--ui-blue-hover);
}
[data-ui="enterprise-v2"] :where(.danger, .btn-danger) {
  background: var(--ui-surface);
  border: 1px solid color-mix(in srgb, var(--ui-danger) 42%, var(--ui-line));
  color: var(--ui-danger);
}
[data-ui="enterprise-v2"] :where(.danger, .btn-danger):hover:not(:disabled) {
  background: color-mix(in srgb, var(--ui-danger) 9%, var(--ui-surface));
  border-color: var(--ui-danger);
}
[data-ui="enterprise-v2"] :where(button:disabled, .btn:disabled, input:disabled, select:disabled, textarea:disabled) {
  cursor: not-allowed;
  opacity: .58;
}
[data-ui="enterprise-v2"] :where(input:not([type="checkbox"]):not([type="radio"]), select, textarea, .input, .select, .textarea, .form-control) {
  min-height: 40px;
  border-color: var(--ui-line-strong);
  border-radius: var(--ui-radius-sm);
  background: var(--ui-surface);
  color: var(--ui-ink);
}
[data-ui="enterprise-v2"] :where(textarea) { resize: none; }
[data-ui="enterprise-v2"] :where(input, select, textarea)::placeholder { color: var(--ui-helper); }
[data-ui="enterprise-v2"] :where(input[type="checkbox"], input[type="radio"]) {
  accent-color: var(--ui-blue);
}
[data-ui="enterprise-v2"] :where(.state-panel, .empty-state, .empty-block, .no-results, .forbidden, .offline, .conflict) {
  border: 1px dashed var(--ui-line-strong);
  border-radius: var(--ui-radius);
  background: var(--ui-surface-soft);
  color: var(--ui-helper);
}
[data-ui="enterprise-v2"] :where(.status, .badge, .tag, .chip, .pill) {
  border: 1px solid color-mix(in srgb, currentColor 20%, var(--ui-line));
}
[data-ui="enterprise-v2"] :where(.loading, .spinner, [aria-busy="true"]) { color: var(--ui-blue-hover); }

/* 最终去拟态：普通正式页面不使用玻璃模糊、旋转图标或漂浮式装饰。 */
[data-ui="enterprise-v2"] :where(.nav, .nav--solid) {
  background: var(--ui-surface);
  border-bottom-color: var(--ui-line);
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}
[data-ui="enterprise-v2"] :where(.glass) {
  background: var(--ui-surface);
  border-color: var(--ui-line);
  box-shadow: var(--ui-shadow);
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}
[data-ui="enterprise-v2"] :where(.glass-card, .glass-panel) {
  background: var(--ui-surface);
  border-color: var(--ui-line);
  box-shadow: var(--ui-shadow);
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}
[data-ui="enterprise-v2"] body::before,
[data-ui="enterprise-v2"] body::after {
  display: none !important;
  content: none !important;
}
[data-ui="enterprise-v2"] svg {
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.25;
}
[data-ui="enterprise-v2"] :where(.icon-btn:hover) { transform: none; }

@media (prefers-reduced-motion: reduce) {
  [data-ui="enterprise-v2"] *,
  [data-ui="enterprise-v2"] *::before,
  [data-ui="enterprise-v2"] *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
  }
}

/* 分享跳转页：短暂的过渡页面也遵循正式页面的字体、焦点和状态语言。 */
[data-ui="enterprise-v2"] body.share-redirect {
  min-height: 100vh;
  margin: 0;
  display: grid;
  place-items: center;
  padding: 24px;
  background: var(--ui-page);
  color: var(--ui-ink);
  font-family: var(--font-sans);
}
[data-ui="enterprise-v2"] .share-redirect-card {
  width: min(420px, 100%);
  padding: 32px;
  text-align: center;
  border: 1px solid var(--ui-line);
  border-radius: var(--ui-radius-lg);
  background: var(--ui-surface);
  box-shadow: var(--ui-shadow);
}
[data-ui="enterprise-v2"] .share-redirect-title {
  color: var(--ui-ink);
  font-size: 16px;
  font-weight: 600;
}
[data-ui="enterprise-v2"] .share-redirect-help {
  margin-top: 8px;
  color: var(--ui-helper);
  font-size: 13px;
}
[data-ui="enterprise-v2"] .share-redirect-help a {
  color: var(--ui-blue-hover);
  font-weight: 600;
}

@media (max-width: 720px) {
  [data-ui="enterprise-v2"] :where(button, a.btn, .btn, .primary, .secondary, .danger, .ghost, .btn-danger, .btn-ghost, .btn-secondary) {
    min-height: 44px !important;
    height: 44px !important;
  }
  [data-ui="enterprise-v2"] :where(input:not([type="checkbox"]):not([type="radio"]), select, textarea) {
    min-height: 44px !important;
  }
  [data-ui="enterprise-v2"] :where(input:not([type="checkbox"]):not([type="radio"]), select) { height: 44px !important; }
}

/* 平台管理后台最终收口：平台侧导航与主协会后台共享天空蓝工作台节奏。 */
[data-ui="enterprise-v2"] body.platform-login-required {
  min-height: 100vh;
  background: var(--ui-page);
  color: var(--ui-ink);
}
[data-ui="enterprise-v2"] body.platform-login-required > .sidebar {
  width: 248px;
  flex: 0 0 248px;
  padding: 24px 16px;
  background: var(--ui-surface);
  border-right: 1px solid var(--ui-line);
  box-shadow: none;
}
[data-ui="enterprise-v2"] body.platform-login-required .brand {
  color: var(--ui-ink);
  line-height: 1.35;
}
[data-ui="enterprise-v2"] body.platform-login-required .brand small {
  color: var(--ui-helper);
}
[data-ui="enterprise-v2"] body.platform-login-required .brand-mark {
  width: 36px;
  height: 36px;
  border-radius: var(--ui-radius-sm);
  background: var(--ui-blue);
}
[data-ui="enterprise-v2"] body.platform-login-required nav {
  margin-top: 32px;
  gap: 4px;
}
[data-ui="enterprise-v2"] body.platform-login-required nav a {
  min-height: 40px;
  display: flex;
  align-items: center;
  padding: 0 14px;
  color: var(--ui-muted);
  border-radius: var(--ui-radius-sm);
}
[data-ui="enterprise-v2"] body.platform-login-required nav a:hover,
[data-ui="enterprise-v2"] body.platform-login-required nav a.active {
  background: var(--ui-blue-soft);
  color: var(--ui-blue-hover);
  border-left: 3px solid var(--ui-blue);
}
[data-ui="enterprise-v2"] body.platform-login-required .nav-group-title {
  color: var(--ui-helper);
}
[data-ui="enterprise-v2"] body.platform-login-required main {
  min-width: 0;
  max-width: 1600px;
  padding: 32px 44px 44px;
  background: var(--ui-page);
}
[data-ui="enterprise-v2"] body.platform-login-required main > header {
  min-height: 72px;
  padding-bottom: 22px;
  border-bottom-color: var(--ui-line);
}
[data-ui="enterprise-v2"] body.platform-login-required h1 {
  font-size: 24px;
  line-height: 1.35;
  color: var(--ui-ink);
}
[data-ui="enterprise-v2"] body.platform-login-required .eyebrow {
  color: var(--ui-blue-hover);
}
[data-ui="enterprise-v2"] body.platform-login-required .operator {
  border-top-color: var(--ui-line);
  color: var(--ui-helper);
}
[data-ui="enterprise-v2"] body.platform-login-required .operator button {
  color: var(--ui-blue-hover);
}
[data-ui="enterprise-v2"] body.platform-login-required .primary,
[data-ui="enterprise-v2"] body.platform-login-required .secondary {
  min-height: 40px;
  border-radius: var(--ui-radius-sm);
  font-family: inherit;
}
[data-ui="enterprise-v2"] body.platform-login-required .primary {
  background: var(--ui-blue);
  border-color: var(--ui-blue);
  color: #fff;
}
[data-ui="enterprise-v2"] body.platform-login-required .secondary {
  background: var(--ui-surface);
  border-color: var(--ui-line-strong);
  color: var(--ui-muted);
}
[data-ui="enterprise-v2"] body.platform-login-required .primary:hover:not(:disabled),
[data-ui="enterprise-v2"] body.platform-login-required .secondary:hover:not(:disabled) {
  background: var(--ui-blue-soft);
  border-color: var(--ui-blue);
  color: var(--ui-blue-hover);
}
[data-ui="enterprise-v2"] body.platform-login-required .primary:hover:not(:disabled) {
  background: var(--ui-blue-hover);
  color: #fff;
}
[data-ui="enterprise-v2"] body.platform-login-required .login-gate {
  min-height: calc(100vh - 64px);
  display: grid;
  place-items: center;
}

/* 门户公共内容：保留租户封面和信息架构，仅统一控件、卡片、文字与移动端节奏。 */
[data-ui="enterprise-v2"] :where(.nav-links a, .btn, .btn-primary, .btn-secondary, .btn-ghost, .fb-file-btn) {
  font-family: inherit;
  letter-spacing: 0;
}
[data-ui="enterprise-v2"] :where(.btn, .btn-primary, .btn-secondary, .btn-ghost, .fb-file-btn) {
  min-height: 40px;
  border-radius: var(--ui-radius-sm);
  box-shadow: none;
}
[data-ui="enterprise-v2"] :where(.btn-primary, .fb-file-btn) {
  background: var(--ui-blue);
  border-color: var(--ui-blue);
  color: #fff;
}
[data-ui="enterprise-v2"] :where(.btn-primary, .fb-file-btn):hover:not(:disabled) {
  background: var(--ui-blue-hover);
  border-color: var(--ui-blue-hover);
}
[data-ui="enterprise-v2"] :where(.btn-secondary, .btn-ghost) {
  background: var(--ui-surface);
  border-color: var(--ui-line-strong);
  color: var(--ui-muted);
}
[data-ui="enterprise-v2"] :where(.btn-secondary, .btn-ghost):hover:not(:disabled) {
  background: var(--ui-blue-soft);
  border-color: var(--ui-blue);
  color: var(--ui-blue-hover);
}
[data-ui="enterprise-v2"] :where(.news-card, .meeting-card, .activity-card, .course-card, .vote-card, .faq-item, .contact-card) {
  border-color: var(--ui-line);
  border-radius: var(--ui-radius);
  background: var(--ui-surface);
  box-shadow: var(--ui-shadow);
}
[data-ui="enterprise-v2"] :where(.news-card:hover, .meeting-card:hover, .activity-card:hover, .course-card:hover, .vote-card:hover) {
  border-color: var(--ui-blue);
  box-shadow: var(--ui-shadow);
}
[data-ui="enterprise-v2"] :where(.hero) {
  background: var(--ui-surface-soft);
  background-color: var(--ui-surface-soft);
  color: var(--ui-ink);
}
[data-ui="enterprise-v2"] :where(.hero h1, .hero .sub) { font-family: inherit; }
[data-ui="enterprise-v2"] :where(.hero h1) { letter-spacing: .01em; }
[data-ui="enterprise-v2"] :where(.section, .view) { color: var(--ui-ink); }
[data-ui="enterprise-v2"] :where(.section-head, .subhead) { margin-bottom: 24px; }
[data-ui="enterprise-v2"] :where(.section-head h2, .subhead h3) { color: var(--ui-ink); }
[data-ui="enterprise-v2"] :where(.section-head p, .nc-summary, .nc-date, .ti-desc, .filter-label) { color: var(--ui-helper); }
[data-ui="enterprise-v2"] :where(.date-popover, .dl-item, .entry-row, .member-quick-card, .member-service-card, .member-panel, .member-empty-wide, .qr-btn, .cdp-pop, .qr-stage, .ed-section, .vi-card) {
  border-radius: var(--ui-radius);
}
[data-ui="enterprise-v2"] :where(.qr-btn) {
  min-height: 92px;
  padding: 14px 12px;
  border-color: var(--ui-line-strong);
  background: var(--ui-surface);
  color: var(--ui-ink);
  box-shadow: none;
}
[data-ui="enterprise-v2"] :where(.qr-btn:hover) {
  border-color: var(--ui-blue);
  background: var(--ui-blue-soft);
  color: var(--ui-blue-hover);
  box-shadow: var(--ui-shadow);
}
[data-ui="enterprise-v2"] :where(.qr-ico) { color: var(--ui-icon); }
[data-ui="enterprise-v2"] :where(.qr-t) { color: var(--ui-ink); }
[data-ui="enterprise-v2"] :where(.qr-s, .qr-tip) { color: var(--ui-helper); }
[data-ui="enterprise-v2"] :where(.qr-stage) {
  min-height: 184px;
  padding: 20px;
  border-color: var(--ui-line-strong);
  background: var(--ui-surface-soft);
}
[data-ui="enterprise-v2"] :where(.qr-img) {
  border-radius: var(--ui-radius);
  background: var(--ui-blue);
  box-shadow: none;
}
[data-ui="enterprise-v2"] :where(.is-vote-detail .vb-publish-page .vb-qr-box) {
  gap: 20px;
  padding: 16px;
  border: 1px solid var(--ui-line);
  border-radius: var(--ui-radius);
  background: var(--ui-surface-soft);
}
[data-ui="enterprise-v2"] :where(.is-vote-detail .vb-publish-page .vb-qr-actions) { gap: 10px; }
[data-ui="enterprise-v2"] :where(.is-vote-detail .vb-publish-page .vb-qr-img) {
  border-color: var(--ui-line-strong) !important;
  border-radius: var(--ui-radius-sm) !important;
}
[data-ui="enterprise-v2"] :where(.login-card, .wx-qr, .backend-entry .be-icon, .member-identity, .member-avatar) {
  border-radius: var(--ui-radius-lg);
}
[data-ui="enterprise-v2"] :where(.member-hero) { border-radius: var(--ui-radius-lg); }
[data-ui="enterprise-v2"] :where(.member-hero) {
  background: var(--ui-surface);
  color: var(--ui-ink);
  border: 1px solid var(--ui-line);
  box-shadow: var(--ui-shadow);
}
[data-ui="enterprise-v2"] :where(.member-hero h1, .member-identity strong) { color: var(--ui-ink); }
[data-ui="enterprise-v2"] :where(.member-hero p, .member-hero-eyebrow, .member-identity span, .member-identity small) { color: var(--ui-helper); }
[data-ui="enterprise-v2"] :where(.member-identity) {
  border-color: var(--ui-line);
  background: var(--ui-surface-soft);
}
[data-ui="enterprise-v2"] :where(.member-avatar) {
  background: var(--ui-blue-soft);
  color: var(--ui-blue-hover);
  border: 1px solid var(--ui-line-strong);
}
[data-ui="enterprise-v2"] :where(.member-event-assignments .event-assignment-card, .member-event-brands .event-assignment-card) {
  border-color: var(--ui-line);
  border-radius: var(--ui-radius-sm);
  background: var(--ui-surface-soft);
}
[data-ui="enterprise-v2"] :where(.event-assignment-links) {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin-top: 14px;
}
[data-ui="enterprise-v2"] :where(.event-assignment-links > span) {
  padding: 9px 10px;
  border: 1px solid var(--ui-line);
  border-radius: var(--ui-radius-sm);
  background: var(--ui-surface);
  color: var(--ui-muted);
  font-size: 12px;
  line-height: 18px;
}
[data-ui="enterprise-v2"] :where(.event-hospitality-summary) {
  border-color: var(--ui-line);
  border-radius: var(--ui-radius-sm);
  background: var(--ui-surface);
  color: var(--ui-muted);
}
[data-ui="enterprise-v2"] :where(.event-hospitality-summary strong) { color: var(--ui-ink); }
[data-ui="enterprise-v2"] :where(.event-assignment-actions) {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 14px;
}

/* 角色标签是身份信息，不用绿/黄/紫区分；危险操作保留独立红色语义。 */
[data-ui="enterprise-v2"] :where(.role-badge, .role-member_rep, .role-council_member, .role-supervisor, .role-leader) {
  background: var(--ui-blue-soft);
  color: var(--ui-blue-hover);
  border-color: var(--ui-line-strong);
}
[data-ui="enterprise-v2"] :where(.is-vote-detail .vb-workbench-lifecycle .btn-danger, .is-vote-detail .vb-workbench-utility .btn-danger) {
  background: color-mix(in srgb, var(--ui-danger) 8%, var(--ui-surface));
  color: var(--ui-danger);
  border-color: color-mix(in srgb, var(--ui-danger) 30%, var(--ui-line));
}
[data-ui="enterprise-v2"] :where(.is-vote-detail .vb-workbench-lifecycle .btn-danger:hover, .is-vote-detail .vb-workbench-utility .btn-danger:hover) {
  background: color-mix(in srgb, var(--ui-danger) 14%, var(--ui-surface));
  border-color: var(--ui-danger);
}

@media (max-width: 760px) {
  [data-ui="enterprise-v2"] body.platform-login-required > .sidebar { display: none; }
  [data-ui="enterprise-v2"] body.platform-login-required main { padding: 24px 16px 36px; }
  [data-ui="enterprise-v2"] body.platform-login-required main > header { align-items: stretch; gap: 16px; flex-direction: column; }
  [data-ui="enterprise-v2"] body.platform-login-required .header-actions { flex-wrap: wrap; }
  [data-ui="enterprise-v2"] body.platform-login-required .header-actions > * { flex: 1 1 160px; min-height: 44px; }
  [data-ui="enterprise-v2"] :where(.btn, .btn-primary, .btn-secondary, .btn-ghost, .fb-file-btn) { min-height: 44px; }
  [data-ui="enterprise-v2"] :where(.is-vote-detail .vb-publish-page .vb-qr-box) { grid-template-columns: 1fr; }
}
@media (max-width: 600px) {
  [data-ui="enterprise-v2"] :where(.event-assignment-links) { grid-template-columns: 1fr; }
  [data-ui="enterprise-v2"] :where(.event-assignment-actions) { display: grid; grid-template-columns: 1fr; }
  [data-ui="enterprise-v2"] :where(.event-assignment-actions .btn) { width: 100%; min-height: 44px; }
}

/* 租户后台与会员中心：延续同一工作台节奏，消除独立入口的旧圆角和色阶。 */
[data-ui="enterprise-v2"] :where(.ta-topbar, .mp-topbar) {
  min-height: 68px;
  padding: 14px 24px;
  background: var(--ui-surface);
  border-bottom: 1px solid var(--ui-line);
  box-shadow: none;
}
[data-ui="enterprise-v2"] :where(.ta-name, .mp-brand) {
  color: var(--ui-ink);
  letter-spacing: .01em;
}
[data-ui="enterprise-v2"] :where(.ta-tenant, .ta-link) { color: var(--ui-helper); }
[data-ui="enterprise-v2"] :where(.ta-link:hover, .mp-link:hover) { color: var(--ui-blue-hover); }
[data-ui="enterprise-v2"] :where(.ta-layout) { background: var(--ui-page); }
[data-ui="enterprise-v2"] :where(.ta-sidebar) {
  width: 232px;
  padding: 20px 14px;
  background: var(--ui-surface);
  border-right: 1px solid var(--ui-line);
}
[data-ui="enterprise-v2"] :where(.ta-sidebar nav) { gap: 4px; }
[data-ui="enterprise-v2"] :where(.ta-nav) {
  min-height: 40px;
  display: flex;
  align-items: center;
  padding: 0 14px;
  color: var(--ui-muted);
  border-radius: var(--ui-radius-sm);
}
[data-ui="enterprise-v2"] :where(.ta-nav:hover, .ta-nav.active) {
  background: var(--ui-blue-soft);
  color: var(--ui-blue-hover);
}
[data-ui="enterprise-v2"] :where(.ta-nav.active) { box-shadow: inset 3px 0 0 var(--ui-blue); }
[data-ui="enterprise-v2"] :where(.ta-main) {
  max-width: 1240px;
  padding: 32px 40px 48px;
}
[data-ui="enterprise-v2"] :where(.ta-section-title, .mp-title) {
  color: var(--ui-ink);
  font-size: 24px;
  line-height: 1.35;
}
[data-ui="enterprise-v2"] :where(.ta-section-sub, .mp-sub) { color: var(--ui-helper); }
[data-ui="enterprise-v2"] :where(.ta-stat, .ta-form, .ta-modrow, .mp-card, .mp-news-item, .mp-service-card) {
  border-color: var(--ui-line);
  border-radius: var(--ui-radius);
  background: var(--ui-surface);
  box-shadow: var(--ui-shadow);
}
[data-ui="enterprise-v2"] :where(.ta-stat-num, .mp-link, .mp-profile-progress, .mp-tier, .mp-badge.pub) {
  color: var(--ui-blue-hover);
}
[data-ui="enterprise-v2"] :where(.ta-table, .ta-form, .mp-card) { overflow: hidden; }
[data-ui="enterprise-v2"] :where(.ta-table th) { background: var(--ui-surface-soft); color: var(--ui-muted); }
[data-ui="enterprise-v2"] :where(.ta-table th, .ta-table td, .mp-row) { border-color: var(--ui-line); }
[data-ui="enterprise-v2"] :where(.ta-table tbody tr:hover) { background: var(--ui-blue-soft); }
[data-ui="enterprise-v2"] :where(.ta-form input, .ta-form select, .ta-form textarea, .mp-form input) {
  background: var(--ui-surface);
  border-color: var(--ui-line-strong);
  border-radius: var(--ui-radius-sm);
  color: var(--ui-ink);
}
[data-ui="enterprise-v2"] :where(.ta-form label, .mp-form label, .mp-row .k) { color: var(--ui-muted); }
[data-ui="enterprise-v2"] :where(.ta-stat-label, .ta-mod-desc, .mp-news-body, .mp-service-card small) { color: var(--ui-helper); }
[data-ui="enterprise-v2"] :where(.ta-badge, .mp-badge, .mp-tier, .mp-profile-progress) {
  border: 1px solid var(--ui-line);
  background: var(--ui-blue-soft);
}
[data-ui="enterprise-v2"] :where(.ta-badge.off) { background: var(--ui-surface-soft); color: var(--ui-helper); }
[data-ui="enterprise-v2"] :where(.ta-loading, .mp-loading) { color: var(--ui-helper); }
[data-ui="enterprise-v2"] :where(.mp-service-card:hover, .mp-news-item:hover) {
  border-color: var(--ui-blue);
  box-shadow: var(--ui-shadow);
}
[data-ui="enterprise-v2"] :where(.mp-service-icon, .mp-avatar) {
  background: var(--ui-blue-soft);
  color: var(--ui-blue-hover);
  border-color: var(--ui-line);
}
[data-ui="enterprise-v2"] :where(.mp-avatar) { background: var(--ui-blue); color: #fff; }
[data-ui="enterprise-v2"] :where(.switch input:checked + .slider, .ta-progress-bar) { background: var(--ui-blue); }
[data-ui="enterprise-v2"] :where(.ta-toast, .mp-toast) {
  background: var(--ui-surface);
  color: var(--ui-ink);
  border: 1px solid var(--ui-line);
  border-left: 3px solid var(--ui-blue);
  box-shadow: var(--ui-shadow-hover);
}
@media (max-width: 768px) {
  [data-ui="enterprise-v2"] :where(.ta-topbar, .mp-topbar) { padding: 12px 16px; }
  [data-ui="enterprise-v2"] :where(.ta-topbar-right) { gap: 8px; }
  [data-ui="enterprise-v2"] :where(.ta-sidebar) { width: auto; padding: 8px; }
  [data-ui="enterprise-v2"] :where(.ta-main) { padding: 24px 16px 36px; }
  [data-ui="enterprise-v2"] :where(.ta-nav) { min-height: 44px; }
}

/* 全站排版节奏：标题、正文、表格和数据列使用固定层级，避免模块各自漂移。 */
[data-ui="enterprise-v2"] :where(.page-title, .ta-section-title, .pp-title, .ewb-title-row h2, .ecc-page > h1, .vb-page > h1) {
  font-size: 24px;
  line-height: 32px;
  font-weight: 700;
  letter-spacing: .01em;
}
[data-ui="enterprise-v2"] :where(.section-title, .card-title, .panel-head h2, .section-head h2, .ewb-card h3, .ecc-section-head h3) {
  font-size: 18px;
  line-height: 28px;
  font-weight: 700;
}
[data-ui="enterprise-v2"] :where(.card-title, .card-head h3, .table-title) {
  font-size: 16px;
  line-height: 24px;
  font-weight: 600;
}
[data-ui="enterprise-v2"] :where(body, input, select, textarea, button) {
  font-size: 14px;
  line-height: 22px;
}
[data-ui="enterprise-v2"] :where(table, .data-table, .ta-table, .ewb-table, .ecc-table) {
  font-size: 13px;
  line-height: 20px;
  font-variant-numeric: tabular-nums;
}
[data-ui="enterprise-v2"] :where(table th, table td, .ta-table th, .ta-table td) {
  padding: 12px 16px;
  line-height: 20px;
}
[data-ui="enterprise-v2"] :where(.toolbar, .filter-bar, .search-bar, .news-toolbar) {
  min-height: 40px;
  padding: 10px 12px;
  border-radius: var(--ui-radius);
}
[data-ui="enterprise-v2"] :where(.metric b, .ta-stat-num, .ewb-stat b, .kpi-value, .kpi-number) {
  font-variant-numeric: tabular-nums;
  letter-spacing: .01em;
}
[data-ui="enterprise-v2"] :where(.helper, .muted, .text-muted, .cell-sub, .card-sub, .ta-section-sub) {
  font-size: 12px;
  line-height: 18px;
}
@media (max-width: 720px) {
  [data-ui="enterprise-v2"] :where(table th, table td, .ta-table th, .ta-table td) { padding: 10px 12px; }
  [data-ui="enterprise-v2"] :where(.page-title, .ta-section-title, .pp-title, .ewb-title-row h2, .ecc-page > h1, .vb-page > h1) {
    font-size: 22px;
    line-height: 30px;
  }
}

/* 会务与智能会务工作区：消除模块自带的旧色阶，统一到全站蓝白令牌。 */
[data-ui="enterprise-v2"] :where(.ewb-page, .ewb-card, .ewb-stat, .ewb-table, .ewb-meta, .ewb-filter, .ewb-filters input) {
  color: var(--ui-ink);
  border-color: var(--ui-line);
  background: var(--ui-surface);
  box-shadow: var(--ui-shadow);
}
[data-ui="enterprise-v2"] :where(.ewb-crumb, .ewb-header p, .ewb-card-head p, .ewb-stat span, .ewb-row small, .ewb-tasks small, .ewb-next, .ewb-filters input::placeholder) {
  color: var(--ui-helper);
}
[data-ui="enterprise-v2"] :where(.ewb-title-row h2, .ewb-card h3, .ewb-row b, .ewb-tasks b) { color: var(--ui-ink); }
[data-ui="enterprise-v2"] :where(.ewb-stat) { border-top: 3px solid var(--ui-blue); }
[data-ui="enterprise-v2"] :where(.ewb-row, .ewb-tasks li, .ewb-speech-actions) { border-color: var(--ui-line); }
[data-ui="enterprise-v2"] :where(.ewb-row-head) { background: var(--ui-surface-soft); color: var(--ui-muted); }
[data-ui="enterprise-v2"] :where(.ewb-filter.active, .ewb-steps b.done:before, .ewb-steps b.active:before, .ewb-progress em) {
  background: var(--ui-blue);
  border-color: var(--ui-blue);
  color: #fff;
}
[data-ui="enterprise-v2"] :where(.ewb-filter, .ewb-link, .ewb-status) { color: var(--ui-blue-hover); }
[data-ui="enterprise-v2"] :where(.ewb-filter:hover, .ewb-link:hover) { background: var(--ui-blue-soft); }
[data-ui="enterprise-v2"] :where(.ewb-empty) {
  min-height: 112px;
  display: grid;
  place-items: center;
  padding: 24px 20px;
  border: 1px dashed var(--ui-line-strong);
  background: var(--ui-surface-soft);
  color: var(--ui-helper);
}
[data-ui="enterprise-v2"] :where(.ewb-error) {
  border-color: color-mix(in srgb, var(--ui-danger) 35%, var(--ui-line));
  background: color-mix(in srgb, var(--ui-danger) 5%, var(--ui-surface));
}
[data-ui="enterprise-v2"] :where(.ewb-steps b:before) { border-color: var(--ui-line-strong); }
[data-ui="enterprise-v2"] :where(.ewb-steps b:after) { background: var(--ui-line-strong); }
[data-ui="enterprise-v2"] :where(.ewb-progress i) { background: var(--ui-surface-soft); }

/* 普通投票管理页：覆盖模块旧版高优先级按钮色；监票大屏（vb-mon-*）保持独立。 */
[data-ui="enterprise-v2"] :where(.is-vote-detail .vb-workbench-lifecycle .btn-primary, .is-vote-detail .vb-topbar .btn-primary, .is-vote-detail .vb-card-actions .btn-primary) {
  background: var(--ui-blue) !important;
  border-color: var(--ui-blue) !important;
  color: #fff !important;
  box-shadow: none !important;
}
[data-ui="enterprise-v2"] :where(.is-vote-detail .vb-workbench-lifecycle .btn-primary:hover:not(:disabled), .is-vote-detail .vb-topbar .btn-primary:hover:not(:disabled), .is-vote-detail .vb-card-actions .btn-primary:hover:not(:disabled)) {
  background: var(--ui-blue-hover) !important;
  border-color: var(--ui-blue-hover) !important;
}
[data-ui="enterprise-v2"] :where(.is-vote-detail .vb-workbench-lifecycle svg, .is-vote-detail .vb-topbar svg, .is-vote-detail .vb-card-actions svg) {
  stroke-width: var(--icon-stroke) !important;
  stroke-linecap: round;
  stroke-linejoin: round;
}

/* 普通业务页面保持静态边界反馈，避免卡片抬升与玻璃拟态干扰信息层级。 */
[data-ui="enterprise-v2"] :where(.card.hover-lift:hover, .mp-service-card:hover, .mp-news-item:hover, .news-card:hover, .meeting-card:hover, .ct-card:hover, .proj-card:hover, .vb-card:hover, .vb-pub-card.active) {
  transform: none !important;
  box-shadow: var(--ui-shadow) !important;
}
[data-ui="enterprise-v2"] :where(.vb-edit-sticky, .vb-pane.vb-settings, .modal-backdrop, .drawer-backdrop) {
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}
[data-ui="enterprise-v2"] :where(.vb-edit-sticky) {
  background: var(--ui-surface) !important;
  border-color: var(--ui-line) !important;
  box-shadow: var(--ui-shadow) !important;
}

/* 会务控制台和活动看板动态样式收口：保留信息结构，统一表面、文字和操作节奏。 */
[data-ui="enterprise-v2"] :where(.acw-page, .acw-table, .acw-hint, .acw-toolbar input, .acw-tabs) {
  color: var(--ui-ink);
  border-color: var(--ui-line);
  background: var(--ui-surface);
}
[data-ui="enterprise-v2"] :where(.acw-crumb, .acw-head p, .acw-toolbar, .acw-todo, .acw-title small, .acw-empty) { color: var(--ui-helper); }
[data-ui="enterprise-v2"] :where(.acw-head h2, .acw-title b, .acw-hint b) { color: var(--ui-ink); }
[data-ui="enterprise-v2"] :where(.acw-row) { border-color: var(--ui-line); }
[data-ui="enterprise-v2"] :where(.acw-row-head) { background: var(--ui-surface-soft); color: var(--ui-muted); }
[data-ui="enterprise-v2"] :where(.acw-tabs button) { color: var(--ui-muted); min-height: 40px; }
[data-ui="enterprise-v2"] :where(.acw-tabs button.active) { color: var(--ui-blue); border-bottom-color: var(--ui-blue); }
[data-ui="enterprise-v2"] :where(.acw-state) { color: var(--ui-blue-hover); border-color: var(--ui-line-strong); background: var(--ui-blue-soft); }
[data-ui="enterprise-v2"] :where(.acw-progress i) { background: var(--ui-surface-soft); }
[data-ui="enterprise-v2"] :where(.acw-progress em) { background: var(--ui-blue); }
[data-ui="enterprise-v2"] :where(.acw-link) { color: var(--ui-blue-hover); }
[data-ui="enterprise-v2"] :where(.acw-link:hover) { background: var(--ui-blue-soft); }

[data-ui="enterprise-v2"] :where(.ecc-page, .ecc-card, .ecc-form, .ecc-table, .ecc-error, .ecc-notice, .ecc-tabs) {
  color: var(--ui-ink);
  border-color: var(--ui-line);
  background: var(--ui-surface);
  box-shadow: var(--ui-shadow);
}
[data-ui="enterprise-v2"] :where(.ecc-crumb, .ecc-header p, .ecc-section-head p, .ecc-version, .ecc-notice-head span, .ecc-empty, .ecc-error p) { color: var(--ui-helper); }
[data-ui="enterprise-v2"] :where(.ecc-title-line h2, .ecc-section-head h3, .ecc-card h4, .ecc-notice-head h4, .ecc-notice h4, .ecc-error h3, .ecc-kpis b, .ecc-person-summary b, .ecc-facts strong) { color: var(--ui-ink); }
[data-ui="enterprise-v2"] :where(.ecc-tabs, .ecc-table-head) { background: var(--ui-surface-soft); }
[data-ui="enterprise-v2"] :where(.ecc-tab) { color: var(--ui-muted); min-height: 40px; }
[data-ui="enterprise-v2"] :where(.ecc-tab:hover, .ecc-tab:focus-visible) { color: var(--ui-blue-hover); background: var(--ui-blue-soft); }
[data-ui="enterprise-v2"] :where(.ecc-tab.active) { color: var(--ui-blue); border-bottom-color: var(--ui-blue); }
[data-ui="enterprise-v2"] :where(.ecc-kpis > div, .ecc-table-row, .ecc-list li, .ecc-person-summary, .ecc-form-actions) { border-color: var(--ui-line); }
[data-ui="enterprise-v2"] :where(.ecc-kpis i) { background: var(--ui-surface-soft); }
[data-ui="enterprise-v2"] :where(.ecc-kpis em) { background: var(--ui-blue); }
[data-ui="enterprise-v2"] :where(.ecc-table-head) { color: var(--ui-muted); }
[data-ui="enterprise-v2"] :where(.ecc-table-row, .ecc-list li, .ecc-facts span, .ecc-subtabs button, .ecc-form label) { color: var(--ui-muted); }
[data-ui="enterprise-v2"] :where(.ecc-table-row b) { color: var(--ui-ink); }
[data-ui="enterprise-v2"] :where(.ecc-form input, .ecc-form textarea, .ecc-inline-form input) { border-color: var(--ui-line-strong); background: var(--ui-surface); color: var(--ui-ink); border-radius: var(--ui-radius-sm); min-height: 40px; }
[data-ui="enterprise-v2"] :where(.ecc-form input:focus, .ecc-form textarea:focus, .ecc-inline-form input:focus) { outline: 2px solid color-mix(in srgb, var(--ui-blue) 28%, transparent); border-color: var(--ui-blue); }
[data-ui="enterprise-v2"] :where(.ecc-subtabs button) { border-color: var(--ui-line); background: var(--ui-surface); min-height: 40px; }
[data-ui="enterprise-v2"] :where(.ecc-subtabs button.active) { color: var(--ui-blue-hover); border-color: var(--ui-line-strong); background: var(--ui-blue-soft); }
[data-ui="enterprise-v2"] :where(.ecc-status, .ewb-status) { color: var(--ui-muted); border-color: var(--ui-line-strong); background: var(--ui-surface-soft); }
[data-ui="enterprise-v2"] :where(.ecc-status.is-blue, .ecc-form-actions span) { color: var(--ui-blue-hover); border-color: var(--ui-line-strong); background: var(--ui-blue-soft); }
[data-ui="enterprise-v2"] :where(.ecc-status.is-ok) { color: var(--ui-success); border-color: color-mix(in srgb, var(--ui-success) 30%, var(--ui-line)); background: color-mix(in srgb, var(--ui-success) 8%, var(--ui-surface)); }
[data-ui="enterprise-v2"] :where(.ecc-status.is-warn) { color: var(--ui-warning); border-color: color-mix(in srgb, var(--ui-warning) 30%, var(--ui-line)); background: color-mix(in srgb, var(--ui-warning) 8%, var(--ui-surface)); }
[data-ui="enterprise-v2"] :where(.ecc-status.is-danger) { color: var(--ui-danger); border-color: color-mix(in srgb, var(--ui-danger) 30%, var(--ui-line)); background: color-mix(in srgb, var(--ui-danger) 8%, var(--ui-surface)); }
[data-ui="enterprise-v2"] :where(.ecc-link) { color: var(--ui-blue-hover); }
[data-ui="enterprise-v2"] :where(.ecc-link:hover) { background: var(--ui-blue-soft); }

/* 普通投票工作区与注册字段辅助控件：保留业务语义，统一旧回退色。监票大屏使用 vb-mon 白名单，不在此规则内。 */
[data-ui="enterprise-v2"] :where(.rf-flag.on) { color: var(--ui-success) !important; border-color: color-mix(in srgb, var(--ui-success) 40%, var(--ui-line)) !important; }
[data-ui="enterprise-v2"] :where(.rf-flag.req) { color: var(--ui-danger) !important; border-color: color-mix(in srgb, var(--ui-danger) 40%, var(--ui-line)) !important; }
[data-ui="enterprise-v2"] :where(.rf-opt-del) { color: var(--ui-danger) !important; }
[data-ui="enterprise-v2"] :where(.is-vote-detail .vb-list-select-all, .is-vote-detail .va-shared-control, .is-vote-detail .va-shared-control b, .is-vote-detail .vb-result-clock.is-frozen, .is-vote-detail .vb-seg-table th, .is-vote-detail .vb-seg-table .vb-seg-idx, .is-vote-detail .vb-report-mcard-sub, .is-vote-detail .vb-tally-arrow, .is-vote-detail .vb-audit-meta label) { color: var(--ui-muted) !important; }
[data-ui="enterprise-v2"] :where(.is-vote-detail .vb-seg-table th) { background: var(--ui-surface-soft) !important; border-color: var(--ui-line) !important; }
[data-ui="enterprise-v2"] :where(.is-vote-detail .vb-seg-table .vb-seg-del) { color: var(--ui-danger) !important; border-color: color-mix(in srgb, var(--ui-danger) 28%, var(--ui-line)) !important; }
[data-ui="enterprise-v2"] :where(.is-vote-detail .vb-report-mcard-ag) { color: var(--ui-success) !important; }
[data-ui="enterprise-v2"] :where(.is-vote-detail .vb-report-mcard-sub .dis) { color: var(--ui-danger) !important; }
[data-ui="enterprise-v2"] :where(.is-vote-detail .vb-result-clock.is-frozen) { background: color-mix(in srgb, var(--ui-helper) 18%, var(--ui-surface)) !important; }

/* 现场排座只保留蓝白层级；锁定仍使用语义状态色，不按桌型引入装饰色。 */
[data-ui="enterprise-v2"] :where(.ewb-seating-table, .ewb-seating-table[data-ewb-table-type="round"], .ewb-seating-table[data-ewb-table-type="long"], .ewb-seating-table[data-ewb-table-type="sofa"], .ewb-seating-table[data-ewb-table-type="custom"]) {
  background: var(--ui-surface-soft);
  border-color: var(--ui-line-strong);
  color: var(--ui-ink);
}
[data-ui="enterprise-v2"] :where(.ewb-seating-seat) { background: var(--ui-surface); border-color: var(--ui-line-strong); color: var(--ui-muted); min-height: 32px; }
[data-ui="enterprise-v2"] :where(.ewb-seating-seat.is-locked) { background: var(--ui-blue-soft); border-color: var(--ui-blue); color: var(--ui-blue-hover); }

/* 辅助入口：分享跳转页也必须具备完整的 Enterprise V2 状态容器。 */
[data-ui="enterprise-v2"] :where(body.share-redirect) {
  min-height: 100vh;
  margin: 0;
  display: grid;
  place-items: center;
  padding: 24px;
  box-sizing: border-box;
  background: var(--ui-page);
  color: var(--ui-ink);
}
[data-ui="enterprise-v2"] :where(.share-redirect-card) {
  width: min(100%, 460px);
  padding: 28px 32px;
  border: 1px solid var(--ui-line);
  border-radius: var(--ui-radius-lg);
  background: var(--ui-surface);
  box-shadow: var(--ui-shadow);
  text-align: center;
}
[data-ui="enterprise-v2"] :where(.share-redirect-title) { color: var(--ui-ink); font-size: 18px; line-height: 28px; font-weight: 700; }
[data-ui="enterprise-v2"] :where(.share-redirect-help) { margin-top: 10px; color: var(--ui-helper); font-size: 13px; line-height: 20px; }
[data-ui="enterprise-v2"] :where(.share-redirect-help a) { color: var(--ui-blue-hover); font-weight: 600; }
@media (max-width: 520px) {
  [data-ui="enterprise-v2"] :where(body.share-redirect) { padding: 16px; }
  [data-ui="enterprise-v2"] :where(.share-redirect-card) { padding: 24px 20px; border-radius: var(--ui-radius); }
}

/* 普通投票控制台深层编辑区：最后加载的令牌桥接，避免源文件后段旧蓝灰值重新出现。
   只匹配 `.is-vote-detail`，不触碰独立的 `.vb-mon-*` 监票大屏。 */
[data-ui="enterprise-v2"] :where(.is-vote-detail .vb-edit-wrap, .is-vote-detail .vb-form-editor-bar, .is-vote-detail .vb-topbar, .is-vote-detail .vb-tabs, .is-vote-detail .vb-builder > .vb-pane, .is-vote-detail .vb-settings-page > .vb-banner-row, .is-vote-detail .vb-settings-page > .vb-setting-group, .is-vote-detail .vb-settings-savebar, .is-vote-detail .vb-publish-checklist, .is-vote-detail .vb-report-controlbar, .is-vote-detail .vb-report-monitor-settings, .is-vote-detail .vb-report-results) {
  background: var(--ui-surface) !important;
  border-color: var(--ui-line) !important;
  color: var(--ui-ink);
  box-shadow: var(--ui-shadow);
}
[data-ui="enterprise-v2"] :where(.is-vote-detail .vb-builder, .is-vote-detail .vb-canvas-scroll, .is-vote-detail .vb-report-layout, .is-vote-detail .vb-settings-page > .vb-section-h) {
  background: var(--ui-surface-soft) !important;
  border-color: var(--ui-line) !important;
}
[data-ui="enterprise-v2"] :where(.is-vote-detail .vb-palette-title, .is-vote-detail .vb-palette-group h4, .is-vote-detail .vb-settings-page .vb-setting-row, .is-vote-detail .vb-publish-head, .is-vote-detail .vb-publish-checklist .vb-publish-check, .is-vote-detail .vb-workbench-section-head) {
  border-color: var(--ui-line) !important;
}
[data-ui="enterprise-v2"] :where(.is-vote-detail .vb-palette-title, .is-vote-detail .vb-palette-group h4, .is-vote-detail .vb-publish-head h3, .is-vote-detail .vb-settings-page > .vb-section-h, .is-vote-detail .vb-settings-savebar strong, .is-vote-detail .vb-report-kicker, .is-vote-detail .vb-report-section-title, .is-vote-detail .vb-workbench-section-head h3) { color: var(--ui-ink) !important; }
[data-ui="enterprise-v2"] :where(.is-vote-detail .vb-form-subtab, .is-vote-detail .vb-form-editor-tools, .is-vote-detail .vb-editor-save-state, .is-vote-detail .vb-report-section-title > span, .is-vote-detail .vb-report-monitor-hint, .is-vote-detail .vb-workbench-status, .is-vote-detail .vb-settings-page .cell-sub, .is-vote-detail .vb-publish-head span) { color: var(--ui-helper) !important; }
[data-ui="enterprise-v2"] :where(.is-vote-detail .vb-form-subtab.active, .is-vote-detail .vb-form-editor-tools .vb-seg-btn.active) { color: var(--ui-blue) !important; }
[data-ui="enterprise-v2"] :where(.is-vote-detail .vb-form-subtab.active::after, .is-vote-detail .vb-settings-page > .vb-section-h::before, .is-vote-detail .vb-publish-head h3::before, .is-vote-detail .vb-workbench-section-head h3::before) { background: var(--ui-blue) !important; }
[data-ui="enterprise-v2"] :where(.is-vote-detail .vb-form-editor-tools .vb-seg, .is-vote-detail .vb-form-editor-tools .vb-all-required, .is-vote-detail .vb-editor-hint, .is-vote-detail .vb-palette-item, .is-vote-detail .vb-all-required, .is-vote-detail .vb-dropdown-summary, .is-vote-detail .vb-form-preview, .is-vote-detail .vb-preview-field, .is-vote-detail .vb-report-layout > *, .is-vote-detail .vb-workbench-field input) {
  border-color: var(--ui-line-strong) !important;
  background: var(--ui-surface) !important;
  color: var(--ui-ink);
}
[data-ui="enterprise-v2"] :where(.is-vote-detail .vb-palette-item:hover, .is-vote-detail .vb-field-actions .vb-iconbtn:hover) { background: var(--ui-blue-soft) !important; color: var(--ui-blue-hover) !important; }
[data-ui="enterprise-v2"] :where(.is-vote-detail .vb-preview-field.selected) { border-color: var(--ui-blue) !important; box-shadow: 0 0 0 1px color-mix(in srgb, var(--ui-blue) 18%, transparent) !important; }
[data-ui="enterprise-v2"] :where(.is-vote-detail .vb-palette-item .vb-pi-ico) { background: var(--ui-blue-soft) !important; color: var(--ui-blue) !important; border-color: var(--ui-line) !important; }
[data-ui="enterprise-v2"] :where(.is-vote-detail .vb-report-controlbar strong, .is-vote-detail .vb-workbench-status b, .is-vote-detail .vb-submit-link, .is-vote-detail .vb-settings-savebar #settingsSaveState[data-state="已保存"]) { color: var(--ui-blue-hover) !important; }
[data-ui="enterprise-v2"] :where(.is-vote-detail .vb-tab-body:has(.vb-report-layout) .vb-report-layout .btn, .is-vote-detail .vb-settings-save-actions .btn, .is-vote-detail .vb-publish-page .btn) { border-radius: var(--ui-radius-sm); box-shadow: none; }
[data-ui="enterprise-v2"] :where(.is-vote-detail .vb-tab-body:has(.vb-report-layout) .vb-report-layout .btn-danger, .is-vote-detail .vb-settings-save-actions .btn-danger, .is-vote-detail .vb-publish-page .btn-danger) { background: color-mix(in srgb, var(--ui-danger) 8%, var(--ui-surface)) !important; color: var(--ui-danger) !important; border-color: color-mix(in srgb, var(--ui-danger) 30%, var(--ui-line)) !important; }

/* 会务执行附属面板：与主控制台保持同一控件层级，避免人员、致辞和接待面板各自漂移。 */
[data-ui="enterprise-v2"] :where(.ecc-role-list span, .ecc-people-box, .ecc-speech-form, .ecc-inline-form input, .ecc-inline-form select, .ecc-mini-list span, .ecc-point-row img) {
  border-color: var(--ui-line-strong);
  border-radius: var(--ui-radius-sm);
  background: var(--ui-surface);
  color: var(--ui-ink);
}
[data-ui="enterprise-v2"] :where(.ecc-people-head, .ecc-speech-title, .ecc-speech-form label, .ecc-person-row, .ecc-mini-list, .ecc-hint) { color: var(--ui-muted); }
[data-ui="enterprise-v2"] :where(.ecc-people-head span, .ecc-person-row small, .ecc-speech-title span) { color: var(--ui-helper); }
[data-ui="enterprise-v2"] :where(.ecc-person-row, .ecc-speech-title, .ecc-speech-actions) { border-color: var(--ui-line); }
[data-ui="enterprise-v2"] :where(.ecc-person-row select, .ecc-speech-form input, .ecc-speech-form textarea) {
  min-height: 40px;
  border-color: var(--ui-line-strong);
  border-radius: var(--ui-radius-sm);
  background: var(--ui-surface);
  color: var(--ui-ink);
}
[data-ui="enterprise-v2"] :where(.ecc-person-row select:focus, .ecc-speech-form input:focus, .ecc-speech-form textarea:focus, .ecc-inline-form input:focus, .ecc-inline-form select:focus) {
  outline: 2px solid color-mix(in srgb, var(--ui-blue) 28%, transparent);
  border-color: var(--ui-blue);
}
[data-ui="enterprise-v2"] :where(.ecc-role-list span, .ecc-mini-list span) { background: var(--ui-surface-soft); }
[data-ui="enterprise-v2"] :where(.ecc-speech-actions span, .ecc-message) { color: var(--ui-blue-hover); }

/* 普通工作台最终收口：撰写助手与活动控制台共享后台的同一信息密度。
   仅调整视觉层，不改变已有字段、按钮和业务状态。 */
[data-ui="enterprise-v2"] :where(.ewb-page, .acw-page) {
  color: var(--ui-ink);
  font-family: var(--font-sans, "Microsoft YaHei", "PingFang SC", "Noto Sans SC", sans-serif);
}
[data-ui="enterprise-v2"] :where(.ewb-meta, .ewb-card, .ewb-stat, .ewb-table, .acw-table, .acw-hint, .acw-dialog) {
  border: 1px solid var(--ui-line);
  border-radius: var(--ui-radius);
  background: var(--ui-surface);
  box-shadow: var(--ui-shadow);
}
[data-ui="enterprise-v2"] :where(.ewb-meta, .acw-hint, .ewb-stage-nav, .ewb-seating-plan-tools, .ewb-seating-plan-seat-form) {
  background: var(--ui-surface-soft);
  color: var(--ui-muted);
}
[data-ui="enterprise-v2"] :where(.ewb-title-row h2, .acw-head h2, .ewb-card h3, .acw-title b, .acw-hint b) {
  color: var(--ui-ink);
  letter-spacing: .01em;
}
[data-ui="enterprise-v2"] :where(.ewb-crumb, .ewb-header p, .ewb-card-head p, .ewb-meta, .ewb-stat span, .ewb-row small, .ewb-tasks small, .ewb-next, .acw-crumb, .acw-head p, .acw-toolbar, .acw-todo, .acw-title small, .acw-empty) {
  color: var(--ui-helper);
}
[data-ui="enterprise-v2"] :where(.ewb-stat) {
  border-top: 2px solid var(--ui-blue);
  padding: 18px 20px;
}
[data-ui="enterprise-v2"] :where(.ewb-stat b) {
  color: var(--ui-ink);
  font-variant-numeric: tabular-nums;
}
[data-ui="enterprise-v2"] :where(.ewb-row-head, .acw-row-head) {
  background: var(--ui-surface-soft);
  color: var(--ui-muted);
}
[data-ui="enterprise-v2"] :where(.ewb-row, .acw-row, .ewb-tasks li) { border-color: var(--ui-line); }
[data-ui="enterprise-v2"] :where(.ewb-row:hover, .acw-row:hover, .ewb-tasks li:hover) { background: var(--ui-blue-soft); }
[data-ui="enterprise-v2"] :where(.ewb-filter, .ewb-filters input, .acw-toolbar input, .acw-form-grid input, .acw-form-grid select, .acw-form-grid textarea) {
  min-height: 40px;
  box-sizing: border-box;
  border: 1px solid var(--ui-line-strong);
  border-radius: var(--ui-radius-sm);
  background: var(--ui-surface);
  color: var(--ui-ink);
}
[data-ui="enterprise-v2"] :where(.ewb-filter.active) {
  background: var(--ui-blue);
  border-color: var(--ui-blue);
  color: #fff;
}
[data-ui="enterprise-v2"] :where(.ewb-filter:focus-visible, .ewb-filters input:focus, .acw-toolbar input:focus, .acw-form-grid input:focus, .acw-form-grid select:focus, .acw-form-grid textarea:focus) {
  outline: 2px solid color-mix(in srgb, var(--ui-blue) 28%, transparent);
  border-color: var(--ui-blue);
}
[data-ui="enterprise-v2"] :where(.ewb-link, .acw-link, .acw-tabs button.active, .acw-wizard-steps b.active) { color: var(--ui-blue-hover); }
[data-ui="enterprise-v2"] :where(.ewb-link:hover, .acw-link:hover, .acw-tabs button:hover) { background: var(--ui-blue-soft); }
[data-ui="enterprise-v2"] :where(.acw-tabs) {
  border-color: var(--ui-line);
  background: transparent;
  box-shadow: none;
}
[data-ui="enterprise-v2"] :where(.acw-tabs button) { min-height: 40px; color: var(--ui-muted); }
[data-ui="enterprise-v2"] :where(.acw-tabs button.active) { border-bottom-color: var(--ui-blue); }
[data-ui="enterprise-v2"] :where(.acw-state, .ewb-status) {
  border-color: var(--ui-line-strong);
  background: var(--ui-blue-soft);
  color: var(--ui-blue-hover);
}
[data-ui="enterprise-v2"] :where(.acw-modal) { background: color-mix(in srgb, var(--ui-ink) 28%, transparent); }
[data-ui="enterprise-v2"] :where(.acw-modal-head, .acw-modal-foot, .acw-wizard-steps) { border-color: var(--ui-line); }
[data-ui="enterprise-v2"] :where(.acw-wizard-steps) { background: var(--ui-surface-soft); }
[data-ui="enterprise-v2"] :where(.acw-form-note) {
  border-color: var(--ui-line);
  background: var(--ui-blue-soft);
  color: var(--ui-muted);
}
[data-ui="enterprise-v2"] :where(.acw-form-note b, .acw-message, .acw-modal-head h2) { color: var(--ui-blue-hover); }
[data-ui="enterprise-v2"] :where(.acw-close) { color: var(--ui-muted); }
[data-ui="enterprise-v2"] :where(.ewb-stage-nav button) {
  border-color: var(--ui-line-strong);
  border-radius: var(--ui-radius-sm);
  background: var(--ui-surface);
  color: var(--ui-blue-hover);
}
[data-ui="enterprise-v2"] :where(.ewb-stage-nav button:hover, .ewb-stage-nav button:focus-visible) {
  background: var(--ui-blue-soft);
  border-color: var(--ui-blue);
}
[data-ui="enterprise-v2"] :where(.ewb-empty, .acw-empty) { min-height: 112px; display: grid; place-items: center; }
[data-ui="enterprise-v2"] :where(.ewb-steps b:before) { border-color: var(--ui-line-strong); }
[data-ui="enterprise-v2"] :where(.ewb-steps b:after) { background: var(--ui-line); }
[data-ui="enterprise-v2"] :where(.ewb-steps b.done, .ewb-steps b.active) { color: var(--ui-blue-hover); }
[data-ui="enterprise-v2"] :where(.ewb-steps b.done:before, .ewb-steps b.active:before) { border-color: var(--ui-blue); background: var(--ui-blue); }
[data-ui="enterprise-v2"] :where(.ewb-progress i, .acw-progress i) { background: var(--ui-line); }
[data-ui="enterprise-v2"] :where(.ewb-progress em, .acw-progress em) { background: var(--ui-blue); }
[data-ui="enterprise-v2"] :where(.ewb-check) { border-color: var(--ui-line-strong); background: var(--ui-surface); }
@media (max-width: 720px) {
  [data-ui="enterprise-v2"] :where(.ewb-card, .ewb-stat, .acw-dialog) { border-radius: var(--ui-radius-sm); }
  [data-ui="enterprise-v2"] :where(.ewb-stat) { padding: 15px 16px; }
  [data-ui="enterprise-v2"] :where(.acw-form-grid) { padding: 20px 16px; gap: 12px; }
  [data-ui="enterprise-v2"] :where(.acw-modal-head) { padding: 18px 16px 14px; }
}

/* 会务活动控制台最终表面收口：保留业务布局与状态，只统一后台视觉真值。 */
[data-ui="enterprise-v2"] :where(.ecc-page) {
  color: var(--ui-ink);
  font-family: var(--font-sans, "Microsoft YaHei", "PingFang SC", "Noto Sans SC", sans-serif);
}
[data-ui="enterprise-v2"] :where(.ecc-tabs, .ecc-card, .ecc-form, .ecc-table, .ecc-error, .ecc-notice, .ecc-kpis > div) {
  border-color: var(--ui-line);
  background: var(--ui-surface);
  box-shadow: var(--ui-shadow);
}
[data-ui="enterprise-v2"] :where(.ecc-tabs) { border-radius: var(--ui-radius-sm) var(--ui-radius-sm) 0 0; }
[data-ui="enterprise-v2"] :where(.ecc-tab, .ecc-subtabs button) { color: var(--ui-muted); border-color: transparent; background: transparent; }
[data-ui="enterprise-v2"] :where(.ecc-tab:hover, .ecc-tab:focus-visible, .ecc-subtabs button:hover) { color: var(--ui-blue-hover); background: var(--ui-blue-soft); }
[data-ui="enterprise-v2"] :where(.ecc-tab.active, .ecc-subtabs button.active) { color: var(--ui-blue-hover); border-color: var(--ui-blue); background: var(--ui-blue-soft); }
[data-ui="enterprise-v2"] :where(.ecc-title-line h2, .ecc-section-head h3, .ecc-card h4, .ecc-notice-head h4, .ecc-notice h4, .ecc-error h3) { color: var(--ui-ink); }
[data-ui="enterprise-v2"] :where(.ecc-crumb, .ecc-header p, .ecc-section-head p, .ecc-version, .ecc-kpis span, .ecc-facts span, .ecc-notice-head span, .ecc-table-row small, .ecc-empty, .ecc-error p) { color: var(--ui-helper); }
[data-ui="enterprise-v2"] :where(.ecc-kpis b, .ecc-person-summary b, .ecc-facts strong, .ecc-table-row b) { color: var(--ui-ink); }
[data-ui="enterprise-v2"] :where(.ecc-kpis i) { background: var(--ui-surface-soft); }
[data-ui="enterprise-v2"] :where(.ecc-kpis em) { background: var(--ui-blue); }
[data-ui="enterprise-v2"] :where(.ecc-list li, .ecc-table-row, .ecc-person-summary, .ecc-form-actions) { border-color: var(--ui-line); color: var(--ui-muted); }
[data-ui="enterprise-v2"] :where(.ecc-table-head) { background: var(--ui-surface-soft); color: var(--ui-muted); border-color: var(--ui-line); }
[data-ui="enterprise-v2"] :where(.ecc-table-row:hover, .ecc-list li:hover) { background: var(--ui-blue-soft); }
[data-ui="enterprise-v2"] :where(.ecc-form input, .ecc-form textarea, .ecc-inline-form input, .ecc-inline-form select) { border-color: var(--ui-line-strong); border-radius: var(--ui-radius-sm); background: var(--ui-surface); color: var(--ui-ink); }
[data-ui="enterprise-v2"] :where(.ecc-form input:focus, .ecc-form textarea:focus, .ecc-inline-form input:focus, .ecc-inline-form select:focus) { outline: 2px solid color-mix(in srgb, var(--ui-blue) 24%, transparent); outline-offset: 1px; border-color: var(--ui-blue); }
[data-ui="enterprise-v2"] :where(.ecc-notice) { background: var(--ui-surface-soft); color: var(--ui-muted); }
[data-ui="enterprise-v2"] :where(.ecc-status, .ecc-status.is-blue, .ecc-status.is-ok, .ecc-status.is-warn, .ecc-status.is-danger) { border-color: var(--ui-line-strong); background: var(--ui-surface-soft); color: var(--ui-muted); }
[data-ui="enterprise-v2"] :where(.ecc-status.is-blue) { border-color: var(--ui-line-strong); background: var(--ui-blue-soft); color: var(--ui-blue-hover); }
[data-ui="enterprise-v2"] :where(.ecc-status.is-ok) { border-color: color-mix(in srgb, var(--ui-success) 28%, var(--ui-line)); background: color-mix(in srgb, var(--ui-success) 8%, var(--ui-surface)); color: var(--ui-success); }
[data-ui="enterprise-v2"] :where(.ecc-status.is-warn) { border-color: color-mix(in srgb, var(--ui-warning) 30%, var(--ui-line)); background: color-mix(in srgb, var(--ui-warning) 8%, var(--ui-surface)); color: var(--ui-warning); }
[data-ui="enterprise-v2"] :where(.ecc-status.is-danger) { border-color: color-mix(in srgb, var(--ui-danger) 28%, var(--ui-line)); background: color-mix(in srgb, var(--ui-danger) 8%, var(--ui-surface)); color: var(--ui-danger); }
[data-ui="enterprise-v2"] :where(.ecc-link, .ecc-form-actions span, .ecc-message) { color: var(--ui-blue-hover); }
[data-ui="enterprise-v2"] :where(.ecc-link:hover) { background: var(--ui-blue-soft); }

/* 前台门户收口：沿用后台同一天空蓝语义，但保留门户自身的信息架构。 */
[data-ui="enterprise-v2"] :where(.btn-accent) {
  background: var(--ui-blue);
  border-color: var(--ui-blue);
  color: #fff;
  box-shadow: var(--ui-shadow);
}
[data-ui="enterprise-v2"] :where(.btn-accent:hover:not(:disabled)) {
  background: var(--ui-blue-hover);
  border-color: var(--ui-blue-hover);
  color: #fff;
}
[data-ui="enterprise-v2"] :where(.badge-gold, .badge-blue, .tag, .filter-chip.tag) {
  border: 1px solid var(--ui-line);
  background: var(--ui-blue-soft);
  color: var(--ui-blue-hover);
}
[data-ui="enterprise-v2"] :where(.card, .glass, .modal, .modal-card, .auth-card, .pc-card) {
  border-color: var(--ui-line);
  background: var(--ui-surface);
  box-shadow: var(--ui-shadow);
}
[data-ui="enterprise-v2"] :where(.modal-x, .modal-close, .cdp-close) {
  min-width: 40px;
  min-height: 40px;
  border: 1px solid var(--ui-line);
  border-radius: var(--ui-radius-sm);
  background: var(--ui-surface);
  color: var(--ui-icon);
}
[data-ui="enterprise-v2"] :where(.modal-x:hover, .modal-close:hover, .cdp-close:hover) {
  border-color: var(--ui-blue);
  background: var(--ui-blue-soft);
  color: var(--ui-blue-hover);
}
[data-ui="enterprise-v2"] :where(.section-head .eyebrow, .gradient-text) {
  color: var(--ui-blue-hover);
  background: none;
  -webkit-text-fill-color: currentColor;
}

/* 平台后台与租户后台壳层：统一顶部操作、原生弹窗和移动端触控节奏。 */
[data-ui="enterprise-v2"] :where(.dialog-head button, .platform-dialog-close, .ta-topbar button, .ta-topbar .theme-toggle) {
  min-width: 40px;
  min-height: 40px;
  border: 1px solid var(--ui-line);
  border-radius: var(--ui-radius-sm);
  background: var(--ui-surface);
  color: var(--ui-icon);
}
[data-ui="enterprise-v2"] :where(.dialog-head button:hover, .platform-dialog-close:hover, .ta-topbar button:hover, .ta-topbar .theme-toggle:hover) {
  border-color: var(--ui-blue);
  background: var(--ui-blue-soft);
  color: var(--ui-blue-hover);
}
[data-ui="enterprise-v2"] :where(dialog, .platform-dialog, .ta-dialog) {
  border: 1px solid var(--ui-line);
  border-radius: var(--ui-radius-lg);
  background: var(--ui-surface);
  color: var(--ui-ink);
  box-shadow: var(--ui-shadow-hover);
}
[data-ui="enterprise-v2"] :where(dialog::backdrop, .platform-dialog-backdrop) {
  background: color-mix(in srgb, var(--ui-ink) 28%, transparent);
}
[data-ui="enterprise-v2"] :where(.toolbar, .header-actions, .ta-topbar-right) {
  flex-wrap: wrap;
}
[data-ui="enterprise-v2"] :where(.table-wrap, .ta-table, .panel) {
  min-width: 0;
  overflow-x: auto;
}
@media (max-width: 720px) {
  [data-ui="enterprise-v2"] :where(.toolbar, .header-actions, .ta-topbar-right) { gap: 8px; }
  [data-ui="enterprise-v2"] :where(.toolbar > *, .header-actions > *, .ta-topbar-right > *) { min-height: 44px; }
  [data-ui="enterprise-v2"] :where(.dialog-head button, .platform-dialog-close) { min-width: 44px; min-height: 44px; }
}

/* 辅助导入页：保留文件导入和差异预览功能，统一为正式页面的工作区节奏。 */
[data-ui="enterprise-v2"] :where(.state-sync-page) {
  padding: 32px 16px;
  background: var(--ui-page);
  color: var(--ui-ink);
  font-family: var(--font-sans);
}
[data-ui="enterprise-v2"] :where(.state-sync-page .wrap) { max-width: 980px; }
[data-ui="enterprise-v2"] :where(.state-sync-page h1) { font-size: 24px; line-height: 32px; }
[data-ui="enterprise-v2"] :where(.state-sync-page .card) {
  padding: 22px;
  border: 1px solid var(--ui-line);
  border-radius: var(--ui-radius);
  background: var(--ui-surface);
  box-shadow: var(--ui-shadow);
}
[data-ui="enterprise-v2"] :where(.state-sync-page .step) { color: var(--ui-blue-hover); }
[data-ui="enterprise-v2"] :where(.state-sync-page .drop) {
  min-height: 112px;
  display: grid;
  place-content: center;
  border: 1px dashed var(--ui-line-strong);
  border-radius: var(--ui-radius-sm);
  background: var(--ui-surface-soft);
  color: var(--ui-helper);
}
[data-ui="enterprise-v2"] :where(.state-sync-page .drop:hover, .state-sync-page .drop.dragover) {
  border-color: var(--ui-blue);
  background: var(--ui-blue-soft);
}
[data-ui="enterprise-v2"] :where(.state-sync-page button) {
  min-height: 40px;
  border-radius: var(--ui-radius-sm);
  font-family: inherit;
}
[data-ui="enterprise-v2"] :where(.state-sync-page table) { overflow: hidden; border: 1px solid var(--ui-line); border-radius: var(--ui-radius-sm); }
[data-ui="enterprise-v2"] :where(.state-sync-page th) { background: var(--ui-surface-soft); color: var(--ui-muted); }
[data-ui="enterprise-v2"] :where(.state-sync-page td, .state-sync-page th) { border-color: var(--ui-line); }
[data-ui="enterprise-v2"] :where(.state-sync-page .log) {
  border: 1px solid var(--ui-line);
  border-radius: var(--ui-radius-sm);
  background: var(--ui-ink);
}
@media (max-width: 720px) {
  [data-ui="enterprise-v2"] :where(.state-sync-page) { padding: 20px 12px; }
  [data-ui="enterprise-v2"] :where(.state-sync-page .card) { padding: 16px; }
  [data-ui="enterprise-v2"] :where(.state-sync-page .actions button) { min-height: 44px; }
  [data-ui="enterprise-v2"] :where(.state-sync-page table) { display: block; overflow-x: auto; white-space: nowrap; }
}
