:root {
  --pro-bg: #070913;
  --pro-surface: #0d101b;
  --pro-surface-2: #121624;
  --pro-line: #252a3a;
  --pro-text: #edf2f7;
  --pro-muted: #8c95a8;
  --pro-cyan: #35d7c1;
  --pro-rise: #f05b6a;
  --pro-fall: #27bf8f;
  --pro-risk: #d59a35;
  --pro-nav-width: 196px;
}

.terminal-v1-1a {
  --ink: var(--pro-text);
  --muted: #aeb6c8;
  --steel: #cbd5e1;
  --panel: var(--pro-surface);
  --panel-2: var(--pro-surface-2);
  --line: #30364a;
  --line-strong: #46506a;
  --command-ink: var(--pro-text);
  --command-muted: #aeb6c8;
  --command-line: #30364a;
  --command-panel: var(--pro-surface);
  --command-soft: var(--pro-surface-2);
  background: var(--pro-bg);
  color: var(--pro-text);
  font-variant-numeric: tabular-nums;
}

.terminal-v1-1a .professional-side-nav {
  display: none;
}

.professional-brand strong,
.professional-brand span,
.professional-nav-group > span {
  display: block;
}

.professional-brand strong { color: var(--pro-cyan); font-size: 17px; }
.professional-brand span { margin-top: 5px; color: var(--pro-muted); font-size: 9px; letter-spacing: .12em; }
.professional-nav-group { margin-top: 18px; }
.professional-nav-group > span { padding: 0 9px 5px; color: #626b80; font-size: 10px; }
.professional-nav-group a {
  display: block;
  margin: 2px 0;
  border-left: 3px solid transparent;
  padding: 8px 9px;
  color: #aeb6c8;
  font-size: 12px;
  text-decoration: none;
}
.professional-nav-group a:hover,
.professional-nav-group a:focus-visible,
.professional-nav-group a[aria-current="page"] {
  border-left-color: var(--pro-cyan);
  background: #11282b;
  color: #72ead8;
}
.professional-boundary { margin: 22px 9px 0; color: var(--pro-muted); font-size: 10px; line-height: 1.5; }

.terminal-v1-1a .topbar,
.terminal-v1-1a .command-shell,
.terminal-v1-1a .terminal-command-bar,
.terminal-v1-1a .active-instrument-strip,
.terminal-v1-1a .watch-panel,
.terminal-v1-1a .chart-panel,
.terminal-v1-1a .right-rail,
.terminal-v1-1a .bottom-panel {
  border-color: var(--pro-line);
  background: var(--pro-surface);
  color: var(--pro-text);
  box-shadow: none;
}

.terminal-v1-1a .chart-panel { min-width: 0; }
.terminal-v1-1a #kline-canvas { background: #090c15; }
.terminal-v1-1a a:focus-visible,
.terminal-v1-1a button:focus-visible,
.terminal-v1-1a input:focus-visible { outline: 2px solid var(--pro-cyan); outline-offset: 2px; }

body.terminal-v1-1a.has-chart-tool-drawer .chart-panel {
  position: relative;
  z-index: auto;
}

.terminal-v1-1a .chart-panel.is-chart-fullscreen {
  z-index: 2200;
}

.terminal-v1-1a .command-identity,
.terminal-v1-1a .command-nav,
.terminal-v1-1a .command-status,
.terminal-v1-1a .command-risk,
.terminal-v1-1a .command-pill,
.terminal-v1-1a .command-nav a,
.terminal-v1-1a .terminal-screen-title,
.terminal-v1-1a .market-tape,
.terminal-v1-1a .session-matrix,
.terminal-v1-1a .tape-item,
.terminal-v1-1a .headline-card,
.terminal-v1-1a .quote-ribbon div,
.terminal-v1-1a .ohlc-readout div,
.terminal-v1-1a .chart-zoom-control,
.terminal-v1-1a .chart-zoom-button,
.terminal-v1-1a .timeframe-tab,
.terminal-v1-1a .range-tab,
.terminal-v1-1a .event-marker-filter,
.terminal-v1-1a .chart-stage,
.terminal-v1-1a .price-level-ladder,
.terminal-v1-1a .rail-section,
.terminal-v1-1a .bottom-section,
.terminal-v1-1a .metric-grid div,
.terminal-v1-1a .score-board div,
.terminal-v1-1a .playbook-grid span,
.terminal-v1-1a .action-item,
.terminal-v1-1a .local-data-readiness-panel,
.terminal-v1-1a .readiness-card,
.terminal-v1-1a .data-intake-section,
.terminal-v1-1a .data-intake-section-body,
.terminal-v1-1a .incoming-candidate-card,
.terminal-v1-1a .csv-intake-step,
.terminal-v1-1a .csv-schema-pill,
.terminal-v1-1a .csv-sandbox-case,
.terminal-v1-1a .research-linkage-card,
.terminal-v1-1a .incoming-candidate-summary div,
.terminal-v1-1a .manual-review-gate,
.terminal-v1-1a .kline-readiness-checklist div,
.terminal-v1-1a .csv-copy-policy,
.terminal-v1-1a .csv-intake-schema,
.terminal-v1-1a .data-intake-anchor {
  border-color: var(--pro-line);
  background: var(--pro-surface-2);
  color: var(--pro-text);
  box-shadow: none;
}

.terminal-v1-1a .chart-stage,
.terminal-v1-1a .chart-tool-drawer,
.terminal-v1-1a .stock-row,
.terminal-v1-1a .alert-focus-card,
.terminal-v1-1a .event-console-item {
  border-color: var(--pro-line);
  background: #0b0e19;
  color: var(--pro-text);
}

.terminal-v1-1a .search-box input,
.terminal-v1-1a .watchlist-filter-bar,
.terminal-v1-1a .alert-filter-bar,
.terminal-v1-1a .watch-group-tabs,
.terminal-v1-1a .watch-sort-button,
.terminal-v1-1a .alert-filter-button,
.terminal-v1-1a .watch-group-button,
.terminal-v1-1a .event-marker-filter-button,
.terminal-v1-1a .mobile-panel-toggle,
.terminal-v1-1a .price-level-ladder div,
.terminal-v1-1a .bottom-panel [class*="card"],
.terminal-v1-1a .bottom-panel [class*="step"],
.terminal-v1-1a .bottom-panel [class*="case"],
.terminal-v1-1a .bottom-panel [class*="summary"],
.terminal-v1-1a .bottom-panel [class*="guide"],
.terminal-v1-1a .bottom-panel [class*="policy"] {
  border-color: var(--pro-line);
  background: var(--pro-surface-2);
  color: var(--pro-text);
  box-shadow: none;
}

.terminal-v1-1a .watch-sort-button.is-active,
.terminal-v1-1a .alert-filter-button.is-active,
.terminal-v1-1a .watch-group-button.is-active,
.terminal-v1-1a .event-marker-filter-button.is-active,
.terminal-v1-1a .price-level-ladder div.is-current {
  border-color: var(--pro-cyan);
  background: #102a31;
  color: #72ead8;
}

.terminal-v1-1a .headline-primary,
.terminal-v1-1a .timeframe-tab.is-active,
.terminal-v1-1a .range-tab.is-active,
.terminal-v1-1a .chart-zoom-button.is-active,
.terminal-v1-1a .command-nav a[aria-current="page"] {
  background: #102a31;
  color: #72ead8;
}

.terminal-v1-1a .headline-card strong,
.terminal-v1-1a .quote-ribbon strong,
.terminal-v1-1a .ohlc-readout dd,
.terminal-v1-1a .command-title,
.terminal-v1-1a .command-risk strong,
.terminal-v1-1a .command-nav a,
.terminal-v1-1a .command-pill,
.terminal-v1-1a .bottom-panel h2,
.terminal-v1-1a .rail-section h2,
.terminal-v1-1a .price-level-ladder h3 {
  color: var(--pro-text);
}

.terminal-v1-1a .market-tape {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  overflow: visible;
}

.terminal-v1-1a .market-tape .tape-item {
  box-sizing: border-box;
  grid-template-columns: minmax(0, 1fr) auto;
  min-width: 0;
  width: 100%;
  white-space: normal;
}

.terminal-v1-1a .market-tape .tape-item em { grid-column: 1 / -1; }
.terminal-v1-1a .market-tape .tape-item b,
.terminal-v1-1a .market-tape .tape-item strong,
.terminal-v1-1a .market-tape .tape-item em { min-width: 0; overflow-wrap: anywhere; }

@media (min-width: 901px) {
  .terminal-v1-1a .command-shell {
    gap: 4px;
    min-height: 0;
    padding: 3px 8px;
  }

  .terminal-v1-1a .command-identity,
  .terminal-v1-1a .command-status,
  .terminal-v1-1a .command-risk {
    min-height: 42px;
    padding: 3px 5px;
  }

  .terminal-v1-1a .command-title { font-size: 14px; white-space: nowrap; }
  .terminal-v1-1a .command-eyebrow { margin-bottom: 1px; font-size: 9px; }
  .terminal-v1-1a .command-nav { gap: 4px; padding: 3px; }
  .terminal-v1-1a .command-nav a { min-height: 28px; padding: 2px 5px; }
  .terminal-v1-1a .command-status { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .terminal-v1-1a .command-pill {
    min-width: 0;
    padding: 2px 4px;
    overflow: visible;
    font-size: 8px;
    white-space: nowrap;
    text-overflow: clip;
  }
  .terminal-v1-1a .command-risk {
    gap: 4px;
    flex-wrap: wrap;
    overflow: visible;
    font-size: 9px;
    line-height: 1.1;
    white-space: normal;
  }
  .terminal-v1-1a .command-risk span:last-child {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
  }
  .terminal-v1-1a .command-risk::after {
    content: "辅助决策 · 不保证收益 · 不自动买卖";
    min-width: 0;
    color: var(--command-muted);
  }

  .terminal-v1-1a .professional-side-nav {
    position: fixed;
    z-index: 1100;
    inset: 0 auto 0 0;
    display: block;
    width: var(--pro-nav-width);
    overflow-y: auto;
    border-right: 1px solid var(--pro-line);
    padding: 16px 12px;
    background: #0a0c16;
  }

  .terminal-v1-1a > :not(.professional-side-nav):not(.terminal-mobile-dock):not(.chart-tool-overlay):not(.detail-drawer-overlay):not(.stock-detail-drawer) {
    margin-left: var(--pro-nav-width);
  }

  .terminal-v1-1a .terminal-shell {
    grid-template-columns: minmax(220px, 0.72fr) minmax(0, 2fr) minmax(250px, 0.82fr);
  }

  .terminal-v1-1a .chart-panel { padding: 10px; }
  .terminal-v1-1a .chart-heading h2 { margin: 2px 0 0; }
  .terminal-v1-1a .chart-headline-metrics { gap: 6px; margin-top: 6px; }
  .terminal-v1-1a .headline-card { padding: 6px 8px; }
  .terminal-v1-1a .headline-card strong { font-size: 18px; }
  .terminal-v1-1a .quote-ribbon { gap: 6px; margin: 6px 0; }
  .terminal-v1-1a .quote-ribbon div { padding: 5px 7px; }
  .terminal-v1-1a .quote-ribbon strong { font-size: 13px; }
  .terminal-v1-1a .chart-tool-drawer {
    grid-template-columns: auto minmax(0, 1fr);
    gap: 5px 8px;
    margin-bottom: 5px;
  }
  .terminal-v1-1a .chart-tool-drawer .timeframe-tabs { grid-column: 1; }
  .terminal-v1-1a .chart-tool-drawer .chart-interaction-bar {
    grid-column: 2;
    gap: 6px;
    margin: 0;
  }
  .terminal-v1-1a .chart-tool-drawer .interaction-hint { display: none; }
  .terminal-v1-1a .chart-tool-drawer .ohlc-readout {
    grid-column: 1 / -1;
    gap: 4px;
    margin: 0;
  }
  .terminal-v1-1a .chart-tool-drawer .ohlc-readout div { padding: 4px 6px; }
  .terminal-v1-1a .chart-tool-drawer .event-marker-filter {
    grid-column: 1 / -1;
    gap: 5px;
    padding: 5px 7px;
  }

  .terminal-v1-1a .watch-panel,
  .terminal-v1-1a .right-rail {
    min-width: 0;
  }
}

@media (max-width: 900px) {
  .terminal-v1-1a { padding-bottom: calc(82px + env(safe-area-inset-bottom)); }
  .terminal-v1-1a .professional-side-nav { display: none; }
  .terminal-v1-1a .command-shell {
    grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
    gap: 3px;
    height: auto;
    min-height: 0;
    padding: 3px;
    overflow: visible;
  }
  .terminal-v1-1a .command-identity,
  .terminal-v1-1a .command-status,
  .terminal-v1-1a .command-risk {
    min-height: 0;
    padding: 3px 5px;
  }
  .terminal-v1-1a .command-eyebrow { margin-bottom: 1px; font-size: 8px; }
  .terminal-v1-1a .command-title { font-size: 12px; }
  .terminal-v1-1a .command-status {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 3px;
  }
  .terminal-v1-1a .command-pill {
    min-height: 0;
    padding: 2px 4px;
    font-size: 8px;
    overflow-wrap: anywhere;
  }
  .terminal-v1-1a .command-risk {
    grid-column: 1 / -1;
    gap: 4px;
    font-size: 9px;
    line-height: 1.2;
  }
  .terminal-v1-1a .terminal-screen-title {
    min-height: 0;
    padding: 5px 7px;
  }
  .terminal-v1-1a .terminal-screen-title strong { font-size: 15px; }
  .terminal-v1-1a .terminal-screen-title span { font-size: 9px; }
  .terminal-v1-1a .active-instrument-strip {
    flex: 0 0 auto;
    min-height: 0;
    overflow: visible;
  }
  .terminal-v1-1a .terminal-command-bar,
  .terminal-v1-1a .active-instrument-strip {
    flex: 0 0 auto;
  }
  .terminal-v1-1a .active-strip-metrics {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    overflow: visible;
  }
  .terminal-v1-1a .market-tape {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    overflow: visible;
    gap: 3px;
    padding: 3px;
  }
  .terminal-v1-1a .market-tape .tape-item {
    grid-template-columns: minmax(0, 1fr);
    min-width: 0;
    min-height: 0;
    padding: 5px 6px;
    white-space: normal;
  }
  .terminal-v1-1a .market-tape .tape-item b,
  .terminal-v1-1a .market-tape .tape-item strong { font-size: 13px; }
  .terminal-v1-1a .market-tape .tape-item em { grid-column: 1; font-size: 10px; }
  .terminal-v1-1a .market-tape .tape-item b,
  .terminal-v1-1a .market-tape .tape-item strong,
  .terminal-v1-1a .market-tape .tape-item em { min-width: 0; overflow-wrap: anywhere; }
  .terminal-v1-1a .session-matrix {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 3px;
    overflow: visible;
  }
  .terminal-v1-1a .session-matrix div {
    min-width: 0;
    min-height: 0;
    padding: 5px;
    overflow-wrap: anywhere;
  }
  .terminal-v1-1a .session-matrix dt,
  .terminal-v1-1a .session-matrix dd { font-size: 10px; }
  .terminal-v1-1a > :not(.professional-side-nav):not(.terminal-mobile-dock):not(.chart-tool-overlay):not(.detail-drawer-overlay):not(.stock-detail-drawer) { margin-left: 0; }
  .terminal-v1-1a .terminal-mobile-dock {
    grid-template-columns: repeat(5, minmax(0, 1fr));
    min-height: calc(70px + env(safe-area-inset-bottom));
    padding: 7px 5px calc(7px + env(safe-area-inset-bottom));
    border-top-color: var(--pro-line);
    background: rgba(10, 12, 22, .98);
  }
  .terminal-v1-1a .chart-tool-overlay,
  .terminal-v1-1a .chart-tool-drawer {
    bottom: calc(70px + env(safe-area-inset-bottom));
  }
  .terminal-v1-1a .chart-tool-drawer button,
  .terminal-v1-1a .chart-tool-drawer select {
    min-height: 44px;
  }
  .terminal-v1-1a .terminal-mobile-dock button,
  .terminal-v1-1a .terminal-mobile-dock a {
    min-width: 0;
    min-height: 48px;
    border: 0;
    border-radius: 6px;
    padding: 6px 3px;
    background: transparent;
    color: var(--pro-muted);
    text-align: center;
    text-decoration: none;
  }
  .terminal-v1-1a .terminal-mobile-dock strong,
  .terminal-v1-1a .terminal-mobile-dock span { display: block; }
  .terminal-v1-1a .terminal-mobile-dock strong { font-size: 12px; }
  .terminal-v1-1a .terminal-mobile-dock span { margin-top: 3px; font-size: 10px; }
  .terminal-v1-1a .terminal-mobile-dock [aria-current="true"] { color: var(--pro-cyan); }
  .terminal-v1-1a .terminal-mobile-dock .mobile-position-dock {
    position: relative;
    align-self: end;
    min-height: 72px;
    margin-top: -26px;
    border: 4px solid var(--pro-bg);
    border-radius: 28px 28px 8px 8px;
    background: #123c38;
    color: var(--pro-text);
    box-shadow: 0 -8px 24px rgba(53, 215, 193, .18);
  }
  .terminal-v1-1a .terminal-mobile-dock .mobile-position-dock[data-position-tone="rise"] { background: #7f2733; }
  .terminal-v1-1a .terminal-mobile-dock .mobile-position-dock[data-position-tone="fall"] { background: #14533f; }
  .terminal-v1-1a .terminal-mobile-dock .mobile-position-dock[data-position-tone="neutral"] { background: #16413a; }
  .terminal-v1-1a .terminal-mobile-dock .mobile-position-dock[data-position-state="risk"] { background: #704516; color: #fff1cd; }
  .terminal-v1-1a .terminal-mobile-dock .mobile-position-dock[data-position-state="unavailable"] { background: #2b3040; color: #d6dae4; }
  .terminal-v1-1a .terminal-mobile-dock .mobile-position-dock[data-position-state="empty"] { background: #16413a; }
}
