/* Precision charcoal and green workspace. Market direction and risk states retain
   their semantic colors; this sheet changes presentation, never execution. */
html.site-neutral[data-page="app"] {
  color-scheme: dark;
  --bg: #0b0e11; --surface: #14191e; --surface-2: #1b2228;
  --panel: #14191e; --panel2: #1b2228; --card: #14191e;
  --line: #2b343c; --line-strong: #64727d;
  --border: #2b343c; --border-strong: #64727d;
  --text: #f4f5f4; --text2: #c8cdcb; --muted: #bdc4c3; --dim: #aab3b2;
  --accent: #68e0ac; --accent-dim: rgba(104,224,172,.11);
  --cyan: #68e0ac; --violet: #a9bdc6;
}
html.site-neutral[data-page="app"] body.cmd { background: #0b0e11; color: #f4f5f4; }
html.site-neutral[data-page="app"] .cmd-main { background: #0b0e11; color: #f4f5f4; }
html.site-neutral[data-page="app"] .topbar { background: #0b0e11; border-bottom: 1px solid #2b343c; box-shadow: none; backdrop-filter: none; }
html.site-neutral[data-page="app"] .sidebar { background: #0f1418; border-right: 1px solid #2b343c; backdrop-filter: none; }
html.site-neutral[data-page="app"] .topbar :where(.brand-name, .brand-dim, .brand-tag, .tb-net, .tb-balance, .tb-balance b) { color: #f4f5f4; text-shadow: none; }
html.site-neutral[data-page="app"] .brand-tag { background: transparent; border-color: #52616c; letter-spacing: .13em; }
html.site-neutral[data-page="app"] .sidebar :where(.nav-group-label, .nav-btn, .nav-more-summary, .side-link) { color: #d6dad8; }
html.site-neutral[data-page="app"] .sidebar .nav-group-label { color: #abb5b4; }
html.site-neutral[data-page="app"] .sidebar :where(.nav-btn, .side-link) { background: transparent; border: 1px solid transparent; box-shadow: none; }
html.site-neutral[data-page="app"] .sidebar .nav-btn .lbl { font-size: 10px !important; letter-spacing: -.02em !important; overflow-wrap: normal; }
html.site-neutral[data-page="app"] .sidebar .nav-more-summary { background: #171e24; border-color: #495963; }
html.site-neutral[data-page="app"] .sidebar .nav-btn.is-active { color: #8aebbd; background: #16362a; border-color: #28513f; box-shadow: none; }
html.site-neutral[data-page="app"] .sidebar .nav-btn.is-active::before { background: #68e0ac; box-shadow: none; }
html.site-neutral[data-page="app"] .sidebar .nav-btn.is-active .ic { text-shadow: none; }
@media (hover:hover) and (pointer:fine) {
  html.site-neutral[data-page="app"] .sidebar :where(.nav-btn, .nav-more-summary, .side-link):hover { color: #fff; background: #253139; }
}
html.site-neutral[data-page="app"] .cmd-main :where(.card, .panel, .home-summary article,
  .home-task-grid > a, .home-plan-grid article, .home-live, .home-help,
  .control-menu-group, .trading-workspaces, .table-wrap,
  .launchpad-wizard, .owner-action-workbench, .mission-runner,
  .evidence-passport, .evidence-graph) {
  background: #14191e; border: 1px solid #2b343c; border-radius: 8px;
  box-shadow: 0 1px 0 rgba(255,255,255,.025) inset;
}
html.site-neutral[data-page="app"] .cmd-main :where(.section-title, h1, h2, h3, h4, strong):not(.up):not(.down):not(.warn):not(.error):not(.danger) { color: #f4f5f4; text-shadow: none; }
html.site-neutral[data-page="app"] .cmd-main :where(p, small, label, .sub, .muted):not(.up):not(.down):not(.warn):not(.error):not(.danger) { color: #c8cdcb; }
html.site-neutral[data-page="app"] .cmd-main :where(.home-eyebrow, .eyebrow) { color: #bfc7c5; text-shadow: none; }
html.site-neutral[data-page="app"] .cmd-main .home-welcome h1 { font-size: clamp(34px,4vw,52px); font-weight: 700; letter-spacing: -.052em; line-height: 1.08; }
html.site-neutral[data-page="app"] .cmd-main :where(.home-progress, .market-observation, .control-boundary, .paper-run-indicator, .owner-site-overview) {
  background: #1b2228; color: #dce1df; border-color: #3c4c56; box-shadow: none;
}
html.site-neutral[data-page="app"] .cmd-main .owner-site-overview { border-left: 3px solid #68e0ac; }
html.site-neutral[data-page="app"] .cmd-main :where(.home-task-grid > a, .home-plan-grid article) { transition: border-color .18s ease, transform .18s ease; }
@media (hover:hover) and (pointer:fine) {
  html.site-neutral[data-page="app"] .cmd-main :where(.home-task-grid > a, .home-plan-grid article):hover { border-color: #68e0ac; transform: translateY(-2px); }
}
html.site-neutral[data-page="app"] .cmd-main :where(.btn, .home-actions button):not(.ghost):not(.red):not(.danger):not(.destructive) {
  background: #68e0ac; border-color: #68e0ac; color: #08251b; box-shadow: none;
}
html.site-neutral[data-page="app"] .cmd-main :where(.btn.ghost, .home-actions .btn.ghost) { background: #1b2228; border-color: #52616c; color: #f4f5f4; }
html.site-neutral[data-page="app"] .cmd-main :where(input, select, textarea) { background: #171d23; color: #f4f5f4; border-color: #52616c; }
html.site-neutral[data-page="app"] .cmd-main :where(a, .text-link):not(.btn):not(.up):not(.down):not(.warn):not(.error):not(.danger) { color: #e8edeb; text-decoration-color: #b8c2c0; }
/* Anchors styled as buttons also receive the shared site's link color.
   Override it explicitly so text and fill always contrast. */
html.site-neutral[data-page="app"] .cmd-main a.btn:not(.ghost):not(.red):not(.danger):not(.destructive) {
  background: #68e0ac; border-color: #68e0ac; color: #08251b;
}
html.site-neutral[data-page="app"] .cmd-main a.btn.ghost {
  background: #1b2228; border-color: #52616c; color: #f4f5f4;
}
html.site-neutral[data-page="app"] .cmd-main :where(.table-wrap, table, th, td) { border-color: #2b343c; }
html.site-neutral[data-page="app"] .cmd-main th { background: #1b2228; color: #d6ddda; }
html.site-neutral[data-page="app"] .trading-workspaces .trading-workspace-links a { background: #1b2228; border-color: #52616c; color: #e9efec; }
html.site-neutral[data-page="app"] .cmd-main .trading-workspaces #paperWorkspace[aria-current],
html.site-neutral[data-page="app"] .cmd-main .trading-workspaces #liveWorkspace[aria-current] { background: #68e0ac; border-color: #68e0ac; color: #08251b; }
html.site-neutral[data-page="app"] .trading-workspaces p { color: #c2cac8; }
html.site-neutral[data-page="app"] .rail { background: #0f1418; border-left-color: #2b343c; color: #e9eeec; }
html.site-neutral[data-page="app"] .rail .glass { background: #1b2228; border-color: #36434d; box-shadow: none; }
html.site-neutral[data-page="app"] .rail :where(.rc-title, .gauge-scale, .s-label, .donut-legend) { color: #c2cac8; }
html.site-neutral[data-page="app"] .rail :where(.rc-sub, .gauge-label, .s-val, .donut-legend b) { color: #f4f5f4; text-shadow: none; }
html.site-neutral[data-page="app"] .rail .state-cell { background: #161b20; border-color: #36434d; }
html.site-neutral[data-page="app"] .rail .fusion-quote { color: #d3dbd8; border-left-color: #68e0ac; }
html.site-neutral[data-page="app"] :where(a, button, input, select, textarea, [tabindex]):focus-visible { outline: 2px solid #68e0ac; outline-offset: 3px; }
html.site-neutral[data-page="app"] .journal-row-details { margin-top: 6px; font-size: 11px; color: #c8cdcb; }
html.site-neutral[data-page="app"] .journal-row-details summary { cursor: pointer; color: #e9efec; white-space: nowrap; }
html.site-neutral[data-page="app"] .journal-row-details div { min-width: 180px; padding: 7px 0; line-height: 1.6; }
html.site-neutral[data-page="app"] .live-readiness-summary { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin: 14px 0; }
html.site-neutral[data-page="app"] .live-readiness-summary > div { padding: 15px; background: #1b2228; border: 1px solid #36434d; border-radius: 8px; }
html.site-neutral[data-page="app"] .live-readiness-summary :where(span, small) { display: block; color: #c8cdcb; }
html.site-neutral[data-page="app"] .live-readiness-summary strong { display: block; margin: 6px 0; color: #f4f5f4; font-size: 18px; }
html.site-neutral[data-page="app"] .live-advanced { margin: 16px 0; border: 1px solid #36434d; border-radius: 8px; }
html.site-neutral[data-page="app"] .live-advanced > summary { padding: 16px; color: #f4f5f4; cursor: pointer; font-weight: 600; }
html.site-neutral[data-page="app"] .live-advanced[open] > summary { border-bottom: 1px solid #36434d; }
html.site-neutral[data-page="app"] .live-advanced > .card { margin: 12px; }
@media (max-width: 760px) {
  html.site-neutral[data-page="app"] .live-readiness-summary { grid-template-columns: 1fr; }
}
@media (max-width: 1500px) {
  html.site-neutral[data-page="app"] .journal-trade-table .j-secondary { display: none; }
}
@media (prefers-reduced-motion: reduce) {
  html.site-neutral[data-page="app"] .cmd-main :where(.home-task-grid > a, .home-plan-grid article) { transition: none; transform: none; }
}

/* Compact hierarchy and legible controls, scoped to the signed-in workspace.
   Never hide disabled actions, risk states, approval text or live boundaries. */
html.site-neutral[data-page="app"] .cmd-main { font-variant-numeric: tabular-nums; }
html.site-neutral[data-page="app"] .cmd-main .home-welcome h1 {
  font-size: clamp(28px, 3vw, 40px); letter-spacing: -.035em; line-height: 1.2;
}
html.site-neutral[data-page="app"] .cmd-main .home-eyebrow { color: #68e0ac; letter-spacing: .12em; }
html.site-neutral[data-page="app"] .cmd-main .home-summary article { border-top: 2px solid #315746; }
html.site-neutral[data-page="app"] .cmd-main :where(input, select, textarea) { border-radius: 6px; }
html.site-neutral[data-page="app"] .cmd-main :where(.btn, .home-actions button) { border-radius: 6px; font-weight: 600; }
html.site-neutral[data-page="app"] .cmd-main :where(button, .btn):disabled {
  opacity: .55; cursor: not-allowed;
}
html.site-neutral[data-page="app"] .cmd-main tbody tr:hover { background: rgba(104,224,172,.035); }
html.site-neutral[data-page="app"] .cmd-main th { font-size: 11px; letter-spacing: .045em; font-weight: 600; }
html.site-neutral[data-page="app"] .cmd-main :where(.market-observation.is-stale, .market-observation.is-unknown) { border-color: var(--warn); }
@media (hover:hover) and (pointer:fine) {
  html.site-neutral[data-page="app"] .sidebar .nav-btn.is-active:hover { background: #1d4434; color: #a2f2cc; }
  html.site-neutral[data-page="app"] .cmd-main :where(.btn.ghost, a.btn.ghost):hover { background: #253139; border-color: #68e0ac; }
}
/* Match the shared button rule's specificity so old white/gray fills do not win. */
html.site-neutral[data-page="app"] .sidebar .nav-btn:not(.red):not(.danger):not(.destructive),
html.site-neutral[data-page="app"] .sidebar .side-link:not(.red):not(.danger):not(.destructive) {
  background: transparent; border-color: transparent; color: #b9c6ce;
}
html.site-neutral[data-page="app"] .sidebar .nav-btn.is-active:not(.red):not(.danger):not(.destructive) {
  background: #16362a; border-color: #28513f; color: #8aebbd;
}
html.site-neutral[data-page="app"] .cmd-main .btn.ghost:not(.red):not(.danger):not(.destructive),
html.site-neutral[data-page="app"] .topbar button:not(.red):not(.danger):not(.destructive) {
  background: #1b2228; border-color: #52616c; color: #f4f5f4;
}
html.site-neutral[data-page="app"] #view-scanner .market-lanes button[aria-pressed="true"] {
  background: #16362a; border-color: #3c7358; color: #8aebbd;
}
html.site-neutral[data-page="app"] #view-scanner .workspace-actions .btn.green {
  background: #68e0ac; border-color: #68e0ac; color: #08251b;
}

html.site-neutral[data-page="app"] #liveLaunchDashboard > :where(p, h3, ul) { margin: 12px 0; line-height: 1.6; }
html.site-neutral[data-page="app"] #liveLaunchDashboard ul { padding-left: 22px; }
html.site-neutral[data-page="app"] #liveLaunchDashboard details { margin: 10px 0; padding: 14px; border: 1px solid #36434d; border-radius: 6px; }
html.site-neutral[data-page="app"] #liveLaunchDashboard summary { cursor: pointer; font-weight: 600; }
html.site-neutral[data-page="app"] #liveLaunchDashboard details p { margin: 10px 0 0; line-height: 1.6; }
