/* Shared presentation contract. Astra dark keeps the existing sheet. */
html[data-ui="astra"][data-mode="light"] {
  --hub-bg: #f6f4fb;
  --hub-side: #ffffff;
  --hub-card: #ffffff;
  --hub-text: #1c1630;
  --hub-muted: #655d78;
  --hub-line: #e4dff0;
  --hub-accent: #6d4aff;
  --hub-top: #ffffff;
  --hub-radius: 18px;
  --hub-side-w: 264px;
}
html[data-ui="bento"][data-mode="dark"] {
  --hub-bg: #14110e; --hub-side: #1c1814; --hub-card: #241f19; --hub-text: #f7f1e8; --hub-muted: #b7ab9c;
  --hub-line: #3c342b; --hub-accent: #e2a15a; --hub-top: #1c1814; --hub-radius: 12px; --hub-side-w: 228px;
}
html[data-ui="bento"][data-mode="light"] {
  --hub-bg: #f4efe6; --hub-side: #fffaf3; --hub-card: #fffdf8; --hub-text: #2a2118; --hub-muted: #74685b;
  --hub-line: #e6dccb; --hub-accent: #b86a1d; --hub-top: #fffaf3; --hub-radius: 12px; --hub-side-w: 228px;
}
html[data-ui="executive"][data-mode="dark"] {
  --hub-bg: #0e141b; --hub-side: #121a23; --hub-card: #17212b; --hub-text: #e7eef6; --hub-muted: #93a3b5;
  --hub-line: #2a3948; --hub-accent: #3d8bfd; --hub-top: #121a23; --hub-radius: 6px; --hub-side-w: 220px;
}
html[data-ui="executive"][data-mode="light"] {
  --hub-bg: #f3f6f9; --hub-side: #ffffff; --hub-card: #ffffff; --hub-text: #142033; --hub-muted: #5d6b7c;
  --hub-line: #d7e0ea; --hub-accent: #0b5cab; --hub-top: #ffffff; --hub-radius: 6px; --hub-side-w: 220px;
}
html[data-ui="charm"][data-mode="dark"] {
  --hub-bg: #1a1218; --hub-side: #241820; --hub-card: #2c1e28; --hub-text: #fff1f6; --hub-muted: #d2aebc;
  --hub-line: #4a3140; --hub-accent: #e36b9a; --hub-top: #241820; --hub-radius: 22px; --hub-side-w: 248px;
}
html[data-ui="charm"][data-mode="light"] {
  --hub-bg: #fff5f8; --hub-side: #fff; --hub-card: #fff; --hub-text: #3b2430; --hub-muted: #8d6676;
  --hub-line: #f0d5e0; --hub-accent: #c43b6e; --hub-top: #fff; --hub-radius: 22px; --hub-side-w: 248px;
}
html[data-ui="perspective"][data-mode="dark"] {
  --hub-bg: #101010; --hub-side: #161616; --hub-card: #1c1c1c; --hub-text: #f5f5f2; --hub-muted: #a3a39b;
  --hub-line: #2e2e2e; --hub-accent: #d6ff4a; --hub-top: #161616; --hub-radius: 2px; --hub-side-w: 280px;
}
html[data-ui="perspective"][data-mode="light"] {
  --hub-bg: #f7f6f1; --hub-side: #111111; --hub-card: #ffffff; --hub-text: #161616; --hub-muted: #5f5f58;
  --hub-line: #e4e1d6; --hub-accent: #111111; --hub-top: #f7f6f1; --hub-radius: 2px; --hub-side-w: 280px;
}
html[data-theme-ready="1"] .hub-astra { background: var(--hub-bg) !important; color: var(--hub-text) !important; }
html[data-theme-ready="1"] .hub-astra .nova-shell { grid-template-columns: var(--hub-side-w) minmax(0, 1fr) !important; background: var(--hub-bg) !important; }
html[data-theme-ready="1"] .hub-astra .nova-sidebar { width: var(--hub-side-w) !important; background: var(--hub-side) !important; color: var(--hub-text) !important; border-right: 1px solid var(--hub-line) !important; }
html[data-theme-ready="1"] .hub-astra .nova-main,
html[data-theme-ready="1"] .hub-astra .nova-content,
html[data-theme-ready="1"] .hub-astra .app-topbar,
html[data-theme-ready="1"] .hub-astra .app-header { background: var(--hub-top) !important; color: var(--hub-text) !important; }
html[data-theme-ready="1"] .hub-astra .nova-content { background: var(--hub-bg) !important; }
html[data-theme-ready="1"] .hub-astra .nova-card,
html[data-theme-ready="1"] .hub-astra .nova-kpi { background: var(--hub-card) !important; color: var(--hub-text) !important; border: 1px solid var(--hub-line) !important; border-radius: var(--hub-radius) !important; }
html[data-theme-ready="1"] .hub-astra .nova-pagehead__title,
html[data-theme-ready="1"] .hub-astra .nova-wh__title,
html[data-theme-ready="1"] .hub-astra .nova-kpi__value,
html[data-theme-ready="1"] .hub-astra .nova-sidebar__brand-name { color: var(--hub-text) !important; }
html[data-theme-ready="1"] .hub-astra .nova-pagehead__desc,
html[data-theme-ready="1"] .hub-astra .nova-wh__sub,
html[data-theme-ready="1"] .hub-astra .nova-kpi__label,
html[data-theme-ready="1"] .hub-astra .nova-sidebar__group-label { color: var(--hub-muted) !important; }
html[data-theme-ready="1"] .hub-astra .nova-link { color: var(--hub-muted) !important; border-radius: var(--hub-radius) !important; }
html[data-theme-ready="1"] .hub-astra .nova-link--active { background: color-mix(in srgb, var(--hub-accent) 18%, transparent) !important; color: var(--hub-text) !important; }
html[data-theme-ready="1"] .hub-astra .nova-table { color: var(--hub-text) !important; }
html[data-theme-ready="1"] .hub-astra .nova-table thead th { color: var(--hub-muted) !important; border-bottom: 1px solid var(--hub-line) !important; }
html[data-theme-ready="1"] .hub-astra .nova-table td { border-bottom: 1px solid var(--hub-line) !important; }
html[data-theme-ready="1"] .hub-astra .bg-accent { background: var(--hub-accent) !important; color: #fff !important; border-radius: var(--hub-radius) !important; }
html[data-ui="perspective"][data-mode="light"][data-theme-ready="1"] .hub-astra .bg-accent { color: #f7f6f1 !important; }
html[data-theme-ready="1"] .hub-astra input,
html[data-theme-ready="1"] .hub-astra select,
html[data-theme-ready="1"] .hub-astra textarea { background: var(--hub-card) !important; color: var(--hub-text) !important; border: 1px solid var(--hub-line) !important; border-radius: var(--hub-radius) !important; }
html[data-theme-ready="1"] .hub-astra .nova-sidebar__logo { background: var(--hub-accent) !important; color: #fff !important; }
@media (max-width: 1024px) {
  html[data-theme-ready="1"] .hub-astra .nova-shell { grid-template-columns: minmax(0, 1fr) !important; }
  html[data-theme-ready="1"] .hub-astra .nova-sidebar { width: min(86vw, var(--hub-side-w)) !important; }
}
