/* In-place instruments: no overlays on market charts, no fabricated activity. */
.jbot-instruments {
  --ji-ice: #98cfff;
  --ji-mint: #9ae6c1;
  --ji-gold: #f0d18d;
  --ji-red: #ffaba6;
  --ji-accent: var(--jbot-product-accent, #98cfff);
}
.jbot-instruments[data-instrument-product="volume"] { --ji-accent: #a9e6a0; }
.jbot-instruments[data-instrument-product="news"] { --ji-accent: #f0d18d; }
.jbot-instruments[data-instrument-product="ipo"] { --ji-accent: #98cfff; }
.jbot-instruments[data-instrument-product="long"] { --ji-accent: #9ae6c1; }
.jbot-instruments[data-instrument-product="short"] { --ji-accent: #ffaba6; }
.jbot-instruments[data-instrument-product="crypto"] { --ji-accent: #e7c98c; }
.jbot-instruments :is(.topbar, .command-topbar, .ops-header) {
  border-bottom-color: #3a4b56;
  box-shadow: 0 1px 0 #ffffff06, inset 0 1px 0 #ffffff06;
}
.jbot-instruments :is(.chart-panel, #chartPanel, #catalystStage) { border-color: #3c4e5b; }
.jbot-instruments :is(.panel-header, .chart-head, .chart-header) { border-bottom-color: #31424d; }
.jbot-instruments :is(.target-chip.active, .queue-table tr.selected, .catalyst-row.selected) { box-shadow: inset 3px 0 0 var(--ji-accent); }
.jbot-instruments .ji-value {
  font-variant-numeric: tabular-nums lining-nums;
  outline: 1px solid transparent;
  outline-offset: 3px;
  border-radius: 2px;
}
.jbot-instruments .ji-motion {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  min-width: 34px;
  height: 34px;
  flex: 0 0 34px;
  padding: 7px;
  border: 1px solid #465a67;
  border-radius: 6px;
  color: #c5d1d9;
  background: #142028;
  cursor: pointer;
  box-sizing: border-box;
}
.jbot-instruments .ji-motion svg { width: 19px; height: 19px; }
.jbot-instruments .ji-motion[aria-pressed="true"] { border-color: #517083; color: var(--ji-ice); background: #172c3b; }
.jbot-instruments .ji-motion:hover { border-color: #98cfff; background: #20323e; }
.jbot-instruments .ji-motion:focus-visible { outline: 2px solid var(--ji-ice); outline-offset: 3px; }
.jbot-instruments .ji-motion:disabled { opacity: .7; cursor: default; }
.jbot-instruments .ji-trace {
  display: block;
  grid-column: 1 / -1;
  width: 100%;
  height: 18px;
  min-height: 18px;
  max-height: 18px;
  overflow: visible;
  margin-top: 5px;
  color: var(--ji-accent);
}
.ji-trace-grid { stroke: #7892a13b; stroke-width: .65; vector-effect: non-scaling-stroke; }
.ji-trace-line { stroke: currentColor; stroke-width: 1.35; vector-effect: non-scaling-stroke; }
.ji-trace-tip { fill: currentColor; }
.jbot-instruments .ji-traced > strong:not(.positive):not(.negative):not(.good):not(.warn) { color: #f1f6fa; }
.jbot-instruments .ji-traced > :is(span, small):not(.positive):not(.negative):not(.good):not(.warn) { color: #b4c5cf; }
.jbot-instruments :is(.score-ring, .dial-face, #signalDial, #aiDial, .chart-focus-score > strong).ji-dial {
  position: relative;
  isolation: isolate;
  background: #101a22;
  border: 0;
  box-shadow: inset 0 0 0 1px #344751;
  border-radius: 50%;
}
.jbot-instruments .ji-dial::before,
.jbot-instruments .ji-dial::after { content: none !important; }
.jbot-instruments .ji-dial .ji-dial-art {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: -1;
}
.ji-dial-ticks { stroke: #67808e; stroke-width: 1; }
.ji-dial-track { stroke: #31434f; stroke-width: 4; }
.ji-dial-fill { stroke: var(--ji-accent); stroke-width: 4; stroke-linecap: round; }
.jbot-instruments .dial.danger { --ji-accent: var(--ji-red); }
.jbot-instruments .dial.probe { --ji-accent: var(--ji-gold); }
.jbot-instruments .ji-dial > :is(span, small, strong) { position: relative; color: #f4f7fa; }
.jbot-instruments .ji-dial > small { color: #b4c5cf; }
.jbot-instruments #chartFocusPanel .chart-focus-score {
  display: grid;
  grid-template-columns: 64px minmax(0, 1fr);
  gap: 3px 12px;
  align-items: center;
}
.jbot-instruments #chartFocusPanel .chart-focus-score > strong {
  display: grid;
  place-items: center;
  width: 64px;
  height: 64px;
  font-size: 22px;
  grid-column: 1;
  grid-row: 1 / 3;
}
.jbot-instruments #chartFocusPanel .chart-focus-score > :is(span,small) { grid-column: 2; }
.jbot-instruments #chartFocusPanel .chart-focus-card.bad { --ji-accent: var(--ji-red); }
.jbot-instruments #chartFocusPanel .chart-focus-card.watch { --ji-accent: var(--ji-gold); }
.jbot-instruments .factor-fill { background: var(--ji-accent); box-shadow: inset 0 1px 0 #ffffff40; }
.jbot-instruments .factor-track {
  height: 5px;
  mask-image: repeating-linear-gradient(to right, #000 0 5px, transparent 5px 7px);
}
.jbot-instruments .ji-cell-meter {
  background-image: linear-gradient(to right, var(--ji-accent) var(--ji-level), transparent var(--ji-level));
  background-size: calc(100% - 16px) 2px;
  background-position: center calc(100% - 4px);
  background-repeat: no-repeat;
}
.jbot-instruments .factor-row > :is(strong, span) { font-size: 11px; }
.jbot-instruments .market-ribbon > div > span { font-size: 10px; }
.jbot-instruments .market-ribbon > div > strong { font-size: 21px; }
/* Full-width instrument rows keep diagnostic labels readable beside the plot. */
@layer jbot-desk {
body.jbot-instruments.jbot-unified-shell.jbot-volume-parity[data-jbot-product] #chartPanel #cockpitGauges {
  grid-template-columns: minmax(0, 1fr) !important;
  grid-template-rows: none !important;
  height: auto !important;
  gap: 0 !important;
}
body.jbot-instruments.jbot-unified-shell.jbot-volume-parity[data-jbot-product] #chartPanel #cockpitGauges .dial {
  display: grid !important;
  grid-template-columns: 40px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 10px !important;
  min-height: 50px !important;
  height: auto !important;
  padding: 5px 2px !important;
  background: transparent !important;
  border: 0 !important;
  border-bottom: 1px solid #30404a !important;
  border-radius: 0 !important;
}
body.jbot-instruments.jbot-unified-shell.jbot-volume-parity[data-jbot-product] #chartPanel #cockpitGauges .dial-face {
  width: 40px !important; height: 40px !important; min-width: 40px !important;
}
body.jbot-instruments.jbot-unified-shell.jbot-volume-parity[data-jbot-product] #chartPanel #cockpitGauges .dial-face span {
  font-size: 13px !important;
}
body.jbot-instruments.jbot-unified-shell.jbot-volume-parity[data-jbot-product] #chartPanel #cockpitGauges .dial strong {
  font-size: 12px !important;
}
body.jbot-instruments.jbot-unified-shell.jbot-volume-parity[data-jbot-product] #chartPanel #cockpitGauges .dial small {
  font-size: 11px !important; line-height: 1.4 !important;
  overflow-wrap: normal !important; word-break: normal !important;
}
}
.jbot-instruments .ji-meter {
  width: 100%;
  max-width: 128px;
  height: 5px;
  margin-top: 9px;
  background: #3b505b;
  mask-image: repeating-linear-gradient(to right, #000 0 5px, transparent 5px 7px);
}
.jbot-instruments .ji-meter[hidden] { display: none; }
.jbot-instruments .ji-meter > i { display: block; height: 100%; background: var(--ji-gold); }
.jbot-instruments .ji-engine-art { display: block; width: 100%; max-width: 52px; height: 38px; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.jbot-instruments .engine-tile { grid-template-columns: 52px minmax(0, 1fr) 114px 20px; }
.jbot-instruments .engine-number { color: var(--accent, #98cfff); }
.jbot-instruments .engine-tile.volume { --accent: #a9e6a0; }
.jbot-instruments .engine-tile.news { --accent: #f0d18d; }
.jbot-instruments .engine-tile.ipo { --accent: #98cfff; }
.jbot-instruments .engine-tile.long { --accent: #9ae6c1; }
.jbot-instruments .engine-tile.short { --accent: #ffaba6; }
.jbot-instruments[data-instrument-motion="on"] :is(.factor-fill, .factor-bar > i, .score-bar > i, .ji-meter > i) { transition: width 700ms cubic-bezier(.2,.8,.2,1); }
.jbot-instruments[data-instrument-motion="on"] :is(.engine-tile, .target-chip, .ji-motion) { transition: border-color 160ms, background-color 160ms, box-shadow 160ms; }
.jbot-instruments[data-instrument-motion="on"] .engine-tile:hover .ji-engine-art { animation: ji-reveal 650ms ease-out both; }
@keyframes ji-reveal {
  from { stroke-dasharray: 250; stroke-dashoffset: 250; opacity: .5; }
  to { stroke-dasharray: 250; stroke-dashoffset: 0; opacity: 1; }
}
/* Existing cinematic effects also obey the shared quiet setting. */
.jbot-instruments[data-instrument-motion="off"] *,
.jbot-instruments[data-instrument-motion="off"] *::before,
.jbot-instruments[data-instrument-motion="off"] *::after {
  animation: none !important; transition: none !important; scroll-behavior: auto !important;
}
@media (prefers-reduced-motion: reduce) {
  .jbot-instruments *, .jbot-instruments *::before, .jbot-instruments *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}
@media (max-width: 640px) {
  .jbot-instruments .ji-motion { width: 32px; min-width: 32px; height: 32px; flex-basis: 32px; }
  .jbot-instruments .ji-trace { height: 14px; min-height: 14px; max-height: 14px; }
  .jbot-instruments[data-instrument-product="watchlist"] .topbar { gap: 12px; }
  .jbot-instruments[data-instrument-product="watchlist"] .topbar nav { gap: 12px; }
  .jbot-instruments[data-instrument-product="watchlist"] .topbar .account { white-space: nowrap; }
  .jbot-instruments[data-instrument-product="watchlist"] .topbar .account span { display: none; }
}
@media (max-width: 760px) {
  .jbot-instruments .engine-tile { grid-template-columns: 32px minmax(0, 1fr) 24px; }
}

/* Vivid is a presentation mode, never an input to scores or trade decisions. */
.jbot-instruments[data-instrument-style="vivid"] {
  --ji-ice: #65dcff;
  --ji-mint: #56efb0;
  --ji-gold: #ffda68;
  --ji-red: #ff8b9b;
  --ji-accent: #65dcff;
  --ji-edge: #38464d;
  --ji-surface: #101517;
  color-scheme: dark;
}
.jbot-instruments[data-instrument-style="vivid"][data-instrument-product="long"],
.jbot-instruments[data-instrument-style="vivid"][data-instrument-product="volume"] { --ji-accent: #56efb0; }
.jbot-instruments[data-instrument-style="vivid"][data-instrument-product="short"] { --ji-accent: #ff8b9b; }
.jbot-instruments[data-instrument-style="vivid"][data-instrument-product="news"],
.jbot-instruments[data-instrument-style="vivid"][data-instrument-product="rumor"],
.jbot-instruments[data-instrument-style="vivid"][data-instrument-product="crypto"] { --ji-accent: #ffda68; }
.jbot-instruments[data-instrument-style="vivid"] :is(.topbar, .command-topbar, .ops-header, .rm-header, .access-header) {
  border-bottom: 1px solid #41515a;
  box-shadow: 0 1px 0 #000, 0 8px 28px #0004, inset 0 2px 0 color-mix(in srgb, var(--ji-accent) 80%, transparent);
}
.jbot-instruments[data-instrument-style="vivid"] :is(.jbot-suite-switcher, .jbot-suite-nav, .suite-nav, .product-rail) {
  border-color: #34444c;
  background: #0c1012;
}
.jbot-instruments[data-instrument-style="vivid"] :is(.jbot-suite-switcher, .jbot-suite-nav, .suite-nav, .product-rail, .rm-header nav) a {
  color: #dae5eb;
}
.jbot-instruments[data-instrument-style="vivid"] :is(.jbot-suite-switcher, .jbot-suite-nav, .suite-nav, .product-rail, .rm-header nav) a:hover {
  color: var(--ji-accent);
  background: #1a252a;
}
.jbot-instruments[data-instrument-style="vivid"] :is(.jbot-suite-switcher, .jbot-suite-nav, .suite-nav, .product-rail, .rm-header nav) a[aria-current="page"] {
  color: #fff;
  box-shadow: inset 0 -3px 0 var(--ji-accent), inset 0 -8px 16px -12px var(--ji-accent);
}
.jbot-instruments[data-instrument-style="vivid"] :is(.chart-panel, #chartPanel, #catalystStage, .rm-board, .rm-telemetry) {
  border-color: #41515a;
  box-shadow: inset 0 1px 0 #ffffff0d, 0 3px 12px #0003;
}
.jbot-instruments[data-instrument-style="vivid"] :is(.panel-header, .chart-head, .chart-header) {
  border-top: 1px solid color-mix(in srgb, var(--ji-accent) 40%, #151a1e);
  background: #111a1e;
}
.jbot-instruments[data-instrument-style="vivid"] :is(.eyebrow, .kicker, .panel-header > p) { color: var(--ji-accent); }
.jbot-instruments[data-instrument-style="vivid"] :is(.ji-dial, #chartFocusPanel .ji-dial) {
  background: #090d10;
  box-shadow: 0 0 0 3px #191f24, 0 0 0 4px #3e4c55, inset 0 0 16px #000, 0 0 16px color-mix(in srgb, var(--ji-accent) 12%, transparent);
}
.jbot-instruments .ji-dial-bezel { stroke: #55646c; stroke-width: 1; }
.jbot-instruments .ji-dial-inner { stroke: #344149; stroke-width: .7; stroke-dasharray: 1 3; }
.jbot-instruments .ji-dial-needle { fill: #f9fbff; transform-origin: 50px 50px; }
.jbot-instruments[data-instrument-style="vivid"] .ji-dial-ticks { stroke: #a1b3bd; stroke-width: 1; }
.jbot-instruments[data-instrument-style="vivid"] .ji-dial-fill { stroke-width: 5; filter: drop-shadow(0 0 2px var(--ji-accent)); }
.jbot-instruments[data-instrument-style="vivid"] .ji-dial-track { stroke: #26353d; stroke-width: 5; }
.jbot-instruments[data-instrument-style="vivid"] .ji-trace-line { stroke-width: 1.7; filter: drop-shadow(0 1px 2px color-mix(in srgb, var(--ji-accent) 40%, transparent)); }
.jbot-instruments[data-instrument-style="vivid"] .factor-track { height: 7px; }
.jbot-instruments[data-instrument-style="vivid"] .factor-fill { box-shadow: inset 0 1px 0 #fff8, 0 0 8px var(--ji-accent); }
.jbot-instruments[data-instrument-style="vivid"] :is(.metric, .market-ribbon > div, .totals > div, .rm-counters > div:not(.rm-balance)) {
  border-top: 2px solid var(--ji-accent);
}
.jbot-instruments[data-instrument-style="vivid"] :is(.metric, .market-ribbon > div, .totals > div, .rm-counters > div):nth-child(4n+2) { --ji-accent: #ffda68; }
.jbot-instruments[data-instrument-style="vivid"] :is(.metric, .market-ribbon > div, .totals > div, .rm-counters > div):nth-child(4n+3) { --ji-accent: #65dcff; }
.jbot-instruments[data-instrument-style="vivid"] :is(.metric, .market-ribbon > div, .totals > div, .rm-counters > div):nth-child(4n+4) { --ji-accent: #e0adff; }
.jbot-instruments[data-instrument-style="vivid"] :is(.metric > strong, .market-ribbon > div > strong, .totals > div > strong, .rm-counters > div > strong) {
  text-shadow: 0 0 22px #ffffff15;
  font-variant-numeric: tabular-nums;
}
.jbot-instruments[data-instrument-style="vivid"] .engine-tile {
  border-color: #3d4a51;
  border-left: 3px solid var(--accent);
  background: #111719;
}
.jbot-instruments[data-instrument-style="vivid"] .engine-tile:hover {
  border-color: var(--accent);
  background: #192326;
  box-shadow: inset 0 0 22px -18px var(--accent), 0 0 18px -12px var(--accent);
}
.jbot-instruments[data-instrument-style="vivid"] .engine-tile.volume { --accent: #56efb0; }
.jbot-instruments[data-instrument-style="vivid"] .engine-tile.news { --accent: #ffda68; }
.jbot-instruments[data-instrument-style="vivid"] .engine-tile.ipo { --accent: #65dcff; }
.jbot-instruments[data-instrument-style="vivid"] .engine-tile.long { --accent: #b5f56e; }
.jbot-instruments[data-instrument-style="vivid"] .engine-tile.short { --accent: #ff8b9b; }
.jbot-instruments[data-instrument-style="vivid"] .ji-engine-art { filter: drop-shadow(0 0 3px color-mix(in srgb, currentColor 45%, transparent)); }
.jbot-instruments[data-instrument-style="vivid"] :is(.engine-number, .brand-glyph, .logo-mark, .rm-brand img) { filter: drop-shadow(0 0 9px #61eabd26); }
.jbot-instruments[data-instrument-style="vivid"] :is(.rm-dial, .rm-mini-dial) { filter: drop-shadow(0 0 4px #ffda682c); }
.jbot-instruments[data-instrument-style="vivid"] :is(.target-chip.active, .target-chip.selected) {
  background: #182329;
  border-color: #53616a;
  box-shadow: inset 3px 0 0 var(--ji-accent), inset 0 1px 0 #ffffff12;
}
.jbot-instruments[data-instrument-style="vivid"] :is(.queue-table, .sheet-table, #queueTable, .rm-board table, .positions-table) tbody tr:hover { background: #1b272e; }
.jbot-instruments[data-instrument-style="vivid"] :is(.sheet-table, .rm-board table) thead th { color: #c1d0da; background: #182127; }
.jbot-instruments[data-instrument-style="vivid"] :is(.sheet-table, .rm-board table) tbody td { border-bottom-color: #2b363d; }
.jbot-instruments[data-instrument-style="vivid"] .ji-motion { color: var(--ji-accent); border-color: #52717d; background: #112129; }
.jbot-instruments .ji-motion:not(:has(svg)) { width: auto; min-width: 58px; flex-basis: auto; font-size: 11px; }
.jbot-instruments .ji-motion:hover { box-shadow: 0 0 12px #65dcff26; }
.jbot-instruments[data-instrument-style="vivid"] :is(.access-console, .auth-card) { border: 1px solid #52727e; box-shadow: 0 16px 70px #0008, inset 0 2px 0 #65dcff; }
.jbot-instruments[data-instrument-style="vivid"] .product-rail a { border-top: 2px solid #65dcff; }
.jbot-instruments[data-instrument-style="vivid"] .product-rail a:nth-child(2) { border-top-color: #56efb0; }
.jbot-instruments[data-instrument-style="vivid"] .product-rail a:nth-child(3) { border-top-color: #ffda68; }
.jbot-instruments[data-instrument-style="vivid"] .product-rail a:nth-child(4) { border-top-color: #b5f56e; }
.jbot-instruments[data-instrument-style="vivid"] .product-rail a:nth-child(5) { border-top-color: #ff8b9b; }
/* One shared display control; quiet mode preserves semantic gain/loss colors. */
.jbot-instruments .ji-display-dialog {
  position: fixed; inset: 0; margin: auto; width: min(420px, calc(100vw - 32px));
  max-height: calc(100dvh - 32px); padding: 24px; box-sizing: border-box;
  color: #f0f5f8; background: #11191e; border: 1px solid #57717f; border-radius: 8px;
  box-shadow: 0 32px 100px #000b; font: 14px/1.5 system-ui, sans-serif; text-align: left;
}
.jbot-instruments .ji-display-dialog::backdrop { background: #03070bc9; backdrop-filter: blur(5px); }
.jbot-instruments .ji-display-dialog form { display: block; margin: 0; }
.jbot-instruments .ji-display-dialog header { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 22px; }
.jbot-instruments .ji-display-dialog h2 { margin: 0; color: #fff; font-size: 22px; letter-spacing: 0; }
.jbot-instruments .ji-display-dialog .ji-close { background: #203039; border: 1px solid #516773; color: #e8f0f4; padding: 7px 12px; border-radius: 5px; cursor: pointer; font: inherit; }
.jbot-instruments .ji-display-dialog fieldset { padding: 0; margin: 0 0 22px; border: 0; }
.jbot-instruments .ji-display-dialog legend { font: inherit; color: #c3d0d8; margin: 0 0 12px; padding: 0; }
.jbot-instruments .ji-style-options { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.jbot-instruments .ji-style-options label { display: block; margin: 0; cursor: pointer; position: relative; }
.jbot-instruments .ji-style-options input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.jbot-instruments .ji-style-options span { display: flex; gap: 12px; align-items: center; padding: 16px 12px; border: 1px solid #445964; background: #17232a; border-radius: 6px; color: #e5eef3; }
.jbot-instruments .ji-style-options input:checked + span { border-color: #65dcff; background: #18303b; box-shadow: inset 0 0 0 1px #65dcff; }
.jbot-instruments .ji-style-options input:focus-visible + span { outline: 2px solid #fff; outline-offset: 3px; }
.jbot-instruments .ji-swatch { width: 24px; height: 24px; border-radius: 50%; box-sizing: border-box; border: 3px solid #94a5b0; background: #131e24; }
.jbot-instruments .ji-swatch-vivid { border-color: #65dcff #56efb0 #ffda68 #ff8b9b; box-shadow: 0 0 12px #65dcff3a; }
.jbot-instruments .ji-motion-option { display: flex; justify-content: space-between; align-items: center; gap: 16px; padding: 16px 0 0; margin: 0; border-top: 1px solid #364953; cursor: pointer; }
.jbot-instruments .ji-motion-option input { appearance: none; width: 42px; height: 24px; flex: 0 0 42px; border: 1px solid #6c8491; border-radius: 20px; background: #32434c; position: relative; padding: 0; margin: 0; cursor: pointer; }
.jbot-instruments .ji-motion-option input::before { content: ''; position: absolute; top: 3px; left: 3px; width: 16px; height: 16px; border-radius: 50%; background: #e0eaf0; }
.jbot-instruments .ji-motion-option input:checked { background: #65dcff; border-color: #65dcff; }
.jbot-instruments .ji-motion-option input:checked::before { left: 21px; background: #0b2029; }
.jbot-instruments .ji-motion-option input:disabled { opacity: .5; cursor: default; }
.jbot-instruments .ji-display-dialog p { color: #b5c7d1; font-size: 12px; margin-bottom: 0; }
@media (min-width: 900px) {
  .jbot-instruments .command-topbar { display: grid; grid-template-columns: 1fr auto auto; gap: 10px 20px; align-items: center; }
  .jbot-instruments .command-topbar .command-brand { grid-column: 1; grid-row: 1; }
  .jbot-instruments .command-topbar .command-account { grid-column: 2; grid-row: 1; }
  .jbot-instruments .command-topbar > .jbot-language { grid-column: 3; grid-row: 1; }
  .jbot-instruments .command-topbar > nav { grid-column: 1 / -1; grid-row: 2; justify-content: space-between; border-top: 1px solid #303e47; padding-top: 8px; }
}
@layer jbot-desk {
  body.jbot-instruments[data-instrument-style="vivid"].jbot-unified-shell.jbot-volume-parity[data-jbot-product] :is(.suite-switcher, .app-suite-switcher) > .suite-chip {
    --ji-tab: #65dcff;
    color: var(--ji-tab) !important; background: #10171b !important;
    border-bottom: 2px solid color-mix(in srgb, var(--ji-tab) 32%, #182127) !important;
  }
  body.jbot-instruments[data-instrument-style="vivid"].jbot-unified-shell.jbot-volume-parity[data-jbot-product] :is(.suite-switcher, .app-suite-switcher) > .suite-chip:is(.long,.volume,.watchlist) { --ji-tab: #56efb0; }
  body.jbot-instruments[data-instrument-style="vivid"].jbot-unified-shell.jbot-volume-parity[data-jbot-product] :is(.suite-switcher, .app-suite-switcher) > .suite-chip.news { --ji-tab: #ffda68; }
  body.jbot-instruments[data-instrument-style="vivid"].jbot-unified-shell.jbot-volume-parity[data-jbot-product] :is(.suite-switcher, .app-suite-switcher) > .suite-chip.short { --ji-tab: #ff8b9b; }
  body.jbot-instruments[data-instrument-style="vivid"].jbot-unified-shell.jbot-volume-parity[data-jbot-product] :is(.suite-switcher, .app-suite-switcher) > .suite-chip.active {
    border-bottom-color: var(--ji-tab) !important;
    box-shadow: inset 0 2px 0 color-mix(in srgb, var(--ji-tab) 45%, transparent), inset 0 -18px 24px -22px var(--ji-tab) !important;
    background: #1c292e !important;
  }
  body.jbot-instruments[data-instrument-style="vivid"].jbot-unified-shell.jbot-volume-parity[data-jbot-product] :is(.suite-switcher, .app-suite-switcher) > .suite-chip > span { color: inherit !important; }
  body.jbot-instruments[data-instrument-style="vivid"].jbot-unified-shell.jbot-volume-parity[data-jbot-product] #pulseGrid tbody td {
    border-top: 2px solid #65dcff !important;
    background: #111c22 !important;
    padding-top: 10px !important; padding-bottom: 10px !important;
  }
  body.jbot-instruments[data-instrument-style="vivid"].jbot-unified-shell.jbot-volume-parity[data-jbot-product] #pulseGrid tbody td:nth-child(2n) { border-top-color: #ffda68 !important; }
  body.jbot-instruments[data-instrument-style="vivid"].jbot-unified-shell.jbot-volume-parity[data-jbot-product] #pulseGrid tbody td:nth-child(3n) { border-top-color: #56efb0 !important; }
  body.jbot-instruments[data-instrument-style="vivid"].jbot-unified-shell.jbot-volume-parity[data-jbot-product] #pulseGrid tbody td:last-child { border-top-color: #ff8b9b !important; }
  body.jbot-instruments[data-instrument-style="vivid"].jbot-unified-shell.jbot-volume-parity[data-jbot-product] :is(.topbar,.jbot-shell-topbar) { border-top: 2px solid var(--ji-accent) !important; }
  body.jbot-instruments[data-instrument-style="vivid"].jbot-unified-shell.jbot-volume-parity[data-jbot-product] #pulseGrid tbody td > strong { font-size: 13px !important; color: #f4f8fa !important; }
  body.jbot-instruments[data-instrument-style="vivid"].jbot-unified-shell.jbot-volume-parity[data-jbot-product] #chartPanel #cockpitGauges .dial {
    grid-template-columns: 48px minmax(0, 1fr) !important; gap: 14px !important;
    min-height: 64px !important; padding: 8px 6px !important;
  }
  body.jbot-instruments[data-instrument-style="vivid"].jbot-unified-shell.jbot-volume-parity[data-jbot-product] #chartPanel #cockpitGauges .dial-face {
    width: 48px !important; height: 48px !important; min-width: 48px !important;
  }
  body.jbot-instruments[data-instrument-style="vivid"].jbot-unified-shell.jbot-volume-parity[data-jbot-product] #chartPanel #cockpitGauges .dial:nth-child(2) { --ji-accent: #65dcff; }
  body.jbot-instruments[data-instrument-style="vivid"].jbot-unified-shell.jbot-volume-parity[data-jbot-product] #chartPanel #cockpitGauges .dial:nth-child(3) { --ji-accent: #ffda68; }
  body.jbot-instruments[data-instrument-style="vivid"].jbot-unified-shell.jbot-volume-parity[data-jbot-product] #chartPanel #cockpitGauges .dial:nth-child(4) { --ji-accent: #ff8b9b; }
  body.jbot-instruments[data-instrument-style="vivid"].jbot-unified-shell.jbot-volume-parity[data-jbot-product] #chartPanel #cockpitGauges .dial:nth-child(5) { --ji-accent: #e0adff; }
}

/* The JBOT signature: a stable monogram, travelling light and deliberate feedback. */
.jbot-instruments .ji-brand {
  position: relative; display: inline-block; vertical-align: middle;
  width: var(--ji-logo-size, 36px); height: var(--ji-logo-size, 36px);
  max-width: 100%; max-height: 100%; flex: 0 0 auto; line-height: 0;
}
.jbot-instruments .ji-brand > img { width: 100%; height: 100%; opacity: 0; }
.jbot-instruments .brand-glyph.ji-brand { background: none; }
.jbot-instruments .ji-branded-link::before { display: none; }
.jbot-instruments :is(.auth-stage, .billing-success-shell) > .ji-motion { justify-self: center; margin-top: 12px; }
.jbot-instruments .ji-brand-art { position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible; }
.jbot-instruments .ji-brand-light { stroke-dasharray: 11 89; stroke-dashoffset: 100; opacity: 0; }
.jbot-instruments[data-instrument-style="vivid"][data-instrument-motion="on"] .ji-in-view .ji-brand-light {
  animation: ji-signature-light 10s ease-in-out infinite;
}
.jbot-instruments[data-instrument-motion="on"] .ji-brand .ji-brand-crown { animation: ji-crown-enter 800ms cubic-bezier(.2,.8,.2,1) both; }
.jbot-instruments[data-instrument-motion="on"] .ji-brand .ji-brand-return { animation: ji-return-enter 900ms cubic-bezier(.2,.8,.2,1) both; }
.jbot-instruments[data-instrument-motion="on"] a:hover .ji-brand-crown { transform: translateY(-1.5px); transition: transform 250ms; }
.jbot-instruments[data-instrument-style="vivid"] .ji-brand { filter: drop-shadow(0 0 7px #b9f48a22); }
@keyframes ji-crown-enter { from { opacity: .2; transform: translateX(-5px); } to { opacity: 1; transform: none; } }
@keyframes ji-return-enter { from { opacity: .2; transform: translateY(5px); } to { opacity: 1; transform: none; } }
@keyframes ji-signature-light {
  0%, 62%, 100% { opacity: 0; stroke-dashoffset: 100; }
  65% { opacity: .9; stroke-dashoffset: 100; }
  90% { opacity: .9; stroke-dashoffset: 0; }
  94% { opacity: 0; stroke-dashoffset: 0; }
}
.jbot-instruments .ji-signal-rail { display: none; pointer-events: none; }
.jbot-instruments .ji-rail-host { position: relative; }
.jbot-instruments[data-instrument-style="vivid"] .ji-signal-rail {
  display: block; position: absolute; height: 2px; bottom: 0; inset-inline: 0; overflow: hidden;
}
.jbot-instruments .ji-signal-rail::after {
  content: ''; display: block; width: 13%; height: 100%; opacity: 0;
  background: var(--ji-accent); box-shadow: 0 0 10px var(--ji-accent);
}
/* Only a real application loading state activates the scanning light. */
.jbot-instruments[data-instrument-motion="on"]:has(button.loading, button[aria-busy="true"], .scan-loader:not([hidden]), .loading-hud:not([hidden]), .simulation-hud:not([hidden])) .ji-signal-rail::after {
  animation: ji-working 2.2s ease-in-out infinite;
}
@keyframes ji-working { 0% { transform: translateX(-110%); opacity: 0; } 15%, 85% { opacity: .8; } 100% { transform: translateX(850%); opacity: 0; } }
.jbot-instruments :is(.loader-gear, .loading-gear, .simulation-hud .gear) {
  position: relative !important; width: 42px !important; height: 42px !important; flex: 0 0 42px !important;
  border: 0 !important; border-radius: 0 !important; box-shadow: none !important;
  background: url('/assets/jbot-suite-mark.svg?v=20260924-brand02') center / 26px 26px no-repeat !important;
  animation: none !important; clip-path: none !important;
}
.jbot-instruments :is(.loader-gear, .loading-gear, .simulation-hud .gear) > :is(span, i) { display: none !important; }
.jbot-instruments :is(.loader-gear, .loading-gear, .simulation-hud .gear)::before,
.jbot-instruments :is(.loader-gear, .loading-gear, .simulation-hud .gear)::after {
  content: ''; position: absolute; inset: 0; width: auto; height: auto; border: 1.5px solid #44574e;
  border-radius: 50%; background: none; box-shadow: none; transform: none;
}
.jbot-instruments :is(.loader-gear, .loading-gear, .simulation-hud .gear)::before { border-top-color: #b9f48a; border-right-color: #b9f48a; }
.jbot-instruments :is(.loader-gear, .loading-gear, .simulation-hud .gear)::after { inset: 4px; border-color: transparent; border-bottom-color: #65dcff; }
.jbot-instruments[data-instrument-motion="on"] :is(.loader-gear, .loading-gear, .simulation-hud .gear)::before { animation: ji-orbit 2.1s linear infinite; }
.jbot-instruments[data-instrument-motion="on"] :is(.loader-gear, .loading-gear, .simulation-hud .gear)::after { animation: ji-orbit 3.2s linear infinite reverse; }
@keyframes ji-orbit { to { transform: rotate(360deg); } }
.jbot-instruments[data-instrument-style="vivid"] :is(.suite-chip, .engine-tile, .product-rail > a, .product-rail > span) { position: relative; }
.jbot-instruments[data-instrument-motion="on"] :is(.suite-chip, .engine-tile, .product-rail > a, .product-rail > span)::after {
  content: ''; position: absolute; pointer-events: none; bottom: 0; left: 12px; right: 12px; height: 2px;
  background: var(--accent, var(--product-color, var(--ji-accent))); transform: scaleX(0); transform-origin: left;
  transition: transform 260ms cubic-bezier(.2,.8,.2,1); box-shadow: 0 0 9px currentColor;
}
.jbot-instruments[data-instrument-motion="on"] :is(.suite-chip, .engine-tile, .product-rail > a, .product-rail > span):is(:hover, :focus-visible)::after { transform: scaleX(1); }
.jbot-instruments[data-instrument-motion="on"] :is(button, a, summary) { transition: border-color 160ms, background-color 160ms, color 160ms; }
.jbot-instruments[data-instrument-style="vivid"] :is(.ji-value, .ji-trace-line) { font-variant-numeric: tabular-nums; }
.jbot-instruments[data-instrument-style="vivid"] .ji-trace-tip { fill: #f4fbff; }
.jbot-instruments[data-instrument-style="vivid"] :is(.metric, .market-ribbon > div, .totals > div, .rm-counters > div):hover { border-top-color: #f3fcff; }
.jbot-instruments[data-instrument-motion="on"] .ji-in-view .ji-engine-art { animation: ji-reveal 1s ease-out both; }
.jbot-instruments[data-instrument-motion="on"] .ji-in-view:is(.engine-tile):hover .ji-engine-art { animation: ji-reveal 700ms ease-out both; }
.jbot-instruments[data-instrument-style="quiet"] .ji-brand-light { display: none; }
.jbot-instruments[data-instrument-motion="off"] .ji-brand-art { filter: none; }
