:root {
  --bg: #f5f6fa;
  --bg-soft: #f0e9ff;
  --surface: #ffffff;
  --surface-strong: #ffffff;
  --surface-muted: #f6f8fc;
  --text-primary: #0f172a;
  --text-secondary: #475569;
  --text-tertiary: #64748b;
  --border-subtle: #e7eaf1;
  --border-strong: #d6dce8;
  --shadow-soft: 0 1px 2px rgba(15, 23, 42, 0.05);
  --shadow-lift: 0 6px 18px rgba(15, 23, 42, 0.07);
  --radius-panel: 14px;
  --radius-control: 10px;
  --accent: #7f56d9;
  --accent-dark: #53389e;
  --accent-soft: #f0e9ff;
  --success-bg: #ecfdf3;
  --success-text: #067647;
  --warning-bg: #fffaf2;
  --warning-text: #b54708;
  --neutral-bg: #f2f4f7;
  --neutral-text: #1e293b;
  --danger-bg: #fff1f0;
  --danger-text: #b42318;
}

html {
  min-height: 100%;
  background: var(--bg);
}

body {
  font-family: -apple-system, BlinkMacSystemFont, "SF Pro Text", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Arial, sans-serif !important;
  background: var(--bg) !important;
  color: var(--text-primary) !important;
  font-variant-numeric: tabular-nums;
}

body::before {
  display: none !important;
}

.main-content {
  min-height: calc(100vh - 60px);
  background: transparent !important;
}

.container {
  color: var(--text-primary);
}

.page-title,
.title,
.panel-title,
.panel-heading,
.card-value,
.metric-value,
.stat-value,
.room-name,
.live-name,
.anchor-name,
.user-name,
.row-title,
.section-caption strong,
h1,
h2,
h3 {
  color: var(--text-primary) !important;
  letter-spacing: -0.02em;
}

.page-subtitle,
.page-kicker,
.panel-meta,
.panel-note,
.panel-subtitle,
.card-sub,
.metric-label,
.stat-label,
.room-meta,
.live-meta,
.user-id,
.row-meta,
.empty,
.empty-state,
.context,
.comment-meta,
.page-text {
  color: var(--text-secondary) !important;
}

.top-bar {
  background: rgba(238, 243, 247, 0.72) !important;
  border-bottom: 1px solid var(--border-subtle) !important;
  box-shadow: var(--shadow-soft) !important;
  backdrop-filter: blur(12px) saturate(1.2) !important;
}

.top-bar-brand {
  color: var(--text-primary) !important;
  letter-spacing: -0.02em !important;
}

.top-bar-slogan,
.user-menu-phone {
  color: var(--text-secondary) !important;
}

.top-bar-slogan .focus {
  color: var(--accent) !important;
}

.top-user-trigger,
.user-menu,
.profile-panel,
.app-alert-dialog {
  background: var(--surface-strong) !important;
  border: 1px solid var(--border-subtle) !important;
  border-radius: var(--radius-panel) !important;
  box-shadow: var(--shadow-lift) !important;
  backdrop-filter: blur(12px) !important;
}

.top-user-trigger {
  width: 36px !important;
  height: 36px !important;
  min-width: 36px !important;
  min-height: 36px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 50% !important;
  background: transparent !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
}

.top-user-trigger:hover {
  background: transparent !important;
  box-shadow: none !important;
}

.top-user-trigger:focus-visible {
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(15, 118, 110, 0.16) !important;
}

.top-user-trigger .top-user-avatar {
  width: 36px !important;
  height: 36px !important;
  border-radius: 50% !important;
  box-shadow: none !important;
}

.top-user-trigger:hover .top-user-avatar {
  box-shadow: 0 0 0 3px rgba(15, 118, 110, 0.14) !important;
}

/* 侧栏外壳（背景/菜单项/收起按钮/头像）由 nav.css 统一负责浅色 + 品牌紫方案；
   这里曾用 !important 写死旧深色主题，导致菜单文字、收起按钮、头像回退旧样式，禁止再加侧栏覆盖。 */
.panel,
.chart-panel,
.ai-panel,
.review-panel,
.filter-panel,
.stat-card,
.summary-card,
.anchor-strip,
.table-container,
.live-card,
.loading-card,
.metric,
.session-row,
.todo-item,
.entry-card,
.more-panel,
.review-module,
.module-card,
.lead-item,
.first-card,
.wizard-card,
.setting-item,
.model-pack,
.detected-card,
.confirm-content,
.modal-content,
.image-preview-panel,
.local-card,
.rule-card,
.privacy-tip,
.team-collect-tip,
.reservation-tip,
.notice {
  background: var(--surface) !important;
  border: 1px solid var(--border-subtle) !important;
  border-radius: var(--radius-panel) !important;
  box-shadow: var(--shadow-soft) !important;
  backdrop-filter: blur(12px) !important;
}

.live-card,
.container > .panel,
.container > .filter-panel,
.container > .ai-panel,
.container > .review-panel,
.container > .chart-panel {
  background: rgba(244, 248, 252, 0.66) !important;
}

.panel,
.chart-panel,
.ai-panel,
.review-panel,
.live-card,
.summary-card,
.metric,
.stat-card {
  transition: border-color 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease;
}

.panel:hover,
.chart-panel:hover,
.review-panel:hover,
.live-card:hover,
.summary-card:hover,
.metric:hover,
.stat-card:hover {
  border-color: rgba(209, 213, 219, 0.9) !important;
  box-shadow: var(--shadow-lift) !important;
}

.panel-head,
.ai-panel-header,
.review-header,
.profile-head,
.pagination,
.app-alert-actions {
  border-color: var(--border-subtle) !important;
  background: rgba(255, 255, 255, 0.56) !important;
}

.btn,
.btn-ghost,
.btn-secondary,
.btn-reset,
.btn-cancel,
.btn-cancel-reservation,
.profile-btn,
.modal-btn,
.app-alert-btn.secondary,
.bozhi-select-trigger,
body:not(.glass-page):not(.ops-page) button:not(.window-btn):not(.win-btn):not(.sidebar-toggle):not(.profile-close):not(.profile-tab):not(.image-preview-close):not(.confirm-ok):not(.btn-stop):not(.btn-delete):not(.modal-btn-confirm):not(.copy-btn) {
  border-radius: var(--radius-control) !important;
  border-color: var(--border-strong) !important;
  background: rgba(248, 250, 252, 0.72) !important;
  color: var(--neutral-text) !important;
  box-shadow: none !important;
  transition: transform 0.16s ease, box-shadow 0.16s ease, border-color 0.16s ease, background 0.16s ease, color 0.16s ease !important;
}

.btn:hover,
.btn-ghost:hover,
.btn-secondary:hover,
.btn-reset:hover,
.btn-cancel:hover,
.btn-cancel-reservation:hover,
.profile-btn:hover,
.modal-btn:hover,
.app-alert-btn.secondary:hover,
body:not(.glass-page):not(.ops-page) button:not(.window-btn):not(.win-btn):not(.sidebar-toggle):not(.profile-close):not(.profile-tab):not(.image-preview-close):not(.confirm-ok):not(.btn-stop):not(.btn-delete):not(.modal-btn-confirm):not(.copy-btn):hover {
  background: rgba(255, 255, 255, 0.9) !important;
  border-color: #d1d5db !important;
  color: var(--text-primary) !important;
  transform: translateY(-1px);
  box-shadow: var(--shadow-soft) !important;
}

.btn-primary,
.btn-ai,
.btn-start,
.sync-btn,
.focus-action,
.profile-btn.primary,
.app-alert-btn,
button[type="submit"],
button[id$="Btn"].primary {
  background: #121a16 !important;
  border-color: #121a16 !important;
  color: #ffffff !important;
}

.btn-primary:hover,
.btn-ai:hover,
.btn-start:hover,
.sync-btn:hover,
.focus-action:hover,
.profile-btn.primary:hover,
.app-alert-btn:hover,
button[type="submit"]:hover {
  background: #1b2822 !important;
  border-color: #1b2822 !important;
  color: #ffffff !important;
  box-shadow: var(--shadow-lift) !important;
}

.btn-delete,
.confirm-ok,
.modal-btn-confirm {
  background: rgba(255, 241, 244, 0.82) !important;
  border: 1px solid rgba(190, 18, 60, 0.24) !important;
  color: #a32743 !important;
}

.btn-delete:hover,
.confirm-ok:hover,
.modal-btn-confirm:hover {
  background: rgba(255, 228, 233, 0.92) !important;
  border-color: rgba(190, 18, 60, 0.34) !important;
  color: #8f1d38 !important;
}

input,
select,
textarea,
.input,
.select,
.anchor-search,
.live-name-input,
.profile-field input,
.bozhi-select-trigger {
  background: rgba(255, 255, 255, 0.92) !important;
  border: 1px solid var(--border-strong) !important;
  border-radius: var(--radius-control) !important;
  color: var(--text-primary) !important;
  outline: none !important;
}

input::placeholder,
textarea::placeholder {
  color: var(--text-tertiary) !important;
}

input:focus,
select:focus,
textarea:focus,
.input:focus,
.select:focus,
.anchor-search:focus,
.live-name-input:focus,
.profile-field input:focus,
.bozhi-select.open .bozhi-select-trigger {
  border-color: var(--accent) !important;
  box-shadow: 0 0 0 3px rgba(18, 32, 27, 0.12) !important;
}

table {
  border-collapse: collapse;
}

th {
  background: rgba(249, 250, 251, 0.86) !important;
  color: var(--text-tertiary) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase;
  border-bottom: 1px solid var(--neutral-bg) !important;
}

td {
  color: var(--neutral-text) !important;
  border-bottom: 1px solid var(--neutral-bg) !important;
}

tr:hover td {
  background: #f9fafb !important;
}

.badge,
.pill,
.lead-tag,
.module-chip,
.review-tag,
.info-chip,
.wizard-tag,
.asr-progress-counts span,
.review-progress-counts span,
.bozhi-select-option.selected {
  background: var(--neutral-bg) !important;
  color: var(--neutral-text) !important;
  border-color: var(--border-subtle) !important;
}

.badge-success,
.pill-live,
.check-item.done .check-dot,
.asr-progress-counts .ok,
.ai-status-dot.done {
  background: var(--success-bg) !important;
  color: var(--success-text) !important;
}

.badge-warn,
.team-collect-tip,
.reservation-tip,
.privacy-tip,
.check-item.warn .check-dot,
.asr-progress-counts .warn {
  background: var(--warning-bg) !important;
  color: var(--warning-text) !important;
  border-color: #fde68a !important;
}

.badge-info,
.badge-strong,
.pill-review,
.anchor-option.selected,
.case-tab.active,
.wizard-card.active,
.asr-progress-metric.clickable.active {
  background: #f0e9ff !important;
  color: #1e293b !important;
  border-color: #dde5ed !important;
}

.metric-icon,
.entry-icon,
.panel-icon,
.wizard-icon,
.todo-index,
.asr-status-dot,
.anchor-avatar,
.small-avatar {
  background: #f0e9ff !important;
  color: #1e293b !important;
}

.metric-alert .metric-icon {
  background: #fff1f2 !important;
  color: #be123c !important;
}

.metric-user .metric-icon {
  background: #fffbeb !important;
  color: #b45309 !important;
}

.grade,
.score-value,
.score-box .score-value {
  background: #121a16 !important;
  color: #ffffff !important;
  border-radius: 14px !important;
}

.focus-card,
.hero {
  background:
    linear-gradient(135deg, rgba(17, 24, 39, 0.96), rgba(55, 65, 81, 0.9)),
    radial-gradient(circle at top right, rgba(99, 102, 241, 0.36), transparent 42%) !important;
  border-radius: var(--radius-panel) !important;
  border: 1px solid rgba(255, 255, 255, 0.12) !important;
  box-shadow: var(--shadow-lift) !important;
}

body:not(.glass-page):not(.ops-page) button.btn-add,
body:not(.glass-page):not(.ops-page) button.btn-detail,
body:not(.glass-page):not(.ops-page) button.btn-extend-reservation,
body:not(.glass-page):not(.ops-page) button.secondary-btn,
body:not(.glass-page):not(.ops-page) button.browser-login-action,
body:not(.glass-page):not(.ops-page) button.btn-float {
  background: rgba(248, 250, 252, 0.76) !important;
  border: 1px solid rgba(215, 222, 232, 0.78) !important;
  color: #465365 !important;
  box-shadow: var(--shadow-soft) !important;
}

body:not(.glass-page):not(.ops-page) button.btn-add:hover,
body:not(.glass-page):not(.ops-page) button.btn-detail:hover,
body:not(.glass-page):not(.ops-page) button.btn-extend-reservation:hover,
body:not(.glass-page):not(.ops-page) button.secondary-btn:hover,
body:not(.glass-page):not(.ops-page) button.browser-login-action:hover,
body:not(.glass-page):not(.ops-page) button.btn-float:hover {
  background: rgba(255, 255, 255, 0.92) !important;
  border-color: rgba(190, 199, 211, 0.9) !important;
  color: #111827 !important;
  box-shadow: var(--shadow-lift) !important;
}

body:not(.glass-page):not(.ops-page) button.btn-stop {
  background: rgba(255, 241, 244, 0.82) !important;
  border: 1px solid rgba(190, 18, 60, 0.24) !important;
  color: #a32743 !important;
  box-shadow: none !important;
}

body:not(.glass-page):not(.ops-page) button.btn-stop:hover {
  background: rgba(255, 228, 233, 0.92) !important;
  border-color: rgba(190, 18, 60, 0.34) !important;
  color: #8f1d38 !important;
  box-shadow: var(--shadow-soft) !important;
}

.button-row {
  padding: 6px;
  background: rgba(244, 247, 250, 0.72);
  border: 1px solid var(--border-subtle);
  border-radius: 16px;
  gap: 6px !important;
}

.button-row button,
.reserve-btn,
#startBtn {
  height: 54px !important;
  margin: 0 !important;
  border-radius: 12px !important;
  background: rgba(255, 255, 255, 0.74) !important;
  border: 1px solid rgba(215, 222, 232, 0.78) !important;
  color: #465365 !important;
  box-shadow: none !important;
}

.button-row button:not(:disabled):hover,
.reserve-btn:not(:disabled):hover,
#startBtn:not(:disabled):hover {
  background: rgba(255, 255, 255, 0.94) !important;
  color: #111827 !important;
  box-shadow: var(--shadow-soft) !important;
}

#startBtn:not(:disabled) {
  background: #121a16 !important;
  border-color: #121a16 !important;
  color: #ffffff !important;
}

#startBtn:not(:disabled):hover {
  background: #1b2822 !important;
  border-color: #1b2822 !important;
  color: #ffffff !important;
}

.reserve-btn:not(:disabled) {
  background: rgba(232, 238, 243, 0.76) !important;
}

button:disabled,
.button-row button:disabled {
  opacity: 0.5 !important;
  cursor: not-allowed !important;
  transform: none !important;
}

.live-id-pill,
.status-field,
.status-badge,
.badge,
.pill,
.intent-tag,
.score-badge {
  background: rgba(244, 247, 250, 0.76) !important;
  border: 1px solid rgba(215, 222, 232, 0.82) !important;
}

.stat-item,
.time-item,
.metric,
.comment,
.context-box,
.suggestion-user,
.user {
  background: rgba(255, 255, 255, 0.58) !important;
  border: 1px solid rgba(221, 228, 236, 0.72) !important;
  border-radius: 14px !important;
}

.suggestion-item,
.ops-tips-window .tip {
  background: rgba(255, 255, 255, 0.68) !important;
  border: 1px solid rgba(221, 228, 236, 0.78) !important;
  border-left: 5px solid #60756c !important;
  border-radius: 14px !important;
  box-shadow: var(--shadow-soft) !important;
}

.suggestion-item.priority-high,
.ops-tips-window .tip.high {
  background: rgba(255, 245, 247, 0.78) !important;
  border-color: rgba(244, 182, 193, 0.76) !important;
  border-left-color: #a32743 !important;
  box-shadow: 0 14px 34px rgba(163, 39, 67, 0.08) !important;
}

.suggestion-item.priority-medium,
.ops-tips-window .tip.medium {
  background: rgba(255, 250, 239, 0.78) !important;
  border-color: rgba(241, 207, 145, 0.72) !important;
  border-left-color: #9a5b12 !important;
}

.value-badge.high {
  background: #d7263d !important;
  color: #ffffff !important;
  border-color: #d7263d !important;
  box-shadow: 0 8px 18px rgba(215, 38, 61, 0.16) !important;
}

.value-badge.medium {
  background: rgba(255, 248, 232, 0.92) !important;
  color: #9a5b12 !important;
  border-color: rgba(241, 207, 145, 0.86) !important;
}

.focus-card *,
.hero * {
  color: inherit;
}

.modal,
.profile-modal,
.app-alert-overlay,
.confirm-dialog,
.image-preview {
  background: rgba(17, 24, 39, 0.34) !important;
  backdrop-filter: blur(12px) !important;
}

.empty,
.empty-state,
.ai-empty,
.module-empty,
.lead-empty {
  background: rgba(255, 255, 255, 0.7) !important;
  border: 1px dashed var(--border-strong) !important;
  border-radius: var(--radius-panel) !important;
}

.suggestions-container {
  gap: 12px;
}

.suggestion-card {
  background: var(--surface) !important;
  border: 1px solid var(--border-subtle);
  border-radius: var(--radius-panel) !important;
  box-shadow: var(--shadow-soft) !important;
  backdrop-filter: blur(12px);
}

.suggestion-action {
  border-left: 0 !important;
  border: 1px solid var(--border-subtle);
  background: #f9fafb !important;
  border-radius: 12px !important;
}

.priority-high {
  background: var(--danger-bg) !important;
  color: var(--danger-text) !important;
}

.priority-medium {
  background: var(--warning-bg) !important;
  color: var(--warning-text) !important;
}

.priority-low {
  background: var(--neutral-bg) !important;
  color: var(--neutral-text) !important;
}

.auth-shell {
  position: relative;
}

.auth-shell .container {
  width: 100% !important;
  height: 100% !important;
  padding: clamp(36px, 7vh, 64px) clamp(42px, 8vw, 76px) !important;
  background: #ffffff !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.auth-shell .auth-inner {
  width: min(360px, 100%) !important;
}

.auth-shell .brand {
  width: 100% !important;
  justify-items: initial !important;
}

.auth-shell .brand-line {
  align-items: center !important;
}

.auth-shell .brand-slogan {
  color: var(--text-secondary) !important;
  letter-spacing: 0 !important;
}

#loginBtn,
#registerBtn,
#resetBtn {
  background: linear-gradient(135deg, #9e77ed, #6941c6) !important;
  border-color: transparent !important;
  color: #ffffff !important;
}

#loginBtn:hover,
#registerBtn:hover,
#resetBtn:hover {
  background: linear-gradient(135deg, #7f56d9, #53389e) !important;
  border-color: transparent !important;
  color: #ffffff !important;
  box-shadow: var(--shadow-lift) !important;
}

.brand-name {
  letter-spacing: -0.02em !important;
}

.brand-slogan {
  color: var(--text-secondary) !important;
}

.brand-slogan .focus {
  color: var(--accent) !important;
}

.link a,
.action-link,
.product-link:hover,
.lead-product-name:hover,
.user-name-link:hover {
  color: var(--accent) !important;
}

/* Cohesive operational UI pass: keep every page on the same restrained system. */
body {
  background: var(--bg) !important;
}

.top-bar {
  background: #ffffff !important;
  border-bottom-color: var(--border-subtle) !important;
  box-shadow: 0 1px 2px rgba(16, 24, 40, 0.04) !important;
  backdrop-filter: none !important;
}

.top-bar-slogan .focus,
.brand-slogan .focus {
  color: var(--accent) !important;
}

.panel,
.chart-panel,
.ai-panel,
.review-panel,
.filter-panel,
.stat-card,
.summary-card,
.anchor-strip,
.table-container,
.live-card,
.loading-card,
.metric,
.session-row,
.todo-item,
.entry-card,
.more-panel,
.review-module,
.module-card,
.lead-item,
.first-card,
.wizard-card,
.setting-item,
.model-pack,
.detected-card,
.confirm-content,
.modal-content,
.image-preview-panel,
.local-card,
.rule-card,
.privacy-tip,
.team-collect-tip,
.reservation-tip,
.notice,
.container > .panel,
.container > .filter-panel,
.container > .ai-panel,
.container > .review-panel,
.container > .chart-panel {
  background: #ffffff !important;
  border: 1px solid var(--border-subtle) !important;
  border-radius: var(--radius-panel) !important;
  box-shadow: var(--shadow-soft) !important;
  backdrop-filter: none !important;
}

.panel:hover,
.chart-panel:hover,
.review-panel:hover,
.live-card:hover,
.summary-card:hover,
.metric:hover,
.stat-card:hover {
  border-color: var(--border-subtle) !important;
  box-shadow: var(--shadow-soft) !important;
  transform: none !important;
}

.btn-primary,
.btn-ai,
.btn-start,
.btn-add,
.btn-edit,
.btn-save,
.sync-btn,
.profile-btn.primary,
.app-alert-btn,
button[type="submit"],
button[id$="Btn"].primary,
#loginBtn,
#registerBtn,
#resetBtn,
#startBtn:not(:disabled) {
  background: var(--accent) !important;
  border-color: var(--accent) !important;
  color: #ffffff !important;
  box-shadow: none !important;
}

.btn-primary:hover,
.btn-ai:hover,
.btn-start:hover,
.btn-add:hover,
.btn-edit:hover,
.btn-save:hover,
.sync-btn:hover,
.profile-btn.primary:hover,
.app-alert-btn:hover,
button[type="submit"]:hover,
#loginBtn:hover,
#registerBtn:hover,
#resetBtn:hover,
#startBtn:not(:disabled):hover {
  background: var(--accent-dark) !important;
  border-color: var(--accent-dark) !important;
  color: #ffffff !important;
  box-shadow: none !important;
}

.btn,
.btn-ghost,
.btn-secondary,
.btn-reset,
.btn-cancel,
.btn-cancel-reservation,
.btn-extend-reservation,
.btn-detail,
.btn-float,
.profile-btn,
.modal-btn,
.app-alert-btn.secondary,
.bozhi-select-trigger {
  background: #ffffff !important;
  border-color: var(--border-strong) !important;
  color: var(--neutral-text) !important;
  border-radius: var(--radius-control) !important;
  box-shadow: none !important;
}

.btn:hover,
.btn-ghost:hover,
.btn-secondary:hover,
.btn-reset:hover,
.btn-cancel:hover,
.btn-cancel-reservation:hover,
.btn-extend-reservation:hover,
.btn-detail:hover,
.btn-float:hover,
.profile-btn:hover,
.modal-btn:hover,
.app-alert-btn.secondary:hover {
  background: #f9fafb !important;
  border-color: #98a2b3 !important;
  color: var(--accent) !important;
  transform: none !important;
  box-shadow: none !important;
}

a,
.link,
.action-link,
.product-link:hover,
.lead-product-name:hover,
.user-name-link:hover,
.btn-detail-link {
  color: var(--accent) !important;
}

.focus-card,
.hero {
  background: #ffffff !important;
  border: 1px solid var(--border-subtle) !important;
  border-left: 4px solid var(--accent) !important;
  box-shadow: var(--shadow-soft) !important;
  color: var(--text-primary) !important;
}

.focus-card *,
.hero * {
  color: inherit !important;
}

.focus-eyebrow,
.focus-desc {
  color: var(--text-secondary) !important;
}

.focus-action {
  background: var(--accent) !important;
  border-color: var(--accent) !important;
  color: #ffffff !important;
}

.focus-action:hover {
  background: var(--accent-dark) !important;
  border-color: var(--accent-dark) !important;
  color: #ffffff !important;
}

.lead-table-head,
th {
  background: #f6f8fc !important;
  color: #64748b !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

tr:hover td,
.user-row:hover,
.compact-row:hover,
.avatar-row:hover {
  background: #f9fafb !important;
}

.anchor-picker,
.filter-panel,
.toolbar {
  position: relative;
  z-index: 30;
}

.user-menu {
  width: 220px !important;
  padding: 8px !important;
  overflow: visible !important;
  background: #ffffff !important;
  border: 1px solid var(--border-subtle) !important;
  border-radius: 12px !important;
  box-shadow: 0 18px 42px rgba(15, 23, 42, 0.14) !important;
}

.user-menu-head {
  padding: 10px 10px 12px !important;
  border-bottom: 1px solid #f0f2f5 !important;
}

.user-menu .user-name {
  color: var(--text-primary) !important;
  font-size: 15px !important;
  font-weight: 700 !important;
}

.user-menu-phone {
  color: var(--text-secondary) !important;
  font-size: 13px !important;
}

.user-menu-item {
  width: 100% !important;
  min-height: 38px !important;
  height: 38px !important;
  margin: 4px 0 0 !important;
  padding: 0 10px !important;
  border: 0 !important;
  border-radius: 8px !important;
  background: transparent !important;
  color: var(--neutral-text) !important;
  box-shadow: none !important;
  text-align: left !important;
  font-size: 14px !important;
  font-weight: 600 !important;
}

.user-menu-item:hover {
  background: #f6f8fc !important;
  color: var(--accent) !important;
}

.bozhi-select-trigger,
.template-select,
.select {
  height: 38px !important;
  min-height: 38px !important;
  background: #ffffff !important;
  border: 1px solid var(--border-strong) !important;
  border-radius: 8px !important;
  color: var(--neutral-text) !important;
  box-shadow: none !important;
  font-size: 14px !important;
  font-weight: 600 !important;
}

.bozhi-select-trigger {
  padding: 0 10px 0 12px !important;
}

.bozhi-select.open .bozhi-select-trigger,
.bozhi-select-trigger:focus-visible,
.template-select:focus,
.select:focus {
  border-color: var(--accent) !important;
  box-shadow: 0 0 0 3px rgba(15, 118, 110, 0.12) !important;
  outline: none !important;
}

.bozhi-select-label {
  gap: 8px !important;
  color: var(--neutral-text) !important;
}

.bozhi-select-arrow {
  width: 16px !important;
  height: 16px !important;
  color: #64748b !important;
}

.template-select-wrap::after {
  right: 14px !important;
  border-color: #64748b !important;
}

.anchor-menu,
.bozhi-select-menu {
  z-index: 2600 !important;
  background: #ffffff !important;
  border-color: var(--border-subtle) !important;
  box-shadow: 0 18px 42px rgba(15, 23, 42, 0.14) !important;
  border-radius: 12px !important;
  padding: 6px !important;
  overflow: auto !important;
}

.anchor-option,
.bozhi-select-option {
  min-height: 38px !important;
  border: 0 !important;
  border-radius: 8px !important;
  background: transparent !important;
  color: var(--neutral-text) !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  line-height: 1.35 !important;
  padding: 7px 10px !important;
  gap: 8px !important;
  box-shadow: none !important;
}

.anchor-option:hover,
.bozhi-select-option:hover,
.user-menu-item:hover {
  background: #f6f8fc !important;
  color: var(--neutral-text) !important;
}

.anchor-option.selected,
.bozhi-select-option.selected {
  background: var(--accent-soft) !important;
  color: var(--accent) !important;
}

.bozhi-select-check {
  width: 14px !important;
  min-width: 14px !important;
  color: var(--accent) !important;
  font-size: 13px !important;
  line-height: 1 !important;
  visibility: hidden !important;
}

.bozhi-select-option.selected .bozhi-select-check {
  visibility: visible !important;
}

.bozhi-select-avatar,
.small-avatar {
  width: 26px !important;
  height: 26px !important;
  background: var(--accent-soft) !important;
  color: var(--accent) !important;
  border: 1px solid #c7d2e5 !important;
}

.switch input:checked + .slider,
input:checked + .slider,
.toggle.on,
.merge-toggle:has(input:checked)::before {
  background: var(--accent) !important;
}

.progress-fill,
.progress-track > div,
.download-progress-fill,
.asr-progress-fill,
.review-progress-fill,
.ranking-fill {
  background: var(--accent) !important;
}

.asr-progress-ring {
  background: conic-gradient(var(--accent) var(--progress, 0%), #e8f1ef 0) !important;
}

.asr-progress-ring-value,
.asr-progress-percent,
.review-progress-percent {
  color: var(--accent) !important;
}

.asr-progress-dashboard,
.review-progress-card {
  background: #ffffff !important;
  border-color: var(--border-subtle) !important;
}

.badge-info,
.badge-strong,
.pill-review,
.anchor-chip.link,
.case-tab.active,
.wizard-card.active,
.asr-progress-metric.clickable.active {
  background: var(--accent-soft) !important;
  color: var(--accent) !important;
  border-color: #c7d2e5 !important;
}

.form-group .tip,
.modal-content .tip {
  margin-top: 6px !important;
  padding: 0 !important;
  color: #98a2b3 !important;
  font-size: 12px !important;
  line-height: 1.5 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.btn.btn-primary,
button.btn-primary,
.btn-ai,
.btn-start,
.btn-add,
.btn-edit,
.btn-save,
.sync-btn,
.profile-btn.primary,
.app-alert-btn:not(.secondary),
button[type="submit"],
#loginBtn,
#registerBtn,
#resetBtn,
#startBtn:not(:disabled) {
  background: var(--accent) !important;
  border-color: var(--accent) !important;
  color: #ffffff !important;
  box-shadow: none !important;
}

.btn.btn-primary:hover,
button.btn-primary:hover,
.btn-ai:hover,
.btn-start:hover,
.btn-add:hover,
.btn-edit:hover,
.btn-save:hover,
.sync-btn:hover,
.profile-btn.primary:hover,
.app-alert-btn:not(.secondary):hover,
button[type="submit"]:hover,
#loginBtn:hover,
#registerBtn:hover,
#resetBtn:hover,
#startBtn:not(:disabled):hover {
  background: var(--accent-dark) !important;
  border-color: var(--accent-dark) !important;
  color: #ffffff !important;
}

/* Global action button system: one visual language by action priority. */
button:is(
  .btn,
  .btn-primary,
  .btn-quiet,
  .btn-ghost,
  .btn-secondary,
  .btn-reset,
  .btn-cancel,
  .btn-cancel-reservation,
  .btn-extend-reservation,
  .btn-detail,
  .btn-float,
  .btn-add,
  .btn-start,
  .btn-ai,
  .btn-edit,
  .btn-save,
  .sync-btn,
  .profile-btn,
  .modal-btn,
  .app-alert-btn,
  .secondary-btn,
  .browser-login-action
) {
  height: 38px !important;
  min-height: 38px !important;
  min-width: 72px !important;
  padding: 0 14px !important;
  border-radius: 8px !important;
  border-width: 1px !important;
  border-style: solid !important;
  box-shadow: none !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  white-space: nowrap !important;
  text-decoration: none !important;
  cursor: pointer !important;
  transform: none !important;
  transition: background-color .16s ease, border-color .16s ease, color .16s ease !important;
}

button:is(
  .btn,
  .btn-quiet,
  .btn-ghost,
  .btn-secondary,
  .btn-reset,
  .btn-cancel,
  .btn-cancel-reservation,
  .btn-extend-reservation,
  .btn-detail,
  .btn-float,
  .profile-btn,
  .modal-btn,
  .app-alert-btn.secondary,
  .secondary-btn,
  .browser-login-action
):not(.btn-primary):not(.primary):not(.btn-stop):not(.btn-delete):not(.modal-btn-confirm):not(.confirm-ok) {
  background: #ffffff !important;
  border-color: var(--border-strong) !important;
  color: var(--neutral-text) !important;
}

button:is(
  .btn,
  .btn-quiet,
  .btn-ghost,
  .btn-secondary,
  .btn-reset,
  .btn-cancel,
  .btn-cancel-reservation,
  .btn-extend-reservation,
  .btn-detail,
  .btn-float,
  .profile-btn,
  .modal-btn,
  .app-alert-btn.secondary,
  .secondary-btn,
  .browser-login-action
):not(.btn-primary):not(.primary):not(.btn-stop):not(.btn-delete):not(.modal-btn-confirm):not(.confirm-ok):hover {
  background: #f9fafb !important;
  border-color: #98a2b3 !important;
  color: var(--accent) !important;
  transform: none !important;
  box-shadow: none !important;
}

button:is(
  .btn-primary,
  .btn.btn-primary,
  button.btn-primary,
  .btn-add,
  .btn-start,
  .btn-ai,
  .btn-edit,
  .btn-save,
  .sync-btn,
  .profile-btn.primary,
  .app-alert-btn:not(.secondary),
  button[type="submit"],
  #loginBtn,
  #registerBtn,
  #startBtn:not(:disabled)
) {
  background: var(--accent) !important;
  border-color: var(--accent) !important;
  color: #ffffff !important;
}

button:is(
  .btn-primary,
  .btn.btn-primary,
  button.btn-primary,
  .btn-add,
  .btn-start,
  .btn-ai,
  .btn-edit,
  .btn-save,
  .sync-btn,
  .profile-btn.primary,
  .app-alert-btn:not(.secondary),
  button[type="submit"],
  #loginBtn,
  #registerBtn,
  #startBtn:not(:disabled)
):hover {
  background: var(--accent-dark) !important;
  border-color: var(--accent-dark) !important;
  color: #ffffff !important;
  transform: none !important;
  box-shadow: none !important;
}

.toolbar #resetBtn,
.filter-panel #resetBtn,
.page-actions .btn,
.pagination .btn,
#exportBtn.btn:not(.btn-primary) {
  background: #ffffff !important;
  border-color: var(--border-strong) !important;
  color: var(--neutral-text) !important;
}

.toolbar #resetBtn:hover,
.filter-panel #resetBtn:hover,
.page-actions .btn:hover,
.pagination .btn:hover,
#exportBtn.btn:not(.btn-primary):hover {
  background: #f9fafb !important;
  border-color: #98a2b3 !important;
  color: var(--accent) !important;
}

.toolbar #resetBtn.btn-text,
.filter-panel #resetBtn.btn-text {
  min-width: 72px !important;
  padding: 0 14px !important;
  background: #f6f8fc !important;
  border-color: var(--border-strong) !important;
  color: #475569 !important;
}

.toolbar #resetBtn.btn-text:hover,
.filter-panel #resetBtn.btn-text:hover {
  background: #ffffff !important;
  border-color: #98a2b3 !important;
  color: var(--accent) !important;
}

button:is(.btn-stop, .btn-delete, .modal-btn-confirm, .confirm-ok) {
  height: 38px !important;
  min-height: 38px !important;
  min-width: 72px !important;
  padding: 0 14px !important;
  border-radius: 8px !important;
  border: 1px solid #fecdca !important;
  background: var(--danger-bg) !important;
  color: var(--danger-text) !important;
  box-shadow: none !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  white-space: nowrap !important;
  cursor: pointer !important;
  transform: none !important;
}

button:is(.btn-stop, .btn-delete, .modal-btn-confirm, .confirm-ok):hover {
  border-color: #fda29b !important;
  background: #ffe4e8 !important;
  color: #912018 !important;
  transform: none !important;
  box-shadow: none !important;
}

button:is(
  .btn,
  .btn-primary,
  .btn-quiet,
  .btn-ghost,
  .btn-secondary,
  .btn-reset,
  .btn-cancel,
  .btn-cancel-reservation,
  .btn-extend-reservation,
  .btn-detail,
  .btn-float,
  .btn-add,
  .btn-start,
  .btn-ai,
  .btn-edit,
  .btn-save,
  .sync-btn,
  .profile-btn,
  .modal-btn,
  .app-alert-btn,
  .secondary-btn,
  .browser-login-action,
  .btn-stop,
  .btn-delete
):disabled,
button:disabled:not(.bozhi-select-trigger):not(.bozhi-select-option):not(.anchor-option):not(.window-btn):not(.sidebar-toggle):not(.profile-close):not(.image-preview-close):not(.lead-cover-button):not(.user-trigger) {
  background: #f2f4f7 !important;
  border-color: var(--border-strong) !important;
  color: #98a2b3 !important;
  box-shadow: none !important;
  cursor: not-allowed !important;
  opacity: 1 !important;
  transform: none !important;
}

@media (max-width: 760px) {
  .container {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  .panel,
  .chart-panel,
  .ai-panel,
  .review-panel,
  .live-card,
  .summary-card,
  .filter-panel {
    border-radius: 14px !important;
  }
}

/* Brand-neutral late overrides: keep auth and non-ops pages aligned with the
   monitoring/detail visual system without touching page data logic. */
.top-bar-slogan .focus,
.top-user-trigger:focus-visible,
.bozhi-select-check {
  color: var(--accent) !important;
}

.top-user-trigger:hover .top-user-avatar,
.top-user-trigger:focus-visible {
  box-shadow: 0 0 0 3px rgba(46, 58, 140, .14) !important;
}

.bozhi-select.open .bozhi-select-trigger,
.bozhi-select-trigger:focus-visible,
.template-select:focus,
.select:focus {
  border-color: var(--accent) !important;
  box-shadow: 0 0 0 3px rgba(46, 58, 140, .13) !important;
}

.anchor-option.selected,
.bozhi-select-option.selected,
.badge-info,
.badge-strong,
.pill-review,
.anchor-chip.link,
.case-tab.active,
.wizard-card.active,
.asr-progress-metric.clickable.active {
  background: var(--accent-soft) !important;
  color: var(--accent) !important;
  border-color: #c7d2e5 !important;
}

.bozhi-select-avatar,
.small-avatar {
  background: var(--accent-soft) !important;
  color: var(--accent) !important;
  border-color: #c7d2e5 !important;
}

.platform-badge,
.platform-badge.douyin {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 4px !important;
  min-height: 24px !important;
  height: 24px !important;
  padding: 0 9px !important;
  border: 1px solid #d8dee8 !important;
  border-radius: 6px !important;
  background: #fff !important;
  color: #5b6472 !important;
  font-family: inherit !important;
  font-size: 12px !important;
  line-height: 1 !important;
  font-weight: 700 !important;
  white-space: nowrap !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.85) !important;
}
