/* 其余工作区沿用仪表盘色板，只调整视觉，不改原有排布和交互。 */
body.is-ethereal {
  --module-panel: var(--glass);
  --module-surface: var(--solid);
  --module-raised: var(--solid-quiet);
  --module-hover: var(--selection-row-hover);
  --module-border: var(--solid-line);
  --module-shadow: var(--selection-shadow);
  --module-primary: #b9f86a;
  --module-primary-text: #10130b;
  --module-danger: #ff929b;
}

body.is-ethereal.dashboard-light {
  --module-primary: #12141a;
  --module-primary-text: #fff;
  --module-danger: #b82d3c;
}

body.is-ethereal .account-popover {
  border-color: var(--glass-edge);
  border-radius: 14px;
  background: var(--solid);
  color: var(--ink);
  box-shadow: var(--module-shadow);
}
body.is-ethereal .account-popover .btn { border-color: var(--module-border); background: var(--module-raised); color: var(--ink-2); }
body.is-ethereal .account-popover .btn-primary { border-color: transparent; background: var(--module-primary); color: var(--module-primary-text); }
body.is-ethereal .account-popover .btn-danger { color: var(--module-danger); }

body.is-ethereal :is(.confirm-modal-panel, .update-modal-panel, .image-editor-dialog, .selection-template-panel) {
  border-color: var(--glass-edge);
  border-radius: 18px;
  background: var(--solid);
  color: var(--ink);
  box-shadow: var(--module-shadow);
}
body.is-ethereal :is(.confirm-modal, .update-modal, .image-editor-modal, .selection-template-modal) .btn { border-color: var(--module-border); background: var(--module-raised); color: var(--ink-2); }
body.is-ethereal :is(.confirm-modal, .update-modal, .image-editor-modal, .selection-template-modal) .btn:hover:not(:disabled) { border-color: var(--accent); background: var(--accent-wash); color: var(--accent-deep); }
body.is-ethereal :is(.confirm-modal, .update-modal, .image-editor-modal, .selection-template-modal) .btn-primary { border-color: transparent; background: var(--module-primary); color: var(--module-primary-text); }
body.is-ethereal :is(.confirm-modal, .update-modal, .image-editor-modal, .selection-template-modal) :is(.input, .buyer-message-textarea) { border-color: var(--module-border); background-color: var(--selection-field); color: var(--ink); }
body.is-ethereal .update-progress-bar { background: var(--module-raised); }
body.is-ethereal .update-progress-bar i { background: var(--module-primary); }
body.is-ethereal .image-editor-pane-title { background: var(--module-raised); color: var(--ink); }
body.is-ethereal .image-editor-generated-empty { background: var(--module-raised); }
body.is-ethereal .image-editor-status { background: var(--accent-wash); color: var(--accent-deep); }

body.is-ethereal :is(#viewShops, #viewOnlineProducts, #viewPromo, #viewOrders, #viewWorkflow, #viewImageTool, #viewPersonalCenter, #viewManual, #viewSettings) {
  color: var(--ink);
  font-family: "Plus Jakarta Sans", "Segoe UI", "PingFang SC", "Microsoft YaHei", sans-serif;
}

body.is-ethereal :is(#viewShops, #viewOnlineProducts, #viewPromo, #viewOrders, #viewWorkflow, #viewImageTool, #viewPersonalCenter, #viewManual, #viewSettings) :is(.field-label, .field-hint, .column-count, .online-status-tab b, .order-status-tab b, .promo-head span, .promo-meta, .promo-table th, .promo-table td, .promo-foot-hint, .workflow-tab, .publish-log-meta, .publish-log-task-label, .workflow-card-title, .workflow-card-sub span, .workflow-credit-cost, .image-tool-mode-select > span, .image-tool-stage-head span, .image-tool-drop span, .image-tool-empty span, .image-tool-global-status) { font-size: 14px; }

body.is-ethereal :is(#viewShops, #viewOnlineProducts, #viewPromo, #viewOrders, #viewWorkflow, #viewImageTool, #viewPersonalCenter, #viewManual, #viewSettings) :is(.glass, .settings-hero, .settings-card, .personal-center-hero, .personal-center-card, .manual-index, .manual-hero, .manual-section) {
  border-color: var(--glass-edge);
  border-radius: 22px;
  background: var(--module-panel);
  box-shadow: var(--module-shadow), inset 0 1px 0 var(--glass-line);
}

body.is-ethereal :is(#viewShops, #viewOnlineProducts, #viewPromo, #viewOrders, #viewWorkflow, #viewImageTool, #viewPersonalCenter, #viewManual, #viewSettings) .btn {
  border-color: var(--glass-edge);
  border-radius: 10px;
  background: var(--glass-strong);
  color: var(--ink-2);
  font-size: 14px;
  transition: background .2s ease, border-color .2s ease, box-shadow .2s ease, color .2s ease, transform .2s ease;
}

body.is-ethereal :is(#viewShops, #viewOnlineProducts, #viewPromo, #viewOrders, #viewWorkflow, #viewImageTool, #viewPersonalCenter, #viewManual, #viewSettings) .btn:hover:not(:disabled) {
  border-color: var(--accent);
  background: var(--accent-wash);
  color: var(--accent-deep);
  box-shadow: none;
  transform: translateY(-1px);
}

body.is-ethereal :is(#viewShops, #viewOnlineProducts, #viewPromo, #viewOrders, #viewWorkflow, #viewImageTool, #viewPersonalCenter, #viewManual, #viewSettings) .btn:active:not(:disabled) { transform: translateY(0); }

body.is-ethereal :is(#viewShops, #viewOnlineProducts, #viewPromo, #viewOrders, #viewWorkflow, #viewImageTool, #viewPersonalCenter, #viewManual, #viewSettings) .btn-primary {
  border-color: transparent;
  background: var(--module-primary);
  color: var(--module-primary-text);
  box-shadow: 0 6px 20px rgba(185, 248, 106, .16);
}

body.is-ethereal.dashboard-light :is(#viewShops, #viewOnlineProducts, #viewPromo, #viewOrders, #viewWorkflow, #viewImageTool, #viewPersonalCenter, #viewManual, #viewSettings) .btn-primary { box-shadow: 0 6px 20px rgba(18, 20, 26, .12); }

body.is-ethereal :is(#viewShops, #viewOnlineProducts, #viewPromo, #viewOrders, #viewWorkflow, #viewImageTool, #viewPersonalCenter, #viewManual, #viewSettings) .btn-primary:hover:not(:disabled) {
  border-color: transparent;
  background: var(--selection-active);
  color: var(--selection-active-text);
  filter: brightness(1.06);
  box-shadow: 0 8px 22px rgba(185, 248, 106, .14);
}
body.is-ethereal :is(#viewShops, #viewOnlineProducts, #viewPromo, #viewOrders, #viewWorkflow, #viewImageTool, #viewPersonalCenter, #viewManual, #viewSettings) .btn-accent { border-color: transparent; background: var(--module-primary); color: var(--module-primary-text); }

body.is-ethereal :is(#viewShops, #viewOnlineProducts, #viewPromo, #viewOrders, #viewWorkflow, #viewImageTool, #viewPersonalCenter, #viewManual, #viewSettings) .btn-danger { color: var(--module-danger); }
body.is-ethereal :is(#viewShops, #viewOnlineProducts, #viewPromo, #viewOrders, #viewWorkflow, #viewImageTool, #viewPersonalCenter, #viewManual, #viewSettings) .btn-danger:hover:not(:disabled) {
  border-color: currentColor;
  background: rgba(255, 146, 155, .1);
  color: var(--module-danger);
}

body.is-ethereal :is(#viewShops, #viewOnlineProducts, #viewPromo, #viewOrders, #viewWorkflow, #viewImageTool, #viewPersonalCenter, #viewManual, #viewSettings) .input,
body.is-ethereal :is(.online-detail-modal, .online-price-review-modal, .shop-warehouse-modal) .input {
  border-color: var(--module-border);
  background-color: var(--selection-field);
  color: var(--ink);
  font-size: 14px;
}

body.is-ethereal :is(#viewShops, #viewOnlineProducts, #viewPromo, #viewOrders, #viewWorkflow, #viewImageTool, #viewPersonalCenter, #viewManual, #viewSettings) .input:hover,
body.is-ethereal :is(.online-detail-modal, .online-price-review-modal, .shop-warehouse-modal) .input:hover { border-color: var(--ink-4); }

body.is-ethereal :is(#viewShops, #viewOnlineProducts, #viewPromo, #viewOrders, #viewWorkflow, #viewImageTool, #viewPersonalCenter, #viewManual, #viewSettings) .input:focus,
body.is-ethereal :is(.online-detail-modal, .online-price-review-modal, .shop-warehouse-modal) .input:focus {
  border-color: var(--accent);
  background-color: var(--selection-field);
  box-shadow: 0 0 0 3px var(--accent-wash);
}

body.is-ethereal:not(.dashboard-light) :is(#viewShops, #viewOnlineProducts, #viewPromo, #viewOrders, #viewWorkflow, #viewImageTool, #viewPersonalCenter, #viewManual, #viewSettings) :is(input[type="date"], select) { color-scheme: dark; }
body.is-ethereal :is(#viewShops, #viewOnlineProducts, #viewPromo, #viewOrders, #viewWorkflow, #viewImageTool, #viewPersonalCenter, #viewManual, #viewSettings) :is(input[type="checkbox"], input[type="radio"], input[type="range"]) { accent-color: var(--accent); }

body.is-ethereal :is(#viewShops, #viewOnlineProducts, #viewPromo, #viewOrders, #viewWorkflow, #viewImageTool, #viewPersonalCenter, #viewManual, #viewSettings) :is(.tag-blue, .manual-section-note) { background: var(--accent-wash); color: var(--accent-deep); }
body.is-ethereal :is(#viewShops, #viewOnlineProducts, #viewPromo, #viewOrders, #viewWorkflow, #viewImageTool, #viewPersonalCenter, #viewManual, #viewSettings) .tag-quiet { background: var(--module-raised); color: var(--ink-3); }

/* 店铺中心 */
body.is-ethereal #viewShops .shop-board { border-color: var(--module-border); border-radius: 16px; background: var(--module-surface); }
body.is-ethereal #viewShops .shop-table th { background: var(--module-raised); color: var(--ink-3); }
body.is-ethereal #viewShops .shop-table td { background: var(--selection-row); }
body.is-ethereal #viewShops .shop-table tr:hover td { background: var(--module-hover); }
body.is-ethereal #viewShops .shop-name-cell span { background: var(--accent-wash); color: var(--accent-deep); }
body.is-ethereal #viewShops .shop-status.tone-mint { background: rgba(185, 248, 106, .12); color: var(--accent-deep); }
body.is-ethereal #viewShops .shop-status.tone-amber { background: rgba(255, 190, 85, .13); color: #ffcc87; }
body.is-ethereal #viewShops .shop-status.tone-rose { background: rgba(255, 146, 155, .12); color: #ff929b; }
body.is-ethereal.dashboard-light #viewShops .shop-status.tone-amber { color: #8a560e; }
body.is-ethereal.dashboard-light #viewShops .shop-status.tone-rose { color: #b82d3c; }

/* 在线商品与订单保留原有表格列和分页关系。 */
body.is-ethereal :is(#viewOnlineProducts .online-products, #viewOrders .orders-panel, #viewPromo .promo-panel) {
  border-color: var(--glass-edge);
  border-radius: 22px;
  background: var(--module-panel);
  box-shadow: var(--module-shadow), inset 0 1px 0 var(--glass-line);
}
body.is-ethereal :is(#viewOnlineProducts .online-toolbar, #viewOnlineProducts .online-status-tabs, #viewOnlineProducts .online-foot, #viewOrders .orders-toolbar, #viewOrders .order-status-tabs, #viewPromo .promo-head, #viewPromo .promo-toolbar, #viewPromo .promo-meta, #viewPromo .promo-foot) { border-color: var(--module-border); background: var(--glass-strong); }
body.is-ethereal :is(#viewOnlineProducts .online-status-tab, #viewOrders .order-status-tab) { color: var(--ink-3); transition: color .2s ease, border-color .2s ease; }
body.is-ethereal :is(#viewOnlineProducts .online-status-tab:hover, #viewOrders .order-status-tab:hover) { color: var(--accent-deep); }
body.is-ethereal :is(#viewOnlineProducts .online-status-tab.is-active, #viewOrders .order-status-tab.is-active) { border-color: var(--accent); color: var(--ink); }
body.is-ethereal :is(#viewOnlineProducts .online-status-tab b, #viewOrders .order-status-tab b) { color: var(--accent-deep); }
body.is-ethereal :is(#viewOnlineProducts .online-table th, #viewOrders .orders-table th, #viewPromo .promo-table th) { background: var(--module-raised); border-color: var(--module-border); color: var(--ink-3); }
body.is-ethereal :is(#viewOnlineProducts .online-table td, #viewOrders .orders-table td, #viewPromo .promo-table td) { border-color: var(--module-border); color: var(--ink-2); }
body.is-ethereal :is(#viewOnlineProducts .online-table tbody tr:hover td, #viewOrders .orders-table tbody tr:hover td, #viewPromo .promo-table tbody tr:hover td) { background: var(--module-hover); }
body.is-ethereal #viewOnlineProducts .online-product-row.is-selected td { background: var(--accent-wash); }
body.is-ethereal :is(#viewOnlineProducts .online-thumb, #viewOrders .order-thumb, #viewOnlineProducts .online-rating-refresh) { border-color: var(--module-border); background: var(--module-surface); }
body.is-ethereal #viewOrders .order-photo-cell { border-color: var(--module-border); background: var(--module-surface); }
body.is-ethereal #viewOnlineProducts .online-rating-popover { border-color: var(--module-border); background: var(--module-raised); box-shadow: var(--module-shadow); }
body.is-ethereal #viewOnlineProducts .online-rating-popover-groups section { background: var(--module-surface); }
body.is-ethereal #viewOnlineProducts .shop-status.tone-amber { background: rgba(255, 190, 85, .13); color: #ffcc87; }
body.is-ethereal.dashboard-light #viewOnlineProducts .shop-status.tone-amber { color: #8a560e; }
body.is-ethereal #viewPromo .promo-meta-msg { color: #ffcc87; }
body.is-ethereal.dashboard-light #viewPromo .promo-meta-msg { color: #8a560e; }

/* 工作台日志和图片工作台 */
body.is-ethereal #viewWorkflow .workflow-board { border-radius: 22px; }
body.is-ethereal #viewWorkflow .column-head { border-color: var(--module-border); background: var(--glass-strong); }
body.is-ethereal #viewWorkflow .column-scroll { background: var(--module-surface); }
body.is-ethereal #viewWorkflow .workflow-tabs { border-color: var(--module-border); background: var(--module-raised); }
body.is-ethereal #viewWorkflow .workflow-tab { color: var(--ink-3); transition: background .2s ease, color .2s ease; }
body.is-ethereal #viewWorkflow .workflow-tab:hover { color: var(--accent-deep); background: var(--accent-wash); }
body.is-ethereal #viewWorkflow .workflow-tab.is-active { background: var(--selection-active); color: var(--selection-active-text); box-shadow: none; }
body.is-ethereal #viewWorkflow :is(.workflow-row, .publish-log-row, .batch-workflow-card) { border-color: var(--module-border); background: var(--selection-row); box-shadow: none; }
body.is-ethereal #viewWorkflow :is(.workflow-row:hover, .workflow-row.is-focused, .publish-log-row:hover) { border-color: var(--accent); background: var(--module-hover); box-shadow: inset 3px 0 0 var(--accent); }
body.is-ethereal #viewWorkflow :is(.batch-workflow-items, .workflow-fill-log-main div, .workflow-content-column, .workflow-content-block, .workflow-attribute-row, .workflow-shot, .video-row) { border-color: var(--module-border); background: var(--module-raised); }
body.is-ethereal #viewWorkflow .workflow-mini-progress { background: var(--module-border); }
body.is-ethereal #viewWorkflow .workflow-mini-progress i { background: var(--module-primary); }
body.is-ethereal #viewWorkflow .workflow-content-column.is-optimized { border-color: var(--accent); background: var(--accent-wash); }

body.is-ethereal #viewImageTool .image-tool-studio { border-radius: 22px; }
body.is-ethereal #viewImageTool :is(.image-tool-settings, .image-tool-stage-card) { border-color: var(--module-border); background: var(--module-surface); box-shadow: none; }
body.is-ethereal #viewImageTool :is(.image-tool-mode-select > div, .image-tool-mode-panel, .image-tool-image-box, .image-tool-type-button) { border-color: var(--module-border); background: var(--module-raised); }
body.is-ethereal #viewImageTool :is(.image-tool-drop, .image-tool-upscale-note) { border-color: var(--accent-wash); background: var(--accent-wash); }
body.is-ethereal #viewImageTool :is(.image-tool-mode-button, .image-tool-type-button) { transition: background .2s ease, color .2s ease, transform .2s ease; }
body.is-ethereal #viewImageTool :is(.image-tool-mode-button:hover, .image-tool-type-button:hover) { background: var(--accent-wash); color: var(--accent-deep); transform: translateY(-1px); }
body.is-ethereal #viewImageTool :is(.image-tool-mode-button.is-active, .image-tool-type-button.is-active) { border-color: transparent; background: var(--module-primary); color: var(--module-primary-text); box-shadow: 0 6px 18px rgba(185, 248, 106, .15); }
body.is-ethereal #viewImageTool .image-tool-image-box.is-result { background: var(--module-surface); }

/* 个人中心、使用手册与设置 */
body.is-ethereal #viewPersonalCenter .personal-center-card { border-left-color: var(--accent); }
body.is-ethereal #viewPersonalCenter .personal-center-recharge-card { border-left-color: var(--mint); }
body.is-ethereal #viewPersonalCenter .personal-center-tier-card { border-left-color: var(--amber); }
body.is-ethereal #viewPersonalCenter .personal-center-qr-box { border-color: var(--module-border); box-shadow: 0 6px 22px rgba(0, 0, 0, .12); }
body.is-ethereal #viewPersonalCenter .personal-center-tier-table th { background: var(--module-raised); color: var(--accent-deep); }
body.is-ethereal #viewPersonalCenter .personal-center-tier-table td { background: var(--module-surface); }
body.is-ethereal #viewSettings .settings-card { border-left-color: var(--settings-accent, var(--accent)); }
body.is-ethereal #viewSettings .settings-card[data-settings-tone="ozon"] { --settings-accent: var(--accent-deep); }
body.is-ethereal #viewSettings :is(.fixed-tail-slot, .diag-row) { border-color: var(--module-border); background: var(--module-raised); }
body.is-ethereal #viewSettings .fixed-tail-preview { border-color: var(--module-border); background: var(--module-surface); }
body.is-ethereal #viewSettings :is(.step-text code, .diag-badge) { border-color: var(--module-border); }
body.is-ethereal #viewSettings :is(.fixed-tail-title, .fixed-tail-name, .fixed-tail-empty, .settings-card-title, .settings-card-note, .field-label, .field-hint, .step-text, .diag-summary, .diag-name) { font-size: 14px; }
body.is-ethereal #viewSettings .fixed-tail-name { white-space: normal; overflow-wrap: anywhere; }
body.is-ethereal #viewManual .manual-index-link { transition: background .2s ease, color .2s ease, transform .2s ease; }
body.is-ethereal #viewManual .manual-index-link.is-current { background: var(--selection-active); color: var(--selection-active-text); }
body.is-ethereal #viewManual .manual-index-number { background: var(--module-raised); color: var(--ink-3); }
body.is-ethereal #viewManual .manual-index-link.is-current .manual-index-number { background: var(--accent); color: var(--module-primary-text); }
body.is-ethereal #viewManual .manual-step { border-color: var(--module-border); background: var(--selection-row); }
body.is-ethereal #viewManual .manual-step:hover { border-color: var(--accent); background: var(--module-hover); }
body.is-ethereal #viewManual .manual-step[open] { border-color: var(--accent); background: var(--module-hover); }
body.is-ethereal #viewManual .manual-section-mark { background: var(--module-primary); color: var(--module-primary-text); }
body.is-ethereal #viewManual .manual-tag { background: var(--module-raised); color: var(--ink-2); }
body.is-ethereal #viewManual .manual-tip { border-color: var(--accent-wash); background: var(--accent-wash); }

/* 与当前页面共用的弹层也跟随深浅色开关。 */
body.is-ethereal :is(.online-detail-drawer, .online-price-review-panel, .shop-warehouse-panel) { border-color: var(--glass-edge); background: var(--solid); color: var(--ink); box-shadow: var(--module-shadow); }
body.is-ethereal :is(.online-detail-images button, .online-price-review-summary .cost-summary div, .shop-warehouse-table th) { border-color: var(--module-border); background: var(--module-raised); }
body.is-ethereal .online-price-review-summary .cost-summary { border-color: var(--module-border); background: var(--module-surface); }
body.is-ethereal .online-price-review-badge { background: var(--accent-wash); color: var(--accent-deep); }
body.is-ethereal .online-detail-modal .btn,
body.is-ethereal .online-price-review-modal .btn,
body.is-ethereal .shop-warehouse-modal .btn { border-color: var(--glass-edge); background: var(--glass-strong); color: var(--ink-2); }
body.is-ethereal :is(.online-detail-modal, .online-price-review-modal, .shop-warehouse-modal) .btn-primary { border-color: transparent; background: var(--module-primary); color: var(--module-primary-text); }
