/* Smart cabin materials: blue glass outside, a thin cyan wash inside.
 * Keep business inks and the other two skins under their existing rules. */
:root[data-skin="alice"][data-theme][data-palette] body {
  --cabin-layer-glass: linear-gradient(160deg, rgba(var(--ac-cy-rgb), .035), rgba(var(--ac-cy-rgb), .005)), var(--ac-glass-2);
  --cabin-layer-inset: linear-gradient(160deg, rgba(var(--ac-cy-rgb), .035), rgba(var(--ac-cy-rgb), .008));
  --cabin-data-surface: var(--cabin-layer-glass);
}
:root[data-skin="alice"][data-theme][data-palette] body #view :is(.card, .kpi, .cd-card, .cd-kpi, .cx-panel, .co-stepper, .co-activity, .co-readiness, .co-metric, .cx-revenue, .co-soc-panel, .co-brief-grid article, .cabin-c-reading)[class] {
  background: var(--cabin-layer-glass);
}
:root[data-skin="alice"][data-theme][data-palette] body #view :is(.card, .cd-card, .cx-panel, .co-soc-panel) :is(.card, .kpi, .co-brief-grid article, .cx-note, .co-warnings)[class] {
  background: var(--cabin-layer-inset);
  border-color: var(--ac-line);
  box-shadow: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}
/* Existing AI financial panels carry an !important material rule. */
:root[data-skin="alice"][data-theme][data-palette] body #view .cx :is(.co-metric, .cx-revenue, .co-soc-panel) {
  background: var(--cabin-layer-glass) !important;
}
:root[data-skin="alice"][data-theme][data-palette] body #view .ops-page,
:root[data-skin="alice"][data-theme][data-palette] body #view.ops-page {
  --ops-inset: var(--cabin-layer-inset);
}
:root[data-skin="alice"][data-theme][data-palette] body #view {
  --cabin-data-surface: var(--cabin-layer-glass);
}
/* Empty messages never need a second slab inside a panel. Standalone ones
 * retain the same glass as a card; an empty-only wrapper is also unpainted. */
:root[data-skin="alice"][data-theme][data-palette] body #view .empty[class] {
  background: var(--cabin-layer-glass);
  color: var(--ac-tx2);
  border: 1px dashed var(--ac-line);
  box-shadow: none;
}
:root[data-skin="alice"][data-theme][data-palette] body #view :is(.card, .cd-card, .cx-panel, .co-soc-panel, .tbl, .table-wrap) .empty[class],
:root[data-skin="alice"][data-theme][data-palette] body #view :is(.card, .cd-card, .cx-panel, .co-soc-panel) .card:has(> .empty:only-child) {
  background: transparent;
  border-color: transparent;
  box-shadow: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}
:root[data-skin="alice"][data-theme][data-palette] body #view .empty[class] > svg {
  color: var(--ac-tx2);
  stroke: currentColor;
  filter: none;
}
/* Match the whole-page empty layout's specificity while keeping its spacing. */
:root[data-skin="alice"][data-theme][data-palette] body #view .card[class] .empty[class],
:root[data-skin="alice"][data-theme][data-palette] body #view .card[class] .empty[class] > svg {
  color: var(--ac-tx2);
  filter: none;
}


/* Skylight: original Alice light surfaces, brand blue/green accents. */
:root[data-palette="skylight"][data-theme="light"] {
  --ink-up: #e5484d; --ink-down: #16a34a;
  --up: #e5484d; --down: #16a34a;
  --sb-tx: var(--ink-secondary); --sb-tx-hi: var(--ink-main); --sb-group: var(--ink-muted);
  --look-selected: var(--brand-ink);
}
:root[data-palette="skylight"][data-theme="light"] .sidebar .brand-color { display:block; }
:root[data-palette="skylight"][data-theme="light"] .sidebar .brand-white { display:none; }
body.ex-ai-mode[data-ai-palette="skylight"][data-ai-theme="light"] { --x-mute: #556274; }
:root[data-skin="alice"][data-theme="light"][data-palette="skylight"],
:root[data-skin="alice"][data-theme="light"][data-palette="skylight"] body {
  --ac-cy: #075b80; --ac-cy-rgb: 0,120,192; --ac-vi: #147d60; --ac-vi-rgb: 32,160,96;
  --ac-grad: linear-gradient(135deg,#0078a8,#147d60);
  --ac-grad-tx: linear-gradient(135deg,#075b80,#147d60);
  --brand-on: #fff; --tx-inv: #fff;
}
/* Sidebar defines local navigation inks in the legacy shell. */
:root[data-palette="skylight"][data-theme="light"] body:not(.ex-ai-mode) .sidebar {
  --sb-tx: #475569; --sb-tx-hi: #18263c; --sb-group: #4b5870;
  --look-selected: #075b80;
}
:root[data-palette="skylight"][data-theme="light"][data-skin="alice"] body :is(.btn.primary,.cx-btn.primary) { color: #fff; }
/* Wallpaper and panel tint share the mapped brand hue. */
:root[data-skin="alice"][data-theme="dark"][data-palette="powerflow"] {
  /* 2026-11-13 用户：颜色偏暗，向 Alice 霓虹色靠一点——同色相，提高饱和度与亮度（原 #5cc4f2 / #3fd39a） */
  --ac-cy: #3fd2ff; --ac-cy-rgb: 63,210,255; --ac-vi: #2ff0a8; --ac-vi-rgb: 47,240,168;
  --ac-grad: linear-gradient(135deg,#2fbaff,#2ff0a8); --ac-grad-tx: var(--ac-grad);
}
:root[data-skin="alice"][data-theme="dark"][data-palette="ocean"] {
  --ac-cy: #8db3ff; --ac-cy-rgb: 141,179,255; --ac-vi: #739bd8; --ac-vi-rgb: 115,155,216;
  --ac-grad: linear-gradient(135deg,#8db3ff,#739bd8); --ac-grad-tx: var(--ac-grad);
}

/* 智能舱·深色的涨跌色同步提亮（原 --up #fb8c9d / --down #52d9aa，偏灰），色相不变，红涨绿跌口径不变 */
:root[data-skin="alice"][data-theme="dark"][data-palette],
:root[data-skin="alice"][data-theme="dark"][data-palette] body {
  --up: #ff7d96; --down: #2ff0b0;
  --up-soft: rgba(255,125,150,.15); --down-soft: rgba(47,240,176,.14);
}
