:root {
  color-scheme: dark;
  --bg: #000000;
  --bg-raised: #030303;
  --panel: #080808;
  --panel-soft: #050505;
  --panel-hover: #101010;
  --line: #1c1c1c;
  --line-strong: #303030;
  --text: #e7edf6;
  --text-soft: #bdbdbd;
  --muted: #7a7f87;
  --muted-2: #4b4f55;
  --blue: #2962ff;
  --blue-soft: rgba(41, 98, 255, .14);
  --cyan: #26c6da;
  --green: #00c087;
  --green-soft: rgba(0, 192, 135, .12);
  --red: #f0445e;
  --red-soft: rgba(240, 68, 94, .12);
  --amber: #f0a43c;
  --amber-soft: rgba(240, 164, 60, .13);
  --shadow: 0 22px 64px rgba(0, 0, 0, .64);
  --radius: 8px;
  --sidebar: 216px;
  --font-ui: "Avenir Next", "Apple SD Gothic Neo", "Helvetica Neue", sans-serif;
  --font-data: "SFMono-Regular", "SF Mono", Menlo, Monaco, monospace;
}

html[data-theme="light"] {
  color-scheme: light;
  --bg: #edf1f5;
  --bg-raised: #f5f7fa;
  --panel: #ffffff;
  --panel-soft: #f7f9fb;
  --panel-hover: #f1f5fa;
  --line: #dce2ea;
  --line-strong: #c7d0dc;
  --text: #131722;
  --text-soft: #3d4858;
  --muted: #6f7c8f;
  --muted-2: #a4afbd;
  --blue-soft: rgba(41, 98, 255, .09);
  --green-soft: rgba(0, 161, 112, .09);
  --red-soft: rgba(224, 54, 78, .09);
  --amber-soft: rgba(216, 137, 28, .10);
  --green: #089981;
  --red: #e03c55;
  --amber: #d88a1c;
  --shadow: 0 16px 42px rgba(32, 45, 63, .08);
}

html[data-theme="dark"] { color-scheme: dark; }

* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 116px; }
body {
  margin: 0;
  min-width: 320px;
  color: var(--text);
  background: var(--bg);
  font: 14px/1.55 var(--font-ui);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  transition: color .2s ease, background-color .2s ease;
}
html[data-theme="light"] body { background: var(--bg); }

button, select, input { color: inherit; font: inherit; }
button { border: 0; }
a { color: inherit; text-decoration: none; }
.hidden { display: none !important; }
.sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0, 0, 0, 0); }
.positive { color: var(--green) !important; }
.negative { color: var(--red) !important; }
.neutral { color: var(--muted) !important; }
.strategy-facts strong { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.agent-last-action { display: block; }
.icon-sprite { position: absolute; width: 0; height: 0; overflow: hidden; }

/* Shell */
.app-shell { min-height: 100vh; }
.sidebar {
  position: fixed;
  inset: 0 auto 0 0;
  z-index: 70;
  width: var(--sidebar);
  display: flex;
  flex-direction: column;
  padding: 20px 14px 16px;
  color: #dfe7f3;
  background: #030303;
  border-right: 1px solid #181818;
  box-shadow: 16px 0 46px rgba(0, 0, 0, .3);
}
.sidebar::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: .018;
  background-image: linear-gradient(rgba(255,255,255,.25) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.25) 1px, transparent 1px);
  background-size: 28px 28px;
  mask-image: linear-gradient(to bottom, #000, transparent 62%);
}
.brand { position: relative; z-index: 1; display: flex; align-items: center; gap: 11px; min-height: 40px; }
.brand-mark { position: relative; width: 36px; height: 36px; flex: 0 0 36px; display: flex; align-items: flex-end; gap: 3px; padding: 8px; overflow: hidden; background: var(--blue); border-radius: 7px; box-shadow: 0 0 24px rgba(41,98,255,.22); }
.brand-mark::after { content: ""; position: absolute; inset: -24px -15px auto; height: 38px; background: rgba(255,255,255,.15); transform: rotate(-28deg); }
.brand-mark i { position: relative; z-index: 1; display: block; width: 4px; background: #fff; border-radius: 1px 1px 0 0; }
.brand-mark i:nth-child(1) { height: 8px; }.brand-mark i:nth-child(2) { height: 15px; }.brand-mark i:nth-child(3) { height: 20px; }
.brand-copy { display: flex; min-width: 0; flex-direction: column; }
.brand-copy strong { font: 600 12px/1.2 var(--font-data); letter-spacing: -.4px; }
.brand-copy strong span { color: #6f91ff; }
.brand-copy small { margin-top: 5px; color: #596678; font: 500 7px/1 var(--font-data); letter-spacing: .75px; }
.rail-label { position: relative; z-index: 1; margin: 39px 10px 11px; color: #4a5667; font: 500 7px/1 var(--font-data); letter-spacing: 1.1px; }
.main-nav { position: relative; z-index: 1; display: grid; gap: 4px; }
.nav-item { position: relative; min-height: 48px; display: grid; grid-template-columns: 28px 1fr auto; align-items: center; gap: 10px; padding: 0 8px; color: #718096; border: 1px solid transparent; border-radius: 7px; font-size: 11px; font-weight: 600; transition: color .18s ease, background .18s ease, border-color .18s ease, transform .18s ease; }
.nav-item b { color: #354052; font: 500 7px/1 var(--font-data); }
.nav-item:hover { color: #dfe7f3; background: rgba(255,255,255,.03); transform: translateX(2px); }
.nav-item.active { color: #f4f7fb; background: linear-gradient(90deg, rgba(41,98,255,.16), rgba(41,98,255,.065)); border-color: rgba(76,122,255,.2); }
.nav-item.active::before { content: ""; position: absolute; left: -15px; width: 2px; height: 22px; background: #4d79ff; box-shadow: 0 0 12px rgba(41,98,255,.8); }
.nav-item.active b { color: #6f91ff; }
.nav-icon { position: relative; width: 28px; height: 28px; display: grid; place-items: center; flex: 0 0 28px; color: #718096; background: rgba(255,255,255,.018); border: 1px solid rgba(255,255,255,.035); border-radius: 6px; transition: color .18s ease, background .18s ease, border-color .18s ease, box-shadow .18s ease; }
.nav-icon svg { width: 17px; height: 17px; overflow: visible; fill: none; stroke: currentColor; stroke-width: 1.65; stroke-linecap: round; stroke-linejoin: round; }
.nav-item:hover .nav-icon { color: #aebbd0; background: rgba(255,255,255,.035); border-color: rgba(255,255,255,.07); }
.nav-item.active .nav-icon { color: #88a5ff; background: rgba(41,98,255,.14); border-color: rgba(94,134,255,.24); box-shadow: inset 0 0 13px rgba(41,98,255,.08), 0 0 18px rgba(41,98,255,.08); }
.sidebar-foot { position: relative; z-index: 1; margin-top: auto; }
.environment-card { padding: 13px; border: 1px solid #1e2835; border-radius: 7px; background: rgba(255,255,255,.018); }
.environment-head { display: flex; align-items: center; gap: 8px; color: var(--green); font: 600 7px/1 var(--font-data); letter-spacing: .8px; }
.status-orb, .sync-dot { width: 6px; height: 6px; border-radius: 50%; background: var(--green); box-shadow: 0 0 0 3px rgba(0,192,135,.08), 0 0 10px rgba(0,192,135,.45); animation: status-pulse 2.4s ease-in-out infinite; }
.status-orb.paused { background: var(--amber); box-shadow: 0 0 0 3px rgba(240,164,60,.1); animation: none; }
.environment-card > strong { display: block; margin-top: 12px; font: 600 9px/1.2 var(--font-data); letter-spacing: .3px; }
.environment-card p { margin: 5px 0 12px; color: #596678; font: 400 8px/1.55 var(--font-data); }
.environment-line { display: flex; justify-content: space-between; padding-top: 9px; border-top: 1px solid #19212c; color: #536074; font: 500 7px/1 var(--font-data); }.environment-line b { color: var(--green); }
.sidebar-version { display: flex; justify-content: space-between; margin: 14px 2px 0; color: #364153; font: 500 7px/1 var(--font-data); letter-spacing: .7px; }.sidebar-version b { color: #596678; }

.main-content { min-width: 0; margin-left: var(--sidebar); padding: 0 26px 34px; }
.topbar { position: sticky; top: 0; z-index: 45; height: 58px; display: flex; align-items: center; justify-content: space-between; background: color-mix(in srgb, var(--bg) 89%, transparent); border-bottom: 1px solid var(--line); backdrop-filter: blur(18px); }
.topbar-left, .topbar-actions { display: flex; align-items: center; }
.breadcrumb { display: flex; align-items: center; gap: 8px; color: var(--muted); font: 500 8px/1 var(--font-data); letter-spacing: .65px; }.breadcrumb i { color: var(--muted-2); font-style: normal; }.breadcrumb strong { color: var(--text-soft); font-weight: 600; }
.topbar-actions { gap: 9px; }
.last-sync { display: flex; align-items: center; gap: 8px; color: var(--muted); font: 500 8px/1 var(--font-data); }
.sync-dot { width: 5px; height: 5px; }
.readonly-badge { display: inline-flex; align-items: center; gap: 6px; height: 24px; padding: 0 8px; color: #79a0ff; background: var(--blue-soft); border: 1px solid rgba(77,121,255,.2); border-radius: 4px; font: 600 7px/1 var(--font-data); letter-spacing: .5px; }.readonly-badge i { width: 4px; height: 4px; background: currentColor; border-radius: 50%; box-shadow: 0 0 7px currentColor; }
.icon-button, .mobile-menu { display: grid; place-items: center; width: 32px; height: 32px; color: var(--text-soft); background: var(--panel-soft); border: 1px solid var(--line); border-radius: 5px; cursor: pointer; transition: color .18s ease, border-color .18s ease, background .18s ease, transform .18s ease; }.icon-button:hover, .mobile-menu:hover { color: var(--text); border-color: var(--line-strong); background: var(--panel-hover); transform: translateY(-1px); }
.icon-button:disabled { cursor: wait; opacity: .68; transform: none; }
.share-button { width: auto; min-width: 65px; display: flex; align-items: center; justify-content: center; gap: 7px; padding: 0 9px; font: 600 8px/1 var(--font-data); letter-spacing: .15px; }
.share-button.shared { color: var(--green); border-color: rgba(0,192,135,.32); background: rgba(0,192,135,.08); }
.share-icon { width: 16px; height: 16px; display: block; flex: 0 0 16px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.theme-button { width: auto; min-width: 67px; display: flex; align-items: center; justify-content: center; gap: 7px; padding: 0 9px; font: 500 7px/1 var(--font-data); letter-spacing: .4px; }
.theme-icon { position: relative; width: 16px; height: 16px; display: grid; flex: 0 0 16px; place-items: center; line-height: 0; }
.theme-icon svg, .refresh-icon { width: 16px; height: 16px; display: block; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.theme-icon svg { display: none; grid-area: 1 / 1; }
html[data-theme="dark"] .theme-moon { display: block; }
html[data-theme="light"] .theme-sun { display: block; }
.refresh-icon { transform-origin: 50% 50%; }.spinning .refresh-icon { animation: spin .65s linear infinite; }
.ceo-avatar { height: 32px; display: flex; align-items: center; gap: 7px; padding: 0 5px 0 9px; color: var(--muted); background: var(--panel-soft); border: 1px solid var(--line); border-radius: 5px; font: 500 7px/1 var(--font-data); }.ceo-avatar strong { display: grid; place-items: center; width: 22px; height: 22px; color: #fff; background: var(--blue); border-radius: 4px; font-size: 8px; }
.mobile-menu { display: none; margin-right: 10px; }

/* Ticker */
.ticker-bar { position: sticky; top: 58px; z-index: 40; height: 43px; display: grid; grid-template-columns: auto minmax(0,1fr) auto; align-items: stretch; margin: 0 -26px; padding: 0 26px; overflow: hidden; background: color-mix(in srgb, var(--panel-soft) 94%, transparent); border-bottom: 1px solid var(--line); box-shadow: 0 8px 22px rgba(0,0,0,.08); backdrop-filter: blur(18px); }
.ticker-label { display: flex; align-items: center; gap: 7px; padding-right: 15px; border-right: 1px solid var(--line); color: var(--green); font: 600 7px/1 var(--font-data); letter-spacing: .55px; }.ticker-label small { color: var(--muted); }
.live-wave { position: relative; width: 10px; height: 10px; border: 1px solid currentColor; border-radius: 50%; }.live-wave::before, .live-wave::after { content: ""; position: absolute; inset: -1px; border: 1px solid currentColor; border-radius: 50%; animation: radar 2s ease-out infinite; }.live-wave::after { animation-delay: 1s; }
.asset-ticker { display: flex; min-width: 0; overflow-x: auto; scrollbar-width: none; }.asset-ticker::-webkit-scrollbar { display: none; }
.ticker-item { min-width: 178px; height: 43px; display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 8px; padding: 0 14px; color: var(--text); background: transparent; border-right: 1px solid var(--line); cursor: pointer; text-align: left; transition: background .18s ease; }.ticker-item:hover, .ticker-item.active { background: var(--blue-soft); }.ticker-item strong { font: 600 9px/1 var(--font-data); }.ticker-item span { font: 500 9px/1 var(--font-data); }.ticker-item b { font: 500 8px/1 var(--font-data); }.ticker-item.active strong { color: #6f91ff; }
.ticker-loading { display: flex; align-items: center; padding-left: 15px; color: var(--muted); font: 500 8px/1 var(--font-data); }
.market-clock { display: flex; align-items: center; padding-left: 15px; color: var(--muted); border-left: 1px solid var(--line); font: 500 8px/1 var(--font-data); white-space: nowrap; }

/* Category workspace */
.workspace-pages { min-height: calc(100vh - 160px); }
.dashboard-page { min-width: 0; min-height: calc(100vh - 160px); padding-top: 22px; }
.dashboard-page[hidden] { display: none !important; }
.dashboard-page.active { animation: workspace-in .28s cubic-bezier(.2,.75,.3,1) both; }
.dashboard-page > .overview-section,
.dashboard-page > .section-block,
.dashboard-page > .content-split,
.dashboard-page > .lab-section { margin-top: 0; }
.dashboard-page > .bottom-grid > .section-block { margin-top: 0; }

/* Overview */
.overview-section { position: relative; display: grid; grid-template-columns: minmax(0,1.35fr) minmax(380px,.65fr); gap: 42px; margin-top: 22px; padding: 28px 30px; overflow: hidden; background: linear-gradient(122deg, var(--panel), var(--panel-soft)); border: 1px solid var(--line); border-radius: var(--radius); box-shadow: var(--shadow); animation: reveal .45s ease both; }
.overview-section::after { content: ""; position: absolute; width: 420px; height: 420px; right: 15%; top: -310px; border: 1px solid rgba(41,98,255,.22); border-radius: 50%; box-shadow: 0 0 0 45px rgba(41,98,255,.025), 0 0 0 90px rgba(41,98,255,.018); pointer-events: none; }
.overview-copy { position: relative; z-index: 1; align-self: center; }
.terminal-kicker { display: flex; align-items: center; gap: 10px; color: #6f91ff; font: 600 8px/1 var(--font-data); letter-spacing: .85px; }.terminal-kicker i { padding-left: 10px; color: var(--muted); border-left: 1px solid var(--line-strong); font-style: normal; }
.overview-copy h1 { margin: 16px 0 7px; font-size: clamp(30px, 3vw, 44px); line-height: 1.05; letter-spacing: -2.1px; }
.overview-copy > p { max-width: 650px; margin: 0; color: var(--muted); font-size: 12px; }
.operation-status { display: flex; align-items: center; gap: 15px; margin-top: 22px; }.operation-status > span { color: var(--muted); font: 500 8px/1 var(--font-data); letter-spacing: .4px; }
.hero-status { display: inline-flex; align-items: center; gap: 8px; min-height: 29px; padding: 0 10px; color: var(--green); background: var(--green-soft); border: 1px solid rgba(0,192,135,.18); border-radius: 4px; font: 600 8px/1 var(--font-data); letter-spacing: .5px; }.hero-status i { width: 5px; height: 5px; background: currentColor; border-radius: 50%; box-shadow: 0 0 9px currentColor; animation: status-pulse 2s ease-in-out infinite; }.hero-status.paused { color: var(--amber); background: var(--amber-soft); border-color: rgba(240,164,60,.2); }.hero-status.analyzing { color: #6f91ff; background: var(--blue-soft); border-color: rgba(41,98,255,.22); }
.cycle-console { position: relative; z-index: 2; padding-left: 27px; border-left: 1px solid var(--line); }
.cycle-head { display: flex; align-items: center; justify-content: space-between; color: var(--muted); font: 500 7px/1 var(--font-data); letter-spacing: .65px; }.cycle-head b { color: var(--text-soft); font-weight: 600; }
.cycle-body { display: grid; grid-template-columns: 112px 1fr; align-items: center; gap: 21px; margin-top: 17px; }
.cycle-ring { --cycle: 0deg; position: relative; width: 108px; height: 108px; display: grid; place-items: center; border-radius: 50%; background: conic-gradient(var(--blue) var(--cycle), var(--line) 0); box-shadow: inset 0 0 25px rgba(41,98,255,.08); transition: --cycle .5s ease; }.cycle-ring::before { content: ""; position: absolute; inset: 5px; background: var(--panel); border: 1px solid var(--line); border-radius: 50%; }.cycle-ring > div { position: relative; z-index: 1; display: flex; flex-direction: column; align-items: center; }.cycle-ring span, .cycle-ring small { color: var(--muted); font: 500 6px/1 var(--font-data); letter-spacing: .55px; }.cycle-ring strong { margin: 8px 0 5px; font: 600 18px/1 var(--font-data); letter-spacing: -.5px; }
.cycle-detail > span { color: var(--muted); font: 500 7px/1 var(--font-data); letter-spacing: .65px; }.cycle-detail > strong { display: block; margin-top: 7px; color: var(--green); font: 600 11px/1 var(--font-data); }.cycle-detail p { min-height: 34px; margin: 9px 0 12px; color: var(--muted); font-size: 10px; line-height: 1.55; }
.cycle-track, .capacity-track, .budget-track, .wide-track, .confidence-track { height: 3px; overflow: hidden; background: var(--line); border-radius: 9px; }.cycle-track i, .capacity-track i, .budget-track i, .wide-track i, .confidence-track i { display: block; width: 0; height: 100%; background: var(--blue); box-shadow: 0 0 9px rgba(41,98,255,.4); transition: width .55s ease; }

.kpi-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); margin-top: 12px; background: var(--panel); border: 1px solid var(--line); border-radius: var(--radius); overflow: hidden; animation: reveal .45s .06s ease both; }
.kpi-card { position: relative; min-height: 124px; padding: 18px 19px 16px; overflow: hidden; border-right: 1px solid var(--line); }.kpi-card:last-child { border-right: 0; }.kpi-card::after { content: ""; position: absolute; inset: auto 0 0; height: 2px; background: var(--line); }.kpi-card:hover::after { background: var(--blue); }
.kpi-top { display: flex; justify-content: space-between; color: var(--muted); font: 500 7px/1 var(--font-data); letter-spacing: .55px; }.kpi-top b { color: var(--muted-2); font-weight: 500; }
.kpi-card > strong { display: block; margin-top: 18px; font: 600 26px/1 var(--font-data); letter-spacing: -1.15px; }.kpi-card > strong small { color: var(--muted-2); font-size: 13px; }
.kpi-foot { display: flex; align-items: center; justify-content: space-between; gap: 8px; min-height: 21px; margin-top: 11px; color: var(--muted); font-size: 9px; }.metric-change { display: inline-flex; align-items: center; min-height: 20px; padding: 0 6px; border-radius: 3px; background: var(--panel-soft); font: 600 8px/1 var(--font-data); }.metric-change.positive { background: var(--green-soft); }.metric-change.negative { background: var(--red-soft); }
.capacity-track, .budget-track { margin-top: 12px; }.capacity-track i { background: var(--green); }.budget-track i { background: var(--cyan); }.budget-track.unlimited, .wide-track.unlimited { background: repeating-linear-gradient(90deg, var(--line) 0 5px, transparent 5px 8px); }

/* Shared sections */
.section-block { margin-top: 12px; padding: 23px; background: var(--panel); border: 1px solid var(--line); border-radius: var(--radius); box-shadow: 0 10px 35px rgba(0,0,0,.045); }
.section-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 20px; margin-bottom: 20px; }.section-heading.compact { align-items: flex-start; }
.section-index { display: block; margin-bottom: 7px; color: #6f91ff; font: 600 7px/1 var(--font-data); letter-spacing: .75px; }.section-heading h2 { margin: 0; font-size: 19px; line-height: 1.2; letter-spacing: -.7px; }.section-heading p { margin: 5px 0 0; color: var(--muted); font-size: 10px; }
.section-meta { display: flex; align-items: center; gap: 13px; color: var(--muted); font: 500 7px/1 var(--font-data); }.live-pill, .outline-pill { display: inline-flex; align-items: center; gap: 6px; min-height: 24px; padding: 0 8px; color: var(--green); background: var(--green-soft); border: 1px solid rgba(0,192,135,.18); border-radius: 4px; font: 600 7px/1 var(--font-data); letter-spacing: .35px; }.live-pill i { width: 4px; height: 4px; background: currentColor; border-radius: 50%; box-shadow: 0 0 6px currentColor; }.outline-pill { color: var(--muted); background: transparent; border-color: var(--line); }

/* Market terminal */
.market-section { padding: 0; overflow: hidden; animation: reveal .45s .1s ease both; }.market-section > .section-heading { margin: 0; padding: 22px 23px 18px; border-bottom: 1px solid var(--line); }
.market-tabs { height: 43px; display: flex; padding: 0 13px; border-bottom: 1px solid var(--line); background: var(--panel-soft); }
.market-tab { position: relative; min-width: 105px; display: flex; align-items: center; justify-content: center; gap: 8px; color: var(--muted); background: transparent; cursor: pointer; font: 600 9px/1 var(--font-data); transition: color .18s ease, background .18s ease; }.market-tab::after { content: ""; position: absolute; inset: auto 13px -1px; height: 2px; background: transparent; }.market-tab:hover { color: var(--text-soft); }.market-tab.active { color: var(--text); background: linear-gradient(to bottom, transparent, var(--blue-soft)); }.market-tab.active::after { background: var(--blue); }.market-tab b { font-size: 7px; }.market-tab .tab-dot { width: 5px; height: 5px; background: var(--muted-2); border-radius: 50%; }.market-tab .tab-dot.long { background: var(--green); box-shadow: 0 0 8px rgba(0,192,135,.5); }.market-tab .tab-dot.short { background: var(--red); box-shadow: 0 0 8px rgba(240,68,94,.5); }
.market-terminal { display: grid; grid-template-columns: minmax(0,1.65fr) minmax(300px,.62fr); min-height: 532px; }
.chart-terminal { min-width: 0; border-right: 1px solid var(--line); background: var(--panel-soft); }
.chart-head { min-height: 77px; display: grid; grid-template-columns: minmax(210px,1fr) auto auto; align-items: center; gap: 22px; padding: 13px 18px; border-bottom: 1px solid var(--line); }
.selected-asset { display: flex; align-items: center; gap: 10px; }.asset-monogram { width: 34px; height: 34px; display: grid; place-items: center; color: #fff; background: linear-gradient(145deg, var(--blue), #1b47bf); border: 1px solid rgba(255,255,255,.13); border-radius: 50%; font: 600 11px/1 var(--font-data); box-shadow: 0 0 18px rgba(41,98,255,.15); }.selected-asset > div > span { display: flex; align-items: baseline; gap: 6px; }.selected-asset strong { font: 600 14px/1 var(--font-data); }.selected-asset small { color: var(--muted); font: 500 7px/1 var(--font-data); }.selected-asset p { margin: 4px 0 0; color: var(--muted); font-size: 9px; }
.selected-price { text-align: right; }.selected-price strong { display: block; font: 600 19px/1 var(--font-data); letter-spacing: -.7px; }.selected-price span { display: block; margin-top: 5px; font: 600 8px/1 var(--font-data); }
.chart-badges { display: flex; gap: 5px; }.terminal-badge, .decision-chip, .signal-badge { display: inline-flex; align-items: center; justify-content: center; min-height: 23px; padding: 0 7px; color: var(--muted); background: var(--panel); border: 1px solid var(--line); border-radius: 3px; font: 600 7px/1 var(--font-data); white-space: nowrap; }.terminal-badge.bullish, .signal-badge.bullish, .signal-badge.long, .decision-chip.long { color: var(--green); background: var(--green-soft); border-color: rgba(0,192,135,.18); }.terminal-badge.bearish, .signal-badge.bearish, .signal-badge.short, .decision-chip.short { color: var(--red); background: var(--red-soft); border-color: rgba(240,68,94,.18); }.terminal-badge.neutral, .signal-badge.neutral, .signal-badge.hold, .signal-badge.waiting { color: var(--amber); background: var(--amber-soft); border-color: rgba(240,164,60,.18); }
.chart-toolbar { height: 37px; display: flex; align-items: center; gap: 17px; padding: 0 18px; color: var(--muted); border-bottom: 1px solid var(--line); font: 500 7px/1 var(--font-data); }.chart-toolbar span { display: flex; align-items: center; gap: 5px; }.chart-toolbar .active { height: 100%; color: var(--text-soft); border-bottom: 1px solid var(--blue); }.chart-toolbar b { margin-left: auto; color: var(--muted-2); font-weight: 500; }.legend-dot { width: 5px; height: 5px; border-radius: 50%; }.legend-dot.current { background: var(--blue); }.legend-dot.reward { background: var(--green); }.legend-dot.risk { background: var(--red); }
.strategy-map { position: relative; height: 370px; overflow: hidden; background: var(--panel-soft); cursor: crosshair; }.strategy-map::before { content: ""; position: absolute; inset: 0; z-index: 1; pointer-events: none; background: linear-gradient(90deg, transparent, rgba(255,255,255,.018), transparent); transform: translateX(-100%); animation: scan 7s ease-in-out infinite; }.strategy-map svg { display: block; width: 100%; height: 100%; }.map-grid-line { stroke: var(--line); stroke-width: 1; stroke-dasharray: 2 5; }.map-axis { fill: var(--muted); font: 500 8px var(--font-data); }.map-zone-reward { fill: var(--green-soft); }.map-zone-risk { fill: var(--red-soft); }.map-line-target { stroke: var(--green); }.map-line-entry { stroke: var(--blue); }.map-line-stop { stroke: var(--red); }.map-price-line { stroke-width: 1.2; stroke-dasharray: 5 4; }.map-current { stroke: var(--text-soft); stroke-width: 1; }.map-planned { fill: none; stroke: var(--blue); stroke-width: 2; stroke-dasharray: 4 5; opacity: .7; }.map-node { fill: var(--panel-soft); stroke: var(--blue); stroke-width: 2; }.map-label { fill: var(--text-soft); font: 600 8px var(--font-data); }.map-sub { fill: var(--muted); font: 500 7px var(--font-data); }.map-crosshair { opacity: 0; stroke: var(--text-soft); stroke-width: .8; stroke-dasharray: 3 3; pointer-events: none; }.map-crosshair-label { opacity: 0; fill: var(--text); font: 500 8px var(--font-data); pointer-events: none; }.strategy-map.crosshair-active .map-crosshair, .strategy-map.crosshair-active .map-crosshair-label { opacity: .75; }
.chart-skeleton, .skeleton-card { background: linear-gradient(100deg, var(--panel-soft) 25%, var(--panel-hover) 42%, var(--panel-soft) 60%); background-size: 300% 100%; animation: skeleton 1.5s ease infinite; }.chart-skeleton { height: 100%; }
.chart-foot { min-height: 47px; display: flex; align-items: center; justify-content: space-between; gap: 15px; padding: 0 18px; color: var(--muted); border-top: 1px solid var(--line); font-size: 8px; }.chart-foot strong { font: 500 7px/1 var(--font-data); color: var(--muted-2); }
.strategy-inspector { padding: 18px; background: var(--panel); }
.inspector-head { display: flex; align-items: flex-start; justify-content: space-between; }.inspector-head span { color: #6f91ff; font: 600 7px/1 var(--font-data); letter-spacing: .6px; }.inspector-head h3 { margin: 7px 0 0; font-size: 16px; letter-spacing: -.5px; }.decision-chip { min-width: 48px; color: var(--amber); }
.confidence-block { margin-top: 20px; padding-bottom: 17px; border-bottom: 1px solid var(--line); }.confidence-block > div:first-child { display: flex; justify-content: space-between; color: var(--muted); font: 500 7px/1 var(--font-data); }.confidence-block strong { color: var(--text); font-size: 10px; }.confidence-track { height: 4px; margin-top: 10px; }.confidence-track i { background: linear-gradient(90deg, var(--blue), var(--cyan)); }
.price-ladder { position: relative; margin: 14px 0; padding-left: 13px; }.price-ladder::before { content: ""; position: absolute; left: 2px; top: 16px; bottom: 16px; width: 1px; background: linear-gradient(var(--green), var(--blue), var(--red)); }.ladder-row { position: relative; display: grid; grid-template-columns: 1fr auto; align-items: center; min-height: 48px; padding: 6px 0 6px 4px; border-bottom: 1px solid var(--line); }.ladder-row:last-child { border-bottom: 0; }.ladder-row::before { content: ""; position: absolute; left: -14px; width: 6px; height: 6px; background: var(--panel); border: 2px solid currentColor; border-radius: 50%; }.ladder-row.target { color: var(--green); }.ladder-row.entry { color: var(--blue); }.ladder-row.stop { color: var(--red); }.ladder-row span { color: var(--muted); font: 600 7px/1.35 var(--font-data); }.ladder-row small { display: block; margin-top: 3px; color: var(--muted-2); font-family: var(--font-ui); font-weight: 500; }.ladder-row strong { grid-row: 1 / 3; grid-column: 2; color: var(--text); font: 600 11px/1 var(--font-data); }.ladder-row b { color: currentColor; font: 500 7px/1 var(--font-data); }
.strategy-facts { display: grid; grid-template-columns: 1fr 1fr; border: 1px solid var(--line); border-radius: 5px; overflow: hidden; }.strategy-facts > div { padding: 10px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }.strategy-facts > div:nth-child(2n) { border-right: 0; }.strategy-facts > div:nth-last-child(-n+2) { border-bottom: 0; }.strategy-facts span, .decision-reason > span, .data-integrity span { display: block; color: var(--muted); font: 500 6px/1 var(--font-data); letter-spacing: .45px; }.strategy-facts strong { display: block; margin-top: 6px; font: 600 9px/1 var(--font-data); }
.decision-reason { margin-top: 15px; }.decision-reason p { min-height: 43px; margin: 7px 0 0; color: var(--text-soft); font-size: 9px; line-height: 1.55; }
.data-integrity { margin-top: 14px; padding: 10px; background: var(--panel-soft); border: 1px solid var(--line); border-radius: 5px; }.data-integrity > div { display: flex; align-items: center; justify-content: space-between; }.data-integrity strong { font: 500 7px/1 var(--font-data); }.data-integrity strong b:first-child { color: var(--green); }.data-integrity strong b:last-child { color: var(--amber); }.data-integrity p { margin: 7px 0 0; color: var(--muted); font: 400 7px/1.45 var(--font-data); word-break: break-word; }
.market-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); border-top: 1px solid var(--line); }
.market-card { position: relative; min-width: 0; min-height: 154px; padding: 15px; color: inherit; background: var(--panel); border: 0; border-right: 1px solid var(--line); cursor: pointer; text-align: left; transition: background .18s ease, transform .18s ease; }.market-card:last-child { border-right: 0; }.market-card:hover { z-index: 2; background: var(--panel-hover); }.market-card.active { background: linear-gradient(150deg, var(--blue-soft), var(--panel) 48%); box-shadow: inset 0 -2px var(--blue); }.market-card:focus-visible, .market-tab:focus-visible, .ticker-item:focus-visible, .agent-card:focus-visible { outline: 2px solid var(--blue); outline-offset: -2px; }
.market-card-head { display: flex; align-items: center; justify-content: space-between; }.market-card-symbol { display: flex; align-items: center; gap: 7px; }.coin-mark { width: 22px; height: 22px; display: grid; place-items: center; color: #fff; background: #26344a; border-radius: 50%; font: 600 7px/1 var(--font-data); }.market-card-symbol strong { font: 600 10px/1 var(--font-data); }.market-card-symbol small { margin-left: 4px; color: var(--muted); font: 500 7px/1 var(--font-data); }
.market-card-price { display: flex; align-items: baseline; justify-content: space-between; margin-top: 15px; }.market-card-price strong { font: 600 16px/1 var(--font-data); letter-spacing: -.5px; }.market-card-price span { font: 600 8px/1 var(--font-data); }
.market-range { position: relative; height: 26px; margin-top: 10px; }.market-range::before { content: ""; position: absolute; left: 0; right: 0; top: 12px; height: 2px; background: linear-gradient(90deg, var(--red-soft), var(--blue-soft), var(--green-soft)); }.market-range i { position: absolute; top: 8px; width: 8px; height: 8px; margin-left: -4px; background: var(--blue); border: 2px solid var(--panel); border-radius: 50%; box-shadow: 0 0 8px rgba(41,98,255,.6); transition: left .4s ease; }.market-range span { position: absolute; top: 0; color: var(--muted-2); font: 500 6px/1 var(--font-data); }.market-range span:first-of-type { left: 0; }.market-range span:last-of-type { right: 0; }
.market-card-foot { display: flex; align-items: center; justify-content: space-between; padding-top: 8px; border-top: 1px solid var(--line); color: var(--muted); font: 500 7px/1 var(--font-data); }.market-card-foot b { color: var(--text-soft); font-weight: 600; }.coverage-warning { color: var(--amber) !important; }
.skeleton-card { min-height: 154px; border-right: 1px solid var(--line); }

/* Positions and risk */
.position-capital-summary { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); margin-bottom: 12px; border: 1px solid var(--line); border-radius: 5px; overflow: hidden; background: var(--panel-soft); }
.position-capital-summary > div { min-height: 63px; display: grid; grid-template-columns: 1fr auto; align-content: center; gap: 5px 14px; padding: 10px 13px; }
.position-capital-summary > div + div { border-left: 1px solid var(--line); }
.position-capital-summary span { color: var(--muted); font-size: 9px; }
.position-capital-summary strong { grid-row: 1 / 3; grid-column: 2; align-self: center; color: var(--text); font: 600 15px/1 var(--font-data); }
.position-capital-summary small { color: var(--muted-2); font: 500 8px/1 var(--font-data); }
.position-capital { display: block; color: var(--text); font: 600 10px/1 var(--font-data); }
.content-split { display: grid; grid-template-columns: minmax(0,1.72fr) minmax(300px,.58fr); gap: 12px; }.positions-content { min-height: 264px; overflow-x: auto; }
.position-table { width: 100%; border-collapse: collapse; font-size: 9px; }.position-table th { height: 34px; padding: 0 10px; color: var(--muted); background: var(--panel-soft); border: 1px solid var(--line); font: 500 7px/1 var(--font-data); letter-spacing: .35px; text-align: left; white-space: nowrap; }.position-table td { height: 56px; padding: 8px 10px; color: var(--text-soft); border-bottom: 1px solid var(--line); font-family: var(--font-data); white-space: nowrap; }.position-table tbody tr { transition: background .16s ease; }.position-table tbody tr:hover { background: var(--panel-hover); }.position-symbol { display: flex; flex-direction: column; color: var(--text); font-weight: 600; }.position-symbol small, .position-sub { display: block; margin-top: 4px; color: var(--muted); font: 500 7px/1 var(--font-data); }.position-status { display: inline-flex; min-height: 20px; align-items: center; padding: 0 6px; color: var(--green); background: var(--green-soft); border-radius: 3px; font: 600 7px/1 var(--font-data); }
.trade-results-section { overflow: hidden; }
.trade-results-content { min-height: 210px; }
.trade-results-empty { min-height: 190px; }
.trade-results-summary { display: grid; grid-template-columns: repeat(4,1fr); overflow: hidden; background: var(--panel-soft); border: 1px solid var(--line); border-radius: 6px; }
.trade-results-summary > div { min-width: 0; min-height: 76px; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 13px 16px; border-right: 1px solid var(--line); }
.trade-results-summary > div:last-child { border-right: 0; }
.trade-results-summary span { display: flex; flex-direction: column; gap: 5px; color: var(--muted); font: 600 8px/1 var(--font-data); letter-spacing: .35px; }
.trade-results-summary span small { color: var(--muted-2); font: 500 9px/1.2 var(--font-ui); letter-spacing: 0; }
.trade-results-summary strong { color: var(--text); font: 600 17px/1 var(--font-data); white-space: nowrap; }
.trade-report-context { min-height: 35px; display: flex; align-items: center; gap: 18px; padding: 0 4px; color: var(--muted); font: 500 8px/1 var(--font-data); }
.trade-report-context span:last-child { margin-left: auto; color: var(--muted-2); }
.trade-report-context strong { color: var(--text-soft); }
.symbol-performance-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
.symbol-performance-card { position: relative; min-width: 0; overflow: hidden; background: var(--panel-soft); border: 1px solid var(--line); border-radius: 7px; transition: border-color .18s ease, background .18s ease, transform .18s ease; }
.symbol-performance-card::before { content: ""; position: absolute; z-index: 2; inset: 0 auto 0 0; width: 2px; background: var(--muted-2); }
.symbol-performance-card.profitable::before { background: var(--green); }.symbol-performance-card.drawdown::before { background: var(--red); }.symbol-performance-card.flat::before { background: var(--amber); }
.symbol-performance-card:hover { background: var(--panel-hover); border-color: var(--line-strong); transform: translateY(-1px); }
.symbol-report-head { min-height: 72px; display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 12px 15px; border-bottom: 1px solid var(--line); }
.symbol-report-identity { min-width: 0; display: flex; align-items: center; gap: 10px; }.symbol-report-identity > div { min-width: 0; }.symbol-report-identity > div > span { color: #6f91ff; font: 600 7px/1 var(--font-data); letter-spacing: .45px; }.symbol-report-identity h3 { overflow: hidden; margin: 7px 0 0; color: var(--text); font: 600 14px/1 var(--font-data); text-overflow: ellipsis; white-space: nowrap; }
.symbol-report-status { display: inline-flex; flex: 0 0 auto; align-items: center; gap: 6px; min-height: 23px; padding: 0 8px; color: var(--muted); background: color-mix(in srgb, var(--muted) 8%, transparent); border: 1px solid var(--line); border-radius: 3px; font: 600 7px/1 var(--font-data); }.symbol-report-status i { width: 5px; height: 5px; background: currentColor; border-radius: 50%; }.symbol-report-status.profitable { color: var(--green); background: var(--green-soft); border-color: rgba(0,192,135,.18); }.symbol-report-status.drawdown { color: var(--red); background: var(--red-soft); border-color: rgba(240,68,94,.18); }.symbol-report-status.flat { color: var(--amber); background: var(--amber-soft); border-color: rgba(240,164,60,.18); }
.symbol-report-hero { min-height: 105px; display: grid; grid-template-columns: 1fr minmax(150px,.55fr); align-items: center; gap: 18px; padding: 16px 15px; border-bottom: 1px solid var(--line); background: linear-gradient(135deg, color-mix(in srgb, var(--blue-soft) 46%, transparent), transparent 52%); }.symbol-report-hero > div:first-child > span { display: flex; flex-direction: column; gap: 4px; color: var(--muted); font: 600 7px/1 var(--font-data); }.symbol-report-hero > div:first-child > span small { color: var(--muted-2); font: 500 8px/1 var(--font-ui); }.symbol-report-hero > div:first-child > strong { display: block; margin-top: 10px; font: 600 22px/1 var(--font-data); letter-spacing: -.7px; }.symbol-report-hero p { margin: 8px 0 0; color: var(--muted); font-size: 8px; }.symbol-report-hero p b { margin-left: 4px; font-family: var(--font-data); }
.symbol-record { padding-left: 17px; border-left: 1px solid var(--line); }.symbol-record > span { color: var(--muted); font: 500 7px/1 var(--font-data); }.symbol-record > strong { display: block; margin-top: 8px; color: var(--text-soft); font: 600 11px/1 var(--font-data); }.symbol-record > div { height: 3px; margin-top: 11px; overflow: hidden; background: var(--line); border-radius: 9px; }.symbol-record i { display: block; height: 100%; background: linear-gradient(90deg,var(--blue),var(--green)); box-shadow: 0 0 8px rgba(0,192,135,.35); }
.trade-outcome { display: inline-flex; min-height: 19px; align-items: center; padding: 0 6px; color: var(--muted); background: color-mix(in srgb, var(--muted) 10%, transparent); border-radius: 3px; font: 600 7px/1 var(--font-data); letter-spacing: .3px; }
.trade-outcome.win { color: var(--green); background: var(--green-soft); }.trade-outcome.loss { color: var(--red); background: var(--red-soft); }.trade-outcome.flat { color: var(--amber); background: var(--amber-soft); }
.symbol-report-metrics { display: grid; grid-template-columns: repeat(4,1fr); border-bottom: 1px solid var(--line); }.symbol-report-metrics > div { min-width: 0; min-height: 66px; display: flex; justify-content: center; flex-direction: column; padding: 10px 11px; border-right: 1px solid var(--line); }.symbol-report-metrics > div:last-child { border-right: 0; }.symbol-report-metrics span { display: flex; flex-direction: column; gap: 4px; color: var(--muted); font: 600 7px/1 var(--font-data); }.symbol-report-metrics span small { color: var(--muted-2); font: 500 8px/1 var(--font-ui); }.symbol-report-metrics strong { margin-top: 8px; color: var(--text); font: 600 11px/1 var(--font-data); white-space: nowrap; }
.symbol-report-details { display: grid; grid-template-columns: 1fr 1fr; border-bottom: 1px solid var(--line); }.symbol-report-details > div { min-width: 0; padding: 13px 15px; }.symbol-report-details > div + div { border-left: 1px solid var(--line); }.symbol-report-details > div > span { color: #6f91ff; font: 600 7px/1 var(--font-data); letter-spacing: .4px; }.symbol-report-details p { overflow: hidden; margin: 9px 0 0; color: var(--muted); font-size: 8px; text-overflow: ellipsis; white-space: nowrap; }.symbol-report-details p strong { margin-left: 3px; color: var(--text-soft); font: 600 8px/1 var(--font-data); }
.symbol-report-latest { min-height: 67px; display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 10px 15px; }.symbol-report-latest > div { min-width: 0; }.symbol-report-latest > div > span { display: block; color: var(--muted); font: 600 7px/1 var(--font-data); }.symbol-report-latest > div > strong { display: flex; align-items: center; gap: 7px; margin-top: 7px; color: var(--text-soft); font: 600 9px/1 var(--font-data); }.symbol-report-latest > div > strong i { font-style: normal; }.symbol-report-latest > div > small { display: block; overflow: hidden; max-width: 330px; margin-top: 6px; color: var(--muted); font-size: 8px; text-overflow: ellipsis; white-space: nowrap; }.symbol-report-latest time { display: flex; flex: 0 0 auto; align-items: flex-end; flex-direction: column; gap: 6px; color: var(--text-soft); font: 500 8px/1 var(--font-data); white-space: nowrap; }.symbol-report-latest time small { color: var(--muted); }
.empty-state { min-height: 230px; display: flex; flex-direction: column; align-items: center; justify-content: center; color: var(--muted); text-align: center; }.empty-state strong { color: var(--text-soft); font-size: 11px; }.empty-state small { margin-top: 5px; font-size: 9px; }.empty-ring { width: 42px; height: 42px; margin-bottom: 13px; border: 1px solid var(--line-strong); border-top-color: var(--blue); border-radius: 50%; animation: spin 2.8s linear infinite; }
.risk-panel { display: flex; flex-direction: column; }.risk-gauge-wrap { display: grid; place-items: center; padding: 4px 0 18px; }.risk-gauge { --risk: 0deg; position: relative; width: 132px; height: 132px; display: grid; place-items: center; background: conic-gradient(var(--green) var(--risk), var(--line) 0); border-radius: 50%; transition: --risk .55s ease; }.risk-gauge::before { content: ""; position: absolute; inset: 7px; background: var(--panel); border: 1px solid var(--line); border-radius: 50%; }.risk-gauge > div { position: relative; z-index: 1; text-align: center; }.risk-gauge span, .risk-gauge small { display: block; color: var(--muted); font: 500 6px/1 var(--font-data); letter-spacing: .45px; }.risk-gauge strong { display: block; margin: 7px 0 6px; color: var(--green); font: 600 16px/1 var(--font-data); }
.risk-rules { display: grid; grid-template-columns: 1fr 1fr; border: 1px solid var(--line); border-radius: 5px; overflow: hidden; }.risk-rule { min-height: 47px; display: flex; flex-direction: column; justify-content: center; padding: 8px 10px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }.risk-rule:nth-child(2n) { border-right: 0; }.risk-rule:last-child { grid-column: 1/-1; border-bottom: 0; border-right: 0; }.risk-rule span { color: var(--muted); font-size: 7px; }.risk-rule strong { margin-top: 5px; font: 600 9px/1 var(--font-data); }
.risk-lock { display: flex; align-items: center; gap: 7px; margin-top: auto; padding-top: 15px; color: var(--muted); font: 500 7px/1 var(--font-data); }.risk-lock i { width: 6px; height: 6px; background: var(--green); border-radius: 1px; box-shadow: 0 0 7px rgba(0,192,135,.45); }.risk-lock strong { margin-left: auto; color: var(--green); }

/* Agent floor */
.company-section { overflow: hidden; }.company-status-line { display: flex; align-items: center; gap: 7px; color: var(--green); font: 500 8px/1 var(--font-data); }.company-status-line i { width: 5px; height: 5px; background: currentColor; border-radius: 50%; box-shadow: 0 0 8px currentColor; }
.company-grid { display: grid; grid-template-columns: minmax(0,1fr) minmax(390px,.72fr); gap: 12px; }.agent-roster { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 9px; }
.agent-card { position: relative; min-width: 0; min-height: 188px; padding: 15px; color: inherit; background: var(--panel-soft); border: 1px solid var(--line); border-radius: 6px; cursor: pointer; text-align: left; overflow: hidden; transition: border-color .18s ease, background .18s ease, transform .18s ease; }.agent-card::after { content: ""; position: absolute; width: 90px; height: 90px; right: -55px; top: -55px; border: 1px solid var(--line); border-radius: 50%; }.agent-card:hover { transform: translateY(-2px); border-color: var(--line-strong); background: var(--panel-hover); }.agent-card.active { border-color: rgba(41,98,255,.55); box-shadow: inset 0 -2px var(--blue); }.agent-card.working { border-color: rgba(0,192,135,.35); }
.agent-card-top { display: flex; justify-content: space-between; }.agent-avatar { width: 35px; height: 35px; display: grid; place-items: center; color: #fff; background: #151515; border: 1px solid #2b2b2b; border-radius: 5px; font: 600 11px/1 var(--font-data); }.agent-card:nth-child(2) .agent-avatar { background: #121717; border-color: #293131; }.agent-card:nth-child(3) .agent-avatar { background: #171313; border-color: #312929; }
.agent-status { display: flex; align-items: center; gap: 5px; color: var(--muted); font: 600 6px/1 var(--font-data); letter-spacing: .5px; }.agent-status i { width: 5px; height: 5px; background: var(--green); border-radius: 50%; }.agent-card.working .agent-status { color: var(--green); }.agent-card.working .agent-status i { box-shadow: 0 0 8px currentColor; animation: status-pulse 1.3s ease infinite; }
.agent-card h3 { margin: 15px 0 2px; font: 600 13px/1 var(--font-data); }.agent-role { color: var(--muted); font-size: 8px; }.agent-last-action { margin-top: 15px; padding-top: 11px; border-top: 1px solid var(--line); }.agent-last-action span { color: var(--muted-2); font: 500 6px/1 var(--font-data); }.agent-last-action p { display: -webkit-box; margin: 6px 0 0; overflow: hidden; color: var(--text-soft); font-size: 8px; line-height: 1.5; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.workflow-rail { height: 43px; display: flex; align-items: center; justify-content: center; gap: 7px; margin-top: 9px; color: var(--muted); background: var(--panel-soft); border: 1px solid var(--line); border-radius: 5px; font: 500 6px/1 var(--font-data); }.workflow-rail i { width: 14px; height: 1px; background: var(--line-strong); }.workflow-rail i::after { content: ""; display: block; float: right; margin-top: -2px; border-width: 2px 0 2px 3px; border-style: solid; border-color: transparent transparent transparent var(--line-strong); }
.timeline-panel { min-height: 240px; display: flex; flex-direction: column; background: var(--panel-soft); border: 1px solid var(--line); border-radius: 6px; overflow: hidden; }.panel-head { min-height: 48px; display: flex; align-items: center; justify-content: space-between; padding: 0 13px; border-bottom: 1px solid var(--line); }.panel-head h3 { margin: 0; font: 600 8px/1 var(--font-data); letter-spacing: .4px; }.panel-head div > span { display: block; margin-top: 5px; color: var(--muted); font-size: 7px; }.filter-reset { min-height: 22px; padding: 0 7px; color: var(--muted); background: var(--panel); border: 1px solid var(--line); border-radius: 3px; cursor: pointer; font: 500 6px/1 var(--font-data); }.filter-reset:hover { color: var(--text); }
.timeline { max-height: 250px; overflow-y: auto; padding: 7px 13px; scrollbar-color: var(--line-strong) transparent; scrollbar-width: thin; }.timeline-item { display: grid; grid-template-columns: 45px 10px 1fr; gap: 7px; min-height: 52px; padding: 8px 0; border-bottom: 1px solid var(--line); }.timeline-item:last-child { border-bottom: 0; }.timeline-time { color: var(--muted); font: 500 7px/1.3 var(--font-data); }.timeline-pin { position: relative; width: 7px; height: 7px; margin-top: 1px; background: var(--panel-soft); border: 2px solid var(--blue); border-radius: 50%; }.timeline-pin::after { content: ""; position: absolute; left: 2px; top: 7px; width: 1px; height: 41px; background: var(--line); }.timeline-item:last-child .timeline-pin::after { display: none; }.timeline-copy strong { display: block; color: var(--text-soft); font: 600 7px/1.3 var(--font-data); }.timeline-copy p { margin: 5px 0 0; color: var(--muted); font-size: 7px; line-height: 1.45; }.timeline-foot { min-height: 29px; display: flex; align-items: center; justify-content: space-between; margin-top: auto; padding: 0 13px; color: var(--muted-2); border-top: 1px solid var(--line); font: 500 6px/1 var(--font-data); }.timeline-foot i { font-style: normal; }

/* Simulation lab */
.lab-section { position: relative; display: grid; grid-template-columns: minmax(260px,.7fr) minmax(370px,1.15fr) minmax(300px,.9fr); gap: 25px; margin-top: 12px; padding: 27px; overflow: hidden; color: #dfe7f3; background: #060606; border: 1px solid var(--line); border-radius: var(--radius); box-shadow: var(--shadow); }.lab-section::after { content: ""; position: absolute; inset: 0; pointer-events: none; opacity: .022; background-image: linear-gradient(#fff 1px, transparent 1px), linear-gradient(90deg,#fff 1px,transparent 1px); background-size: 28px 28px; mask-image: linear-gradient(90deg, transparent 42%, #000); }
.lab-heading, .lab-metrics, .lab-output { position: relative; z-index: 1; }.lab-kicker { display: flex; align-items: center; gap: 8px; color: #6f91ff; font: 600 7px/1 var(--font-data); letter-spacing: .65px; }.lab-kicker i { padding: 4px 6px; color: #686c73; background: #0d0d0d; border: 1px solid #242424; border-radius: 3px; font-style: normal; }.lab-heading h2 { margin: 18px 0 8px; font-size: 24px; letter-spacing: -1px; }.lab-heading > p { max-width: 330px; margin: 0; color: #73777e; font-size: 9px; }.lab-status { display: flex; align-items: center; gap: 8px; margin-top: 23px; color: #696d74; font: 500 7px/1 var(--font-data); }.lab-status .live-wave { color: var(--cyan); }
.lab-metrics { display: grid; grid-template-columns: 1fr 1fr; border: 1px solid var(--line); border-radius: 6px; overflow: hidden; background: #090909; }.lab-metrics > div { min-height: 102px; display: flex; flex-direction: column; justify-content: center; padding: 14px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }.lab-metrics > div:nth-child(2n) { border-right: 0; }.lab-metrics > div:nth-last-child(-n+2) { border-bottom: 0; }.lab-metrics span { color: #666b73; font: 500 6px/1 var(--font-data); letter-spacing: .45px; }.lab-metrics strong { margin-top: 10px; font: 600 19px/1 var(--font-data); letter-spacing: -.65px; }.lab-metrics small { margin-top: 7px; color: #555a61; font-size: 7px; }
.lab-output { display: flex; min-width: 0; flex-direction: column; padding: 15px; background: #090909; border: 1px solid var(--line); border-radius: 6px; }.lab-output-head { display: flex; justify-content: space-between; color: #666b73; font: 500 6px/1 var(--font-data); }.lab-output-head strong { max-width: 180px; overflow: hidden; color: #8b8f96; font-weight: 500; text-overflow: ellipsis; white-space: nowrap; }.lab-visual { height: 77px; display: flex; align-items: flex-end; gap: 4px; margin: 16px 0 13px; padding-bottom: 8px; border-bottom: 1px solid var(--line); }.lab-visual i { flex: 1; height: var(--h,35%); background: linear-gradient(to top, #183783, #4b79ff); opacity: .42; transform-origin: bottom; animation: bar-in .6s ease both; }.lab-visual i:nth-child(1) { --h:27%; }.lab-visual i:nth-child(2) { --h:49%; animation-delay:.03s }.lab-visual i:nth-child(3) { --h:35%; animation-delay:.06s }.lab-visual i:nth-child(4) { --h:70%; animation-delay:.09s }.lab-visual i:nth-child(5) { --h:52%; animation-delay:.12s }.lab-visual i:nth-child(6) { --h:82%; animation-delay:.15s }.lab-visual i:nth-child(7) { --h:61%; animation-delay:.18s }.lab-visual i:nth-child(8) { --h:90%; animation-delay:.21s }.lab-visual i:nth-child(9) { --h:47%; animation-delay:.24s }.lab-visual i:nth-child(10) { --h:66%; animation-delay:.27s }.lab-visual i:nth-child(11) { --h:55%; animation-delay:.3s }.lab-visual i:nth-child(12) { --h:78%; animation-delay:.33s }
.lab-recommendation span { color: #5f7190; font: 600 6px/1 var(--font-data); letter-spacing: .5px; }.lab-recommendation p { margin: 8px 0 0; color: #b3bfd0; font-size: 9px; line-height: 1.55; }
.lab-rejections { margin-top: 14px; padding-top: 12px; border-top: 1px solid var(--line); }.lab-rejections > span { color: #686d75; font: 600 8px/1 var(--font-data); letter-spacing: .45px; }.lab-rejections div { display: grid; gap: 6px; margin-top: 9px; }.lab-rejections p { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: 0; color: #92969c; font-size: 8px; }.lab-rejections p strong { flex: 0 0 auto; color: #d1d3d6; font: 600 8px/1 var(--font-data); }
.lab-command-grid { display: grid; grid-template-columns: minmax(0,1.65fr) minmax(270px,.7fr); gap: 14px; margin-top: 14px; }
.lab-pipeline-card, .lab-data-card, .lab-shadow-section { color: #dfe7f3; background: #060606; border: 1px solid var(--line); border-radius: var(--radius); box-shadow: var(--shadow); }
.lab-pipeline-card { padding: 21px 23px 17px; }.lab-pipeline-card > header, .lab-data-card > header, .lab-board-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; }.lab-pipeline-card header span, .lab-data-card header span, .lab-board-head span, .lab-ab-card > span { color: #64738a; font: 600 8px/1 var(--font-data); letter-spacing: .65px; }.lab-pipeline-card h3 { margin: 7px 0 0; font-size: 16px; letter-spacing: -.4px; }.lab-pipeline-card header > strong { padding: 6px 8px; color: #6d91ff; background: rgba(65,105,225,.1); border: 1px solid rgba(75,121,255,.25); border-radius: 4px; font: 600 8px/1 var(--font-data); letter-spacing: .5px; }
.lab-pipeline { display: grid; grid-template-columns: repeat(5,minmax(90px,1fr)); margin-top: 20px; overflow-x: auto; scrollbar-width: thin; }.lab-pipeline-step { position: relative; min-width: 90px; padding: 0 14px 14px 0; }.lab-pipeline-step:not(:last-child)::after { content: ""; position: absolute; top: 11px; left: 31px; width: calc(100% - 39px); height: 1px; background: linear-gradient(90deg,#303030,#191919); }.lab-pipeline-step i { position: relative; z-index: 1; width: 23px; height: 23px; display: grid; place-items: center; color: #688dfc; background: #0d0d0d; border: 1px solid #303030; border-radius: 50%; font: 600 7px/1 var(--font-data); font-style: normal; }.lab-pipeline-step span { display: block; margin-top: 10px; color: #7e8289; font-size: 9px; }.lab-pipeline-step strong { display: block; margin-top: 4px; font: 600 15px/1 var(--font-data); }.lab-pipeline-step.ready i { color: #4be0bf; border-color: rgba(53,209,178,.42); box-shadow: 0 0 18px rgba(53,209,178,.12); }.lab-pipeline-card > footer { display: flex; justify-content: space-between; gap: 14px; padding-top: 13px; border-top: 1px solid var(--line); color: #70747b; font-size: 8px; }.lab-pipeline-card footer strong { color: #acaeb3; }.lab-pipeline-card footer b { color: #5fc9b5; font: 600 8px/1 var(--font-data); }
.lab-data-card { padding: 21px; background: #060606; }.lab-data-card header strong { font: 600 22px/1 var(--font-data); }.lab-data-meter { height: 4px; margin: 18px 0; overflow: hidden; background: #171717; border-radius: 8px; }.lab-data-meter i { display: block; width: 0; height: 100%; background: linear-gradient(90deg,#2962ff,#35d1b2); box-shadow: 0 0 12px rgba(53,209,178,.35); transition: width .45s ease; }.lab-data-list { display: grid; gap: 8px; }.lab-data-list p { display: flex; justify-content: space-between; margin: 0; color: #777c84; font-size: 8px; }.lab-data-list strong { color: #c7c9cc; font: 600 8px/1 var(--font-data); }
.lab-shadow-section { margin-top: 14px; padding: 24px; overflow: hidden; background: #060606; }.lab-shadow-section .section-heading { border-color: var(--line); }.lab-shadow-section .section-heading h2 { color: #e4ebf4; }.lab-shadow-section .section-heading p { color: #73777e; }.lab-shadow-section .outline-pill { color: #48d9bb; border-color: rgba(53,209,178,.3); background: rgba(53,209,178,.06); }
.lab-shadow-kpis { display: grid; grid-template-columns: repeat(6,1fr); overflow: hidden; background: #090909; border: 1px solid var(--line); border-radius: 6px; }.lab-shadow-kpis > div { min-width: 0; padding: 15px 13px; border-right: 1px solid var(--line); }.lab-shadow-kpis > div:last-child { border-right: 0; }.lab-shadow-kpis span { color: #61666e; font: 600 7px/1 var(--font-data); letter-spacing: .5px; }.lab-shadow-kpis strong { display: block; margin-top: 9px; overflow: hidden; color: #dfe7f3; font: 600 18px/1 var(--font-data); text-overflow: ellipsis; }.lab-shadow-kpis small { display: block; margin-top: 7px; color: #555a61; font-size: 7px; white-space: nowrap; }
.lab-shadow-diagnostics { display: grid; grid-template-columns: repeat(5,1fr); margin-top: 10px; overflow: hidden; background: #080808; border: 1px solid var(--line); border-radius: 6px; }.lab-shadow-diagnostics > div { min-width: 0; padding: 12px 13px; border-right: 1px solid var(--line); }.lab-shadow-diagnostics > div:last-child { border-right: 0; }.lab-shadow-diagnostics span { display: block; color: #5e6570; font: 600 7px/1 var(--font-data); letter-spacing: .45px; }.lab-shadow-diagnostics strong { display: block; margin-top: 7px; color: #cbd5e5; font: 600 14px/1 var(--font-data); }.lab-shadow-diagnostics small { display: block; margin-top: 6px; color: #555b64; font-size: 7px; }
.lab-shadow-body { display: grid; grid-template-columns: minmax(0,1.45fr) minmax(265px,.55fr); gap: 14px; margin-top: 14px; }.lab-symbol-board, .lab-ab-card { padding: 17px; background: #090909; border: 1px solid var(--line); border-radius: 6px; }.lab-board-head strong { color: #7b7f86; font: 500 8px/1 var(--font-data); }.lab-symbol-rows { margin-top: 13px; border-top: 1px solid var(--line); }.lab-symbol-row { display: grid; grid-template-columns: .65fr repeat(4,.7fr) 1.45fr; align-items: center; gap: 10px; min-height: 49px; border-bottom: 1px solid var(--line); }.lab-symbol-row:last-child { border-bottom: 0; }.lab-symbol-row > strong { font: 600 11px/1 var(--font-data); }.lab-symbol-stat span { display: block; color: #595e65; font: 500 7px/1 var(--font-data); }.lab-symbol-stat strong { display: block; margin-top: 5px; color: #b0b3b8; font: 600 9px/1 var(--font-data); }.lab-symbol-status strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }.lab-symbol-row.empty { grid-template-columns: 1fr; color: #6c7076; font-size: 9px; }
.lab-ab-card h3 { margin: 8px 0 18px; font-size: 15px; }.lab-ab-values { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }.lab-ab-values > div { padding: 12px; background: #0d0d0d; border: 1px solid var(--line); border-radius: 5px; }.lab-ab-values small { color: #666b73; font: 600 7px/1 var(--font-data); }.lab-ab-values strong { display: block; margin-top: 8px; font: 600 13px/1 var(--font-data); }.lab-ab-delta { display: flex; align-items: center; justify-content: space-between; margin-top: 9px; padding: 11px 12px; background: rgba(41,98,255,.08); border-left: 2px solid #416fed; }.lab-ab-delta span { color: #72777f; font: 500 7px/1 var(--font-data); }.lab-ab-delta strong { font: 600 12px/1 var(--font-data); }.lab-ab-card > p { min-height: 29px; margin: 13px 0; color: #858990; font-size: 8px; line-height: 1.5; }.lab-ab-card > footer { display: flex; justify-content: space-between; padding-top: 11px; color: #5e6269; border-top: 1px solid var(--line); font: 500 7px/1 var(--font-data); }.lab-ab-card footer strong { color: #aaadb2; }
.trade-llm-cost { color: var(--muted); font: 500 8px/1 var(--font-data); }

/* Cost and memory */
.bottom-grid { display: grid; grid-template-columns: 1.35fr .65fr; gap: 12px; }.cost-row { display: grid; grid-template-columns: 190px 1fr; align-items: center; gap: 17px; min-height: 49px; border-top: 1px solid var(--line); }.cost-row > div:first-child { display: flex; align-items: center; justify-content: space-between; color: var(--muted); font: 500 7px/1 var(--font-data); }.cost-row strong { color: var(--text); font-size: 9px; }.wide-track { height: 4px; }.cost-details { display: flex; gap: 22px; padding-top: 13px; color: var(--muted); border-top: 1px solid var(--line); font: 500 7px/1 var(--font-data); }.cost-details strong { margin-left: 5px; color: var(--text-soft); }
.memory-section { position: relative; overflow: hidden; }.memory-section::after { content: ""; position: absolute; width: 160px; height: 160px; right: -75px; bottom: -75px; border: 1px solid var(--line); border-radius: 50%; box-shadow: 0 0 0 26px color-mix(in srgb, var(--line) 42%, transparent), 0 0 0 52px color-mix(in srgb, var(--line) 20%, transparent); }.memory-number { position: relative; z-index: 1; display: flex; align-items: baseline; gap: 10px; }.memory-number strong { font: 600 32px/1 var(--font-data); letter-spacing: -1.4px; }.memory-number span { color: var(--muted); font: 500 7px/1 var(--font-data); }.memory-stats { position: relative; z-index: 1; display: flex; gap: 17px; margin-top: 19px; color: var(--muted); font: 500 6px/1 var(--font-data); }.memory-stats strong { margin-left: 4px; color: var(--text-soft); font-size: 8px; }
.footer { min-height: 59px; display: flex; align-items: center; justify-content: space-between; color: var(--muted-2); border-top: 1px solid var(--line); font: 500 7px/1 var(--font-data); letter-spacing: .45px; }

.toast-container { position: fixed; z-index: 100; right: 22px; bottom: 22px; display: grid; gap: 7px; }.toast { min-width: 310px; padding: 12px 14px; color: var(--text); background: var(--panel); border: 1px solid var(--line-strong); border-left: 2px solid var(--blue); border-radius: 5px; box-shadow: var(--shadow); font-size: 10px; animation: toast-in .2s ease both; }.toast.success { border-left-color: var(--green); }.toast.error { border-left-color: var(--red); }
.mobile-dock { display: none; }

@keyframes reveal { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }
@keyframes workspace-in { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: none; } }
@keyframes skeleton { 0% { background-position: 100% 0; } 100% { background-position: -100% 0; } }
@keyframes spin { to { transform: rotate(360deg); } }
@keyframes scan { 0%,15% { transform: translateX(-100%); } 65%,100% { transform: translateX(100%); } }
@keyframes radar { from { opacity: .7; transform: scale(.4); } to { opacity: 0; transform: scale(2.2); } }
@keyframes status-pulse { 0%,100% { opacity: .65; } 50% { opacity: 1; } }
@keyframes bar-in { from { transform: scaleY(0); opacity: 0; } to { transform: scaleY(1); opacity: .42; } }
@keyframes toast-in { from { opacity: 0; transform: translateY(7px); } to { opacity: 1; transform: none; } }

@media (max-width: 1380px) {
  .main-content { padding-left: 20px; padding-right: 20px; }
  .ticker-bar { margin-left: -20px; margin-right: -20px; padding-left: 20px; padding-right: 20px; }
  .overview-section { grid-template-columns: 1fr 400px; }
  .market-terminal { grid-template-columns: minmax(0,1.45fr) minmax(300px,.62fr); }
  .chart-head { grid-template-columns: minmax(190px,1fr) auto; }.chart-badges { grid-column: 1/-1; margin-top: -7px; }
  .market-grid { grid-template-columns: repeat(2,1fr); }.market-card:nth-child(2) { border-right: 0; }.market-card:nth-child(-n+2) { border-bottom: 1px solid var(--line); }
  .company-grid { grid-template-columns: 1fr; }
  .lab-section { grid-template-columns: minmax(230px,.65fr) 1fr; }.lab-output { grid-column: 1/-1; }.lab-visual { height: 55px; }
}

@media (max-width: 1080px) {
  :root { --sidebar: 68px; }
  .sidebar { padding: 18px 10px 14px; }.brand { justify-content: center; }.brand-copy, .rail-label, .nav-item span:nth-child(2), .nav-item b, .environment-card > strong, .environment-card p, .environment-head span:last-child, .environment-line, .sidebar-version { display: none; }
  .main-nav { margin-top: 42px; }.nav-item { display: flex; justify-content: center; padding: 0; }.nav-item.active::before { left: -11px; }.environment-card { display: grid; place-items: center; padding: 13px 0; }
  .overview-section { grid-template-columns: 1fr; gap: 25px; }.cycle-console { padding: 18px 0 0; border-left: 0; border-top: 1px solid var(--line); }.cycle-body { grid-template-columns: 108px 1fr; }
  .kpi-grid { grid-template-columns: 1fr 1fr; }.kpi-card:nth-child(2) { border-right: 0; }.kpi-card:nth-child(-n+2) { border-bottom: 1px solid var(--line); }
  .market-terminal { grid-template-columns: 1fr; }.chart-terminal { border-right: 0; border-bottom: 1px solid var(--line); }.strategy-inspector { display: grid; grid-template-columns: 1fr 1fr; column-gap: 20px; }.inspector-head, .confidence-block { grid-column: 1/-1; }.price-ladder { grid-row: span 3; }.decision-reason, .data-integrity { margin-top: 10px; }
  .content-split { grid-template-columns: 1fr; }
  .lab-section { grid-template-columns: 1fr; }.lab-output { grid-column: auto; }
  .lab-command-grid { grid-template-columns: 1fr; }.lab-shadow-kpis { grid-template-columns: repeat(3,1fr); }.lab-shadow-kpis > div:nth-child(3) { border-right: 0; }.lab-shadow-kpis > div:nth-child(-n+3) { border-bottom: 1px solid var(--line); }.lab-shadow-diagnostics { grid-template-columns: repeat(3,1fr); }.lab-shadow-diagnostics > div:nth-child(3) { border-right: 0; }.lab-shadow-diagnostics > div:nth-child(-n+3) { border-bottom: 1px solid var(--line); }.lab-shadow-body { grid-template-columns: 1fr; }
}

@media (max-width: 720px) {
  html { scroll-padding-top: 102px; }
  body { padding-bottom: calc(66px + env(safe-area-inset-bottom)); }
  .sidebar { width: 216px; transform: translateX(-102%); box-shadow: 22px 0 60px rgba(0,0,0,.42); transition: transform .22s ease; }.sidebar.open { transform: none; }.sidebar.open .brand-copy, .sidebar.open .rail-label, .sidebar.open .nav-item span:nth-child(2), .sidebar.open .nav-item b, .sidebar.open .environment-card > strong, .sidebar.open .environment-card p, .sidebar.open .environment-head span:last-child, .sidebar.open .environment-line, .sidebar.open .sidebar-version { display: flex; }.sidebar.open .rail-label { display: block; }.sidebar.open .brand { justify-content: flex-start; }.sidebar.open .main-nav { margin-top: 0; }.sidebar.open .nav-item { display: grid; justify-content: initial; padding: 0 10px; }.sidebar.open .environment-card { display: block; padding: 13px; }
  .main-content { width: 100%; margin-left: 0; padding: 0 10px 22px; overflow: hidden; }.topbar { height: 54px; margin: 0 -10px; padding: 0 10px; }.topbar-actions { min-width: 0; flex: 0 0 auto; gap: 6px; }.mobile-menu { display: grid; place-content: center; gap: 4px; }.mobile-menu span { display: block; width: 13px; height: 1px; background: currentColor; }.breadcrumb, .last-sync, .ceo-avatar, .theme-label, .share-label, .readonly-badge { display: none; }.theme-button, .share-button { min-width: 32px; width: 32px; padding: 0; }
  .ticker-bar { top: 54px; height: 39px; grid-template-columns: minmax(0,1fr); margin: 0 -10px; padding: 0; }.ticker-label, .market-clock { display: none; }.ticker-item { min-width: 144px; height: 39px; padding: 0 10px; }.ticker-item span { font-size: 8px; }
  .workspace-pages, .dashboard-page { min-height: calc(100vh - 157px); }.dashboard-page { padding-top: 10px; }
  .overview-section { gap: 20px; margin-top: 0; padding: 22px 17px; }.terminal-kicker { flex-wrap: wrap; }.overview-copy h1 { margin-top: 14px; font-size: 31px; letter-spacing: -1.5px; }.overview-copy > p { font-size: 10px; }.operation-status { align-items: flex-start; flex-direction: column; gap: 9px; margin-top: 17px; }.cycle-console { padding-top: 16px; }.cycle-body { grid-template-columns: 92px 1fr; gap: 15px; }.cycle-ring { width: 90px; height: 90px; }.cycle-ring strong { font-size: 14px; }.cycle-detail p { font-size: 8px; }
  .kpi-grid { grid-template-columns: 1fr 1fr; }.kpi-card { min-height: 115px; padding: 15px 13px; }.kpi-card > strong { margin-top: 16px; font-size: 20px; }.kpi-top b { display: none; }.kpi-foot { align-items: flex-start; flex-direction: column; margin-top: 8px; line-height: 1.25; }.capacity-track, .budget-track { margin-top: 9px; }
  .section-block { margin-top: 10px; padding: 17px 14px; }.section-heading { align-items: flex-start; margin-bottom: 16px; }.section-heading h2 { font-size: 17px; }.section-heading p { max-width: 290px; line-height: 1.45; }.section-meta, .outline-pill { display: none; }
  .market-section { padding: 0; }.market-section > .section-heading { padding: 18px 15px 15px; }.market-tabs { height: 40px; padding: 0; overflow-x: auto; }.market-tab { min-width: 86px; }
  .chart-head { min-height: 104px; grid-template-columns: 1fr auto; gap: 12px; padding: 13px 12px; }.selected-asset { min-width: 0; }.selected-asset small { display: block; margin-top: 4px; }.selected-asset > div > span { display: block; }.selected-price strong { font-size: 16px; }.chart-badges { grid-column: 1/-1; margin: 0; }.chart-toolbar { gap: 10px; padding: 0 12px; overflow-x: auto; white-space: nowrap; }.chart-toolbar b { display: none; }.strategy-map { height: 280px; }.chart-foot { min-height: 49px; padding: 0 12px; line-height: 1.35; }.chart-foot strong { display: none; }
  .strategy-inspector { display: block; padding: 16px 14px; }.inspector-head, .confidence-block { grid-column: auto; }.price-ladder { grid-row: auto; }.strategy-facts { margin-top: 4px; }
  .market-grid { grid-template-columns: 1fr 1fr; }.market-card { min-height: 144px; padding: 12px; }.market-card:nth-child(2) { border-right: 0; }.market-card-price { align-items: flex-start; flex-direction: column; gap: 6px; margin-top: 13px; }.market-card-price strong { font-size: 13px; }.market-card-foot span { display: none; }.market-card-foot { justify-content: flex-end; }.coin-mark { width: 20px; height: 20px; }
  .position-section, .risk-panel { padding: 17px 14px; }.positions-content { overflow: visible; }.position-table, .position-table tbody { display: block; }.position-table thead { display: none; }.position-table tr { display: grid; grid-template-columns: 1fr 1fr; gap: 0; margin-bottom: 9px; padding: 11px; background: var(--panel-soft); border: 1px solid var(--line); border-radius: 5px; }.position-table td { min-width: 0; height: auto; display: flex; align-items: flex-end; justify-content: space-between; gap: 7px; padding: 8px 4px; border-bottom: 1px solid var(--line); white-space: normal; text-align: right; }.position-table td::before { content: attr(data-label); color: var(--muted); font: 500 6px/1 var(--font-data); text-align: left; }.position-table td:nth-last-child(-n+2) { border-bottom: 0; }.position-table td > * { margin-left: auto; }.position-symbol { align-items: flex-end; }.risk-rules { grid-template-columns: 1fr 1fr; }
  .trade-results-summary { grid-template-columns: 1fr 1fr; }.trade-results-summary > div { min-height: 69px; padding: 11px 12px; }.trade-results-summary > div:nth-child(2) { border-right: 0; }.trade-results-summary > div:nth-child(-n+2) { border-bottom: 1px solid var(--line); }.trade-results-summary strong { font-size: 14px; }
  .trade-report-context { min-height: 48px; flex-wrap: wrap; gap: 7px 13px; padding: 8px 2px; line-height: 1.3; }.trade-report-context span:last-child { width: 100%; margin-left: 0; }
  .symbol-performance-grid { grid-template-columns: 1fr; }.symbol-performance-card:hover { transform: none; }.symbol-report-head { min-height: 67px; padding: 11px 12px; }.symbol-report-identity h3 { font-size: 12px; }.symbol-report-status { padding: 0 6px; }
  .symbol-report-hero { grid-template-columns: 1fr minmax(120px,.55fr); gap: 12px; padding: 14px 12px; }.symbol-report-hero > div:first-child > strong { font-size: 18px; }.symbol-record { padding-left: 12px; }
  .symbol-report-metrics { grid-template-columns: 1fr 1fr; }.symbol-report-metrics > div:nth-child(2) { border-right: 0; }.symbol-report-metrics > div:nth-child(-n+2) { border-bottom: 1px solid var(--line); }
  .symbol-report-details { grid-template-columns: 1fr; }.symbol-report-details > div + div { border-left: 0; border-top: 1px solid var(--line); }.symbol-report-latest { align-items: flex-start; flex-direction: column; padding: 11px 12px; }.symbol-report-latest time { align-items: flex-start; flex-direction: row; }
  .company-grid { display: block; }.agent-roster { grid-template-columns: 1fr; }.agent-card { min-height: 139px; }.agent-card h3 { margin-top: 10px; }.agent-last-action { margin-top: 10px; }.workflow-rail { display: none; }.timeline-panel { margin-top: 9px; }.timeline { max-height: 320px; }.panel-head { padding: 0 11px; }
  .lab-section { gap: 18px; margin-top: 10px; padding: 22px 17px; }.lab-heading h2 { font-size: 21px; }.lab-metrics { grid-template-columns: 1fr 1fr; }.lab-metrics > div { min-height: 88px; padding: 11px; }.lab-metrics strong { font-size: 16px; }.lab-output { padding: 12px; }
  .lab-command-grid { gap: 10px; margin-top: 10px; }.lab-pipeline-card, .lab-data-card { padding: 17px 14px; }.lab-pipeline { grid-template-columns: repeat(5,105px); }.lab-pipeline-card > footer { align-items: flex-start; flex-direction: column; }.lab-shadow-section { margin-top: 10px; padding: 17px 14px; }.lab-shadow-kpis { grid-template-columns: 1fr 1fr; }.lab-shadow-kpis > div { padding: 13px 11px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }.lab-shadow-kpis > div:nth-child(2n) { border-right: 0; }.lab-shadow-kpis > div:nth-last-child(-n+2) { border-bottom: 0; }.lab-shadow-kpis strong { font-size: 16px; }.lab-shadow-diagnostics { grid-template-columns: 1fr 1fr; }.lab-shadow-diagnostics > div { padding: 11px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }.lab-shadow-diagnostics > div:nth-child(2n) { border-right: 0; }.lab-shadow-diagnostics > div:last-child { grid-column: 1/-1; border-right: 0; border-bottom: 0; }.lab-shadow-body { gap: 10px; margin-top: 10px; }.lab-symbol-board, .lab-ab-card { padding: 13px; }.lab-symbol-row { grid-template-columns: 1fr 1fr 1fr; padding: 9px 0; }.lab-symbol-row > strong { grid-column: 1/-1; }.lab-symbol-status { grid-column: span 2; }.lab-board-head strong { display: none; }
  .bottom-grid { grid-template-columns: 1fr; gap: 0; }.cost-row { grid-template-columns: 1fr; gap: 8px; padding: 10px 0; }.cost-details { flex-wrap: wrap; gap: 12px; }.memory-number strong { font-size: 27px; }.footer { min-height: 73px; align-items: flex-start; justify-content: center; flex-direction: column; gap: 5px; padding-bottom: 10px; }
  .mobile-dock { position: fixed; z-index: 60; inset: auto 8px calc(7px + env(safe-area-inset-bottom)); display: grid; grid-template-columns: repeat(6,1fr); height: 56px; padding: 4px; background: color-mix(in srgb, var(--panel) 94%, transparent); border: 1px solid var(--line-strong); border-radius: 9px; box-shadow: 0 18px 48px rgba(0,0,0,.48); backdrop-filter: blur(18px); }.mobile-dock a { display: flex; min-width: 0; align-items: center; justify-content: center; flex-direction: column; gap: 4px; color: var(--muted); border-radius: 6px; }.mobile-dock a.active { color: #7f9cff; background: var(--blue-soft); }.mobile-dock a > .nav-icon { width: 21px; height: 20px; flex-basis: 20px; color: currentColor; background: transparent; border: 0; box-shadow: none; }.mobile-dock .nav-icon svg { width: 17px; height: 17px; }.mobile-dock b { overflow: hidden; max-width: 100%; font-size: 8px; font-weight: 600; text-overflow: ellipsis; white-space: nowrap; }
  .toast-container { left: 10px; right: 10px; bottom: calc(70px + env(safe-area-inset-bottom)); }.toast { min-width: 0; width: 100%; }
}

@media (max-width: 720px) {
  .main-content { width: 100%; max-width: 100%; min-width: 0; }
  .main-content > * { max-width: 100%; min-width: 0; }
  .position-capital-summary { grid-template-columns: 1fr 1fr; }
  .position-capital-summary > div { min-height: 68px; display: flex; align-items: flex-start; flex-direction: column; gap: 5px; }
  .position-capital-summary > div:nth-child(3) { border-left: 0; }
  .position-capital-summary > div:nth-child(-n+2) { border-bottom: 1px solid var(--line); }
  .position-capital-summary strong { order: 2; font-size: 13px; }
  .position-capital-summary small { order: 3; line-height: 1.35; }
}

/* Mobile layout hardening: one vertical page scroll, isolated horizontal rails. */
@media (max-width: 720px) {
  html, body { max-width: 100%; overflow-x: clip; }
  body { padding-bottom: calc(82px + env(safe-area-inset-bottom)); }
  .main-content { overflow-x: clip; overflow-y: visible; }
  .workspace-pages, .dashboard-page, .dashboard-page > * { min-width: 0; max-width: 100%; }
  .dashboard-page { word-break: keep-all; overflow-wrap: break-word; }

  .topbar { min-width: 0; }
  .topbar-left { flex: 0 0 auto; }
  .topbar-actions { flex: 0 0 auto; justify-content: flex-end; }
  .icon-button, .mobile-menu { width: 36px; height: 36px; flex: 0 0 36px; }
  .theme-button, .share-button { min-width: 36px; width: 36px; }
  .refresh-icon, .theme-icon, .share-icon { position: relative; }

  .asset-ticker,
  .market-tabs,
  .chart-toolbar,
  .lab-pipeline {
    max-width: 100%;
    overflow-x: auto;
    overflow-y: hidden;
    overscroll-behavior-inline: contain;
    scroll-behavior: smooth;
    scrollbar-width: none;
    touch-action: pan-x;
    -webkit-overflow-scrolling: touch;
  }
  .asset-ticker::-webkit-scrollbar,
  .market-tabs::-webkit-scrollbar,
  .chart-toolbar::-webkit-scrollbar,
  .lab-pipeline::-webkit-scrollbar { display: none; }
  .ticker-item, .market-tab, .chart-toolbar > *, .lab-pipeline-step { scroll-snap-align: start; }
  .ticker-item { min-width: 154px; }
  .market-tabs { scroll-snap-type: x proximity; }
  .market-tab { flex: 0 0 25%; min-width: 82px; white-space: nowrap; }
  .chart-toolbar { min-height: 40px; height: 40px; scroll-snap-type: x proximity; }
  .chart-toolbar > * { flex: 0 0 auto; }

  .section-heading { width: 100%; flex-direction: column; align-items: flex-start; gap: 10px; }
  .section-heading > div:first-child { min-width: 0; width: 100%; }
  .section-heading p { max-width: 100%; word-break: keep-all; overflow-wrap: break-word; }
  .company-status-line { align-self: flex-start; white-space: nowrap; }

  .chart-head { overflow: hidden; }
  .selected-asset > div, .selected-price { min-width: 0; }
  .selected-asset strong, .selected-price strong { white-space: nowrap; }
  .chart-badges { min-width: 0; overflow-x: auto; overflow-y: hidden; scrollbar-width: none; }
  .terminal-badge { flex: 0 0 auto; }
  .data-integrity > div { flex-wrap: wrap; gap: 7px; }
  .data-integrity p, .decision-reason p { word-break: keep-all; overflow-wrap: break-word; }

  .position-table tr { overflow: hidden; }
  .position-table td { min-width: 0; white-space: nowrap; }
  .position-table td > *, .position-table td > span { min-width: 0; }
  .position-table td:nth-child(6) { font-size: 8px; }
  .position-table td::before { flex: 0 1 auto; word-break: keep-all; white-space: normal; line-height: 1.3; }
  .position-table td > * { flex: 0 0 auto; white-space: nowrap; }
  .position-sub { white-space: nowrap; line-height: 1.35; }
  .symbol-report-head { align-items: flex-start; }
  .symbol-report-identity h3 { white-space: normal; word-break: keep-all; overflow-wrap: break-word; line-height: 1.3; }
  .symbol-report-details p { overflow: visible; text-overflow: clip; white-space: normal; word-break: keep-all; overflow-wrap: break-word; line-height: 1.45; }
  .symbol-report-latest p, .symbol-report-latest small { word-break: keep-all; overflow-wrap: break-word; }

  .agent-card { overflow: clip; contain: paint; }
  .agent-card-top { min-width: 0; gap: 12px; }
  .agent-status { flex: 0 0 auto; }
  .timeline { max-height: none; overflow: visible; }
  .timeline-panel { overflow: clip; }
  .timeline-copy, .timeline-copy strong, .timeline-copy p { min-width: 0; word-break: keep-all; overflow-wrap: break-word; }

  .lab-command-grid { min-width: 0; grid-template-columns: minmax(0, 1fr); }
  .lab-pipeline-card,
  .lab-data-card,
  .lab-shadow-section,
  .lab-symbol-board,
  .lab-ab-card { min-width: 0; max-width: 100%; }
  .lab-pipeline-card { overflow: hidden; }
  .lab-pipeline-card > header, .lab-data-card > header, .lab-board-head { min-width: 0; flex-wrap: wrap; }
  .lab-pipeline-card > header > div { min-width: 0; }
  .lab-pipeline { width: 100%; grid-template-columns: repeat(5, 102px); scroll-snap-type: x proximity; }
  .lab-pipeline-step { min-width: 102px; }
  .lab-data-list p { min-width: 0; gap: 12px; }
  .lab-data-list p span { min-width: 0; word-break: keep-all; overflow-wrap: break-word; }
  .lab-shadow-kpis > div, .lab-symbol-row, .lab-ab-values > div { min-width: 0; }
  .lab-ab-card > p { word-break: keep-all; overflow-wrap: break-word; }

  /* Keep prices and compact terminal values intact; wrap prose only at word boundaries. */
  .ticker-item > *,
  .market-tab,
  .terminal-kicker > *,
  .operation-status > span,
  .hero-status,
  .cycle-head > *,
  .cycle-ring > div > *,
  .cycle-detail > span,
  .cycle-detail > strong,
  .kpi-card > strong,
  .metric-change,
  .section-index,
  .selected-asset strong,
  .selected-asset small,
  .selected-price > *,
  .terminal-badge,
  .decision-chip,
  .ladder-row strong,
  .ladder-row b,
  .strategy-facts strong,
  .market-card-symbol strong,
  .market-card-symbol small,
  .market-card-price > *,
  .market-range span,
  .market-card-foot > *,
  .position-capital-summary strong,
  .position-status,
  .trade-results-summary strong,
  .trade-report-context > span,
  .symbol-report-status,
  .symbol-report-hero > div:first-child > strong,
  .symbol-record > span,
  .symbol-record > strong,
  .symbol-report-metrics strong,
  .trade-outcome,
  .symbol-report-latest time,
  .risk-rule strong,
  .agent-status,
  .lab-metrics strong,
  .lab-pipeline-step > *,
  .lab-data-list strong,
  .lab-shadow-kpis strong,
  .lab-symbol-stat > *,
  .lab-ab-values strong,
  .lab-ab-delta strong,
  .cost-row strong,
  .cost-details > *,
  .memory-number,
  .memory-stats > * {
    white-space: nowrap;
    font-variant-numeric: tabular-nums;
  }

  .overview-copy > p,
  .cycle-detail p,
  .section-heading p,
  .chart-foot span,
  .decision-reason p,
  .data-integrity p,
  .position-capital-summary small,
  .agent-role,
  .agent-last-action p,
  .timeline-copy p,
  .lab-heading > p,
  .lab-recommendation p,
  .lab-ab-card > p,
  .empty-state small {
    word-break: keep-all;
    overflow-wrap: break-word;
  }

  .memory-section { overflow: clip; contain: paint; }
  .memory-stats { flex-wrap: wrap; row-gap: 9px; }

  .mobile-dock { overflow: hidden; }
  .mobile-dock a { min-width: 0; overflow: hidden; touch-action: manipulation; }
  .mobile-dock a > .nav-icon, .mobile-dock .nav-icon svg { overflow: hidden; }
  .mobile-dock b { line-height: 1.1; }
}

@media (max-width: 380px) {
  .readonly-badge { padding: 0 7px; }
  .overview-section { padding-left: 15px; padding-right: 15px; }
  .overview-copy h1 { font-size: 28px; }
  .cycle-body { grid-template-columns: 86px minmax(0, 1fr); gap: 12px; }
  .cycle-ring { width: 84px; height: 84px; }
  .cycle-ring strong { font-size: 13px; }
  .kpi-card { padding-left: 11px; padding-right: 11px; }
  .kpi-card > strong { font-size: 18px; }
  .market-tab { min-width: 78px; font-size: 8px; }
  .chart-head { grid-template-columns: minmax(0, 1fr) auto; gap: 8px; }
  .asset-monogram { width: 30px; height: 30px; }
  .selected-price strong { font-size: 14px; }
  .market-grid { grid-template-columns: 1fr; }
  .market-card { min-height: 128px; border-right: 0; border-bottom: 1px solid var(--line); }
  .market-card-price { align-items: baseline; flex-direction: row; }
  .symbol-report-hero { grid-template-columns: 1fr; }
  .symbol-record { padding: 13px 0 0; border-top: 1px solid var(--line); border-left: 0; }
  .lab-shadow-kpis { grid-template-columns: 1fr 1fr; }
  .mobile-dock { inset-inline: 5px; }
  .mobile-dock b { font-size: 7px; }
}

@media (max-width: 430px) {
  .position-table tr { grid-template-columns: minmax(0, 1fr); }
  .position-table td { grid-column: 1; align-items: center; }
  .position-table td:nth-last-child(-n+2) { border-bottom: 1px solid var(--line); }
  .position-table td:last-child { border-bottom: 0; }
  .symbol-report-head { flex-wrap: wrap; }
}

@media (max-width: 340px) {
  .kpi-grid { grid-template-columns: 1fr; }.kpi-card { min-height: 106px; border-right: 0; border-bottom: 1px solid var(--line); }.kpi-card:last-child { border-bottom: 0; }.kpi-foot { flex-direction: row; align-items: center; }
  .position-capital-summary { grid-template-columns: 1fr; }.position-capital-summary > div + div { border-left: 0; }.position-capital-summary > div:nth-child(-n+3) { border-bottom: 1px solid var(--line); }
  .market-grid { grid-template-columns: 1fr; }.market-card { border-right: 0; border-bottom: 1px solid var(--line); }.market-card-price { align-items: baseline; flex-direction: row; }.strategy-map { height: 245px; }.chart-toolbar span:nth-of-type(3), .chart-toolbar span:nth-of-type(4) { display: none; }
  .risk-rules { grid-template-columns: 1fr; }.risk-rule { border-right: 0; }.risk-rule:last-child { grid-column: auto; }
}

/* Keep dense terminal labels readable on high-resolution desktop and mobile displays. */
.brand-copy small,
.rail-label,
.nav-item b,
.environment-head,
.environment-line,
.sidebar-version,
.readonly-badge,
.theme-button,
.ceo-avatar,
.ticker-label,
.cycle-head,
.cycle-ring span,
.cycle-ring small,
.cycle-detail > span,
.kpi-top,
.section-index,
.section-meta,
.live-pill,
.outline-pill,
.market-tab b,
.selected-asset small,
.terminal-badge,
.decision-chip,
.signal-badge,
.chart-toolbar,
.chart-foot strong,
.inspector-head span,
.confidence-block > div:first-child,
.ladder-row span,
.ladder-row b,
.strategy-facts span,
.decision-reason > span,
.data-integrity span,
.data-integrity strong,
.data-integrity p,
.coin-mark,
.market-card-symbol small,
.market-range span,
.market-card-foot,
.position-table th,
.position-symbol small,
.position-sub,
.position-status,
.trade-outcome,
.trade-report-context,
.symbol-report-identity > div > span,
.symbol-report-status,
.symbol-report-hero > div:first-child > span,
.symbol-record > span,
.symbol-report-metrics span,
.symbol-report-details > div > span,
.symbol-report-latest > div > span,
.risk-gauge span,
.risk-gauge small,
.risk-rule span,
.risk-lock,
.agent-status,
.agent-last-action span,
.workflow-rail,
.panel-head div > span,
.filter-reset,
.timeline-time,
.timeline-copy strong,
.timeline-copy p,
.timeline-foot,
.lab-kicker,
.lab-status,
.lab-metrics span,
.lab-metrics small,
.lab-output-head,
.lab-recommendation span,
.cost-row > div:first-child,
.cost-details,
.memory-number span,
.memory-stats,
.footer,
.position-table td::before {
  font-size: 8px;
}

.map-axis,
.map-label,
.map-crosshair-label { font-size: 9px; }
.map-sub { font-size: 8px; }

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}
