/* Unified merchant-console visual system for customer, auth and admin surfaces. */
:root {
  --mc-bg: #f5f6f8;
  --mc-panel: #ffffff;
  --mc-panel-subtle: #fafbfc;
  --mc-nav: #ffffff;
  --mc-line: #e6e8eb;
  --mc-line-strong: #d8dbe0;
  --mc-text: #20232a;
  --mc-text-2: #555b66;
  --mc-muted: #626873;
  --mc-accent: #1769e0;
  --mc-accent-hover: #0e55bf;
  --mc-accent-soft: #eaf2ff;
  --mc-blue: #1769e0;
  --mc-blue-soft: #edf4ff;
  --mc-success: #11a873;
  --mc-warning: #e79000;
  --mc-danger: #e5484d;
  --mc-radius: 10px;
  --mc-control-radius: 6px;
  --mc-shadow: 0 5px 18px rgba(31, 35, 41, 0.06);
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Microsoft YaHei UI", "PingFang SC", sans-serif;
}

html { color-scheme: light; background: var(--mc-bg); }
body { margin: 0; color: var(--mc-text); background: var(--mc-bg); }
::selection { color: #fff !important; background: var(--mc-accent) !important; }
:is(button, a, input, select, textarea):focus-visible {
  outline: 2px solid rgba(23, 105, 224, 0.52) !important;
  outline-offset: 2px !important;
}
* { scrollbar-color: #c6cad1 #f1f2f4 !important; scrollbar-width: thin; }
*::-webkit-scrollbar { width: 9px; height: 9px; }
*::-webkit-scrollbar-track { background: #f1f2f4; }
*::-webkit-scrollbar-thumb { border: 2px solid #f1f2f4 !important; border-radius: 8px; background: #c6cad1 !important; }

/* Customer application shell */
body.productApp {
  --ds-bg: var(--mc-bg);
  --ds-surface: var(--mc-panel);
  --ds-surface-2: var(--mc-panel-subtle);
  --ds-surface-3: #f3f5f7;
  --ds-line: var(--mc-line);
  --ds-line-strong: var(--mc-line-strong);
  --ds-text: var(--mc-text);
  --ds-muted: var(--mc-muted);
  --ds-accent: var(--mc-accent);
  --ds-accent-strong: var(--mc-accent-hover);
  --ds-success: var(--mc-success);
  --ds-warning: var(--mc-warning);
  --ds-danger: var(--mc-danger);
  min-width: 320px;
  color: var(--mc-text) !important;
  background: var(--mc-bg) !important;
  font-family: inherit !important;
}

.productApp .appAtmosphere,
.productApp .globalTerminalBody,
.productApp .workbenchBackdrop,
.productApp .workbenchTerminalFigure { display: none !important; }

.productApp .shell {
  grid-template-columns: 140px 180px minmax(0, 1fr) !important;
  min-height: 100vh;
  background: var(--mc-bg) !important;
}

.productApp .rail {
  position: sticky !important;
  top: 0;
  z-index: 100;
  height: 100vh !important;
  padding: 12px 8px !important;
  gap: 2px !important;
  color: var(--mc-text-2) !important;
  background: var(--mc-nav) !important;
  border: 0 !important;
  border-right: 1px solid var(--mc-line) !important;
  box-shadow: none !important;
}

.productApp .railBrand {
  min-height: 52px !important;
  padding: 0 8px 12px !important;
  gap: 8px !important;
  color: var(--mc-text) !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
}
body.productApp .rail .railBrand strong { color: var(--mc-text) !important; }

.productApp .brandMark { width: 30px !important; height: 30px !important; filter: none !important; }
.productApp .railItem {
  min-height: 40px !important;
  padding: 0 11px !important;
  border: 0 !important;
  border-radius: 6px !important;
  color: #5b616c !important;
  background: transparent !important;
  box-shadow: none !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  text-align: left;
  transition: color 160ms ease, background-color 160ms ease !important;
}

.productApp .railItem:hover { color: var(--mc-accent) !important; background: #f8f9fa !important; transform: none !important; }
.productApp .railItem.active { color: var(--mc-accent) !important; background: var(--mc-accent-soft) !important; }

.productApp .menu {
  position: sticky !important;
  top: 0;
  height: 100vh !important;
  padding: 18px 12px !important;
  color: var(--mc-text) !important;
  background: #fafbfc !important;
  border: 0 !important;
  border-right: 1px solid var(--mc-line) !important;
}

.productApp .brandBlock { padding: 0 8px 16px !important; gap: 5px !important; border-bottom: 1px solid var(--mc-line); }
.productApp .brandBlock strong { color: var(--mc-text) !important; font-size: 18px !important; font-weight: 700 !important; }
.productApp .brandBlock span,
.productApp .crumb { color: var(--mc-muted) !important; }
.productApp .subMenu { padding-top: 10px !important; gap: 2px !important; }
.productApp .menuItem {
  min-height: 39px !important;
  padding: 0 10px !important;
  border: 0 !important;
  border-radius: 6px !important;
  color: #5d636d !important;
  background: transparent !important;
  box-shadow: none !important;
  font-size: 13px !important;
  font-weight: 600 !important;
}
.productApp .menuItem::before,
.productApp .menuItem.child::before { content: none !important; display: none !important; }
.productApp .menuItem:hover { color: var(--mc-accent) !important; background: #f3f4f6 !important; }
.productApp .menuItem.active { color: var(--mc-accent) !important; background: #fff !important; box-shadow: inset 3px 0 0 var(--mc-accent) !important; }
.productApp .menuItem span { color: #fff !important; background: var(--mc-danger) !important; }

.productApp .workspace {
  min-width: 0;
  padding: 0 20px 40px !important;
  color: var(--mc-text) !important;
  background: var(--mc-bg) !important;
}

.productApp .topbar {
  position: sticky !important;
  top: 0;
  z-index: 90;
  min-height: 62px !important;
  margin: 0 -20px !important;
  padding: 8px 20px !important;
  color: var(--mc-text) !important;
  background: rgba(255, 255, 255, 0.97) !important;
  border: 0 !important;
  border-bottom: 1px solid var(--mc-line) !important;
  backdrop-filter: none !important;
  box-shadow: none !important;
}
.productApp .topbar h1 { color: var(--mc-text) !important; font-size: 20px !important; font-weight: 700 !important; letter-spacing: 0 !important; }
.productApp .topActions { gap: 8px !important; }
.productApp .globalSearch {
  width: min(280px, 28vw) !important;
  height: 38px !important;
  border: 1px solid var(--mc-line-strong) !important;
  border-radius: var(--mc-control-radius) !important;
  color: var(--mc-muted) !important;
  background: #f7f8fa !important;
  box-shadow: none !important;
}
.productApp .globalSearch input,
.productApp .globalSearch input::placeholder { color: #7d838d !important; }
.productApp .globalSearch kbd { color: #8e939c !important; background: #fff !important; border-color: var(--mc-line) !important; }
.productApp :is(.cloudSyncStatus, .userBadge, .logoutButton) {
  min-height: 38px !important;
  color: var(--mc-text-2) !important;
  background: #fff !important;
  border: 1px solid var(--mc-line) !important;
  border-radius: var(--mc-control-radius) !important;
  box-shadow: none !important;
}
.productApp .userBadge > span { color: #fff !important; background: var(--mc-accent) !important; }
.productApp .logoutButton:hover { color: var(--mc-danger) !important; background: #fff5f5 !important; border-color: #ffd3d5 !important; }
body.productApp .workspace .topbar .logoutButton {
  color: var(--mc-text-2) !important;
  background: #fff !important;
  border-color: var(--mc-line) !important;
}

.productApp .filterPanel {
  position: sticky !important;
  top: 62px !important;
  z-index: 80;
  margin: 0 -20px 16px !important;
  padding: 10px 20px !important;
  border: 0 !important;
  border-bottom: 1px solid var(--mc-line) !important;
  border-radius: 0 !important;
  background: rgba(255, 255, 255, 0.98) !important;
  backdrop-filter: none !important;
  box-shadow: none !important;
}
.productApp .filterRow { min-height: 38px !important; gap: 8px !important; }
.productApp .filterLabel { width: 48px; color: var(--mc-text-2) !important; font-weight: 600 !important; }
.productApp :is(select, input, textarea) {
  color: var(--mc-text) !important;
  background-color: #fff !important;
  border-color: var(--mc-line-strong) !important;
  border-radius: var(--mc-control-radius) !important;
  box-shadow: none !important;
}
.productApp :is(select, input, textarea):focus { border-color: var(--mc-accent) !important; box-shadow: 0 0 0 3px rgba(23, 105, 224, 0.13) !important; }
.productApp .chip,
.productApp .tag {
  min-height: 32px !important;
  color: var(--mc-text-2) !important;
  background: #fff !important;
  border: 1px solid var(--mc-line-strong) !important;
  border-radius: 17px !important;
  box-shadow: none !important;
}
.productApp .chip:hover,
.productApp .chip.active { color: var(--mc-accent) !important; background: var(--mc-accent-soft) !important; border-color: #b8d2f7 !important; }

/* Shared content surfaces */
body.productApp:not(.periodReportMode) .view.active { color: var(--mc-text) !important; animation: mcContentIn 180ms ease-out both !important; }
.productApp :is(.card, section.card, .panel, .module, .metricCard, .advisorPanel, .workbenchOverview, .workbenchPlatformPanel, .workbenchIssuePanel, .semiDownloadHero, .semiPairing, .semiDownloadForm, .semiDownloadSteps, .advisorSection) {
  color: var(--mc-text) !important;
  background: var(--mc-panel) !important;
  border: 1px solid var(--mc-line) !important;
  border-radius: var(--mc-radius) !important;
  box-shadow: none !important;
}
.productApp :is(.card h2, .card h3, .cardHead h2, .sectionTitle, .moduleTitle, .advisorSection h2, .advisorSection h3) { color: var(--mc-text) !important; letter-spacing: 0 !important; }
.productApp :is(.card p, .cardHead span, .muted, .hint, .editNotice, small) { color: var(--mc-muted) !important; }
.productApp .cardHead { border-color: var(--mc-line) !important; }
.productApp :is(.downloadButton, .uploadButton, button.primary, .primaryButton, .workbenchHeroActions button:first-child) {
  color: #fff !important;
  background: var(--mc-accent) !important;
  border: 1px solid var(--mc-accent) !important;
  border-radius: var(--mc-control-radius) !important;
  box-shadow: none !important;
}
.productApp :is(.downloadButton, .uploadButton, button.primary, .primaryButton, .workbenchHeroActions button:first-child):hover { background: var(--mc-accent-hover) !important; transform: none !important; }
.productApp :is(.miniButton, .secondaryButton, .workbenchHeroActions button:not(:first-child)) {
  color: var(--mc-text-2) !important;
  background: #fff !important;
  border: 1px solid var(--mc-line-strong) !important;
  border-radius: var(--mc-control-radius) !important;
  box-shadow: none !important;
}
.productApp :is(.miniButton, .secondaryButton, .workbenchHeroActions button:not(:first-child)):hover { color: var(--mc-accent) !important; border-color: #9fc2f3 !important; background: var(--mc-accent-soft) !important; }

body.productApp:not(.periodReportMode) .view.active .kpis {
  overflow: hidden;
  background: #fff !important;
  border: 1px solid var(--mc-line) !important;
  border-radius: var(--mc-radius) !important;
  box-shadow: none !important;
}
body.productApp:not(.periodReportMode) .view.active .kpi {
  min-height: 116px !important;
  color: var(--mc-text) !important;
  background: #fff !important;
  border-color: var(--mc-line) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
body.productApp:not(.periodReportMode) .view.active .kpi span { color: var(--mc-text-2) !important; }
body.productApp:not(.periodReportMode) .view.active .kpi strong { color: var(--mc-text) !important; font-variant-numeric: tabular-nums; }
body.productApp:not(.periodReportMode) .view.active .kpi em { color: var(--mc-muted) !important; }
body.productApp:not(.periodReportMode) .view.active .kpi.clickable:hover,
body.productApp:not(.periodReportMode) .view.active .kpi.clickable.active { background: var(--mc-accent-soft) !important; box-shadow: inset 0 -2px 0 var(--mc-accent) !important; transform: none !important; }

.productApp .tableWrap { overflow: auto; border: 1px solid var(--mc-line) !important; border-radius: 8px !important; background: #fff !important; }
.productApp table { color: var(--mc-text) !important; background: #fff !important; border-collapse: collapse !important; }
.productApp :is(th, td) { border-color: var(--mc-line) !important; }
.productApp th { color: #686e78 !important; background: #f7f8fa !important; font-weight: 600 !important; }
.productApp td { color: #343942 !important; background: #fff !important; font-variant-numeric: tabular-nums; }
.productApp tbody tr:hover td { background: #f4f8ff !important; }

/* Beat the legacy high-specificity dark-theme pass without changing markup. */
body.productApp .workspace::after { display: none !important; }
body.productApp .workspace :is(
  .filterPanel, .notice, .card, .workbenchHero, .onboardingHero,
  .onboardingStep, .guideCard, .guideFooter, .moduleHeader, .platformCard,
  .businessStatsCard, .businessStat, .trendBox, .todoItem, .leaderboardItem,
  .workbenchGroup, .workbenchCard, .standardHero, .standardGrid > .card,
  .dataEntryPanel, .costCard, .costSummary, .uploadPanel, .roiSummary,
  .diagnosisTableWrap, .advisorConclusionPanel, .advisorMetric,
  .advisorDimension, .advisorIssue, .advisorPanel, .advisorField,
  .advisorPlan, .advisorReview, .advisorLibrary, .advisorTargetRows p,
  .advisorDimensionMetrics p, .advisorMiniList p, .issueFilterList button,
  .issueStoreList article, .userAccountCard, .accountInfoGrid > *,
  .accountStatGrid > *, .tableWrap
) {
  color: var(--mc-text) !important;
  background: #fff !important;
  border-color: var(--mc-line) !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
}
body.productApp .workspace :is(
  .cardHead, .guideCardHead, .workbenchGroupHead, .advisorSectionHead,
  thead, .standardRow, .advisorDraftGrid, .systemAdvice, .downloadGuide,
  .metricGrid > *, .leaderboardMetrics, .stepTips span, .guideFields span,
  .tag, .opTag, .platformBadge, .advisorDelta, .badge, .emptyState
) {
  color: var(--mc-text-2) !important;
  background: #f7f8fa !important;
  border-color: var(--mc-line) !important;
}
body.productApp .workspace tbody tr { color: var(--mc-text) !important; background: #fff !important; border-color: var(--mc-line) !important; }
body.productApp .workspace :is(h1, h2, h3, h4, strong, th, td) { color: var(--mc-text) !important; }
body.productApp .workspace :is(p, span, label, .muted, .emptyState) { color: var(--mc-muted) !important; }
body.productApp .workspace :is(
  select, input:not([type="file"]), textarea, .globalSearch, .costSearch,
  .dateInput, .storeSelect, .advisorField textarea, .advisorNoteCard textarea,
  .advisorPlan textarea, .advisorReview textarea, .advisorLibrary textarea,
  .aiStoreNote, #advisorLibraryInput, .costInput, .promotionInput
) {
  color: var(--mc-text) !important;
  caret-color: var(--mc-text) !important;
  background: #fff !important;
  background-color: #fff !important;
  border-color: var(--mc-line-strong) !important;
  box-shadow: none !important;
}
body.productApp .workspace :is(
  select:focus, input:not([type="file"]):focus, textarea:focus,
  .costInput:focus, .promotionInput:focus
) {
  color: var(--mc-text) !important;
  background: #fff !important;
  border-color: var(--mc-accent) !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(23,105,224,.13) !important;
}
body.productApp .workspace :is(input::placeholder, textarea::placeholder) { color: #6f7580 !important; }
body.productApp .workspace option { color: var(--mc-text) !important; background: #fff !important; }
body.productApp .workspace :is(.chip.active, .miniButton.primary, .downloadButton.primary, .kpi.clickable.active) {
  color: var(--mc-accent) !important;
  background: var(--mc-accent-soft) !important;
  border-color: #b8d2f7 !important;
  box-shadow: none !important;
}
body.productApp .workspace .filterPanel .chip:not(.active) {
  color: var(--mc-text-2) !important;
  background: #fff !important;
  border-color: var(--mc-line-strong) !important;
}
body.productApp .workspace .filterPanel .chip.active {
  color: var(--mc-accent) !important;
  background: var(--mc-accent-soft) !important;
  border-color: #b8d2f7 !important;
}
body.productApp .workspace .workbenchOverviewHead p,
body.productApp .workspace .workbenchStatusRail :is(span, small),
body.productApp .workspace .workbenchKpi :is(span, small),
body.productApp .workspace .workbenchPlatform :is(span, small),
body.productApp .workspace .workbenchIssue :is(span, small) { color: var(--mc-muted) !important; }
body.productApp .workspace .workbenchKpi strong,
body.productApp .workspace .workbenchPlatform strong,
body.productApp .workspace .workbenchPlatformValue,
body.productApp .workspace .workbenchIssue b { color: var(--mc-text) !important; }
body.productApp .workspace .workbenchHeroActions button:first-child {
  color: #fff !important;
  background: var(--mc-accent) !important;
  border-color: var(--mc-accent) !important;
}
body.productApp:not(.periodReportMode) .workspace .workbenchHeroActions button:first-child {
  color: #fff !important;
  background: var(--mc-accent) !important;
  border: 1px solid var(--mc-accent) !important;
}
body.productApp .workspace .workbenchHeroActions button:not(:first-child) {
  color: var(--mc-text-2) !important;
  background: #fff !important;
  border-color: var(--mc-line-strong) !important;
}
body.productApp:not(.periodReportMode) .workspace .workbenchHeroActions button:not(:first-child) {
  color: var(--mc-text-2) !important;
  background: #fff !important;
  border: 1px solid var(--mc-line-strong) !important;
}

/* Exact legacy selector matches for report and detail pages. */
body.productApp:not(.periodReportMode) .workspace :is(
  h1, h2, h3, h4, strong, th, .filterLabel, .cardHead h2,
  .guideCard h2, .onboardingStep h2, .moduleHeader h2,
  .advisorSectionHead h2
) { color: var(--mc-text) !important; }
body.productApp:not(.periodReportMode) .workspace :is(
  p, li, td, label, small, em, .cardHead span, .moduleHeader p,
  .guideSteps, .guideImportant, .advisorSectionHead p
) { color: var(--mc-muted) !important; }
body.productApp:not(.periodReportMode) .workspace :is(
  .platformCard > .row, .platformCard .metric, .metricGrid > *,
  .diagnosisSummary > *, .businessStatsCard > *, .costSummary > *
) {
  color: var(--mc-text) !important;
  background: #fff !important;
  border-color: var(--mc-line) !important;
  box-shadow: none !important;
}
body.productApp:not(.periodReportMode) .workspace .platformCard > .row {
  background: #fafbfc !important;
  border-bottom-color: var(--mc-line) !important;
}
body.productApp:not(.periodReportMode) .workspace :is(
  .platformCard > .row strong, .platformCard .metric strong,
  .metricGrid strong, .diagnosisSummary strong
) { color: var(--mc-text) !important; }
body.productApp:not(.periodReportMode) .workspace :is(
  .platformCard > .row span, .platformCard .metric span,
  .metricGrid span, .diagnosisSummary span
) { color: var(--mc-muted) !important; }
body.productApp:not(.periodReportMode) .workspace .stepNo {
  color: #fff !important;
  background: var(--mc-accent) !important;
  background-image: none !important;
  border-color: var(--mc-accent) !important;
  box-shadow: none !important;
}
body.productApp:not(.periodReportMode) .workspace .stepTips > span {
  color: var(--mc-text-2) !important;
  background: #f7f8fa !important;
  border-color: var(--mc-line) !important;
}
body.productApp:not(.periodReportMode) .workspace .stepActions .downloadButton,
body.productApp:not(.periodReportMode) .workspace .stepActions .downloadButton.primary {
  color: #fff !important;
  background: var(--mc-accent) !important;
  background-image: none !important;
  border: 1px solid var(--mc-accent) !important;
  box-shadow: none !important;
}
body.productApp:not(.periodReportMode) .workspace .stepActions .miniButton {
  color: var(--mc-text-2) !important;
  background: #fff !important;
  background-image: none !important;
  border-color: var(--mc-line-strong) !important;
  box-shadow: none !important;
}
body.productApp:not(.periodReportMode) .workspace .advisorScope {
  color: var(--mc-accent) !important;
  background: var(--mc-accent-soft) !important;
  border-color: #b8d2f7 !important;
}
body.productApp:not(.periodReportMode) .workspace .advisorEyebrow {
  color: var(--mc-accent) !important;
}
body.productApp.periodReportMode .workspace .periodModeTabs button.active {
  color: #fff !important;
  background: var(--mc-accent) !important;
  background-image: none !important;
  border-color: var(--mc-accent) !important;
  box-shadow: none !important;
}

/* Workbench */
.workbenchOps .workbenchOverview { overflow: hidden; }
.workbenchOverviewHead { padding: 22px 24px !important; background: #fff !important; border-bottom: 1px solid var(--mc-line) !important; }
.workbenchContext,
.semiDownloadContext,
.guideContext { color: var(--mc-muted) !important; font-size: 13px !important; }
body.productApp:not(.periodReportMode) .workbenchOps .workbenchOverview h2 { color: var(--mc-text) !important; font-size: 28px !important; line-height: 1.24 !important; letter-spacing: -0.02em !important; }
.workbenchOverviewHead p { color: var(--mc-muted) !important; }
.workbenchStatusRail { min-height: 42px !important; color: var(--mc-text-2) !important; background: #fafbfc !important; border-color: var(--mc-line) !important; }
.workbenchStatusRail i { background: var(--mc-success) !important; box-shadow: none !important; }
.workbenchKpiGrid { background: #fff !important; }
.workbenchKpi { border-color: var(--mc-line) !important; }
.workbenchKpi span,
.workbenchKpi small { color: var(--mc-muted) !important; }
.workbenchKpi strong { color: var(--mc-text) !important; font-variant-numeric: tabular-nums; }
.workbenchKpi.isPrimary strong { color: var(--mc-accent) !important; }
.workbenchPlatformPanel,
.workbenchIssuePanel { padding: 18px !important; }
.workbenchPlatform,
.workbenchIssue,
.workbenchClear,
.workbenchGuide,
body.productApp:not(.periodReportMode) .advisorMetric {
  color: var(--mc-text) !important;
  background: #fff !important;
  border: 1px solid var(--mc-line) !important;
  border-radius: 8px !important;
  box-shadow: none !important;
}
.workbenchPlatform:hover { border-color: #9fc2f3 !important; background: #f4f8ff !important; transform: none !important; }
.workbenchPlatformHead span,
.workbenchPlatformMeta span,
.workbenchIssue span,
.workbenchIssue small,
.workbenchGuide summary small { color: var(--mc-muted) !important; }
.workbenchPlatformValue,
.workbenchPlatformHead strong,
.workbenchIssue b,
.workbenchGuide summary b { color: var(--mc-text) !important; }
.workbenchIssuePanel > header > b { color: var(--mc-danger) !important; background: #fff1f1 !important; }
.workbenchClear span { color: var(--mc-success) !important; background: #effaf6 !important; }
.workbenchGuide > summary { color: var(--mc-text) !important; background: #fafbfc !important; }

/* Collection and advisor */
body.productApp:not(.periodReportMode) .semiDownloadHero { padding: 22px 24px !important; }
body.productApp:not(.periodReportMode) .semiDownloadHero .welcomeEyebrow { color: var(--mc-accent) !important; background: var(--mc-accent-soft) !important; border-color: #b8d2f7 !important; }
body.productApp:not(.periodReportMode) .semiDownloadHero h2 { color: var(--mc-text) !important; font-size: 25px !important; }
body.productApp:not(.periodReportMode) .semiDownloadHero p { color: var(--mc-text-2) !important; }
body.productApp:not(.periodReportMode) .semiDownloadNotice,
.productApp :is(.uploadStatus, .editNotice, .notice, .status) {
  color: #76501d !important;
  background: #fff9eb !important;
  border: 1px solid #f4dfb4 !important;
  border-radius: 7px !important;
}
body.productApp:not(.periodReportMode) .advisorMetric { min-height: 130px !important; padding: 16px !important; }
body.productApp:not(.periodReportMode) .advisorMetric strong { color: var(--mc-text) !important; }
body.productApp:not(.periodReportMode) .advisorMetric p { color: var(--mc-muted) !important; }

/* Robot assistant becomes a compact utility, not a dark floating obstruction. */
.productApp :is(.robotBubble, .robotPanel, .robotProgressSummary, .notificationPanel) {
  color: var(--mc-text) !important;
  background: #fff !important;
  border: 1px solid var(--mc-line) !important;
  border-radius: 10px !important;
  box-shadow: var(--mc-shadow) !important;
}
.productApp :is(.robotBubble, .robotPanel, .robotProgressSummary, .notificationPanel) :is(strong, h3) { color: var(--mc-text) !important; }
.productApp :is(.robotBubble, .robotPanel, .robotProgressSummary, .notificationPanel) :is(p, span, small, .robotBubbleText) { color: var(--mc-text-2) !important; }
.productApp :is(.robotBubbleActions, .robotPanelHead, .robotNoticeList) button,
.productApp .robotNoticeButton { color: var(--mc-accent) !important; background: #fff !important; border-color: #b8d2f7 !important; }
.productApp .robotAssistant img { filter: saturate(0.9) drop-shadow(0 8px 14px rgba(31,35,41,.12)) !important; }
.productApp .robotAssistant img { width: 112px !important; height: auto !important; }
.productApp .robotAssistant [hidden] { display: none !important; }
.productApp .robotBubble,
.productApp .robotHead,
.productApp .robotTools { display: none !important; }
.productApp .robotAssistant {
  left: 36px !important;
  top: auto !important;
  right: auto !important;
  bottom: 18px !important;
  width: auto !important;
}
.productApp .robotNoticeButton {
  position: static !important;
  min-width: 66px !important;
  min-height: 36px !important;
  padding: 0 12px !important;
  color: var(--mc-accent) !important;
  background: #fff !important;
  border: 1px solid #b8d2f7 !important;
  border-radius: 18px !important;
  box-shadow: var(--mc-shadow) !important;
}
.productApp .robotRestore {
  color: var(--mc-accent) !important;
  background: #fff !important;
  border: 1px solid #b8d2f7 !important;
  border-radius: 18px !important;
  box-shadow: var(--mc-shadow) !important;
}

/* Alignment pass: one grid, one control height, no phantom icon rows. */
.productApp .shell {
  grid-template-columns: 156px 184px minmax(0, 1fr) !important;
}
.productApp .railBrand {
  display: flex !important;
  align-items: center !important;
}
.productApp .railBrand strong {
  white-space: nowrap !important;
  line-height: 1.2 !important;
}
.productApp :is(.railItem, .menuItem) {
  display: flex !important;
  align-items: center !important;
  line-height: 1.25 !important;
  white-space: nowrap !important;
}
body.productApp .workspace :is(.storeSelect, .storeQuickSearch, .dateInput) {
  height: 42px !important;
  min-height: 42px !important;
  padding-block: 0 !important;
}
body.productApp .workspace .filterRow {
  min-height: 42px !important;
  align-items: center !important;
}
body.productApp .workspace .filterLabel {
  display: flex !important;
  align-items: center !important;
  height: 42px !important;
  line-height: 1 !important;
}
body.productApp:not(.periodReportMode) .view.active .kpi {
  display: grid !important;
  grid-template-rows: auto minmax(34px, auto) auto !important;
  align-content: center !important;
  row-gap: 8px !important;
  padding: 20px !important;
}
body.productApp:not(.periodReportMode) .view.active .kpi .kpiIcon {
  display: none !important;
}
body.productApp:not(.periodReportMode) .view.active .kpi > :is(span, strong, em) {
  margin: 0 !important;
  align-self: center !important;
  line-height: 1.25 !important;
}
body.productApp .workspace .platformCard > .row {
  display: flex !important;
  align-items: center !important;
  min-height: 42px !important;
  padding: 0 12px !important;
}
body.productApp .workspace .platformCard .metric {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  min-height: 84px !important;
  padding: 14px !important;
}
body.productApp .workspace .platformCard .metric :is(span, strong) {
  margin: 0 !important;
  line-height: 1.3 !important;
}
body.productApp .workspace .platformCard .metric span { margin-bottom: 6px !important; }
body.productApp .workspace :is(.moduleHeader, .cardHead) {
  align-items: center !important;
}
body.productApp .workspace :is(.moduleHeader h2, .cardHead h2, .sectionTitle) {
  margin: 0 !important;
  line-height: 1.25 !important;
}

/* Keep the character in the familiar bottom-right assistant position. */
.productApp .robotAssistant {
  left: auto !important;
  right: 22px !important;
  bottom: 18px !important;
  width: 116px !important;
}
.productApp .robotAssistant .robotHead {
  display: block !important;
  width: 104px !important;
  height: 88px !important;
  margin: 0 auto 14px !important;
}
.productApp .robotAssistant .robotNoticeButton {
  display: flex !important;
  justify-content: center !important;
  margin: 0 auto !important;
}

/* Header utilities share one box model and one optical baseline. */
.productApp .topActions {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
}
.productApp .globalSearch,
.productApp :is(.cloudSyncStatus, .userBadge, .logoutButton) {
  height: 40px !important;
  min-height: 40px !important;
  box-sizing: border-box !important;
  margin: 0 !important;
  line-height: 1 !important;
}
.productApp .globalSearch {
  display: flex !important;
  align-items: center !important;
  padding: 0 10px !important;
}
.productApp .globalSearch > span,
.productApp .globalSearch kbd {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 0 0 auto !important;
}
.productApp .globalSearch input {
  height: 38px !important;
  min-height: 38px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  line-height: normal !important;
}
.productApp .globalSearch kbd { height: 20px !important; padding: 0 7px !important; }
.productApp :is(.cloudSyncStatus, .userBadge, .logoutButton) {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 11px !important;
}
.productApp .cloudSyncStatus span,
.productApp .userBadge strong,
.productApp .logoutButton { line-height: 1 !important; }
.productApp .userBadge { gap: 8px !important; }
.productApp .userBadge > span {
  width: 30px !important;
  height: 30px !important;
  flex: 0 0 30px !important;
}

/* One blue family carries brand and interaction; warm hues stay semantic only. */
.productApp .railItem.active,
.productApp .menuItem.active,
.productApp .chip.active,
.productApp .tab.active,
.productApp .segmentButton.active {
  color: var(--mc-accent) !important;
  background: var(--mc-accent-soft) !important;
  border-color: #b8d2f7 !important;
}

/* Authentication */
.authPage {
  --portal-bg: var(--mc-bg);
  --portal-deep: #fff;
  --portal-surface: #fff;
  --portal-surface-2: #fafbfc;
  --portal-line: var(--mc-line);
  --portal-line-strong: var(--mc-line-strong);
  --portal-text: var(--mc-text);
  --portal-muted: var(--mc-muted);
  --portal-accent: var(--mc-accent);
  color: var(--mc-text) !important;
  background: var(--mc-bg) !important;
  font-family: inherit !important;
}
.authPage .wrap {
  position: relative;
  min-height: 100vh;
  padding: 32px !important;
  background: #f4f5f7 !important;
}
.authPage .wrap::before {
  background: linear-gradient(135deg, rgba(23,105,224,.08), transparent 45%) !important;
}
.authPage :is(.networkCanvas, .cloudDrift, .wave) { display: none !important; }
.authPage .shell {
  width: min(1080px, 100%) !important;
  min-height: 620px !important;
  grid-template-columns: minmax(0, 1.08fr) minmax(380px, .78fr) !important;
  overflow: hidden;
  border: 1px solid var(--mc-line) !important;
  border-radius: 14px !important;
  background: #fff !important;
  box-shadow: 0 18px 56px rgba(31,35,41,.1) !important;
}
.authPage .hero {
  min-height: 620px !important;
  padding: 44px !important;
  color: var(--mc-text) !important;
  background: linear-gradient(145deg, #f4f8ff, #fff 64%) !important;
  border: 0 !important;
  border-right: 1px solid var(--mc-line) !important;
}
.authPage .hero::before,
.authPage .hero::after { display: none !important; }
.authPage .brandMark { width: 48px !important; height: 48px !important; filter: none !important; }
.authPage .brandCopy strong { color: var(--mc-text) !important; font-size: 24px !important; letter-spacing: 0 !important; }
.authPage .brandCopy span { color: var(--mc-accent) !important; letter-spacing: .08em !important; }
.authPage .heroText { margin-top: 82px !important; animation: none !important; }
.authPage .eyebrow { color: var(--mc-accent) !important; background: transparent !important; border: 0 !important; letter-spacing: 0 !important; }
.authPage h1 { margin: 14px 0 !important; color: var(--mc-text) !important; font-size: 42px !important; line-height: 1.18 !important; letter-spacing: -0.025em !important; }
.authPage .heroText > p { color: var(--mc-text-2) !important; line-height: 1.7 !important; text-shadow: none !important; }
.authPage .valueList { gap: 0 !important; animation: none !important; }
.authPage .valueItem {
  min-height: 106px !important;
  padding: 14px !important;
  color: var(--mc-text) !important;
  background: transparent !important;
  border: 0 !important;
  border-right: 1px solid var(--mc-line) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
.authPage .valueItem:last-child { border-right: 0 !important; }
.authPage .valueItem b { color: #fff !important; background: var(--mc-accent) !important; border-radius: 6px !important; }
.authPage .valueItem strong { color: var(--mc-text) !important; }
.authPage .valueItem span { color: var(--mc-muted) !important; }
.authPage .card {
  padding: 48px 42px !important;
  color: var(--mc-text) !important;
  background: #fff !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  animation: none !important;
}
.authPage .cardHead h2,
.authPage h1 { color: var(--mc-text) !important; }
.authPage .cardHead span,
.authPage .sub,
.authPage .loginHint,
.authPage .hint { color: var(--mc-muted) !important; }
.authPage label { color: var(--mc-text-2) !important; }
.authPage input {
  height: 46px !important;
  color: var(--mc-text) !important;
  background: #fff !important;
  border: 1px solid var(--mc-line-strong) !important;
  border-radius: var(--mc-control-radius) !important;
}
.authPage input:focus { border-color: var(--mc-accent) !important; box-shadow: 0 0 0 3px rgba(23,105,224,.13) !important; }
.authPage :is(.submit, #loginButton) {
  height: 46px !important;
  color: #fff !important;
  background: var(--mc-accent) !important;
  border-radius: var(--mc-control-radius) !important;
  box-shadow: none !important;
}
.authPage :is(.submit, #loginButton):hover { background: var(--mc-accent-hover) !important; transform: none !important; }
.authPage .status { color: var(--mc-text-2) !important; background: #f7f8fa !important; border: 1px solid var(--mc-line) !important; border-radius: 7px !important; }
.authPage .status.ok { color: #087f5b !important; background: #edfbf6 !important; border-color: #c5efdf !important; }
.authPage .status.err { color: #c13238 !important; background: #fff1f1 !important; border-color: #ffd2d4 !important; }
.authPage a { color: var(--mc-accent) !important; }
.authPage.authPageAdmin .wrap { display: grid !important; place-items: center !important; }
.authPage.authPageAdmin .card { width: min(440px, 100%) !important; padding: 38px !important; border: 1px solid var(--mc-line) !important; border-radius: 12px !important; box-shadow: var(--mc-shadow) !important; }
.authPage.authPageAdmin .brand { border-color: var(--mc-line) !important; }

/* Authentication keeps the product light, with a data-network atmosphere. */
.authPage .wrap {
  isolation: isolate !important;
  overflow: hidden !important;
  background:
    radial-gradient(circle at 16% 18%, rgba(39, 132, 255, .22), transparent 30%),
    radial-gradient(circle at 82% 76%, rgba(26, 211, 202, .14), transparent 28%),
    linear-gradient(135deg, #eaf2fc 0%, #f7f9fc 48%, #eaf4fb 100%) !important;
}
.authPage .networkCanvas {
  position: fixed !important;
  inset: 0 !important;
  z-index: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  opacity: .58 !important;
  pointer-events: none !important;
}
.authPage .cloudDrift {
  position: fixed !important;
  inset: -8% !important;
  z-index: 0 !important;
  display: block !important;
  width: 116% !important;
  height: 116% !important;
  opacity: .1 !important;
  pointer-events: none !important;
  mix-blend-mode: multiply !important;
}
.authPage .shell,
.authPage.authPageAdmin .card {
  position: relative !important;
  z-index: 2 !important;
}
.authPage.authPageUser .hero {
  color: #fff !important;
  background:
    radial-gradient(circle at 18% 20%, rgba(83, 190, 255, .24), transparent 28%),
    linear-gradient(145deg, #0a2f61 0%, #0b4f91 58%, #0a6f9c 100%) !important;
  border-right-color: rgba(9, 42, 82, .18) !important;
}
.authPage.authPageUser .brandCopy strong,
.authPage.authPageUser h1,
.authPage.authPageUser .valueItem strong { color: #fff !important; }
.authPage.authPageUser .brandCopy span,
.authPage.authPageUser .heroContext { color: #89d7ff !important; }
.authPage.authPageUser .heroText > p:not(.heroContext),
.authPage.authPageUser .valueItem span { color: #ceddee !important; }
.authPage.authPageUser .valueItem { border-right-color: rgba(208, 230, 251, .2) !important; }
.authPage.authPageUser .brandMark { filter: brightness(0) invert(1) !important; }
.authPage.authPageUser .heroText,
.authPage.authPageUser .valueList { position: relative !important; z-index: 2 !important; }
.authPage.authPageUser .valueList {
  inset: auto !important;
  top: 0 !important;
  right: auto !important;
  bottom: auto !important;
  left: 0 !important;
  width: 100% !important;
  margin-top: 30px !important;
}

/* Administrator console */
.adminPage {
  --portal-bg: var(--mc-bg);
  --portal-deep: #fff;
  --portal-surface: #fff;
  --portal-surface-2: #fafbfc;
  --portal-line: var(--mc-line);
  --portal-line-strong: var(--mc-line-strong);
  --portal-text: var(--mc-text);
  --portal-muted: var(--mc-muted);
  --portal-accent: var(--mc-accent);
  color: var(--mc-text) !important;
  background: var(--mc-bg) !important;
  font-family: inherit !important;
}
.adminPage .adminShell { padding-left: 176px !important; background: var(--mc-bg) !important; }
.adminPage .adminRail {
  width: 176px !important;
  padding: 14px 10px !important;
  color: var(--mc-text-2) !important;
  background: #fff !important;
  border: 0 !important;
  border-right: 1px solid var(--mc-line) !important;
  box-shadow: none !important;
}
.adminPage .adminRailBrand { min-height: 54px; padding: 0 8px 14px !important; color: var(--mc-text) !important; }
.adminPage .adminRailBrand img { width: 30px !important; height: 30px !important; filter: none !important; }
.adminPage .adminRailNav { gap: 2px !important; padding: 0 !important; }
.adminPage .adminRailNav a {
  min-height: 40px !important;
  padding: 0 11px !important;
  color: #5b616c !important;
  background: transparent !important;
  border-radius: 6px !important;
  box-shadow: none !important;
  font-size: 13px !important;
  font-weight: 600 !important;
}
.adminPage .adminRailNav a:hover,
.adminPage .adminRailNav a:focus { color: var(--mc-accent) !important; background: #f7f8fa !important; }
.adminPage .adminRailNav a.active { color: var(--mc-accent) !important; background: var(--mc-accent-soft) !important; }
.adminPage .adminRailFoot { color: var(--mc-muted) !important; }
.adminPage header {
  min-height: 64px !important;
  padding: 10px 24px !important;
  color: var(--mc-text) !important;
  background: rgba(255,255,255,.97) !important;
  border: 0 !important;
  border-bottom: 1px solid var(--mc-line) !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
}
.adminPage .adminHeaderBrand img { width: 38px !important; height: 38px !important; filter: none !important; }
.adminPage h1,
.adminPage h2 { color: var(--mc-text) !important; letter-spacing: 0 !important; }
.adminPage h1 { font-size: 20px !important; }
.adminPage main { max-width: 1540px !important; padding: 18px 20px 36px !important; gap: 14px !important; }
.adminPage section {
  padding: 18px 20px !important;
  color: var(--mc-text) !important;
  background: #fff !important;
  border: 1px solid var(--mc-line) !important;
  border-radius: var(--mc-radius) !important;
  box-shadow: none !important;
}
.adminPage section h2::before { display: none !important; }
.adminPage label { color: var(--mc-text-2) !important; }
.adminPage :is(input, select, textarea) {
  color: var(--mc-text) !important;
  background: #fff !important;
  border: 1px solid var(--mc-line-strong) !important;
  border-radius: var(--mc-control-radius) !important;
  box-shadow: none !important;
}
.adminPage :is(input, select, textarea):focus { border-color: var(--mc-accent) !important; box-shadow: 0 0 0 3px rgba(23,105,224,.13) !important; }
.adminPage button {
  color: #fff !important;
  background: var(--mc-accent) !important;
  border: 1px solid var(--mc-accent) !important;
  border-radius: var(--mc-control-radius) !important;
  box-shadow: none !important;
}
.adminPage button:hover { background: var(--mc-accent-hover) !important; }
.adminPage button.secondary { color: var(--mc-text-2) !important; background: #fff !important; border-color: var(--mc-line-strong) !important; }
.adminPage button.secondary:hover { color: var(--mc-accent) !important; background: var(--mc-accent-soft) !important; border-color: #9fc2f3 !important; }
.adminPage button.danger { color: #fff !important; background: var(--mc-danger) !important; border-color: var(--mc-danger) !important; }
.adminPage a { color: var(--mc-accent) !important; }
.adminPage .muted { color: var(--mc-muted) !important; }
.adminPage .status { color: var(--mc-text-2) !important; background: #f7f8fa !important; border: 1px solid var(--mc-line) !important; border-radius: 7px !important; }
.adminPage .item,
.adminPage .backupCard {
  color: var(--mc-text) !important;
  background: #fff !important;
  border: 1px solid var(--mc-line) !important;
  border-radius: 8px !important;
  box-shadow: none !important;
}
.adminPage .item:hover { border-color: #9fc2f3 !important; background: #f4f8ff !important; transform: none !important; }
.adminPage .item.active { color: var(--mc-text) !important; border-color: var(--mc-accent) !important; background: var(--mc-accent-soft) !important; }
.adminPage .permission-table th,
.adminPage .permission-table td { border-color: var(--mc-line) !important; }
.adminPage .permission-table th { color: #686e78 !important; background: #f7f8fa !important; }
.adminPage .permission-table td { color: #343942 !important; background: #fff !important; }
.adminPage .badge,
.adminPage .actionBadge { color: #1f66d1 !important; background: var(--mc-blue-soft) !important; }
.adminPage .badge.off { color: #c13238 !important; background: #fff1f1 !important; }
.adminPage .auditItem { border-left: 1px solid var(--mc-line) !important; }
.adminPage .auditItem.dangerAction { border-color: #ffccd0 !important; background: #fff7f7 !important; }
.adminPage .backupCardValue,
.adminPage .auditDetail { color: var(--mc-text) !important; }

/* Complete light-surface normalization. Keep every feature page on the same
   operational palette even when older feature selectors are more specific. */
body.productApp:not(.periodReportMode) .workspace .view.active :is(
  .card, section.card, .moduleHeader, .businessStatsCard, .businessStat,
  .trendBox, .platformCard, .metric, .metricStrong, .metricGrid > *,
  .leaderboardItem, .leaderboardMetrics, .leaderboardMetrics > *,
  .issueFilterList, .issueStoreList, .issueFilterList button,
  .issueStoreList article, .metricImpactChart, .metricImpactChart article,
  .metricFunnelCompare, .metricFunnelCompare article, .funnelStep,
  .advisorHero, .advisorSection, .advisorMetric, .advisorDimension,
  .advisorTargetRows p, .advisorDimensionMetrics p, .advisorCompare,
  .advisorCompare article, .advisorConclusion, .advisorConclusionPanel,
  .advisorIssue, .advisorIssueHead, .advisorActions, .advisorPlan,
  .advisorReview, .advisorLibrary, .advisorLibraryForm, .advisorDraftGrid,
  .advisorNoteCard, .advisorMiniList p, .systemAdvice,
  .analysisReportHero > div, .analysisProblemCard, .analysisProblemHead,
  .analysisProblemBody > div, .analysisProblemMeta,
  .diagnosisSummary > *, .diagnosisTableWrap,
  .roiSummary, .roiSummaryGrid article, .roiRules, .roiTableWrap,
  .productAnalysisGrid > section, .tableWrap, .dataEntryPanel,
  .dataEntryHint, .costCard, .costSummary, .uploadPanel,
  .semiDownloadHero, .semiPairing, .semiDownloadForm, .semiDownloadSteps,
  .semiDownloadPlatformCard, .semiJob, .semiStage, .semiFileNames,
  .standardHero, .standardGrid > .card, .userAccountCard,
  .accountInfoGrid > *, .accountStatGrid > *
) {
  color: var(--mc-text) !important;
  background: #fff !important;
  background-color: #fff !important;
  background-image: none !important;
  border-color: var(--mc-line) !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
}

body.productApp:not(.periodReportMode) .workspace .view.active :is(
  .moduleHeader, .cardHead, .guideCardHead, .workbenchGroupHead,
  .advisorSectionHead, .advisorIssueHead, .platformCard > .row,
  .semiDownloadSteps > header
) {
  color: var(--mc-text) !important;
  background: #fafbfc !important;
  border-color: var(--mc-line) !important;
}

body.productApp:not(.periodReportMode) .workspace .view.active :is(
  .metricGrid > *, .businessStat, .leaderboardMetrics > *,
  .metricImpactChart article, .metricFunnelCompare article,
  .funnelStep, .advisorTargetRows p, .advisorDimensionMetrics p,
  .advisorCompare article, .roiSummaryGrid article,
  .diagnosisSummary > *, .accountInfoGrid > *, .accountStatGrid > *
) {
  background: #fafbfc !important;
  border: 1px solid var(--mc-line) !important;
  border-radius: 8px !important;
}

body.productApp:not(.periodReportMode) .workspace .view.active .analysisReportHero > div {
  background: #fafbfc !important;
  border: 1px solid var(--mc-line) !important;
  border-radius: 8px !important;
}
body.productApp:not(.periodReportMode) .workspace .view.active .analysisProblemHead {
  background: #f7f8fa !important;
  border-bottom: 1px solid var(--mc-line) !important;
}
body.productApp:not(.periodReportMode) .workspace .view.active .analysisProblemBody .solution {
  background: #f4f8ff !important;
}
body.productApp:not(.periodReportMode) .workspace .view.active :is(
  .analysisReportHero span, .analysisReportHero small,
  .analysisProblemHead small, .analysisProblemBody b,
  .analysisProblemBody p, .analysisProblemMeta span
) { color: var(--mc-muted) !important; }
body.productApp:not(.periodReportMode) .workspace .view.active :is(
  .analysisReportHero strong, .analysisProblemHead h3
) { color: var(--mc-text) !important; }

body.productApp:not(.periodReportMode) .workspace .view.active :is(h1, h2, h3, h4, strong, b, .metricStrong) {
  color: var(--mc-text) !important;
}
body.productApp:not(.periodReportMode) .workspace .view.active .emptyState,
body.productApp:not(.periodReportMode) .workspace .view.active .emptyState * {
  color: var(--mc-muted) !important;
  background: transparent !important;
  background-color: transparent !important;
  border-color: transparent !important;
  text-shadow: none !important;
}
body.productApp:not(.periodReportMode) .workspace .view.active :is(
  p, li, small, em, label, .muted, .hint, .cardHead span,
  .moduleHeader p, .advisorSectionHead p, .semiJob div span,
  .semiJob p, .semiStage span
) { color: var(--mc-muted) !important; }

body.productApp:not(.periodReportMode) .workspace .view.active :is(table, thead, thead tr, tbody, tbody tr, th, td) {
  color: var(--mc-text) !important;
  border-color: var(--mc-line) !important;
  box-shadow: none !important;
}
body.productApp:not(.periodReportMode) .workspace .view.active :is(thead, thead tr, thead th) {
  color: #555b66 !important;
  background: #f3f5f7 !important;
  background-color: #f3f5f7 !important;
  background-image: none !important;
}
body.productApp:not(.periodReportMode) .workspace .view.active :is(tbody, tbody tr, tbody td, td.emptyState) {
  color: #343942 !important;
  background: #fff !important;
  background-color: #fff !important;
  background-image: none !important;
}
body.productApp:not(.periodReportMode) .workspace .view.active tbody tr:hover td {
  color: var(--mc-text) !important;
  background: #f4f8ff !important;
}

body.productApp:not(.periodReportMode) .workspace .view.active :is(
  .miniButton, .textButton, .secondaryButton, .moduleTabs button,
  .advisorActions button, .advisorLibrary button
) {
  color: var(--mc-text-2) !important;
  background: #fff !important;
  background-image: none !important;
  border: 1px solid var(--mc-line-strong) !important;
  border-radius: var(--mc-control-radius) !important;
  box-shadow: none !important;
}
body.productApp:not(.periodReportMode) .workspace .view.active :is(
  .miniButton, .textButton, .secondaryButton, .moduleTabs button,
  .advisorActions button, .advisorLibrary button
):hover {
  color: var(--mc-accent) !important;
  background: var(--mc-accent-soft) !important;
  border-color: #9fc2f3 !important;
}
body.productApp:not(.periodReportMode) .workspace .view.active :is(
  .downloadButton, .uploadButton, .sheetUpload, button.primary,
  .primaryButton, .stepActions .downloadButton
) {
  color: #fff !important;
  background: var(--mc-accent) !important;
  background-image: none !important;
  border: 1px solid var(--mc-accent) !important;
  border-radius: var(--mc-control-radius) !important;
  box-shadow: none !important;
}
body.productApp:not(.periodReportMode) .workspace .view.active :is(
  .downloadButton, .uploadButton, .sheetUpload, button.primary,
  .primaryButton, .stepActions .downloadButton
):hover {
  color: #fff !important;
  background: var(--mc-accent-hover) !important;
  border-color: var(--mc-accent-hover) !important;
}
body.productApp:not(.periodReportMode) .workspace .view.active :is(
  .sheetUpload *, .downloadButton *, .uploadButton *, button.primary *
) { color: #fff !important; }

body.productApp:not(.periodReportMode) .workspace .view.active .dataEntryIcon {
  color: #fff !important;
  background: var(--mc-accent) !important;
  background-image: none !important;
  border-color: var(--mc-accent) !important;
  box-shadow: none !important;
}

body.productApp:not(.periodReportMode) .workspace .view.active .costSearch {
  display: flex !important;
  align-items: center !important;
  min-width: 250px !important;
  height: 42px !important;
}
body.productApp:not(.periodReportMode) .workspace .view.active .costSearch > span {
  flex: 0 0 auto !important;
  width: auto !important;
  white-space: nowrap !important;
  line-height: 1 !important;
}
body.productApp:not(.periodReportMode) .workspace .view.active .costSearch > input {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  height: 40px !important;
}

body.productApp:not(.periodReportMode) .workspace .view.active .moduleTabs {
  color: var(--mc-text) !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}
body.productApp:not(.periodReportMode) .workspace .view.active .moduleTabs button.active {
  color: var(--mc-accent) !important;
  background: var(--mc-accent-soft) !important;
  border-color: #b8d2f7 !important;
}

body.productApp:not(.periodReportMode) .workspace .view.active .semiPlatformChecks label {
  color: var(--mc-text-2) !important;
  background: #fff !important;
  border: 1px solid var(--mc-line) !important;
  border-radius: 7px !important;
  padding: 8px 12px !important;
}
body.productApp:not(.periodReportMode) .workspace .view.active :is(.semiDownloadNotice, .dataEntryHint) {
  color: #4c5f78 !important;
  background: #f4f8ff !important;
  border: 1px solid #d7e5f8 !important;
}
body.productApp:not(.periodReportMode) .workspace .view.active .semiPairing .cardHead > b.offline {
  color: var(--mc-muted) !important;
  background: #f3f5f7 !important;
  border-color: var(--mc-line) !important;
}
body.productApp:not(.periodReportMode) .workspace .view.active .semiPairing .cardHead > b.online {
  color: #0a7f58 !important;
  background: #effaf6 !important;
  border-color: #bcebd8 !important;
}
body.productApp:not(.periodReportMode) .workspace .view.active .semiJob.waiting_manual {
  border-color: #ead8b8 !important;
  background: #fffdf8 !important;
}
body.productApp:not(.periodReportMode) .workspace .view.active .semiJob :is(b, .semiTaskStatus),
body.productApp:not(.periodReportMode) .workspace .view.active .semiStage span.ok { color: var(--mc-success) !important; }
body.productApp:not(.periodReportMode) .workspace .view.active .semiJob.waiting_manual b { color: #a86700 !important; }
body.productApp:not(.periodReportMode) .workspace .view.active :is(
  .semiJob.failed b, .semiStage span.bad, .semiStage small, .semiDownloadError
) { color: var(--mc-danger) !important; }

body.productApp:not(.periodReportMode) .workspace .view.active :is(
  .priority, .priority.p1, .priority.p2, .priority.p3,
  .advisorStatus, .advisorModified, .levelBadge, .rankBadge
) {
  color: var(--mc-accent) !important;
  background: var(--mc-accent-soft) !important;
  border-color: #b8d2f7 !important;
}
body.productApp:not(.periodReportMode) .workspace .view.active :is(
  .roiStatus, .roiSummaryHead > span, .advisorDelta, .badge.good, .badge.warn
) { background: transparent !important; border-color: transparent !important; box-shadow: none !important; }
body.productApp:not(.periodReportMode) .workspace .view.active :is(.delta.up, .downText) { color: var(--mc-danger) !important; }
body.productApp:not(.periodReportMode) .workspace .view.active :is(.delta.down, .upText, .badge.good, .roiStatus.good) { color: var(--mc-success) !important; }
body.productApp:not(.periodReportMode) .workspace .view.active :is(.badge.warn, .roiStatus.risk) { color: #a86700 !important; }

body.productApp:not(.periodReportMode) .workspace .view.active :is(select, input:not([type="file"]), textarea, .searchBox, .searchBox input) {
  color: var(--mc-text) !important;
  background: #fff !important;
  border-color: var(--mc-line-strong) !important;
  box-shadow: none !important;
}
body.productApp:not(.periodReportMode) .workspace .view.active :is(select, input:not([type="file"]), textarea):focus {
  color: var(--mc-text) !important;
  background: #fff !important;
  border-color: var(--mc-accent) !important;
  box-shadow: 0 0 0 3px rgba(23,105,224,.13) !important;
}
body.productApp:not(.periodReportMode) .workspace .view.active :is(.impactBarTrack, .compareBars span, .funnelStep i) {
  display: block !important;
  background: #e9edf2 !important;
  border-color: var(--mc-line) !important;
}
body.productApp:not(.periodReportMode) .workspace .view.active :is(.impactBarTrack i, .compareBars span i) {
  background: var(--mc-accent) !important;
}
body.productApp:not(.periodReportMode) .workspace * { scrollbar-color: #c6cad1 #f1f2f4 !important; }
body.productApp:not(.periodReportMode) .workspace *::-webkit-scrollbar-track { background: #f1f2f4 !important; }
body.productApp:not(.periodReportMode) .workspace *::-webkit-scrollbar-thumb {
  background: #c6cad1 !important;
  border-color: #f1f2f4 !important;
}

@keyframes mcContentIn {
  from { opacity: .94; transform: translateY(3px); }
  to { opacity: 1; transform: translateY(0); }
}

/* A dedicated desktop dock keeps the bottom-right assistant off business data. */
@media (min-width: 1200px) {
  .productApp .workspace { padding-right: 148px !important; }
  .productApp .topbar,
  .productApp .filterPanel {
    margin-right: -148px !important;
    padding-right: 20px !important;
  }
}

/* Seven-point acceptance pass: neutral surfaces, semantic priority, predictable interaction. */
.productApp .userBadge {
  min-height: 36px !important;
  gap: 0 !important;
  padding: 0 14px !important;
}
.productApp .userBadge > span { display: none !important; }
.productApp .userBadge strong {
  display: block !important;
  margin: 0 !important;
  color: var(--mc-text) !important;
  line-height: 1.2 !important;
  letter-spacing: 0 !important;
  white-space: nowrap !important;
}

body.productApp:not(.periodReportMode) .workspace .view.active :is(.analysisProblemHead, .advisorIssueHead) {
  color: var(--mc-text) !important;
  background: #fff !important;
  background-color: #fff !important;
  background-image: none !important;
}
body.productApp:not(.periodReportMode) .workspace .view.active :is(
  .analysisProblemHead > div, .analysisProblemHead h3, .analysisProblemHead small,
  .advisorIssueHead > div, .advisorIssueHead h3, .advisorIssueHead small
) {
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
}
body.productApp:not(.periodReportMode) .workspace .view.active :is(.analysisProblemHead, .advisorIssueHead) .priority {
  color: #8a4f00 !important;
  background: #fff7df !important;
  border: 1px solid #efd59b !important;
  box-shadow: none !important;
}
body.productApp:not(.periodReportMode) .workspace .view.active :is(.analysisProblemHead, .advisorIssueHead) .priority.p1 {
  color: #b4232d !important;
  background: #fff1f2 !important;
  border-color: #f3c4c8 !important;
}
body.productApp:not(.periodReportMode) .workspace .view.active :is(.analysisProblemHead, .advisorIssueHead) .priority.p2 {
  color: #8a4f00 !important;
  background: #fff7df !important;
  border-color: #efd59b !important;
}
body.productApp:not(.periodReportMode) .workspace .view.active :is(.analysisProblemHead, .advisorIssueHead) .priority.p3 {
  color: #4b5563 !important;
  background: #f5f6f8 !important;
  border-color: #d9dde3 !important;
}
body.productApp:not(.periodReportMode) .workspace .view.active .analysisProblemBody .solution {
  background: #fafbfc !important;
}

body.productApp:not(.periodReportMode) .workspace .advisorProductGrid .advisorMiniList p,
body.productApp:not(.periodReportMode) .workspace .advisorProductGrid .advisorMiniList p * {
  cursor: default !important;
  user-select: none !important;
  -webkit-user-select: none !important;
}
body.productApp:not(.periodReportMode) .workspace .advisorProductGrid .advisorMiniList p::selection,
body.productApp:not(.periodReportMode) .workspace .advisorProductGrid .advisorMiniList p *::selection {
  color: inherit !important;
  background: transparent !important;
}

body.productApp.periodReportMode .workspace .periodReportPage .periodModeTabs button.active,
body.productApp.periodReportMode .workspace .periodReportPage .periodModeTabs button.active:hover,
body.productApp.periodReportMode .workspace .periodReportPage .periodModeTabs button.active:focus,
body.productApp.periodReportMode .workspace .periodReportPage .periodModeTabs button.active:focus-visible {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  background: var(--mc-accent) !important;
  border-color: var(--mc-accent) !important;
}
body.productApp.periodReportMode .workspace .periodReportPage .periodModeTabs button:not(.active) {
  color: var(--mc-text-2) !important;
  -webkit-text-fill-color: var(--mc-text-2) !important;
  background: #fff !important;
}

@media (min-width: 1200px) and (max-width: 1499px) {
  .productApp .workbenchPlatformHead {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 4px !important;
    align-items: start !important;
  }
  .productApp .workbenchPlatformHead strong {
    font-size: 13px !important;
    line-height: 1.35 !important;
  }
}

@media (min-width: 621px) and (max-width: 1199px) {
  .productApp .robotAssistant .robotBubble,
  .productApp .robotAssistant .robotHead,
  .productApp .robotAssistant .robotRestore { display: none !important; }
  .productApp .robotAssistant {
    left: auto !important;
    right: 12px !important;
    bottom: 18px !important;
    width: auto !important;
  }
}

@media (max-width: 1120px) {
  .productApp .shell { grid-template-columns: 126px 166px minmax(0, 1fr) !important; }
  .productApp .workspace { padding-inline: 14px !important; }
  .productApp .topbar,
  .productApp .filterPanel { margin-inline: -14px !important; padding-inline: 14px !important; }
}

@media (max-width: 900px) {
  .productApp .shell { grid-template-columns: 1fr !important; }
  .productApp .rail {
    position: fixed !important;
    inset: auto 0 0 !important;
    width: 100% !important;
    height: auto !important;
    padding: 7px !important;
    overflow-x: auto;
    flex-direction: row !important;
    border: 0 !important;
    border-top: 1px solid var(--mc-line) !important;
    background: rgba(255,255,255,.98) !important;
  }
  .productApp .railBrand { display: none !important; }
  .productApp .menu {
    position: static !important;
    display: block !important;
    width: 100% !important;
    height: auto !important;
    padding: 6px 8px !important;
    overflow: hidden !important;
    border: 0 !important;
    border-bottom: 1px solid var(--mc-line) !important;
    background: #fff !important;
  }
  .productApp .menu .brandBlock { display: none !important; }
  .productApp .menu .subMenu {
    display: flex !important;
    flex-direction: row !important;
    gap: 4px !important;
    padding: 0 !important;
    overflow-x: auto !important;
    scrollbar-width: none !important;
  }
  .productApp .menu .subMenu::-webkit-scrollbar { display: none !important; }
  .productApp .menu .menuItem {
    flex: 0 0 auto !important;
    min-height: 36px !important;
    white-space: nowrap !important;
  }
  .productApp .railItem { flex: 0 0 auto; min-height: 42px !important; white-space: nowrap; }
  .productApp .workspace { padding-bottom: 84px !important; }
  .authPage .shell { min-height: 100vh !important; grid-template-columns: 1fr !important; border: 0 !important; border-radius: 0 !important; }
  .authPage .hero { min-height: auto !important; padding: 28px 24px 30px !important; border-right: 0 !important; border-bottom: 1px solid var(--mc-line) !important; }
  .authPage .heroText { margin-top: 32px !important; }
  .authPage h1 { font-size: 34px !important; }
  .authPage .valueList { position: static !important; grid-template-columns: 1fr !important; margin-top: 24px !important; }
  .authPage .valueItem { min-height: 0 !important; border-right: 0 !important; border-bottom: 1px solid var(--mc-line) !important; }
  .authPage .valueItem:last-child { border-bottom: 0 !important; }
  .authPage .card { padding: 34px 24px !important; }
  .adminPage .adminShell { padding-left: 0 !important; padding-bottom: 70px; }
  .adminPage .adminRail {
    inset: auto 0 0 !important;
    width: 100% !important;
    height: auto !important;
    padding: 7px !important;
    flex-direction: row !important;
    overflow-x: auto;
    border: 0 !important;
    border-top: 1px solid var(--mc-line) !important;
  }
  .adminPage .adminRailBrand,
  .adminPage .adminRailFoot { display: none !important; }
  .adminPage .adminRailNav { display: flex !important; }
  .adminPage .adminRailNav a { flex: 0 0 auto; min-height: 42px !important; white-space: nowrap; }
}

@media (max-width: 620px) {
  .productApp .topbar { position: static !important; align-items: stretch !important; flex-direction: column !important; }
  .productApp .filterPanel { top: 0 !important; padding: 8px 14px 10px !important; gap: 7px !important; }
  .productApp .filterPanel .filterRow {
    min-height: 0 !important;
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 7px !important;
    flex-direction: row !important;
  }
  body.productApp .workspace .filterPanel .filterRow { flex-direction: row !important; }
  body.productApp .workspace .filterPanel .filterRow.hiddenRow { display: none !important; }
  .productApp .filterPanel .filterLabel { flex: 0 0 100% !important; width: auto !important; }
  .productApp .filterPanel .filterRow:nth-child(1) :is(.storeSelect, .storeQuickSearch) {
    flex: 1 1 145px !important;
    width: auto !important;
    min-width: 0 !important;
  }
  .productApp .filterPanel .filterRow:nth-child(2) .storeSelect {
    flex: 1 0 100% !important;
    width: 100% !important;
  }
  .productApp .filterPanel .filterRow:nth-child(2) .dateInput {
    flex: 1 1 125px !important;
    width: auto !important;
    min-width: 0 !important;
  }
  .productApp .filterPanel .filterRow:nth-child(2) .dateSep {
    flex: 0 0 auto !important;
    width: auto !important;
  }
  .productApp .filterPanel .filterRow:nth-child(3) .chip {
    flex: 1 1 auto !important;
    width: auto !important;
    min-width: 58px !important;
  }
  .productApp .topActions,
  .productApp .globalSearch { width: 100% !important; }
  .productApp .cloudSyncStatus { flex: 1; }
  .productApp .cloudSyncStatus span { display: inline !important; }
  .productApp .userBadge { display: none !important; }
  .productApp .robotAssistant .robotBubble,
  .productApp .robotAssistant .robotHead,
  .productApp .robotAssistant .robotRestore { display: none !important; }
  .productApp .robotAssistant { left: auto !important; right: 8px !important; bottom: 64px !important; width: auto !important; }
  .productApp .robotAssistant .robotNoticeButton {
    position: static !important;
    min-width: 62px !important;
    min-height: 34px !important;
    padding: 0 10px !important;
    color: var(--mc-accent) !important;
    background: #fff !important;
    border: 1px solid #b8d2f7 !important;
    border-radius: 18px !important;
    box-shadow: var(--mc-shadow) !important;
  }
  .authPage .wrap { padding: 0 !important; }
  .authPage.authPageAdmin .wrap { padding: 18px !important; }
  .adminPage header { position: static !important; align-items: flex-start !important; flex-direction: column !important; }
  .adminPage main { padding: 12px !important; }
  .adminPage section { padding: 15px !important; }
  .adminPage .grid,
  .adminPage .backupGrid { grid-template-columns: 1fr !important; }
}

@media (prefers-reduced-motion: reduce) {
  body.productApp:not(.periodReportMode) .view.active { animation: none !important; }
  :is(.productApp, .authPage, .adminPage) *,
  :is(.productApp, .authPage, .adminPage) *::before,
  :is(.productApp, .authPage, .adminPage) *::after { transition-duration: 0ms !important; scroll-behavior: auto !important; }
}

/* Real-data acceptance pass: components rendered only after reports load. */
body.productApp:not(.periodReportMode) .workspace .view.active :is(
  .periodMetric, .analysisReportMetrics .periodMetric, .sheetItem, .sheetCopy,
  .trendBox .row, .analysisProblemCard, .advisorIssue, .advisorIssueHead,
  .advisorDimensionMetrics p, .advisorCompare article
) {
  color: var(--mc-text) !important;
  background: #fff !important;
  background-color: #fff !important;
  background-image: none !important;
  border-color: var(--mc-line) !important;
  box-shadow: none !important;
  text-shadow: none !important;
}
body.productApp:not(.periodReportMode) .workspace .view.active :is(
  .analysisReportMetrics .periodMetric, .advisorDimensionMetrics p
) {
  background: #fafbfc !important;
  border: 1px solid var(--mc-line) !important;
  border-radius: 8px !important;
}
body.productApp:not(.periodReportMode) .workspace .view.active :is(
  .periodMetric span, .periodMetric small, .periodMetric em,
  .advisorDimensionMetrics span, .sheetCopy p, .trendBox .row > span,
  .analysisProblemHead small
) { color: var(--mc-muted) !important; }
body.productApp:not(.periodReportMode) .workspace .view.active :is(
  .periodMetric strong, .advisorDimensionMetrics strong, .sheetCopy strong,
  .trendBox .row strong, .advisorIssueHead h3, .analysisProblemHead h3
) { color: var(--mc-text) !important; }
body.productApp:not(.periodReportMode) .workspace .view.active .trendBox .row {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
  padding: 0 0 14px !important;
  border: 0 !important;
  border-bottom: 1px solid var(--mc-line) !important;
}
body.productApp:not(.periodReportMode) .workspace .view.active .sheetItem {
  display: grid !important;
  grid-template-columns: minmax(240px, 1fr) auto !important;
  align-items: center !important;
  gap: 18px !important;
  min-height: 76px !important;
  padding: 14px 16px !important;
  border: 1px solid var(--mc-line) !important;
  border-radius: 8px !important;
}
body.productApp:not(.periodReportMode) .workspace .view.active .sheetItem:hover {
  background: #f8fafc !important;
  border-color: #cbd4df !important;
}
body.productApp:not(.periodReportMode) .workspace .view.active .sheetActions {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
}
body.productApp:not(.periodReportMode) .workspace .view.active .sheetCopy strong span {
  color: var(--mc-text-2) !important;
  background: #f3f5f7 !important;
  border-color: var(--mc-line) !important;
}

/* One calm report-paper treatment replaces the three competing platform fills. */
body.productApp.periodReportMode .workspace .periodReportPage .periodPoster,
body.productApp.periodReportMode .workspace .periodReportPage :is(
  .periodTheme-meituan, .periodTheme-eleme, .periodTheme-jd, .periodTheme-all
) {
  --period-accent: var(--mc-accent) !important;
  --period-border: var(--mc-line) !important;
  --period-soft: #fff !important;
  --period-paper: #fff !important;
  --period-ink: var(--mc-text) !important;
  color: var(--mc-text) !important;
  background: #fff !important;
  background-color: #fff !important;
  background-image: none !important;
  border: 1px solid var(--mc-line) !important;
  border-radius: 10px !important;
  box-shadow: none !important;
}
body.productApp.periodReportMode .workspace .periodReportPage .periodPosterHead {
  border-bottom: 1px solid var(--mc-line) !important;
}
body.productApp.periodReportMode .workspace .periodReportPage .periodStamp {
  transform: none !important;
  color: var(--mc-accent) !important;
  background: var(--mc-accent-soft) !important;
  border: 1px solid #b8d2f7 !important;
  border-radius: 7px !important;
  box-shadow: none !important;
}
body.productApp.periodReportMode .workspace .periodReportPage :is(
  .periodMetric, .periodProduct, .periodSplit span, .periodChartCard,
  .periodFunnelStep
) {
  color: var(--mc-text) !important;
  background: #fafbfc !important;
  background-color: #fafbfc !important;
  background-image: none !important;
  border-color: var(--mc-line) !important;
  box-shadow: none !important;
}
body.productApp.periodReportMode .workspace .periodReportPage :is(h2, h3, h4, strong, b, p) {
  color: var(--mc-text) !important;
}
body.productApp.periodReportMode .workspace .periodReportPage :is(
  span, small, em, .periodPosterHead span, .periodSectionTitle span
) { color: var(--mc-muted) !important; }
body.productApp.periodReportMode .workspace .periodReportPage .periodSection,
body.productApp.periodReportMode .workspace .periodReportPage .periodReading {
  border-bottom-color: var(--mc-line) !important;
}
body.productApp.periodReportMode .workspace .periodReportPage :is(
  .periodSectionTitle b::before, .periodReading strong::before, .periodBarFill
) { background: var(--mc-accent) !important; }
body.productApp.periodReportMode .workspace .periodReportPage .periodDelta.up { color: var(--mc-success) !important; }
body.productApp.periodReportMode .workspace .periodReportPage .periodDelta.down { color: var(--mc-danger) !important; }

/* The expanded assistant stays readable and separates collection from ingestion. */
body.productApp .robotAssistant .robotPanel,
body.productApp .robotAssistant .robotPanel:has(.collectionProgress),
body.productApp .robotAssistant .collectionProgress,
body.productApp .robotAssistant .robotProgressSummary {
  color: var(--mc-text) !important;
  background: #fff !important;
  background-color: #fff !important;
  background-image: none !important;
  border-color: var(--mc-line) !important;
  box-shadow: var(--mc-shadow) !important;
  scrollbar-color: #c6cad1 #f1f2f4 !important;
}
body.productApp .robotAssistant .robotPanel {
  right: 18px !important;
  bottom: 112px !important;
  width: min(430px, calc(100vw - 36px)) !important;
  max-height: min(680px, calc(100dvh - 142px)) !important;
  border: 1px solid var(--mc-line) !important;
  border-radius: 10px !important;
  overflow: auto !important;
}
body.productApp .robotAssistant:has(.robotPanel:not([hidden])) :is(
  .robotHead, .robotNoticeButton, .robotTools, .robotProgressSummary
) { display: none !important; }
body.productApp .robotAssistant .collectionProgress {
  padding: 16px !important;
  border: 0 !important;
  border-bottom: 1px solid var(--mc-line) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
body.productApp .robotAssistant :is(
  .collectionProgress h3, .collectionProgress strong, .collectionProgress summary,
  .robotPanelHead strong, .robotNoticeList strong
) { color: var(--mc-text) !important; }
body.productApp .robotAssistant :is(
  .collectionProgress p, .collectionProgress label, .collectionProgress li,
  .collectionProgress span, .collectionProgress small, .collectionProgress time,
  .robotPanelEmpty, .robotNoticeList p, .robotNoticeList small,
  .robotNoticeList article span
) { color: var(--mc-text-2) !important; }
body.productApp .robotAssistant .robotPanelHead {
  position: sticky !important;
  top: 0 !important;
  z-index: 2 !important;
  min-height: 48px !important;
  padding: 9px 12px !important;
  background: #fafbfc !important;
  border-bottom: 1px solid var(--mc-line) !important;
}
body.productApp .robotAssistant :is(
  .collectionProgress select, .collectionProgress button, .robotPanelHead button
) {
  color: var(--mc-text) !important;
  background: #fff !important;
  background-image: none !important;
  border: 1px solid var(--mc-line-strong) !important;
  border-radius: 6px !important;
  box-shadow: none !important;
}
body.productApp .robotAssistant .collectionProgress [data-progress-guide] {
  color: #fff !important;
  background: var(--mc-accent) !important;
  border-color: var(--mc-accent) !important;
}
body.productApp .robotAssistant .collectionProgress details {
  margin-top: 14px !important;
  padding-top: 10px !important;
  border-top: 1px solid var(--mc-line) !important;
}
body.productApp .robotAssistant .collectionProgress ol li {
  border-bottom: 1px solid var(--mc-line) !important;
}
body.productApp .robotAssistant .collectionCurrent,
body.productApp .robotAssistant .collectionNoEvents {
  padding: 12px !important;
  background: #f4f8ff !important;
  border: 1px solid #d7e5f8 !important;
  border-radius: 8px !important;
}
body.productApp .robotAssistant .robotNoticeList article {
  color: var(--mc-text) !important;
  background: #fff !important;
  border: 1px solid var(--mc-line) !important;
  border-radius: 8px !important;
  box-shadow: none !important;
}

@media (max-width: 760px) {
  body.productApp:not(.periodReportMode) .workspace .view.active .sheetItem {
    grid-template-columns: 1fr !important;
  }
  body.productApp:not(.periodReportMode) .workspace .view.active .sheetActions {
    justify-content: flex-start !important;
  }
  body.productApp .robotAssistant .robotPanel {
    right: 8px !important;
    bottom: 110px !important;
    width: calc(100vw - 16px) !important;
    max-height: calc(100dvh - 128px) !important;
  }
}

@media (min-width: 1200px) {
  body.productApp:has(.robotAssistant .robotPanel:not([hidden])) .workspace {
    padding-right: 468px !important;
  }
  body.productApp:has(.robotAssistant .robotPanel:not([hidden])) :is(.topbar, .filterPanel) {
    margin-right: -20px !important;
  }
  body.productApp .robotAssistant .robotPanel {
    bottom: 18px !important;
    max-height: calc(100dvh - 36px) !important;
  }
}
